I am new to EmguCV. I want to convert an rgb image into gray scale. For the conversion I have used the code
Image grayImage = ColordImage.Co
Alternately, if you don't want to use Convert
(e.g. in case your ColoredImage
is some other data type such as IntPtr), there are numerous constructors available such as:
Image<Gray, byte> grayFrame = new Image<Gray, byte>(width, height, stride, imageData);
Here is a full list:
http://www.emgu.com/wiki/files/2.1.0.0/html/cb45d54d-ebce-44b6-0352-3e1105c0862a.htm
There are also some more examples (including usage of Convert) on the emgu Wiki: http://www.emgu.com/wiki/index.php/Working_with_Images
One simple way is to pass BitMap of color image in the constructor;
Image<Bgr, byte> inputImage = //your original bgr image
Image<Gray, Byte> result = new Image<Gray,byte>(inputImage.Bitmap);
It may depend on the type of colour that ColordImage is.
For instance, this works:
Capture cap = new Capture(1);
Image <Bgr,Byte> ColordImage = cap.QueryFrame();
Image <Gray,Byte> grayImage = ColordImage.Convert<Gray, Byte>();
imageBox1.Image = grayImage;
If you could supply more of your code, it might become more obvious what's going on.
You should paste opencv_imgproc220.dll(if you use emgu cv 2.2.1.1150) to your project bin/debug folder.