資源簡介
用分層塊搜索方法HBMA得到運動矢量,比窮盡塊搜索EMBA算法時間復(fù)雜度低,matlab代碼

代碼片段和文件信息
function?[mv_x?mv_yMB_searchPredict_Imgerror]?=?EBMA(Target_ImgAnchor_ImgBlockSizeBlockLocationRangeStartRangeEndaccuracy)
%EBMA?為窮盡塊匹配算法,用來對于估計錨定幀和目標幀之間某個塊的運動矢量
%此函數(shù)被?HBMA()調(diào)用.
%
%輸入:??Target_ImgAnchor_Img:
%???????????????目標幀和錨定幀的圖像矩陣
%????????BlockSize:
%???????????????當前塊的大小,BlockSize(1)?*?BlockSize(2)
%????????BlcokLocation:
%???????????????錨定幀中塊的位置
%????????RangeStartRangeEnd:
%???????????????搜索區(qū)域,從?(RangeStart(1)RangeStart(2))?到?(RangeEnd(1)RangeEnd(2))
%????????accuracy:
%???????????????計算的準確度:?1?為整數(shù)像素;?2?為半像素
%輸出:?mv_xmv_y:
%???????????????運動方向矢量?(mv_xmv_y)
%????????MB_search:
%???????????????搜索次數(shù)
%????????Predict_Img:
%???????????????對于給定塊的最好預(yù)測塊
%????????error:
%???????????????給定塊的最小絕對誤差和(SAD)
%設(shè)置默認的計算準確率
if?nargin?7
???accuracy?=?1;
end
%初始化,賦值
MB_search?=?0;
ly?=?BlockLocation(1);
lx?=?BlockLocation(2);
Ny?=?BlockSize(1);
Nx?=?BlockSize(2);
%取錨定幀中的塊
AnchorBlock?=?Anchor_Img(ly:ly+Ny-1lx:lx+Nx-1);
%初始化位移矢量?mv_x?和?mv_y
mv_x=0;
mv_y=0;
%初始化誤差(隨意,足夠大)
error?=?255*Nx*Ny*100;
%在(RangeStart(1)RangeStart(2))到(RangeEnd(1)RangeEnd(2))范圍內(nèi)搜索最優(yōu)估計
??for?y?=?RangeStart(1):RangeEnd(1)-accuracy*Ny+1
????for?x?=?RangeStart(2):RangeEnd(2)-accuracy*Nx+1
??????TargetBlock?=?Target_Img(y:accuracy:y+accuracy*Ny-1x:accuracy:x+accuracy*Nx-1);
??????%計算AnchorBlock和TargetBlock之間的誤差
??????temp_error?=?sum(sum(abs(AnchorBlock-TargetBlock)));
??????MB_search?=?MB_search+1;
??????if?temp_error????????????error?=?temp_error;
???????????mv_x?=?x/accuracy-lx;
???????????mv_y?=?y/accuracy-ly;
???????????Predict_Img?=?TargetBlock;
??????end
????end
??end
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????304182??2009-05-13?20:26??HBMA\00.bmp
?????文件?????304182??2009-05-13?20:26??HBMA\01.bmp
?????文件???????1841??2009-05-25?20:12??HBMA\EBMA.m
?????文件???????8073??2009-05-26?17:06??HBMA\HBMA.m
?????文件???????3479??2009-05-15?14:12??HBMA\MEBMA.m
?????文件???????6417??2009-05-15?14:12??HBMA\Motion_Estimation_2D.m
?????文件???????1684??2009-05-15?14:13??HBMA\run_MEBMA.m
?????文件????????302??2009-05-26?17:05??HBMA\run_results.m
?????目錄??????????0??2009-06-17?22:42??HBMA
-----------?---------??----------?-----??----
???????????????630160????????????????????9
評論
共有 條評論