您的位置:首页 > 编程语言 > MATLAB

【MATLAB图像处理学习】1.读取和显示图片

2020-04-02 07:26 2747 查看

CHAPTER2 图像处理的基础函数

【使用的教材:冈萨雷斯 数字图像处理MATLAB(Digital image processing with Matlab】

【原书图片下载地址:点这里

2.2读取图片

imread
是读取图片的函数,图片是以二维(灰色图像)或三维(彩色图像)存储的,
imread
可以读取图片的像素矩阵信息,并进行后续处理。
形式如下
imread(filename)

filename这里填写相对路径或绝对路径都可。

%相对路径
f = imread('chestxray.jpg');
%绝对路径
f = imread('C:\Users\一只小地瓜\Desktop\图像处理\实验\chestxray.jpg');

接下来查看图片信息

%二维图像 黑白图
[M,N] = size(f);
%三维图像 彩色图
[M,N,P] = size(f);

M,N返回行列;P=3,代表RGB,为三维矩阵。

在命令窗即Command Window中输入

whos f
并回车,可以返回图像大小(Size),所占字符大小(Bytes),类型(Class)

结果如下:

2.3 显示图片

imshow
将像素矩阵在figure中以图像的形式展现出来
imshow(filename)

imshow(I)
在图窗中显示灰度图像
I
imshow
使用图像数据类型的默认显示范围,并优化图窗、坐标区和图像对象属性以便显示图像。

imshow(I,[low high])
显示灰度图像
I
,以二元素向量
[low high]
形式指定显示范围。

impixelinfo
这个函数可以展示光标所在位置像素点的位置及灰度值

涉及知识点:

  1. 图像坐标左上角为原点,主要是考虑到矩阵的第一个元素在阵列的左上角
  2. RGB全为0时为黑色,RGB全为256时为白色,这是因为三种颜色的完全混合相加就是白色,参照日光。

2.4 生成图片

imwrite
函数能够将像素矩阵写入文件中

imwrite(f,filename)
将像素矩阵f,写入文件filename中。如果filename没有指定路径,则存在当前工作文件夹下

imwrite(f,'chestxray2.jpg')
  • 点赞 1
  • 收藏
  • 分享
  • 文章举报
一只小地瓜 发布了6 篇原创文章 · 获赞 5 · 访问量 313 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: