本發(fā)明涉及互聯(lián)網(wǎng)業(yè)務(wù)領(lǐng)域,特別涉及一種用于視頻通話過程中實(shí)時(shí)去噪的方法、裝置和終端設(shè)備。
背景技術(shù):
在音視頻通信中,碼率控制和視頻質(zhì)量是視頻通話流暢清晰的關(guān)鍵,如何將碼率控制和視頻質(zhì)量結(jié)合起來是一個(gè)技術(shù)難題,而視頻序列由于光照的不足等原因往往會(huì)受到噪聲的干擾,使畫質(zhì)下降,所以視頻去噪是提高視頻質(zhì)量的關(guān)鍵。
如上所述,在帶寬有限的網(wǎng)絡(luò)中傳輸?shù)囊曨l需經(jīng)過壓縮編碼,壓縮算法通過運(yùn)動(dòng)補(bǔ)償來去除視頻信息的冗余,而噪聲的存在使得運(yùn)動(dòng)估計(jì)的準(zhǔn)確率降低,因此編碼效率降低,碼流增大,對(duì)于帶寬要求更高,并且降低了抗丟包的能力,更容易引起網(wǎng)絡(luò)阻塞。因此,去除視頻序列中的噪聲是很有必要的。
如何消除低照度噪聲,改善視頻圖像質(zhì)量并降低碼流是一個(gè)難點(diǎn)問題。視頻序列去噪的方法,基本可按時(shí)域,頻域來進(jìn)行劃分。時(shí)域通過運(yùn)動(dòng)補(bǔ)償技術(shù),在時(shí)域上跟蹤并去除噪聲,往往在編碼器內(nèi)部實(shí)現(xiàn),與編碼器的關(guān)聯(lián)較大。頻域如通過傅里葉變換為頻域進(jìn)行濾波,基于低通濾波的方法可以去除主要集中在信號(hào)高頻內(nèi)的噪聲,可是也造成了高頻內(nèi)的圖像細(xì)節(jié)的損失,因此導(dǎo)致了降噪和保護(hù)細(xì)節(jié)的矛盾。
技術(shù)實(shí)現(xiàn)要素:
鑒于以上技術(shù)問題,本發(fā)明提供了一種用于視頻通話過程中實(shí)時(shí)去噪的方法、裝置和終端設(shè)備,針對(duì)不同碼率采用不同的去噪?yún)?shù),達(dá)到了通過碼率控制指導(dǎo)視頻去噪以提高視頻質(zhì)量的目的。
根據(jù)本發(fā)明的一個(gè)方面,提供一種用于視頻通話過程中實(shí)時(shí)去噪的方法,包括:
在視頻通話過程中,獲取終端設(shè)備的當(dāng)前碼率;
根據(jù)所述當(dāng)前碼率確定終端設(shè)備的去噪強(qiáng)度因子;
根據(jù)所述去噪強(qiáng)度因子確定去噪強(qiáng)度;
按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪。
在本發(fā)明的一個(gè)實(shí)施例中,根據(jù)所述去噪強(qiáng)度因子確定去噪強(qiáng)度的步驟之后,所述方法還包括:
根據(jù)去噪強(qiáng)度因子確定第一去噪范圍;
在第一去噪范圍內(nèi)按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪。
在本發(fā)明的一個(gè)實(shí)施例中,在視頻通話過程中,所述還包括:
獲取終端設(shè)備的CPU信息;
根據(jù)終端設(shè)備的CPU信息確定去噪策略,其中所述去噪策略包括第二去噪范圍,之后執(zhí)行獲取終端設(shè)備的當(dāng)前碼率的步驟;
在第一去噪范圍內(nèi)按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪的步驟包括:
根據(jù)第一去噪范圍和第二去噪范圍確定第三去噪范圍;
在第三去噪范圍內(nèi)按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪。
在本發(fā)明的一個(gè)實(shí)施例中,根據(jù)第一去噪范圍和第二去噪范圍確定第三去噪范圍的步驟包括:
選擇第一去噪范圍和第二去噪范圍中的范圍最小的一個(gè)去噪范圍作為第三去噪范圍。
在本發(fā)明的一個(gè)實(shí)施例中,在視頻通話過程中,所述方法還包括:
獲取終端設(shè)備的供電信息;
根據(jù)終端設(shè)備的供電信息判斷是否進(jìn)行去噪;
若根據(jù)終端設(shè)備的供電信息判定進(jìn)行去噪,則執(zhí)行獲取終端設(shè)備的CPU信息的步驟。
在本發(fā)明的一個(gè)實(shí)施例中,所述按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪的步驟包括:
按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行小波去噪。
根據(jù)本發(fā)明的另一方面,提供一種用于視頻通話過程中實(shí)時(shí)去噪的裝置,包括碼率采集模塊、參數(shù)獲取模塊、強(qiáng)度獲取模塊和去噪模塊,其中:
碼率采集模塊,用于在視頻通話過程中,獲取終端設(shè)備的當(dāng)前碼率;
參數(shù)獲取模塊,用于根據(jù)碼率采集模塊采集的當(dāng)前碼率確定終端設(shè)備的去噪強(qiáng)度因子;
強(qiáng)度獲取模塊,用于根據(jù)參數(shù)獲取模塊獲取的去噪強(qiáng)度因子確定去噪強(qiáng)度;
去噪模塊,用于按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪。
在本發(fā)明的一個(gè)實(shí)施例中,所述裝置還包括第一范圍獲取模塊,其中:
第一范圍獲取模塊,用于根據(jù)參數(shù)獲取模塊獲取的去噪強(qiáng)度因子確定第一去噪范圍;并指示去噪模塊在第一去噪范圍內(nèi)按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪。
在本發(fā)明的一個(gè)實(shí)施例中,所述裝置還包括CPU信息獲取模塊、第二范圍獲取模塊和第三范圍確定模塊,其中:
CPU信息獲取模塊,用于在視頻通話過程中,獲取終端設(shè)備的CPU信息;
第二范圍獲取模塊,用于根據(jù)終端設(shè)備的CPU信息確定去噪策略,其中所述去噪策略包括第二去噪范圍,之后指示碼率采集模塊執(zhí)行獲取終端設(shè)備的當(dāng)前碼率的操作;
第三范圍確定模塊,用于根據(jù)第一范圍獲取模塊獲取的第一去噪范圍和第二范圍獲取模塊獲取的第二去噪范圍確定第三去噪范圍;并指示去噪模塊在第三去噪范圍內(nèi)按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪。
在本發(fā)明的一個(gè)實(shí)施例中,第三范圍確定模塊用于選擇第一范圍獲取模塊獲取的第一去噪范圍和第二范圍獲取模塊獲取的第二去噪范 圍中的最小范圍,作為第三去噪范圍。
在本發(fā)明的一個(gè)實(shí)施例中,所述裝置還包括供電信息獲取模塊和識(shí)別模塊,其中:
供電信息獲取模塊,用于在視頻通話過程中,獲取終端設(shè)備的供電信息;
識(shí)別模塊,用于根據(jù)終端設(shè)備的供電信息判斷是否進(jìn)行去噪;若根據(jù)終端設(shè)備的供電信息判定進(jìn)行去噪,則指示CPU信息獲取模塊執(zhí)行獲取終端設(shè)備的CPU信息的操作。
在本發(fā)明的一個(gè)實(shí)施例中,去噪模塊用于按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行小波去噪。
根據(jù)本發(fā)明的另一方面,提供一種用于視頻通話過程中實(shí)時(shí)去噪的終端設(shè)備,包括上述任一實(shí)施例所述的用于視頻通話過程中實(shí)時(shí)去噪的裝置。
本發(fā)明針對(duì)視頻通話的特點(diǎn),結(jié)合視頻通話碼率控制的方法,通過碼率控制中碼率的大小控制視頻去噪的范圍和強(qiáng)度,針對(duì)不同碼率采用不同的去噪?yún)?shù),這樣在碼率高的情況下可以保留更多的細(xì)節(jié),而對(duì)于碼率低的情況,盡可能多的去除噪聲,降低碼率。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明用于視頻通話過程中實(shí)時(shí)去噪的方法一個(gè)實(shí)施例的示意圖。
圖2為本發(fā)明用于視頻通話過程中實(shí)時(shí)去噪的方法另一實(shí)施例的示意圖。
圖3為本發(fā)明用于視頻通話過程中實(shí)時(shí)去噪的裝置一個(gè)實(shí)施例的 示意圖。
圖4為本發(fā)明用于視頻通話過程中實(shí)時(shí)去噪的裝置另一實(shí)施例的示意圖。
具體實(shí)施方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。以下對(duì)至少一個(gè)示例性實(shí)施例的描述實(shí)際上僅僅是說明性的,決不作為對(duì)本發(fā)明及其應(yīng)用或使用的任何限制?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
除非另外具體說明,否則在這些實(shí)施例中闡述的部件和步驟的相對(duì)布置、數(shù)字表達(dá)式和數(shù)值不限制本發(fā)明的范圍。
同時(shí),應(yīng)當(dāng)明白,為了便于描述,附圖中所示出的各個(gè)部分的尺寸并不是按照實(shí)際的比例關(guān)系繪制的。
對(duì)于相關(guān)領(lǐng)域普通技術(shù)人員已知的技術(shù)、方法和設(shè)備可能不作詳細(xì)討論,但在適當(dāng)情況下,所述技術(shù)、方法和設(shè)備應(yīng)當(dāng)被視為授權(quán)說明書的一部分。
在這里示出和討論的所有示例中,任何具體值應(yīng)被解釋為僅僅是示例性的,而不是作為限制。因此,示例性實(shí)施例的其它示例可以具有不同的值。
應(yīng)注意到:相似的標(biāo)號(hào)和字母在下面的附圖中表示類似項(xiàng),因此,一旦某一項(xiàng)在一個(gè)附圖中被定義,則在隨后的附圖中不需要對(duì)其進(jìn)行進(jìn)一步討論。
圖1為本發(fā)明用于視頻通話過程中實(shí)時(shí)去噪的方法一個(gè)實(shí)施例的示意圖。優(yōu)選的,本實(shí)施例可由用于視頻通話過程中實(shí)時(shí)去噪的裝置執(zhí)行。該方法包括以下步驟:
步驟101,在視頻通話過程中,獲取終端設(shè)備的當(dāng)前碼率r。
步驟102,根據(jù)所述當(dāng)前碼率確定終端設(shè)備的去噪強(qiáng)度因子t。
在本發(fā)明的一個(gè)實(shí)施例中,步驟102可以包括:根據(jù)公式(1)來獲取去噪強(qiáng)度因子t,其中rmax為最大碼率。
t=log(rmax/r) (1)
步驟103,根據(jù)所述去噪強(qiáng)度因子確定去噪強(qiáng)度。
當(dāng)r越小時(shí),去噪強(qiáng)度因子t越大,去噪強(qiáng)度越大;當(dāng)r越大時(shí)去噪強(qiáng)度因子t越小,去噪強(qiáng)度越??;當(dāng)r達(dá)到最大值rmax時(shí)去噪強(qiáng)度因子t為0,去噪強(qiáng)度為0。
步驟104,按照所述去噪強(qiáng)度對(duì)視頻信號(hào)(視頻YUV數(shù)據(jù))進(jìn)行去噪,其中所述去噪強(qiáng)度作為去噪算法中的去噪?yún)?shù);之后將去噪之后的數(shù)據(jù)送入視頻編碼器。
在本發(fā)明的一個(gè)實(shí)施例中,步驟103之后,所述方法還可以包括:根據(jù)去噪強(qiáng)度因子t確定第一去噪范圍;在第一去噪范圍內(nèi)按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪。
在本發(fā)明的一個(gè)實(shí)施例中,根據(jù)去噪強(qiáng)度因子t確定第一去噪范圍的步驟可以包括:當(dāng)t大于0小于0.3時(shí),第一去噪范圍為Y平面,只進(jìn)行Y平面降噪;當(dāng)t大于0.3時(shí),第一去噪范圍為YUV平面,則對(duì)Y平面、U平面和V平面都進(jìn)行降噪。
基于本發(fā)明上述實(shí)施例提供的用于視頻通話過程中實(shí)時(shí)去噪的方法,針對(duì)不同的碼率控制值設(shè)置不同的去噪?yún)?shù)以控制去噪的范圍和強(qiáng)度。本發(fā)明上述實(shí)施例通過終端設(shè)備得到的碼率控制數(shù)值,判斷網(wǎng)絡(luò)帶寬情況,當(dāng)碼率較低時(shí),說明網(wǎng)絡(luò)帶寬比較小,此時(shí)需要加大視頻去噪的范圍和程度,盡量使視頻圖像變得平滑,從而更好的獲得較低的碼率;當(dāng)碼率較高時(shí),說明帶寬較好,可以減少視頻去噪的范圍和強(qiáng)度,以保持更好的細(xì)節(jié)。
在本發(fā)明的一個(gè)實(shí)施例中,步驟104中,所述按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪的步驟可以包括:按照所述去噪強(qiáng)度,采用小波去噪算法對(duì)視頻信號(hào)進(jìn)行去噪,其中所述去噪強(qiáng)度作為小波去噪算法中的去噪?yún)?shù);之后將去噪之后的數(shù)據(jù)送入視頻編碼器。
在本發(fā)明的一個(gè)實(shí)施例中,小波去噪的方法具體可以包括:對(duì)小 波分解后的各層系數(shù)模大于和小于某閾值的系數(shù)分別進(jìn)行處理,然后利用處理后的小波系數(shù)重構(gòu)出消噪后的圖像。噪聲在小波域?qū)?yīng)的系數(shù)仍滿足高斯白噪分布,根據(jù)高斯分布的特性,大部分噪聲系數(shù)都位于[-3*sigma,3*sigma]區(qū)間內(nèi)。對(duì)于小波系數(shù)的閾值,硬閾值函數(shù)處理簡(jiǎn)單,會(huì)導(dǎo)致去噪后結(jié)果產(chǎn)生局部的抖動(dòng),軟閾值函數(shù)方法考慮了平滑性的需求,小波系數(shù)在軟閾值函數(shù)處理之后會(huì)比較平滑。因此本發(fā)明采用軟閾值方法進(jìn)行小波去噪。
本發(fā)明上述實(shí)施例采用小波去噪方式,通過小波變換為時(shí)頻域,通過時(shí)頻分析進(jìn)行濾波,小波變換方法可利用時(shí)頻域的關(guān)聯(lián),在濾波的同時(shí)可以更好的保護(hù)視頻圖像的細(xì)節(jié),以盡量在實(shí)現(xiàn)去噪的同時(shí)保持圖像細(xì)節(jié)。
本發(fā)明上述實(shí)施例針對(duì)視頻通話的特點(diǎn),結(jié)合視頻通話碼率控制的方法,通過碼率控制中碼率的大小控制視頻去噪的范圍和強(qiáng)度,在降低圖像背景噪聲的同時(shí),盡量保持了人臉部分紋理清晰,邊緣輪廓完整不失真。
圖2為本發(fā)明用于視頻通話過程中實(shí)時(shí)去噪的方法另一實(shí)施例的示意圖。優(yōu)選的,本實(shí)施例可由用于視頻通話過程中實(shí)時(shí)去噪的裝置執(zhí)行。該方法包括以下步驟:
步驟201,在視頻通話過程中,獲取終端設(shè)備的供電信息。
在本發(fā)明的一個(gè)實(shí)施例中,所述供電信息包括終端設(shè)備的供電方式、電池電量、電池溫度情況等信息。
步驟202,根據(jù)終端設(shè)備的供電信息判斷是否進(jìn)行去噪。若根據(jù)終端設(shè)備的供電信息判定可以進(jìn)行去噪,則執(zhí)行步驟203;否則,若根據(jù)終端設(shè)備的供電信息判定不可以進(jìn)行去噪,則執(zhí)行步驟210。
在本發(fā)明的一個(gè)實(shí)施例中,步驟202具體可以包括:當(dāng)手機(jī)使用USB充電模式供電時(shí)或者手機(jī)電池電量較高(手機(jī)電量大于一個(gè)預(yù)定值)時(shí),判定應(yīng)進(jìn)行視頻去噪,打開視頻去噪,即執(zhí)行步驟203;在非USB充電模式并且手機(jī)電量較少(手機(jī)電量小于一個(gè)預(yù)定值)時(shí),判定不應(yīng)進(jìn)行視頻去噪,執(zhí)行步驟210,關(guān)閉去噪算法,減少手 機(jī)CPU計(jì)算量,以提高手機(jī)視頻通話時(shí)間。
在本發(fā)明的另一實(shí)施例中,步驟202具體可以包括:當(dāng)電池溫度過高電池過熱(電池溫度大于一個(gè)預(yù)定值)時(shí),則判定不應(yīng)進(jìn)行視頻去噪,執(zhí)行步驟210,關(guān)閉視頻去噪,保證視頻通話的正常進(jìn)行。
步驟203,獲取終端設(shè)備的CPU信息,其中CPU信息可以包括CPU內(nèi)核數(shù),CPU頻率等CPU參數(shù)。
步驟204,根據(jù)終端設(shè)備的CPU信息確定去噪策略,其中所述去噪策略包括確定第二去噪范圍。
在本發(fā)明的另一實(shí)施例中,步驟204具體可以包括:
1、根據(jù)終端設(shè)備的CPU信息判斷終端設(shè)備的計(jì)算能力是否大于預(yù)定閾值。
2、若終端設(shè)備的計(jì)算能力大于預(yù)定閾值(即終端設(shè)備擁有較強(qiáng)計(jì)算能力),則所述第二去噪范圍為Y平面、U平面和V平面,即對(duì)圖像的Y平面、U平面和V平面都進(jìn)行去噪。
3、若終端設(shè)備的計(jì)算能力不大于預(yù)定閾值(即終端設(shè)備計(jì)算能力一般),則所述第二去噪范圍為Y平面,即只對(duì)亮度塊(Y平面)進(jìn)行去噪,而不對(duì)色度塊濾波,達(dá)到減少計(jì)算量的目的。
步驟205,獲取終端設(shè)備的當(dāng)前碼率r。
步驟206,根據(jù)所述當(dāng)前碼率基于公式(1)確定終端設(shè)備的去噪強(qiáng)度因子t。
步驟207,根據(jù)所述去噪強(qiáng)度因子確定去噪強(qiáng)度和第一去噪范圍。
步驟208,根據(jù)第一去噪范圍和第二去噪范圍確定第三去噪范圍。
在本發(fā)明的一個(gè)實(shí)施例中,步驟208可以包括:選擇第一去噪范圍和第二去噪范圍中的范圍最小的一個(gè)去噪范圍作為第三去噪范圍。
例如:若步驟204中確定的第二去噪范圍為Y平面、U平面和V平面,而204中確定的第二去噪范圍為Y平面,則最終確定的第三去噪范圍為第一去噪范圍和第二去噪范圍二者中較小的一個(gè),即第三去噪范圍為Y平面。
若步驟204中確定的第二去噪范圍為Y平面,而204中確定的第 二去噪范圍為Y平面、U平面和V平面,則最終確定的第三去噪范圍為第一去噪范圍和第二去噪范圍二者中較小的一個(gè),即第三去噪范圍為Y平面。
步驟209,在第三去噪范圍內(nèi),按照所述去噪強(qiáng)度,采用小波去噪算法對(duì)視頻信號(hào)進(jìn)行去噪;之后將去噪之后的數(shù)據(jù)送入視頻編碼器。之后,不再執(zhí)行本實(shí)施例的其它步驟。
步驟210,不進(jìn)行視頻去噪(關(guān)閉視頻去噪)。
本發(fā)明上述實(shí)施例針對(duì)不同碼率采用不同的去噪?yún)?shù),這樣在碼率高的情況下可以保留更多的細(xì)節(jié),而對(duì)于碼率低的情況,盡可能多的去除噪聲,降低碼率;并且根據(jù)終端的處理能力選擇不同的YUV平面進(jìn)行處理以減少對(duì)CPU的壓力;還根據(jù)手機(jī)供電方式和電池電量選擇是否開啟和關(guān)閉去噪,以提高視頻通話時(shí)間;并且考慮電池溫度情況,當(dāng)電池溫度較高電池過熱時(shí)則關(guān)閉視頻去噪,以保證視頻通話的正常進(jìn)行。
在本發(fā)明一個(gè)實(shí)施例中,圖2實(shí)施例中獲取第二去噪范圍的步驟(步驟203和步驟204)和獲取第一去噪范圍的步驟(步驟205-步驟207)的前后順序可以調(diào)換。即,在本發(fā)明一個(gè)實(shí)施例中,所述方法也可以在根據(jù)終端設(shè)備的供電信息判定可以進(jìn)行去噪的情況下,先執(zhí)行獲取第一去噪范圍的步驟,再執(zhí)行獲取第二去噪范圍。
本發(fā)明上述實(shí)施例結(jié)合網(wǎng)絡(luò)傳輸碼率控制以及終端設(shè)備配置、設(shè)備狀態(tài),達(dá)到通過碼率控制指導(dǎo)視頻去噪以提高視頻質(zhì)量的目的。
本發(fā)明上述實(shí)施例在音視頻通信中,根據(jù)不同終端碼率控制參數(shù)和不同的供電方式、電池電量和溫度情況,決定是否打開視頻去噪處理,設(shè)定不同的去噪范圍和強(qiáng)度,同時(shí)根據(jù)手機(jī)CPU的處理能力選擇去噪的視頻YUV平面,利用小波去噪,實(shí)現(xiàn)視頻數(shù)據(jù)的噪聲去除,同時(shí)獲得更好的碼率控制效果。
圖3為本發(fā)明用于視頻通話過程中實(shí)時(shí)去噪的裝置一個(gè)實(shí)施例的示意圖。所述裝置包括碼率采集模塊301、參數(shù)獲取模塊302、強(qiáng)度獲 取模塊303和去噪模塊304,其中:
碼率采集模塊301,用于在視頻通話過程中,獲取終端設(shè)備的當(dāng)前碼率。
參數(shù)獲取模塊302,用于根據(jù)碼率采集模塊301采集的當(dāng)前碼率確定終端設(shè)備的去噪強(qiáng)度因子。
在本發(fā)明的一個(gè)實(shí)施例中,參數(shù)獲取模塊302具體用于根據(jù)公式(1)來獲取去噪強(qiáng)度因子。
強(qiáng)度獲取模塊303,用于根據(jù)參數(shù)獲取模塊302獲取的去噪強(qiáng)度因子確定去噪強(qiáng)度。
去噪模塊304,用于按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪,之后將去噪之后的數(shù)據(jù)送入視頻編碼器。
在本發(fā)明的一個(gè)實(shí)施例中,去噪模塊304具體用于按照所述去噪強(qiáng)度,采用小波去噪算法對(duì)視頻信號(hào)進(jìn)行小波去噪。
基于本發(fā)明上述實(shí)施例提供的用于視頻通話過程中實(shí)時(shí)去噪的裝置,通過終端設(shè)備得到的碼率控制數(shù)值,判斷網(wǎng)絡(luò)帶寬情況,當(dāng)碼率較低時(shí),說明網(wǎng)絡(luò)帶寬比較小,此時(shí)需要加大視頻去噪的范圍和程度,盡量使視頻圖像變得平滑,從而更好的獲得較低的碼率;當(dāng)碼率較高時(shí),說明帶寬較好,可以減少視頻去噪的范圍和強(qiáng)度,以保持更好的細(xì)節(jié)。
本發(fā)明上述實(shí)施例采用小波去噪方式,通過小波變換為時(shí)頻域,通過時(shí)頻分析進(jìn)行濾波,小波變換方法可利用時(shí)頻域的關(guān)聯(lián),在濾波的同時(shí)可以更好的保護(hù)視頻圖像的細(xì)節(jié),以盡量在實(shí)現(xiàn)去噪的同時(shí)保持圖像細(xì)節(jié)。
圖4為本發(fā)明用于視頻通話過程中實(shí)時(shí)去噪的裝置另一實(shí)施例的示意圖。與圖3所示實(shí)施例相比,在圖4所示實(shí)施例中,所述裝置還可以包括第一范圍獲取模塊305,其中:
第一范圍獲取模塊305,用于根據(jù)參數(shù)獲取模塊302獲取的去噪強(qiáng)度因子確定第一去噪范圍;并指示去噪模塊304在第一去噪范圍內(nèi)按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪。
本發(fā)明上述實(shí)施例針對(duì)視頻通話的特點(diǎn),結(jié)合視頻通話碼率控制的方法,通過碼率控制中碼率的大小控制視頻去噪的范圍和強(qiáng)度,在降低圖像背景噪聲的同時(shí),盡量保持人臉部分紋理清晰,邊緣輪廓完整不失真。
在本發(fā)明的一個(gè)實(shí)施例中,如圖4所示,所述裝置還可以包括CPU信息獲取模塊306、第二范圍獲取模塊307和第三范圍確定模塊308,其中:
CPU信息獲取模塊306,用于在視頻通話過程中,獲取終端設(shè)備的CPU信息,其中CPU信息包括CPU內(nèi)核數(shù),CPU頻率等CPU參數(shù)。
第二范圍獲取模塊307,用于根據(jù)終端設(shè)備的CPU信息確定去噪策略,其中所述去噪策略包括第二去噪范圍,之后指示碼率采集模塊301執(zhí)行獲取終端設(shè)備的當(dāng)前碼率的操作。
在本發(fā)明的另一實(shí)施例中,第二范圍獲取模塊307具體可以用于根據(jù)終端設(shè)備的CPU信息判斷終端設(shè)備的計(jì)算能力是否大于預(yù)定閾值;若終端設(shè)備的計(jì)算能力大于預(yù)定閾值,則確定所述第二去噪范圍為Y平面、U平面和V平面;若終端設(shè)備的計(jì)算能力不大于預(yù)定閾值,則確定所述第二去噪范圍為Y平面,即只對(duì)亮度塊(Y平面)進(jìn)行去噪,而不對(duì)色度塊濾波,達(dá)到減少計(jì)算量的目的。
第三范圍確定模塊308,用于根據(jù)第一范圍獲取模塊305獲取的第一去噪范圍和第二范圍獲取模塊307獲取的第二去噪范圍確定第三去噪范圍;并指示去噪模塊304在第三去噪范圍內(nèi)按照所述去噪強(qiáng)度對(duì)視頻信號(hào)進(jìn)行去噪。
在本發(fā)明的一個(gè)實(shí)施例中,第三范圍確定模塊308具體用于選擇第一范圍獲取模塊305獲取的第一去噪范圍和第二范圍獲取模塊307獲取的第二去噪范圍中的最小去噪范圍,作為第三去噪范圍。
本發(fā)明上述實(shí)施例綜合考慮終端的當(dāng)前碼率和CPU處理能力來確定最終的去噪范圍,可以根據(jù)終端的處理能力選擇不同的YUV平面進(jìn)行處理以減少對(duì)CPU的壓力。
在本發(fā)明的一個(gè)實(shí)施例中,如圖4所示,所述裝置還可以包括供電信息獲取模塊309和識(shí)別模塊310,其中:
供電信息獲取模塊309,用于在視頻通話過程中,獲取終端設(shè)備的供電信息。
在本發(fā)明的一個(gè)實(shí)施例中,所述供電信息包括手機(jī)供電方式、電池電量、電池溫度情況等信息。
識(shí)別模塊310,用于根據(jù)終端設(shè)備的供電信息判斷是否進(jìn)行去噪;若根據(jù)終端設(shè)備的供電信息判定進(jìn)行去噪,則指示CPU信息獲取模塊306執(zhí)行獲取終端設(shè)備的CPU信息的操作。
在本發(fā)明的一個(gè)實(shí)施例中,識(shí)別模塊310具體可以用于當(dāng)手機(jī)使用USB充電模式供電時(shí)或者手機(jī)電池電量較高(手機(jī)電量大于一個(gè)預(yù)定值)時(shí),判定應(yīng)進(jìn)行視頻去噪,指示CPU信息獲取模塊306執(zhí)行獲取終端設(shè)備的CPU信息的操作;在非USB充電模式并且手機(jī)電量較少(手機(jī)電量小于一個(gè)預(yù)定值)時(shí),判定不應(yīng)進(jìn)行視頻去噪,關(guān)閉去噪算法(即不觸發(fā)CPU信息獲取模塊306工作),減少手機(jī)CPU計(jì)算量,以提高手機(jī)視頻通話時(shí)間。
在本發(fā)明的另一實(shí)施例中,識(shí)別模塊310具體可以用于當(dāng)電池溫度小于一個(gè)預(yù)定值時(shí),則判定可以進(jìn)行視頻去噪,指示CPU信息獲取模塊306執(zhí)行獲取終端設(shè)備的CPU信息的操作;當(dāng)電池溫度過高電池過熱(電池溫度大于一個(gè)預(yù)定值)時(shí),則判定不應(yīng)進(jìn)行視頻去噪,關(guān)閉視頻去噪(不觸發(fā)CPU信息獲取模塊306工作),保證視頻通話的正常進(jìn)行。
本發(fā)明上述實(shí)施例還可以根據(jù)手機(jī)供電方式和電池電量選擇是否開啟和關(guān)閉去噪,以提高視頻通話時(shí)間;并且考慮電池溫度情況,當(dāng)電池溫度較高電池過熱時(shí)則關(guān)閉視頻去噪,以保證視頻通話的正常進(jìn)行。
根據(jù)本發(fā)明的另一方面,提供一種用于視頻通話過程中實(shí)時(shí)去噪的終端設(shè)備,包括上述任一實(shí)施例(例如圖3或圖4實(shí)施例)中所述的 用于視頻通話過程中實(shí)時(shí)去噪的裝置。
在本發(fā)明的一個(gè)實(shí)施例中,所述終端設(shè)備可以是具備視頻通話功能的終端設(shè)備,例如具備視頻通話功能的移動(dòng)終端。
基于本發(fā)明上述實(shí)施例提供的用于視頻通話過程中實(shí)時(shí)去噪的終端設(shè)備,在音視頻通信中,可以根據(jù)不同終端碼率控制參數(shù)和不同的供電方式、電池電量和溫度情況,決定是否打開視頻去噪處理,設(shè)定不同的去噪范圍和強(qiáng)度,同時(shí)可以根據(jù)手機(jī)CPU的處理能力選擇去噪的視頻YUV平面,利用小波去噪,實(shí)現(xiàn)視頻數(shù)據(jù)的噪聲去除,同時(shí)可以獲得更好的碼率控制效果。
本發(fā)明上述實(shí)施例可以通過碼率控制中碼率的大小控制視頻去噪的范圍和強(qiáng)度,在降低圖像背景噪聲的同時(shí),盡量保持人臉部分紋理清晰,邊緣輪廓完整不失真。
下面通過具體示例對(duì)本發(fā)明進(jìn)行說明:
在本發(fā)明一個(gè)具體實(shí)施例中,移動(dòng)終端A(三星note3)和移動(dòng)終端B(華為P7)均包括本發(fā)明圖3或圖4實(shí)施例所述的用于視頻通話過程中實(shí)時(shí)去噪的裝置。
移動(dòng)終端A(三星note3)和移動(dòng)終端B(華為P7)處于同一局域網(wǎng)中,二者均為WIFI接入,移動(dòng)終端A連接WIFI路由器C,移動(dòng)終端B連接WIFI路由器D,其中note3的CPU硬件配置信息為1.6GHz四核處理器,華為P7的硬件配置信息為1.8GHz四核處理器。攝像頭采集YUV分辨率均為352*288。
當(dāng)移動(dòng)終端A視頻呼叫移動(dòng)終端B,移動(dòng)終端B點(diǎn)擊接聽建立視頻通話,此時(shí)移動(dòng)終端A和移動(dòng)終端B攝像頭開始采集視頻YUV數(shù)據(jù)。
首先,移動(dòng)終端A和移動(dòng)終端B讀取各自的供電方式、電池電量和電池溫度信息。通過android.os.BatteryManager所讀取的電池信息分別為:
移動(dòng)終端A為非充電狀態(tài):
BatteryManager.BATTERY_STATUS_NOT_CHARGING,
移動(dòng)終端B為充電狀態(tài):
BatteryManager.BATTERY_STATUS_CHARGING,
移動(dòng)終端A的剩余電池電量為63%,移動(dòng)終端B的剩余電池電量為49%,移動(dòng)終端A電池溫度為35度,移動(dòng)終端B電池溫度為34度,通過判斷,均打開視頻去噪功能。
之后,移動(dòng)終端A和移動(dòng)終端B分別讀取各自的CPU參數(shù)。移動(dòng)終端A獲得的參數(shù)為1.6GHz四核處理器,移動(dòng)終端B讀取的參數(shù)為1.8GHz四核處理器,均支持三個(gè)YUV平面同時(shí)進(jìn)行去噪處理。
然后,移動(dòng)終端A和移動(dòng)終端B分別讀取當(dāng)前碼率控制參數(shù)。視頻通話剛開始時(shí)該參數(shù)是一樣的初始碼率設(shè)置,即50kbps。經(jīng)過幾秒之后獲得實(shí)時(shí)的碼率參數(shù),移動(dòng)終端A為125kbps,移動(dòng)終端B為219kbps,移動(dòng)終端A的碼率參數(shù)較低,所以采用較大去噪強(qiáng)度,移動(dòng)終端B碼率參數(shù)較高,采用較小去噪強(qiáng)度。其中最大碼率rmax設(shè)置均為400kbps,所以計(jì)算的去噪強(qiáng)度移動(dòng)終端A為0.5,YUV平面都進(jìn)行降噪;移動(dòng)終端B為0.26,只對(duì)Y平面進(jìn)行降噪。
之后,移動(dòng)終端A和移動(dòng)終端B分別應(yīng)用各自的去噪?yún)?shù)對(duì)YUV數(shù)據(jù)進(jìn)行小波去噪,得到去噪后的YUV數(shù)據(jù)送入編碼器中。
經(jīng)過30分鐘后,移動(dòng)終端A電池溫度為44度,電池電量為43%,50分鐘視頻通話后電池電量為30%,溫度為45度;58分鐘時(shí)電池電量為20%,溫度為45度,此時(shí)因?yàn)殡娏枯^低,移動(dòng)終端A關(guān)閉視頻去噪功能。
移動(dòng)終端B通話30分鐘之后電池溫度為45度,之后一直保持在45度,因?yàn)橐恢痹赨SB充電狀態(tài),電池電量沒有變化,所以一直開啟去噪功能。
在上面所描述的碼率采集模塊301、參數(shù)獲取模塊302、強(qiáng)度獲取模塊303、去噪模塊304、第一范圍獲取模塊305、CPU信息獲取模塊306、第二范圍獲取模塊307、第三范圍確定模塊308、供電信息獲取模塊309、識(shí)別模塊310等功能單元可以實(shí)現(xiàn)為用于執(zhí)行本申 請(qǐng)所描述功能的通用處理器、可編程邏輯控制器(PLC)、數(shù)字信號(hào)處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場(chǎng)可編程門陣列(FPGA)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件組件或者其任意適當(dāng)組合。
至此,已經(jīng)詳細(xì)描述了本發(fā)明。為了避免遮蔽本發(fā)明的構(gòu)思,沒有描述本領(lǐng)域所公知的一些細(xì)節(jié)。本領(lǐng)域技術(shù)人員根據(jù)上面的描述,完全可以明白如何實(shí)施這里公開的技術(shù)方案。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲(chǔ)于一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,上述提到的存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。
本發(fā)明的描述是為了示例和描述起見而給出的,而并不是無遺漏的或者將本發(fā)明限于所公開的形式。很多修改和變化對(duì)于本領(lǐng)域的普通技術(shù)人員而言是顯然的。選擇和描述實(shí)施例是為了更好說明本發(fā)明的原理和實(shí)際應(yīng)用,并且使本領(lǐng)域的普通技術(shù)人員能夠理解本發(fā)明從而設(shè)計(jì)適于特定用途的帶有各種修改的各種實(shí)施例。