如何在 matlab imshow(I,n) 上设置灰度级?
How to set gray level on matlab imshow(I,n)?
我是 MATLAB 的新手,我注意到旧版本的 MATLAB 曾经有 imshow
命令允许第二个参数设置可以在输出中出现的灰度级数(在灰色图像的情况下)它类似于:: imshow(imagematrix,4)
仅显示 imagematrix
.
的 4 个灰色级别(阴影)
我正在使用 Matlab R2014a,但此命令已不存在。我找不到替代方案,我收到的错误消息如下:
The syntax IMSHOW(I,N) has been removed.
如何使用 imshow
或替代方法设置灰度图像的显示级别?
非常感谢!
您可以尝试使用 histeq
,它不仅会执行直方图均衡化以增强图像的对比度,而且您还可以指定可以在多少级别显示输出。将此视为 imshow(I,n)
,但具有增强图像的对比度的额外好处...因此您可以执行以下操作:
out = histeq(I, n);
imshow(out);
例如,使用作为 MATLAB 系统路径一部分的 cameraman.tif
并指定 n = 4
,原始图像如下所示:
输出如下:
要检查图像中独特强度的总数,我们可以这样做:
>> unique(out(:))
ans =
0
85
170
255
我是 MATLAB 的新手,我注意到旧版本的 MATLAB 曾经有 imshow
命令允许第二个参数设置可以在输出中出现的灰度级数(在灰色图像的情况下)它类似于:: imshow(imagematrix,4)
仅显示 imagematrix
.
我正在使用 Matlab R2014a,但此命令已不存在。我找不到替代方案,我收到的错误消息如下:
The syntax IMSHOW(I,N) has been removed.
如何使用 imshow
或替代方法设置灰度图像的显示级别?
非常感谢!
您可以尝试使用 histeq
,它不仅会执行直方图均衡化以增强图像的对比度,而且您还可以指定可以在多少级别显示输出。将此视为 imshow(I,n)
,但具有增强图像的对比度的额外好处...因此您可以执行以下操作:
out = histeq(I, n);
imshow(out);
例如,使用作为 MATLAB 系统路径一部分的 cameraman.tif
并指定 n = 4
,原始图像如下所示:
输出如下:
要检查图像中独特强度的总数,我们可以这样做:
>> unique(out(:))
ans =
0
85
170
255