用MATLAB自带的函数对图像进行旋转、平移的问题
代码如下:delta_x=5;%x方向平移量delta_y=5;%y方向平移量scale_x=0.5;%x方向缩放倍数scale_y=2;%y方向缩放倍数transa=m...
代码如下:
delta_x=5;%x方向平移量
delta_y=5;%y方向平移量
scale_x=0.5;%x方向缩放倍数
scale_y=2;%y方向缩放倍数
transa=maketform('affine',[scale_x 0 delta_x;0 scale_y delta_y;0 0 1]);%图像缩放和平移
WIa=imtransform(WI,transa);%WIa为遭遇RST几何攻击后的图像
运行后报错说??? Error using ==> maketform>validate_matrix
The final column of A must consist of zeroes, except for a one in the last row.
我看了下我的maketform里面,
% T = MAKETFORM('affine',A) builds a TFORM struct for an N-dimensional
% affine transformation. A is a nonsingular real (N+1)-by-(N+1) or
% (N+1)-by-N matrix. If A is (N+1)-by-(N+1), then the last column
% of A must be [zeros(N,1); 1]. Otherwise, A is augmented automatically
% such that its last column is [zeros(N,1); 1].
貌似没有定义错A啊,最后一列是0 0 1,求指教是哪里的问题~~~
标题打错了,是对图像进行平移和缩放~ 展开
delta_x=5;%x方向平移量
delta_y=5;%y方向平移量
scale_x=0.5;%x方向缩放倍数
scale_y=2;%y方向缩放倍数
transa=maketform('affine',[scale_x 0 delta_x;0 scale_y delta_y;0 0 1]);%图像缩放和平移
WIa=imtransform(WI,transa);%WIa为遭遇RST几何攻击后的图像
运行后报错说??? Error using ==> maketform>validate_matrix
The final column of A must consist of zeroes, except for a one in the last row.
我看了下我的maketform里面,
% T = MAKETFORM('affine',A) builds a TFORM struct for an N-dimensional
% affine transformation. A is a nonsingular real (N+1)-by-(N+1) or
% (N+1)-by-N matrix. If A is (N+1)-by-(N+1), then the last column
% of A must be [zeros(N,1); 1]. Otherwise, A is augmented automatically
% such that its last column is [zeros(N,1); 1].
貌似没有定义错A啊,最后一列是0 0 1,求指教是哪里的问题~~~
标题打错了,是对图像进行平移和缩放~ 展开
1个回答
展开全部
最后一行,写成这样和程序原意相不相符
transa=maketform('affine',[scale_x delta_x 0; scale_y delta_y 0;0 0 1 ]);
transa=maketform('affine',[scale_x delta_x 0; scale_y delta_y 0;0 0 1 ]);
更多追问追答
追问
啊,有道理,最后一列除最后一行是1其它应该是0,但是我之前百度如何平移和缩放,貌似scale_x 0 delta_x;0 scale_y delta_y这样排列的,是我查的有问题么?还是就应该是你给的scale_x delta_x 0; scale_y delta_y 0这样的格式呢?
追答
不清楚。。但是这样运行以后没报错,你用个矩阵试试吧
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询