图像文件的操作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.

相关推荐
吃好睡好便好1 天前
用while循环语句求和
开发语言·学习·算法·matlab·信息可视化
吃好睡好便好1 天前
用for循环语句求和
开发语言·人工智能·学习·matlab·学习方法
构建的乐趣2 天前
Givens rotation matlab实验
matlab·linear algebra
Deep-w2 天前
【MATLAB】基于 MATLAB/Simulink 的无刷直流电机(BLDC)转速控制模糊 PID 算法
开发语言·算法·matlab
Evand J2 天前
【MATLAB代码介绍】到达时间(TOA)定位,三维空间,带EKF的轨迹滤波与误差分析
开发语言·matlab
吃好睡好便好2 天前
用if…elseif…end语句输出成绩等级
开发语言·前端·javascript·数据库·学习·matlab·信息可视化
Deep-w2 天前
【MATLAB】基于遗传算法的直流电机 PI 控制器参数优化研究
开发语言·算法·matlab
吃好睡好便好3 天前
用if…end…语句计算分段函数
开发语言·人工智能·学习·算法·matlab
Matlab程序猿小助手3 天前
【MATLAB源码-第319期】基于matlab的帝王蝶优化算法(MBO)无人机三维路径规划,输出做短路径图和适应度曲线.
开发语言·算法·matlab
Evand J3 天前
【MATLAB控制例程】(9)多无人机编队协同控制与三维轨迹规划仿真,附下载链接
开发语言·分布式·matlab·无人机·控制