999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種NanEyeM 微型高速串行圖像傳感器解碼方法*

2022-10-20 01:09:12景金榮張會新劉文怡熊繼軍洪應(yīng)平
電子器件 2022年3期

何 鑫,景金榮,張會新,劉文怡,熊繼軍,洪應(yīng)平

(中北大學(xué)儀器科學(xué)與動態(tài)測試教育部重點(diǎn)實(shí)驗室,山西 太原 030051)

得益于大規(guī)模集成電路技術(shù)和精密加工技術(shù)的發(fā)展,越來越多基于CMOS 工藝的圖像傳感器誕生[1-2]。近年來,CMOS 圖像傳感器(CMOS Image Sensor)的大部分性能指標(biāo)基本超過CCD(Charge Coupled Device,CCD)圖像傳感器,在醫(yī)療、工業(yè)、交通及航空等不同領(lǐng)域都得到了廣泛的應(yīng)用[3-6]。

NanEyeM 是艾邁斯半導(dǎo)體公司推出的微型串行CMOS 圖像傳感器,其面積大小只有1 mm2,通過LVDS(Low-Voltage Differential Signaling)接口可對外提供320×320 像素分辨率的圖像,在65 MHz 時鐘下最大圖像輸出幀率為49 FPS,可應(yīng)用于醫(yī)療、科研等對傳感器體積大小有嚴(yán)格要求的領(lǐng)域。但其內(nèi)部未集成ISP(Image Signal Processing,ISP),數(shù)據(jù)輸出為曼徹斯特編碼的高速異步串行碼流。因此,該傳感器的圖像數(shù)據(jù)解碼較為困難,且無法直接輸出RGB 圖像。目前市面上也沒有適用于該傳感器的接口轉(zhuǎn)換芯片,相關(guān)研究較為缺乏,國內(nèi)只有華中師范大學(xué)的石汶奇等人[7]設(shè)計過基于FPGA 的NanEye 2D 圖像傳感器的數(shù)據(jù)采集IP,但該IP 無法適用于NanEyeM 圖像傳感器,且只具有數(shù)據(jù)接收功能,需要配合電腦才能對圖像進(jìn)行轉(zhuǎn)換及顯示,具有一定的局限性。

為解決上述技術(shù)難題,本文對NanEyeM 圖像傳感器的異步串行通信、圖像數(shù)據(jù)特點(diǎn)進(jìn)行了研究分析,提出了一種高速實(shí)時圖像數(shù)據(jù)解碼方法,設(shè)計和實(shí)現(xiàn)了基于動態(tài)脈寬匹配、邊沿跟隨的新型數(shù)據(jù)解碼算法,該算法在對數(shù)據(jù)進(jìn)行解碼的同時可將Bayer圖像轉(zhuǎn)換為RGB 圖像,實(shí)現(xiàn)了串行圖像傳感器直接輸出RGB 圖像的功能。并在Xilinx 公司的FPGA平臺上進(jìn)行了測試驗證。該算法能夠?qū)崿F(xiàn)圖像數(shù)據(jù)的解碼,輸出RGB 圖像,對于NanEyeM 圖像傳感器的推廣應(yīng)用具有重要意義。

1 圖像傳感器工作原理

NanEyeM 圖像傳感器內(nèi)部集成10 位分辨率模數(shù)轉(zhuǎn)換器(Analog-to-Digital Converter,ADC),可通過2 線LVDS 接口以9 FPS~49 FPS 的幀率串行向外傳輸320×320 pixel 分辨率的圖像數(shù)據(jù)。

