Как найти заполненный круг и круг между C# EmguCV - PullRequest
0 голосов
/ 25 мая 2020

Я пытаюсь найти разницу между заполненным кругом и кругом.

форма, которую я хочу

форма, которую я хочу

Но я не нахожу пути. Программа видит все формы, поэтому я не могу рассчитать площадь. Что я могу сделать?

               for (int i = 0; i < contours.Size; i++) //şekilleri buluyor....
            {

                double perimeter = CvInvoke.ArcLength(contours[i], true); // genişliklerini hesaplıypr.
                int cevre = Convert.ToInt16(Math.Round(perimeter));
                CvInvoke.ApproxPolyDP(contours[i], approx, 0.04 * cevre, true); //nokta listesini döndürür
                double alan = CvInvoke.ContourArea(contours[i]);


                var moments = CvInvoke.Moments(contours[i]);
                int x = (int)(moments.M10 / moments.M00);
                int y = (int)(moments.M01 / moments.M00);


                for (int j = 0; j < dizi.Length; j++)
                {
                    if (cevre == dizi[j])
                    {

                        if (approx.Size > 6)
                        {


                            if (x < 240)
                            {

                                CvInvoke.PutText(imgInput, j.ToString(), new Point(x, y),
                                Emgu.CV.CvEnum.FontFace.HersheyComplex, 0.9, new MCvScalar(255, 150, 0), 2);
                                listBox1.Items.Add(j + ": Circle");
                            }

                            else
                            {
                                CvInvoke.PutText(imgInput, j.ToString(), new Point(x, y),
                                    Emgu.CV.CvEnum.FontFace.HersheyComplex, 0.9, new MCvScalar(255, 255, 0), 2);
                                listBox1.Items.Add(j + ": Filled Circle");
                            }
                        }


                        dizi[j] = -20;

                        pictureBox2.Image = imgInput.Bitmap;

                        break;

                    }
                }


            }

Большое спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...