二、
2、相機
圖像輸出
圖像輸出單元產生一個適合后續圖像處理的視頻信號。在標準的相機中,獲取的圖像將轉換成遵循某一種國際視頻標準的視頻信號:在標準相機中,獲取的圖像轉換成一個遵循國際標準之一的視頻信號,對歐洲為CCIR標準,對美國為EIA制定的RS-170標準。
基于CCIR標準,有兩個彩色標準:PAL制式和SECAM制式。對RS-170標準的彩色的延展就是RS-170a,即NTSC標準。非標準相機的輸出單元要遵循一定的規則,與特定的形式無關,一般是基于RS-422標準的。從技術角度考慮,由于避免了視頻標準的限制,數字相機是比較理想的選擇;而從經濟的角度考慮,這些標準太重要了而不可能完全擺脫它們。
下圖是標準制式相機的原理圖,CCD完成積分控制后奇數行和偶數行按先后依次轉移到輸出寄存器(通常將所有奇數行或所有偶數行組成的圖像稱為一場(field),而兩場合并后才稱為一楨(frame),然后通過相機內部的同步產生器在每行像素前插入行同步信號(HD),在經過若干行達到一個場時插入場同步信號(VD)。
標準制式相機的原理圖
相機的一個重要的非標準選項就是像素時鐘輸出,來自CCD芯片的像素傳輸的內部時鐘可以適用于后續的圖像處理單元,這種像素數據的精確傳輸是對精確測量的預獲取,此外很多相機也能接受外部的時鐘輸入來進行外同步。另一種對外部事件的響應是用外部事件來觸發相機,在測量運動物體的時候這是非常重要的,比如由光電開關觸發相機。
隔行掃描是多年前作為電視廣播標準的一部分而發展起來的,它主要發展是為了在有效的信號帶寬內改進運動影像,目前的視頻標準依然依賴于早期的顯像管相機和顯示屏技術,在如今CCD芯片和純平顯示的年代,這些只會給機器視覺應用帶來麻煩,卻依然大量應用似乎很奇怪了,前面已經提到這還是由于必須考慮價格因素。
對于顯像管,必須控制掃描顯像管光敏感區域電子流和在屏幕上產生的圖像。掃描從左上角開始,到第一行的末尾,折回到第三行繼續掃描。
這種方式,第一次掃描一場的奇數行,第二次掃描一場的偶數行,重疊起來就降低了電視屏幕的閃爍。一次完整的掃描(一幀)對于CCIR標準由625線組成,持續1/25秒。一個RS-170幀由525線組成,持續1/30秒。下圖描述了相機輸出單元的一些特性、參數及選項。
在折回的時間中,水平同步脈沖加入到視頻信號中,表示另一行的開始。同步信號之前和之后的多余時間用于給BLACK提供一個參考。信號的這些部分稱為前向通路和后向通路。垂直同步脈沖觸發新的一場的開始。
垂直同步脈沖是一個由對CCIR標準多于50線的,對EIA標準多于40線的脈沖序列。因此,這些線不是用于標準視頻信號的,標準視頻信號應該是對CCIR標準575線,對EIA標準485線。
標準視頻信號傳輸的同步,是基于水平和垂直同步脈沖的。那單個像素呢?按照CCIR標準和EIA標準,圖像的寬高比例必須是4:3。因此,對于CCIR標準為767像素/線,對于EIA標準為647像素/線。對于CCIR標準,在52ms內掃描767個像素,需要像素時鐘頻率為14.75MHz,而對于EIA標準,在52.59ms內掃描647個像素,需要像素時鐘頻率為12.3MHz。
對于人類視覺系統,單個像素的意義不大。電視的分辨率是以不同的方式測量的:對于水平分辨率最高的要求就是,當CCIR相機指向383.5垂直的黑白線對的時候,一行的鄰近像素必須分別獲取并顯示最大和最小灰度級。
盡管這對應一個矩形信號,但人類視覺系統分辨模糊的從黑到白的灰度轉變是沒有問題的,因此被看作是一個頻率為7.375MHz的正弦信號。
對于EIA標準相應的計算就是一個頻率為6.15 MHz的正弦信號。那么,任一視頻分量的帶寬就分別為7.375MHz和6.15 MHz。然而,視頻標準允許低的帶寬,就導致低的水平分辨率。
因此相機或監視器能獲取和顯示的垂直線的個數就是一個質量評估指標。這一參數是來計算單個垂直的黑線和白線,而不是計算線對。簡單的監視系統需要300條TV線。高分辨率系統提供550或更多的TV線。在實際中,這種測量并沒有精確的使用。因此,一個有550條TV線的相機可能會比另一個號稱600條TV線的相機有更好的性能。
顯像管屏幕的顯示特性是非線性的,強調圖像亮的和暗的灰度級。為了補償這個影響,大多數相機提供r校正(伽馬校正)。如果r=1,輸出單元以線性模式工作,r=0.45表明輸出單元強調中灰度級。另外,一些相機提供一個r=0.25的r校正來增強中灰度級。r校正用于監控系統會很有用,而在測量中作用稍小一些。
如在前一節所述,電子快門用于控制CCD芯片的曝光時間。如果物體照明不好,電子快門速度就需要慢些,以增加曝光時間。視頻標準規定最小的快門速度為對于CCIR標準1/50秒,對于EIA標準1/60秒。
如果物體要運動,最小的快門速度會高一些,結果,要求的1V的視頻信號幅度就可能達不到。這種情況下,就需要利用增益控制來放大信號。最大增益通常為1:10或1:20。
如果這還不夠,就要運用長時間的積分。這些放大器可以是自動運行的也可以是手動運行的。在自動增益控制(AGC)模式中,放大器調整自己來輸出幅度為1V的標準視頻信號。這對監控系統適用但對測量就不大適用。由于這里我們通常用控制照明工作,最好將相機調到手動增益控制模式,那么相機操作器就會根據指定條件設置精確的增益。
如果圖像采集卡從一個輸入視頻信號切換到另一個輸入視頻信號,采集卡通常需要獲得穩定的圖像需要幾楨的時間(這段時間用于從復合視頻信號中提取同步頭)。而且這一影響經常被低估了,這是很煩人的。在某些應用場合,需要多個相機同時拍攝同一工件的不同工位或不同視角,這樣就希望所有的視頻輸入信號是垂直同步的,這一過程的術語就是外部同步或同步鎖相,這樣就可以避免相機間捕獲圖像的時間差異。圖所示為三種相機間的同步方法。
最簡單的(圖a)是靠建立一個同步鏈,從一個相機的視頻輸出用于下一個相機的同步輸入,顯然,相機之間的信號遲延可能會導致一些問題。如果同步必須是很精確的,就應該使用一個外部同步發生器如圖b所示。
通常一些相機接受水平同步和垂直同步為TTL電平而且很多的中高端圖像采集卡都可以提供,因而用采集卡的同步輸出同樣能夠進行相機間的同步,但在使用采集卡的同步輸出時需要注意的是它的負載驅動能力,大部分圖像采集卡在同時驅動三個以上相機同步時需要增加中繼或功率放大器。
相機同步方式(從左向右依次為a,b,c)
對于區分一個CCD芯片的系統和三個CCD芯片的系統獲取的彩色圖像,有三個不同的系統可用于視頻信號輸出。這些輸出的術語為:復合, Y/C (also know as S-VHS) and RGB。從名字就可以看出,一個復合信號包含亮度信息和彩色信息。
亮度信號與標準CCIR和RS-170亮度信號是相等的,只是簡單的疊加了彩色信號。彩色信號是根據PAL標準、SECAM標準、以及NTSC標準的一個彩色分量的復雜組成。顯然,這樣一個信號的組合會導致信號誤差,可能會引起圖像失真。因此,將亮度信號(Y信號)和彩色信號(C信號)分離是一個好想法。這種亮度/彩色相機是在性能和價格之間比較滿意的折中。對于高性能系統,強烈建議采取RGB方法。
RGB方法避免了彩色信號的組合,而是對三原色的每一種顏色使用各自的標準亮度信號。三個芯片的CCD相機通常都有RGB輸出,因為破壞這種帶有不充分的復合信號或者亮度/彩色輸出信號的相機的質量沒有任何意義。高質量的單芯片CCD相機提供所有的三路輸出,中等質量相機丟棄RGB輸出,單彩色相機僅僅使用復合信號。
像素時鐘
像素時鐘是用以驅動CCD上的移位寄存器的高速時鐘,它將輸入的模擬視頻信號采樣為單個的像素值。像素時鐘輸出可以由相機或圖像采集卡提供。有可能使用圖像采集卡的鎖相環PLL(Phase-Locked Loop)來產生像素時鐘,PLL使用一個參考電平,這個參考電平可以來自采集卡的板內晶振,對于周期的脈沖電平也可以來自外部的行同步信號。
通常用像素抖動(Pixel Jitter)來衡量像素時鐘的準確性,它測量的是像素時鐘的脈沖上升沿相對于水平同步信號下降沿的偏差,其以單位納秒為單位。
像素抖動是模擬/數碼轉換過程中不可避免的,它可能是相機(其內部的像素時鐘或水平同步信號) 引入的,也可能是圖像采集卡的鎖相環(其可以引入附加的像素抖動)引入的。
作為像素抖動的結果,輸入的視頻信號可能會被提前或滯后采集了,這樣就會導致數字化的像素與相機采樣的像素不一致,對于連續的視頻就會產生閃爍現象。從圖像采集卡的鎖相環產生的基于穩定的參考電平的像素時鐘可以將像素抖動降低在一個很小的范圍內。
如果像素時鐘足夠精確,視頻信號應該在圖所示的“P”處抽樣并通過參考電平完成灰度轉化,但由于受到像素抖動的影響,視頻信號可能被抽樣過早或過晚(圖中設定像素抖動引起的誤差為±x ns),這樣就導致對應的灰度值與理想值相對低了或高了。通常對圖像質量要求很高(比如用于高精度的測量)的圖像采集卡像素抖動都控制在±3 ns之內。
正如前面所討論的,視頻信號的同步無一例外的都是基于水平和垂直同步脈沖的。不過,視頻標準卻沒有要求精確的像素(pixel-wise)同步。因此,CCD芯片的像素映射到計算機時受到像素抖動的影響就不是很精確。
雖然可以通過預映射誤差,然后編制程序對像素抖動引起的誤差進行標定或補償,然而高精度的測量以及亞像素算法要求精確的像素描述,因此這種解決辦法并不能被接受。
圖表明了對這一問題更好的硬件解決方法。圖像采集卡必須控制基于像素時鐘的視頻輸入信號的抽樣率。以測量為目的的圖像采集卡將使用外部像素時鐘代替內部時鐘成為可能。在一些以測量為目的的應用,圖像采集卡輸出像素時鐘來影響給圖像采集卡。
因此每一個像素的傳輸都有嚴格的控制。最開始采集卡將提供一個像素時鐘信號給相機,接著相機將產生一個新的像素時鐘信號并且與視頻信號一起反潰給采集卡,這樣才可以確保輸入的為同相視頻信號且通過像素時鐘來數字化(或稱采樣)視頻信號,相位不準可能來自相機內部的電路遲延。
減小像素抖動的方法
逐行掃描
大多數顯示器和相機都是以隔行方式掃描,但實際上人眼看來仍然像一個平滑的圖像,相機一般先獲取圖像的奇數行,對于CCIR標準,它在1/50秒后再獲取偶數行,而對于EIA標準,在1/60秒后再獲取偶數行。
在機器視覺應用中,物體通常移動很快。當利用隔行掃描相機時,在兩場之間可能物體都有移動,結果就會是一副模糊的圖像,就像是兩次曝光或者是在垂直邊緣有梳狀效應。
為了解決這種影響,可以將隔行掃描相機設成只掃描一個場,這樣垂直分辨率將會減半,而幀采集速率將會提高一倍,相機的這種操作被稱為場模式,或者非隔行輸出,對許多機器視覺應用都很有用,場模式還能夠提供敏感度加倍的好處,由垂直像素BINNING得到(像素BINNING是指CCD傳感器的一個特殊讀出模式,傳感器將2個或多個像素綁定到一起鎖定,從多個像素積累的電荷求和),場模式雖然可以提高幀速度、敏感性以及信噪比,但會降低分辨率,在要求對快速運動的物體完全垂直分辨率的應用中,應該使用逐行掃描相機。
觸發機制
假設流動生產線上的產品必須由視覺系統來檢測。單個產品的圖像必須在它被置于在相機前某個確定的時間被取得,視覺系統對外部事件的及時響應即為觸發,觸發可以通過軟件實現也可以通過硬件實現。一般情況下,當一個事件發生時它觸發采集卡并同時觸發相機的重啟信號。另外,同時觸發頻閃器也可以幫助凍結運動物體的圖像。
觸發后相機總會有個響應時間,這個時間對于高速運動的物體最好能夠精確控制,普通的面陣相機(沒有異步觸發)總是等一幀掃描完,對于N制式的相機來說這個觸發響應時間就會至少有0~33ms之間的不確定時間,如果采集卡尋找同步點的時間再長一點,這個不確定的時間長度又增加了,這段時間內物體有可能已經運動出了視場區域。
為了加快相機的響應速度,就出現了異步重置(Asynchronous)功能,靠采集卡給相機施加外部時鐘。當相機被異步重置,除了像素時鐘,HD和VD(或相機寫允許脈沖WEN)信號都被重置了。采集卡一般都是被動的帶著相機的時鐘信號進行驅動,相機的HD和VD(或WEN)信號分別控制采集卡的水平掃描時鐘和楨掃描時鐘,而相機的像素時鐘則用以控制采集卡的A/D轉換。
而異步重置又分為行異步方式(相機被觸發后在下一個HD信號立刻回起點進行掃描)和像素異步方式(CCD在觸發后的下一個像素時鐘就立刻從頭掃描,這樣可以更加迅速響應來獲取觸發瞬間的圖像)。如圖為外部信號觸發(external trigger)相機異步重置的信號信連接以及時序圖。
理論上觸發原則是很簡單描述的,但實際上可能有些麻煩。由于觸發機制是非標準的,每一個相機和采集卡都有它自己的特性,觸發圖像處理系統的成功實現需要相關方面的很多知識。
觸發機制
長時間積分
如果最長的積分時間以及最大的增益并不能滿足低光照條件的要求,就必須延長積分時間。但顯然,噪聲的影響會隨著積分時間的延長而加強。在室溫條件下,積分時間不能夠超過10秒。如果圖像是絕對靜止的,連續拍攝的幾副圖像相加就能夠減少噪聲。第二個解決方法就是冷卻CCD芯片,從噪聲產生一開始就將之減小。通過空氣冷卻的辦法,積分時間可以延長到15分鐘;通過水冷卻的辦法,積分時間可以延長到3個小時。由于長時間的積分并不適應視頻標準,因此,這種相機通常都有一個緩存來存儲當前圖像,直到新一個積分完成。
-
圖像處理
+關注
關注
27文章
1282瀏覽量
56647 -
機器視覺
+關注
關注
161文章
4345瀏覽量
120115
發布評論請先 登錄
相關推薦
評論