如圖1 所示,該傳感器共有四種工作模式,分別為配置模式、同步模式、延遲模式以及輸出模式。初始上電時,傳感器在時長為648 PP(1PP 為12 bit數(shù)據(jù)時長)的配置模式中循環(huán),在該模式下控制端可通過LVDS 接口對傳感器進(jìn)行參數(shù)上的配置,通過對配置寄存器的空閑模式位寫“1”可退出配置模式,進(jìn)入四種模式的循環(huán)中。在同步模式和延遲模式下,傳感器將持續(xù)輸出同步字,數(shù)據(jù)接收端可從同步字中提取數(shù)據(jù)編碼時鐘信息,用于數(shù)據(jù)的解碼以及采樣。經(jīng)過648 PP 的同步階段以及2×328 PP 至498×328 PP 的延遲階段后,傳感器進(jìn)入到輸出模式,在該模式下串行輸出320×320 pixel 分辨率圖像數(shù)據(jù),在每一幀圖像數(shù)據(jù)尾部都附加有長度為7 PP的幀結(jié)束標(biāo)志,用于檢查圖像數(shù)據(jù)傳輸?shù)恼_性。

圖1 圖像傳感器工作模式轉(zhuǎn)換圖

該圖像傳感器使用異步串行方式進(jìn)行數(shù)據(jù)傳輸,每個像素數(shù)據(jù)由12 bit 組成,其中有效數(shù)據(jù)位占據(jù)中間10 bit,高位在前,數(shù)據(jù)傳輸起始以電平“1”表示,傳輸結(jié)束以電平“0”表示。圖像數(shù)據(jù)格式如圖2 所示。

圖2 圖像數(shù)據(jù)格式

如圖3 所示,圖像傳感器使用曼徹斯特編碼方式對圖像數(shù)據(jù)進(jìn)行編碼,即將數(shù)據(jù)與內(nèi)部編碼時鐘進(jìn)行異或操作,使用上升沿(“01”)表示數(shù)據(jù)“1”,下降沿(“10”)表示數(shù)據(jù)“0”[8]。例如原始數(shù)據(jù)“101110110010”,經(jīng)曼徹斯特編碼后則變?yōu)椤?11001010110010110100110”。

圖3 曼徹斯特編碼

NanEyeM 圖像傳感器內(nèi)部未集成ISP 單元,其輸出的是Bayer 格式的RAW 圖像,需要進(jìn)行圖像格式轉(zhuǎn)換,將Bayer 格式轉(zhuǎn)為RGB 格式。

2 解碼原理

2.1 串行數(shù)據(jù)解碼原理

對曼徹斯特編碼后的數(shù)據(jù)進(jìn)行分析,編碼后的串行數(shù)據(jù)可以分為兩種電平數(shù)據(jù),如圖4 所示。一種為L_BIT(長周期高(低)電平),其電平維持時間為一個編碼時鐘周期;另一種為S_BIT(短周期高(低)電平),其電平維持時間為半個編碼時鐘周期。

圖4 兩種曼徹斯特電平碼流

為了對圖像傳感器輸出的曼徹斯特編碼數(shù)據(jù)進(jìn)行解碼,需要對數(shù)據(jù)電平脈寬進(jìn)行持續(xù)測量,并與編碼時鐘周期進(jìn)行比較。L_BIT 表示原始數(shù)據(jù)電平值發(fā)生變化,S_BIT 表示原始數(shù)據(jù)電平值未發(fā)生變化。NanEyeM 圖像傳感器在每次數(shù)據(jù)傳輸前都會進(jìn)入時長為648 PP 的配置模式,此時傳感器的數(shù)據(jù)線維持低電平狀態(tài),即信號的初始電平已知,對數(shù)據(jù)的跳變沿進(jìn)行跟隨同時判斷電平脈寬即可還原原始數(shù)據(jù)。

通過上述分析可知,對數(shù)據(jù)進(jìn)行正確解碼的前提是對原始編碼時鐘周期進(jìn)行正確測量。在同步模式下和延遲模式下,NanEyeM 圖像傳感器會持續(xù)輸出同步字,其格式如圖5 所示。

圖5 同步字格式

由曼徹斯特編碼特點(diǎn)可知,數(shù)據(jù)“0”被編碼為下降沿“10”,因此同步字在經(jīng)曼徹斯特編碼后波形與編碼時鐘保持一致,如圖6 所示。此時的數(shù)據(jù)可認(rèn)為是數(shù)據(jù)編碼時鐘,測量同步字的周期即可以得到數(shù)據(jù)編碼時鐘的周期。

圖6 同步字編碼后波形

2.2 串行數(shù)據(jù)采樣信號提取原理

