Matlab图像九宫格基本操作(翻转,镜像等)+位图操作

这次blog提到的操作对于matlab来说都很基础,而且对于有编程和计算机基础的人来说也很简单,不过我一开始也是对于matlab的语法什么的一知半解,这里把我亲手写的东西push出来,小伙伴们共勉。

目标

废话不多说了
我们的目标就是成成一个这样的图:
在这里插入图片描述
和我选的图片有点粗糙,但是大家仔细看这里面的镜像图可别以为是原图。
大致就是,我们要选择一个图片作为原图(左上角的那一张),然后我们翻转,镜像,再翻转,再加上一些位图操作变成九宫格的每个图像的样子 。

其实真的比较简单,直接上代码

导入图片

img1=imread("test.jpg")

翻转镜像等基础操作

这里不一一列举,因为大家试一试或者百度一下就知道哪个是翻转那个是镜像了。

rotMat=rot90(img1);
fliMat=rot90(img1);
fliMat2=rot90(fliMat);
fliMat3=rot90(fliMat2);
daoguolai=flipud(img1);
jiangxiang=fliplr(img1);

简单一看,你们就会发现,matlab的图像操作简直easy到爆炸。

位图操作

这里其实是比上面有难度的,还是要了解一些位图的基本性质的,这里我们用的GRB图像。
简单来讲就是我们把一般的位图图片理解为一个二维矩阵,然后每个点就是代表一个pixel,可以说给两个维度的数据就可以对这个pixel进行定位了。
那么RGB图片就是在这个的基础上增加了一个维度,也就是说RGB图像还具有深度,而在深度这个维度上有三层,分别就是红、绿、蓝,对这个深度维度的数值的调整就可以进行颜色的改变进而改变图像。

sanjiao1=tril(img1(:,:,1));
sanjiao2=tril(img1(:,:,2));
sanjiao3=tril(img1(:,:,3));
sanjiao=cat(3,sanjiao1,sanjiao2,sanjiao3);
img2=img1;
img2(100:400,100:400,1:3)=255;
img3=img1;
img3(:,:,:)=0;
img3(100:400,100:400,1:3)=img1(100:400,100:400,1:3);

黑色三角我们用的思路是分别将三个色彩层的相同的一个角变黑,然后再进行合并,另外的角也就呈现了原色彩的图像。
别的操作不是很难,一看代码就应该知道了。

subplot九宫格

这个也是必会的基础操作,上代码

subplot(331),imshow(img1)
subplot(332),imshow(rotMat)
subplot(333),imshow(fliMat)
subplot(334),imshow(fliMat2)
subplot(335),imshow(img2)
subplot(336),imshow(daoguolai)
subplot(337),imshow(jiangxiang)
subplot(338),imshow(sanjiao)
subplot(339),imshow(img3)

初入matlab ,分享共勉 ,不好的地方欢迎指正。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值