C++ Đếm số lượng hình tròn màu trong ảnh bằng OpenCV

Như tít. Em nghĩ cái này là cơ bản nhất của OpenCV rồi nhưng mà làm theo demo từ
http :beatbrick: ://docs.opencv.org/2.4/doc/tutorials/imgproc/imgtrans/hough_circle/hough_circle.html
(Em dùng vs2015, build x64 vì cái OpenCV download về rồi giải nén thấy chỉ có x64)

  • Ở đây em chỉ đếm số lượng hình tròn chứ chưa quan tâm đến màu sắc,
  • Hình ảnh thì mở paint ra tạo cái hình 300x300 rồi vẽ vài hình tròn cỡ R=50 gì đó rồi tô màu lên
    -> kết quả:
  • sau khi chạy hàm này: HoughCircles( src_gray, circles, CV_HOUGH_GRADIENT, 1, src_gray.rows/8, 200, 100, 0, 0 );
    thì em thấy cái circles nó có size là hàng tỉ tỉ :sweat: tức là đã phát hiện ra hàng tỉ tỉ hình tròn :oh: tất nhiên là nếu cho code chạy tiếp thì app sẽ crash

Vậy có ai rành về OpenCV thì hướng dẫn giúp e demo cái này với ạ. Trong này thấy có 3 hàm:

cvtColor( src, src_gray, CV_BGR2GRAY );
GaussianBlur( src_gray, src_gray, Size(9, 9), 2, 2 );
HoughCircles( src_gray, circles, CV_HOUGH_GRADIENT, 1, src_gray.rows/8, 200, 100, 0, 0 );

Không biết có cần tham số nào đặc biệt cho các hàm này để chạy demo cho đúng ko, mọi người giúp em, em xin cám ơn.

Anh chị em khoa học máy tính UIT lên giúp với :adore:

[QUOTE=cunchu2011;364609]Anh chị em khoa học máy tính UIT lên giúp với :adore:[/QUOTE]

Chào bạn,
Lỗi trên có thể do định dạng hình ảnh có vấn đề. Bạn thử tải một vài hình có chứa hình tròn trên mạng về chạy thử. Nếu vẫn không được thì xem lại code.
Code trên mình chạy vẫn ra kết quả với một vài hình trên mạng.
P/S. Mình code Python

Cám ơn bạn, mình đã tìm ra vấn đề, đó là do mình config không đúng
Mình làm config theo trên này là được:
://docs.opencv.org/3.0-last-rst/doc/tutorials/introduction/windows_install/windows_install.html