我试图在emgu图像中找到轮廓,但我发现如果从路径或位图读取emgu图像,找到的轮廓数量是不一样的。
实施例........
Image<Bgr, byte> emguPathImage = new Image<Bgr, byte>(path);
Image<Gray, byte> gray1 = emguPathImage .Convert<Gray, Byte>();
Bitmap bitmapImage = new Bitmap(path);
Image<Bgr, byte> emguBitmapImage = new Image<Bgr, byte>(bitmapImage);
Image<Gray, byte> gray2 = emguBitmapImage .Convert<Gray, Byte>();
现在,当我尝试为gray1和gray2调用findContours时,我获得了不同数量的轮廓
var sourceContours1 = gray1.FindContours(Emgu.CV.CvEnum.CHAIN_APPROX_METHOD.CV_CHAIN_APPROX_NONE, Emgu.CV.CvEnum.RETR_TYPE.CV_RETR_LIST);
var sourceContours2 = gray2.FindContours(Emgu.CV.CvEnum.CHAIN_APPROX_METHOD.CV_CHAIN_APPROX_NONE, Emgu.CV.CvEnum.RETR_TYPE.CV_RETR_LIST);
因此可能得到完全相同的结果,但为什么结果不同!