www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]基于NiosII的 低碼率實(shí)時(shí)H.264視頻編碼器

引 言
    H.264標(biāo)準(zhǔn)作為新一代視頻編碼標(biāo)準(zhǔn),是面向多比特率的視頻編碼標(biāo)準(zhǔn),也稱JVT/AVC標(biāo)準(zhǔn),既可用于高碼率的HDTV和數(shù)字存儲系統(tǒng),也可用于低碼率的實(shí)時(shí)通信系統(tǒng)。在相同的圖像質(zhì)量情況下,H.264比H.263和MPEG一4可以節(jié)省20%~50%的碼率。就其基本檔次而言,編碼器的復(fù)雜度是H.263的10倍左右。H.264良好的網(wǎng)絡(luò)親和性和優(yōu)異的壓縮性能使其成為視頻應(yīng)用的首選,但其巨大的運(yùn)算量成為許多應(yīng)用的瓶頸。筆者基于NiosII設(shè)計(jì)了一種低碼率實(shí)時(shí)應(yīng)用的編碼系統(tǒng)。該系統(tǒng)充分利用FPGA的并行設(shè)計(jì)結(jié)構(gòu),對視頻數(shù)據(jù)采用高壓縮比的H.264標(biāo)準(zhǔn)編碼,能很好地滿足低碼率實(shí)時(shí)編碼的要求。


1 H.264編碼系統(tǒng)結(jié)構(gòu)設(shè)計(jì)

    根據(jù)H.264/AVC編碼器原理及結(jié)構(gòu),同時(shí)考慮到現(xiàn)有硬件資源的限制以及該設(shè)計(jì)的應(yīng)用需求,設(shè)計(jì)了圖1所示的H.264/AVC編碼系統(tǒng)結(jié)構(gòu)。

    攝像頭攝入的視頻圖像首先經(jīng)過視頻采集模塊處理,并將當(dāng)前幀的圖像數(shù)據(jù)存入SRAM。然后,以宏塊MB(macroblock)為單元,從SRAM中讀取原始圖像,并根據(jù)MB所在圖像幀內(nèi)的位置,讀取重建幀中的參考像素進(jìn)行幀內(nèi)預(yù)測,并將預(yù)測宏塊與當(dāng)前宏塊像素做差即可得到預(yù)測殘差。接下來,對殘差圖像進(jìn)行整數(shù)DCT變換或Had—amard變換,并對變換輸出進(jìn)行量化。量化輸出的殘差圖像一方面通過反變換和反量化處理生成重建圖像供幀內(nèi)預(yù)測作為參考,另一方面經(jīng)過重排序、熵編碼處理得到最終的圖像壓縮碼流輸出。
    根據(jù)H.264/AVC標(biāo)準(zhǔn),將所設(shè)計(jì)的整個編碼系統(tǒng)從結(jié)構(gòu)上劃分為圖像采集、幀內(nèi)預(yù)測、變換量化、熵編碼等幾個主要部分。各個模塊之間通過流水線的方式進(jìn)行處理,可以有效地提高硬件的執(zhí)行效率。

2 基于Cyclone II FPGA的H.264編碼器的實(shí)現(xiàn)
    系統(tǒng)采用SOPC的設(shè)計(jì)方式,主要由視頻采集模塊、NiosII處理器系統(tǒng)組成。采用Altera公司的DE2開發(fā)板為開發(fā)平臺,將視頻采集、NiosII處理器集成到一個SOPC系統(tǒng)中。其中NiosII處理器系統(tǒng)要承擔(dān)圖像采集控制、圖像的H.264壓縮編碼工作。為了保證實(shí)時(shí)性,在充分分析H.264軟件算法運(yùn)行時(shí)間后,采用自定義模塊對H.264編碼器關(guān)鍵算法進(jìn)行硬件加速。
