今天学习了用Matlab实现对图像的基本操作。在Matlab中,图像是按照二维矩阵的形式表示的。所以对图像的操作就是对矩阵的操作。
对图像进行缩放、平移、旋转,都可以转化为矩阵的运算。
关于变换矩阵的构造,请参考:
《 [gym 101047C Robotics Competition] 矩阵快速幂求解点旋转平移N次之后的位置》
参考原图:
1. 图像平移
init = imread('Fig3.tif'); % 读取图像
[R, C] = size(init); % 获取图像大小 res = zeros(R, C); % 构造结果矩阵。每个像素点默认初始化为0(黑色) delX = 50; % 平移量X delY = 50; % 平移量Y tras = [1 0 delX; 0 1 delY; 0 0 1]; % 平移的变换矩阵 for i = 1 : R for j = 1 : C temp = [i; j; 1]; temp = tras * temp;