Aşırı erozyon ve genişleme işlemiyle sayıyı ortadan kaldırmaya çalışıyorum. Denedim ama hiçbir şey olmadı. Bir şeyi değiştirip değiştirmeyeceğini görmek için değerleri değiştirdim ama yine de hiçbir şey değişmedi. Görüntü, yukarıdaki bağlantıda olduğu gibi devam eder. Bu parametrelerden ne haber… Belgeleri okudum ama tam olarak anlamadım (gördüğünüz gibi, fonksiyonda tahmin ediyordum). Neyi yanlış yapıyorum?Opencv'de erozyon ve dilate işlevi nasıl kullanılır?
Resim https://docs.google.com/file/d/0BzUNc6BOkYrNeVhYUk1oQjFSQTQ/edit?usp=sharing
kodu:
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;
int main (int argc, char **argv)
{
Mat im_gray;
Mat img_bw;
Mat img_final;
Mat im_rgb = imread("cam.jpg");
cvtColor(im_rgb,im_gray,CV_RGB2GRAY);
adaptiveThreshold(im_gray, img_bw, 255, ADAPTIVE_THRESH_MEAN_C, THRESH_BINARY_INV, 105, 1);
dilate(img_bw, img_final, 0, Point(-1, -1), 2, 1, 1);
imwrite("cam_final.jpg", img_final);
return 0;
}
Yani, http://docs.opencv.org/modules/imgproc/doc/filtering.html#void%20dilate%28InputArray%20src%20OutputArray%20dst%%%%%%%Ca%%%C3%B1 % 20anchor,% 20int% 20iterations,% 20int% 20borderType,% 20const% 20Scalar &% 20borderValue% 29 bana bir dakika verir ... – Antonio