開(kāi)發(fā)基于相機(jī)的檢測(cè)系統(tǒng)需要不斷迭代、理解采樣和清晰度對(duì)圖像質(zhì)量的影響,并使用數(shù)據(jù)集來(lái)評(píng)估系統(tǒng)性能。
由于使用低成本和資源受限的體系結(jié)構(gòu)等要求, 使得基于嵌入式相機(jī)的檢測(cè)系統(tǒng)的設(shè)計(jì)工作變得更加復(fù)雜。因此,在啟動(dòng)算法開(kāi)發(fā)工作時(shí),就要充分考慮視覺(jué)系統(tǒng)涉及的方方面面。
從視覺(jué)系統(tǒng)開(kāi)始很重要,原因有兩個(gè)。首先,算法性能受限于視覺(jué)系統(tǒng)生成的圖像質(zhì)量。雖然可以提升算法的能力,但在某些時(shí)候,算法的性能受到圖像質(zhì)量的限制。其次,視覺(jué)系統(tǒng)較為復(fù)雜,多個(gè)組件之間存在許多交互參數(shù),因此如果在開(kāi)發(fā)周期后期再更改參數(shù)的話,將會(huì)導(dǎo)致高昂的開(kāi)發(fā)成本。
在本文中,基于相機(jī)的檢測(cè)系統(tǒng)由圖1所示的以下組件構(gòu)成:場(chǎng)景中的感興趣目標(biāo);場(chǎng)景成像的環(huán)境;視覺(jué)系統(tǒng)(圖像傳感器、鏡頭和光源);捕獲的數(shù)字化場(chǎng)景,要包括感興趣目標(biāo);以及識(shí)別場(chǎng)景內(nèi)感興趣目標(biāo)的算法。
圖1:在本文中,基于相機(jī)的檢測(cè)系統(tǒng)由以下組件構(gòu)成:場(chǎng)景中的感興趣目標(biāo);場(chǎng)景成像的環(huán)境;視覺(jué)系統(tǒng)(圖像傳感器、鏡頭和光源);捕獲的數(shù)字化場(chǎng)景,要包括感興趣目標(biāo);以及識(shí)別場(chǎng)景內(nèi)感興趣目標(biāo)的算法。
開(kāi)發(fā)方法:構(gòu)建-測(cè)量-學(xué)習(xí)
在開(kāi)發(fā)之初,通常存在“雞或蛋”的問(wèn)題:檢測(cè)算法的能力將對(duì)視覺(jué)系統(tǒng)提出要求,而視覺(jué)系統(tǒng)產(chǎn)生的圖像質(zhì)量也將對(duì)檢測(cè)算法提出要求。成功的設(shè)計(jì)是:要保持視覺(jué)系統(tǒng)和檢測(cè)算法的功能協(xié)調(diào)一致,從而滿足商業(yè)目標(biāo)。在開(kāi)發(fā)過(guò)程中,必須要同時(shí)考慮算法和視覺(jué)系統(tǒng)。為了做好這一點(diǎn),需要有效的迭代。
一種稱(chēng)為“構(gòu)建-測(cè)量-學(xué)習(xí)循環(huán)”的靈活迭代方法,基于精益啟動(dòng)原則,通過(guò)集中學(xué)習(xí)提供有效迭代框架。要使用這種方法,請(qǐng)?jiān)诿看蔚_(kāi)始時(shí)提出以下三個(gè)問(wèn)題:
1. 我們需要學(xué)習(xí)什么?這應(yīng)該建立在以前的學(xué)習(xí)基礎(chǔ)上。
2. 為了學(xué)習(xí)目標(biāo),我們需要測(cè)量什么?
3. 為了實(shí)現(xiàn)測(cè)量,我們需要構(gòu)建什么?
然后,僅構(gòu)建學(xué)習(xí)所需要的東西。
例如,我們將構(gòu)建-測(cè)量-學(xué)習(xí)循環(huán)方法應(yīng)用于設(shè)計(jì)基于相機(jī)的低成本線性條形碼閱讀器,這種閱讀器可以在單一圖像捕獲中,以大視場(chǎng)解碼盡可能多的條形碼。想象一下,在一個(gè)高度動(dòng)態(tài)的環(huán)境中,條形碼閱讀器可以在任何方向快速移動(dòng)的場(chǎng)景。不同尺寸的條形碼在整個(gè)環(huán)境中處于隨機(jī)位置,并且與條形碼閱讀器之間的角度和距離也都是隨機(jī)的。
使用構(gòu)建-測(cè)量-學(xué)習(xí)循環(huán)的方法,第一步是確定圖像傳感器和鏡頭所需的“類(lèi)”,這將設(shè)置一個(gè)基礎(chǔ)的硬件成本目標(biāo)(見(jiàn)圖2)。為此,需要測(cè)量基礎(chǔ)相機(jī)生成圖像質(zhì)量的能力,使用解碼精度作為測(cè)量基準(zhǔn)。為了進(jìn)行測(cè)量,我們使用現(xiàn)成的鏡頭和圖像傳感器開(kāi)發(fā)套件構(gòu)建相機(jī)系統(tǒng)。收集一個(gè)小數(shù)據(jù)集,并使用現(xiàn)成的塊開(kāi)發(fā)算法的第一個(gè)版本。
圖2:實(shí)際使用中的構(gòu)建-測(cè)量-學(xué)習(xí)循環(huán)方法,顯示了設(shè)計(jì)基于相機(jī)的低成本線性條形碼閱讀器的例子。
第一次迭代學(xué)習(xí)產(chǎn)生的不僅僅是所需的圖像傳感器和鏡頭,還有基礎(chǔ)相機(jī)的成本估算。我們還學(xué)習(xí)到運(yùn)動(dòng)模糊是限制檢測(cè)精度的主要噪聲源。
我們將這些學(xué)習(xí)結(jié)果帶入迭代二,并關(guān)注于解決運(yùn)動(dòng)模糊問(wèn)題。為了學(xué)習(xí)這一點(diǎn),我們測(cè)量了相機(jī)在快速運(yùn)動(dòng)場(chǎng)景中生成高質(zhì)量圖像的能力。利用迭代一的學(xué)習(xí)結(jié)果,我們利用短曝光時(shí)間和全局快門(mén)圖像傳感器,設(shè)計(jì)了一種減少運(yùn)動(dòng)模糊的方法。使用現(xiàn)成的組件和全局快門(mén)傳感器,就構(gòu)建了一臺(tái)新相機(jī)。收集另一個(gè)數(shù)據(jù)集,修改算法,評(píng)估圖像質(zhì)量和算法性能。
迭代二的關(guān)鍵學(xué)習(xí)是全局快門(mén)工作方法,以及進(jìn)一步提高算法能力,使得能夠使用更低成本的圖像傳感器。隨著繼續(xù)進(jìn)行更多次迭代,更多的學(xué)習(xí)將指導(dǎo)“如何利用現(xiàn)成的鏡頭、全局快門(mén)圖像傳感器和功能強(qiáng)大的算法,構(gòu)建定制視覺(jué)系統(tǒng)的”成功設(shè)計(jì)決策。使用這種構(gòu)建-測(cè)量-學(xué)習(xí)循環(huán)方法,有助于將重點(diǎn)聚焦在下一個(gè)重要的學(xué)習(xí)上,并減少非增值調(diào)查。它提高了迭代的有效性,并使設(shè)計(jì)滿足商業(yè)目標(biāo),其中視覺(jué)系統(tǒng)的能力與算法的能力相輔相成。
設(shè)計(jì)起點(diǎn):采樣與清晰度
空間分辨率可以說(shuō)是最具影響力的圖像質(zhì)量特征,因此在設(shè)計(jì)基于相機(jī)的檢測(cè)系統(tǒng)時(shí),空間分辨率是一個(gè)合乎邏輯的起點(diǎn)??臻g分辨率定義了可以在圖像中檢測(cè)到的最小特征或目標(biāo)的尺寸,可以分為兩個(gè)部分:采樣和清晰度。
采樣是一個(gè)給定區(qū)域內(nèi)的像素?cái)?shù),通常以每英寸像素?cái)?shù)或每毫米像素?cái)?shù)表示。由于它是光學(xué)系統(tǒng)放大倍數(shù)的函數(shù),因此隨物距而變化。采樣不足將減少鑒別細(xì)節(jié)并增加了混疊偽影。為了確定系統(tǒng)的采樣要求,必須要知道需要鑒別的特征的物理尺寸、最大檢測(cè)距離和精確檢測(cè)所需要的像素?cái)?shù)。
為了適應(yīng)具有挑戰(zhàn)性的應(yīng)用情況,在最大檢測(cè)距離處(在放大率最低的區(qū)域內(nèi))開(kāi)始,此處區(qū)別特征的像素?cái)?shù)為4-5像素。通常,在開(kāi)始的時(shí)候不清楚鑒別特征是什么,特別是在應(yīng)用機(jī)器學(xué)習(xí)或深度學(xué)習(xí)時(shí)。開(kāi)始時(shí),最好采用冗余采樣,因?yàn)樵谲浖袦p少采樣比增加采用更容易,允許使用算法進(jìn)行實(shí)驗(yàn)以確定所需要的最小采樣。
使用薄透鏡方程,可以輕松地根據(jù)采樣要求推導(dǎo)出視覺(jué)系統(tǒng)參數(shù)。對(duì)于具有最小失真的光學(xué)疊加尤其如此。最終,采樣要求將決定圖像傳感器的像素?cái)?shù)、圖像傳感器的像素尺寸和鏡頭焦距。關(guān)于薄透鏡方程,最令人興奮的是,在購(gòu)買(mǎi)圖像傳感器或透鏡組件之前,可以在紙上計(jì)算和評(píng)估這些參數(shù)。Twisthink公司使用這些薄透鏡方程創(chuàng)建了一個(gè)Excel工作表(見(jiàn)圖3),用于快速選擇圖像傳感器和鏡頭產(chǎn)品,工作表可以從http://bit.ly/VSD-TWI下載。
圖3:Twisthink公司使用這些薄透鏡方程創(chuàng)建了一個(gè)Excel工作表,用于快速選擇圖像傳感器和鏡頭產(chǎn)品,工作表可以從http://bit.ly/VSD-TWI下載。
如果光學(xué)系統(tǒng)具有大約5%或更大的失真,則薄透鏡方程不能精確地對(duì)系統(tǒng)建模。這時(shí)候通過(guò)采樣確定視覺(jué)系統(tǒng)參數(shù)變得更具挑戰(zhàn)性。
清晰度是圖像空間頻率的測(cè)量。通常區(qū)分細(xì)節(jié)將具有很高的空間頻率。在評(píng)估影響清晰度的視覺(jué)系統(tǒng)參數(shù)時(shí),最簡(jiǎn)單的方法是從兩種不同的場(chǎng)景來(lái)看:靜止?fàn)顟B(tài)和運(yùn)動(dòng)狀態(tài)。
在靜止?fàn)顟B(tài)下,清晰度的三大影響因素分別是環(huán)境、鏡頭和圖像傳感器:
· 環(huán)境中的霧、灰塵和微粒會(huì)引發(fā)圖像模糊,因此在系統(tǒng)設(shè)計(jì)中需要考慮這些因素。
· 低質(zhì)量鏡頭和鏡頭在圖像傳感器上的聚焦,會(huì)引發(fā)圖像模糊。其他因素包括溫度和制造——由于制造差異,模糊程度隨溫度變化,而且每個(gè)鏡頭可能情況都不一樣。
· 圖像傳感器因像素串?dāng)_引入圖像模糊。這種模糊情況隨光譜波長(zhǎng)而變化,大多數(shù)圖像傳感器供應(yīng)商會(huì)根據(jù)要求提供此類(lèi)信息。
在運(yùn)動(dòng)狀態(tài)下,運(yùn)動(dòng)速度與曝光時(shí)間共同決定了圖像的模糊程度。為了減少模糊,可以限制最大運(yùn)動(dòng)速度和/或?qū)⑵毓鈺r(shí)間降到最短,當(dāng)然這將影響許多其他的視覺(jué)系統(tǒng)參數(shù),如圖像亮度、照明強(qiáng)度等等。
評(píng)估系統(tǒng)的性能
構(gòu)建完系統(tǒng)后,評(píng)估系統(tǒng)性能的一個(gè)好方法就是使用數(shù)據(jù)集。數(shù)據(jù)集用于訓(xùn)練機(jī)器學(xué)習(xí)和深度學(xué)習(xí)算法。利用數(shù)據(jù)集,還可以頻繁有效地評(píng)估系統(tǒng)的性能,并且可以為“判斷解決方案是否符合預(yù)期”給出有價(jià)值的參考。
Twisthink使用一種稱(chēng)為算法開(kāi)發(fā)框架的工具來(lái)收集數(shù)據(jù)、管理和處理數(shù)據(jù),并有效地開(kāi)發(fā)和評(píng)估。該框架包括五個(gè)部分,分別為視覺(jué)系統(tǒng)、數(shù)據(jù)集收集、標(biāo)定的真實(shí)數(shù)據(jù)或標(biāo)簽、算法開(kāi)發(fā)和性能評(píng)估,如圖4所示。
圖4:Twisthink使用一種稱(chēng)為算法開(kāi)發(fā)框架的工具來(lái)收集數(shù)據(jù)、管理和處理數(shù)據(jù),并有效地開(kāi)發(fā)和評(píng)估。
為了實(shí)現(xiàn)準(zhǔn)確的系統(tǒng)評(píng)估,必須在代表性環(huán)境中使用代表性視覺(jué)系統(tǒng)收集數(shù)據(jù)集。理想情況下,應(yīng)使用視覺(jué)系統(tǒng)的最終版本來(lái)收集數(shù)據(jù)集。如果無(wú)法做到這一點(diǎn),請(qǐng)?jiān)谠O(shè)計(jì)視覺(jué)系統(tǒng)時(shí)收集含代表性部分的小的初步數(shù)據(jù)集。
得到算法與數(shù)據(jù)集應(yīng)產(chǎn)生的答案是評(píng)估的關(guān)鍵。這稱(chēng)為真實(shí)數(shù)據(jù)或標(biāo)簽。通常,真實(shí)數(shù)據(jù)需要人工解釋?zhuān)@通常是一個(gè)昂貴的步驟。具有真實(shí)數(shù)據(jù)的數(shù)據(jù)集可以成為支持產(chǎn)品開(kāi)發(fā)的專(zhuān)有資產(chǎn)。
一旦開(kāi)發(fā)出算法,就可以用數(shù)據(jù)集和真實(shí)數(shù)據(jù)來(lái)評(píng)估系統(tǒng)的性能。性能評(píng)估需要定義一個(gè)基準(zhǔn)來(lái)測(cè)量系統(tǒng)的性能。使用預(yù)先記錄的數(shù)據(jù)集來(lái)評(píng)估系統(tǒng)性能,可以加速開(kāi)發(fā),但是,解決方案的可信度是由數(shù)據(jù)集的內(nèi)容決定的。因此,設(shè)計(jì)表征應(yīng)用空間的數(shù)據(jù)集非常重要。
使用數(shù)據(jù)集評(píng)估系統(tǒng)性能,就像軟件世界中的黑盒測(cè)試一樣。但是,有時(shí)必須執(zhí)行較低級(jí)別的“單元”測(cè)試。一種方法是通過(guò)對(duì)信號(hào)路徑建模來(lái)理解噪聲源及其對(duì)圖像質(zhì)量的影響。圖5顯示了基于相機(jī)的檢測(cè)系統(tǒng)的主要組成部分。每個(gè)部分都受到不同噪聲源的影響,每個(gè)噪聲源都會(huì)影響捕獲的圖像質(zhì)量。在每個(gè)部分中不同傳輸功能或噪聲源,將影響初始信號(hào)。
圖5:信號(hào)路徑建模有助于開(kāi)發(fā)人員理解噪聲源及其對(duì)圖像質(zhì)量的影響。
對(duì)信號(hào)路徑建??梢陨钊肓私獠幻黠@的噪聲源以及它們是否具有合適的解決方案。它還可以幫助確定哪些噪聲源需要進(jìn)一步研究或?qū)嶒?yàn)。最后,可以幫助理解組件之間的相互作用,并通過(guò)優(yōu)先考慮“容易實(shí)現(xiàn)的目標(biāo)”來(lái)指導(dǎo)開(kāi)發(fā)。
當(dāng)您設(shè)計(jì)基于嵌入式相機(jī)的檢測(cè)系統(tǒng)時(shí),一定記得在開(kāi)始算法開(kāi)發(fā)的時(shí)候就要充分考慮視覺(jué)系統(tǒng)的方方面面。并且請(qǐng)記住使用迭代開(kāi)發(fā)方法,從最高圖像質(zhì)量特征(采樣和清晰度)開(kāi)始,并使用數(shù)據(jù)集來(lái)評(píng)估系統(tǒng)性能。
審核編輯 :李倩
-
圖像傳感器
+關(guān)注
關(guān)注
68文章
1910瀏覽量
129623 -
算法
+關(guān)注
關(guān)注
23文章
4624瀏覽量
93119 -
視覺(jué)系統(tǒng)
+關(guān)注
關(guān)注
3文章
336瀏覽量
30797 -
數(shù)據(jù)集
+關(guān)注
關(guān)注
4文章
1208瀏覽量
24749
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論