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

基于XC2S600E的MJPEG編碼器研究與實現

2011-05-18 09:11:00包宋建許艷英陳帥華
重慶高教研究 2011年4期
關鍵詞:單片機

包宋建,孟 楊,許艷英,陳帥華

(1.重慶文理學院電子電氣工程學院,重慶 永川 402160;2.重慶科創職業學院機電工程學院,重慶 永川 402160)

MJPEG是指Motion JPEG,即動態JPEG,按照25幀/s的速度使用JPEG算法壓縮視頻信號.JPEG標準是由JPEG專家組制訂的,其圖像格式是對每一幀圖像進行幀內(intra-frame)壓縮,通??蛇_到10∶1的壓縮率.MJPEG圖像流的單元就是一幀一幀的JPEG畫片,因為每幀都可獨立地任意存取和編輯,所以MJPEG常被用于視頻編輯系統和視頻監控系統[1].在MJPEG壓縮的實現上,本文基于XC2S600E的MJPEG編碼器與基于單片機(MCU)和數字信號處理器(DSP)的MJPEG編碼器相比具有速度快、實時性好、硬件電路簡單可靠等特點.

1 MJPEG編碼器的硬件系統設計

1.1 MJPEG編碼器的總體結構

整個系統的結構框圖如圖1所示.上電后,由XC17V04使用主-串方式對FPGA進行加載,利用單片機AT89C51對視頻處理芯片SAA7111進行初始化.由于AT89C51沒有IIC總線,因此使用虛擬IIC總線對SAA7111進行初始化配置,使SAA7111芯片輸出CCIR601標準的圖像流,該標準的每幅圖像具有有效像素720×625,即每行有720個有效像素,共625行有效行,分奇數行和偶數行進行傳輸.由攝像頭獲取的信號經視頻輸入處理(VIP)芯片SAA7111處理后輸出CCIR601標準圖像流,然后將其送給SDRAM存儲,FPGA從SDRAM中讀取數據進行壓縮處理,壓縮后的視頻數據流由FPGA的I/O引腳輸出.

圖1 MJPEG編碼器的總體結構

1.2 視頻輸入處理

SAA7111A是Philips公司生產的可編程視頻處理器.該芯片集A/D轉換與解碼功能于一身,片內附有鎖相、自動鉗位、自動增益控制、時鐘產生、多制式解碼等電路,另外,SAA7111A還可對亮度、對比度和飽和度進行控制.

攝像頭與某一路接通時(例AI11),視頻信號將進入視頻解碼器SAA7111進行A/D轉換,將模擬信息變成標準的YUV4∶2∶2數字圖像信息,此信息供給系統進行進一步的處理.SAA7111的哪一路被選通以及芯片的初始化均可由本系統的AT89C51通過虛擬I2C總線對芯片進行初始化[2].

1.2.1 SAA7111 的典型應用電路

圖2是SAA7111的典型應用電路.根據上述設置,該設計從SAA7111的4個模擬視頻輸入端中選擇AI11作為視頻輸入接口,輸出端的高8位輸出亮度信號,低8位輸出色度信號.在視頻輸入端需連接10 nF的電容和75 Ω的電阻.

圖2 SAA7111的典型應用電路

SAA7111的時鐘可以是外部時鐘和內部時鐘.本系統采用外部時鐘輸入,XTAL2引腳和XTAL1引腳間接入的一個頻率為24.576 MHz的石英晶體振蕩器,可用于產生系統所需要的工作時鐘.本設計由外部時鐘驅動來產生行鎖定時鐘 LLC(27 MHz)、LLC2(13.5mHz)和時鐘參考信號CREF(13.5mHz,相對 LLC2有一定的延時).需要說明的是,時鐘的產生會受到片選信號CE的影響,只有當CE為高電平時才有效,而在低電平時,SAA7111被復位,該引腳不產生周期信號.為降低電源紋波,每個電源輸入端都應加100 nF濾波電容[3].由于 SAA7111是模數轉換器件,模擬電源和數字電源、模擬地與數字地都不能簡單共電.一般情況下,可使用電感單點一起接地.因為數字電路的頻率較高,模擬電路的敏感度較強,數字和模擬部分不能有信號電流的交互,而這個地線理論上會提供電源回路,所以為避免干擾,應使用電感阻止干擾信號的流回[4].

1.3 基于AT89C51的虛擬I2C總線的實現

1.3.1 用單片機普通I/O模擬I2C總線接口

用單片機普通I/O口模擬I2C總線接口時,其硬件配置非常簡單,因為單片機的I/O口很多,并且大多I/O口都是雙向的.因此可以直接用兩個I/O口線作為I2C總線的串行時鐘線SCL和串行數據線SDA.圖3所示為AT89C51單片機與SAA7111的硬件連接圖.當硬件配置完成后,根據I2C總線的時序特性可用軟件編程來模擬I2C總線接口[5].圖4為I2C總線的起始信號(S),它表示在 SCL為高電平期間,數據線SDA由高電平向低電平變化將啟動I2C總線.下面是相應的匯編程序.其它子程序可以參考I2C總線時序來實現.啟動I2C總線子程序:

