本示例说明如何将图像读取到工作区中,调整图像中的对比度,然后将调整后的图像写入文件。

步骤1:读取并显示图像

使用imread命令将图像读入工作区。该示例读取工具箱附带的示例图像之一,名为pout.tif文件的女孩图像,并将其存储在名为I的数组中。imread从文件推断出图形文件格式是“标记图像文件格式(TIFF)”。

 I = imread('pout.tif');

使用imshow函数显示图像。您也可以在“图像查看器”应用程序中查看图像。函数imtool将打开图像查看器应用程序,该应用程序提供了一个集成的环境,用于显示图像和执行一些常见的图像处理任务。“图像查看器”应用程序提供imshow的所有图像显示功能,还提供对其他一些用于导航和浏览图像的工具的访问权,例如滚动条,“像素区域”工具,“图像信息”工具和“对比度调整”工具。

 imshow(I)

步骤2:检查图像在工作区中的显示方式

使用whos命令,查看imread函数如何将图像数据存储在工作空间中。您也可以在工作区浏览器中检查变量。imread函数返回变量中的图像数据,该变量I是291 x 240元素的uint8数据数组。

 whos IName        Size             Bytes  Class    Attributes​I         291x240            69840  uint8              

步骤3:改善图像对比度

查看图像像素强度值的分布。图像pout.tif是对比度较低的图像。要查看图像中强度的分布,请调用imhist函数来创建直方图。(在imhist图形命令之前调用figure,以便直方图不会覆盖I当前图形窗口中图像的显示)。请注意由直方图可以观察到图像的强度值范围很窄,并未覆盖[0,255]的所有范围,缺少具有良好对比度效果的的高值和低值。

 figureimhist(I)

使用histeq函数可以改善图像的对比度。直方图均衡化使得强度值分布在整个图像范围内。显示图像。(工具箱包括执行对比度调整的其他几个函数,包括imadjustadapthisteq,以及图像查看器中提供的交互式工具,例如Adjust Contrast工具。)

 I2 = histeq(I);figureimshow(I2)

再次调用imhist函数,创建直方图均衡的图像I2。如果比较两个直方图,可以看到I2的直方图比I的直方图覆盖更大的分布范围。

 figureimhist(I2)

步骤4:将调整后的图像写入文件

I2使用imwrite函数将新调整的图像写入磁盘文件。示例中,文件名中包含文件扩展名'.png',因此该imwrite函数将图像以可移植网络图形(PNG)格式写入文件,当然我们可以指定其他格式。

 imwrite (I2, 'pout2.png');

步骤5:检查新写入文件的内容

使用imfinfo函数查看imwrite写入磁盘文件的内容。imfinfo函数返回图像文件中的信息,例如其格式,大小,宽度和高度。

 imfinfo('pout2.png')ans = struct with fields:Filename: '/tmp/Bdoc20b_1465442_262082/tp89909334/images-ex89505080/pout2.png'FileModDate: '24-Aug-2020 19:43:31'FileSize: 36938Format: 'png'FormatVersion: []Width: 240Height: 291BitDepth: 8ColorType: 'grayscale'FormatSignature: [137 80 78 71 13 10 26 10]Colormap: []Histogram: []InterlaceType: 'none'Transparency: 'none'SimpleTransparencyData: []BackgroundColor: []RenderingIntent: []Chromaticities: []Gamma: []XResolution: []YResolution: []ResolutionUnit: []XOffset: []YOffset: []OffsetUnit: []SignificantBits: []ImageModTime: '24 Aug 2020 23:43:31 +0000'Title: []Author: []Description: []Copyright: []CreationTime: []Software: []Disclaimer: []Warning: []Source: []Comment: []OtherText: []


注:本文根据MATLAB官网内容修改而成。

欢迎您进一步了解以下MATLAB系列文章:

吃小羊:MATLAB作图实例:00:索引​zhuanlan.zhihu.com

吃小羊:MATLAB金融工具箱:00:索引​zhuanlan.zhihu.com

