Как убрать небольшой шум (несколько нерегулярных маленьких фигур) из изображения opencv - PullRequest
1 голос
/ 08 апреля 2019

У меня есть серия изображений, таких как:

enter image description here

Я хочу удалить все эти маленькие маленькие неправильные формы, чтобы получить только большую круглую форму.

Я попытался снять шум:

 Cv2.FastNlMeansDenoising(myMat, myMat,h:3);

Но не получаются хорошие результаты, и процесс замедляется, поэтому кажется, что он требует другой обработки, поэтому я попытался, расширился и размыл:

            int erosionSize = 2;
            Mat element = Cv2.GetStructuringElement(MorphShapes.Cross,
                     new OpenCvSharp.Size(2 * erosionSize + 1, 2 * erosionSize + 1),
                      new OpenCvSharp.Point(erosionSize, erosionSize));
            Cv2.Dilate(myMat, myMat, element, iterations: 2);
            Cv2.Blur(myMat, myMat, new OpenCvSharp.Size(9, 9));

но получить что-то вроде

enter image description here

Я думаю, может быть, использование hsv или что-то поможет, что будет лучше?

...