у меня есть другой вопрос. Идк, что происходит, пытался попытаться сделать детектор края Канни. Проблема в том, что когда я хочу обнаруживать ребра на простой форме, такой как квадрат, программа может ее обнаружить. Но когда я хочу обнаружить фигуры на не очень простой графической программе, просто дает мне изображение, заполненное только черным цветом. У вас есть идея, что происходит?EmguCV Canny черный окно
Я использую этот код ниже:
public Bitmap CannyEdge(Bitmap bmp)
{
Image<Gray, Byte> Cannybmp;
Image<Gray, Byte> GrayBmp;
Image<Bgr, Byte> orig = new Image<Bgr, Byte>(bmp);
Image<Bgr, Byte> imgSmooth;
Bitmap output;
imgSmooth = orig.PyrDown().PyrUp();
imgSmooth._SmoothGaussian(3);
GrayBmp = imgSmooth.Convert<Gray, byte>();
Gray grayCannyThreshold = new Gray(160.0);
Gray grayThreshLinking = new Gray(80.0);
Cannybmp = GrayBmp.Canny(grayCannyThreshold.Intensity, grayThreshLinking.Intensity);
output = Cannybmp.ToBitmap();
//int a = 5;
return output;
}
private void button1_Click(object sender, EventArgs e)
{
Bitmap bmp = new Bitmap(pictureBox1.Image);
pictureBox2.Image = CannyEdge(bmp);
}
Да, я попробовал ... Но я узнал, что EmguCV 3.0 сломал функцию pyrDown() ... поэтому я использовал только pyrUp(), что должно быть хорошо для меня :) – Apuna12