圖3 虛擬IIC總路線產生的硬件連接圖

圖4 I2C總線起停信號時序

1.3.2 SAA7111 的初始化

SAA7111內部有32個寄存器(Subaddress00~1FH),其中22個是可編程的.00H,1A ~1CH,1FH是只讀寄存器,其中00H描述的是芯片版本信息;1A~1CH是文本信息檢測和解碼寄存器,一般很少用到;1FH用來描述芯片的狀態.02H~12H是可讀寫寄存器,其中02H~05H是模擬輸入控制寄存器,02H用于設置模擬視頻信號輸入方式(共8種),03H~05H用于設置增益控制方式,06H~12H主要用于設置解碼方式,通過配置這些寄存器可以設置行同步信號的開始和結束位置,并可確定亮度、色度、飽和度的大小以及輸出圖像數據信號的格式.01H,13H~19H,1DH~1EH寄存器保留使用.需要注意的是,在讀00H寄存器前,必須將它初始化為0.在對多個連續的寄存器進行操作時,寄存器地址有自動加1 的功能[6].

以采用上面任何一種方法來模擬I2C總線接口,只是具體的編程方法應視不同的控制器而異.但軟件編程具有相同之處,首先必須根據I2C總線的原理寫出啟動、結束、發送應答信號及讀、寫一個字節的程序,然后根據SAA7111的寄存器操作格式寫出讀、寫寄存器的程序,最后根據以上子程序寫出初始化SAA7111的程序段.SAA7111的初始化流程如圖5所示.

圖5 SAA7111的初始化流程圖

以單片機為例,硬件連接如圖3所示.其中IICSA是SAA7111的讀寫控制位,IICSA=0表示SAA7111的寫地址為48H.這里把 SAA7111初始化設定為:一路模擬視頻信號輸入(AI12)、自動增益控制、625行50 Hz PAL制式、YUV422、16位數字視頻信號輸出、設置默認的圖像對比度、亮度及飽和度.相應的寄存器初始化值如表1所列.下面是向SAA7111的19個連續的子地址寄存器(00H~12H)寫入一組數據的程序.

表1 寄存器初始化值

2 MJPEG壓縮的各模塊設計實現

Motion JPEG是一種基于靜態圖像JPEG壓縮標準的動態圖像壓縮標準,壓縮時將連續圖像的每一個幀視為一幅靜止圖像進行壓縮,從而可以生成序列化運動圖像.壓縮時不對幀-幀的時間冗余進行壓縮,雖然降低了壓縮比,但也同時降低了復雜度,易于硬件電路實現.Motion JPEG標準所根據的算法是基于離散余弦變換和熵編碼,關鍵技術有二維離散余弦變換、量化、差分編碼、霍夫曼編碼和行程編碼等.單幀的處理過程如圖6所示.輸入的8×8數據依次經過二維DCT變換,轉換到頻域,使低頻成份集中在左上角,對人眼不敏感的高頻部分在右下角,通過量化表進行量化,去掉高頻部分,再進行Z掃描,從而增加零游程長度,然后進行游程編碼,變成零游程長度.非零AC系數再進行Huffman編碼,實現對低概率的碼元賦予較長的碼字,高概率的碼元賦予較短的碼字.由于Huffman編碼后的碼流為不等長碼,故需要調整碼長,將不等長的碼轉成等長碼,最后按照JPEG規則編輯報頭和參數并打包輸出最終的動態JPEG碼流.

圖6 MJPEG的單幀處理流程

3 結論

為了說明FPGA壓縮的高速性這一最大優勢,這里將本設計所需要的時間同文獻[7]中編碼所需的時間進行比較:DCT變換消耗4224個指令,量化Z排序耗960指令,Huffman編碼耗540指令,假設令其采用高檔的6000系列DSP,指令周期為1 ns.比較柱狀圖如圖7所示.

壓縮一個相同的8×8數據塊,各處理模塊與整個JPEG壓縮過程耗時分別說明.離散余弦變換:采用高檔的 DSP進行 DCT變換,消耗4224 ns;而采用100m的XC2S600E只需660 ns(ModelSim仿真).量化:采用DSP進行量化,消耗960 ns;而采用XC2S600E進行量化,消耗400 ns.Huffman編碼:采用DSP進行Huffman編碼,消耗540 ns;而采用XC2S600E進行Huffman編碼,消耗220 ns.整個JPEG編碼:基于DSP的JPEG編碼耗時是各個模塊耗時之和,即耗時5744 ns;而基于FPGA的JPEG編碼耗時則不再是各模塊耗時之和,因為各模塊是可以并行工作的,其總耗時為930 ns.

