RGB2YCBCR图像转换
4视图(30天)
显示旧的评论
我有这个代码我需要中心Y, CB, CR围绕中心请告诉我我能做些什么。truo吗?
我= imread (“lena.tiff”);
J2 = rgb2ycbcr ((I));;
J2 =双(J2);
Y = ((J2 (:,: 1)));
cb = ((J2 (:,: 2)));
cr = ((J2 (:,:, 3)));
Y = Y - 128;
cb = cb - 128;
cr = cr - 128
T = dctmatx (8);
接受的答案
沃尔特·罗伯森
2021年5月9日
Y = Y - 128;
cb = cb - 128;
cr = cr - 128
如果你读的文档rgb2ycbcr
转换YCbCr颜色值,返回数值相同大小的数组作为输入。
- 如果输入是双或单,那么Y的范围(16/255、235/255)和Cb和Cr(16/255、240/255)范围。
- 如果输入是uint8,那么Y是在[235]和Cb和Cr范围[240]。
- 如果输入是uint16,那么Y的范围(4112、60395)和Cb和Cr (4112、61680)。
所以如果你想中心Y在0你减去(235 - 16)/ 2 + 16 = 125.5和Cb和Cr你会减去(240 - 16)/ 2 + 16 = 128
答案(1)
图像分析
2021年5月9日
你的意思是喜欢
cb = cb -意味着(cb (:));
cr = cr -意味着(cr (:));
或者重新调节最大值为127,最小值是-127吗?
cb =重新调节(cb、-127、127);
cr =重新调节(cr、-127、127);
当然这是两件不同的事情。他们的转变和规模不同的色域。我真的不知道你的意图是什么,或者为什么甚至是必要的。