在一般的低速異步串行通信中,由于其速度較低,采樣容差區(qū)間大,可由接收端按通信波特率生成采樣信號對數(shù)據(jù)進(jìn)行采樣還原[9]。然而NanEyeM圖像傳感器的數(shù)據(jù)輸出速率高達(dá)幾MHz 至幾十MHz,若直接由接收端生成采樣信號,則對系統(tǒng)運(yùn)行頻率要求較高,實(shí)現(xiàn)難度大。另外雖然可以從曼徹斯特數(shù)據(jù)流中恢復(fù)出時鐘信息,但由于傳感器內(nèi)部存在的時鐘抖動、線路傳輸時延、數(shù)據(jù)耦合干擾以及系統(tǒng)運(yùn)行頻率受限等問題,由接收端恢復(fù)出的原始時鐘始終與傳感器內(nèi)部的時鐘存在周期誤差及相位誤差,且誤差會隨時間累積。誤差的存在將導(dǎo)致數(shù)據(jù)解碼錯誤,所以由接收端恢復(fù)的時鐘不能用做數(shù)據(jù)采樣信號。

如圖7 所示,曼徹斯特編碼后數(shù)據(jù)總是在原始數(shù)據(jù)的中間時刻發(fā)生電平跳變。而在串行通信中,為了確保采樣電平數(shù)據(jù)的正確性、可靠性,往往在數(shù)據(jù)位時間的中間時刻對信號進(jìn)行采樣。因此,編碼數(shù)據(jù)的跳變沿可作為解碼數(shù)據(jù)的采樣信號。另外,由曼徹斯特編碼特點(diǎn)可知,電平“1”被編碼成下降沿,電平“0”被編碼成上升沿,則當(dāng)解碼數(shù)據(jù)為電平“1”時,使用編碼數(shù)據(jù)下降沿采樣,當(dāng)解碼數(shù)據(jù)為電平“0”時,使用編碼數(shù)據(jù)上升沿采樣。

圖7 數(shù)據(jù)采樣信號提取

2.3 圖像轉(zhuǎn)換原理

NanEyeM 在黑白圖像傳感器的基礎(chǔ)上增加了色彩濾波陣列(CFA),從而使傳感器可以輸出Bayer格式的彩色圖像[10]。該傳感器內(nèi)部使用的色彩濾波陣列如圖8 所示,左下角為第一個輸出像素。

圖8 傳感器內(nèi)部色彩濾波陣列

Bayer 格式圖像特點(diǎn)為每個像素點(diǎn)只含有RGB顏色空間中的一種分量,需要使用插值算法對像素點(diǎn)插值處理,補(bǔ)全缺失的另外兩種顏色分量,將Bayer 格式轉(zhuǎn)換為RGB 格式[11]。

對Bayer 格式圖像數(shù)據(jù)進(jìn)行分析,可以發(fā)現(xiàn),在對像素進(jìn)行插值處理時,共有四種可能的情況,如圖9 所示[12]。

圖9 插值時四種情況

基于硬件可行性考慮,在設(shè)計中采用線性插值方式完成圖像格式轉(zhuǎn)換[13]。在圖9 的每一種情況中,4 個像素點(diǎn)構(gòu)成一個2×2 像素矩陣,以矩陣左下角第一個像素為零點(diǎn),向右、向上像素坐標(biāo)遞增,則有Bayer 轉(zhuǎn)RGB 公式:

式中:R、G、B 分別表示RGB 顏色空間中的三種顏色分量。

3 圖像傳感器解碼算法硬件設(shè)計

NanEyeM 圖像傳感器圖像解碼算法使用Verilog硬件描述語言實(shí)現(xiàn),采用自頂向下的設(shè)計方法[14]。算法由SerialSync(串行同步模塊)、ClkExtract(時鐘提取模塊)、SensorDataDecoder(傳感器數(shù)據(jù)解碼模塊)、Bayer2RGB(Bayer 轉(zhuǎn)RGB 模塊)共4 個模塊組成。每個模塊實(shí)現(xiàn)算法的特定功能,算法整體框架如圖10 所示。

