C# · 12月 26, 2021

在C#中使用emguCV转换为灰度

我是EmguCV的新手.我想将rgb图像转换成灰度级.对于转换我已经使用了代码 Image<Gray,byte> grayImage = ColordImage.Convert<Gray,byte>();

现在,当我在C#中编译这个代码时,它没有错误,但是当我运行它,然后几秒钟后,它给出了这个代码行的异常,这种类型的转换不被OpenCV支持.现在可以帮我解决这个问题.

问候
阿迈勒

解决方法 它可能取决于ColordImage的颜色类型.

例如,这样做:

Capture cap = new Capture(1);Image <Bgr,Byte> ColordImage = cap.QueryFrame();Image <Gray,Byte> grayImage = ColordImage.Convert<Gray,Byte>();image@R_220_2419@1.Image = grayImage;

如果您可以提供更多的代码,那么可能会更明显的发生什么.