欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種視頻編碼方法及視頻解碼方法

文檔序號:7815300閱讀:239來源:國知局
一種視頻編碼方法及視頻解碼方法
【專利摘要】本發(fā)明公開了一種視頻編碼方法,所述視頻編碼方法包括如下步驟:S1a、接收輸入的第一視頻文件VideoIn1;S2a、讀取第一視頻文件VideoIn1的一幀pFrameIn1;對pFrameIn1中的每一行進行哈爾小波變換;并保存進行了哈爾小波變換后pFrameIn1中的低頻部分以及每一行的最后一個像素到pFrameIn21;S3a、對pFrameIn21的每一列進行哈爾小波變換;并保存進行了哈爾小波變換后pFrameIn21中的低頻部分以及每一列的最后一個像素到輸出幀pFrameOut1;將pFrameOut1寫入輸出視頻文件VideoOut1;S4a、重復執(zhí)行步驟S2a、S3a直至視頻文件VideoIn1最后一幀的行、列完成哈爾小波變換,輸出視頻文件VideoOut1。本發(fā)明還公開了一種視頻解碼方法。
【專利說明】一種視頻編碼方法及視頻解碼方法

【技術領域】
[0001]本發(fā)明涉及一種視頻處理技術,尤其涉及一種視頻編碼方法及視頻解碼方法。

【背景技術】
[0002]圖像壓縮是指以較少的比特有損或無損地表示原來的像素矩陣的技術,也稱圖像編碼。
[0003]圖像數(shù)據(jù)之所以能夠被壓縮,就是因為數(shù)據(jù)中存在著冗余。圖像數(shù)據(jù)的冗余主要表現(xiàn)為:圖像中相鄰像素間的相關性引起的空間冗余;圖像序列中不同幀之間存在相關性引起的時間冗余;不同色彩平面或頻譜帶的相關性引起的頻譜冗余。數(shù)據(jù)壓縮的目的就是通過去除這些數(shù)據(jù)冗余來減少表示數(shù)據(jù)所需的比特數(shù)。
[0004]視頻是由多幀圖像所構成的,現(xiàn)有技術中缺乏一種能夠廣泛運用于各種格式視頻,并能高效率的將視頻文件壓縮得盡量小的視頻編解碼方法。


【發(fā)明內容】

