視頻檢查系統已被廣泛應用于商業和工業領域。本文將通過幾個例子來闡述提取有用數據如何能夠使處理要求和存儲器容量達到最小、使DSP使用率達到最低,并介紹ADI公司視頻解碼器的特殊性能如何能夠簡化視頻算法、加快視頻檢查系統的開發速度。圖1給出了一個典型系統的組成單元。
實例1:計數和檢驗物體
試想一下,一條寬傳送帶正在快速傳送許多產品,而大量的產品使得人工計數非常困難。攝像頭除了能使計數任務自動化外,還能用來監視產品質量。這可以通過修改簡單的計數算法以讓它關注特定細節和瑕疵來加以實現。
存儲所有視頻數據需要大量存儲器,而處理大量數據也需要耗費大量硬件資源和處理能力。因此在檢驗傳送帶上的產品時,系統不會將整個圖片數據采集進存儲器,而是要從大量數據中找到感興趣的細節,并盡可能多地丟棄無用數據。
在大多數情況下,灰度級圖片就攜帶有足夠的信息,因此可以將RGB信號轉換成(只有亮度的)Y信號,丟棄色度信息。然后使用邊緣檢測方法檢查單色圖片中的內容以發現傳送帶上的產品,然后將它們的形狀與樣板進行比較,判斷產品是否正常。
邊緣檢測算法—只需要活動視頻的幾條線和少量存儲器—能夠通過計算活動圖片的一階和二階導數發現相鄰像素亮度的不連續性,詳見Bernd J?hne所著的“Digital Image Processing”一書。在實際應用中,邊緣檢測可以通過使用矩陣計算方法提取信息來實現,如Sobel矩陣算子。在FPGA(現場可編程門陣列)實現中,以像素為單位進行這樣的邊緣檢測可以提供令人滿意的結果。Tanvir A. Abbasi和Mohm Usaid Abbasi合作撰寫的“A proposed FPGA Based Architecture for Sobel Edge Detection Operator”一文介紹了一種簡單的FPGA實現方案。還可以通過增加高斯二維濾波器消除噪聲,詳見Mathu kumar Venkatesan和Daggu Venkateshwar Rao合著的“Hardware Acceleration of Edge Detection Algorithmon FPGAs”,這篇文章介紹了一個類似于Canny邊緣檢測器的檢測器成功實現案例。