MATLAB求助大神

2025-05-12 17:12:54
推荐回答(1个)
回答1:

函数大致如下:

function im = imflip(imfile, fmode)
im = imread(imfile);
switch fmode
    case 'ud'
        im = flipdim(im, 1);
    case 'lr'
        im = flipdim(im, 2);
    case 'diag'
        im = permute(im, [2 1 3]);
    otherwise
end

测试代码:

file = 'Lotus.jpg';
subplot 221
imshow(imflip(file,'ud'))
subplot 222
imshow(imflip(file,'lr'))
subplot 223
imshow(imflip(file,'diag'))
subplot 224
imshow(imflip(file,'original'))

结果如图:

 

说明:

1、我不确定你说的对角线翻转是什么概念,大致上应该是指转置吧?如果不是,请明确你的要求。

2、代码对真彩图象没问题,但对于索引图像来说由于涉及调色板,所以暂时没作处理。如有需要也请楼主说明。

 

希望对楼主有帮助,如有问题欢迎追问,满意望采纳。