我正在尝试对这样的图像进行一些图像处理:
这是一个24位BMP图像。
在MATLAB中,我得到了以下信息:
>> x = imread('1.bmp');
>> size(x)
ans =
200 150 3
这表明它有3个通道,分别对应R,G和B.
这意味着每个像素将具有每个8位的三个分量。
我想要做的是使用MATLAB或OpenCV将此图像转换为16位,一个通道(即一种颜色),然后进行一些图像处理。我的图像处理算法正在处理16位图像。
答案 0 :(得分:3)
由于即使在RGB中图像也是灰度,您只需要其中一个通道即可获得灰度图像。您也可以使用rgb2gray()功能。
然后,您可以使用im2uint16()将其转换为16位无符号整数图像。