两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種視頻編碼方法及裝置的制造方法

文檔序號(hào):8475419閱讀:674來源:國(guó)知局
一種視頻編碼方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及視頻技術(shù)領(lǐng)域,尤其涉及到一種視頻編碼方法及裝置。
【背景技術(shù)】
[0002]在實(shí)時(shí)視頻發(fā)布系統(tǒng)中的視頻編解碼算法中,I幀(I frame),即獨(dú)立幀,是非常關(guān)鍵的幀,解碼時(shí)只需要本幀數(shù)據(jù)就可以完成。而在實(shí)時(shí)視頻發(fā)布系統(tǒng)中其它類型的幀,即B幀和P幀,都是在I幀的基礎(chǔ)上來進(jìn)行的雙向或單向預(yù)測(cè)編碼。由于I幀占據(jù)了很大的數(shù)據(jù)量,因此,在網(wǎng)絡(luò)帶寬受限時(shí),就會(huì)引起延遲,造成視頻畫面的停滯、卡等現(xiàn)象,影響視頻發(fā)布的實(shí)時(shí)性。
[0003]相對(duì)于I巾貞,B幀(宏塊)和P幀(宏塊)的壓縮率都很小,能夠節(jié)省空間。因此,現(xiàn)有的很多算法(如H.264算法)中,在一組連續(xù)圖像(GOP, Group of Pictures)的視頻中,除了第一幀為I幀以外,其它幀均為P幀和B幀,或者既包括B宏塊又包括P宏塊。對(duì)于一個(gè)G0P,除了第一幀為幀內(nèi)編碼,其它幀均采用幀間編碼的形式進(jìn)行編碼,換言之,各幀圖像數(shù)據(jù)都是依賴于其它幀進(jìn)行編碼。這會(huì)帶來一個(gè)致命的缺點(diǎn),如果某些P幀的宏塊或者某些P宏塊丟失以后,以后所有參照該幀(宏塊)的視頻圖像,都將建立在錯(cuò)誤的預(yù)測(cè)塊上,永遠(yuǎn)不能回復(fù),并會(huì)產(chǎn)生誤差積累,導(dǎo)致圖像嚴(yán)重的錯(cuò)誤。
[0004]此外,一段視頻通常由多個(gè)GOP構(gòu)成,而每一個(gè)GOP都需要一幀I幀圖像數(shù)據(jù),在受到網(wǎng)絡(luò)的約束時(shí),也容易影響視頻發(fā)布的實(shí)時(shí)性。

【發(fā)明內(nèi)容】

