图像文件的操作MATLAB基础函数使用

简介

MATLAB中的图像处理工具箱体统了一套全方位的标准算法和图形工具,用于进行图像处理、分析、可视化和算法开发。这里仅仅对常用的基础函数做个使用介绍。

查询图像文件的信息

使用如下函数

imfinfo(filename,fmt)

函数imfinfo返回一个结构体的info,其中包括了图像文件的信息,filename是指定图像文件的字符串,fmt是指定图像文件格式的字符串。通过此函数获得的信息与图像文件格式的字符串。通过此函数获得的信息与图像文件的类型有关,但至少包含以下一些内容。

imfinfo

Matlab 复制代码
>> info = imfinfo('测试图片.jpg')

info = 

           Filename: 'C:\Users\Dell\Desktop\atongbu\text\测试图片.jpg'
        FileModDate: '08-Sep-2023 14:37:07'
           FileSize: 226226
             Format: 'jpg'
      FormatVersion: ''
              Width: 1488
             Height: 878
           BitDepth: 24
          ColorType: 'truecolor'
    FormatSignature: ''
    NumberOfSamples: 3
       CodingMethod: 'Huffman'
      CodingProcess: 'Sequential'
            Comment: {}

图像文件的读写

MATLAB提供了imread函数来读取图像文件到工作区中。通过imread函数,用户可以导入多种格式的图像数据,如TIFF/HDF/BMP/JPEG/GIF/PCX/XWD/Cursor/Icon和PNG等格式。

Matlab 复制代码
>> RGB = imread('测试图片.jpg');
>> whos
  Name        Size                  Bytes  Class    Attributes

  RGB       878x1488x3            3919392  uint8              

>>

为了把MATLAB工作中的图像数据用一种标准格式输出到图像文件中,需要使用imwrite函数来完成这个工作。Imwrite函数用于将数据输出为多种标准的图像文件。

图像文件的显示

在MATLAB中,使用函数imshow来显示图像文件。

imshow(I) displays image I in a Handle Graphics® figure, where I is a grayscale, RGB (truecolor), or binary image. For binary images, imshow displays pixels with the value 0 (zero) as black and 1 as white. imshow optimizes figure, axes, and image object properties for image display.

example

imshow(X,map) displays the indexed image X with the colormap map. A colormap matrix can have any number of rows, but it must have exactly 3 columns. Each row is interpreted as a color, with the first element specifying the intensity of red light, the second green, and the third blue. Color intensity can be specified on the interval 0.0 to 1.0.

example

imshow(filename) displays the image stored in the graphics file specified by filename.

imshow(I,[low high]) displays grayscale image I, specifying the display range as a two-element vector, [low high]. For more information, see the DisplayRange parameter.

imshow(___,Name,Value) displays an image, using name-value pairs to control aspects of the operation.

himage = imshow(___) returns the handle to the image object created by imshow.

imshow(I) 显示灰度图像I

imshow(I,[low high]) 显示灰度图像I,[low, high]为图像数据的值域

imshow(RGB)显示真彩图像RGB

imshow(X,map)显示索引图像,X为索引图像的数据矩阵,map为颜色表

imshow(filename)显示filename文件的图像

himage = imshow(___)返回船舰图像对象的句柄

Matlab 复制代码
>> imshow('测试图片.jpg')
>>

图像的格式转换

rgb2gray

I = rgb2gray(RGB) converts the truecolor image RGB to the grayscale intensity image I. The rgb2gray function converts RGB images to grayscale by eliminating the hue and saturation information while retaining the luminance. If you have Parallel Computing Toolbox™ installed, rgb2gray can perform this conversion on a GPU.

example

newmap = rgb2gray(map) returns a grayscale colormap equivalent to map.

相关推荐
远望清一色3 小时前
基于MATLAB的实现垃圾分类Matlab源码
开发语言·matlab
顶呱呱程序8 小时前
2-143 基于matlab-GUI的脉冲响应不变法实现音频滤波功能
算法·matlab·音视频·matlab-gui·音频滤波·脉冲响应不变法
简简单单做算法11 小时前
基于Retinex算法的图像去雾matlab仿真
算法·matlab·图像去雾·retinex
其实吧321 小时前
基于Matlab的图像融合研究设计
人工智能·计算机视觉·matlab
Matlab程序猿小助手1 天前
【MATLAB源码-第208期】基于matlab的改进A*算法和传统A*算法对比仿真;改进点:1.无斜穿障碍物顶点2.删除中间多余节点,减少转折。
开发语言·嵌入式硬件·算法·matlab·机器人
IT猿手1 天前
基于卷积神经网络(CNN)的时间序列预测,15个输入1个输出,可以更改数据集,MATLAB代码
人工智能·深度学习·神经网络·算法·matlab·cnn
其实吧32 天前
基于MATLAB的运动车辆跟踪检测系统
开发语言·matlab
梦里水乡8572 天前
基于MATLAB的农业病虫害识别研究
开发语言·matlab
墨痕_7772 天前
论文阅读笔记Dense Passage Retrieval for Open-Domain Question Answering
matlab
真的是我22 天前
基于MATLAB课程设计-图像处理完整版
图像处理·人工智能·计算机视觉·matlab