motioncompensate.asv
来自「用matlab写的仿真H.263标准的程序」· ASV 代码 · 共 24 行
ASV
24 行
function [ResidualMBY,ResidualBU,ResidualBV] = MotionCompensate(WindowsY,CurMBlockY,...
WindowsU,CurBlockU,WindowsV,CurBlockV,...
VectorH,VectorW)
%运动补偿计算
%输入 WindowsY,CurMBlockY 搜索窗口,当前亮度宏块,uint8
%输入 WindowsU,CurBlockU 窗口,当前色度块,uint8
%输入 WindowsV,CurBlockV 窗口,当前色度块,uint8
%输入 VectorH,VectorW,运动矢量
%输出 ResidualMBY,ResidualBU,ResidualBV 差值图像,double
mst_r = VectorH + 17;
mst_c = VectorW + 17;
ResidualMBY = double(double(CurMBlockY) - double(WindowsY(mst_r:mst_r + 15,mst_c:mst_c + 15)));
double(WindowsY(mst_r:mst_r + 15,mst_c:mst_c + 15))
double(CurMBlockY)
ResidualMBY
bst_r = floor((VectorH/2)) + 9;
bst_c = floor((VectorW/2)) + 9;
ResidualBU = double(double(CurBlockU) - double(WindowsU(bst_r:bst_r + 7,bst_c:bst_c + 7)));
ResidualBV = double(double(CurBlockV) - double(WindowsV(bst_r:bst_r + 7,bst_c:bst_c + 7)));
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?