使用Emgu CV获取黑白2 BIT图像

时间:2017-06-26 12:35:02

标签: c# emgucv

你有一个我需要转换成黑白和2位深度的图像。

我试过跟随并生成一个8位的图像。没有看到生成2位图像的任何选项。

Emgu.CV.Image<Gray, Single> image = new Emgu.CV.Image<Gray, Single>("test.jpg");

有人可以提出建议吗?

1 个答案:

答案 0 :(得分:0)

在emgucv中,您有以下图像深度

Byte,SByte,Single(float),Double,UInt16,Int16,Int32(int) (来自emgucv

您没有2位深度。 但你可以制作一个看起来像这样的2位图像的图像:

var theImage = new Image<Gray, byte>(@"d:\temp\lena.jpg");
        for (int i = theImage.Rows - 1; i >= 0; i--)
        {
            for (int j = theImage.Cols - 1; j >= 0; j--)
            {
                if(theImage.Data[i,j,0]>byte.MaxValue/2)
                {
                        theImage.Data[i, j, 0] = byte.MaxValue;
                }
                else
                {
                    theImage.Data[i, j, 0] = 0;
                }

            }
        }