新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 嵌入式視覺系統(tǒng)基本概念以及傳感器的選擇

嵌入式視覺系統(tǒng)基本概念以及傳感器的選擇

作者: 時間:2017-10-13 來源:網(wǎng)絡(luò) 收藏

隨著處理效能、內(nèi)存密度和系統(tǒng)整合度的提升,嵌入式視覺從傳統(tǒng)逐漸擴增到新興應(yīng)用領(lǐng)域,市場規(guī)模在十年內(nèi)必有顯著增長。而伴隨著應(yīng)用領(lǐng)域越來越多元,影像傳感器系統(tǒng)在開發(fā)時,所需考慮的面向也變得更加復(fù)雜。

本文引用地址:http://butianyuan.cn/article/201710/365871.htm

視覺系統(tǒng)在各個產(chǎn)業(yè)及應(yīng)用領(lǐng)域中日益普及,甚至每天攜帶的智能型手機即的一個例子。這些裝置不僅能夠從事影像捕捉和影像錄制,還能執(zhí)行擴增虛擬現(xiàn)實的應(yīng)用。由此可知嵌入式視覺技術(shù)有相當(dāng)高的接受度。

隨著處理效能、內(nèi)存密度和系統(tǒng)整合度的提升,嵌入式視覺從傳統(tǒng)逐漸擴增到新興應(yīng)用領(lǐng)域(圖1)。這使得嵌入式視覺在消費者、產(chǎn)業(yè)和政府間被廣泛地接受,十年內(nèi)必有顯著增長。

圖1 常見的嵌入式視覺應(yīng)用。

表1列出了一些嵌入式視覺崛起中的領(lǐng)域,其中有一些顯而易見,有些則不是很明顯。

嵌入式視覺之基本概念

所謂包含從所選的影像傳感器接收光子到系統(tǒng)輸出的整個訊號鏈。從接收端的影像中擷取處理或未處理的影像或信息,并提供予下游系統(tǒng),而嵌入式系統(tǒng)架構(gòu)師則負責(zé)根據(jù)系統(tǒng)要求確保接收到輸出過程的效能。

因此,架構(gòu)師須要熟悉與傳感器和后處理系統(tǒng)相關(guān)的各種概念和技術(shù)。本文專為入門之專業(yè)人士設(shè)計,旨在讓讀者對此技術(shù)和概念有一個基本了解。

首先,我們必須熟悉電磁波譜及期望系統(tǒng)運行的光譜域,因為肉眼可辨識的范圍僅390nm(藍光)至700nm(紅光)波長間的光譜,亦為可見光譜;而根據(jù)選用影像設(shè)備的不同,我們卻能捕獲到更廣泛的波長影像包括X光、紫外線、紅外線,以及可見光譜。

針對近紅外光及以下的光譜范圍,我們可以選用電荷耦合組件(CCD)或互補金屬氧化物半導(dǎo)體(CMOS1)影像傳感器(CIS);到了紅外光譜范圍,則須使用專用的紅外光檢測器。紅外光譜之所以需要專用的傳感器,部分原因在于芯片影像傳感器如CCD或CIS需要激發(fā)能。這些組件通常需要1eV的光子能量來激發(fā)一個電子,然而在紅外光譜范圍,光子能量介于1.7eV至1.24meV之間,因此紅外影像傳感器應(yīng)基于HgCdTe或InSb。這些低激發(fā)能的傳感器,經(jīng)常與CMOS的讀取IC(ROIC)配合使用,以利傳感器的控制與讀取。

最常見的兩種傳感器技術(shù)分別是CCD 和CIS:

.電荷耦合組件(CCD)被視為最好的仿真組件,因此若需與數(shù)字系統(tǒng)整合,就需要在一定的模擬電壓下外加ADC及頻率生成功能。每個像素儲存由光子產(chǎn)生的電荷,且多數(shù)的應(yīng)用是由2D數(shù)組排列成行,每行由多個像素組成。讀取CCD時,需透過行與行之間的傳輸,將每行平行傳遞到讀取緩存器, 再透過讀取緩存器將每行串行讀取。這個緩存器的讀取過程中,會將電荷轉(zhuǎn)換為電壓。

