1. 首页
  2. 安全技术
  3. 其他
  4. MATLAB图像缩放笔记

MATLAB图像缩放笔记

上传者: 2024-05-01 01:15:08上传 RAR文件 7.06MB 热度 8次

函数:实现图像矩阵比例缩放

Matlab图像平移、旋转、缩放、镜像_Fighting!-程序员宅基地_matlab图像平移

其中第三条有误:

x = uint8(temp(1, 1));

y = uint8(temp(2, 1));

转换为uint8时,小于0.5的会被舍去,导致缩小后坐标小于0.5的都变成0,出现黑边和像素损失。

需将缩小后的坐标x,y都加上0.49(可按需调整):

function res=matResize(b,timesX,timesY)

[R, C] = size(b); %获取图像大小

res = zeros(timesX * R, timesY * C); %构造结果矩阵。每个像素点默认初始化为0(黑色)

tras = [1/timesX 0 0; 0 1/timesY 0; 0 0 1]; %缩放的变换矩阵

for i = 1 : timesX * R

for j = 1 : timesY * C

temp = tras * [j; i; 1];

x = uint8(temp(1, 1) + 0.49);

y = uint8(temp(2, 1) + 0.49);

res(i, j) = b(y, x);

end

end

end

用户评论