一種監(jiān)控?cái)z像機(jī)碼流的自適應(yīng)控制方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于視頻監(jiān)控的技術(shù)領(lǐng)域,具體涉及一種監(jiān)控?cái)z像機(jī)碼流的自適應(yīng)控制方法。
【背景技術(shù)】
[0002]視頻通信系統(tǒng)中的碼流具有與生倶來(lái)的變碼率特性,如果編碼過(guò)程中,保持編碼參數(shù)不變,不同幀之間消耗的比特?cái)?shù)會(huì)顯著不同。尤其在視頻場(chǎng)景切換時(shí),會(huì)發(fā)生碼率的突變,而且在帶寬受限的多媒體通信系統(tǒng)中,這種具有顯著變化碼率的碼流不適合網(wǎng)絡(luò)的傳輸和存儲(chǔ)。
[0003]目前的碼流控制的方法包括:采用宏塊級(jí)復(fù)雜度運(yùn)算的方式選取宏塊QP值(quas1-peak,準(zhǔn)峰值)控制碼率;或采用率失真模型選取宏塊QP值。這些算法通過(guò)預(yù)測(cè)的方法選取量化參數(shù),運(yùn)算復(fù)雜度高,不能有效獲取對(duì)應(yīng)場(chǎng)景的經(jīng)驗(yàn)值,降低了編碼的效率,而且場(chǎng)景變化時(shí)視頻質(zhì)量大幅下降。
【發(fā)明內(nèi)容】
[0004]本發(fā)明是為了克服現(xiàn)有技術(shù)中的缺點(diǎn),而提出的一種監(jiān)控?cái)z像機(jī)碼流的自適應(yīng)控制方法。
[0005]本發(fā)明的技術(shù)方案是:
本發(fā)明的一種監(jiān)控?cái)z像機(jī)碼流的自適應(yīng)控制方法,該方法為:輸入圖像的幀信息通過(guò)傳感器采集后,先輸入圖像場(chǎng)景分類器,對(duì)當(dāng)前場(chǎng)景進(jìn)行判斷,獲取當(dāng)前場(chǎng)景的經(jīng)驗(yàn)QP值;當(dāng)場(chǎng)景確定后,再進(jìn)入圖幀的起始QP獲取器,根據(jù)每幀圖像確定本幀圖像的起始QP值;最后進(jìn)入圖幀的宏塊級(jí)QP獲取器,獲取宏塊級(jí)QP值,最終完成圖像編碼。
[0006]本發(fā)明的有益效果是:
本發(fā)明使監(jiān)控?cái)z像機(jī)能夠能夠根據(jù)不同場(chǎng)景精準(zhǔn)選取宏塊級(jí)的QP值,使碼流的波動(dòng)范圍明顯減小,碼流質(zhì)量得到提升,并降低了碼流,節(jié)省了網(wǎng)絡(luò)帶寬和存儲(chǔ)空間,提升了產(chǎn)品質(zhì)量,降低了系統(tǒng)存儲(chǔ)成本。
【附圖說(shuō)明】
[0007]圖1是本發(fā)明的控制流程示意圖;
圖2是本發(fā)明的圖像場(chǎng)景分類器的程序流程圖;
圖3是本發(fā)明的一幀圖像起始QP值的計(jì)算流程圖;
圖4是本發(fā)明的宏塊QP值的計(jì)算流程圖。
【具體實(shí)施方式】
[0008]以下,參照附圖及實(shí)施例對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說(shuō)明:
如圖1所示,本發(fā)明的一種監(jiān)控?cái)z像機(jī)碼流的自適應(yīng)控制方法,該方法為:輸入圖像的幀信息通過(guò)傳感器采集后,先輸入圖像場(chǎng)景分類器,對(duì)當(dāng)前場(chǎng)景進(jìn)行判斷,獲取當(dāng)前場(chǎng)景的經(jīng)驗(yàn)QP值;當(dāng)場(chǎng)景確定后,再進(jìn)入圖幀的起始QP獲取器,根據(jù)每幀圖像確定本幀圖像的起始QP值;最后進(jìn)入圖幀的宏塊級(jí)QP獲取器,獲取宏塊QP值,最終完成圖像編碼。
[0009]本發(fā)明的一種監(jiān)控?cái)z像機(jī)碼流的自適應(yīng)控制方法的具體步驟為:
I將輸入圖像的幀信息輸入圖像場(chǎng)景分類器,分類器建立輸入幀信息的分類判別緩沖區(qū),對(duì)當(dāng)前場(chǎng)景進(jìn)行白天或黑夜、運(yùn)動(dòng)或靜止、紋理復(fù)雜或紋理簡(jiǎn)單的分類判斷,獲取當(dāng)前場(chǎng)景的經(jīng)驗(yàn)QP值范圍,包括I幀的最大經(jīng)驗(yàn)QP值和最小經(jīng)驗(yàn)QP值,P幀的最大經(jīng)驗(yàn)QP值和最小經(jīng)驗(yàn)QP值;
Π再進(jìn)入圖幀的起始QP獲取器后,計(jì)算本幀圖像的復(fù)雜度,根據(jù)當(dāng)前場(chǎng)景的經(jīng)驗(yàn)QP值選取本幀圖像的起始QP值;
ΙΠ最后進(jìn)入圖幀的宏塊級(jí)QP獲取器,計(jì)算每個(gè)宏塊的復(fù)雜度,確定本宏塊QP值,再根據(jù)宏塊間復(fù)雜度關(guān)系,進(jìn)行碼率分配。
[0010]所述的最大QP值,表示一幀圖像宏塊編碼能采用的最大QP值。
[0011]所述的最小QP值,表示一幀圖像宏塊編碼能采用的最小QP值。
[0012]所述的最大的I幀與P幀的QP差值,代表P幀的平均QP值與當(dāng)前I幀QP值的差值。
[0013]所述的I幀和P幀對(duì)應(yīng)復(fù)雜度的QP值,將復(fù)雜度歸一化為[0,255],根據(jù)不同復(fù)雜度區(qū)間選取I幀或P幀具體QP值。
[0014]如圖2所示,為本發(fā)明的圖像場(chǎng)景分類器的程序流程圖。讀取輸入分類判別緩沖區(qū)的數(shù)據(jù),對(duì)當(dāng)前場(chǎng)景進(jìn)行逐一判別,進(jìn)行I幀和P幀QP值調(diào)整,最終確定當(dāng)前場(chǎng)景的經(jīng)驗(yàn)QP值范圍。所述的圖像場(chǎng)景分類器內(nèi)具有輸入幀分類判別緩沖區(qū),保存輸入圖像近幾幀和參考幀,用于進(jìn)行場(chǎng)景判別,實(shí)現(xiàn)圖像的對(duì)比。所述的分類場(chǎng)景包括:白天或黑夜、運(yùn)動(dòng)或靜止、紋理復(fù)雜或簡(jiǎn)單場(chǎng)景。
[0015]所述步驟I中,對(duì)輸入圖像進(jìn)行白天或黑夜場(chǎng)景判斷,用以確定白天和黑夜不同場(chǎng)景時(shí)應(yīng)選取的QP經(jīng)驗(yàn)值。由于夜晚光線弱,傳感器需要增大感光度數(shù)值、加大增益幅度以適應(yīng)較暗的夜景,導(dǎo)致夜景圖像的噪點(diǎn)大。根據(jù)此特點(diǎn),選擇高斯模板對(duì)輸入圖像進(jìn)行整體濾波,將濾波后的圖像與輸入圖像做差,選擇經(jīng)驗(yàn)閾值對(duì)差值圖像進(jìn)行二值化處理,利用直方圖統(tǒng)計(jì)二值化后圖像的噪點(diǎn)信息,若噪點(diǎn)過(guò)多則代表黑夜場(chǎng)景,否則代表白天場(chǎng)景;若為黑夜場(chǎng)景,則增大P幀的QP值,若為白天場(chǎng)景,則減小P幀的QP值。由于運(yùn)動(dòng)場(chǎng)景可引入噪點(diǎn),噪點(diǎn)多時(shí),將P幀的QP值取值增大,以降低P幀的碼流,相應(yīng)地增大I幀的碼流,降低I幀的QP值,以實(shí)現(xiàn)碼率穩(wěn)定。
[0016]所述步驟I中,在經(jīng)過(guò)白天或黑夜場(chǎng)景判斷后,對(duì)輸入圖像進(jìn)行運(yùn)動(dòng)或靜止場(chǎng)景判斷,用以確定運(yùn)動(dòng)和靜止不同場(chǎng)景時(shí)應(yīng)選取的QP經(jīng)驗(yàn)值。采用圖像差值法進(jìn)行判斷,將分類判別緩沖區(qū)內(nèi)的相鄰圖像做幀差處理,通過(guò)差值圖像的特征分析,確定輸入圖像為運(yùn)動(dòng)或靜止場(chǎng)景;若為運(yùn)動(dòng)場(chǎng)景,減小P幀的QP值,若為靜止場(chǎng)景,減小I幀QP值。運(yùn)動(dòng)場(chǎng)景本身P幀信息大,碼流上升,當(dāng)保證碼率時(shí),將P幀的QP值增大,以保證碼率穩(wěn)定。而靜止場(chǎng)景,P幀信息量少,為保證圖像質(zhì)量,可增大I幀,減小I幀QP值,以保證圖像的清晰度。
[0017]所述步驟I中,在經(jīng)過(guò)運(yùn)動(dòng)或靜止場(chǎng)景判斷后,對(duì)輸入圖像進(jìn)行紋理復(fù)雜或簡(jiǎn)單場(chǎng)景,用以確定紋理復(fù)雜度不同的場(chǎng)景應(yīng)選取的QP經(jīng)驗(yàn)值。采用圖像梯度幅度計(jì)算方式判斷,對(duì)輸入圖像的紋理復(fù)雜度進(jìn)行檢測(cè),計(jì)算輸入圖像的梯度幅度后,選取每個(gè)像素最大的梯度幅值,對(duì)此梯度圖像進(jìn)行積分運(yùn)算,得到輸入圖像的紋理復(fù)雜度;若紋理復(fù)雜度高,則減小I幀的QP值,使圖像更加清晰,并增大P幀的QP值,保證實(shí)時(shí)碼率,若紋理復(fù)雜度低,則增大I幀的QP值。
[0018]所述步驟Π中,根據(jù)當(dāng)前幀的灰度直方圖計(jì)算本幀圖像的復(fù)雜度,將本幀圖像的復(fù)雜度歸一化為[0,255],并與當(dāng)前場(chǎng)景的復(fù)