圖10 算法整體框圖

3.1 數(shù)據(jù)同步模塊硬件設(shè)計

由于NanEyeM 圖像傳感器與FPGA 是兩個完全獨(dú)立的設(shè)備,其各自內(nèi)部工作時鐘在頻率、相位上都是異步的。當(dāng)異步信號直接輸入FPGA 內(nèi)部寄存器時,極大可能引起寄存器亞穩(wěn)態(tài)問題,導(dǎo)致數(shù)據(jù)錯誤[15]。因此,使用數(shù)據(jù)同步模塊將傳感器輸入的異步信號進(jìn)行同步處理,最大限度降低寄存器出現(xiàn)亞穩(wěn)態(tài)的可能性,保證數(shù)據(jù)的可靠性。同步模塊采用雙鎖存器法實(shí)現(xiàn),硬件原理如圖11 所示。兩個級聯(lián)鎖存器對輸入信號連續(xù)鎖存兩次,研究表明該設(shè)計可以將亞穩(wěn)態(tài)出現(xiàn)的機(jī)率降低到一個極小的程度[16]。

圖11 雙鎖存器同步原理圖

3.2 編碼時鐘周期提取模塊硬件設(shè)計

編碼時鐘周期信息提取模塊主要為移位寄存器、邊沿檢測模塊及周期計數(shù)器組成。在配置模式下,傳感器保持低電平輸出,完成對傳感器的配置并退出配置模式后,同步模式開始。在檢測到第一個同步字的上升沿后,周期計數(shù)器在本地時鐘信號的控制下開始計數(shù),記為Tperiod_cnt,同時另一計數(shù)器開始統(tǒng)計數(shù)據(jù)的上升沿個數(shù),記為Tpdg_cnt。當(dāng)Tpdg_cnt=1 024,即統(tǒng)計了1 024 個編碼時鐘周期后,計數(shù)器停止計數(shù),取周期計數(shù)器的平均值Tperiod_cnt/1 024 作為編碼時鐘周期,設(shè)計中使用取計數(shù)器值高位(Tperiod_cnt[23:11])的方式完成該計算。

3.3 數(shù)據(jù)解碼模塊硬件設(shè)計

數(shù)據(jù)的解碼首先需要對傳感器輸出的曼徹斯特編碼的數(shù)據(jù)流進(jìn)行還原,之后在采樣信號的驅(qū)動下將串行數(shù)據(jù)轉(zhuǎn)為并行數(shù)據(jù)。解碼時使用有限狀態(tài)機(jī)對碼流跳變沿進(jìn)行跟隨,狀態(tài)機(jī)狀態(tài)定義及轉(zhuǎn)換條件如圖12 所示。系統(tǒng)初始狀態(tài)為CLK_LOCK 狀態(tài),當(dāng)時鐘提取模塊完成對時鐘信息的提取后,跳轉(zhuǎn)到IDLE 狀態(tài)。檢測到數(shù)據(jù)的上升沿后,跳轉(zhuǎn)到JUDGE_HIGH 狀態(tài),對數(shù)據(jù)的高電平脈寬進(jìn)行判斷,解碼出原始數(shù)據(jù)。若此時檢測到數(shù)據(jù)下降沿,則跳轉(zhuǎn)到JUDGE_LOW 狀態(tài),對輸入數(shù)據(jù)的低電平時長進(jìn)行判斷,解碼出原始數(shù)據(jù)。同時若連續(xù)10 次采樣輸入數(shù)據(jù)都為低電平,則可以判斷本次數(shù)據(jù)幀傳輸完成,重新回到CLK_LOCK 狀態(tài)。

圖12 解碼狀態(tài)機(jī)

另外,為了解決傳感器內(nèi)部存在的時鐘抖動、數(shù)據(jù)傳輸時延、信號耦合干擾等問題所帶來的數(shù)據(jù)脈寬變化問題,設(shè)計引入了動態(tài)脈寬調(diào)節(jié)算法,每次接收數(shù)據(jù)之前都利用傳感器的同步字對解碼的脈寬閾值進(jìn)行重新標(biāo)定,以保證數(shù)據(jù)解碼的正確性。