imread函数 matlab_MATLAB图像处理:01:基本图像导入,处理和导出相关推荐

  1. python imread函数_opencv学习之读取图像-imread函数

    序 想要完整全面地学习opencv,仅凭阅读samples的示例源码是不够的.毕竟opencv是一个拥有非常多函数的程序库,所以在每学习一个函数时,芒果觉得有必要记录下来,分享给有需要的同学.于是,就 ...

  2. imread函数_MATLAB图像处理:27:使用imtranslate函数平移图像

    本示例说明如何使用imtranslate函数对图像执行平移操作.平移操作将图像在x或y方向或两者上移动指定数量的像素. 将图像读入工作区. I = imread('cameraman.tif'); 显 ...

  3. imread函数_MATLAB图像处理:23:使用缩放函数调整图像大小

    本示例说明如何使用imresize函数调整图像大小. 指定放大倍数 将图像读入工作区. I = imread('circuit.tif'); 使用imresize功能调整图像尺寸.在此示例中,您指定放 ...

  4. 遥感图像处理基本操作——遥感图像导入、导出、添加波段、添加删除通道、裁剪

    遥感图像处理(processing of remote sensing image data)是对遥感图像进行辐射校正和几何纠正.图像整饰.投影变换.镶嵌.特征提取.分类以及各种专题处理等一系列操作, ...

  5. imread函数、窗口函数、imshow函数、imwrite函数等

    1.imread函数 首先,我们看imread函数,可以在OpenCV官方文档中查到其原型如下: [cpp] view plaincopy Mat imread(const string& f ...

  6. 数字图像处理01:imadjust函数的Pyhton实现

    版权声明:本文为博主原创文章,未经博主允许不得转载. 数字图像处理01:imadjust函数的Pyhton实现 1.imadjust函数 Matlab的工具箱函数:imadjust(f,[low_in ...

  7. OPENCV入门教程四:imread函数读入图像

    一.目标 学习imread()函数正确读入图像的方式,imread()用不对,对以后的图像处理有很大的影响. 有时候图片是灰度图,但是你用imread()读入后它就变成了彩色图,只不过它的三个通道的值 ...

  8. matlab中显示由imread函数读取的各个通道的图像

    要显示一个由 imread 函数读取的图像的各个通道,可以使用 imshow 函数结合 imread 函数来完成.以下是一些示例代码: 显示RGB图像的各个通道: rgb_image = imread ...

  9. 【opencv-c++】cv::imread函数读取图像

    [opencv-c++]cv::imread函数读取图像 1.背景 2.示例 1.背景 本博客重点在研究并使用cv::imread函数接口. 函数原型: Mat imread( const Strin ...

最新文章

  1. 重温java中的String,StringBuffer,StringBuilder类
  2. cmd变量,参数,for循环,
  3. POI以SAX方式解析Excel2007大文件(包含空单元格的处理) Java生成CSV文件实例详解...
  4. Dalvik/ART(ANDROID)中的多线程机制(1)
  5. .NET 7 预览版2 的亮点之 NativeAOT 回顾
  6. Python web开发——自定义userprofile(用户描述)
  7. Oracle11g新特性:在线操作功能增强-Oracle对象依赖性判断增强 (转载)
  8. ArcGIS Server服务介绍与服务在js中的使用
  9. 百度的搜索好厉害,刚刚发文就能搜索到
  10. 使用github安装atom插件
  11. T00LS专访白帽子:carry_your和带头大哥【T00ls人物专访第八期】
  12. 吴江运东2万+,到底贵不贵?
  13. vcf格式文件转化为Excel(csv)格式文件(R语言的write.csv,write.table功能,Excel表的文件导入功能)...
  14. c# MD5加密
  15. win 10 设置透明图表显示为黑色方块问题
  16. centos7dos命令下打开网络
  17. 新冠死亡率居高不下,为什么偏偏是意大利?
  18. 手机号 MD5加密解密工具类
  19. 在c语言中 实参与其对应的形参各占独立的存储单元,以下正确的说法是( )。在C语言中: A.实参和与其对应的形参各占用独立的存储单元...
  20. 【本科生科研入门】英文科技论文写作-绘图篇

热门文章

  1. 【rmzt】清纯王范儿xp主题
  2. 实验十一:干簧管实验
  3. 【SpringBoot】This application has no explicit mapping for /error,so you are seeing this as a fallback
  4. uniapp顶部安全距离(包括app)
  5. Java实现多线程的几种方式
  6. Android|Toast理论篇(附自制图标信息框实现)
  7. krpano+vue3+vite实现VR看房等场景
  8. 华为云交付项目服务器配置表,云服务器设备配置列表
  9. P2P穿透(ENet丢包重传)
  10. csv文件转sdf文件