2.1 視頻采集模塊
    視頻采集是視頻圖像處理、傳輸?shù)那疤幔杉降臄?shù)字視頻圖像好壞將直接影響到視頻處理的結(jié)果。圖2給出了圖像處理系統(tǒng)的視頻采集結(jié)構(gòu)。

    ADI公司的多制式視頻解碼芯片ADV7181B對采集的視頻圖像進(jìn)行模數(shù)轉(zhuǎn)換。ADV7181B可以自動檢測諸如NTSC、PAL和SEC0M制式的基帶視頻信號,并將其轉(zhuǎn)換為基于4:2:2取樣的16/8位兼容的CCIR601/CCIR656格式的數(shù)字視頻信號;具有6路模擬視頻輸入端口,且采用單一的27 MHz晶振時(shí)鐘輸入;用戶可以通過兩線的I2C接口對ADV7181B的工作模式進(jìn)行配置。
    系統(tǒng)上電時(shí),首先使用I2C模塊對ADV7181B的內(nèi)部寄存器進(jìn)行配置。由于攝像頭輸出的是PAL制式的模擬視頻信號,因此需要相應(yīng)地將ADV7181B配置為PAL制式的模擬視頻信號輸入,并將其轉(zhuǎn)換為CCIR656格式的數(shù)字視頻信號。ADV7181B將轉(zhuǎn)換得到的實(shí)時(shí)數(shù)字視頻圖像的亮度信號、色度信號(TD_DAT)以及行、場同步信號(TD_HS/VS)同時(shí)輸入到FPGA芯片中,通過圖像采集模塊提取需要的數(shù)字圖像信息,并將其轉(zhuǎn)存至AlteraDE2開發(fā)板提供的具有512 KB存儲容量的SRAM中,用于緩存待處理圖像幀。
    下面介紹圖像采集模塊的設(shè)計(jì)與實(shí)現(xiàn)方法。
    根據(jù)上面對視頻采集部分硬件結(jié)構(gòu)的分析,設(shè)計(jì)了圖3所示的視頻采集模塊結(jié)構(gòu)框圖。可以看出,圖像采集模塊主要包含圖像提取、色度取樣率變換、Y/Cb/Cr圖像分量分離以及圖像緩存SRAM讀寫控制等單元。

[!--empirenews.page--]

    其中圖像提取子模塊在H.264/AVC編碼模塊的視頻采集控制信息的控制下,從ADV7181B轉(zhuǎn)換輸出的PAL制數(shù)字視頻圖像中提取需要的圖像數(shù)據(jù)。攝像頭采集的實(shí)際圖像大小為768×576像素的隔行掃描視頻輸入信號,其中基數(shù)場和偶數(shù)場在時(shí)間上先后輸入。由于系統(tǒng)處理的圖像大小為320×240像素,因此需要對輸入的數(shù)字視頻進(jìn)行截取,以滿足系統(tǒng)的處理要求。
    考慮到在一幀圖像中的頂場與底場數(shù)據(jù)差異不大,因此在對圖像進(jìn)行截取時(shí),僅對底場中間240行的連續(xù)320個相鄰像素點(diǎn)進(jìn)行提取,以輸出320×240像素的視頻圖像數(shù)據(jù)。其具體提取流程如圖4所示。

    H.264/AVC支持對色度取樣為4:2:O格式的逐行或隔行掃描數(shù)字圖像進(jìn)行處理,因此需要對提取的數(shù)字圖像進(jìn)行色度取樣率變換。通過對相鄰奇數(shù)行和偶數(shù)行的色度圖像分量進(jìn)行簡單的平均,可實(shí)現(xiàn)由4:4:4向4:2:O的色度取樣率變換,如圖5所示。

    經(jīng)過取樣率變換后的圖像數(shù)據(jù)需要根據(jù)Y/Cb/Cr圖像類型在SRAM中分片區(qū)緩存,以方便后續(xù)的H_264的編碼處理。圖6給出了實(shí)際圖像的色度分量在取樣率變換前后的效果。

[!--empirenews.page--]

2.2 H.264編碼器核心模塊
   