串行數(shù)據(jù)轉(zhuǎn)并行數(shù)據(jù)的功能使用12 bit 的移位寄存器(RecvShiftReg)和位接收計數(shù)器(RecvBitCnt)實(shí)現(xiàn)。由傳感器輸出的數(shù)據(jù)格式可知,當(dāng)檢測到第一個高電平時,數(shù)據(jù)傳輸開始,移位寄存器開始在數(shù)據(jù)采樣時鐘(SampleClk)的驅(qū)動下對解碼后的數(shù)據(jù)進(jìn)行移位采樣,同時位接收計數(shù)器(RecvBitCnt)開始統(tǒng)計接收到的數(shù)據(jù)位數(shù)。

如圖13 所示,當(dāng)移位寄存器的值與數(shù)據(jù)匹配模版“1XXXXXXXXXX0”匹配,且位接收計數(shù)器的位為12 時,提取出中間的10 位有效數(shù)據(jù),同時數(shù)據(jù)有效信號(RawDataValid)置高一個時鐘周期,清零位接收計數(shù)器,為接收下一個數(shù)據(jù)作準(zhǔn)備。若移位寄存器中的值全為0,說明一行圖像數(shù)據(jù)傳輸完成,復(fù)位所有寄存器,保證下一次的數(shù)據(jù)能被正確接收。

圖13 數(shù)據(jù)提取原理

3.4 Bayer 轉(zhuǎn)RGB 模塊硬件設(shè)計

本設(shè)計中使用行列計數(shù)器PixelX、PixelY 分別對接收圖像數(shù)據(jù)的行像素及列像素進(jìn)行計數(shù)。NanEyeM 圖像傳感器的有效像素大小為320×320 pixel,因此,行計數(shù)器PixelX 在每320 個像素后清零,同時列計數(shù)器PixelY 加一。

如圖14 所示,使用兩個長度為320 pixel、位寬為10B 的線性移位寄存器緩存兩行圖像數(shù)據(jù),實(shí)現(xiàn)線性插值算法。線性移位寄存器在數(shù)據(jù)有效信號(Raw-DataValid)的驅(qū)動下從尾部移入新數(shù)據(jù),從頭部移出舊數(shù)據(jù)。另外使用兩個獨(dú)立寄存器D00、D10 分別存儲從兩個線性移位寄存器移出的像素值,與兩個線性移位寄存器的頭部值D01、D11 組成2×2 大小的像素矩陣。最后由{PixelX[0],PixelY[0]}的值對比圖9即確定當(dāng)前狀態(tài),再依據(jù)Bayer 轉(zhuǎn)RGB 公式完成圖像格式轉(zhuǎn)換功能。

圖14 移位寄存器連接方式

在進(jìn)行圖像格式轉(zhuǎn)換的同時,該模塊也通過行列計數(shù)器PixelX、PixelY 的值在正確的時刻輸出圖像行同步和場同步信號,用于后續(xù)圖像輸出顯示。

4 算法仿真與實(shí)驗結(jié)果

4.1 算法仿真分析

本算法使用Verilog 語言編寫,并基于Xilix 公司的Spartan-6 系列FPGA 平臺上實(shí)現(xiàn),使用ISE14.7 內(nèi)部自帶的仿真軟件ISim 進(jìn)行算法的時序仿真,結(jié)果如圖15、圖16 所示。

圖15 數(shù)據(jù)解碼模塊仿真圖

圖16 Bayer 轉(zhuǎn)RGB 模塊仿真圖

由仿真圖可以看出,數(shù)據(jù)解碼模塊和Bayer 轉(zhuǎn)RGB 模塊都能正確連續(xù)地輸出結(jié)果,且各模塊輸出值與理論值相符,達(dá)到了本文設(shè)計目標(biāo)。

4.2 實(shí)驗結(jié)果