.CMOS影像傳感器能讓ADC、偏壓和驅(qū)動電路在同一個芯片上做更緊密的整合,可大幅降低系統(tǒng)對整合的需求,并同時提高CIS設(shè)計的復(fù)雜度。主動像素傳感器 (APS)是CIS的核心,其中與CCD的不同在于CIS的每個像素中同時包含一組光電二極管及讀取放大器,并能單獨讀取數(shù)組中的任一個像素。

盡管多數(shù)的嵌入式視覺皆采用CIS組件,但CCD仍是高端科學(xué)研究應(yīng)用領(lǐng)域中主要采用的傳感器。本文所提及的內(nèi)容適用于CIS或CCD影像技術(shù)。

分辨率為傳感器選擇首要考慮

用戶必須對系統(tǒng)有深刻的了解方能選出正確的影像傳感器,以下幾點是須納入考慮的要素:

首先,用戶必須決定所需的分辨率為何,也就是決定每行中須包含的像素量,以及檢測器需多少行。好比說,在天文科學(xué)應(yīng)用的情況下,很可能需用到高分辨率的2D組件,但在工業(yè)品管的影像應(yīng)用上可能只須執(zhí)行線性掃描。

線性掃描組件由X軸上的單行像素所組成,往往適用于移動中的相機或目標(biāo)物應(yīng)用,藉以生成Y軸的影像。通常這類傳感器用于檢驗應(yīng)用或光學(xué)字符識別(OCR)居多。有些領(lǐng)域須采用時域整合(TDI)線性掃描傳感器,而這類傳感器在X軸由多行所組成,并隨著目標(biāo)移動;而像素也從一個向下一個移動,并隨著電荷在時間上整合,以實現(xiàn)更靈敏的檢測。

不過,TDI需在行與行間的傳輸與目標(biāo)移動間進行同步,以防發(fā)生模糊及影像缺陷。由于只有幾行須要讀取,因此幀率可以相當(dāng)高。

2D數(shù)組中包含多行的像素,而數(shù)組大小將決定傳感器的最大幀率。通常為了實現(xiàn)更高的幀率,并將2D組件平行讀取多個像素。除此之外,2D組件亦可執(zhí)行窗口操作(又稱為感興趣區(qū)域,ROI),并讀取特定感興趣的區(qū)域,以獲得更高的幀率。這類組件可用于眾多領(lǐng)域,而且信息包含在2D影像中,例如先進輔助駕駛系統(tǒng)(ADAS)、監(jiān)控或科學(xué)研究領(lǐng)域。

在決定了影像感測的格式及所需分辨率后,再來必須考慮的是「像素間距」。因為它決定了像素的大小,而這關(guān)系到入射光子所產(chǎn)生的電荷有多少能夠被收集。因此,較小的像素間距意味著在一個整合周期內(nèi)(傳感器暴露于影像中的時間)能夠收集較少的電荷。若像素間距較小,則意味著捕捉影像需要更長的整合時間,這會影響到傳感器捕捉快速移動中影像的能力,并且使得低光源拍照效能下降。

慎選傳感器以確保量子效率

確定傳感器格式后,即須考慮究竟是使用CCD、CMOS或其他更專業(yè)的技術(shù)。對此的重要參考指標(biāo)是量子效率(QE);意指組件通過光子產(chǎn)生電子的效率。通常,一般希望在可見光譜內(nèi)QE值越高越好,這對于低光源應(yīng)用也具重要意義。影響組件QE值的因素有三個:吸收、反射和透射。其中組件結(jié)構(gòu)是導(dǎo)致QE值降低的主因,如金屬導(dǎo)線或多晶硅閘(Poly silicon gate)等的電路吸收光子或?qū)⒐庾臃瓷?,?dǎo)致像素在組件中被頻蔽,從而使QE值降低,因此要慎選傳感器。

.前照式:

對于這類組件,光子先前介紹的傳統(tǒng)方式打在組件的前端,像素可能被遮蔽,QE進而降低。

.背照式:

