I幀是一個視頻序列的第1幀,所以一般變換量化后的質量都比P幀和B幀高,采用的量化參數QP也要比P幀和B幀所采用的QP要小。但是對于一些運動物體少的區域可以考慮用較大的QP來降低編碼,就是說I幀的不同區域可以有不同的QP。
P幀一般只對運動宏塊有變換量化后的結果,所采用的量化參數QP要比I幀大,至于大多少可以根據運動速度來定,速度慢的話量化參數QP要比I幀大1~2,速度快的話量化參數QP要比I幀大3~4,因為運動速度快時人眼看的就有點模糊,所以圖像質量損失大點也感覺不明顯。
B幀的結果可以不作為參考幀,所以B幀的量化參數QP要比P幀大,以獲得更少的碼流。
從上面的分析可以知道,不僅3種幀的QP大小不同,QP也會根據運動情況而變化,這樣的QP控制很復雜,而且ASIC的H.264編碼器也不一定有這樣的控制功能,FPGA正好可以實現這樣的控制。
ISP—FPGA的濾波器和銳化器功能
ISP是編碼前的視頻圖像處理,其中濾波強度和銳化強度對碼流的影響也很大,濾波算法有很多,其中既能濾波又能保留邊緣的濾波算法是很復雜的,用FPGA可以方便地實現不同算法和不同強度的濾波器和銳化器。
智能分析—FPGA的智能分析功能
智能分析主要有兩個功能,圖像分析和運動分析。運動分析是為了獲得視頻中的運動物體,如人和車輛等;圖像分析是為了獲得運動區域和靜止區域的分布,可以減少靜止區域的碼流。一般ASIC的智能分析功能只有運動分析,FPGA可以同時實現這兩個功能。
FPGA在智能自適應中的應用
影響碼流的因素主要包括:場景內容的變化、視頻分辨率、視頻幀率、量化參數QP、視頻濾波強度、圖像銳化強度和圖像分析靈敏度等。當場景內容變化時,碼流會隨之發生變化,為了實現維持碼流的穩定的目標,就需要同時調整其他參數,這就是智能自適應。智能自適應需要比較復雜的控制策略來實現,參與調整的參數分布在ISP、智能分析、H.264編碼等多個環節,對實時性要求比較高,很適合用FPGA來實現。
FPGA的選擇
H.264編碼以宏塊為單位,在處理過程中必然會涉及到宏塊的輸入輸出和緩存。1個宏塊的數據為384字節(256字節亮度數據和128字節色度數據),如果考慮到輸入輸出和處理的并行,必須設置雙份,即768字節,所以使用1K字節的存儲塊剛好滿足要求。參考幀的存儲可能包括多個參考幀宏塊,需要用多個存儲塊。ISP中經常需要緩存1行像素,1080p每行有1920個像素,需要2K字節的存儲塊。
從上面的分析可以看出,適合H.264編碼和圖像處理的FPGA對內部存儲器的要求是:存儲塊容量小(如1~2KB),并且存儲塊數量越多越好;另外,對乘法器的要求也是數量越多越好。
結語
從上面的論述中可以看出,降低視頻的編碼碼流是一個系統性的工程,涉及到很多環節,尤其是H.264編碼器可以做的工作很多。目前我們用CYCLONEIV的EP4CE115實現了1280×720×25fps的平均碼流小于512Kbps,H.264編碼檔次是mainprofilewithcabac。隨著FPGA工藝的進步,FPGA的資源越來越多,運動宏塊的預測可以做到越來越準確,編碼碼流會越來越少,下一步我們準備用CYCLONEV來實現1920×1080×25fps的平均碼流小于1024Kbps。
版權與免責聲明:
凡本網注明“來源:智慧城市網”的所有作品,均為浙江興旺寶明通網絡有限公司-智慧城市網合法擁有版權或有權使用的作品,未經本網授權不得轉載、摘編或利用其它方式使用上述作品。已經本網授權使用作品的,應在授權范圍內使用,并注明“來源:智慧城市網www.cmr6829.com”。違反上述聲明者,本網將追究其相關法律責任。
本網轉載并注明自其它來源(非智慧城市網www.cmr6829.com)的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或和對其真實性負責,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品第一來源,并自負版權等法律責任。
-
免費注冊后,你可以
了解安防行業更多資訊查看安防行業供求信息凸顯安防行業自身價值
馬上注冊會員
-
想快速被買家找到嗎
只需要發布一條商機,被買家找到的機會高達90%!還等什么?
馬上發布信息