如何在matlab中将16位R G B值转换为8位R G B值?

时间:2012-02-16 04:46:53

标签: matlab

我有RGB数组,它在uint16例子中:

l.r(1) = 63736

如何将其更改为8位(255)格式

我尝试了uint8(l.r(1)),但这给出了错误的结果。

1 个答案:

答案 0 :(得分:5)

您还需要重新缩放它:

l.r(1) = 63736;
uint8(l.r ./ 2^8);

如果您有图像处理工具包,则可以使用im2uint8:

RGB1 = imread('image.png');
RGB2 = im2uint8(RGB1)