数字图像处理_读写和显示图像
常用的函数
imread 函数:读取参数图片,得到矩阵/数组
figure 函数:创建一个用来显示图形输出的一个窗口对象,figure(1)是指这个窗口的名字,左上角显示。也可以是figure(2)figure(3)等
imshow 函数:显示图像
title函数:显示图像的标题
subplot函数:设置图像的位置
imwrite函数: 用来实现图像文件的写入
打开一个脚本窗口,输入下面代码
1 x=imread('D:/a.jpg'); 2 figure(1)%每个窗口只有一个figure,而且figure的参数为一定范围内的整数 3 subplot(2,2,1)%2*2的第一个方格 4 imshow(x) 5 title('原始图像')%要写在imshow()后面 6 imwrite(x,'D:/b.bmp')%此时图片的后缀为bmp 7 y=rgb2gray(x)%彩色图像变为灰色图像 8 subplot(2,2,2) 9 imshow(y) 10 title('灰度图像') 11 z=im2bw(x,0.50)%彩色图像变为2值图像 12 subplot(2,2,3) 13 imshow(z) 14 title('二值图像') 15 x2=x/2%改变像素值 16 subplot(2,2,4) 17 imshow(x2)%亮度变暗一半
运行结果如下
whos函数可以把脚本里面的变量的信息展示出来
在命令行窗口我们可以直接对二维数组操作,并且把图片展示出来
如image(x)把变量x对应的图片展示出来
下面介绍一下imagesc的二个常用的用法
imagesc(
将数组 C
)C
中的数据显示为一个图像,该图像使用颜色图中的全部颜色。C
的每个元素指定图像的 1 个像素的颜色。生成的图像是一个 m
×n
像素网格,其中 m
和 n
分别是 C
中的列数和行数。这些元素的行索引和列索引确定了对应像素的中心。
imagesc(
指定图像位置。使用 x
,y
,C
)x
和 y
可指定与 C(1,1)
和 C(m,n)
对应的边角的位置。要同时指定两个边角,请将 x
和 y
设置为二元素向量。要指定第一个边角并让 imagesc
确定另一个,请将 x
和 y
设为标量值。图像将根据需要进行拉伸和定向。
用法一:显示矩阵数据的图像
创建矩阵 x。显示 x中数据的图像。向图添加颜色栏以显示当前颜色图。默认情况下,imagesc
色阶颜色范围以便图像使用颜色图中的所有颜色,其中 x
中的最小值映射到颜色图中的第一种颜色,最大值映射到最后一种颜色。
>> imagesc(x)
>> imagesc([40,100],[40,100],x)%展示指定范围的图片
用法二:控制数据值到颜色图的颜色映射
将 y
创建为数据值的数组。创建 y
的图像并设置颜色范围,使 60 或更小的值映射到颜色图中的第一种颜色,80或更大的值映射到颜色图中的最后一种颜色。显示颜色栏以说明数据值如何映入颜色图。
>> imagesc(y,[60,80])
只有60-80的像素值被正常显示,大于80的都变为80的颜色,小于60的都是蓝色
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!