這類型的組件的背板經(jīng)過由后期處理削薄,以便在后端接收光照,從而不受其他設(shè)計組件的阻擋。薄型背照式組件能實現(xiàn)優(yōu)化的QE值。

用戶還必須從以下三點去考慮影像傳感器中所允許的噪聲:

.組件噪聲:

此噪聲為暫時性的,包含散粒噪聲及輸出放大器和復(fù)位電路產(chǎn)生的噪聲。

.固定圖像噪聲(FPN):

呈空間分布,并在相同的光照強度下,像素呈不同反應(yīng)所引起的噪聲。FPN通常由每個像素的不同偏移和增益響應(yīng)引起;偏移部分通常稱為DSNU(Dark Signal Non-Uniformity),增益部分稱為PRNU(Photo Response Non-Uniformity)。有多種方法可以彌補FPN,而最常見的方法則是對輸出訊號作相關(guān)二次取樣。

.暗電流:

由影像傳感器中的熱噪聲引起,甚至在無光照的情況下也會出現(xiàn)。暗訊號對最終影像質(zhì)量的影響取決于幀率;較高的幀率下影響不大,然而,隨著幀率降低(如科學(xué)應(yīng)用)影響會較明顯。由于暗電流與溫度息息相關(guān),故在需要低暗電流的情況下,通常是利用像PelTIer等的冷卻器來降低影像組件的工作溫度。

理解影像傳感器的噪聲模式后,便能決定要實現(xiàn)多大的訊號噪聲比(SNR)。

動態(tài)范圍代表傳感器影像捕捉能力

確定組件的噪聲效能后,就可以界定影像傳感器所需的動態(tài)范圍。動態(tài)范圍代表傳感器在一定光照強度范圍內(nèi)捕捉影像的能力,單位以dB或以比例計算。這代表一個影像中同時包含高照度與暗區(qū)。

傳感器的實際動態(tài)范圍由像素的滿電位井容量決定,也就是像素飽和前所能承載的電子數(shù)量。將容量除以讀取噪聲,便能將比例轉(zhuǎn)換為以dB為單位的值。

(電位井容量e-)/(讀取噪聲e-)

通常利用PTC(Photon Transfer Curve)測試法來確定動態(tài)范圍,畫出噪聲與電位井容量的關(guān)系曲線。

如果組件具有數(shù)字輸出,可通過以下公式利用輸出端的位數(shù)計算該值。

動態(tài)范圍(dB)=20 Log10(2^總線寬度)

然而,這并不代表組件的動態(tài)范圍,只是說明流排寬度所能代表的潛在范圍,而沒有考慮傳感器效能因素。

I/O標(biāo)準(zhǔn)也非常重要,不僅用來輸出像素數(shù)據(jù),亦用來輸出指令和控制接口。這與幀率有關(guān),例如LVCMOS界面不適用于高幀率應(yīng)用,但卻可用于簡單的監(jiān)控攝影機。隨著幀率、分辨率和每像素位數(shù)的增加,影像傳感器正朝向采用LVDS系列或SERDES技術(shù)的專用高速串行鏈的趨勢發(fā)展。

依據(jù)應(yīng)用考慮選擇單色/彩色傳感器

現(xiàn)在已經(jīng)探討了影像傳感器的多個重要觀點,另一個尚未考慮的則是彩色或單色傳感器。無論選擇彩色或單色,皆取決于應(yīng)用場合。

.彩色傳感器:

需在每個像素上使用貝爾圖形,在一條在線交替變換紅和綠色,并在下一條在線交替藍和綠色(綠色用得較多是因為人眼對綠色波長較為敏感)。這意味著要對接收到的光子進行濾波處理,使每個像素只接收所需波長的光子。用戶可以針對影像進行后續(xù)處理,以決定像素顏色,并用不同顏色圍繞像素來重建每個像素上的色彩,且不會降低影像分辨率。

彩色傳感器使重建和輸出影像所需的鏈變得復(fù)雜。此外,貝爾圖形確實會導(dǎo)致分辨率降低,但沒有想象中差,通常降幅為20%。

