matlab - 在 Matlab 中显示 Y Cb 和 Cr 分量

标签 matlab

我有一个尺寸为 640*480 的 RGB 图像。我已使用 Matlab 命令 Rgbtoycbcr 将其转换为 Y Cb Cr 图像,但我想将 Y Cb Cr 分量单独显示为图形。我该怎么做?

最佳答案

这是 Benoit_11 代码的扩展。此代码不是将每个 channel 的值显示为灰度图像,而是使用 50% 的常量值填充其他 channel 。这样每个 channel 对最终画面的影响就更容易观察到。尤其是Y channel 的重要性显而易见。

RGB = imread('board.tif');
YCBCR = rgb2ycbcr(RGB);

figure;

lb={'Y','Cb','Cr'};

for channel=1:3
subplot(1,3,channel)
YCBCR_C=YCBCR;
YCBCR_C(:,:,setdiff(1:3,channel))=intmax(class(YCBCR_C))/2;
imshow(ycbcr2rgb(YCBCR_C))
title([lb{channel} ' component'],'FontSize',18);
end

enter image description here

关于matlab - 在 Matlab 中显示 Y Cb 和 Cr 分量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28638848/

相关文章:

image - 如何在 MATLAB 中水平移动图像?

Python3,将MATLAB数组代码转换为Python版本?

c++ - Armadillo 将 wav 文件加载到 mat

matlab - 使用 libsvm 调整 svm

c++ - 具有大变量的高阶贝塞尔函数计算

matlab - MATLAB 中的 @ 运算符(at 符号)是什么?

image - 在matlab中提取图像的运动模糊

c - 在主 MEX 网关函数中准备输出数据

arrays - R 与 MATLAB 中高维数据结构化的方法论

java - 在 Java 中将 Matlab 输出转换为 ArrayList