使用圖像傳感器對不同物體進(jìn)行拍攝,經(jīng)過算法解碼后的圖像為標(biāo)準(zhǔn)的RGB 視頻流,可直接使用驅(qū)動模塊將圖像輸出到顯示器上顯示,并使用截屏軟件進(jìn)行截屏。圖17(a)為NanEeyM 圖像傳感器實(shí)物,圖17(b)為手部皮膚紋理,圖17(c)為拍攝訂書針包裝盒。從截取的圖像中可以看出,該算法能正確地接收并解碼傳感器圖像數(shù)據(jù),且解碼轉(zhuǎn)換后的圖像紋理清晰,色彩還原度較高,也能正確流暢地輸出RGB 圖像。

圖17 NanEyeM 圖像傳感器外形圖及其拍攝的圖像

5 結(jié)論

本文提出了一種NanEyeM 微型圖像傳感器的數(shù)據(jù)解碼轉(zhuǎn)換算法,并基于Xilinx 公司的Spartan-6系列FPGA 在硬件上實(shí)現(xiàn)了該算法。測試結(jié)果證明,當(dāng)傳感器工作在高速模式下,以24 frame/s 的幀速率輸出圖像數(shù)據(jù)時,算法能夠正確、連續(xù)地對數(shù)據(jù)進(jìn)行解碼并輸出RGB 圖像。結(jié)果表明,本算法很好地解決了NanEyeM 微型圖像傳感器高速異步串行數(shù)據(jù)的解碼難問題及無內(nèi)置ISP 導(dǎo)致的無法直接輸出RGB 圖像問題,為后續(xù)開發(fā)基于該圖像傳感器的應(yīng)用奠定了重要基礎(chǔ)。

主站蜘蛛池模板: 亚洲制服丝袜第一页| 2020精品极品国产色在线观看 | 成人无码一区二区三区视频在线观看| 国产女人在线| 国产精品天干天干在线观看| 青青青国产视频手机| 波多野结衣视频一区二区 | 久久久久九九精品影院| 国产高潮视频在线观看| 精品一区二区三区无码视频无码| 澳门av无码| 国产成人精品三级| 国产福利2021最新在线观看| 国产成人成人一区二区| 日本在线国产| 精品一区二区三区视频免费观看| 青青热久麻豆精品视频在线观看| 1769国产精品视频免费观看| 色天天综合| 中文字幕在线欧美| 欧美亚洲国产精品久久蜜芽| 国产日韩精品欧美一区灰| 亚洲人成影院在线观看| 国产无遮挡猛进猛出免费软件| 国产精品天干天干在线观看| 国产人人干| 波多野结衣亚洲一区| 91精品小视频| 国产精品自在线天天看片| 欧美精品在线看| 狠狠ⅴ日韩v欧美v天堂| 人人爽人人爽人人片| 2048国产精品原创综合在线| 国产成人亚洲综合A∨在线播放| 亚洲成人在线免费观看| 亚洲三级视频在线观看| 日韩国产黄色网站| 日韩少妇激情一区二区| 成人福利在线视频| 凹凸精品免费精品视频| 亚洲第一中文字幕| 国内黄色精品| 素人激情视频福利| 国产视频a| 国产精品视频a| 成年人国产网站| 日韩第八页| 国产农村妇女精品一二区| 日本精品视频| 日韩精品成人在线| 青青国产视频| 亚洲永久色| 国产JIZzJIzz视频全部免费| 国产凹凸一区在线观看视频| 激情六月丁香婷婷| 日韩在线永久免费播放| 黄色三级网站免费| 亚洲三级视频在线观看| 东京热一区二区三区无码视频| 亚洲无码视频喷水| 99久久精品无码专区免费| 亚洲天堂日韩在线| 国产精品极品美女自在线看免费一区二区| 欧美黄网站免费观看| 国产欧美中文字幕| 国产一级小视频| 亚洲国产成人麻豆精品| 午夜视频在线观看区二区| 免费不卡视频| 91美女视频在线观看| 国产精品第三页在线看| 91精品国产自产91精品资源| 欧美有码在线观看| 全免费a级毛片免费看不卡| 欧美人在线一区二区三区| 欧美成人精品一区二区| 成人年鲁鲁在线观看视频| 999在线免费视频| 精品99在线观看| 亚洲成人在线免费观看| 欧美日韩国产系列在线观看| 久草视频精品|