.單色傳感器:

由于影像數(shù)組上沒有貝爾圖形,因此每個像素能接收所有光子。如此可提升影像的靈敏度,使影像的讀取更簡易,因為不會產(chǎn)生顏色重建所需的去馬賽克效應(yīng)。

經(jīng)選擇我們決定使用CIS組件,屬于復(fù)雜的系統(tǒng)單芯片。因此,還必須考慮以下與讀取模式和整合時間相關(guān)的問題。

.整合時間:

意指讀取前像素的曝光時間。在較簡單的CCD系統(tǒng)上,須要接近電子裝置在組件外執(zhí)行該時序。然而對于CIS組件而言,整合時間可透過指令接口由緩存器來配置,然后CIS組件可針對常用的兩種讀取模式精確地執(zhí)行整合時間。

.全局快門模式:

此種模式下,所有像素同時接受光照,然后讀取。由于所有像素同時讀取,因此會增加讀取噪聲。此模式是用于若針對快速移動物體進行拍攝快照。

.滾動快門模式:

此種模式下,進行逐行曝光和讀取。此模式的讀取噪聲較小,然而在捕獲快速移動物體較不如全局快門模式。

選擇合適的傳感器之后,在進行系統(tǒng)開發(fā)的過程中還須考慮和解決諸多挑戰(zhàn)。除了技術(shù)挑戰(zhàn)之外,開發(fā)系統(tǒng)還會面臨時間壓力,確保產(chǎn)品在既定時程上市。

尺寸/重量/功耗 系統(tǒng)開發(fā)挑戰(zhàn)多

使用者必須根據(jù)時間限制,了解開發(fā)過程中哪部分活動能帶來附加價值,接著做出正確的選擇,并厘清哪部分應(yīng)該自行開發(fā)(以能創(chuàng)造附加價值的增值作業(yè)),哪部分可以購買商用現(xiàn)成產(chǎn)品(COTS)或委外代工。聚焦于附加作業(yè)及運用硬件、軟件和FPGA 層級的IP模塊,是滿足上市時程的重要促成因素之一。

除了上市時程的限制,嵌入式視覺系統(tǒng)開發(fā)過程中還必須考慮尺寸、重量、功耗和成本(SWAP-C)要求。什么主導(dǎo)并支配系統(tǒng)內(nèi)的SWAP-C,取決于具體應(yīng)用領(lǐng)域,例如手持設(shè)備在功耗方面的必備條件,相較于自動駕駛輔助系統(tǒng)更為嚴(yán)格。然而,就自動駕駛輔助系統(tǒng)而言,由于必須生產(chǎn)幾百萬臺,因此解決方案的成本便成為主要考慮因素。

倘若想在尺寸、重量、功耗和成本方面獲得良好的成效,必須設(shè)法讓傳感器和處理系統(tǒng)更緊密的結(jié)合,成為使用數(shù)量更少但功能更強的整合型組件。

每種應(yīng)用領(lǐng)域都具有不同附加價值及不同的尺寸、重量、功耗和成本考慮,因此幾乎所有嵌入式視覺系統(tǒng)都須要執(zhí)行序列。此序列可與所選的傳感器建立接口連接,并執(zhí)行所需的操作,以便產(chǎn)生適合進一步加工或直接透過網(wǎng)絡(luò)傳輸?shù)挠跋??;镜?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/圖像處理">圖像處理序列包含:

.照相機界面:接收來自傳感器的原始影像

.顏色濾波數(shù)組:重建像素顏色

.色彩空間轉(zhuǎn)換:轉(zhuǎn)換成針對編解碼的正確色彩空間

.輸出格式化:與輸出媒介進行接口連接

序列在圖像處理管線中針對接收的影像執(zhí)行和應(yīng)用算法。算法會根據(jù)應(yīng)用的不同而變化,不過,有一些常用的圖像處理算法可用來提高對比度、檢測影像中的特性、目標(biāo)或運動,或校正模糊影像。

現(xiàn)成架構(gòu)有助算法加速開發(fā)