綜合現(xiàn)有的硬件資源、實(shí)時(shí)性與實(shí)現(xiàn)難度等因素,設(shè)計(jì)中僅采用了幀內(nèi)預(yù)測方式,編碼器包括幀內(nèi)預(yù)測模塊、變換量化模塊和CAVLC熵編碼模塊。處理時(shí)以宏塊(16×16)為單位,亮度和色度塊分別進(jìn)行幀內(nèi)預(yù)測、變換量化和反變換反量化,然后進(jìn)行CAVLC熵編碼,圖像的亮色比為Y:U:V=4:2:O。
    H.264編碼器設(shè)計(jì)前期先用VC++在PC機(jī)上實(shí)現(xiàn),后期移植到FPGA上用自定義硬件模塊實(shí)現(xiàn),二者所需時(shí)間如表1所列??梢钥闯觯糜布?shí)現(xiàn)H.264壓縮編碼一幀圖像只需約16 ms,較PC機(jī)實(shí)現(xiàn)有很大提高,而且硬件模塊占用的資源不到50%,性價(jià)比較高。

    由于自定義幀內(nèi)預(yù)測硬件模塊較軟件實(shí)現(xiàn)對系統(tǒng)性能提高較大,這里重點(diǎn)分析幀內(nèi)預(yù)測模塊硬件結(jié)構(gòu)設(shè)計(jì)。
    根據(jù)H.264幀內(nèi)預(yù)測算法,幀內(nèi)預(yù)測模塊是在非率失真優(yōu)化模式下設(shè)計(jì)的。它通過接口模塊從SDRAM中讀入一個MB(16×16)的亮度和色度圖像數(shù)據(jù),在亮度和色度預(yù)測模塊中對當(dāng)前MB進(jìn)行預(yù)測和預(yù)測模式選擇,輸出預(yù)測殘差及最佳預(yù)測模式;同時(shí)將預(yù)測結(jié)果與經(jīng)過反DCT變換和反量化之后的殘差值相加,經(jīng)重構(gòu)模塊補(bǔ)償重構(gòu)后寫回SDRAM。主要結(jié)構(gòu)如圖7所示,整個模塊分為4個子模塊:接口模塊、亮度預(yù)測、色度預(yù)測和圖像重構(gòu)模塊。

    接口模塊中設(shè)計(jì)了4個RAM,用于存放讀入的原始圖像和用于預(yù)測的參考圖像數(shù)據(jù):RAM0存放亮度預(yù)測像素,深度32,地址0~15存放上側(cè)預(yù)測參考像素,地址16~31存放左側(cè)預(yù)測參考像素;RAMl存放當(dāng)前宏塊亮度原始值,深度為256;RAM2存放色度預(yù)測參考像素,深度32,地址0~7存放上側(cè)Cb預(yù)測參考像素,地址8~15存放左側(cè)Cb預(yù)測參考像素,地址16~23存放上側(cè)cr預(yù)測參考像素,地址24~31存放左側(cè)Cr預(yù)測參考像素;RAM3存放當(dāng)前宏塊色度原始值,深度為128。
    亮度預(yù)測模塊的內(nèi)部結(jié)構(gòu)如圖8所示。

    ①模式選擇模塊根據(jù)當(dāng)前宏塊的預(yù)測參考像素可用信息(avail)指定當(dāng)前宏塊按一定順序做預(yù)測,如avail=“11”表示上側(cè)和左側(cè)預(yù)測參考像素均可用,則對當(dāng)前宏塊順序做DC、HOR、VERT、PLANE四種方式預(yù)測。在殘差處理模塊中,采用了2個RAM順序保存各種預(yù)測模式的預(yù)測殘差,所以在模式選擇模塊里會比較當(dāng)前預(yù)測模式的代價(jià)函數(shù)和前一種預(yù)測模式代價(jià)函數(shù)的大小。如果當(dāng)前預(yù)測模式的代價(jià)函數(shù)較小,則說明當(dāng)前預(yù)測模式較優(yōu),在做下一種模式預(yù)測時(shí)將預(yù)測殘差指定保存在上次較差預(yù)測模式的殘差RAM中。當(dāng)前宏塊的可用預(yù)測模式都預(yù)測結(jié)束后,模式選擇模塊根據(jù)每一種模式預(yù)測代價(jià)函數(shù)決定出最優(yōu)預(yù)測模式,并指出該預(yù)測模式對應(yīng)殘差處理模塊中存放的RAM,將相應(yīng)的殘差輸入到整數(shù)變換模塊。
    ②預(yù)測模塊包含了DC、HOR、VERT、PLANE四種預(yù)測模式的實(shí)現(xiàn)實(shí)體,根據(jù)模式選擇模塊決定的預(yù)測模式從接口模塊讀取預(yù)測參考像素和原始像素值,預(yù)測后殘差輸出到殘差處理模塊,預(yù)測值輸出到補(bǔ)償重構(gòu)模塊保存。
    ③殘差處理模塊采用2個存放殘差的RAM,每個宏塊可先并行做2種預(yù)測,殘差分別保存到2個RAM中,選擇其中較佳預(yù)測模式,再做下一種預(yù)測模式與前面所選較佳預(yù)測模式比較,直到完成所有預(yù)測模式選擇出最佳預(yù)測模式。
    ④預(yù)測代價(jià)模塊是計(jì)算每一種預(yù)測模式的預(yù)測代價(jià),以4×4塊為單位作hadamard變換,將變換后每個4×4塊DC系數(shù)再做一次hadamard變換,將所有變換結(jié)果進(jìn)行絕對值累加就是對應(yīng)的預(yù)測代價(jià)。
    色度預(yù)測模塊結(jié)構(gòu)基本和亮度預(yù)測相同,只是由于色度有Cb、Cr兩個分量,殘差在RAM中的存放方式略有差別;同一個宏塊的色度預(yù)測和亮度預(yù)測是并行執(zhí)行的,由于要處理的色度數(shù)據(jù)比亮度少一半,筆者在后面的整數(shù)變換中采用先處理色度,再處理亮度的方法,使得流水更加緊湊,減少等待時(shí)間,提高整個模塊的運(yùn)行速度。

