本發(fā)明屬于高清攝像頭測試領(lǐng)域,涉及一種高清攝像頭視頻處理系統(tǒng)及方法。
背景技術(shù):
隨著攝像頭技術(shù)的發(fā)展,用戶已不滿足于1080P分辨率的成像效果,越來越多的高清攝像頭得到廣泛應(yīng)用,目前攝像頭分辨率已到4K、8K等超清的程度。而目前市場上對攝像頭的測試系統(tǒng)幾乎都是基于1080P及以下分辨率的攝像頭測試,沒有能同時支持4K分辨率攝像頭測試及4K分辨率視頻顯示的系統(tǒng)。因此需要發(fā)明一種既能支持高清攝像頭圖像測試,又能支持高清視頻顯示系統(tǒng),為測試具有4K分辨率的高清攝像頭提供幫助,并且還要能與現(xiàn)有的1080P分辨率檢測顯示系統(tǒng)能夠進(jìn)行兼容配合,是現(xiàn)有的攝像頭技術(shù)的迫切需求。
技術(shù)實(shí)現(xiàn)要素:
針對現(xiàn)有技術(shù)的以上缺陷或改進(jìn)需求,本發(fā)明提供了一種基于FPGA實(shí)現(xiàn)高清攝像頭圖像測試與視頻顯示系統(tǒng)。
為實(shí)現(xiàn)上述目的,按照本發(fā)明的一個方面,提供了高清攝像頭視頻處理系統(tǒng),其特征在于,該系統(tǒng)包括:
信號接收模塊,用于接收高清攝像頭發(fā)出的高清視頻信號,并根據(jù)CSI協(xié)議標(biāo)準(zhǔn)從所述高清視頻信號中分離出HS差分信號對;
HS數(shù)據(jù)提取模塊,用于對所述HS差分信號對進(jìn)行解析,提取出存儲使能信號及像素?cái)?shù)據(jù);
第一存儲模塊,用于依據(jù)所述存儲使能信號對所述像素?cái)?shù)據(jù)進(jìn)行存儲。
進(jìn)一步地,所述HS差分信號對包括多對HS差分信號,所述HS數(shù)據(jù)提取模塊包括:
多個串并轉(zhuǎn)換子模塊,所述多個串并轉(zhuǎn)換子模塊與所述多對HS差分信號一一對應(yīng),每個所述串并轉(zhuǎn)換子模塊用于對對應(yīng)的HS差分信號對進(jìn)行串行到并行的處理;
字對齊子模塊,用于對所述并行處理后的信號進(jìn)行數(shù)據(jù)對齊處理;
有效路數(shù)提取模塊,用于從數(shù)據(jù)對齊處理后的數(shù)據(jù)中提取獲得所述存儲使能信號及像素?cái)?shù)據(jù)。
進(jìn)一步地,所述HS數(shù)據(jù)提取模塊與所述存儲模塊之間還設(shè)置格式轉(zhuǎn)化模塊,所述格式轉(zhuǎn)化模塊用于接收所述像素?cái)?shù)據(jù),并將所述像素?cái)?shù)據(jù)轉(zhuǎn)化為RGB格式數(shù)據(jù)。
進(jìn)一步地,所述存儲模塊后還設(shè)置格式轉(zhuǎn)化模塊,所述格式轉(zhuǎn)化模塊用于讀取所述像素?cái)?shù)據(jù),并將所述像素?cái)?shù)據(jù)轉(zhuǎn)化為RGB格式數(shù)據(jù)存入所述第一存儲模塊或存入第二存儲模塊。
進(jìn)一步地,該系統(tǒng)還包括上位機(jī)模塊,用于讀取所述RGB格式數(shù)據(jù)實(shí)現(xiàn)圖像檢測。
進(jìn)一步地,該系統(tǒng)還包括數(shù)據(jù)縮放模塊及與其相連的視頻信號處理模塊,所述數(shù)據(jù)縮放模塊用于對所述RGB格式數(shù)據(jù)按照顯示配置的分辨率進(jìn)行數(shù)據(jù)縮放處理;所述視頻信號處理模塊用于對進(jìn)行數(shù)據(jù)縮放處理后的數(shù)據(jù)進(jìn)行封裝用于顯示。
進(jìn)一步地,所述數(shù)據(jù)縮放模塊與所述視頻信號處理模塊之間還包括第三存儲模塊,所述第三存儲模塊用于存儲縮放處理后的數(shù)據(jù),所述視頻信號處理模塊從所述第三存儲模塊中讀取所述縮放處理后的數(shù)據(jù)。
進(jìn)一步地,所述第三存儲模塊包括相連的圖像幀率調(diào)整模塊及與其相連的高速緩存模塊,所述高速緩存模塊存儲所述縮放處理后的數(shù)據(jù),所述圖像幀率調(diào)整模塊用于對所述高速緩存模塊的輸出圖像刷新幀率進(jìn)行調(diào)整以適應(yīng)所述視頻信號處理模塊。
進(jìn)一步地,所述視頻信號處理模塊為DP信號處理模塊,所述數(shù)據(jù)封裝按照DP協(xié)議標(biāo)準(zhǔn)格式進(jìn)行。
本發(fā)明還公開了一種高清攝像頭視頻處理方法,其特征在于,該方法包括如下步驟:
步驟1,采集所述高清攝像頭輸出的圖像數(shù)據(jù),根據(jù)CSI協(xié)議標(biāo)準(zhǔn)對所述圖像數(shù)據(jù)進(jìn)行分離,分離出4對HS差分信號;
步驟2,從所述4對HS差分信號中提取有效像素?cái)?shù)據(jù)及存儲使能信號,所述提取過程包括如下子步驟:
步驟2-1,將所述4對HS信號由4路單BIT串行數(shù)據(jù)轉(zhuǎn)化成4路8BIT并行數(shù)據(jù);
步驟2-2,通過搜索同步字符的方式分別對所述4路8BIT并行數(shù)據(jù)進(jìn)行字對齊,提取出每路數(shù)據(jù)的同步字符及有效數(shù)據(jù);
步驟2-3,根據(jù)同步字符對所述有效數(shù)據(jù)進(jìn)一步對齊獲得有效路數(shù)數(shù)據(jù);
步驟2-4,根據(jù)CSI協(xié)議組包原則從所述步驟2-3中獲得的有效路數(shù)數(shù)據(jù)中獲得所述存儲使能信號及所述像素?cái)?shù)據(jù);
步驟3,直接存儲所述步驟2-4中獲得的像素?cái)?shù)據(jù)或?qū)⑵滢D(zhuǎn)化成RGB格式后存儲。。
總體而言,通過本發(fā)明所構(gòu)思的以上技術(shù)方案與現(xiàn)有技術(shù)相比,滿足4K及以上分辨率視頻顯示要求,提高攝像頭測試效率和測試效果,并且具有較好的靈活性;提出了一種新的針對高清攝像頭視頻處理的數(shù)據(jù)解析模塊和方法,支持4K及以上分辨率的攝像頭圖像檢測及視頻顯示,同時還能與常用視頻處理等設(shè)備兼容;本發(fā)明架構(gòu)簡單,硬件實(shí)現(xiàn)方便,支持可視化的界面顯示,使測試結(jié)果更直觀、方便,具有容易實(shí)現(xiàn)、成本低、實(shí)用性高等顯著特點(diǎn)。
附圖說明
圖1是按照本發(fā)明實(shí)現(xiàn)的實(shí)施方式一所涉及的高清攝像頭視頻處理系統(tǒng)的組成結(jié)構(gòu)示意框圖;
圖2是按照本發(fā)明實(shí)現(xiàn)的實(shí)施方式二所涉及的高清攝像頭視頻處理系統(tǒng)的組成結(jié)構(gòu)示意框圖;
圖3是按照本發(fā)明實(shí)現(xiàn)的實(shí)施方式三所涉及的高清攝像頭視頻處理系統(tǒng)的組成結(jié)構(gòu)示意框圖;
圖4是按照本發(fā)明實(shí)現(xiàn)的實(shí)施方式四所涉及的高清攝像頭視頻處理系統(tǒng)的組成結(jié)構(gòu)示意框圖;
圖5是按照本發(fā)明實(shí)現(xiàn)的實(shí)施方式五所涉及的高清攝像頭視頻處理系統(tǒng)的組成結(jié)構(gòu)示意框圖;
圖6是按照本發(fā)明實(shí)現(xiàn)的高清攝像頭視頻處理系統(tǒng)中的HS數(shù)據(jù)提取模塊的組成結(jié)構(gòu)示意框圖;
圖7是按照本發(fā)明實(shí)現(xiàn)的高清攝像頭視頻處理系統(tǒng)中的第三存儲模塊的組成結(jié)構(gòu)示意框圖;
圖8是按照本發(fā)明實(shí)現(xiàn)的清攝像頭視頻處理方法的流程示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。此外,下面所描述的本發(fā)明各個實(shí)施方式中所涉及到的技術(shù)特征只要彼此之間未構(gòu)成沖突就可以相互組合。
實(shí)施例一
如圖1所示,按照本發(fā)明實(shí)現(xiàn)的高清攝像頭視頻處理系統(tǒng),包括信號接收模塊,用于接收高清攝像頭發(fā)出的高清視頻信號;并且從信號中提取出HS信號對;
HS數(shù)據(jù)提取模塊,用于接收HS信號對并且解析,提取出存儲使能信號及高清視頻信號的像素?cái)?shù)據(jù);其中上述的使能信號包括幀同步信號與行同步信號;
第一存儲模塊,用于依據(jù)存儲使能信號對像素?cái)?shù)據(jù)進(jìn)行存儲。
經(jīng)過上述實(shí)施例的處理,能夠獲得高清視頻信號的解析后的數(shù)據(jù),并且對其進(jìn)行存儲,方便后續(xù)的處理利用。
實(shí)施例二
如圖2所示,在本實(shí)施例二中,所有的結(jié)構(gòu)模塊都與實(shí)施例一種類似,只在第一存儲模塊與HS數(shù)據(jù)提取模塊之間增加了格式轉(zhuǎn)換模塊,用于將上述數(shù)據(jù)轉(zhuǎn)換為RGB格式的數(shù)據(jù),方便后續(xù)的檢測處理。
實(shí)施例三
如圖3所示,在本實(shí)施例三中,其中格式轉(zhuǎn)換模塊還可設(shè)置于第一存儲模塊之后,能夠?qū)?shù)據(jù)進(jìn)行格式轉(zhuǎn)化后存儲于第一存儲模塊中和/或還存在第二存儲模塊,將格式轉(zhuǎn)換后的數(shù)據(jù)存儲入第二存儲模塊。
實(shí)施例四
如圖4所示,在本實(shí)施例四中,上述視頻處理系統(tǒng)主要是用于實(shí)現(xiàn)圖像的測試,需要經(jīng)過格式轉(zhuǎn)換模塊的轉(zhuǎn)換后,獲得相應(yīng)的視頻數(shù)據(jù)使得上位機(jī)能夠?qū)ζ渥x取進(jìn)行檢測,由此,數(shù)據(jù)讀取模塊從第一存儲模塊中獲得數(shù)據(jù)進(jìn)行測試。
實(shí)施例五
如圖5所示,在本實(shí)施例五中,上述視頻處理系統(tǒng)能夠同時實(shí)現(xiàn)視頻的顯示與上位機(jī)圖像測試的功能,因此,在上述的組成結(jié)構(gòu)框圖中,還包括縮放模塊,用于從第一存儲模塊中讀取數(shù)據(jù),該縮放數(shù)據(jù)存儲于第三存儲模塊中,供DP處理模塊來進(jìn)行讀取相應(yīng)的數(shù)據(jù),以供DP顯示器顯示,值得注意的是,在本實(shí)施例中,僅說明了DP封裝的方式,但是如果替換成HDMI以及MIPI處理模塊,則體現(xiàn)高清攝像頭捕獲的視頻與常規(guī)的攝像顯示設(shè)備的兼容性處理,體現(xiàn)本發(fā)明系統(tǒng)的靈活性。
進(jìn)一步的,在上述的實(shí)施方式中,如圖6所示,展示了核心部件HS數(shù)據(jù)提取模塊的具體結(jié)構(gòu)示意框圖,HS數(shù)據(jù)提取模塊包括:多個串并轉(zhuǎn)換子模塊,用于與信號接收模塊發(fā)送的HS信號對一一對應(yīng)進(jìn)行串行到并行的處理;字對齊子模塊,對并行處理后的信號進(jìn)行數(shù)據(jù)對齊處理;有效路數(shù)提取模塊,從數(shù)據(jù)對齊處理后的數(shù)據(jù)中提取獲得存儲使能信號及像素?cái)?shù)據(jù)。
如圖7所示,第三存儲模塊包括相連的圖像幀率調(diào)整模塊及與其相連的高速緩存模塊,高速緩存模塊存儲縮放處理后的數(shù)據(jù),圖像幀率調(diào)整模塊用于對高速緩存模塊的輸出圖像刷新幀率進(jìn)行調(diào)整以適應(yīng)視頻信號處理模塊,尤其是在進(jìn)行DP信號的處理前提下。
其中,上述視頻處理系統(tǒng)的處理方法如圖8所示:
步驟1,采集所述高清攝像頭輸出的圖像數(shù)據(jù),根據(jù)CSI協(xié)議標(biāo)準(zhǔn)對所述圖像數(shù)據(jù)進(jìn)行分離,分離出4對HS信號;
步驟2,從所述步驟1中獲得的所述4對HS信號中提取有效像素?cái)?shù)據(jù)及存儲使能信號,所述提取過程包括如下子步驟:
步驟2-1,將所述4對HS信號由4路單BIT串行數(shù)據(jù)轉(zhuǎn)化成4路8BIT并行數(shù)據(jù)。
步驟2-2,通過搜索同步字符的方式分別對所述4路8BIT并行數(shù)據(jù)進(jìn)行字對齊,提取出每路數(shù)據(jù)的同步字符及有效數(shù)據(jù);
步驟2-3,根據(jù)同步字符對所述有效數(shù)據(jù)進(jìn)一步對齊獲得有效路數(shù)數(shù)據(jù);
步驟2-4,根據(jù)MIPI-CSI協(xié)議組包原則從所述步驟2-3中獲得的有效路數(shù)數(shù)據(jù)中獲得所述存儲使能信號及所述像素?cái)?shù)據(jù);
步驟3,直接存儲所述步驟2-4中獲得的像素?cái)?shù)據(jù)或?qū)⑵滢D(zhuǎn)化成RGB格式后存儲。
當(dāng)然,更具體的,結(jié)合整個測試和顯示的流程,主要包括如下步驟:
STEP1、IIC模塊發(fā)送camera需要的啟動命令,啟動camera,使其正常輸出拍攝到的圖像數(shù)據(jù)。
STEP2、CSI信號接收模塊接收camera發(fā)出的MIPI-CSI信號(高清攝像頭的輸出采用MIPI-CSI接口,低分辨率的攝像頭采用并口),按照MIPI-CSI協(xié)議標(biāo)準(zhǔn)從接收到的MIPI-CSI信號中提取出HS(high speed)信號。
STEP 3、對HS信號進(jìn)行解析,提取出HS鏈路中攜帶的同步包、像素包,恢復(fù)出幀同步、行同步信號及像素?cái)?shù)據(jù)。
STEP 4、若攝像頭輸出的像素?cái)?shù)據(jù)是RAW格式,則將RAW格式像素?cái)?shù)據(jù)轉(zhuǎn)換成RGB格式數(shù)據(jù)。若攝像頭輸出的像素?cái)?shù)據(jù)是RGB格式,則跳過格式轉(zhuǎn)換這一步,直接將RGB格式數(shù)據(jù)送到存儲模塊1。
STEP 5、從第一存儲模塊中提取一幀圖像數(shù)據(jù)經(jīng)過網(wǎng)口/USB口送到上位機(jī)模塊,由于只傳輸一幀數(shù)據(jù),數(shù)據(jù)的吞吐量不大,所以可以采用網(wǎng)口傳輸也可以采用USB傳輸,根據(jù)需要選擇其一即可。
STEP 6、上位機(jī)模塊對收到的一幀圖像進(jìn)行圖像檢測,圖像檢測不限于亮點(diǎn)/壞點(diǎn)測試、解析力測試、白平衡測試等,將檢測結(jié)果通過上位機(jī)界面顯示。
STEP 7、從第一存儲模塊中取出連續(xù)的一幀幀數(shù)據(jù),并根據(jù)上位機(jī)配置的分辨率大小進(jìn)行縮放處理,縮放處理的目的是使顯示圖像尺寸能根據(jù)用戶要求調(diào)節(jié)。
STEP 8、縮放后的數(shù)據(jù)存入第三存儲模塊中存儲。存儲的目的是做數(shù)據(jù)流平衡,使寫入存儲模塊中的數(shù)據(jù)流與讀出的數(shù)據(jù)流不沖突。
STEP 9、按照60HZ刷新率從存儲模塊中讀出縮放后的數(shù)據(jù),并送到DP處理模塊。
STEP 10、DP處理模塊將數(shù)據(jù)進(jìn)行封裝處理,封裝成DP協(xié)議標(biāo)準(zhǔn)格式數(shù)據(jù),再通過DP接口輸出。采用dp接口的目的是支持4k及以上分辨率顯示,其他接口比如HDMI接口目前最高只支持1080p分辨率顯示。
STEP 11、DP接口連接DP顯示器,顯示攝像頭拍攝到的高清視頻。
STEP 12、采用FPGA平臺對4路數(shù)據(jù)進(jìn)行并行處理,每路數(shù)據(jù)吞吐量支持1.5GBPS,滿足4k及以上分辨率攝像頭輸出數(shù)據(jù)吞吐量要求,當(dāng)然,上述的模塊設(shè)置方式也并不嚴(yán)格限定為一個FPGA平臺或多個FPGA平臺,甚至可以是DSP等處理系統(tǒng)等。
按照本發(fā)明的系統(tǒng),其工作流程如下:
步驟1,啟動攝像頭,攝像頭接收到啟動命令后才能輸出拍攝到的數(shù)據(jù),因此IIC模塊就是完成這一功能:按照IIC協(xié)議標(biāo)準(zhǔn)輸出camera需要的啟動指令及camera需要的參考時鐘,啟動指令及時鐘頻率可以從用戶手冊獲取。
步驟2,采集攝像頭輸出的圖像數(shù)據(jù),根據(jù)CSI協(xié)議標(biāo)準(zhǔn),攝像頭輸出的CSI信號有4對差分?jǐn)?shù)據(jù)線和1對差分時鐘線,CSI信號接收模塊收到這5對差分?jǐn)?shù)據(jù)后,按照協(xié)議標(biāo)準(zhǔn)對這些數(shù)據(jù)進(jìn)行分離,分離出4對HS(high speed)信號,將HS信號送到HS數(shù)據(jù)提取模塊進(jìn)行解析。
步驟3,提取有效像素?cái)?shù)據(jù)及幀同步信號等,該功能由HS數(shù)據(jù)提取模塊分以下幾步實(shí)現(xiàn)。
步驟3-1)通過4個串并轉(zhuǎn)換模塊將并行的4路單BIT串行數(shù)據(jù)(即上述4對HS信號)轉(zhuǎn)化成4路8BIT并行數(shù)據(jù)。
步驟3-2)通過搜索同步字符的方式分別對4路數(shù)據(jù)進(jìn)行字對齊,提取出每路數(shù)據(jù)的同步字符及有效數(shù)據(jù)。由于采用4路數(shù)據(jù)并行進(jìn)行搜索,搜索速度與1路數(shù)據(jù)搜索速度一致。
步驟3-3)根據(jù)camera輸出的路數(shù)提取有效路數(shù)數(shù)據(jù),比如camera輸出4路數(shù)據(jù),則對4路數(shù)據(jù)進(jìn)行對齊,使4路數(shù)據(jù)起始點(diǎn)保持一致。若camera輸出2路數(shù)據(jù),則對2路數(shù)據(jù)進(jìn)行對齊,使2路數(shù)據(jù)起始點(diǎn)保持一致。
步驟3-4)根據(jù)MIPI-CSI協(xié)議組包原則從對齊的有效路數(shù)中提取出幀同步包、行同步包,及像素?cái)?shù)據(jù)包、進(jìn)而恢復(fù)出幀同步信號、行同步信號、像素?cái)?shù)據(jù),最后將幀同步信號、行同步信號、像素?cái)?shù)據(jù)送入步驟4處理。
步驟4,格式轉(zhuǎn)換模塊對收到HS數(shù)據(jù)提取模塊送來的像素?cái)?shù)據(jù)進(jìn)行格式轉(zhuǎn)換,若攝像頭輸出的像素?cái)?shù)據(jù)是RAW格式,則根據(jù)幀同步信號、行同步信號把RAW格式像素?cái)?shù)據(jù)轉(zhuǎn)換成RGB格式數(shù)據(jù),再將轉(zhuǎn)換后的數(shù)據(jù)送到存儲模塊1。若攝像頭輸出的像素?cái)?shù)據(jù)是RGB格式,則直接將幀同步信號、行同步信號、像素?cái)?shù)據(jù)送入步驟5處理。
步驟5,存儲模塊1收到RGB數(shù)據(jù)后放入DDR中緩存,至少緩存一幀圖像數(shù)據(jù)。
步驟6,數(shù)據(jù)讀取模塊從存儲模塊中讀取一幀RGB數(shù)據(jù),按照TCP協(xié)議/USB2.0協(xié)議進(jìn)行封裝,經(jīng)網(wǎng)口/USB口送到上位機(jī)模塊。
步驟7,上位機(jī)模塊接收到攝像頭拍攝的一幀RGB圖像后,按照用戶設(shè)定檢測指標(biāo)對圖像進(jìn)行檢測,常用的檢測項(xiàng)有臟污檢測、白平衡檢測、色彩還原測試、亮點(diǎn)壞點(diǎn)測試等,所有檢測項(xiàng)可以用自開發(fā)檢測算法進(jìn)行檢測,也可以按行業(yè)標(biāo)準(zhǔn)算法進(jìn)行檢測。測試結(jié)果通過上位機(jī)界面顯示。若用戶只需進(jìn)行攝像頭圖像檢測,則實(shí)施步驟截止步驟7,若還需測試攝像頭輸出的視頻,則進(jìn)入步驟8。
步驟8,縮放模塊從存儲模塊中獲取一幀幀圖像數(shù)據(jù),按照用戶要求對圖像數(shù)據(jù)進(jìn)行縮放處理,比如用戶定義一比一縮放比例,則4k分辨率圖像在4k顯示器上全屏顯示,720p分辨率的圖像占屏幕一部分,若用戶定義全屏顯示,則低于顯示器分辨率的圖像會被拉伸處理,高于分辨率的圖像會被壓縮處理。縮放后的圖像數(shù)據(jù)送入第三存儲模塊處理。
步驟9,第三存儲模塊將收到的縮放數(shù)據(jù)放入DDR中緩存。該模塊的主要功能是使輸出圖像刷新率保持60HZ,因?yàn)轱@示器顯示需要60HZ刷新率,對于高清分辨率,若攝像頭輸出4k分辨率圖像時最大幀率是30幀,則需要做倍頻處理,再將處理后的數(shù)據(jù)送往DP處理模塊。若攝像頭輸出圖像幀率是60幀,則不需要倍頻處理,直接將數(shù)據(jù)讀出送往DP處理模塊。
步驟10,DP處理模塊收到圖像數(shù)據(jù)后,按照DP協(xié)議標(biāo)準(zhǔn)進(jìn)行數(shù)據(jù)重組,再按DP模組點(diǎn)屏流程發(fā)送數(shù)據(jù),所有數(shù)據(jù)通過DP接口輸出。
步驟11,DP顯示器通過DP線纜與DP接口相連,通過DP顯示器顯示4K及以上分辨率視頻。
除了步驟7和步驟11,其他步驟實(shí)現(xiàn)都可以基于FPGA實(shí)現(xiàn),滿足高清分辨率視頻顯示時需要的傳輸速度及吞吐量要求。
本領(lǐng)域的技術(shù)人員容易理解,以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。