我使用深度为UInt16(ushort)的EmguCV在C#中创建一个图像对象。 然后我用线性渐变填充图像,该值越大,行索引越高。
我不明白的是,值255产生100%的白色像素。但是我已经指定了16位的深度,根据我的理解,应该使用65,535代表白色。我发现的是大于或等于255的所有东西都是白色的。
var image = new Image<Gray, UInt16>(255, 255);
for (int column = 0; column < image.Width; column++)
{
for (int row = 0; row < image.Height; row++)
{
image.Data[row, column, 0] = (UInt16)row;
}
}
image.Save("temp.jpg");
意外结果:
我错过了什么?如何创建一个图像并用0到65,535之间的值填充它,实际上映射到0为黑色,65,535为白色?