Próbuję wykryć prostokąty za pomocą OpenCV. Czasami jednak staje się to dość trudne po uruchomieniu metody Canny, ponieważ dwie krawędzie są zwykle wymazywane. Próbowałem wielu różnych zestawów progów i zacierałem je przed zastosowaniem Canny'ego, ale nie mam jeszcze dużych pozytywnych wyników. Obecnie nie mam rozmyciu obrazu, więc jest to dość dużo, co robię:Wykrywanie krawędzi za pomocą OpenCV (Canny)
Mat imgSource = Highgui.imread(filepath);
Imgproc.Canny(imgSource, imgSource, 300, 600, 5, true);
Przykład:
original http://imagizer.imageshack.us/a/img822/8776/27i9j.jpg Canny http://imagizer.imageshack.us/a/img841/9868/wkc95.jpg
Następnie próbuję findContours metodę w OpenCV do wykrycia prostokąta, działa w 80% przypadków, jak mogę go poprawić?
jako punkt wyjścia, spróbuj zrobić cvtColor (imgSource, imgSource, CV_BGR2GRAY); próg (imgSource, imgSource, 25 255, THRESH_BINARY); a następnie findContours –