[0005]有鑒于此,有必要提供一種適用范圍廣,壓縮率高的視頻編解碼方法。
[0006]本發(fā)明解決其技術問題所采用的技術方案是:構造一種視頻編碼方法,所述視頻編碼方法包括如下步驟:
Sla、接收輸入的第一視頻文件VideoInl ;
S2a、讀取第一視頻文件VideoInl的一巾貞pFramelnl ;對pFramelnl中的每一行進行哈爾小波變換;并保存進行了哈爾小波變換后pFramelnl中的低頻部分以及每一行的最后一個像素到pFrameIn21 ;
S3a、對PFrameIn21的每一列進行哈爾小波變換;并保存進行了哈爾小波變換后pFrameIn21中的低頻部分以及每一列的最后一個像素到輸出巾貞pFrameOutl ;將pFrameOutl寫入輸出視頻文件VideoOutl ;
S4a、重復執(zhí)行步驟S2a、S3a直至視頻文件VideoInl最后一幀的行、列完成哈爾小波變換,輸出視頻文件VideoOutl。
[0007]在本發(fā)明所述的視頻編碼方法中,所述步驟S2a中對pFramelnl的每一行進行哈爾小波變換包括:
將圖像pFramelnl中的每一行縮短一半。
[0008]在本發(fā)明所述的視頻編碼方法中,S3a、對pFrameIn21的每一列進行哈爾小波變換包括:
將圖像pFrameIn21中的每一列縮短一半。
[0009]在本發(fā)明所述的視頻編碼方法中,所述步驟S4a包括如下子步驟:
S41a、判斷是否完成視頻文件VideoInl最后一幀的行、列的哈爾小波變換;
S42a、如果沒有完成視頻文件VideoInl最后一幀的行、列的哈爾小波變換,跳轉到步驟S2a,并執(zhí)行步驟S2a、S3a ;如果已經完成視頻文件VideoInl最后一幀的行、列的哈爾小波變換,輸出視頻文件VideoOut I。
[0010]一種視頻解碼方法,所述視頻解碼方法包括如下步驟:
Sib、接收第二視頻文件VideoIn2 ;
S2b、讀取第二視頻文件VideoIn2中的一巾貞pFrameIn2 ;對pFrameIn2的最后一行和其他行信息進行列哈爾小波逆變換得到pFrameIn22 ;
S3b、對PFrameIn22中的最后一列和其他列信息進行行哈爾小波逆變換得到pFrame0ut2 ;將 pFrame0ut2 寫入輸出視頻文件 Video0ut2 中;
S4b、重復執(zhí)行步驟S2b、S3b直至視頻文件VideoIn2最后一幀的行、列完成行、列哈爾小波逆變換,輸出視頻文件Video0ut2。
[0011]在本發(fā)明所述的視頻解碼方法中,所述步驟S2b中對pFrameIn2的最后一行和其他行信息進行列哈爾小波逆變換得到pFrameIn22包括:
將圖像pFrameIn2中的每一列進行還原得到pFrameIn22, pFrameIn22的行數(shù)為圖像pFrameIn2的行數(shù)減一并乘以二 ;
保存pFrameIn2的最后一行到pFrameIn22中;WpFrameIn22的倒數(shù)第二行開始自底而上計算PFrameIn22中每一行的新像素。
[0012]在本發(fā)明所述的視頻解碼方法中,所述步驟S3b中對pFrameIn22中的最后一列和其他列信息進行行哈爾小波逆變換得到pFrame0ut2包括:
將圖像pFrameIn22中每一行進行還原得到pFrame0ut2, pFrame0ut2的列數(shù)為輸入圖像pFrameIn2的列數(shù)減一并乘以二 ;
保存pFrameIn22的最后一列到pFrame0ut2中;WpFrame0ut2的倒數(shù)第二列開始自右向左計算pFrame0ut2中每一列的新像素。
[0013]在本發(fā)明所述的視頻解碼方法中,所述步驟S4b包括如下子步驟:
S41b、判斷是否完成視頻文件VideoIn2最后一幀的行、列哈爾小波逆變換;
S42a、如果沒有完成視頻文件VideoIn2最后一幀的行、列哈爾小波逆變換,跳轉到步驟S2b,并執(zhí)行步驟S2b、S3b ;如果已經完成視頻文件VideoIn2最后一幀的行、列哈爾小波逆變換,輸出視頻文件Video0ut2。
[0014]本發(fā)明提供的視頻編碼方法以及視頻解碼方法,通過將數(shù)學方法小波變換運用到圖像壓縮中,將圖像或者視頻的每一幀進行多級的小波變換,對于每一級小波變換僅保留低頻部分信息。通過一級小波變換可以將圖象或視頻去掉75%左右的信息,即壓縮成原有信息的25%,而一級變換還原后圖片質量損失很少。
[0015]

【專利附圖】

【附圖說明】
[0016]圖1是本發(fā)明較佳實施例的視頻編碼方法的流程圖;
圖2是本發(fā)明實施例的視頻編碼方法的圖片轉換示意圖;
圖3是本發(fā)明較佳實施例的視頻解碼方法的流程圖;
圖4是本發(fā)明實施例的視頻解碼方法的圖片轉換示意圖;
圖5是本發(fā)明實施例的視頻編碼方法及視頻解碼方法的硬件運行原理圖;
圖6是圖5中GPU對視頻圖像進行處理的示意圖。
[0017]