3 結(jié) 論
    筆者設(shè)計(jì)的基于NiosII的低碼率實(shí)時(shí)H.264視頻編碼系統(tǒng),在系統(tǒng)時(shí)鐘頻率100 MHz時(shí),壓縮一幀320×240的彩色圖像需16.283 ms,在量化參數(shù)選擇30時(shí),圖像壓縮比達(dá)到2%,實(shí)時(shí)監(jiān)控圖像幀率25幀/s。系統(tǒng)具有資源占用較少,低成本,低碼率,高清視頻質(zhì)量的特點(diǎn),具有較好的發(fā)展前景。
    圖9為集成開發(fā)環(huán)境下綜合仿真后系統(tǒng)的資源占用情況。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

成都2022年10月19日 /美通社/ -- 近期,平安養(yǎng)老險(xiǎn)積極籌備個人養(yǎng)老金的產(chǎn)品設(shè)計(jì)和系統(tǒng)開發(fā)工作,發(fā)展多樣化的養(yǎng)老金融產(chǎn)品,推動商業(yè)養(yǎng)老保險(xiǎn)、個人養(yǎng)老金、專屬商業(yè)養(yǎng)老保險(xiǎn)等產(chǎn)品供給。 搭養(yǎng)老政策東風(fēng) ...

關(guān)鍵字: 溫度 BSP 東風(fēng) 大眾

廣東佛山2022年10月19日 /美通社/ -- 空間是人居生活的基礎(chǔ)單元,承載著生存與活動的最基本功能。而對于理想空間的解構(gòu)意義卻在物理性容器之外,體現(xiàn)出人們對于空間和生活深層關(guān)系的思考,同時(shí)也塑造著人與空間的新型連接...

關(guān)鍵字: 溫度 BSP 智能化 進(jìn)程

上海2022年10月19日 /美通社/ -- 10月17日晚間,安集科技披露業(yè)績預(yù)告。今年前三季度,公司預(yù)計(jì)實(shí)現(xiàn)營業(yè)收入7.54億元至8.33億元,同比增長60.24%至77.03%;歸母凈利潤預(yù)計(jì)為1.73億...

關(guān)鍵字: 電子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市經(jīng)濟(jì)和信息化局發(fā)布2022年度第一批北京市市級企業(yè)技術(shù)中心創(chuàng)建名單的通知,諾誠健華正式獲得"北京市企業(yè)技術(shù)中心"認(rèn)定。 北京市企業(yè)技...

關(guān)鍵字: BSP ARMA COM 代碼

北京2022年10月18日 /美通社/ -- 10月14日,國際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國軟件定義存儲及超融合市場研究報(bào)告》,報(bào)告顯示:2022年上半年浪潮超融合銷售額同比增長59.4%,近5倍于...

關(guān)鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都銀行集團(tuán)成立60周年的紀(jì)念日。趁著首都銀行集團(tuán)成立60周年與首都銀行(中國)在華深耕經(jīng)營12年的“大日子”,圍繞作為外資金融機(jī)構(gòu)對在華戰(zhàn)略的構(gòu)想和業(yè)...

關(guān)鍵字: 數(shù)字化 BSP 供應(yīng)鏈 控制

東京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式會社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團(tuán)公司上海通運(yùn)國際物流有限公司(Nipp...

關(guān)鍵字: 溫控 精密儀器 半導(dǎo)體制造 BSP

廣州2022年10月18日 /美通社/ -- 10月15日,第 132 屆中國進(jìn)出口商品交易會("廣交會")于"云端"開幕。本屆廣交會上高新技術(shù)企業(yè)云集,展出的智能產(chǎn)品超過140,...

關(guān)鍵字: 中國智造 BSP 手機(jī) CAN

要問機(jī)器人公司哪家強(qiáng),波士頓動力絕對是其中的佼佼者。近來年該公司在機(jī)器人研發(fā)方面獲得的一些成果令人印象深刻,比如其開發(fā)的機(jī)器人會后空翻,自主爬樓梯等。這不,波士頓動力又發(fā)布了其機(jī)器人組團(tuán)跳男團(tuán)舞的新視頻,表演的機(jī)器人包括...

關(guān)鍵字: 機(jī)器人 BSP 工業(yè)機(jī)器人 現(xiàn)代汽車

南京2022年10月17日 /美通社/ -- 日前《2022第三屆中國高端家電品牌G50峰會》于浙江寧波落幕,來自兩百余名行業(yè)大咖、專家學(xué)者共同探討了在形勢依然嚴(yán)峻的當(dāng)下,如何以科技創(chuàng)新、高端化轉(zhuǎn)型等手段,幫助...

關(guān)鍵字: LINK AI BSP 智能家電

嵌入式軟件

15715 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