内容简介:接下来做一个操作,将这个矩阵内行数和列数能被 2 整除的,将这一行和列内的值全部变为 0如果想要查询有关于一张图片的相关信息,可以使用函数
Read and Show an image
imread() imshow()
I = imread('pout.tif'); %read imshow(I); %show
一张图片有 rgb 三种颜色,每个点就是一个矩阵的数值,而这个数值就代表着 rgb,所以我们操作一个图片,也就相当于操作一个矩阵内的数值,或者说,修改矩阵内的数值,也就相当于修改图片
接下来做一个操作,将这个矩阵内行数和列数能被 2 整除的,将这一行和列内的值全部变为 0
for i = 1 : size(i,1) for j = 1 : size(i,2) if(rem(i,2) == 0 || rem(j,2) == 0) I(i,j) = 0; end end end
Imageinfo
如果想要查询有关于一张图片的相关信息,可以使用函数 imageinfo
,其调用格式为: imageinfo('string')
,其中 string 为图片的名称 (包含后缀名)
imageinfo('pout.tif')
Imtool
imtool
函数主要是用来查看一个图片的每个像素对应的数值
imtool('pout.tif')
Image Processing
immultiply()
immultiply
函数的调用格式为: Immultiply(I,x)
,其含义是,将图像对应的矩阵 I 内的所有数值乘以 x
I = imread('rice.png'); subplot(1,2,1); imshow(I); J = immultiply(I,1.5); subplot(1,2,2); imshow(J);
imadd()
imadd
函数的作用是将两张影像相加,其调用格式为: imadd(I,J)
,I 的含义是一个影像对应的矩阵,J 是另一个影像对应的矩阵,但是使用 imadd()
函数有一个限制条件,就是 I,J 必须是同型的矩阵,否则无法相加
I = imread('rice.png'); J = imread('cameraman.tif'); K = imadd(I,J); subplot(1,3,1);imshow(I); subplot(1,3,2);imshow(J); subplot(1,3,3);imshow(K);
imhist()
imhist()
函数的作用是将一个图片的数值分析出来并做成一个柱状图,其调用格式为: imhist(I)
I = imread('pout.tif'); imhist(I);
稍微解释一下这个图,横坐标是 0-255,纵坐标是频数,表示这个值有多少个
histeq()
通过分析上面的图,我们发现他在某一个区间数值比较集中,而其他数值几乎就没有,这种图像的数值分布并不是很均匀,所以如果我们想要它分布更加均匀,就可以使用 histeq
函数,起调用格式为: histeq(I)
I = imread('pout.tif'); I2 = histeq(I); subplot(1,4,1);imhist(I); subplot(1,4,2);imshow(I); subplot(1,4,3);imshow(I2); subplot(1,4,4);imhist(I2);
imrotate()
imrotate
函数的作用是旋转一个图像,其调用格式为: imrotate(I,theta,’bilinear’)
, theta
表示旋转的角度, billinear
照写即可
I = imread('rice.png'); subplot(1,2,1); imshow(I); J = imrotate(I,35,'bilinear'); subplot(1,2,2); imshow(J);
还有一些对影像的操作,这里就不讲了,下面附一张图,有需要的可以自行Google
以上所述就是小编给大家介绍的《matlab—影像分析基础》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- matlab—影像分析进阶
- 影像云,一个不能错失的时代
- 2018年智能影像行业研究报告
- 医学影像AI:全球市场展望
- [译] 解密 Mapbox 卫星影像处理神器 Robosat
- 初探 Spectra:全球首个开源医疗影像系统
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。