圖7 壓縮方法比較及耗時圖

[1]王瑤寶.基于FPGA的MJPEG編碼器的研究及實現[M].吉林:東北電力大學出版社,2007:12-23.

[2]Philips Semiconductors.SAA7111 video input processor(VIP)product specification.integrated circuits[DB/OL].(1998-05-15)[2011-05-12]http://wenku.baidu.com/view/85f14cc4bb4cf7ec4afed0c6.html.

[3]于曉琳,張崇,鄧長軍.SAA7111A在實時圖像采集系統中的應用[J].電子產品世界,2005(1):97-99.

[4]張金波,梁瑞宇,張伯約,等.SAA7111A和SAA7185在時基校正電路中的應用[J].電子技術,2004(10):56-58.

[5]張克滿,何格夫.用虛擬I2C總線技術實現SAA7111的初始化[EB/OL].(2008-07-26)[2011-04-21]http://tech.ddvip.com/2008/07/121706776548712.html.

[6]楊有,尚晉,楊華芬,等.檔案圖像處理模型研究[J].重慶文理學院學報:自然科學版,2010,29(5):29-32.

[7]周霖.DSP通信工程技術應用[M].長沙:國防工業出版社,2004:33-35.

猜你喜歡
單片機
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的多功能智能插排
電子制作(2019年11期)2019-07-04 00:34:48
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
小議PLC與單片機之間的串行通信及應用
電子制作(2018年12期)2018-08-01 00:48:04
MSP430單片機在仿真中要注意的幾點問題
電子制作(2017年9期)2017-04-17 03:00:53
基于單片機的平衡控制系統設計
電子制作(2017年19期)2017-02-02 07:08:27
基于單片機的三維LED點陣設計
電子制作(2016年21期)2016-05-17 03:52:51
Microchip推出兩個全新PIC單片機系列
基于Proteus的單片機控制系統的仿真設計
404 Not Found

404 Not Found


nginx
主站蜘蛛池模板: 蜜桃臀无码内射一区二区三区 | 中文无码日韩精品| 久久免费观看视频| 亚洲视频三级| 91丝袜在线观看| 欧美午夜在线观看| 国产成人高清精品免费软件| AV熟女乱| 5388国产亚洲欧美在线观看| 亚洲第一网站男人都懂| 日韩AV手机在线观看蜜芽| 亚洲中文无码av永久伊人| 午夜天堂视频| 国产美女视频黄a视频全免费网站| 特级aaaaaaaaa毛片免费视频| 国产真实自在自线免费精品| 国产高清自拍视频| 国产在线拍偷自揄拍精品| 欧美精品亚洲日韩a| 高清无码一本到东京热| 亚洲无码高清视频在线观看 | 一级毛片在线播放免费观看| 67194成是人免费无码| 亚洲欧美激情另类| 欧美亚洲综合免费精品高清在线观看| 婷婷色丁香综合激情| 丰满人妻一区二区三区视频| 欧美第一页在线| 国产精品视频观看裸模| 欧美日韩第三页| 久久精品人人做人人爽电影蜜月| 日韩毛片免费视频| 亚洲一级毛片免费观看| 久久国产亚洲偷自| 欧美成人精品高清在线下载| 日韩国产黄色网站| 天堂av综合网| 国产流白浆视频| 久久国产高潮流白浆免费观看| 国产精品尹人在线观看| 日韩欧美国产中文| 精品1区2区3区| 国产精品三级专区| 2020亚洲精品无码| 国产午夜精品一区二区三| 全午夜免费一级毛片| 国产欧美日韩在线在线不卡视频| 91原创视频在线| 国产乱人乱偷精品视频a人人澡| 97综合久久| 国产色爱av资源综合区| 91人妻在线视频| 青青青国产视频手机| 久久久久九九精品影院| 老色鬼久久亚洲AV综合| 国产资源免费观看| 澳门av无码| 91午夜福利在线观看| 中文字幕第1页在线播| 亚洲二区视频| 好吊色妇女免费视频免费| 成人久久18免费网站| 国产毛片片精品天天看视频| 99在线国产| 97免费在线观看视频| 毛片大全免费观看| 日韩精品高清自在线| 日韩免费毛片| 亚洲色图欧美一区| 米奇精品一区二区三区| 中文字幕乱妇无码AV在线| 亚洲福利视频一区二区| 91九色最新地址| 色天天综合| 日韩国产综合精选| 国产乱视频网站| 免费全部高H视频无码无遮掩| 日韩精品专区免费无码aⅴ | 大学生久久香蕉国产线观看| 亚洲成在线观看| 国产精品主播| 成人国产小视频|