使用OpenCV的Blob。哪个库最好?

时间:2012-11-23 13:24:24

标签: c++ opencv cvblobslib

我计划开始尝试使用blob作为C ++用户,并在OpenCV的cv :: Mat中有一些经验。

现在问题是,如果有的话,我应该使用哪个blobs库?

到目前为止,我已经看到了这些替代方案:

  1. cvBlobs (on google code) - 这是一个真正的c库,与IplImage一起使用,因此需要认真适应c ++。
  2. CvBlobsLib (on willowgarage opencv webpage) - 看起来像是一个c ++库,但是文档非常糟糕,有很多东西无法解释,几乎没有任何代码示例。
  3. 我在OpenCV 2.4.3库中看到了cv :: findContours,cv :: moments和cv :: drawContours。
  4. 你作为专家建议什么?我迫在眉睫的问题:新的OpenCV在谷歌代码上没有涵盖cvBlobs会怎样?


    以下是关于此主题的后续问题的链接,我在其中询问SimpleBlobDetector。你可能会感兴趣。

1 个答案:

答案 0 :(得分:5)

您应该在OpenCV 2.4中使用SimpleBlobDetector class。你几乎创建了一个SimpleBlobDetector类型的对象,然后调用detect(cv::Mat input, vector<cv::KeyPoint> keypoints, cv::Mat mask)函数,其中cv :: Mat图像作为输入,一个空矢量用于关键点,另一个cv :: Mat作为可选掩码图像的特定区域以查找关键点。

请注意,在早期版本的OpenCV中,cv :: Mat对象已经接管了所有以前单独的图像和矩阵类的图像和矩阵存储任务。