用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,求指教是哪里的问题~~~
标题打错了,是对图像进行平移和缩放~
展开
 我来答
百度网友260ef34f1
2011-05-21 · TA获得超过2170个赞
知道小有建树答主
回答量:1466
采纳率:50%
帮助的人:1517万
展开全部
最后一行,写成这样和程序原意相不相符
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这样的格式呢?
追答
不清楚。。但是这样运行以后没报错,你用个矩阵试试吧
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式