matlab 灰度图像矩阵的大小问题(入门级)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab 灰度图像矩阵的大小问题(入门级)相关的知识,希望对你有一定的参考价值。

有以下几个问题:
1 不同的灰度图像在matlab中用imread读取的时候,矩阵的大小不一样,矩阵的维数大小不一样代表了什么?
2 能不能将其变为方阵?那这样的话图像会有什么变化?
3 怎么将一个灰度图像加模糊?应该是乘上一个矩阵。。。
4 怎么对一个图像加噪声,比如珀松噪声

1 灰度图应该是二维矩阵,维数不同是因为图像大小不同。。。
2 变成方的当然可以,你图片也就变方了。从某种角度讲,算是你处理了一下你的图片,会造成信息损失的。。
3 不是乘上,而是和一个矩阵做卷积,模糊成什么样就看你用来做卷积的矩阵长成什么样了。。。。
4 嗯,就是随机从图片里挑出一些位置,把原有像素值替换成别的数值。。。

函数是啥,楼上说的很清楚了貌似。。我只是换一个角度回答这些问题。
参考技术A 1
灰度图应该是二维矩阵,维数不同是因为图像大小不同。。。
2
变成方的当然可以,你图片也就变方了。从某种角度讲,算是你处理了一下你的图片,会造成信息损失的。。
3
不是乘上,而是和一个矩阵做卷积,模糊成什么样就看你用来做卷积的矩阵长成什么样了。。
参考技术B

    灰度的数字图像中,每个像素用一个数表示,整个图像用矩阵表示,矩阵的行数就是图像的高,矩阵的列数就是图像的宽。

    对于彩色图像需要三通道表示,matlab里表示为三维矩阵,其中第三维的长度是3。

    imresize函数可以改变图像矩阵的尺寸,可以直观理解为不保持宽高比的任意缩放。当然可以用截取的方法缩小图像尺寸。

    灰度图像加模糊的方法很多,最简单的是用均值滤波,而不是乘以矩阵。请看imfilter函数。

    加噪声用imnoise函数。

追答

有问题直接问好了。虽说图像是二维信号,不过现在已经不流行用信号的观点来研究图像了。
作为入门的话建议去看一下书,中国的有章毓晋老师的《图像工程(上) -- 图像处理》,外国的有冈萨雷斯的matlab版的数字图像处理。

本回答被提问者采纳

如何使matlab图形的数据提示显示图像灰度颜色而不是其RGB值?

【中文标题】如何使matlab图形的数据提示显示图像灰度颜色而不是其RGB值?【英文标题】:How to make the data tip of matlab figure show the image gray level color and not its RGB value? 【发布时间】:2015-06-30 07:40:31 【问题描述】:

我有灰度值的图像,我正在使用 matlab imagesc 函数显示它们。但是,当对这些数字使用数据提示时,将显示 RGB 值而不是真正的灰度级颜色。如何更改它以显示图像每个像素的灰度级颜色?

【问题讨论】:

您的图像是 RGB 还是灰度? size(YourImage,3) 的值是多少? 我在调用 imagesc 之前使用了 rgb2gray 【参考方案1】:

imagesc() 函数之后使用colormap(gray) 会将显示图像转换为灰度。

imagesc(image), colormap(gray)

imshow(uint8(image)) 其中uint8() 正在尝试根据需要将值缩放到 0~255,否则它将显示真实的灰度值。

【讨论】:

以上是关于matlab 灰度图像矩阵的大小问题(入门级)的主要内容,如果未能解决你的问题,请参考以下文章

用matlab怎么实现图像灰度级的量化,也就是灰度级压缩,从256级量化到16级

MATLAB实现图像平移

matlab 对原始图像灰度级压缩,将Gray量化成16级 下面的这个代码是啥意思 有没有会matlab的

matlab中如何求一个图像的灰度级

在matlab中,实现两副图像的灰度值相家,用imadd()函数,可是如果是图像的矩阵长度不一样怎么办?

matlab 彩色图像转化成灰度图像,灰度图像降低灰度级