• 
    

    
    

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

      ?

      基于FPGA的HDMI多模式顯示系統(tǒng)設(shè)計(jì)

      2018-01-04 12:02山丹叢國(guó)濤張曉旭
      電腦知識(shí)與技術(shù) 2018年29期

      山丹 叢國(guó)濤 張曉旭

      摘要:本文闡述了以FPGA為視頻顯示系統(tǒng)的控制核心,輔以O(shè)penMV機(jī)器視覺(jué)模塊實(shí)現(xiàn)對(duì)圖像進(jìn)行采集、處理,最終實(shí)現(xiàn)在HDMI接口顯示器上顯示。通過(guò)FPGA可以進(jìn)行多種視頻處理模式的選擇,包括中值濾波、均值濾波、椒鹽噪聲濾波等多種濾波方式的選擇,邊沿檢測(cè)、二值化等多種處理方式選擇。系統(tǒng)具有抗干擾性較強(qiáng)、小巧、靈活、低功耗、通用性及可擴(kuò)展性強(qiáng)等特點(diǎn),即適合工業(yè)領(lǐng)域,又適合家居使用。

      關(guān)鍵詞:FPGA;OpenMV;視頻處理;HDMI

      中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)29-0248-03

      Abstract: In this paper, the video display system based on FPGA is designed, which is supplemented by OpenMV machine vision module capturing and processing video information. Finally, the processed image is displayed on the displayer with HDMI interface. Various video processing modes can be selected by FPGA, including median filtering, mean filtering, salt and pepper noise filtering, edge detection, binarization and others. The system has the characteristics of high anti-interference, compact, flexible, low power consumption, high versatility and extendibility, which is not only suitable for industrial areas, but also for home use.

      Key words: FPGA; OpenMV; Video Processing; HDMI

      隨著社會(huì)信息化的快速發(fā)展,信息的可視化需求也急劇擴(kuò)大,而設(shè)計(jì)一款小巧、便捷、靈活、低功耗、低成本、適應(yīng)性強(qiáng)的視頻采集及處理系統(tǒng)已經(jīng)引起了人們的注意。而高清晰度多媒體接口HDMI(High-Definition Multimedia interface)作為一種專(zhuān)用數(shù)字音視頻傳輸接口,已經(jīng)在液晶顯示器、液晶電視、高清相機(jī)等產(chǎn)品中得到廣泛應(yīng)用[1]。本文設(shè)計(jì)提出的以FPGA作為控制核心的視頻采集及顯示系統(tǒng),不僅可以通過(guò)OpenMV機(jī)器視覺(jué)模塊對(duì)像素、濾波方式等進(jìn)行靈活多樣的設(shè)置[4],而且可以實(shí)現(xiàn)HDMI接口芯片控制,以適應(yīng)不同應(yīng)用場(chǎng)合的需要。

      目前,此類(lèi)系統(tǒng)多采用ARM、DSP等作為控制核心[2],而此智能小車(chē)以FPGA作為核心控制芯片,其擁有大量邏輯單元和布線資源,可方便地實(shí)現(xiàn)各種邏輯功能,并可現(xiàn)場(chǎng)編程。其具有低功耗、并行控制優(yōu)勢(shì),實(shí)時(shí)反映、快速處理、可靠性高、可擴(kuò)展性強(qiáng)等優(yōu)點(diǎn)[3]。

      1系統(tǒng)總體設(shè)計(jì)方案

      本系統(tǒng)是由FPGA核心板、視頻采集及預(yù)處理模塊、GPRS遠(yuǎn)程通信模塊組成,HDMI顯示器組成,如圖1所示。

      系統(tǒng)工作原理。 ① FPGA核心板采用Altera的CycloneIV系列 4CE115 FPGA作為控制中心,接收由按鍵設(shè)置的模式信息,經(jīng)過(guò)同步處理、去抖處理后,作為控制模式轉(zhuǎn)換的依據(jù);并將模式信息通過(guò)UART接口發(fā)送給視頻采集及預(yù)處理模塊。②FPGA接收從視頻采集及預(yù)處理模塊,通過(guò)UART接口反饋回來(lái)的視頻信息,產(chǎn)生HDMI接口芯片控制時(shí)序,完成圖像在HDMI接口顯示器上顯示。③視頻采集及預(yù)處理部分采用OpenMV機(jī)器視覺(jué)模塊,通過(guò)Python編程,并根據(jù)FPGA控制中心的模式信息,調(diào)整像素設(shè)置,并完成濾波、邊緣檢測(cè)等處理功能。④GPRS遠(yuǎn)程控制模塊采用SIM900A GPRS模塊,實(shí)現(xiàn)與手機(jī)的信息交互,通過(guò)手機(jī),以短信的方式,對(duì)系統(tǒng)的工作模式進(jìn)行遠(yuǎn)程設(shè)置。

      系統(tǒng)工作模式。上電后,首先檢測(cè)是否存在系統(tǒng)運(yùn)行模式設(shè)置,如果有設(shè)定則進(jìn)入相應(yīng)模式運(yùn)行。這里,當(dāng)選擇30萬(wàn)像素?cái)z像頭時(shí),所拍攝畫(huà)面的窗口大小可以設(shè)置為:640ⅹ480、320ⅹ240等模式之一,通過(guò)選擇更高像素的攝像頭,可以提高窗口大小的設(shè)置;選用的濾波方式可設(shè)置為:中值濾波、均值濾波、邊緣檢測(cè)等模式,圖像顯示可設(shè)置為彩色原圖像、灰度圖像、二值化黑白圖像、邊緣檢測(cè)、動(dòng)態(tài)目標(biāo)捕捉后圖像五種模式可選。

      2視頻采集及處理模塊

      傳統(tǒng)的視頻采集,通常采用通用攝像頭模組,采集圖像后,經(jīng)過(guò)白平衡等簡(jiǎn)單處理后,傳送給單片機(jī)或其他中央處理單元,完成濾波等處理后,最終在顯示器上顯示出來(lái)。視頻處理過(guò)程相對(duì)煩瑣、實(shí)現(xiàn)周期長(zhǎng)。而OpenMV視頻采集及處理單元作為易用、低價(jià)的機(jī)器視覺(jué)開(kāi)發(fā)組件,不僅可以采集視頻數(shù)據(jù),而且可以通過(guò)python編程,調(diào)用內(nèi)置的常用算法函數(shù),方便地實(shí)現(xiàn)視頻窗口大小設(shè)置、濾波及各種檢測(cè)功能,提高了系統(tǒng)開(kāi)發(fā)效率,縮短了開(kāi)發(fā)周期。

      OpenMV模塊通過(guò)UART端口接收來(lái)自FPGA核心控制模塊的設(shè)置指令,當(dāng)連續(xù)接收兩個(gè)字節(jié)的數(shù)據(jù),其中,第一個(gè)字節(jié)為0xFF,則表示第二個(gè)字節(jié)為設(shè)置指令,最多允許0x00~0x7F,共128種設(shè)置,波特率設(shè)置為115200bps。典型設(shè)置如下所示:

      ① 畫(huà)面窗口大小可以設(shè)置為:VGA模式(640ⅹ480)、QVGA(320ⅹ240)、QQVGA(160ⅹ120)、QQQVGA(80ⅹ60),通過(guò)API函數(shù)sensor.set_framesize( )實(shí)現(xiàn)設(shè)置。

      ②選用的濾波方式可設(shè)置為:Midpoint(中值濾波)、Mean(均值濾波)、Edge(邊緣檢測(cè))等模式。中值濾波可以通過(guò)img.midpoint()函數(shù)實(shí)現(xiàn),均值濾波可以通過(guò)img.mean(1)實(shí)現(xiàn),邊緣檢測(cè)可以通過(guò)img.erode()實(shí)現(xiàn)。

      ③圖像顯示可設(shè)置為Color(彩色原圖像)、Grey(灰度圖像)、Bianry(二值化黑白圖像)、Edge(邊緣檢測(cè)后圖像)、Difference(移動(dòng)檢測(cè)&拍照)五種模式?;叶然梢酝ㄟ^(guò)函數(shù)sensor.set_pixformat(sensor.GRAYSCALE)實(shí)現(xiàn),黑白圖像則可以通過(guò)img.binary()來(lái)實(shí)現(xiàn)。

      ④另外,還可實(shí)現(xiàn)拍照和對(duì)線、圖形、顏色、人臉等的檢測(cè)和追蹤。

      程序調(diào)試完成后,將程序固化到OpenMV模塊的Flash中,脫機(jī)運(yùn)行。

      3遠(yuǎn)程通信模塊

      系統(tǒng)上電后,可以通過(guò)GPRS模塊與手機(jī)隨時(shí)建立無(wú)線通信,方便對(duì)系統(tǒng)進(jìn)行遠(yuǎn)程設(shè)置以及獲取系統(tǒng)當(dāng)前狀態(tài)。這里,系統(tǒng)搭載的GPRS模塊選用SIM900A模塊,支持四個(gè)頻段,包括850,900,1800,1900MHz,最大數(shù)據(jù)速率,下載85.6Kbps,上傳42.8Kbps,搭配3G手機(jī)卡,可方便實(shí)現(xiàn)短信收發(fā)功能。當(dāng)通過(guò)手機(jī)向系統(tǒng)發(fā)送短信指令時(shí),SIM900A模塊將接收到的信息包通過(guò)IIC接口發(fā)送給FPGA,由FPGA進(jìn)行拆包,對(duì)信息進(jìn)行解析和判斷,決定如何對(duì)視頻采集及處理模塊進(jìn)行設(shè)置等。圖4為英文短信讀取流程圖。如果手機(jī)發(fā)過(guò)來(lái)的指令是需要獲取系統(tǒng)目前運(yùn)行狀態(tài)時(shí),F(xiàn)PGA將需要發(fā)送的數(shù)據(jù)封裝成SIM900A需要的包格式,通過(guò)IIC接口發(fā)送給SIM900A,再由SIM900A發(fā)送給手機(jī)端。

      4 HDMI協(xié)議轉(zhuǎn)換模塊

      HDMI模塊采用的核心芯片是ADV7513,通過(guò)IIC接口協(xié)議配置其內(nèi)部寄存器,配置成功后,ADV7513會(huì)將視頻數(shù)據(jù),通過(guò)最小化傳輸差分信號(hào)(TMDS)的編碼技術(shù)將其編碼為數(shù)據(jù)包,實(shí)現(xiàn)于HDMI接口顯示器的連接。雖然FPGA也可以通過(guò)設(shè)置電平標(biāo)準(zhǔn)設(shè)置多種標(biāo)準(zhǔn)的LVDS,但其不能完全兼容TMDS,因此本設(shè)計(jì)選用HDMI接收/發(fā)送芯片來(lái)實(shí)現(xiàn)HDMI接口功能。而FPGA實(shí)現(xiàn)對(duì)接口芯片的控制和視頻數(shù)據(jù)傳輸。

      5 FPGA核心控制模塊

      FPGA模塊是整個(gè)視頻系統(tǒng)的控制核心,負(fù)責(zé)OpenMV視頻數(shù)據(jù)和GPRS遠(yuǎn)程信息,將信息匯集到FPGA中,進(jìn)行相應(yīng)處理,并將視頻數(shù)據(jù)轉(zhuǎn)換為HDMI驅(qū)動(dòng)芯片能接收的數(shù)據(jù)格式及時(shí)序特性后,傳送給HDMI驅(qū)動(dòng)芯片,最終實(shí)現(xiàn)與HDMI接口顯示器的連接。圖2為FPGA內(nèi)部電路的模塊圖,包括控制單元和數(shù)據(jù)通道兩大模塊。視頻數(shù)據(jù)及遠(yuǎn)程控制指令經(jīng)過(guò)數(shù)據(jù)通道處理后,進(jìn)入控制單元,控制狀態(tài)機(jī)的狀態(tài)跳轉(zhuǎn),并輸出相應(yīng)的控制信號(hào),送給數(shù)據(jù)通道,最終輸出給OpenMV模塊、HDMI接口芯片、GPRS模塊。

      ①數(shù)據(jù)通道模塊主要包括視頻數(shù)據(jù)接收子模塊、GPRS接口模塊、HDMI接口轉(zhuǎn)換模塊。其中視頻數(shù)據(jù)接收子模塊一方面實(shí)現(xiàn)UART串行數(shù)據(jù)到并行數(shù)據(jù)的轉(zhuǎn)換,另一方面對(duì)視頻數(shù)據(jù)進(jìn)行緩存,實(shí)現(xiàn)不同時(shí)鐘域數(shù)據(jù)的傳輸。對(duì)數(shù)據(jù)的緩存是通過(guò)片上FIFO和DPRAM來(lái)實(shí)現(xiàn)的。對(duì)OpenMV模塊和HDMI接口芯片的設(shè)置指令保存在ROM中,數(shù)據(jù)線寬度和地址線寬度均為8,共支持255種設(shè)置類(lèi)型。GPRS接口模塊一方面對(duì)串行指令進(jìn)行并行轉(zhuǎn)換,之后對(duì)指令進(jìn)行拆包,解析出指令類(lèi)型;另一方面,將需要發(fā)送的數(shù)據(jù)封裝成包,并將并行數(shù)據(jù)轉(zhuǎn)成串行數(shù)據(jù),按照IIC時(shí)序發(fā)送給FPGA外部的GPRS模塊。HDMI接口轉(zhuǎn)換模塊用來(lái)產(chǎn)生HDMI驅(qū)動(dòng)芯片所需的接口時(shí)序,包括同步時(shí)鐘、行同步、場(chǎng)同步和數(shù)據(jù)總線使能信號(hào),并通過(guò)并行數(shù)據(jù)總線發(fā)送要顯示的視頻數(shù)據(jù)。另外,在發(fā)送視頻數(shù)據(jù)之前,通過(guò)IIC總線對(duì)HDMI接口芯片寄存器進(jìn)行配置,配置數(shù)據(jù)以查找表的方式存儲(chǔ),指令支持0x80~0x9F,共32種設(shè)置。

      這里,由于OpenMV串口通信速率的影響,以30萬(wàn)像素?cái)z像頭為例,采用隔行掃描方式,對(duì)于顯示分辨率為640ⅹ480的HDMI顯示器而言,更新1幀數(shù)據(jù)約1秒鐘,適合應(yīng)用于動(dòng)態(tài)目標(biāo)檢測(cè)及拍照顯示。

      ②控制單元模塊作為FPGA控制模塊的核心,根據(jù)系統(tǒng)現(xiàn)態(tài)以及外部輸入,決定系統(tǒng)次態(tài),并根據(jù)狀態(tài)機(jī)所處狀態(tài),產(chǎn)生相應(yīng)控制信號(hào)傳送給數(shù)據(jù)通道,最終實(shí)現(xiàn)系統(tǒng)動(dòng)作控制。狀態(tài)機(jī)如圖3所示,系統(tǒng)共9個(gè)狀態(tài),分別為系統(tǒng)初始化、OpenMV默認(rèn)設(shè)置、HDMI默認(rèn)設(shè)置、等待、GPRS短信解析、HDMI設(shè)置更新、OpenMV設(shè)置更新、獲取視頻信息、HDMI顯示。其中,在HDMI顯示狀態(tài),顯示完1幀數(shù)據(jù)后,返回等待狀態(tài),檢測(cè)是否接收到GPRS短信設(shè)置,如果接收到,則進(jìn)行設(shè)置指令解析,更新HDMI設(shè)置或者OpenMV設(shè)置。

      6系統(tǒng)調(diào)試與分析

      ①OpenMV視頻采集及處理模塊的調(diào)試。確認(rèn)能夠按照設(shè)置窗口大小正確采集圖像信息,并實(shí)現(xiàn)濾波、邊緣檢測(cè)等功能。但由于所用HDMI顯示器的分辨率與OpenMV可選窗口大小不匹配,無(wú)法正確顯示,經(jīng)過(guò)Python編程,對(duì)窗口大小進(jìn)行了裁剪,實(shí)現(xiàn)了與顯示器分辨率的匹配。

      ② GPRS遠(yuǎn)程控制模塊的調(diào)試。主要分兩步進(jìn)行,先調(diào)試接收功能,再調(diào)試發(fā)送功能。調(diào)試之初發(fā)現(xiàn)通過(guò)手機(jī)發(fā)送短信給系統(tǒng)后,系統(tǒng)并沒(méi)有按照相應(yīng)指令,實(shí)現(xiàn)對(duì)OpenMV模塊的設(shè)置,比如手機(jī)發(fā)送邊緣檢測(cè)指令后,顯示器圖像并沒(méi)有邊緣檢測(cè)效果。后借助QuartusII自帶的在線邏輯分析儀SignalTap,采集接收到的數(shù)據(jù)包,并進(jìn)行解析,發(fā)現(xiàn)實(shí)際短信包格式與原預(yù)期格式存在差異。根據(jù)實(shí)際包格式,修改解析代碼,最終實(shí)現(xiàn)了手機(jī)遠(yuǎn)程發(fā)送短信來(lái)對(duì)系統(tǒng)進(jìn)行設(shè)置的功能。另外,實(shí)現(xiàn)了系統(tǒng)向手機(jī)發(fā)送應(yīng)答短信的功能。

      ③HDMI芯片接口模塊的調(diào)試。分成兩步進(jìn)行,首先通過(guò)IIC接口對(duì)芯片進(jìn)行配置。配置結(jié)束后,傳送固定色條數(shù)據(jù),色條數(shù)據(jù)保存在FPGA的片內(nèi)ROM中,僅在調(diào)試HDMI接口時(shí)使用。色條數(shù)據(jù)正常顯示后,再顯示正常動(dòng)態(tài)圖像。

      ④在調(diào)試上述功能時(shí),均需要FPGA核心控制模塊的支持,即完成上述功能模塊調(diào)試,也就完成了FPGA部分的調(diào)試。

      FPGA資源使用情況如圖4所示,保留了充分的圖像處理功能擴(kuò)展空間。在窗口大小為VGA模式,經(jīng)過(guò)中值濾波,邊緣檢測(cè)后,HDMI顯示器圖像,如圖5所示。

      7結(jié)語(yǔ)

      本系統(tǒng)設(shè)計(jì)充分利用OpenMV機(jī)器視覺(jué)模塊可通過(guò)Python編程,調(diào)用內(nèi)置的視頻處理函數(shù),方便、快捷的實(shí)現(xiàn)視頻采集及預(yù)處理功能的特點(diǎn),與FPGA具有并行處理、電路實(shí)現(xiàn)靈活、可現(xiàn)場(chǎng)編程的優(yōu)點(diǎn)相結(jié)合,實(shí)現(xiàn)了圖像的采集、處理、HDMI顯示功能。另外,借助于GPRS模塊,實(shí)現(xiàn)了遠(yuǎn)程控制。不僅功能靈活,而且可擴(kuò)展性強(qiáng),根據(jù)不同需要,進(jìn)行合理設(shè)置,實(shí)現(xiàn)不同功能需要。既可應(yīng)用于工業(yè)環(huán)境,也可作為家居安防的一部分使用。

      參考文獻(xiàn):

      [1] 梁義濤,唐矗,史衛(wèi)亞,等. 基于Cyclone IV的Camera Link-HDMI高清視頻轉(zhuǎn)換器設(shè)計(jì)[J]. 電子技術(shù)應(yīng)用, 2013,39(5): 12-14.

      [2] 向梓豪,陸安江. 基于FPGA的HDMI多模式顯示模塊設(shè)計(jì)[J]. 電子技術(shù)應(yīng)用, 2017,43(12): 48-51.

      [3] 潘磊,葛中芹,莊建軍,等. 基于FPGA的HDMI視頻流圖像處理的系統(tǒng)設(shè)計(jì)[J]. 實(shí)驗(yàn)室研究與探索, 2015,34(10):76-79.

      [4] 凡哥.凡哥帶你玩轉(zhuǎn)OpenMV [EB/OL],https://blog.csdn.net/

      HZ_CloudRiver/article/details/78177307?locationNum=6&fps;=1,2017

      【通聯(lián)編輯:梁書(shū)】

      车险| 渭南市| 桓台县| 安岳县| 元朗区| 德江县| 册亨县| 沂源县| 徐水县| 枝江市| 锡林郭勒盟| 宁陵县| 二连浩特市| 阿鲁科尔沁旗| 峨山| 佛山市| 都兰县| 庐江县| 蕉岭县| 花莲县| 东城区| 互助| 九江市| 陈巴尔虎旗| 盐津县| 瑞安市| 岳阳市| 麻城市| 界首市| 松原市| 晋宁县| 芜湖县| 隆安县| 望江县| 肇庆市| 双江| 竹山县| 河东区| 新沂市| 子长县| 双桥区|