MATLAB 反向颜色图
本教程将讨论在 MATLAB 中使用 flipud()
函数反转颜色图。
MATLAB 反向颜色图
颜色图设置图形对象(如图像)的颜色。 颜色图是一个值矩阵,它使用 RGB 三元组值将颜色分配给矩阵或数组的值。
在 Matlab 中,图像以矩阵形式存储,并包含定义其颜色的数字。 当我们使用像 imshow()
这样的函数将矩阵显示为图像时,该函数使用颜色图将颜色值分配给图像。
要反转颜色图,我们可以使用 flipud()
函数翻转矩阵或数组的值。 颜色图也是一个包含颜色值的矩阵,因此我们可以使用 flipud()
函数来反转颜色图中存在的颜色。
如果我们反转颜色图,则 Matlab 当前显示的图像和其他对象中的颜色将被反转。 例如,让我们创建一个二值图像并使用 flipud()
函数反转其颜色图。
请参阅下面的代码。
clc
clear
v = [0 0 0 0;0 1 0 0;0 0 1 0;0 0 0 0];
figure(1)
imshow(v,'InitialMagnification','fit')
colorbar
figure(2)
imshow(v,'InitialMagnification','fit')
colorbar
colormap(flipud(gray))
输出:
在上面的代码中,我们使用 imshow()
函数创建了二值图像的两个图形。 第一张图显示了原始图像和带有原始颜色图的颜色条。
在第二张图中,我们颠倒了第一张图的颜色图。 在输出中,左图显示具有原始颜色图的图像,右图显示具有反转颜色图的图像。
我们可以在输出中看到颜色颠倒了。 白色转换为黑色,黑色转换为白色。
在上面的代码中,我们使用了 imshow()
函数的放大属性来使给定的图像适合图形,因为图像很小,但是如果输入图像的尺寸很大或者我们不想放大 给定图像,我们可以忽略它。
在上面的示例中,我们使用了只有两种颜色的二值图像,但也可以对彩色图像执行此操作。
如果我们想要翻转彩色图像的颜色图,我们必须更改上面代码的最后一行,我们在其中翻转灰色颜色图,但我们必须使用颜色图代替灰色。
例如,让我们使用 imagesc()
函数从矩阵创建彩色图像,并使用 flipud()
函数反转其颜色图。
请参阅下面的代码。
clc
clear
v = [0 0 0 0;0 1 0 0;0 0 1 0;0 0 0 0];
figure(1)
imagesc(v)
colorbar
figure(2)
imagesc(v)
colorbar
colormap(flipud(colormap))
输出:
imagesc()
函数显示具有缩放颜色的图像。 如果此函数的输入是矩阵,则该函数将为每个值分配颜色图中不同的颜色并显示它。
在上面的代码中,我们翻转了之前的颜色图并将新值分配给新的颜色图。
在上面的输出中,左图显示了带有原始颜色图的图像,右图显示了带有反转颜色图的图像。 我们可以在上面的输出中看到图像的颜色和颜色条已经改变。
相关文章
MATLAB 检查变量类型
发布时间:2023/04/23 浏览次数:92 分类:MATLAB
-
在本教程中,我们将讨论如何使用 MATLAB 中的 class() 和 whos 函数检查给定变量的类型。