視頻檢測系統(tǒng)用于許多商業(yè)和工業(yè)過程。攝像機(從廉價的低清晰度黑白閉路電視 (CCTV) 系統(tǒng)到最先進的高清數(shù)字視頻系統(tǒng)中的攝像機,用于從產(chǎn)品檢測到交通監(jiān)控再到實時人臉識別的各種應(yīng)用。
視頻固有地攜帶大量數(shù)據(jù),這可能會使信號處理和數(shù)據(jù)存儲任務(wù)復雜化。視頻檢測通常可以通過裁剪無用的信息并僅傳遞圖片的基本部分來簡化,從而節(jié)省內(nèi)存和計算周期。圖1顯示了典型系統(tǒng)的元件。
圖1.簡化的視頻檢測數(shù)據(jù)流。
本文展示了幾個示例,說明提取有用數(shù)據(jù)如何最大限度地減少處理、存儲器大小和DSP使用,并說明ADI公司視頻解碼器的特殊功能如何簡化視頻算法并加快視頻檢測系統(tǒng)的開發(fā)。
例 1.計數(shù)和檢查對象
想象一下,一條寬闊的傳送帶包含許多快速移動的產(chǎn)品。大量的產(chǎn)品使手動盤點變得困難。除了自動執(zhí)行計數(shù)任務(wù)外,還可以使用相機來監(jiān)控產(chǎn)品質(zhì)量。這可以通過修改簡單計數(shù)算法以專注于特定細節(jié)和工件來實現(xiàn)。
存儲所有視頻數(shù)據(jù)需要大量的內(nèi)存,處理大量數(shù)據(jù)在硬件和功率方面會花費很多。該系統(tǒng)不是在內(nèi)存中收集整個圖片,而是可以在一堆數(shù)據(jù)中找到有趣的細節(jié),并在檢查傳送帶上的產(chǎn)品時盡可能多地丟棄無用的數(shù)據(jù)。
在大多數(shù)情況下,灰度圖片可以攜帶足夠的信息。因此,可以通過將RGB信號轉(zhuǎn)換為Y(僅亮度)來刪除色度信息。然后,可以使用邊緣檢測來檢查生成的單色圖片的內(nèi)容,以查找傳送帶上的產(chǎn)品,并將其形狀與模板進行比較,以確定產(chǎn)品是否畸形。
邊緣檢測算法只需要幾行活動視頻和少量內(nèi)存,通過計算活動圖像的第一和二階導數(shù)來發(fā)現(xiàn)相鄰像素亮度的不連續(xù)性,如Bernd J?hne的數(shù)字圖像處理中所述。在實踐中,邊緣檢測可以通過使用矩陣計算(例如 Sobel 矩陣運算符)提取信息來實現(xiàn)。在FPGA(現(xiàn)場可編程門陣列)實現(xiàn)中,以像素為基礎(chǔ)執(zhí)行此操作可提供令人滿意的結(jié)果。一個簡單的FPGA實現(xiàn)在Tanvir A. Abbasi和Mohm的“Sobel邊緣檢測操作員的基于FPGA的架構(gòu)”中進行了展示。美國賽義德·阿巴西。噪聲可以通過添加高斯2D濾波器來消除,如Mathukumar Venkatesan和Daggu Venkateshwar Rao的“FPGA邊緣檢測算法的硬件加速”中所述,它描述了類似于Canny邊緣檢測器的探測器的成功實現(xiàn)。
其他幾種優(yōu)化算法可以提高圖像質(zhì)量,但都在FPGA設(shè)計中占據(jù)了相當大的空間。但是,一些集成電路(IC)視頻解碼器已經(jīng)配備了有用的預(yù)處理算法或濾波器;因此,選擇其中之一將節(jié)省FPGA中的空間。例如,ADV7802視頻解碼器包括亮度瞬態(tài)改善(LTI)和色度瞬態(tài)改善(CTI)模塊。這些模塊通過改善亮度和色度轉(zhuǎn)換的陡度來增強生成的圖像,使用自適應(yīng)峰值和非線性方法,而不會增加噪聲或引入偽影,并且在邊緣檢測過程中非常有用。此外,亮度整形和其他內(nèi)置輸入濾波器可以消除源頭的高頻噪聲,專注于信號,忽略偶然噪聲。
圖2.LTI/CTI 操作圖。
邊緣檢測提供有關(guān)對象邊緣過渡的信息,而不是對象的全貌。這種從每像素 3 位 × 8 位 (bpp) 到 1 bpp 的減少節(jié)省了大量內(nèi)存:
640 像素 × 480 像素 = 307,200 位(1 bpp)
800 像素 × 600 像素 = 480,000 位(1 bpp)
1024 像素 × 768 像素 = 786,432 位(1 bpp)
1280 像素 × 720 像素 = 921,600 位(1 bpp)
通過將RGB轉(zhuǎn)換為Y,在內(nèi)存中僅存儲幾行活動視頻,并使用FPGA算法,我們可以檢測物體并查看其形狀。一旦知道它們在移動傳送帶上的位置,我們就可以估計它們的運動并從下一幀中收集顏色或其他信息,同時確保使用最少量的內(nèi)存。該過程涉及
邊緣檢測
存儲信息
預(yù)測下一個位置 xN+1
在產(chǎn)品應(yīng)該存在的區(qū)域提取信息。
例 2.檢測運動和質(zhì)量
機器人正在特定距離和有限范圍內(nèi)尋找物品。超聲波可用于某些應(yīng)用;但是,如果表面吸收超聲波或物品在玻璃后面,則可以使用視頻。相機設(shè)置為對焦于附近的物體。窄范圍內(nèi)的項目將具有銳利的邊緣,但超出該范圍的背景項目具有模糊的邊緣(圖 3)。
圖3.對焦 - 景深較窄。
邊緣檢測可用于區(qū)分目標范圍內(nèi)的物品,因為這些是唯一具有鋒利邊緣的物品。背景中的項目將足夠模糊,無法通過邊緣檢測測試。處理將生成二進制位圖,其中 1 表示檢測到邊緣,0 表示未檢測到邊緣。每個檢測到的邊緣像素的位置(x,y)可用于使用公式1近似隔離物體的中間:
(1) |
哪里xn是邊緣像素的 x 位置,n; yn是邊緣像素 n 的 y 位置;N 是檢測到的邊緣像素數(shù)。
一旦知道物體及其邊緣的位置,我們就可以嘗試追蹤它。關(guān)鍵是從圖片中精確提取一個對象,將其邊緣轉(zhuǎn)換為輪廓,該輪廓可用于通過檢查像素與對象中間的平均距離來確定項目是否正在向相機移動,以查看對象的大小是否在變化,如公式2所示:
(2) |
N 是 FRAME 中的邊緣像素數(shù);M 是 FRAME–1 中的邊緣像素數(shù)。
關(guān)注水平軸可得出公式3:
(3) |
當對象向相機移動(像素從對象中間擴散)時,此等式的值將為正數(shù)。負值表示物體正在遠離相機,如圖4所示。
圖4.移動物體的幀更改。
請注意,物體必須在相機的對焦范圍內(nèi)。通過修改算法,我們可以主動改變焦點以掃描更廣泛的區(qū)域。一旦檢測到對象,就可以對其進行分割、處理和跟蹤。
隨著視頻復雜性的增加,跟蹤對象變得更加困難,尤其是對于帶紋理的對象和因快速移動而失去清晰度的對象。一些跟蹤算法在施建波的“好的跟蹤功能”中展示。當物體失去清晰度時,邊緣檢測會失敗。跟蹤仍然可以通過使用復雜的相關(guān)技術(shù)來完成,例如塊匹配(用于估計運動)或 Yao Wang、J?rn Ostermann 和 Ya-Qin Zhang(在“視頻處理和通信”中詳述的其他方法)。
由于來自相機的連續(xù)數(shù)據(jù)流,可以跟蹤物體以確定其加速度和其他參數(shù)。但是,必須使用高質(zhì)量的視頻序列才能獲得良好的視頻分析結(jié)果。通過分析相鄰像素檢測邊緣時,如果使用逐行掃描視頻而不是低質(zhì)量的隔行掃描PAL或NTSC信號,分辨率會更好。ADV7401和ADV7403視頻解碼器接受各種視頻標準,包括逐行模式。它們能夠數(shù)字化高達 140 MHz 的視頻信號,可以處理標清、ED和高清分量信號、CVBS 和圖形。此外,它們支持非標準視頻模式,允許使用不太流行的標準,例如 STANAG。靈活的像素輸出總線允許以 4:2:2、4:4:4 YCbCr 或 4:4:4 RGB 格式進行數(shù)據(jù)處理。非標準視頻格式可以過采樣或欠采樣以獲得給定的水平寬度,如 AN-0978 “組件處理器非標準視頻格式”中所述。
內(nèi)置色彩空間轉(zhuǎn)換器(CSC),如圖5所示,可轉(zhuǎn)換色彩空間以滿足用戶要求(公式4,其中A1...答4, B1...B4, C1...C4 是可調(diào)的 CSC 參數(shù))。YPrPb 或 RGB 輸入信號可以使用可配置的矩陣轉(zhuǎn)換轉(zhuǎn)換為其他格式。例如,將RGB轉(zhuǎn)換為YCbCr可以丟棄色度信息(Cb,Cr),從而簡化單色圖片的邊緣檢測。
(4) |
圖5.單CSC通道(ADV7403)。
CSC 非常有用。通過RGB或YCbCr輸入,可以使用顏色空間矩陣簡單地轉(zhuǎn)換顏色信息。圖 6 顯示了類似于 YCbCr 的 YUV 顏色空間。
圖6.產(chǎn)品質(zhì)量評估中的 YUV 色彩空間可用于檢測(例如)產(chǎn)品何時燃燒或發(fā)霉。Y(亮度)是恒定的。
如圖6所示,顏色(或YPrPb值)可以幫助檢測產(chǎn)品的質(zhì)量,例如,是燒焦還是發(fā)霉。色彩空間轉(zhuǎn)換在視頻處理和與使用其他標準的IC接口時是必要的。ADV7401/ADV7403內(nèi)置一個輸入多路復用器,可輕松切換視頻源,這是從停止傳送帶切換到工作傳送帶時非常有用的功能。
例 3.調(diào)整視頻檢測的白平衡和色彩平衡
開發(fā)從圖片中提取物體的視頻系統(tǒng)需要付出巨大的努力,因為光線角度或強度的簡單變化會影響檢測結(jié)果。視頻工程師可以使用ADV7401/ADV7403增益和失調(diào)調(diào)整,通過在傳送帶上添加兩條小參考條紋(一條深色,一條亮)來調(diào)整亮度和對比度。調(diào)整ADV7401/ADV7403的失調(diào)和增益以獲得相當?shù)闹担瑥亩瓜到y(tǒng)能夠補償光色、角度和強度的變化。
圖7.將小的參考條紋添加到可見區(qū)域
調(diào)整適當白平衡的算法可以非常簡單。首先,獲取條紋的參考 RGB(或 YCbCr)值。然后,要補償光線,只需更改偏移和增益即可獲得與基準相同的值。此算法可用于:
獲取深色條紋的 RGB(或 YCbCr)值。
調(diào)整偏移量以匹配深色條紋的所需 RGB(或 YCbCr)值。
獲取光條的 RGB(或 YCbCr)值
調(diào)整增益以匹配所需的光條RGB(或YCbCr)值。
要提高準確性,請重復步驟 2 和 4。
此過程在系統(tǒng)開發(fā)期間特別有用,因為它提供了正確的偏移(亮度)和增益(對比度),即使光線太強或太弱,如圖8所示。失調(diào)和增益寄存器可通過 I2C 總線獲得,允許快速調(diào)整。
圖8.調(diào)整失調(diào)和增益以補償環(huán)境照明的變化。
顏色也可用于參考條紋。這種補償類似于廣泛使用的白平衡,但白平衡與人類的感知相匹配,而色彩校正是為了補償由于不同照明引起的變化。盡管算法類似,但額外的偏移會導致深色看起來不自然。ADV7401/ADV7403色彩空間轉(zhuǎn)換、靈活的輸出像素端口以及失調(diào)和增益調(diào)整寄存器使工程師能夠使用已準備好處理的數(shù)據(jù)快速開發(fā)算法。如前所述,如果簡單視頻不需要高級算法,請務(wù)必減少視頻處理所需的數(shù)據(jù)量并避免使用高級算法。ADV7401/ADV7403的評估板具有易于訪問的像素端口,可加快新設(shè)計的啟動速度。只需將視頻捕獲板插入評估板的像素端口并捕獲視頻數(shù)據(jù)即可(圖 9)。
圖9.ADV7401/ADV7403評估板上的像素總線。
視頻編碼器、視頻DAC和AD9889B HDMI發(fā)射器連接到同一像素總線,允許在第二路輸出上查看當前圖像。ADI公司視頻解碼器包括處理視頻所需的模塊,可提供可靠的性能和穩(wěn)定的圖像。
結(jié)論
攝像機在工業(yè)應(yīng)用中具有許多優(yōu)勢。當必須對移動項目進行排序、跟蹤或記錄時,這一點尤其重要。視頻技術(shù)和具有高度集成的視頻解碼器的實時處理可用于在移動傳送帶上高效分析物品或?qū)旌袭a(chǎn)品進行分類。
審核編輯:郭婷
-
集成電路
+關(guān)注
關(guān)注
5371文章
11254瀏覽量
359806 -
解碼器
+關(guān)注
關(guān)注
9文章
1128瀏覽量
40587 -
存儲器
+關(guān)注
關(guān)注
38文章
7405瀏覽量
163405
發(fā)布評論請先 登錄
相關(guān)推薦
評論