📜  MATLAB中的图像处理|基本操作

📅  最后修改于: 2021-04-17 02:27:28             🧑  作者: Mango

1.阅读图像

使用imread()函数将图像读取到MATLAB环境中,该函数采用具有适当扩展名的文件名作为参数
例如:

>> I=imread('nature.jpg');

这会将JPEG图像“自然”读入图像数组。

注意:命令行末尾的分号(;)用于禁止在MATLAB中输出。最后不使用,它将显示指定操作的输出。

2.显示图像

imshow()函数用于在MATLAB中显示图像。 imshow()的基本语法是

imshow(f, G);

这里f是图像矩阵,G是用于显示图像的强度级别数。以上语法中的第二个参数是可选的。如果省略G,则其值默认为256级。

当我们使用语法

imshow(f, [Low, High]);

它将所有小于或等于“低”的值显示为黑色,并将所有大于或等于“高”的值显示为白色。 “低”和“高”之间的值使用默认级别数显示为中间强度值。

例子:

显示灰度图像

>> imshow(f);

这将显示灰度图像f
另外,我们可以写

>> imshow(f, [90, 180]);

它将所有小于或等于90的值显示为黑色,并将所有大于或等于180的值显示为白色。使用默认级别数,将90到180之间的值显示为中间强度值。

显示二进制图像

>> imshow(BW);

它显示二进制图像BW 。它将值为0(零)的像素显示为黑色,将值为1的像素显示为白色。

显示RGB图像

>> imshow(f);

它显示RGB图像f

3.将映像写入磁盘

使用imwrite()函数将图像写入磁盘。 imwrite()的基本语法是

imwrite(f, 'filename');

这里的f是我们的图片,文件名是包含公认的文件格式扩展名的文件的名称。或者,我们也可以使用第三个参数明确指定所需的格式。

例如

>> imwrite(f, 'nature.jpg');

或者,我们可以将其写为

>> imwrite(f, 'nature', 'jpg');

上面的命令将图像f写入扩展名为jpg的文件名中。

注意: imwrite()函数也具有一些可选参数,具体取决于文件格式。
例如:

>> imwrite(f, 'filename', 'quality', q); 

仅用于JPEG images.Here q是整数,并且可以采取0之间的值100.Lower Q值越高的退化的值由于JPEG压缩的上面的语法是适用的。

其他一些重要功能

i。)imfinfo

它显示图像文件的详细信息
例子:

>> imfinfo nature.jpg;

输出:

Filename: 'nature.jpg'
        FileModDate: '23-Jun-2016 09:57:04'
           FileSize: 238290
             Format: 'jpg'
      FormatVersion: ''
              Width: 1920
             Height: 1200
           BitDepth: 24
          ColorType: 'truecolor'
    FormatSignature: ''
    NumberOfSamples: 3
       CodingMethod: 'Huffman'
      CodingProcess: 'Sequential'
            Comment: {'CREATOR: gd-jpeg v1.0 (using IJG JPEG v80), quality = 92?'} 

ii。)size()

size()函数以图像矩阵为参数,并给出图像的行和列尺寸f。此函数用于自动确定图像的大小。
例子 :

>> size(f)

输出 :

ans =
  1920 1200

这里1920是图像f中的行数,而1200是图像f中的列数。

注意:众所周知,RGB图像是在MATLAB中使用3-D矩阵表示的。因此,如果f是RGB图像,则上述函数将产生如下输出:

ans =
  1920 1200 3

iii。)谁

此函数将显示有关图像矩阵f的更多详细信息。
例子 :

whos f

输出 :

Name        Size                Bytes    Class    Attributes
  f         300x400x3            360000   uint8