這些算法應(yīng)該在一個架構(gòu)內(nèi)被開發(fā),以在最短時間內(nèi)將產(chǎn)品推向市場,并鼓勵重復(fù)使用,以降低非重復(fù)性和重復(fù)性之工程成本。以下為幾種應(yīng)考慮的現(xiàn)成架構(gòu):

.OpenVX:

用于開發(fā)圖像處理應(yīng)用的開放原始碼應(yīng)用程序。

.OpenCV2:

計算機視覺開放原始碼,為一款以C/C++為基礎(chǔ)的實時計算機視覺函式庫。

.OpenCL:

以C++為基礎(chǔ)的計算機語言開放原始碼,用于開發(fā)GPU、FPGA等常見平行處理應(yīng)用。

.SDSoC:

賽靈思的一款設(shè)計環(huán)境,開發(fā)人員借助該環(huán)境可在Zynq或 UltraScale+ MPSoC組件的ARM處理系統(tǒng)中執(zhí)行編寫的C/C++算法,分析基準(zhǔn)程序代碼特性以找出效能瓶頸,接著利用賽靈思高階合成技術(shù),將瓶頸轉(zhuǎn)換至硬件支持的IP,并在組件的可編程邏輯(PL)部分中運行。

若采用FPGA或All Programmable SoC方案時,將這些架構(gòu)與HLS結(jié)合使用,能夠高效開發(fā)出嵌入式視覺應(yīng)用,并藉由硬件回路快速演示。

影像經(jīng)過處理管線序列之后,數(shù)據(jù)從系統(tǒng)輸出的方式也很重要,以下有三種選擇:

1.利用視訊圖形數(shù)組(VGA)、高畫質(zhì)多媒體接口(HDMI)、串行數(shù)字接口(SDI)或DisplayPort等標(biāo)準(zhǔn)將影像輸出到顯示器。許多電動車采用觸控式顯示屏幕,以便對系統(tǒng)進行控制和配置。

2.將影像或從影像中擷取的信息傳送到另一個系統(tǒng),如同云端處理應(yīng)用般使用影像或擷取出的信息。

3.將影像儲存在非揮發(fā)性媒介中,供未來使用。

對于絕大多數(shù)選項而言,在完成圖像處理鏈后,皆須確定影像格式化方式。此時,使用者須要決定是否使用如MPEG-4 Part 10高階視訊編碼(H.264)或高效率視訊編碼(H.265)等產(chǎn)業(yè)標(biāo)準(zhǔn)影像/視頻壓縮算法,以便對影像進行編碼,而這些執(zhí)行方案通常被稱為編譯碼器。編譯碼器能提高通訊和網(wǎng)絡(luò)帶寬的使用效率,或降低實現(xiàn)影像高保真度所需的儲存空間,因為編碼通常會導(dǎo)致影像失真。若因使用編譯碼器促使影像失真且無法被接受,還可按原始格式傳送和儲存影像,或以無損格式進行編碼。

嵌入式視覺常用之色彩格式

大多數(shù)編譯碼器所使用的色彩空間都與影像傳感器輸出的色彩空間(前提是系統(tǒng)使用彩色組件)不同。嵌入式視覺中主要使用的色彩空間為:

.紅、綠、藍:

包含RGB信息作為影像傳感器的輸出,通常用于VGA等簡單接口的輸出。

.YUV:

包含亮度(Y)和色度(U和V),該色彩空間用于大多數(shù)編譯碼器和一些顯示標(biāo)準(zhǔn)。

常用的YUV格式為YUV4:4:4和YUV4:2:2。兩種格式的區(qū)別在于4:4:4 格式下,每像素由8位表示,可得到24位像素;而在4:2:2格式下,U值和V值在像素之間共享,可得到16位像素,同時可節(jié)省儲存空間。

圖像處理鏈于何處執(zhí)行將影響系統(tǒng)效能

另一個對圖像處理鏈和SWAP-C具有巨大影響的決策是,大部分圖像處理鏈應(yīng)在哪里執(zhí)行。