[0005]本申請(qǐng)?zhí)峁┮环N視頻編碼方法及其裝置。
[0006]根據(jù)本申請(qǐng)的第一方面,本申請(qǐng)?zhí)峁┮环N視頻編碼方法,包括:
[0007]獲取表征一段視頻圖像的若干幀圖像數(shù)據(jù);
[0008]將每幀圖像數(shù)據(jù)劃分為連續(xù)且不重疊的若干宏塊;
[0009]至少將該段視頻圖像數(shù)據(jù)中第一幀確定為I幀圖像數(shù)據(jù);
[0010]對(duì)I幀圖像數(shù)據(jù)中的各宏塊的圖像數(shù)據(jù)進(jìn)行獨(dú)立編碼;
[0011]在每一幀非I幀圖像數(shù)據(jù)中確定出該幀的獨(dú)立宏塊,且每幀非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的數(shù)量小于該幀圖像數(shù)據(jù)劃分的宏塊總數(shù)量,所有非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的集合至少包括由一幀圖像數(shù)據(jù)劃分出的所有宏塊;
[0012]對(duì)非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的圖像數(shù)據(jù)進(jìn)行獨(dú)立編碼,對(duì)非I幀圖像數(shù)據(jù)中的其它宏塊的圖像數(shù)據(jù)采用非獨(dú)立編碼方式進(jìn)行編碼。
[0013]根據(jù)本申請(qǐng)的第二方面,本申請(qǐng)?zhí)峁┮环N視頻編碼裝置,包括:
[0014]獲取模塊,獲取模塊用于獲取表征一段視頻圖像的若干幀圖像數(shù)據(jù);
[0015]劃分模塊,劃分模塊用于將每幀圖像數(shù)據(jù)劃分為連續(xù)且不重疊的若干宏塊;
[0016]區(qū)分模塊,區(qū)分模塊用于區(qū)分I幀圖像數(shù)據(jù)和非I幀圖像數(shù)據(jù),至少將該段視頻圖像數(shù)據(jù)中第一幀確定為I幀圖像數(shù)據(jù);
[0017]確定模塊,確定模塊用于在每一幀非I幀圖像數(shù)據(jù)中確定出該幀的獨(dú)立宏塊,且每幀非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的數(shù)量小于該幀圖像數(shù)據(jù)劃分的宏塊總數(shù)量,所有非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的集合至少包括由一幀圖像數(shù)據(jù)劃分出的所有宏塊;
[0018]第一編碼模塊,第一編碼模塊用于對(duì)I幀圖像數(shù)據(jù)中的各宏塊的圖像數(shù)據(jù)進(jìn)行獨(dú)立編碼,還用于對(duì)非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的圖像數(shù)據(jù)進(jìn)行獨(dú)立編碼;
[0019]第二編碼模塊,第二編碼模塊用于對(duì)非I幀圖像數(shù)據(jù)中的其它宏塊的圖像數(shù)據(jù)采用非獨(dú)立編碼方式進(jìn)行編碼。
[0020]本申請(qǐng)的有益效果是:本申請(qǐng)?zhí)峁┑囊曨l編碼方法及裝置,可以減小視頻圖像中的誤差累計(jì),降低避免圖像出現(xiàn)錯(cuò)誤的概率。
【附圖說明】
[0021]圖1為本申請(qǐng)實(shí)施例提供的一種視頻編碼裝置結(jié)構(gòu)圖;
[0022]圖2為本申請(qǐng)實(shí)施例確定模塊的結(jié)構(gòu)圖;
[0023]圖3為本申請(qǐng)實(shí)施例公開的一種視頻編碼方法流程圖;
[0024]圖4為本申請(qǐng)實(shí)施例公開的各幀圖像數(shù)據(jù)劃分成宏塊的示意圖;
[0025]圖5為本申請(qǐng)實(shí)施例公開的一種從非I幀圖像數(shù)據(jù)中確定獨(dú)立宏塊的方法流程圖;
[0026]圖6為本申請(qǐng)實(shí)施例公開的對(duì)獨(dú)立宏塊位置遍歷的策略示意圖,其中,(a)示意了按行遍歷的示例;(b)示意了按列遍歷的示例。
【具體實(shí)施方式】
[0027]首先對(duì)本申請(qǐng)用到的術(shù)語進(jìn)行解釋。
[0028]I幀:內(nèi)部畫面(intra picture),為全幀壓縮編碼幀,將全幀圖像信息進(jìn)行JPEG壓縮編碼及傳輸。I幀通常是每個(gè)GOP的第一個(gè)幀,經(jīng)過適度地壓縮,可以當(dāng)成圖象。那么,對(duì)應(yīng)的非I幀則表示除了 I幀以外的其它幀,包括由B宏塊、P宏塊及其組合或者其它形式編碼的宏塊構(gòu)成的圖像數(shù)據(jù)幀。
[0029]獨(dú)立編碼:采用I幀幀內(nèi)壓縮編碼的形式,對(duì)選定的區(qū)域數(shù)據(jù)進(jìn)行JPEG壓縮編碼
/傳輸。
[0030]下面通過【具體實(shí)施方式】結(jié)合附圖對(duì)本申請(qǐng)作進(jìn)一步詳細(xì)說明。
[0031]在本申請(qǐng)實(shí)施例中,在對(duì)一段視頻圖像數(shù)據(jù)編碼時(shí),將非I幀的圖像數(shù)據(jù)幀中的某些宏塊設(shè)置為獨(dú)立編碼的宏塊,并對(duì)獨(dú)立編碼的宏塊的圖像數(shù)據(jù)進(jìn)行獨(dú)立編碼。
[0032]請(qǐng)參考圖1,為本實(shí)施例提供的視頻編碼裝置的結(jié)構(gòu)圖,具體結(jié)構(gòu)包括:
[0033]獲取模塊1,獲取模塊I用于表征一段視頻圖像的若干幀圖像數(shù)據(jù);
[0034]劃分模塊2,劃分模塊2用于將每幀圖像數(shù)據(jù)劃分為連續(xù)且不重疊的若干宏塊;
[0035]區(qū)分模塊3,區(qū)分模塊3用于區(qū)分I幀圖像數(shù)據(jù)和非I幀圖像數(shù)據(jù),至少將該段視頻圖像數(shù)據(jù)中第一幀確定為I幀圖像數(shù)據(jù);進(jìn)一步地,在一種具體實(shí)施例中,區(qū)分模塊3將獲取的一段視頻圖像數(shù)據(jù)中,第一幀確定為I幀,其余幀均為非I幀;
[0036]確定模塊4,確定模塊4用于在每一巾貞非I巾貞圖像數(shù)據(jù)中確定出該巾貞的獨(dú)立宏塊,且每幀非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的數(shù)量小于該幀圖像數(shù)據(jù)劃分的宏塊總數(shù)量,所有非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的集合至少包括由一幀圖像數(shù)據(jù)劃分出的所有宏塊;
[0037]第一編碼模塊5,第一編碼模塊5用于對(duì)I幀圖像數(shù)據(jù)中的各宏塊的圖像數(shù)據(jù)進(jìn)行獨(dú)立編碼,還用于對(duì)非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的圖像數(shù)據(jù)進(jìn)行獨(dú)立編碼;
[0038]第二編碼模塊6,第二編碼模塊6用于對(duì)非I幀圖像數(shù)據(jù)中的其它宏塊的圖像數(shù)據(jù)采用非獨(dú)立編碼方式進(jìn)行編碼。
[0039]在一種具體實(shí)施例中,請(qǐng)參考圖2,確定模塊4包括:
[0040]分組單元41,分組單元41用于將非I幀圖像數(shù)據(jù)分成至少一組;
[0041]確定單元42,確定單元42用于基于一組中的非I幀圖像數(shù)據(jù)幀數(shù)和一幀圖像數(shù)據(jù)劃分出的宏塊數(shù)分別確定各幀圖像數(shù)據(jù)的獨(dú)立宏塊,使得該組所有的獨(dú)立宏塊的集合至少包括由一幀圖像數(shù)據(jù)劃分出的所有宏塊。
[0042]在一種具體實(shí)施例中,確定單元42在每一幀非I幀圖像數(shù)據(jù)中確定出的n/N個(gè)宏塊為獨(dú)立宏塊,其中η為由一幀圖像數(shù)據(jù)劃分出的宏塊數(shù),N為第一組至倒數(shù)第二組各組圖像數(shù)據(jù)的幀數(shù),其中,η和N均為大于I的整數(shù),η為N的倍數(shù)。
[0043]請(qǐng)參考圖3,為本實(shí)施例公開的視頻編碼方法流程圖,適用于上述裝置,具體方法步驟包括:
[0044]步驟100、獲取圖像數(shù)據(jù)。
[0045]獲取表征一段視頻圖像的若干幀圖像數(shù)據(jù)。本領(lǐng)域技術(shù)人員應(yīng)該理解,通常而言,一段視頻圖像包括若干組連續(xù)圖像(GOP, Group of pictures)數(shù)據(jù),而每個(gè)GOP的第一中貞為I幀,其余幀為非I幀,由包括B宏塊、P宏塊及其組合或者其它形式編碼的宏塊構(gòu)成。因此,一般而言,一段視頻圖像的圖像數(shù)據(jù)中會(huì)包括多幀I幀。
[0046]步驟200、劃分宏塊。
[0047]將每幀圖像數(shù)據(jù)劃分為連續(xù)且不重疊的若干宏塊。請(qǐng)參考圖4,每幀圖像數(shù)據(jù)被劃分成連續(xù)且不重疊的U*v個(gè)宏塊,構(gòu)成了 U行V列的宏塊矩陣,其中,U和V為正整數(shù)。在一幀圖像中,宏塊可以通過坐標(biāo)來定位,譬如(i,j)表示第i行第j列位置上的宏塊,其中I彡i彡u,l彡j彡V,均為整數(shù)。
[0048]步驟300、確定I幀。
[0049]至少將該段視頻圖像數(shù)據(jù)中第一幀確定為I幀圖像數(shù)據(jù)。根據(jù)步驟100的討論可知,通常而言,一段視頻圖像會(huì)包括多個(gè)I幀。而在本實(shí)施例中,獲取表征一段視頻圖像的若干幀圖像數(shù)據(jù)后,只需將這些圖像數(shù)據(jù)幀中的第一幀設(shè)為I幀,其余幀均作為非I幀并不再單獨(dú)設(shè)置I幀。換言之,本實(shí)施例中,一段包括多個(gè)連續(xù)圖像組的圖像數(shù)據(jù)中,可以只有第一巾貞為I中貞。
[0050]步驟400、對(duì)I幀獨(dú)立編碼。
[0051]對(duì)I幀圖像數(shù)據(jù)中的各宏塊的圖像數(shù)據(jù)進(jìn)行獨(dú)立編碼。在步驟300確定了 I幀圖像數(shù)據(jù)后,便可對(duì)I幀圖像數(shù)據(jù)中的各宏塊的圖像數(shù)據(jù)進(jìn)行獨(dú)立編碼。
[0052]步驟500、確定非I幀獨(dú)立宏塊。
[0053]本申請(qǐng)的設(shè)計(jì)思路是從非I幀圖像數(shù)據(jù)中確定若干宏塊作為獨(dú)立宏塊,并對(duì)其進(jìn)行獨(dú)立編碼,從而減小誤差累積,降低錯(cuò)誤圖像發(fā)生的概率。
[0054]在每一幀非I幀圖像數(shù)據(jù)中確定出該幀的獨(dú)立宏塊,且每幀非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的數(shù)量小于該幀圖像數(shù)據(jù)劃分的宏塊總數(shù)量,所有非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的集合至少包括由一幀圖像數(shù)據(jù)劃分出的所有宏塊。在一種具體實(shí)施例中,可以根據(jù)系統(tǒng)預(yù)設(shè)的規(guī)則來從非I幀圖像數(shù)據(jù)中選取若干獨(dú)立宏塊。譬如可以確定某些固定位置上的宏塊、也可以隨機(jī)確定若干宏塊、還可以按照一定規(guī)律來確定若干宏塊等。本領(lǐng)域技術(shù)人員應(yīng)該理解,宏塊可以是4x4像素,也可以是16x16、16x8、8x8、8x4等模式。通常而言,一個(gè)宏塊即為一幀圖像編碼的基本單位,在其它實(shí)施例中,也可以將宏塊劃分成更多的子宏塊,而后以子宏塊為基本單位。
[0055]需要說明的是,所有非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的集合至少包括由一幀圖像數(shù)據(jù)劃分出的所有宏塊是指:所有非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊在各自非I幀中的位置(i,j)的集合應(yīng)該至少能夠遍歷(1,I)至(U, V)。
[0056]步驟600、對(duì)非I幀編碼。
[0057]對(duì)非I幀圖像數(shù)據(jù)中的獨(dú)立宏塊的圖像數(shù)據(jù)進(jìn)行獨(dú)立編碼;對(duì)非I幀圖像數(shù)據(jù)中的其它宏塊的圖像數(shù)據(jù)采用非獨(dú)立編碼方式進(jìn)行編碼。其中,非獨(dú)立編碼方式可以采用譬如幀間單向預(yù)測(cè)、幀間雙向預(yù)測(cè)或運(yùn)動(dòng)補(bǔ)償?shù)痊F(xiàn)有的非獨(dú)立編碼的方式來實(shí)現(xiàn)。
[0058]本領(lǐng)域技術(shù)人員應(yīng)該清楚,在對(duì)各宏塊進(jìn)行編碼時(shí),還可以根據(jù)各類型的宏塊語法規(guī)則,采用現(xiàn)有技術(shù)對(duì)各宏塊進(jìn)行標(biāo)識(shí),以便解碼。
[0059]進(jìn)一步,本實(shí)施例還公開了一種優(yōu)選的從每一幀非I幀圖像數(shù)據(jù)中確定獨(dú)立宏塊的方法,請(qǐng)參考圖5,具體方法步驟包括:
[0060]步驟501、將非I
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
色达县| 光泽县| 阜平县| 察哈| 汉阴县| 西城区| 闻喜县| 昌乐县| 阜南县| 丽江市| 绥滨县| 望城县| 凌云县| 吴忠市| 五家渠市| 怀安县| 靖宇县| 吉首市| 全州县| 宜良县| 体育| 永清县| 方山县| 松溪县| 达孜县| 印江| 工布江达县| 文昌市| 皮山县| 长武县| 禄丰县| 朝阳县| 绍兴县| 洛南县| 吴桥县| 慈溪市| 西乡县| 红原县| 微山县| 千阳县| 扶沟县|