一種幀率上采樣中的運動估計方法和裝置制造方法
【專利摘要】本發(fā)明實施例公開一種幀率上采樣中的運動估計方法和裝置。在網(wǎng)絡(luò)傳輸時,除原始碼流之外,還增加一路參考碼流;方法包括:接收原始碼流和參考碼流,參考碼流的幀率大于或等于原始碼流的幀率,且小于或等于視頻源的幀率;根據(jù)參考碼流中的參考幀間的運動矢量,確定原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量;針對原始碼流中的原始幀的各個宏塊,基于原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量,并得到原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量。根據(jù)本發(fā)明實施例,可以縮短運動估計中搜索最佳運動矢量時間,進而也減少因過長的搜索過程所消耗的系統(tǒng)開銷。
【專利說明】一種幀率上采樣中的運動估計方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,特別是涉及一種幀率上采樣中的運動估計方法和裝置。
【背景技術(shù)】
[0002]巾貞率上采樣(FRUC,FrameRate Up Conversion)俗稱倍頻。巾貞率上采樣的一個主要功能是提高視頻幀率,并且,針對該功能,幀率上采樣的一個應(yīng)用場景是,將標(biāo)準(zhǔn)幀率的視頻提高一倍或數(shù)倍,這樣可以顯著改善因為離散的視頻采樣所造成的畫面不連續(xù)的問題(特別是運動畫面不連續(xù)的問題),從而提高用戶觀賞體驗。幀率上采樣的另一個主要功能是有效地降低圖像數(shù)據(jù)在傳輸時所占用的帶寬,而針對該功能,幀率上采樣的另一個應(yīng)用場景是,在圖像數(shù)據(jù)傳輸時,先將標(biāo)準(zhǔn)幀率降低(通過幀率下采樣),在圖像數(shù)據(jù)播放時,再恢復(fù)至原始的標(biāo)準(zhǔn)幀率(通過幀率上采樣)。
[0003]簡單的幀率上采樣方法有幀重復(fù)和幀平均。但是,這兩種方法更適用于靜止畫面,而對于運動畫面來說,采樣這兩種方法會導(dǎo)致畫面出現(xiàn)拖尾,無法滿足用戶的觀賞體驗。因此,為了適用于運動畫面,現(xiàn)有技術(shù)中還出現(xiàn)了運動補償?shù)膸噬喜蓸?MC-FRUC,MotionCompensated Frame Rate Up Conversion)方法。
[0004]運動補償?shù)慕碡懧噬喜蓸臃椒ò▋纱蟛糠?運動估計(ME,Motion Estimation)和運動補償插值(MCI, Motion Compensated Interpolation)。其中,由于插值出來巾貞的是一個未知幀,沒有原始幀可供計算,因此,運動估計的精度決定了運動補償插值的質(zhì)量,運動估計在運動補償?shù)膸噬喜蓸又蟹浅V匾?br>
[0005]運動估計的基本原理是先將圖像數(shù)據(jù)(或者圖像序列)的每一個幀分成許多互不重疊的宏塊(假設(shè)一個宏塊內(nèi)所有像素的位移量都相同),然后針對每一個幀內(nèi)的每一個宏塊,在一個最佳運動矢量的目標(biāo)范圍(Search Range)內(nèi)搜索該宏塊的最佳運動矢量。而每一個幀內(nèi)的所有宏塊的最佳運動矢量就可以認為是每一個幀的最佳運動矢量。下面以一個幀內(nèi)的一個宏塊為例,說明如何在一個最佳運動矢量的目標(biāo)范圍內(nèi)搜索該宏塊的最佳運動矢量。在該幀的前一個幀或后一個幀中的某一個給定的搜索區(qū)域(該搜索區(qū)域的大小由最佳運動矢量范圍決定,即,位于該搜索區(qū)域內(nèi)的各個宏塊與當(dāng)前宏塊之間的相對運動位移都在最佳運動矢量范圍內(nèi))內(nèi)搜索與該宏塊最相似的宏塊(即該宏塊的匹配宏塊),該宏塊與其匹配宏塊之間的相對運動位移即為該宏塊的最佳運動矢量。該過程請參閱圖1所示。
[0006]在實現(xiàn)本發(fā)明的過程中,本發(fā)明的發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題:在現(xiàn)有技術(shù)中,需要先以幀為單位,分別為每一個幀設(shè)定一個初始運動矢量,即,每一個幀內(nèi)的所有宏塊具有設(shè)定的初始運動矢量。針對每一個幀內(nèi)的每一個宏塊,基于該宏塊的初始運動矢量,在一個最佳運動矢量的目標(biāo)范圍內(nèi)搜索該宏塊的最佳運動矢量。其中,該宏塊的初始運動矢量越接近最佳運動矢量,越能快速地搜索到該宏塊的最佳運動矢量。但是,初始運動矢量往往是隨意設(shè)定的,其與最佳運動矢量之間存在較大差距,這樣就會導(dǎo)致搜索最佳運動矢量的時間過長,并且,過長時間的搜索過程也必然會消耗過多的系統(tǒng)開銷。
【發(fā)明內(nèi)容】
[0007]為了解決上述技術(shù)問題,本發(fā)明實施例提供了一種幀率上采樣中的運動估計方法和裝置,以縮短運動估計中搜索最佳運動矢量的時間,進而也減少因過長的搜索過程所消耗的系統(tǒng)開銷。
[0008]本發(fā)明實施例公開了如下技術(shù)方案:
[0009]根據(jù)本發(fā)明實施例的第一方面,公開了一種幀率上采樣中的運動估計方法,S卩,在網(wǎng)絡(luò)傳輸時,除原始碼流之外,還增加一路參考碼流;所述方法包括:
[0010]接收原始碼流和參考碼流,所述參考碼流的幀率大于或等于原始碼流的幀率,且小于或等于視頻源的幀率;
[0011]根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量;
[0012]針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量,以便最終得到所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量。
[0013]結(jié)合本發(fā)明的第一方面,本發(fā)明還具有第一種可能,即所述參考碼流的分辨率比所述原始碼流的分辨率低;
[0014]則在根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插巾貞的初始運動矢量之前,所述方法還包括:
[0015]對所述參考碼流進行分辨率上采樣,以便使所述參考碼流的分辨率等于所述原始碼流的分辨率。
[0016]結(jié)合本發(fā)明的第一方面,本發(fā)明還具有第二種可能,即當(dāng)所述參考碼流的幀率為所述原始碼流的幀率時,所述參考碼流是在對所述原始碼流進行采樣的同時,通過同步采樣或者異步間隔采樣的方式獲得的。
[0017]結(jié)合本發(fā)明的第一方面,本發(fā)明還具有第三種可能,即在針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量之前,所述方法還包括:
[0018]根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述最佳運動矢量的目標(biāo)范圍。
[0019]結(jié)合本發(fā)明的第一方面、第一方面的第一種可能、第一方面的第二種可能以及第一方面的第三種可能,本發(fā)明還具有第四種可能,即所述根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始巾貞相對于相鄰的內(nèi)插巾貞的初始運動矢量,包括:
[0020]針對所述原始碼流中的所述原始幀,在所述參考碼流中與所述原始幀的位置相鄰的連續(xù)兩個或三個參考幀的范圍內(nèi)進行前向和后向運動估計,或者,對所述原始幀和在所述參考碼流中與所述原始幀的位置相鄰的兩個參考幀進行前向和后向運動估計,得到參考幀的前向運動矢量和后向運動矢量;
[0021]根據(jù)所述參考幀的前向運動矢量和后向運動矢量設(shè)置所述原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
[0022]結(jié)合本發(fā)明的第四種可能,本發(fā)明還具有第五種可能,即所述根據(jù)所述參考碼流中的參考巾貞間的運動矢量,確定所述最佳運動矢量的目標(biāo)范圍具體為:將所述參考巾貞的前向運動矢量和后向運動矢量所構(gòu)成的范圍設(shè)置為所述最佳運動矢量的目標(biāo)范圍。
[0023]結(jié)合本發(fā)明的第一方面、第一方面的第一種可能、第一方面的第二種可能以及第一方面的第三種可能,本發(fā)明還具有第六種可能,即所述方法還包括:
[0024]利用所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量對所述原始碼流進行運動補償插值處理,處理后的所述原始碼流中包含原始幀和內(nèi)插幀。
[0025]結(jié)合本發(fā)明的第六種可能,本發(fā)明還具有第七種可能,即所述方法還包括:
[0026]針對原始碼流中的所述內(nèi)插幀,判斷所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值是否與所述內(nèi)插幀的像素值相近似;
[0027]如果所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值與所述內(nèi)插幀的像素值不相近似,計算所述內(nèi)插幀和所述參考幀中處于同一位置的兩個像素的平均值,得到一個優(yōu)選幀,將所述原始碼流中的內(nèi)插幀替換為所述優(yōu)選幀,如果所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值與所述內(nèi)插幀的像素值相近似,保留所述原始碼流中的內(nèi)插幀。
[0028]根據(jù)本發(fā)明實施例的第二方面,公開了一種幀率上采樣中的運動估計裝置,S卩,在網(wǎng)絡(luò)傳輸時,除原始碼流之外,還增加一路參考碼流;所述裝置包括:
[0029]接收單元,用于接收原始碼流和參考碼流,所述參考碼流的幀率大于或等于原始碼流的幀率,且小于或等于視頻源的幀率;
[0030]第一確定單元,用于根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量;
[0031]搜索單元,用于針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始巾貞相對于相鄰的內(nèi)插巾貞的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量,以便最終得到所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運
動矢量。
[0032]結(jié)合本發(fā)明的第二方面,本發(fā)明還具有第一種可能,即所述參考碼流的分辨率比所述原始碼流的分辨率低;
[0033]則所述裝置還包括:
[0034]分辨率上采樣單元,用于在所述第一確定單元根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始巾貞相對于相鄰的內(nèi)插巾貞的初始運動矢量之前,對所述參考碼流進行分辨率上采樣,以便使所述參考碼流的分辨率等于所述原始碼流的分辨率。
[0035]結(jié)合本發(fā)明的第二方面,本發(fā)明還具有第二種可能,即當(dāng)所述參考碼流的幀率為所述原始碼流的幀率時,所述參考碼流是在對所述原始碼流進行采樣的同時,通過同步采樣或者異步間隔采樣的方式獲得的。
[0036]結(jié)合本發(fā)明的第二方面,本發(fā)明還具有第三種可能,即所述裝置還包括:
[0037]第二確定單元,用于在所述搜索單元針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量之前,根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述最佳運動矢量的目標(biāo)范圍。[0038]結(jié)合本發(fā)明的第二方面,本發(fā)明的第二方面的第一種可能、本發(fā)明的第二方面的第二種可能以及本發(fā)明的第二方面的第三種可能,本發(fā)明還具有第四種可能,即所述第一確定單元包括:
[0039]運動估計子單元,用于針對所述原始碼流中的所述原始幀,在所述參考碼流中與所述原始幀的位置相鄰的連續(xù)兩個或三個參考幀的范圍內(nèi)進行前向和后向運動估計,或者,對所述原始幀和在所述參考碼流中與所述原始幀的位置相鄰的兩個參考幀進行前向和后向運動估計,得到參考幀的前向運動矢量和后向運動矢量;
[0040]設(shè)置子單元,用于根據(jù)所述參考幀的前向運動矢量和后向運動矢量設(shè)置所述原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
[0041]結(jié)合本發(fā)明的第二方面的第四種可能,本發(fā)明還具有第五種可能,即所述第二確定單元具體用于,將所述參考幀的前向運動矢量和后向運動矢量所構(gòu)成的范圍設(shè)置為所述預(yù)定的隨駕運動矢量范圍。
[0042]結(jié)合本發(fā)明的第二方面,本發(fā)明的第二方面的第一種可能、本發(fā)明的第二方面的第二種可能以及本發(fā)明的第二方面的第三種可能,本發(fā)明還具有第六種可能,即所述裝置還包括:
[0043]運動補償插值單元,用于利用所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量對所述原始碼流進行運動補償插值處理,處理后的所述原始碼流中包含原始幀和內(nèi)插幀。
[0044]結(jié)合本發(fā)明的第二方面的第六種可能,本發(fā)明還具有第七種可能,即所述裝置還包括:
[0045]判斷單元,用于針對原始碼流中的所述內(nèi)插幀,判斷所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值是否與所述內(nèi)插幀的像素值相近似;
[0046]自適應(yīng)補償單元,用于如果所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值與所述內(nèi)插幀的像素值不相近似,計算所述內(nèi)插幀和所述參考幀中處于同一位置的兩個像素的平均值,得到一個優(yōu)選幀,將所述原始碼流中的內(nèi)插幀替換為所述優(yōu)選幀,如果所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值與所述內(nèi)插幀的像素值相近似,保留所述原始碼流中的內(nèi)插幀。
[0047]由上述實施例可以看出,與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點在于:
[0048]本發(fā)明采用SVC中的分層編碼的思想,在傳輸過程中多傳輸一路高幀率或等幀率的參考碼流,利用參考碼流中的參考幀的運動矢量為原始碼流的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量提供參考依據(jù),進而可以在運動估計過程中獲得更加接近最佳運動矢量的初始運動矢量。對于原始碼流中的原始幀的各個宏塊來說,由于初始運動矢量更越接近最佳運動矢量,因此,越能快速地搜索到該宏塊的最佳運動矢量,可以縮短運動估計中搜索最佳運動矢量的時間,進而減少因過長的搜索過程所消耗的系統(tǒng)開銷。最終也會使幀率上采樣出來的視頻畫面(特別是運動的視頻畫面)更連續(xù)、平順,視頻效果更好。另外,與傳統(tǒng)的H264編碼相比,也更加節(jié)省碼率。
【專利附圖】
【附圖說明】
[0049]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0050]圖1為現(xiàn)有技術(shù)中運動估計原始的不意圖;
[0051]圖2為本發(fā)明方法實施例提供的一種幀率上采樣中的運動估計方法的流程圖;
[0052]圖3為本發(fā)明方法實施例提供的另一種幀率上采樣中的運動估計方法的流程圖;
[0053]圖4為本發(fā)明中對原始碼流和參考碼流進行異步間隔采樣的示意圖;
[0054]圖5為本發(fā)明中對原始碼流和參考碼流進行同步采樣的示意圖;
[0055]圖6為本發(fā)明方法實施例提供的一種幀率上采樣方法的流程圖;
[0056]圖7為本發(fā)明方法實施例中的示例一提供的一種幀率上采樣中的運動估計方法的流程圖;
[0057]圖8為本發(fā)明中一種對視頻序列Y中的單數(shù)參考幀與其相鄰的兩個雙數(shù)參考幀做iu向和后向運動估計的不意圖;
[0058]圖9為本發(fā)明方法實施例中的示例二提供的一種幀率上采樣中的運動估計方法的流程圖;
[0059]圖10為本發(fā)明方法實施例中的示例三提供的一種幀率上采樣中的運動估計方法的流程圖;
[0060]圖11為本發(fā)明中對視頻序列Y中的參考幀與視頻序列F中位置相鄰的兩個原始中貞做如向和后向運動估計的不意圖;
[0061]圖12為本發(fā)明提供的一種幀率上采樣中的運動估計裝置的結(jié)構(gòu)圖;
[0062]圖13為本發(fā)明提供的另一種幀率上采樣中的運動估計裝置的結(jié)構(gòu)圖;
[0063]圖14為本發(fā)明中的第一確定單元的結(jié)構(gòu)圖;
[0064]圖15為本發(fā)明提供的一種幀率上采樣裝置的結(jié)構(gòu)圖;
[0065]圖16為本發(fā)明提供的另一種幀率上采樣裝置的結(jié)構(gòu)圖;
[0066]圖17為本發(fā)明的通訊裝置的結(jié)構(gòu)圖。
【具體實施方式】
[0067]本發(fā)明實施例提供了 一種幀率上采樣中的運動估計方法和裝置。在本發(fā)明實施例中,結(jié)合了 SVC的幀率分級的思想(即,分層編碼的思想),除需要進行幀率上采樣的原始碼流之外,還需要再增加一路參考碼流,原始碼流作為SVC幀率分級中的基礎(chǔ)層,參考碼流作為SVC幀率分級中的增強層。這樣,就可以根據(jù)參考碼流中的參考幀間的運動矢量確定原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。對于原始碼流中的原始幀的各個宏塊來說,由于通過這種方式所確定的初始運動矢量更越接近最佳運動矢量,因此,越能快速地搜索到該宏塊的最佳運動矢量,縮短了運動估計中搜索最佳運動矢量時間,進而也減少了因過長的搜索過程所消耗的系統(tǒng)開銷。
[0068]為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖對本發(fā)明實施例進行詳細描述。
[0069]方法實施例
[0070]請參閱圖2,其為本發(fā)明方法實施例提供的一種幀率上采樣中的運動估計方法的流程圖,在網(wǎng)絡(luò)傳輸時,除原始碼流之外,還增加一路參考碼流。該方法包括以下步驟:
[0071]步驟201-A:接收原始碼流和參考碼流,所述參考碼流的幀率大于或等于原始碼流的幀率,且小于或等于視頻源的幀率。
[0072]步驟202:根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
[0073]步驟203:針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始中貞率相對于相鄰的內(nèi)插巾貞的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量,以便最終得到所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量。
[0074]其中,參考碼流與原始碼流來自于同一個視頻源的碼流,而參考碼流的幀率大于或等于原始碼流的幀率,且小于或等于視頻源的幀率。例如,對于一個720P60的視頻源,如果對該視頻源進行幀率下采樣后所得到原始碼流為720P15,參考碼流既可以為對該視頻源進行幀率下采樣后所得到的720P15、720P30或720P50,也可以為該視頻源本身(720P60)。
[0075]在步驟203中,可以采用現(xiàn)有技術(shù)中的任意一種搜索方法對最佳運動矢量進行搜索,本發(fā)明技術(shù)方案對搜索方法本身不進行限定。例如,可以基于雙向運動估計搜索最佳運動矢量。即,對于最佳運動矢量搜索范圍內(nèi)的每一個候選運動矢量v(初始運動矢量可以作為初始的候選運動矢量V。),計算內(nèi)插幀中的一個宏塊在前一幀中移動-V (即,前向運動估計)和在后一幀中移動V (即,后向運動估計)后所對應(yīng)的宏塊中的每個像素的雙向絕對差和(SBAD,Sum of Bilateral Absolute Difference),而雙向絕對差和最小的候選運動矢量ν即為最佳運動矢量。
[0076]需要說明的是,本發(fā)明技術(shù)方案中,并不限定參考碼流與原始碼流之間的分辨率的大小。也就是說,參考碼流的分辨率可以與原始碼流的分辨率相同,也可以低于原始碼流的分辨率。在本發(fā)明的一個優(yōu)選實施方式中,為了進一步減少因傳輸參考碼流所占用的帶寬,在傳輸參考碼流之前,需要將先參考碼流的分辨率進行下采樣,使參考碼流的分辨率低于原始碼流的分辨率。相應(yīng)的,在基于參考碼流確定原始碼流的初始運動矢量之前,還需要將參考碼流的分辨率恢復(fù)至原始值,即,對參考碼流進行分辨率上采樣處理。如圖3所示,在上述步驟202之前,還包括:
[0077]步驟201-B:對所述參考碼流進行分辨率上采樣,以便使所述參考碼流的分辨率等于所述原始碼流的分辨率。
[0078]在本發(fā)明的另一個優(yōu)選實施方式中,當(dāng)所述參考碼流的幀率為所述原始碼流的幀率時,所述參考碼流是在對所述原始碼流進行采樣的同時,通過同步采樣或者異步間隔采樣的方式獲得的。異步間隔采樣的方式如圖4所示,其中,F(xiàn)為原始碼流中的原始幀,Y為參考碼流中的參考幀。
[0079]需要說明的是,在本發(fā)明的技術(shù)方案中,“最佳運動矢量的目標(biāo)范圍”可以采樣現(xiàn)有技術(shù)的方法進行預(yù)先設(shè)定。但是,考慮到“最佳運動矢量的目標(biāo)范圍”是否準(zhǔn)確同樣會影響到運動估計的結(jié)果的準(zhǔn)確度。因此,在本發(fā)明的一個優(yōu)選實施方式中,先根據(jù)參考碼流中的參考巾貞間的運動矢量,確定所述最佳運動矢量的目標(biāo)范圍。
[0080]在本發(fā)明的另一個優(yōu)選實施方式中,上述步驟202具體可以包括:針對所述原始碼流中的所述原始幀,在所述參考碼流中與所述原始幀的位置相鄰的連續(xù)兩個或三個參考幀的范圍內(nèi)進行前向和后向運動估計,或者,對所述原始幀和在所述參考碼流中與所述原始幀的位置相鄰的兩個參考幀進行前向和后向運動估計,得到參考幀的前向運動矢量和后向運動矢量;根據(jù)所述參考幀的前向運動矢量和后向運動矢量設(shè)置所述原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
[0081]例如,假設(shè)參考碼流的幀率與原始碼流的幀率相同,并且,參考碼流是在對所述原始碼流進行采樣的同時通過同步采樣獲得的,如圖5所示,其中,F(xiàn)為原始碼流中的原始幀,Y為參考碼流中的參考幀。如,針對原始幀F(xiàn)1,參考碼流中與F1相鄰的參考幀是Y1和Y2,可以對Y1和Y2進行前向和后向運動估計,得到兩個運動矢量MV1和MV2。原始幀F(xiàn)1相對于其相鄰的內(nèi)插中貞 F12 的初始運動矢量為:IMVI =1/2 (1/2 IMV11 +1/2 | MV21) =1/4 (| MV11 +1MV21)。
[0082]與此類似,還可以獲得其他原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
[0083]需要說明的是,在上面的一個示例中,是計算參考幀的前向運動矢量和后向運動矢量的算術(shù)平均值,并利用算術(shù)平均值設(shè)置原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。但是,本發(fā)明的技術(shù)方案并不僅限定采樣算術(shù)平均這一種計算方式,也可以采用其它的計算公式進行計算,如,幾何平均值、加權(quán)平均值等,并根據(jù)計算結(jié)果設(shè)置原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
[0084]在本發(fā)明的另一個優(yōu)選實施方式中,可以將參考幀的前向運動矢量和后向運動矢量所構(gòu)成的范圍設(shè)置為預(yù)定的最佳運動矢量的目標(biāo)范圍。
[0085]例如,在上述的示例中,可以將[MV1, -MV2]設(shè)置為最佳運動矢量的目標(biāo)范圍。
[0086]按照上述步驟完成運動估計之后,還可以根據(jù)運動估計的結(jié)果進行運動補償插值,從而完成幀率上采樣。即,在步驟203之后,還包括:利用所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量對所述原始碼流進行運動補償插值處理,處理后的所述原始碼流中包含原始幀和內(nèi)插幀。
[0087]需要說明的是,本發(fā)明的技術(shù)方案并不限定采樣哪種運動補償插值方式,可以采樣現(xiàn)有技術(shù)中的任意一種運動補償插值方式。該運動補償插值方式包括但不限于:移動塊插值、固定網(wǎng)格插值、重疊塊插值、擴大塊插值或者重疊塊基于固定加權(quán)曲線的插值等。
[0088]為了進一步提高運動補償插值的質(zhì)量,進而使幀率上采樣出的畫面更加連續(xù),視頻效果更好。在本發(fā)明的一個優(yōu)選實施方式中,參閱圖6所示,其為本發(fā)明提供的一種幀率上采樣方法的流程圖,該方法具體包括:
[0089]步驟601:接收原始碼流和參考碼流,所述參考碼流的幀率大于或等于原始碼流的幀率,且小于或等于視頻源的幀率。
[0090]步驟602:根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
[0091]步驟603:針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始中貞相對于相鄰的內(nèi)插巾貞的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量,以便最終得到所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量。
[0092]步驟604:利用所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量對所述原始碼流進行運動補償插值處理,處理后的所述原始碼流中包含原始幀和內(nèi)插幀。
[0093]步驟605:針對原始碼流中的所述內(nèi)插幀,判斷所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值是否與所述內(nèi)插幀的像素值相近似,如果是,進入步驟606,否則,進入步驟607。
[0094]步驟606:保留所述原始碼流中的所述內(nèi)插幀,結(jié)束流程。
[0095]步驟607:計算所述內(nèi)插幀和所述參考幀處于同一位置的兩個像素的平均值,得到一個優(yōu)選幀,將所述原始碼流中的所述內(nèi)插幀替換為所述優(yōu)選幀,結(jié)束流程。
[0096]在步驟606中,除了可以保留原始碼流中的內(nèi)插幀之外,也可以利用參考碼流中與該內(nèi)插幀處于同一位置的參考幀來替換原始碼流中的該內(nèi)插幀。
[0097]由上述實施例可以看出,與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點在于:
[0098]本發(fā)明采用SVC中的分層編碼的思想,在傳輸過程中多傳輸一路高幀率或等幀率的參考碼流,利用參考碼流中的參考幀的運動矢量為原始碼流的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量提供參考依據(jù),進而可以在運動估計過程中獲得更加接近最佳運動矢量的初始運動矢量。對于原始碼流中的原始幀的各個宏塊來說,由于初始運動矢量更越接近最佳運動矢量,因此,越能快速地搜索到該宏塊的最佳運動矢量,可以縮短運動估計中搜索最佳運動矢量的時間,進而減少因過長的搜索過程所消耗的系統(tǒng)開銷。最終也會使幀率上采樣出來的視頻畫面(特別是運動的視頻畫面)更連續(xù)、平順,視頻效果更好。另外,與傳統(tǒng)的H264編碼相比,也更加節(jié)省碼率。
[0099]下面結(jié)合幾個具體的示例來說明本發(fā)明中幀率上采樣中的運動估計方法。在以下幾個示例中,為了有效地降低圖像數(shù)據(jù)在傳輸時所占用的帶寬,在發(fā)送端,對720P30的原始碼流進行幀率下采樣,從而得到720P15的原始碼流。相應(yīng)的,在接收端,需要將720P15的原始碼流進行幀率上采樣,從而將其恢復(fù)為720P30的原始碼流。其中,720P是美國電影電視工程師協(xié)會(SMPTE)制定的高等級高清數(shù)字電視的格式標(biāo)準(zhǔn),有效顯示格式為:1280X720。
[0100]示例一
[0101]發(fā)送端發(fā)送一路720P15的原始碼流給接收端,除了原始碼流之外,發(fā)送端還發(fā)送一路CIF(Common Intermediate Format,常用的標(biāo)準(zhǔn)化圖像格式)30的參考碼流給接收端,以便為720P15的原始碼流的幀率上采樣提供參考。請參閱圖7所示,其為本發(fā)明方法實施例中的示例一提供的一種幀率上采樣中的運動估計方法的流程圖,具體包括如下步驟:
[0102]步驟701:對CIF30的參考碼流進行解碼,得到CIF30的視頻序列yuv,對720P15的原始碼流進行解碼,得到720P15的視頻序列F。
[0103]步驟702:對CIF30的視頻序列yuv進行分辨率上采樣,得到720P30的視頻序列Y。
[0104]步驟703:針對視頻序列Y中的每個單數(shù)參考幀,對該單數(shù)參考幀與其相鄰的兩個雙數(shù)參考幀做前向和后向的運動估計,得到運動矢量MV1和-MV2。
[0105]對視頻序列Y中的單數(shù)參考幀與其相鄰的兩個雙數(shù)參考幀做前向和后向運動估計的過程如圖8所示。
[0106]步驟704:利用公式IMV =1/2( IMV11 +1MV21)計算視頻序列F中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
[0107]步驟705:針對視頻序列F中的每個原始巾貞,利用其相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍[MV1, -MV2]內(nèi)進行雙邊運動估計,得到其相對于相鄰的內(nèi)插幀的最佳運動矢量。
[0108]示例二
[0109]發(fā)送端發(fā)送一路720P15的原始碼流給接收端,除了原始碼流之外,發(fā)送端還發(fā)送一路CIF15的參考碼流給接收端,以便為720P15的原始碼流的幀率上采樣提供參考。并且,CIF15的參考碼流是發(fā)送端對720P15的原始碼流進行采樣的同時,通過同步采樣獲得的。請參閱圖9所示,其為本發(fā)明方法實施例中的示例二提供的一種幀率上采樣中的運動估計方法的流程圖,具體包括如下步驟:
[0110]步驟901:對CIF15的參考碼流進行解碼,得到CIF15的視頻序列yuv,對720P15的原始碼流進行解碼,得到720P15的視頻序列F。
[0111]步驟902:對CIF15的視頻序列yuv進行分辨率上采樣,得到720P15的視頻序列Y。
[0112]步驟903:對視頻序列Y中的相鄰兩個參考巾貞做如向和后向的運動估計,得到運動矢量MV1和-MV2。
[0113]步驟904:利用公式IMV =1/4( IMV11 +1MV21)計算視頻序列F中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
[0114]步驟905:針對視頻序列F中的每個原始幀,利用其相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍[MV1, -MV2]內(nèi)進行雙邊運動估計,得到其相對于相鄰的內(nèi)插幀的最佳運動矢量。
[0115]示例三
[0116]發(fā)送端發(fā)送一路720P15的原始碼流給接收端,除了原始碼流之外,發(fā)送端還發(fā)送一路CIF30的參考碼流給接收端,以便為720P15的原始碼流的幀率上采樣提供參考。并且,CIF15的參考碼流是發(fā)送端對720P15的原始碼流進行采樣的同時,通過異步間隔采樣獲得的,異步間隔采樣的方式如圖4所示。請參閱圖10所示,其為本發(fā)明方法實施例中的示例三提供的一種幀率上采樣中的運動估計方法的流程圖,具體包括如下步驟:
[0117]步驟1001:對CIF30的參考碼流進行解碼,得到CIF30的視頻序列yuv,對720P15的原始碼流進行解碼,得到720P15的視頻序列F。
[0118]步驟1002:對CIF30的視頻序列yuv進行分辨率上采樣,得到720P30的視頻序列Y。
[0119]步驟1003:針對視頻序列Y中的每個參考幀,對該參考幀與視頻序列F中位置相鄰的兩個原始幀做前向和后向的運動估計,得到運動矢量MV1和-MV2。
[0120]對視頻序列Y中的參考幀與視頻序列F中位置相鄰的兩個原始幀做前向和后向運動估計的過程如圖11所示。其中,Ynrl是視頻序列Y中的一個參考幀,而Flri和Fn是視頻序列F中與參考幀Ylrt的位置相鄰的兩個原始幀。
[0121 ] 步驟1004:利用公式IMVI =1/2 (| MV11 +1MV21)計算視頻序列F中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
[0122]步驟1005:針對視頻序列F中的每個原始幀,利用其相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍[MV1, -MV2]內(nèi)進行雙邊運動估計,得到其相對于相鄰的內(nèi)插幀的最佳運動矢量。
[0123]裝置實施例[0124]與上述一種幀率上采樣中的運動估計方法相對應(yīng),本發(fā)明實施例還提供了一種幀率上采樣中的運動估計裝置。請參閱圖12,其為本發(fā)明裝置實施例提供的一種幀率上采樣中的運動估計裝置的結(jié)構(gòu)圖,在網(wǎng)絡(luò)傳輸時,除原始碼流之外,還增加一路參考碼流。該裝置包括:接收單元1201、第一確定單元1201和搜索單元1203。下面結(jié)合該裝置的工作原理進一步介紹其內(nèi)部結(jié)構(gòu)以及連接關(guān)系。
[0125]接收單元1201,用于接收原始碼流和參考碼流,所述參考碼流的幀率大于或等于原始碼流的幀率,且小于或等于視頻源的幀率;
[0126]第一確定單元1202,用于根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量;
[0127]搜索單元1203,用于針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始巾貞相對于相鄰的內(nèi)插巾貞的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量,以便最終得到所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最
佳運動矢量。
[0128]優(yōu)選的,所述參考碼流的分辨率比所述原始碼流的分辨率低;則該裝置還包括:
[0129]分辨率上采樣單元,用于在所述第一確定單元根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始巾貞相對于相鄰的內(nèi)插巾貞的初始運動矢量之前,對所述參考碼流進行分辨率上采樣,以便使所述參考碼流的分辨率等于所述原始碼流的分辨率。
[0130]優(yōu)選的,當(dāng)所述參考碼流的幀率為所述原始碼流的幀率時,所述參考碼流是在對所述原始碼流進行采樣的同時,通過同步采樣或者異步間隔采樣的方式獲得的。
[0131]優(yōu)選的,如圖13所示,該裝置還包括:
[0132]第二確定單元1204,用于在所述搜索單元針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量之前,根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述最佳運動矢量的目標(biāo)范圍。
[0133]優(yōu)選的,如圖14所示,第一確定單元1202包括:
[0134]運動估計子單元12021,用于針對所述原始碼流中的所述原始幀,在所述參考碼流中與所述原始幀的位置相鄰的連續(xù)兩個或三個參考幀的范圍內(nèi)進行前向和后向運動估計,或者,對所述原始幀和在所述參考碼流中與所述原始幀的位置相鄰的兩個參考幀進行前向和后向運動估計,得到參考幀的前向運動矢量和后向運動矢量;
[0135]設(shè)置子單元12022,用于根據(jù)所述參考幀的前向運動矢量和后向運動矢量設(shè)置所述原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
[0136]優(yōu)選的,第二確定單元1204具體用于,將所述參考幀的前向運動矢量和后向運動矢量所構(gòu)成的范圍設(shè)置為所述預(yù)定的隨駕運動矢量范圍。
[0137]優(yōu)選的,如圖15所示,該裝置還包括:
[0138]運動補償插值單元1205,用于利用所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量對所述原始碼流進行運動補償插值處理,處理后的所述原始碼流中包含原始幀和內(nèi)插幀。
[0139]進一步優(yōu)選的,如圖16所示,該裝置還包括:[0140]判斷單元1206,用于針對原始碼流中的所述內(nèi)插幀,判斷所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值是否與所述內(nèi)插幀的像素值相近似;
[0141]自適應(yīng)補償單元1207,用于如果所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值與所述內(nèi)插幀的像素值不相近似,計算所述內(nèi)插幀和所述參考幀中處于同一位置的兩個像素的平均值,得到一個優(yōu)選幀,將所述原始碼流中的內(nèi)插幀替換為所述優(yōu)選幀,如果所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值與所述內(nèi)插幀的像素值相近似,保留所述原始碼流中的內(nèi)插幀。
[0142]由上述實施例可以看出,與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點在于:
[0143]本發(fā)明采用SVC中的分層編碼的思想,在傳輸過程中多傳輸一路高幀率或等幀率的參考碼流,利用參考碼流中的參考幀的運動矢量為原始碼流的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量提供參考依據(jù),進而可以在運動估計過程中獲得更加接近最佳運動矢量的初始運動矢量。對于原始碼流中的原始幀的各個宏塊來說,由于初始運動矢量更越接近最佳運動矢量,因此,越能快速地搜索到該宏塊的最佳運動矢量,可以縮短運動估計中搜索最佳運動矢量的時間,進而減少因過長的搜索過程所消耗的系統(tǒng)開銷。最終也會使幀率上采樣出來的視頻畫面(特別是運動的視頻畫面)更連續(xù)、平順,視頻效果更好。另外,與傳統(tǒng)的H264編碼相比,也更加節(jié)省碼率。
[0144]所述領(lǐng)域的技術(shù)人員可以清楚地了解到,為了描述的方便和簡潔,上述描述的系統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應(yīng)過程,在此不再贅述。
[0145]在本發(fā)明所提供的幾個實施例中,應(yīng)該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述到的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結(jié)合或可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性、機械或其它的形式。
[0146]所述作為分離部件說明的單元可以是或者也可以是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
[0147]另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),可以采用軟件功能單元的形式實現(xiàn)。
[0148]硬件實施例
[0149]本申請實施例還提供了 一種通訊裝置,通訊裝置可能是包含計算能力的主機服務(wù)器,或者是個人計算機PC,或者是可攜帶的便攜式計算機或終端等等,本申請具體實施例并不對通訊裝置的具體實現(xiàn)做限定。
[0150]圖17為本申請的通訊裝置的結(jié)構(gòu)圖。如圖17所示,通訊裝置1700包括:
[0151]處理器(processor)1710,通信接口(Communications Interface) 1720,存儲器(memory) 1730,總線 1740。
[0152]處理器1710,通信接口 1720,存儲器1730通過總線1740完成相互間的通信。[0153]處理器1710,用于執(zhí)行程序1732。
[0154]具體地,程序1732可以包括程序代碼,所述程序代碼包括計算機操作指令。
[0155]處理器1710可能是一個中央處理器CPU,或者是特定集成電路ASIC(ApplicationSpeCIFic Integrated Circuit),或者是被配置成實施本申請實施例的一個或多個集成電路。
[0156]存儲器1730,用于存放程序1732。存儲器1730可能包含高速RAM存儲器,也可能還包括非易失性存儲器(non-volatile memory),例如至少一個磁盤存儲器。程序1732用于執(zhí)行以下步驟:
[0157]接收原始碼流和參考碼流,所述參考碼流的幀率大于或等于原始碼流的幀率,且小于或等于視頻源的幀率;
[0158]根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量;
[0159]針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量,以便最終得到所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量。
[0160]程序1232中各步驟的具體實現(xiàn)參見圖12-圖16所示實施例中的相應(yīng)單元的實現(xiàn)方式,在此不贅述。
[0161]需要說明的是,本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關(guān)的硬件來完成,所述的程序可存儲于一計算機可讀取存儲介質(zhì)中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質(zhì)可為磁碟、光盤、只讀存儲記憶體(Read-Only Memory, ROM)或隨機存儲記憶體(Random Access Memory, RAM)等。
[0162]以上對本發(fā)明所提供的一種幀率上采樣中的運動估計方法進行了詳細介紹,本文中應(yīng)用了具體實施例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在【具體實施方式】及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
【權(quán)利要求】
1.一種幀率上采樣中的運動估計方法,其特征在于,在網(wǎng)絡(luò)傳輸時,除原始碼流之外,還增加一路參考碼流;所述方法包括: 接收原始碼流和參考碼流, 所述參考碼流的幀率大于或等于原始碼流的幀率,且小于或等于視頻源的幀率; 根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量; 針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量,以便最終得到所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述參考碼流的分辨率比所述原始碼流的分辨率低; 則在根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量之前,所述方法還包括: 對所述參考碼流進行分辨率上采樣,以便使所述參考碼流的分辨率等于所述原始碼流的分辨率。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)所述參考碼流的幀率為所述原始碼流的幀率時,所述參考碼流是在對所述原始碼流進行采樣的同時,通過同步采樣或者異步間隔采樣的方式獲得的。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,在針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量之前,所述方法還包括: 根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述最佳運動矢量的目標(biāo)范圍。
5.根據(jù)權(quán)利要求1至4中任意一項所述的方法,其特征在于,所述根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量,包括: 針對所述原始碼流中的所述原始幀,在所述參考碼流中與所述原始幀的位置相鄰的連續(xù)兩個或三個參考幀的范圍內(nèi)進行前向和后向運動估計,或者,對所述原始幀和在所述參考碼流中與所述原始幀的位置相鄰的兩個參考幀進行前向和后向運動估計,得到參考幀的前向運動矢量和后向運動矢量; 根據(jù)所述參考幀的前向運動矢量和后向運動矢量設(shè)置所述原始幀相對于相鄰的內(nèi)插中貞的初始運動矢量。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述最佳運動矢量的目標(biāo)范圍具體為:將所述參考幀的前向運動矢量和后向運動矢量所構(gòu)成的范圍設(shè)置為所述最佳運動矢量的目標(biāo)范圍。
7.根據(jù)權(quán)利要求1至4中任意一項所述的方法,其特征在于,所述方法還包括: 利用所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量對所述原始碼流進行運動補償插值處理,處理后的所述原始碼流中包含原始幀和內(nèi)插幀。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述方法還包括: 針對原始碼流中的所述內(nèi)插幀,判斷所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值是否與所述內(nèi)插幀的像素值相近似; 如果所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值與所述內(nèi)插幀的像素值不相近似,計算所述內(nèi)插幀和所述參考幀中處于同一位置的兩個像素的平均值,得到一個優(yōu)選幀,將所述原始碼流中的內(nèi)插幀替換為所述優(yōu)選幀,如果所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值與所述內(nèi)插幀的像素值相近似,保留所述原始碼流中的內(nèi)插幀。
9.一種幀率上采樣中的運動估計裝置,其特征在于,在網(wǎng)絡(luò)傳輸時,除原始碼流之外,還增加一路參考碼流;所述裝置包括: 接收單元,用于接收原始碼流和參考碼流,所述參考碼流的幀率大于或等于原始碼流的幀率,且小于或等于視頻源的幀率; 第一確定單元,用于根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量; 搜索單元,用于針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始中貞相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量,以便最終得到所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述參考碼流的分辨率比所述原始碼流的分辨率低; 則所述裝置還包括: 分辨率上采樣單元,用于在所述第一確定單元根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量之前,對所述參考碼流進行分辨率上采樣,以便使所述參考碼流的分辨率等于所述原始碼流的分辨率。
11.根據(jù)權(quán)利要求9所述的裝置,其特征在于,當(dāng)所述參考碼流的幀率為所述原始碼流的幀率時,所述參考碼流是在對所述原始碼流進行采樣的同時,通過同步采樣或者異步間隔采樣的方式獲得的。
12.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括: 第二確定單元,用于在所述搜索單元針對所述原始碼流中的原始幀的各個宏塊,基于所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的初始運動矢量,在最佳運動矢量的目標(biāo)范圍內(nèi)搜索所述宏塊的最佳運動矢量之前,根據(jù)所述參考碼流中的參考幀間的運動矢量,確定所述最佳運動矢量的目標(biāo)范圍。
13.根據(jù)權(quán)利要求9至12中任意一項所述的裝置,其特征在于,所述第一確定單元包括: 運動估計子單元,用于針對所述原始碼流中的所述原始幀,在所述參考碼流中與所述原始幀的位置相鄰的連續(xù)兩個或三個參考幀的范圍內(nèi)進行前向和后向運動估計,或者,對所述原始幀和在所述參考碼流中與所述原始幀的位置相鄰的兩個參考幀進行前向和后向運動估計,得到參考幀的前向運動矢量和后向運動矢量; 設(shè)置子單元,用于根據(jù)所述參考幀的前向運動矢量和后向運動矢量設(shè)置所述原始幀相對于相鄰的內(nèi)插幀的初始運動矢量。
14.根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述第二確定單元具體用于,將所述參考幀的前向運動矢量和后向運動矢量所構(gòu)成的范圍設(shè)置為所述預(yù)定的隨駕運動矢量范圍。
15.根據(jù)權(quán)利要求9至12中任意一項所述的裝置,其特征在于,所述裝置還包括: 運動補償插值單元,用于利用所述原始碼流中的原始幀相對于相鄰的內(nèi)插幀的最佳運動矢量對所述原始碼流進行運動補償插值處理,處理后的所述原始碼流中包含原始幀和內(nèi)插幀。
16.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述裝置還包括: 判斷單元,用于針對原始碼流中的所述內(nèi)插幀,判斷所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值是否與所述內(nèi)插幀的像素值相近似; 自適應(yīng)補償單元,用于如果所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值與所述內(nèi)插幀的像素值不相近似,計算所述內(nèi)插幀和所述參考幀中處于同一位置的兩個像素的平均值,得到一個優(yōu)選幀,將所述原始碼流中的內(nèi)插幀替換為所述優(yōu)選幀,如果所述參考碼流中與所述內(nèi)插幀處于同一位置的參考幀的像素值與所述內(nèi)插幀的像素值相近似,保留所述原始碼流中的內(nèi)插幀。
【文檔編號】H04N19/146GK103929648SQ201410119914
【公開日】2014年7月16日 申請日期:2014年3月27日 優(yōu)先權(quán)日:2014年3月27日
【發(fā)明者】李海莉, 李凱, 饒丹 申請人:華為技術(shù)有限公司