首先是在邊緣端執(zhí)行,亦即在嵌入式視覺系統(tǒng)內(nèi)執(zhí)行。在邊緣端的執(zhí)行可提高系統(tǒng)的功耗和處理/儲存要求,但能夠?qū)崿F(xiàn)更快的響應(yīng)速度。在邊緣端的處理將成為大部分嵌入式應(yīng)用中的主導(dǎo)應(yīng)用,例如自動駕駛輔助系統(tǒng)、機器視覺等。

其次是在云端執(zhí)行則需要嵌入式視覺系統(tǒng)捕捉影像,并且利用網(wǎng)絡(luò)技術(shù)將影像傳送到云端??稍谠贫颂幚淼牡湫蛻?yīng)用,包括醫(yī)療影像或科學(xué)應(yīng)用。這類應(yīng)用的信息處理非常密集,且毋需實時結(jié)果。

為實現(xiàn)圖像處理鏈,嵌入式視覺系統(tǒng)的核心需要一個處理核心,不僅須控制所選的影像傳感器,還要能接收和執(zhí)行圖像處理管線,并通過指定網(wǎng)絡(luò)基礎(chǔ)設(shè)施傳送影像,或發(fā)送到選定的顯示器。諸多嚴(yán)苛的要求導(dǎo)致經(jīng)常必須選擇FPGA,或者使用如Zynq組件的All Programmable SoC。

Zynq組件將兩個高效能ARM A9處理器與FPGA架構(gòu)結(jié)合,讓處理系統(tǒng)(PS)能夠用來透過GigE、PCIe或CAN等接口與主機系統(tǒng)連接,同時執(zhí)行系統(tǒng)的一般管理和日常事務(wù)。組件的另一半,即可編程邏輯(PL),可用來接收和處理影像,并充分利用FPGA架構(gòu)的平行處理特性。若影像被要求通過網(wǎng)絡(luò)基礎(chǔ)設(shè)施傳送,便能使用Zynq中的直接內(nèi)存訪問(DMA)控制器有效地將影像數(shù)據(jù)從PL移動到PS DDR內(nèi)存。當(dāng)影像移到PS DDR內(nèi)存內(nèi),便可進一步被所選傳輸媒介的DMA控制器使用。

當(dāng)然,一旦影像位于PS DDR內(nèi),高效能A9處理器亦可提供進一步的處理操作。Zynq架構(gòu)的特點在于將處理后的影像從PS DDR移回PL中的影像管線。

傳感器融合為嵌入式視覺發(fā)展最終目標(biāo)

許多嵌入式視覺系統(tǒng)還要求能整合更多傳感器數(shù)據(jù),以便更佳地感測環(huán)境。包括使用許多同類型傳感器擴大視野,例如自動駕駛輔助系統(tǒng)的全景功能,或者整合多個不同類型的傳感器,提供可見光譜下無法看到的視覺內(nèi)容,如在一般影像傳感器數(shù)據(jù)上覆蓋紅外線信息。

在很多應(yīng)用情境下,需要將嵌入式視覺應(yīng)用的輸出與其他傳感器數(shù)據(jù)進行融合,讓產(chǎn)生的影像包含多個不同傳感器信息。最簡單的傳感器融合應(yīng)用是將不同頻譜的影像結(jié)合,例如將可見光與紅外線融合以實現(xiàn)更好的夜視效果。

傳感器融合另一項更加復(fù)雜的應(yīng)用是,將影像系統(tǒng)、全球定位衛(wèi)星系統(tǒng)(GNSS)、數(shù)字地圖信息,以及不同波長下運行的其他傳感器(例如雷達)進行融合,以確定另一輛汽車的相對位置,避免汽車互相碰撞。

由于要將不同系統(tǒng)融合在一起并擷取信息,因此傳感器融合對處理器的條件要求非常高。All Programmable SoC解決方案能夠與多個傳感器建立接口連接,以及平行處理信息,提升數(shù)據(jù)傳輸量,因而在許多方面具備顯著優(yōu)勢。

在傳感器和系統(tǒng)層面,必須考慮諸多因素,并有許多技術(shù)、架構(gòu)和組件可用來實現(xiàn)嵌入式視覺系統(tǒng)。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