国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種運動搜索的方法、系統(tǒng)和終端設(shè)備的制作方法

      文檔序號:7863016閱讀:170來源:國知局
      專利名稱:一種運動搜索的方法、系統(tǒng)和終端設(shè)備的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及視頻編解碼領(lǐng)域,尤其涉及一種運動搜索的方法、系統(tǒng)和終端設(shè)備。
      背景技術(shù)
      視頻壓縮編碼通過去除圖像在空間和時間的冗余性來達到壓縮數(shù)據(jù)的目的。其中運動補償預(yù)測是去除冗余性的主要方法,它利用先前的參考幀來預(yù)測當前幀,用兩者的差值作為傳輸和存儲的對象,可大大減少數(shù)據(jù)量。在實際做法中,將當前幀分為若干宏塊,對每一宏塊在參考幀中搜索與其能量差值最小的相同大小區(qū)域作為該宏塊的預(yù)測,這個搜索過程稱為運動搜索。運動搜索過程需要在重建參考幀中進行,即編碼之后再解碼得到的圖像樣本,搜索過程可在多個參考幀中進行。傳統(tǒng)做法是順序執(zhí)行,即重建的參考幀準備好后再進行運動搜索,占用較多時間。在多核多線程的平臺上可以將這兩個過程并行實現(xiàn),以提高運行速度。但由于算法內(nèi)在的關(guān)聯(lián)性,使得并行也存在一定的局限性,許多并行方法需要專門的圖像處理硬件,或改變原有算法的關(guān)聯(lián),圖像質(zhì)量及比特率都會受到影響。

      發(fā)明內(nèi)容
      本發(fā)明實施例的目的在于提出一種運動搜索的方法,旨在解決現(xiàn)有技術(shù)中運動搜索順序執(zhí)行時工作效率低、多核多線程并行執(zhí)行時需要增加硬件或改變算法導(dǎo)致圖像質(zhì)量變差的技術(shù)問題。本發(fā)明實施例是這樣實現(xiàn)的,一種運動搜索的方法,所述方法包括步驟獲取待編碼圖像的當前宏塊;獲取所述當前宏塊對應(yīng)的匹配塊;獲取匹配塊的重建像素值,同時根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差;將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊。本發(fā)明實施例的另一目的在于提出一種運動搜索的系統(tǒng),所述系統(tǒng)包括第一獲取模塊、第二獲取模塊、重建模塊、均方差模塊和匹配模塊;所述第一獲取模塊,與所述第二獲取模塊、均方差模塊和匹配模塊相連,用于獲取待編碼圖像的當前宏塊;所述第二獲取模塊,與所述第一獲取模塊、重建模塊和匹配模塊相連,用于獲取所述當前宏塊對應(yīng)的匹配塊;所述重建模塊,與所述第二獲取模塊和均方差模塊相連,用于獲取匹配塊的重建像素值;所述均方差模塊,與所述重建模塊、第一獲取模塊和匹配模塊相連,用于根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差;
      所述匹配模塊,與所述第一獲取模塊、均方差模塊和第二獲取模塊相連,用于將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊。本發(fā)明實施例的另一目的在于提出一種運動搜索的終端設(shè)備,所述終端設(shè)備包含所述運動搜索系統(tǒng)。本發(fā)明針對多線程平臺提供一種運動搜索方法,所述方法將運動搜索流程進行了重新劃分,其中步驟“獲取匹配塊的重建像素值”和步驟“根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差”并行執(zhí)行。本發(fā)明在不改變原有算法的基礎(chǔ)上實現(xiàn)了高效的運動搜索過程,提高了編碼速度,多線程并行執(zhí)行運動搜索后的圖像質(zhì)量沒有改變,能夠保持比特率一致,且不需要增加或改變硬件結(jié)構(gòu),運動搜索過程簡單、高效,成本低。本發(fā)明還通過統(tǒng)計和比較匹配塊的總數(shù)量、重建像素值個數(shù)和均方差個數(shù),明確規(guī)定了獲取下一個匹配塊或者下一個搜索起點塊的條件。本實施例還通過預(yù)置最佳均方差,詳細規(guī)定了如何取舍最佳匹配塊及是否獲取下一個宏塊的條件。本發(fā)明還通過在多線程中傳遞匹配塊的位置信息以及訪問圖表信息,實現(xiàn)了多線程間負載均衡,最大限度的減少等待或空閑時間,進一步的提高編碼效率。本發(fā)明還通過二維數(shù)組,簡單有效的實現(xiàn)重建狀態(tài)的查詢和共享,確保多線程間的高效同步。











      具體實施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖和實施例,對本發(fā)明進行進一步詳細說明,為了便于說明,僅示出了與本發(fā)明實施例相關(guān)的部分。應(yīng)當理解,此處所描寫的具體實施例,僅僅用于解釋本發(fā)明,并不用以限制本發(fā)明。本發(fā)明針對多線程平臺提供一種運動搜索方法,所述方法將運動搜索流程進行了重新劃分,其中步驟“獲取匹配塊的重建像素值”和步驟“根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差”并行執(zhí)行。本發(fā)明在不改變原有算法的基礎(chǔ)上實現(xiàn)了高效的運動搜索過程,提高了編碼速度,多線程并行執(zhí)行運動搜索后的圖像質(zhì)量沒有改變,能夠保持比特率一致,且不需要增加或改變硬件結(jié)構(gòu),運動搜索過程簡單、高效,成本低。本發(fā)明還通過統(tǒng)計和比較匹配塊的總數(shù)量、重建像素值個數(shù)和均方差個數(shù),明確規(guī)定了獲取下一個匹配塊或者下一個搜索起點塊的條件。本實施例還通過預(yù)置最佳均方差,詳細規(guī)定了如何取舍最佳匹配塊及是否獲取下一個宏塊的條件。本發(fā)明還通過在多線程中傳遞匹配塊的位置信息以及訪問圖表信息,實現(xiàn)了多線程間負載均衡,最大限度的減少等待或空閑時間,進一步的提高編碼效率。本發(fā)明還通過二維數(shù)組,簡單有效的實現(xiàn)重建狀態(tài)的查詢和共享,確保多線程間的高效同步。實施例一圖I是本發(fā)明一種運動搜索方法的第一優(yōu)選實施例流程圖,所述方法包括步驟S101,獲取待編碼圖像的當前宏塊;在現(xiàn)有的視頻編碼標準(H. 261,H. 263,MPEG-1, MPEG-2, MPEG-4)中,運動搜索時把編碼幀中當前幀的每一區(qū)域和重建幀的區(qū)域進行比較(所述區(qū)域通常是4X4、8x8或者16X16像素點的売度塊稱為宏塊),試圖發(fā)現(xiàn)最佳匹配塊,也就是差距最小的重建巾貞的宏塊;一個宏塊的運動搜索過程也稱為塊匹配,對于當前幀包含的多個宏塊則要按照一定順序依次進行塊匹配,當前進行塊匹配運算的塊稱為當前宏塊;所謂重建幀就是選取已編碼幀中符合一定條件的編碼幀做為當前幀的參考幀,并將參考幀解碼,從而得到圖像幀,所述圖像幀就為重建幀;所述重建幀中的像素值就為重建像素值;例如待編碼圖像的當前宏塊如圖3所示和參考幀如圖4所示,首先獲取待編碼圖像的當前宏塊,當前宏塊是4X4個像素;S102,獲取所述當前宏塊對應(yīng)的各匹配塊;S103,獲取各匹配塊的重建像素值,同時根據(jù)所述重建像素值獲取各匹配塊與所述當前宏塊的均方差;所述“獲取各匹配塊的重建像素值”和“根據(jù)所述重建像素值獲取各匹配塊與所述當前宏塊的均方差”由兩個不同的線程并行執(zhí)行,從而提高運動搜索效率;S104,比較各均方差,獲取最小均方差;S105,將所述最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊;當獲取到最佳匹配塊,當前宏塊的運動搜索就結(jié)束了,可以進行下一個宏塊的運動搜索了。實施例二圖2是本發(fā)明一種運動搜索方法的第二優(yōu)選實施例流程圖,所述方法包括步驟S201,獲取待編碼圖像的當前宏塊;例如待編碼圖像的當前宏塊如圖3所示和參考幀如圖4所示,首先獲取待編碼圖像的當前宏塊,當前宏塊是4X4個像素;S202,獲取所述當前宏塊的第一搜索起點塊;所述第一搜索起點塊為所述參考幀中與所述當前宏塊相同位置的宏塊或者根據(jù)最小MSE值獲取到的匹配塊;第一次運動搜索時,將參考幀中與所述當前宏塊相同位置(0,0)的宏塊設(shè)為第一搜索起點塊,所述第一搜索起點塊如圖4中黑色虛線框所示區(qū)域;S203,根據(jù)所述第一搜索起點塊獲取方向匹配塊;同時還可以獲取所述第一搜索起點塊和方向匹配塊的大小和待重建坐標;所述待重建坐標為所述所述第一搜索起點塊或方向匹配塊重建成功時記錄重建成功狀態(tài)的圖表的坐標;
      所述圖表(即map表)為一個二維數(shù)組,由兩線程共享內(nèi)存,數(shù)組的坐標表示匹配塊在參考幀中的位置(即宏塊坐標);數(shù)組名[行號][列號]=1時,表示該坐標對應(yīng)的匹配塊已被成功重建;數(shù)組名[行號][列號]=0時,表不該坐標對應(yīng)的匹配塊未被重建;獲取所述當前宏塊在參考幀中的第一搜索起點塊,然后以所述第一搜索起點塊為中心在所述參考幀中的向每個方向移動正負一個或多個像素的矩形區(qū)域宏塊、菱形區(qū)域宏塊或者直線區(qū)域宏塊從而獲取到各方向匹配塊;相鄰參考幀高度相似,與所述第一搜索起點塊緊鄰著的各方向匹配塊可能為最佳匹配塊,同時不需要搜索整個參考幀,減少了運算量;所述方向匹配塊指以所述第一搜索起點塊為中心在所述參考幀中的向每個方向移動正負一個或多個像素的矩形區(qū)域宏塊、菱形區(qū)域宏塊或者直線區(qū)域宏塊;如圖4所示黑色直線框所示區(qū)域為其中之一的(-1,I)方向匹配塊;S204,獲取所述第一搜索起點塊和方向匹配塊的重建像素值,同時根據(jù)所述第一搜索起點塊的重建像素值獲取所述第一搜索起點塊與所述當前宏塊的均方差;并根據(jù)所述方向匹配塊的重建像素值獲取所述方向匹配塊與所述當前宏塊的均方差;根據(jù)所述第一搜索起點塊或方向匹配塊的大小獲取所述第一搜索起點塊或方向匹配塊的重建像素值,并根據(jù)所述第一搜索起點塊或方向匹配塊的待重建坐標在圖表中寫入重建成功狀態(tài)值;當成功生成重建像素值時,根據(jù)所述第一搜索起點塊或方向匹配塊的待重建坐標將圖表中相應(yīng)位直與入I ;例如所述第一搜索起點塊的待重建坐標為(I, 3),則將數(shù)組中的[I] [3]寫入I ;所述“獲取所述第一搜索起點塊和方向匹配塊的重建像素值”和“根據(jù)所述第一搜索起點塊的重建像素值獲取所述第一搜索起點塊與所述當前宏塊的均方差;并根據(jù)所述方向匹配塊的重建像素值獲取所述方向匹配塊與所述當前宏塊的均方差”由兩個不同的線程平行執(zhí)行;繼續(xù)舉例,如圖3和圖4中的各個數(shù)字為重建像素值,當前宏塊分別與第一搜索起點塊和各方向匹配塊進行比較,并分別計算均方差MSE值,具體為當前宏塊與(0,O)第一搜索起點塊的均方差MSE值為{ (4-1)2+ (3-3)2+ (5-2)2+ (4_4)2+ (6_2)2+ (3_4)2+ (3_3)2+ (0_5)2+ (8-4)2+ (0-6) 2+ (1-3) 2+ (4-2) 2+ (3-7) 2+ (6-8) 2+ (7-0) 2+ (5-1) 2}/16=13. 375 ;而相對于所述第一搜索起點塊的其中一個(-1,I)方向匹配塊如圖4中黑色直線邊框區(qū)域所示,其與當前宏塊的均方差MSE值為{ (I-I)2+ (3-3)2+ (2-2)2+ (4_4)2+ (2~2)2+ (4_4)2+ (3_3)2+ (5_5)2+ (4-4)2+ (6-6) 2+ (3-3) 2+ (3-2) 2+ (7-7) 2+ (8-8) 2+ (0-0) 2+ (1-1) 2}/16=0. 0625 ;以同樣的方法計算其他各方向匹配塊與當前宏塊的均方差MSE值,從而獲取到多個均方差;S205,比較各均方差,獲取最小均方差;S206,判斷所述最小均方差是否小于等于預(yù)置的最佳均方差,若是則進入步驟S207 ;若否則進入步驟S209 ;
      例如預(yù)置的最佳均方差為O. 07,則所述最小均方差MSE值O. 0625小于等于預(yù)置的最佳均方差O. 07,則進入步驟S207 ;S207,將所述最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊;比較各均方差MSE值,獲取最小均方差MSE值對應(yīng)的宏塊為(-1,I)匹配塊,即(-1,1)處的宏塊可以實現(xiàn)最好的匹配,稱為最佳匹配塊;當獲取到最佳匹配塊,當前宏塊的運動搜索就結(jié)束了,可以進行下一個宏塊的運動搜索了 ;S208,將所述待編碼圖像的下一個宏塊設(shè)為當前宏塊,并進入步驟S202 ;S209,根據(jù)所述最小均方差以及運動搜索算法策略獲取第二搜索起點塊,并將所述第二搜索起點塊設(shè)為第一搜索起點塊,進入步驟S203 ;所述運動搜索算法策略為現(xiàn)有技術(shù)中的各種運動搜索算法策略。實施例三圖5是本發(fā)明一種運動搜索方法的第三優(yōu)選實施例流程圖,所述方法包括步驟S301,第一線程獲取待編碼圖像的當前宏塊;例如待編碼圖像的當前宏塊如圖3所示和參考幀如圖4所示,首先獲取待編碼圖像的當前宏塊,當前宏塊是4X4個像素;S302,第一線程獲取所述當前宏塊的第一搜索起點塊,并將所述第一搜索起點塊的位置信息發(fā)送到第二線程;所述第一搜索起點塊為所述參考幀中與所述當前宏塊相同位置的宏塊或者根據(jù)最小MSE值獲取到的匹配塊;第一次運動搜索時,將參考幀中與所述當前宏塊相同位置(0,0)的宏塊設(shè)為第一搜索起點塊,所述第一搜索起點塊如圖4中黑色虛線框所示區(qū)域;獲取所述當前宏塊在參考幀中的第一搜索起點塊,然后以所述第一搜索起點塊為中心在所述參考幀中的向每個方向移動正負一個或多個像素的矩形區(qū)域宏塊、菱形區(qū)域宏塊或者直線區(qū)域宏塊從而獲取到各方向匹配塊;相鄰參考幀高度相似,與所述第一搜索起點塊緊鄰著的各方向匹配塊可能為最佳匹配塊,同時不需要搜索整個參考幀,減少了運算量;所述方向匹配塊指以所述第一搜索起點塊為中心在所述參考幀中的向每個方向移動正負一個或多個像素的矩形區(qū)域宏塊、菱形區(qū)域宏塊或者直線區(qū)域宏塊;如圖4所示黑色直線框所示區(qū)域為其中之一的(-1,I)方向匹配塊;S303,第一線程根據(jù)所述第一搜索起點塊獲取任一個方向匹配塊,并將所述方向匹配塊的位置信息發(fā)送給第二線程;以第一搜索起點塊為中心能夠確定一個以上的方向匹配塊,在這個步驟中先獲取其中一個方向匹配塊以及所述方向匹配塊對應(yīng)的位置信息,并將所述方向匹配塊的位置信息發(fā)送到第二線程;所述位置信息包括所述第一搜索起點塊或方向匹配塊的大小和待重建坐標;所述待重建坐標為所述所述第一搜索起點塊或方向匹配塊重建成功時記錄重建成功狀態(tài)值的圖表的坐標,所述圖表為二維數(shù)組,由兩線程共享內(nèi)存,所述圖表的坐標即數(shù)組的坐標,表示匹配塊在參考幀中的位置(即宏塊坐標);
      S304,第二線程判斷第一線程是否發(fā)送了位置信息,若是則進入步驟S305,若否則進入步驟S306 ;S305,第二線程接收所述第一線程發(fā)送的第一搜索起點塊或/和方向匹配塊的位置信息,并根據(jù)所述位置信息對所述第一搜索起點塊或/和方向匹配塊進行重建生成重建像素值,并進入步驟S307 ;S306,第二線程按從左到右、從上到下的順序獲取任一個方向匹配塊,并對所述匹配塊進行重建生成重建像素值;所述匹配塊包括第一搜索起點塊或方向匹配塊;S307,第二線程根據(jù)所述重建像素值和位置信息中的待重建坐標將已重建狀態(tài)值與入圖表;所述圖表(即map表)為一個二維數(shù)組;數(shù)組名[行號][列號]=1時,表示所述坐標對應(yīng)的匹配塊已被成功重建,I為已重建狀態(tài)值;數(shù)組名[行號][列號]=0時,表示所述坐標對應(yīng)的匹配塊未被重建,O為未重建狀態(tài)值,數(shù)組值默認為O ;當成功生成重建像素值時,根據(jù)所述第一搜索起點塊或方向匹配塊的待重建坐標將圖表中相應(yīng)位直與入I ;例如所述第一搜索起點塊的待重建坐標為(1,3),則將數(shù)組中的[I] [3]寫入I ;S308,第一線程查詢圖表,判斷所述第一搜索起點塊或/和方向匹配塊在所述圖表中的值是否為已重建狀態(tài)值,若是則進入步驟S309 ;如否則進入步驟S310 ;S309,第一線程根據(jù)所述第一搜索起點塊的重建像素值獲取所述第一搜索起點塊與所述當前宏塊的均方差;或/和根據(jù)所述方向匹配塊的重建像素值獲取所述方向匹配塊與所述當前宏塊的均方差;并進入步驟S311 ;繼續(xù)舉例,如圖3和圖4中的各個數(shù)字為重建像素值,當前宏塊分別與第一搜索起點塊和各方向匹配塊進行比較,并分別計算均方差MSE值,具體為當前宏塊與(0,O)第一搜索起點塊的均方差MSE值為{ (4-1)2+ (3-3)2+ (5-2)2+ (4_4)2+ (6_2)2+ (3_4)2+ (3_3)2+ (0_5)2+ (8-4)2+ (0-6) 2+ (1-3) 2+ (4-2) 2+ (3-7) 2+ (6-8) 2+ (7-0) 2+ (5-1) 2}/16=13. 375 ;而相對于所述第一搜索起點塊的其中一個(-1,I)方向匹配塊如圖4中黑色直線邊框區(qū)域所示,其與當前宏塊的均方差MSE值為{ (I-I)2+ (3-3)2+ (2-2)2+ (4_4)2+ (2~2)2+ (4_4)2+ (3_3)2+ (5_5)2+ (4-4)2+ (6-6) 2+ (3-3) 2+ (3-2) 2+ (7-7) 2+ (8-8) 2+ (0-0) 2+ (1-1) 2}/16=0. 0625 ;以同樣的方法計算其他各方向匹配塊與當前宏塊的均方差MSE值,從而獲取到多個均方差;S310,第一線程判斷所述第一搜索起點塊對應(yīng)的所有方向匹配塊是否都已確定,若否則進入步驟S311,若是則進入步驟S312 ;S311,第一線程獲取下一個方向匹配塊,并將所述方向匹配塊的位置信息發(fā)送到第二線程,進入步驟S305 ;S312,第一線程判斷所述當前宏塊與第一搜索起點塊或各方向匹配塊的均方差是否都計算完成,若是則進入步驟S313 ;若否則進入步驟S308 ;S313,第一線程獲取最小均方差,判斷所述最小均方差是否小于等于預(yù)置的最佳均方差,若是則進入步驟S314 ;若否則進入步驟S315 ;例如預(yù)置的最佳均方差為O. 07,則所述最小均方差MSE值O. 0625小于等于預(yù)置的最佳均方差O. 07,則進入步驟S314 ;S314,第一線程將所述最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊;將所述待編碼圖像的下一個宏塊設(shè)為當前宏塊,并進入步驟S302 ;比較各均方差MSE值,獲取最小均方差MSE值對應(yīng)的宏塊為(-1,I)匹配塊,即(-1,1)處的宏塊可以實現(xiàn)最好的匹配,稱為最佳匹配塊;當獲取到最佳匹配塊,當前宏塊的運動搜索就結(jié)束了,可以進行下一個宏塊的運動搜索了 ;S315,第一線程根據(jù)所述最小均方差以及運動搜索算法策略獲取第二搜索起點塊,并將所述第二搜索起點塊設(shè)為第一搜索起點塊,將所述第一搜索起點塊的位置信息發(fā)送到第二線程,同時進入步驟S303 ;所述運動搜索算法策略為現(xiàn)有技術(shù)中的各種運動搜索算法策略。實施例四圖6是本發(fā)明一種運動搜索方法的第四優(yōu)選實施例流程圖,所述方法包括步驟S401,第一線程獲取待編碼圖像的當前宏塊;S402,第一線程獲取所述當前宏塊的第一搜索起點塊,并將所述第一搜索起點塊的位置信息發(fā)送到第二線程;S403,第二線程接收第一線程發(fā)送的所述第一搜索起點塊的位置信息,并根據(jù)所述第一搜索起點塊的位置信息獲取方向匹配塊和匹配塊的總數(shù)量;并查詢圖表;還根據(jù)所述第一搜索起點塊的位置信息獲取方向匹配塊的位置信息;所述方向匹配塊是根據(jù)運動搜索策略確定的若干個匹配塊;所述匹配塊的總數(shù)量是根據(jù)運動搜索算法預(yù)置的總數(shù)量,包括所述第一搜索起點塊和所述第一搜索起點塊對應(yīng)的所有方向匹配塊的數(shù)量;S404,第二線程判斷所述第一搜索起點塊或方向匹配塊在圖表中的值是否為已重建狀態(tài)值,若否則進入步驟S405,若是則進入步驟S408 ;S405,第二線程根據(jù)所述第一搜索起點塊或/和方向匹配塊的位置信息對所述第一搜索起點塊或/和方向匹配塊進行重建生成重建像素值,并根據(jù)所述重建像素值和位置信息中的待重建坐標將已重建狀態(tài)值寫入圖表;第二線程將所述第一搜索起點塊或方向匹配塊的位置信息發(fā)送到第一線程;同時累計重建像素值個數(shù);所述重建像素值個數(shù)默認為0,每個方向匹配塊或第一搜索起點塊重建完成,都將重建像素值個數(shù)加1,當所述重建像素值個數(shù)累計為匹配塊總數(shù)量時,表示所述第一搜索起點塊對應(yīng)的方向匹配塊都已重建完成;S406,第二線程判斷所述重建像素值個數(shù)是否等于所述匹配塊的總數(shù)量,若是則進入步驟S403,若否則進入步驟S407 ;S407,第二線程獲取下一個方向匹配塊的位置信息,并進入步驟S405 ;S408,第一線程根據(jù)所述第一搜索起點塊的重建像素值獲取所述第一搜索起點塊與所述當前宏塊的均方差;或/和根據(jù)所述方向匹配塊的重建像素值獲取所述方向匹配塊與所述當前宏塊的均方差;同時累計均方差個數(shù);所述均方差個數(shù)初始為0,每計算完成一個匹配塊的均方差就將所述均方差個數(shù)加1,當所述均方差個數(shù)等于匹配塊的總數(shù)量就表示本次的運動搜索結(jié)束,可以進行下一個宏塊的運動搜索了;S409,第一線程判斷所述均方差個數(shù)是否都等于所述匹配塊的總數(shù)量,若是則進入步驟S410,若否則進入步驟S408 ;所述匹配塊的總數(shù)量包括第一搜索起點塊和所述第一搜索起點塊對應(yīng)的所有方向匹配塊的數(shù)量;S410,第一線程獲取最小均方差,判斷所述最小均方差是否小于等于預(yù)置的最佳均方差,若是則進入步驟S411 ;若否則進入步驟S411 ;所述最佳均方差是根據(jù)系統(tǒng)自身需要設(shè)定的最佳均方差值,便于確定最佳匹配塊的取舍;S411,第一線程將所述最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊;將所述待編碼圖像的下一個宏塊設(shè)為當前宏塊,并進入步驟S402 ;S412,第一線程根據(jù)所述最小均方差以及運動搜索算法策略獲取第二搜索起點塊,并將所述第二搜索起點塊設(shè)為第一搜索起點塊,并將所述第一搜索起點塊的位置信息發(fā)送到第二線程,同時進入步驟S403。本實施例中的名詞解釋和舉例內(nèi)容與實施例一至三相同,此處不再贅述。本發(fā)明針對多線程平臺提供一種運動搜索方法,所述方法將運動搜索流程進行了重新劃分,其中步驟“獲取匹配塊的重建像素值”和步驟“根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差”并行執(zhí)行。本發(fā)明在不改變原有算法的基礎(chǔ)上實現(xiàn)了高效的運動搜索過程,提高了編碼速度,多線程并行執(zhí)行運動搜索后的圖像質(zhì)量沒有改變,能夠保持比特率一致,且不需要增加或改變硬件結(jié)構(gòu),運動搜索過程簡單、高效,成本低。本發(fā)明還通過統(tǒng)計和比較匹配塊的總數(shù)量、重建像素值個數(shù)和均方差個數(shù),明確規(guī)定了獲取下一個匹配塊或者下一個搜索起點塊的條件。本實施例還通過預(yù)置最佳均方差,詳細規(guī)定了如何取舍最佳匹配塊及是否獲取下一個宏塊的條件。本發(fā)明還通過在多線程中傳遞匹配塊的位置信息以及訪問圖表信息,實現(xiàn)了多線程間負載均衡,最大限度的減少等待或空閑時間,進一步的提高編碼效率。本發(fā)明還通過二維數(shù)組,簡單有效的實現(xiàn)重建狀態(tài)的查詢和共享,確保多線程間的高效同步。實施例五圖7是本發(fā)明一種運動搜索系統(tǒng)的第一優(yōu)選實施例結(jié)構(gòu)示意圖。所述系統(tǒng)包括第一獲取模塊、第二獲取模塊、重建模塊、均方差模塊和匹配模塊;所述第一獲取模塊,與所述第二獲取模塊、均方差模塊和匹配模塊相連,用于獲取待編碼圖像的當前宏塊;所述第二獲取模塊,與所述第一獲取模塊、重建模塊和匹配模塊相連,用于獲取所述當前宏塊對應(yīng)的匹配塊;所述重建模塊,與所述第二獲取模塊和均方差模塊相連,用于獲取匹配塊的重建像素值;
      所述均方差模塊,與所述重建模塊、第一獲取模塊和匹配模塊相連,用于根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差;所述匹配模塊,與所述第一獲取模塊、均方差模塊和第二獲取模塊相連,用于將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊。對上述技術(shù)方案進一步優(yōu)化在于,所述第二獲取模塊包括搜索起點單元和方向匹配單元;所述重建模塊包括第一重建單元和第二重建單元;所述均方差模塊包括第一均方差單元和第二均方差單元,如圖8所示為本發(fā)明一種運動搜索系統(tǒng)的第二優(yōu)選實施例結(jié)構(gòu)示意圖;所述搜索起點單元,與所述第一獲取模塊、方向匹配單元和第一重建單元相連,用于獲取所述當前宏塊的第一搜索起點塊;所述方向匹配單元,與所述搜索起點單元和第二重建單元相連,用于根據(jù)所述第一搜索起點塊獲取方向匹配塊;所述第一重建單元,與所述搜索起點單元、第二重建單元和第一均方差單元相連,用于獲取所述第一搜索起點塊的重建像素值;所述第二重建單元,與所述第一重建單元、方向匹配單元和第二均方差單元相連,用于獲取所述方向匹配塊的重建像素值;所述第一均方差單元,與所述第二均方差單元、第一重建單元和第一獲取模塊相連,用于根據(jù)所述第一搜索起點塊的重建像素值獲取所述第一搜索起點塊與所述當前宏塊的均方差;所述第二均方差單元,與所述第一均方差單元、第二重建單元和第一獲取模塊相連,用于根據(jù)所述方向匹配塊的重建像素值獲取所述方向匹配塊與所述當前宏塊的均方差。對上述技術(shù)方案進一步優(yōu)化在于,所述匹配模塊包括判斷單元和最佳匹配單元,如圖9所示為本發(fā)明一種運動搜索系統(tǒng)的第三優(yōu)選實施例結(jié)構(gòu)示意圖;所述判斷單元,與所述均方差模塊、搜索起點單元和最佳匹配單元相連,用于判斷最小均方差是否小于等于預(yù)置的最佳均方差,若是則發(fā)送匹配成功指令到所述最佳匹配單元;若否則發(fā)送第二獲取指令到所述搜索起點單元;所述最佳匹配單元,與所述判斷單元、第一獲取模塊和第二獲取模塊相連,用于接收所述判斷單元發(fā)送的匹配成功指令,并根據(jù)所述匹配成功指令將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊,同時發(fā)送第一獲取指令到所述第一獲取模塊;所述第一獲取模塊,還用于接收所述最佳匹配單元發(fā)送的第一獲取指令,并根據(jù)所述第一獲取指令將所述待編碼圖像的下一個宏塊設(shè)為當前宏塊;所述搜索起點單元,還用于接收所述判斷單元發(fā)送的第二獲取指令,并根據(jù)所述第二獲取指令、最小均方差以及運動搜索算法策略獲取第二搜索起點塊,并將所述第二搜索起點塊設(shè)為第一搜索起點塊。對上述技術(shù)方案進一步優(yōu)化在于,所述重建模塊和均方差模塊分別由兩個線程并行執(zhí)行。本實施例中的名詞解釋和舉例說明與實施例一至四中描述內(nèi)容相同,此處不再贅述。
      13
      本實施例中的系統(tǒng)包括第一獲取模塊、第二獲取模塊、重建模塊、均方差模塊和匹配模塊;其中所述第一獲取模塊用于獲取待編碼圖像的當前宏塊;所述第二獲取模塊用于獲取所述當前宏塊對應(yīng)的匹配塊;所述重建模塊用于獲取匹配塊的重建像素值;所述均方差模塊用于根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差;所述匹配模塊用于將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊。實現(xiàn)了多線程平臺的運動搜索,本實施例將運動搜索流程進行了重新劃分,其中重建模塊和均方差模塊由兩個線程并行執(zhí)行。在不改變原有算法的基礎(chǔ)上實現(xiàn)了高效的運動搜索過程,提高了編碼速度,且多線程并行執(zhí)行運動搜索后的圖像質(zhì)量沒有改變,能夠保持比特率一致,且不需要增加或改變硬件結(jié)構(gòu)。本實施例還通過統(tǒng)計和比較匹配塊的總數(shù)量、重建像素值個數(shù)和均方差個數(shù),明確規(guī)定了獲取下一個匹配塊或者下一個搜索起點塊的條件。本實施例還通過預(yù)置最佳均方差,詳細規(guī)定了如何取舍最佳匹配塊及是否獲取下一個宏塊的條件。本實施例還通過在多線程中傳遞匹配塊的位置信息以及訪問圖表信息,實現(xiàn)了多線程間負載均衡,最大限度的減少等待或空閑時間,進一步的提高編碼效率。本實施例還通過二維數(shù)組,簡單有效的實現(xiàn)重建狀態(tài)的查詢和共享,確保多線程間的高效同步。本發(fā)明提供的一種運動搜索系統(tǒng)可以應(yīng)用到需要運動搜索的終端設(shè)備中,所述終端設(shè)備包括PC、服務(wù)器、手機或PDA等。本領(lǐng)域的普通技術(shù)人員可以理解,實現(xiàn)上述實施例方法中的全部或部分步驟是可以通過程序指令相關(guān)硬件來完成的,所述的程序可以存儲于一計算機可讀取存儲介質(zhì)中,所述的存儲介質(zhì)可以為ROM、RAM、磁盤、光盤等。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
      權(quán)利要求
      1.一種運動搜索的方法,其特征在于,所述方法包括步驟獲取待編碼圖像的當前宏塊;獲取所述當前宏塊對應(yīng)的匹配塊;獲取匹配塊的重建像素值,同時根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差;將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊。
      2.根據(jù)權(quán)利要求I所述運動搜索方法,其特征在于,所述匹配塊包括第一搜索起點塊和方向匹配塊;所述步驟“獲取所述當前宏塊對應(yīng)的匹配塊”具體為獲取所述當前宏塊的第一搜索起點塊;根據(jù)所述第一搜索起點塊獲取方向匹配塊;所述步驟“獲取匹配塊的重建像素值,同時根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差”具體為獲取所述第一搜索起點塊和方向匹配塊的重建像素值,同時根據(jù)所述第一搜索起點塊的重建像素值獲取所述第一搜索起點塊與所述當前宏塊的均方差;并根據(jù)所述方向匹配塊的重建像素值獲取所述方向匹配塊與所述當前宏塊的均方差。
      3.根據(jù)權(quán)利要求2所述運動搜索方法,其特征在于,所述“將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊”具體為判斷最小均方差是否小于等于預(yù)置的最佳均方差,若是則,將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊。
      4.根據(jù)權(quán)利要求3所述運動搜索方法,其特征在于,所述步驟“將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊”之后還包括步驟將所述待編碼圖像的下一個宏塊設(shè)為當前宏塊,并進入步驟“獲取所述當前宏塊的第一搜索起點塊”。
      5.根據(jù)權(quán)利要求4所述運動搜索方法,其特征在于,所述“判斷最小均方差是否小于等于預(yù)置的最佳均方差”若否則,根據(jù)所述最小均方差以及運動搜索算法策略獲取第二搜索起點塊,并將所述第二搜索起點塊設(shè)為第一搜索起點塊,并進入步驟“根據(jù)所述第一搜索起點塊獲取方向匹配塊”。
      6.根據(jù)權(quán)利要求I所述運動搜索方法,其特征在于,所述“獲取匹配塊的重建像素值”和所述“根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差”分別由第一線程和第二線程并行執(zhí)行。
      7.根據(jù)權(quán)利要求I所述運動搜索方法,其特征在于,所述步驟“獲取待編碼圖像的當前宏塊”、“獲取所述當前宏塊對應(yīng)的匹配塊”、“根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差”和“將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊”由第一線程執(zhí)行;所述步驟“獲取匹配塊的重建像素值”由第二線程執(zhí)行。
      8.根據(jù)權(quán)利要求7所述運動搜索方法,其特征在于,所述第二線程獲取匹配塊的重建像素值之后還包括步驟第二線程根據(jù)所述重建像素值和匹配塊的待重建坐標將已重建狀態(tài)值寫入圖表;所述圖表為二維數(shù)組,數(shù)組中的坐標為待重建坐標,數(shù)組值為已重建狀態(tài)值或未重建狀態(tài)值。
      9.一種運動搜索的系統(tǒng),其特征在于,所述系統(tǒng)包括第一獲取模塊、第二獲取模塊、重建模塊、均方差模塊和匹配模塊;所述第一獲取模塊,與所述第二獲取模塊、均方差模塊和匹配模塊相連,用于獲取待編碼圖像的當前宏塊;所述第二獲取模塊,與所述第一獲取模塊、重建模塊和匹配模塊相連,用于獲取所述當前宏塊對應(yīng)的匹配塊;所述重建模塊,與所述第二獲取模塊和均方差模塊相連,用于獲取匹配塊的重建像素值;所述均方差模塊,與所述重建模塊、第一獲取模塊和匹配模塊相連,用于根據(jù)所述重建像素值獲取匹配塊與所述當前宏塊的均方差;所述匹配模塊,與所述第一獲取模塊、均方差模塊和第二獲取模塊相連,用于將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊。
      10.根據(jù)權(quán)利要求9所述運動搜索系統(tǒng),其特征在于,所述第二獲取模塊包括搜索起點單元和方向匹配單元;所述重建模塊包括第一重建單元和第二重建單元;所述均方差模塊包括第一均方差單元和第二均方差單元;所述搜索起點單元,與所述第一獲取模塊、方向匹配單元和第一重建單元相連,用于獲取所述當前宏塊的第一搜索起點塊;所述方向匹配單元,與所述搜索起點單元和第二重建單元相連,用于根據(jù)所述第一搜索起點塊獲取方向匹配塊;所述第一重建單元,與所述搜索起點單元、第二重建單元和第一均方差單元相連,用于獲取所述第一搜索起點塊的重建像素值;所述第二重建單元,與所述第一重建單元、方向匹配單元和第二均方差單元相連,用于獲取所述方向匹配塊的重建像素值;所述第一均方差單元,與所述第二均方差單元、第一重建單元和第一獲取模塊相連,用于根據(jù)所述第一搜索起點塊的重建像素值獲取所述第一搜索起點塊與所述當前宏塊的均方差;所述第二均方差單元,與所述第一均方差單元、第二重建單元和第一獲取模塊相連,用于根據(jù)所述方向匹配塊的重建像素值獲取所述方向匹配塊與所述當前宏塊的均方差。
      11.根據(jù)權(quán)利要求10所述運動搜索系統(tǒng),其特征在于,所述匹配模塊包括判斷單元和最佳匹配單元;所述判斷單元,與所述均方差模塊、搜索起點單元和最佳匹配單元相連,用于判斷最小均方差是否小于等于預(yù)置的最佳均方差,若是則發(fā)送匹配成功指令到所述最佳匹配單元;若否則發(fā)送第二獲取指令到所述搜索起點單元;所述最佳匹配單元,與所述判斷單元、第一獲取模塊和第二獲取模塊相連,用于接收所述判斷單元發(fā)送的匹配成功指令,并根據(jù)所述匹配成功指令將最小均方差對應(yīng)的匹配塊設(shè)為最佳匹配塊,同時發(fā)送第一獲取指令到所述第一獲取模塊;所述第一獲取模塊,還用于接收所述最佳匹配單元發(fā)送的第一獲取指令,并根據(jù)所述第一獲取指令將所述待編碼圖像的下一個宏塊設(shè)為當前宏塊;所述搜索起點單元,還用于接收所述判斷單元發(fā)送的第二獲取指令,并根據(jù)所述第二獲取指令、最小均方差以及運動搜索算法策略獲取第二搜索起點塊,并將所述第二搜索起點塊設(shè)為第一搜索起點塊。
      12.根據(jù)權(quán)利要求11所述運動搜索系統(tǒng),其特征在于,所述重建模塊和均方差模塊分別由兩個線程并行執(zhí)行。
      全文摘要
      本發(fā)明針對多線程平臺提供一種運動搜索方法,所述方法將運動搜索流程進行了重新劃分,其中步驟“獲取各匹配塊的重建像素值”和步驟“根據(jù)所述重建像素值獲取各匹配塊與所述當前宏塊的均方差”并行執(zhí)行。本發(fā)明在不改變原有算法的基礎(chǔ)上實現(xiàn)了高效的運動搜索過程,提高了編碼速度,多線程并行執(zhí)行運動搜索后的圖像質(zhì)量沒有改變,能夠保持比特率一致,且不需要增加或改變硬件結(jié)構(gòu),運動搜索過程簡單、高效,成本低。
      文檔編號H04N7/26GK102917216SQ20121039367
      公開日2013年2月6日 申請日期2012年10月16日 優(yōu)先權(quán)日2012年10月16日
      發(fā)明者全玲 申請人:深圳市融創(chuàng)天下科技股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1