• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      脈沖序列圖像傳感器的成像演示系統(tǒng)設(shè)計(jì)

      2022-07-23 06:36:06廣東工業(yè)大學(xué)謝佳銘
      電子世界 2022年1期
      關(guān)鍵詞:離線線程數(shù)據(jù)包

      廣東工業(yè)大學(xué) 謝佳銘

      為了實(shí)現(xiàn)單比特脈沖圖像傳感器的數(shù)據(jù)采集、實(shí)時(shí)演示、成像原理展示,設(shè)計(jì)基于MFC界面語言的成像演示系統(tǒng)。該系統(tǒng)使用ULM928測試盒采集圖像傳感器raw數(shù)據(jù)并傳輸?shù)缴衔粰C(jī)。上位機(jī)可以設(shè)置圖像傳感器的觸發(fā)閾值,測試盒的數(shù)據(jù)傳輸速度。同時(shí),上位機(jī)還可以根據(jù)需要,實(shí)時(shí)重構(gòu)當(dāng)前場景、HDR圖像合成、展示原始數(shù)據(jù)、高速場景捕捉等,也可保存原始數(shù)據(jù)以供后期需要進(jìn)行高質(zhì)量重構(gòu)。演示結(jié)果表明,通過該成像演示系統(tǒng),能夠很好地展示脈沖序列圖像傳感器的成像原理,為后期進(jìn)一步重構(gòu)提供幫助。

      近年來,圖像傳感器朝著高分辨率發(fā)展的同時(shí),也對幀率提出了更高的要求,特別是在某些高速運(yùn)動(dòng)場景下如爆炸、風(fēng)洞試驗(yàn)需要對物體運(yùn)動(dòng)細(xì)節(jié)信息做出詳細(xì)的記錄。以每像素8bit,每幀1280x720分辨率,每秒5000幀的圖像傳感器為例,其產(chǎn)生的傳輸需求達(dá)到36.86Gbit/s。這不僅對傳輸速率提出了極大的要求,也增加了傳感器功耗。為了捕獲高速場景運(yùn)動(dòng)信息,同時(shí)減少捕獲過程中圖像數(shù)據(jù)的冗余性,脈沖式觸發(fā)輸出的圖像傳感器被開發(fā)出來。但是由于高速脈沖圖像傳感器的像素?cái)?shù)據(jù)輸出是離散二進(jìn)制格式,其后期的恢復(fù)重構(gòu)方法還在探索中。目前,缺乏有效的重構(gòu)算法,無法定制高效的硬件重構(gòu)芯片,重構(gòu)圖像需要將原始數(shù)據(jù)采集到上位機(jī)進(jìn)行重構(gòu)驗(yàn)證,增加了許多不便。

      為了方便采集原始數(shù)據(jù),驗(yàn)證重構(gòu)算法的正確性,幫助后期定制ISP,本文基于MFC界面設(shè)計(jì)語言,開發(fā)了脈沖序列圖像傳感器的數(shù)據(jù)采集重構(gòu)系統(tǒng)。該系統(tǒng)需要滿足的功能有:調(diào)節(jié)脈沖序列圖像傳感器參數(shù)、原始數(shù)據(jù)格式演示、實(shí)時(shí)重構(gòu)當(dāng)前場景、高時(shí)間分辨率細(xì)節(jié)展示。

      1 系統(tǒng)架構(gòu)

      該演示系統(tǒng)使用VS2015作為開發(fā)環(huán)境,使用Opencv3.3.0提供基礎(chǔ)的圖像處理函數(shù)功能。進(jìn)一步地,該演示系統(tǒng)可以分為圖像芯片參數(shù)配置模塊、數(shù)據(jù)采集模塊、數(shù)據(jù)展示模塊、離線重構(gòu)保存模塊。

      配置模塊:傳感器的最高傳輸幀率可以達(dá)到4萬幀,最高數(shù)據(jù)量傳輸率可以達(dá)到40000x250x400/8=4Gbps/s,雖然USB3的最大傳輸輸率可以達(dá)到5Gbps/s,但是注意到這個(gè)傳輸輸率為理論值,因此為了避免數(shù)據(jù)丟包問題,我們將采集器的工作頻率設(shè)置為20000幀,最大傳輸速率被壓制到2Gbps/s。除此之外,演示系統(tǒng)還提供對傳感器的工作電壓設(shè)置,包括觸發(fā)閾值,比較電壓等。觸發(fā)閾值可調(diào)范圍為1.0-3.0V,通過調(diào)節(jié)觸發(fā)閾值,能夠調(diào)整比特的觸發(fā)頻率,譬如更好地適應(yīng)暗光環(huán)境,但這樣會(huì)增大暗電流等噪聲的影響。打開演示界面,系統(tǒng)自動(dòng)查找電腦上已接入的圖像傳感器,這一步是模仿傳統(tǒng)的工業(yè)相機(jī)開發(fā)過程。系統(tǒng)查找到完整的相機(jī)列表之后,提供相機(jī)列表選擇,并對列表里的第一個(gè)相機(jī)進(jìn)行初始化。初始化包括預(yù)設(shè)傳輸幀率、工作電壓、觸發(fā)閾值等。采集過程中可以根據(jù)需要再次調(diào)整參數(shù)。參數(shù)設(shè)置模塊如圖1所示。

      圖1 參數(shù)設(shè)置區(qū)域

      采集模塊:初始化后,相機(jī)開始工作,傳輸數(shù)據(jù)。為了避免每一幀都進(jìn)行傳輸,實(shí)際中的硬件采集部分會(huì)緩存一定的幀數(shù)再進(jìn)行傳輸。本例所采用的緩存幀數(shù)為400幀,傳輸過程穩(wěn)定時(shí),程序每秒將傳輸50個(gè)數(shù)據(jù)包,每個(gè)數(shù)據(jù)包400x250x400bit=4.76Mbyte,每秒的傳輸速率將達(dá)到238Mbyte/s。因?yàn)閿?shù)據(jù)量過大,因此傳輸?shù)玫降臄?shù)據(jù)包將根據(jù)需要實(shí)時(shí)重構(gòu),或離線保存以供后期恢復(fù)時(shí)間分辨率更高的場景信息,否則將予以丟棄。

      實(shí)時(shí)演示模塊:為了拍攝感興趣的場景,譬如抓拍某一個(gè)高速過程,需要對當(dāng)前的數(shù)據(jù)情況有一個(gè)大概了解,因此需要以一個(gè)實(shí)時(shí)展示模塊界面以提供實(shí)時(shí)場景展示。實(shí)時(shí)場景展示只需要提供對當(dāng)前場景光強(qiáng)的近似擬合即可,對成像質(zhì)量以及高速運(yùn)動(dòng)細(xì)節(jié)要求不高,因此采用簡單的時(shí)間窗口計(jì)數(shù)即可。因?yàn)楣鈴?qiáng)越強(qiáng),像素觸發(fā)1bit的頻率越高,因此對一個(gè)數(shù)據(jù)包400幀里1的個(gè)數(shù)進(jìn)行計(jì)數(shù),將得到該像素的光強(qiáng)信息。另外,我們采用的展示圖像格式為256級的灰度格式,我們還需要做溢出判斷,以免計(jì)數(shù)個(gè)數(shù)溢出影響光強(qiáng)的恢復(fù)。

      為了展示脈沖序列圖像傳感器的成像機(jī)理,我們需要展示傳感器傳輸過來的raw數(shù)據(jù),但是由于每一秒都有50個(gè)數(shù)據(jù)包傳輸過來,如果全部進(jìn)行實(shí)時(shí)重構(gòu)展示,系統(tǒng)每一秒將展示20000幀的原始幀,人眼無法觀察到實(shí)際的細(xì)節(jié)變化,同時(shí)超出了顯示器的幀率和系統(tǒng)負(fù)載的限制。因此,我們設(shè)置一個(gè)放慢倍數(shù)的倍數(shù),選取1s內(nèi)某一個(gè)小區(qū)間的數(shù)據(jù),在5s的時(shí)間內(nèi)進(jìn)行展示,演示實(shí)際物體的運(yùn)動(dòng)細(xì)節(jié)。最終的整體演示效果如圖2所示。

      圖2 整體演示界面

      離線保存:當(dāng)出現(xiàn)感興趣的場景時(shí),可以設(shè)置保存時(shí)間大小,將設(shè)定時(shí)間內(nèi)的原始的數(shù)據(jù)包保留下來。相機(jī)的工作頻率已經(jīng)做了降頻處理,每秒的傳輸輸率達(dá)到了238Mbyte/s,這是因?yàn)橛?jì)算機(jī)的固態(tài)硬盤能夠提供峰值500Mb/s的讀寫,但由于計(jì)算機(jī)負(fù)載波動(dòng)問題,時(shí)常無法達(dá)到這個(gè)寫入要求。第二,每秒讀寫50個(gè)數(shù)據(jù)包,系統(tǒng)將在1s內(nèi)進(jìn)行50次系統(tǒng)調(diào)用,進(jìn)一步降低了讀寫性能。上述原因?qū)е铝嗽趯?shí)際的讀取過程中出現(xiàn)了數(shù)據(jù)包丟失問題。數(shù)據(jù)包丟失問題對于靜態(tài)場景和實(shí)時(shí)重構(gòu)恢復(fù)需求場景的恢復(fù)效果影響輕微,但對需要恢復(fù)高速運(yùn)動(dòng)場景細(xì)節(jié)信息時(shí),某一個(gè)時(shí)間段內(nèi)一個(gè)數(shù)據(jù)包的丟失會(huì)造成數(shù)據(jù)包恢復(fù)切換時(shí)重構(gòu)出來的幀有極大的錯(cuò)誤。因此本例中,如果有保存原始數(shù)據(jù)的需要,我們將其緩存在內(nèi)存里,等到設(shè)置時(shí)間間隔內(nèi)的所有數(shù)據(jù)包都接收到后,才將數(shù)據(jù)包寫在硬盤上。

      離線重構(gòu)模塊:離線重構(gòu)模塊提供了兩個(gè)基本的算法以針對不同恢復(fù)要求進(jìn)行快速重構(gòu),并且提供逐幀保存功能。算法1是實(shí)時(shí)演示時(shí)使用的固定窗口計(jì)數(shù)功能,能夠提供靜態(tài)或相對低速的場景信息恢復(fù)。算法2針對高速運(yùn)動(dòng)細(xì)節(jié)恢復(fù)要求,使用1比特脈沖之間的間隔大小的倒數(shù)作為該間隔內(nèi)的所有幀對應(yīng)該像素的亮度值,該算法能夠提供比固定窗口計(jì)數(shù)更好的時(shí)間分辨率。

      多線程處理:由于成像演示系統(tǒng)每一秒都有50個(gè)數(shù)據(jù)包要處理,如果等到每一個(gè)數(shù)據(jù)包都處理完成,再處理下一個(gè),那勢必會(huì)造成數(shù)據(jù)包丟失及演示卡頓問題,特別是在有離線數(shù)據(jù)保存需要時(shí),系統(tǒng)進(jìn)行系統(tǒng)調(diào)用進(jìn)一步增加了延遲時(shí)間。因此系統(tǒng)使用了多個(gè)線程對各個(gè)任務(wù)進(jìn)行分解。最主要的幾個(gè)線程可以分為數(shù)據(jù)采集線程,數(shù)據(jù)緩存線程,實(shí)時(shí)展示線程,成像原理展示線程,離線保存線程,離線重構(gòu)線程。在這個(gè)過程中需要涉及到對數(shù)據(jù)的同步互斥讀寫?;镜木€程關(guān)系如圖3所示。最終實(shí)際拍攝以及上位機(jī)演示的實(shí)拍圖如圖4所示。

      圖3 線程關(guān)系邏輯圖

      圖4 實(shí)際場景及上位機(jī)工作示意圖

      2 改進(jìn)分析

      傳統(tǒng)的圖像傳感器在遇到亮度變化幅度大的場景時(shí)往往會(huì)曝光過度或曝光不足,原因在于傳感器芯片若非經(jīng)過特殊閾值設(shè)計(jì),其對光強(qiáng)的響應(yīng)都是線性的,因此這樣就造成了在有限的量化范圍內(nèi)無法記錄亮度變化大的場景信息。脈沖式序列傳感器對光強(qiáng)的響應(yīng)也是近乎線性化,并未做特殊處理,所以在遇到亮度變化大的場景時(shí),同樣會(huì)出現(xiàn)圖像對比度不佳的情況。增強(qiáng)圖像對比度的方法有很多,比如直方圖均衡,函數(shù)算子映射等,除此之外,HDR(高動(dòng)態(tài)范圍成像)也是一個(gè)提高圖像動(dòng)態(tài)范圍,改善圖像對比度的方法。傳統(tǒng)的HDR成像可以分為軟件和硬件兩種方式,軟件方法是將不同曝光時(shí)間的圖像經(jīng)過一組權(quán)重函數(shù)融合在一起,獲得一張細(xì)節(jié)更加豐富的圖像。在本例中,由于HDR合成融合的計(jì)算量比較大,無法實(shí)現(xiàn)實(shí)時(shí)性的展示,因此在實(shí)時(shí)展示環(huán)節(jié),我們將圖像原始幀的計(jì)數(shù)歸一化,然后使用一些經(jīng)典的Tone算子來提高圖像的實(shí)時(shí)演示質(zhì)量。經(jīng)過Tone算子映射之后的圖像效果對比如圖5和圖6所示。

      圖5 數(shù)據(jù)包簡單恢復(fù)后的原始圖

      圖6 經(jīng)過簡單tone算子提升后的對比圖

      針對不同的恢復(fù)要求,對數(shù)據(jù)的恢復(fù)方法不一樣,從而對數(shù)據(jù)的保存連續(xù)性要求也不一樣。當(dāng)僅需實(shí)時(shí)展示場景信息,恢復(fù)低速運(yùn)動(dòng)細(xì)節(jié)時(shí),倘若丟失一兩個(gè)數(shù)據(jù)包,對成像的質(zhì)量恢復(fù)影響并不大,其表現(xiàn)為丟失了0.02s的一個(gè)拍攝區(qū)間數(shù)據(jù),未對實(shí)際的視頻連貫性產(chǎn)生影響。但是當(dāng)需要恢復(fù)高速運(yùn)動(dòng)細(xì)節(jié)信息時(shí),由于脈沖間隔的信息將被用來恢復(fù)該區(qū)間內(nèi)像素的光強(qiáng),因此數(shù)據(jù)包丟失將造成在數(shù)據(jù)包切換時(shí)對應(yīng)像素點(diǎn)的激發(fā)對應(yīng)不上。這會(huì)造成圖像恢復(fù)后出現(xiàn)大范圍的白色斑點(diǎn)。因此,非常有必要保證系統(tǒng)對數(shù)據(jù)保存的容錯(cuò)性,在數(shù)據(jù)的采集中,要等到幀率穩(wěn)定之后才能開始保存。除此之外,當(dāng)保存數(shù)據(jù)時(shí)先將其緩存在內(nèi)存里,而不是每接受到一個(gè)數(shù)據(jù)包都立刻進(jìn)行系統(tǒng)調(diào)用保存在硬盤上。

      本文簡單介紹了脈沖圖像傳感器的成像模型,并基于原型機(jī)設(shè)計(jì)了一個(gè)成像演示系統(tǒng),該演示系統(tǒng)能夠很好地展示該傳感器的成像原理,并完成原始的數(shù)據(jù)采集、保存、演示功能,提供了針對不同恢復(fù)要求的算法實(shí)現(xiàn)。采集得到的原始數(shù)據(jù)能夠供給后期更精細(xì)的恢復(fù)要求使用,從而幫助定制與該種傳感器匹配的圖像信號處理器。

      猜你喜歡
      離線線程數(shù)據(jù)包
      異步電機(jī)離線參數(shù)辨識(shí)方法
      呼吸閥離線檢驗(yàn)工藝與評定探討
      淺談ATC離線基礎(chǔ)數(shù)據(jù)的準(zhǔn)備
      SmartSniff
      離線富集-HPLC法同時(shí)測定氨咖黃敏膠囊中5種合成色素
      中成藥(2018年2期)2018-05-09 07:20:09
      淺談linux多線程協(xié)作
      基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計(jì)與實(shí)現(xiàn)
      視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
      Linux線程實(shí)現(xiàn)技術(shù)研究
      移動(dòng)IPV6在改進(jìn)數(shù)據(jù)包發(fā)送路徑模型下性能分析
      宣威市| 三明市| 汝城县| 西丰县| 策勒县| 贵定县| 曲阳县| 平昌县| 沁阳市| 六枝特区| 绿春县| 灵武市| 隆子县| 武乡县| 天全县| 察哈| 昌黎县| 内乡县| 即墨市| 当阳市| 凤台县| 都昌县| 中山市| 开阳县| 武定县| 洛阳市| 吉水县| 巴塘县| 颍上县| 中牟县| 德格县| 吴江市| 会昌县| 诏安县| 信丰县| 右玉县| 台江县| 阜阳市| 桃江县| 赣榆县| 越西县|