【具體實施方式】
[0018]為了對本發(fā)明的技術特征、目的和效果有更加清楚的理解,現(xiàn)對照附圖詳細說明本發(fā)明的【具體實施方式】,下述【具體實施方式】以及附圖,僅為更好地理解本發(fā)明,并不對本發(fā)明做任何限制。
[0019]如圖1所示,在本發(fā)明實施例的視頻編碼方法中,所述視頻編碼方法包括如下步驟:
Sla、接收輸入的第一視頻文件VideoInl。
[0020]S2a、讀取第一視頻文件VideoInl的一巾貞pFramelnl ;對pFramelnl中的每一行進行哈爾小波變換;并保存進行了哈爾小波變換后pFramelnl中的低頻部分以及每一行的最后一個像素到pFrameIn21。
[0021]S3a、對pFrameIn21的每一列進行哈爾小波變換;并保存進行了哈爾小波變換后pFrameIn21中的低頻部分以及每一列的最后一個像素到輸出巾貞pFrameOutl ;將pFrameOutl寫入輸出視頻文件VideoOutl。
[0022]S4a、重復執(zhí)行步驟S2a、S3a直至視頻文件VideoInl最后一幀的行、列完成哈爾小波變換,輸出視頻文件Vi deoOut I。
[0023]優(yōu)選地,在本發(fā)明實施例的視頻編碼方法中,所述步驟S2a中對pFramelnl的每一行進行哈爾小波變換包括:
將圖像pFramelnl中的每一行縮短一半。
[0024]優(yōu)選地,在本發(fā)明實施例的視頻編碼方法中,S3a、對pFrameIn21的每一列進行哈爾小波變換包括:
將圖像pFrameIn21中的每一列縮短一半。
[0025]如圖2所示,對于原始圖片a的一級變換來說明變換的過程,因為視頻圖像中的多級變換的每一級變換都是重復一級變換的過程。對于輸入的視頻幀或圖像pFramelnl,首先進行小波行變換,將圖像pFramelnl的每一行縮短一半得到pFrameIn21,接著對pFrameIn21進行小波列變換,將圖像pFrameIn21的每一列縮短一半得到輸出圖像pFrameOutl,這就是壓縮后的圖像C,約為輸入圖像的1/4。之所以說是約等于原圖像的1/4,是因為在小波行變換和小波列變換的時候還保留了被處理圖像的最后一列和最后一行的信息。
[0026]圖片a經過行變換后,每一行縮短一半,并保存圖片a的最后一列al,得到行變后的圖片b ;圖片b經過列變換后,每一列縮短一半,并保存圖片b的最后一行,得到圖片C,這就是一級變換的過程。
[0027]優(yōu)選地,在本發(fā)明實施例的視頻編碼方法中,所述步驟S4a包括如下子步驟:
S41a、判斷是否完成視頻文件VideoInl最后一幀的行、列的哈爾小波變換;
S42a、如果沒有完成視頻文件VideoInl最后一幀的行、列的哈爾小波變換,跳轉到步驟S2a,并執(zhí)行步驟S2a、S3a ;如果已經完成視頻文件VideoInl最后一幀的行、列的哈爾小波變換,輸出視頻文件VideoOutl。
[0028]通過重復S2a和S3a的步驟直至視頻文件VideoInl最后一幀的行、列的哈爾小波變換,能夠完成整個視頻文件的壓縮。
[0029]如圖3所示,本發(fā)明實施例還提供一種視頻解碼方法,所述視頻解碼方法包括如下步驟:
Sib、接收第二視頻文件VideoIn2。
[0030]S2b、讀取第二視頻文件VideoIn2中的一巾貞pFrameIn2 ;對pFrameIn2的最后一行和其他行信息進行列哈爾小波逆變換得到pFrameIn22。
[0031 ] S3b、對pFrameIn22中的最后一列和其他列信息進行行哈爾小波逆變換得到pFrame0ut2 ;將 pFrame0ut2 寫入輸出視頻文件 Video0ut2 中。
[0032]S4b、重復執(zhí)行步驟S2b、S3b直至視頻文件VideoIn2最后一幀的行、列完成行、列哈爾小波逆變換,輸出視頻文件Video0ut2。
[0033]優(yōu)選地,在本發(fā)明實施例提供的視頻解碼方法中,所述步驟S2b中對pFrameIn2的最后一行和其他行信息進行列哈爾小波逆變換得到pFrameIn22包括:
將圖像pFrameIn2中的每一列還原為圖像pFrameIn2的行數(shù)減一的兩倍,得到pFrameIn22;
保存pFrameIn2的最后一行到pFrameIn22中;WpFrameIn22的倒數(shù)第二行開始自底而上計算PFrameIn22中每一行的新像素。
[0034]優(yōu)選地,在本發(fā)明實施例提供的視頻解碼方法中,所述步驟S3b中對pFrameIn22中的最后一列和其他列信息進行行哈爾小波逆變換得到pFrame0ut2包括:
將圖像pFrameIn22中每一行還原為輸入圖像列數(shù)減一的兩倍,得到pFrame0ut2 ;
保存pFrameIn22的最后一列到pFrame0ut2中;WpFrame0ut2的倒數(shù)第二列開始自右向左計算pFrame0ut2中每一列的新像素。
[0035]如圖4所示,以圖2中由原始圖像a壓縮得到的圖片c的一級變換的逆變換來說明,因為視頻文件的多級的逆變換就是重復一級變換的過程。對輸入的視頻幀或圖像pFrameIn2,根據(jù)pFrameIn2的最后一行和其他行信息進行列變,即把每一列還原為輸入圖像行數(shù)減一并乘以二,得到pFrameIn22 ;接著根據(jù)pFrameIn22的最后一列和其他列信息進行行變,即把每一行還原為輸入圖像列數(shù)減一并乘以二 ;從而得到了還原的圖片a。
[0036]對輸入圖片c進行列變,得到圖片b,圖片b的行數(shù)為(y/2+l -1) * 2 ;在對圖片b進行行變得到還原的圖片a,圖片a的列數(shù)為(x/2+l -1)* 2。
[0037]優(yōu)選地,在本發(fā)明實施例提供的視頻解碼方法中,所述步驟S4b包括如下子步驟: S41b、判斷是否完成視頻文件VideoIn2最后一幀的行、列哈爾小波逆變換;
S42a、如果沒有完成視頻文件VideoIn2最后一幀的行、列哈爾小波逆變換,跳轉到步驟S2b,并執(zhí)行步驟S2b、S3b ;如果已經完成視頻文件VideoIn2最后一幀的行、列哈爾小波逆變換,輸出視頻文件Video0ut2。
[0038]本發(fā)明實施例提供的視頻編碼方法以及視頻解碼方法,通過將數(shù)學方法小波變換運用到圖像壓縮中,將圖像或者視頻的每一幀進行多級的小波變換,對于每一級小波變換僅保留低頻部分信息。通過一級小波變換可以將圖象或視頻去掉75%左右的信息,即壓縮成原有信息的25%,而一級變換還原后圖片質量損失很少。
[0039]如圖5所示,本發(fā)明實施例可以運用GPU硬件加速的技術,對于CPU輸入的圖像,經過GPU硬件加速對圖像進行壓縮和解壓縮,然后通過CPU輸出經過GPU處理過的圖像進行硬件加速,大大提聞變換的效率,從而提聞壓縮和解壓縮的效率。
[0040]如圖6所示,在本發(fā)明實施例中的視頻編碼方法以及視頻解碼方法,可以通過GPU對圖像分別進行行處理和列處理。GPU的處理過程相對獨立,而行與行,列于列的處理過程也相對獨立,可見本發(fā)明實施例提供的方法具有天生的可并行性。由于GPU具有高性能的并行計算能力,GPU加速技術已經越來越成熟,基于此,本發(fā)明采用GPU硬件加速技術,以提高視頻文件壓縮和解壓縮的效率。本發(fā)明采用的是NVIDIA的CUDA技術,在NVIDIA的顯卡上對壓縮和解壓縮算法進行加速。本發(fā)明實施例提供的方法也可以利用其他的GPU技術對視頻圖像進行處理,本發(fā)明實施例不僅限于此。
[0041]本說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。
[0042]上面結合附圖對本發(fā)明的實施例進行了描述,但是本發(fā)明并不局限于上述的【具體實施方式】,上述的【具體實施方式】僅僅是示意性的,而不是限制性的,本領域的普通技術人員在本發(fā)明的啟示下,在不脫離本發(fā)明宗旨和權利要求所保護的范圍情況下,還可做出很多形式,這些均屬于本發(fā)明的保護之內。
【權利要求】
1.一種視頻編碼方法,其特征在于,所述視頻編碼方法包括如下步驟: Sla、接收輸入的第一視頻文件VideoInl ; S2a、讀取第一視頻文件VideoInl的一I^pFrameInl ;對pFramelnl中的每一行進行哈爾小波變換;并保存進行了哈爾小波變換后pFramelnl中的低頻部分以及每一行的最后一個像素到pFrameIn21 ; S3a、對PFrameIn21的每一列進行哈爾小波變換;并保存進行了哈爾小波變換后pFrameIn21中的低頻部分以及每一列的最后一個像素到輸出巾貞pFrameOutl ;將pFrameOutl寫入輸出視頻文件VideoOutl ; S4a、重復執(zhí)行步驟S2a、S3a直至視頻文件VideoInl最后一幀的行、列完成哈爾小波變換,輸出視頻文件VideoOutl。
2.根據(jù)權利要求1所述的視頻編碼方法,其特征在于,所述步驟S2a中對pFramelnl的每一行進行哈爾小波變換包括: 將圖像pFramelnl中的每一行縮短一半。
3.根據(jù)權利要求1所述的視頻編碼方法,其特征在于,S3a、對pFrameIn21的每一列進行哈爾小波變換包括: 將圖像pFrameIn21中的每一列縮短一半。
4.根據(jù)權利要求1所述的視頻編碼方法,其特征在于,所述步驟S4a包括如下子步驟: S41a、判斷是否完成視頻文件VideoInl最后一幀的行、列的哈爾小波變換; S42a、如果沒有完成視頻文件VideoInl最后一幀的行、列的哈爾小波變換,跳轉到步驟S2a,并執(zhí)行步驟S2a、S3a ;如果已經完成視頻文件VideoInl最后一幀的行、列的哈爾小波變換,輸出視頻文件VideoOutl。
5.一種視頻解碼方法,其特征在于,所述視頻解碼方法包括如下步驟: Sib、接收第二視頻文件VideoIn2 ; S2b、讀取第二視頻文件VideoIn2中的一巾貞pFrameIn2 ;對pFrameIn2的最后一行和其他行信息進行列哈爾小波逆變換得到pFrameIn22 ; S3b、對PFrameIn22中的最后一列和其他列信息進行行哈爾小波逆變換得到pFrame0ut2 ;將 pFrame0ut2 寫入輸出視頻文件 Video0ut2 中; S4b、重復執(zhí)行步驟S2b、S3b直至視頻文件VideoIn2最后一幀的行、列完成行、列哈爾小波逆變換,輸出視頻文件Video0ut2。
6.根據(jù)權利要求5所述的視頻編碼方法,其特征在于,所述步驟S2b中對pFrameIn2的最后一行和其他行信息進行列哈爾小波逆變換得到pFrameIn22包括: 將圖像pFrameIn2中的每一列進行還原得到pFrameIn22, pFrameIn22的行數(shù)為圖像pFrameIn2的行數(shù)減一并乘以二 ; 保存pFrameIn2的最后一行到pFrameIn22中;從pFrameIn22的倒數(shù)第二行開始自底而上計算PFrameIn22中每一行的新像素。
7.根據(jù)權利要求5所述的視頻編碼方法,其特征在于,所述步驟S3b中對pFrameIn22中的最后一列和其他列信息進行行哈爾小波逆變換得到pFrame0ut2包括: 將圖像pFrameIn22中每一行進行還原得到pFrame0ut2, pFrame0ut2的列數(shù)為輸入圖像pFrameIn2的列數(shù)減一并乘以二 ; 保存pFrameIn22的最后一列到pFrameOut2中;WpFrameOut2的倒數(shù)第二列開始自右向左計算pFrameOut2中每一列的新像素。
8.根據(jù)權利要求5所述的視頻編碼方法,其特征在于,所述步驟S4b包括如下子步驟: S41b、判斷是否完成視頻文件VideoIn2最后一幀的行、列哈爾小波逆變換; S42a、如果沒有完成視頻文件VideoIn2最后一幀的行、列哈爾小波逆變換,跳轉到步驟S2b,并執(zhí)行步驟S2b、S3b ;如果已經完成視頻文件VideoIn2最后一幀的行、列哈爾小波逆變換,輸出視頻文件VideoOut2。
【文檔編號】H04N19/42GK104202609SQ201410495986
【公開日】2014年12月10日 申請日期:2014年9月25日 優(yōu)先權日:2014年9月25日
【發(fā)明者】張開活, 馬小丁, 張瑞圣 申請人:深圳市云朗網絡科技有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
荃湾区| 手机| 巴中市| 张家川| 从江县| 珠海市| 枞阳县| 洛南县| 罗江县| 康平县| 韶关市| 乳山市| 嘉峪关市| 朝阳市| 武义县| 全州县| 津南区| 建瓯市| 卢龙县| 玉溪市| 紫金县| 奎屯市| 集安市| 肇源县| 吴忠市| 固原市| 织金县| 固始县| 陆川县| 湘阴县| 民县| 周至县| 晋州市| 荥阳市| 崇阳县| 来安县| 巴彦县| 宁津县| 股票| 南投市| 息烽县|