6

我计划以 C++ 用户的身份开始尝试 blob,并在 OpenCV 的 cv::Mat 有一些经验。

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

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

  1. cvBlobs(在谷歌代码上) ——这确实是 ac 库,与 IplImage 一起工作,所以它需要认真适应 c++。
  2. CvBlobsLib(在 willowgarage opencv 网页上) ——它看起来像一个 c++ 库,但文档非常糟糕,有很多东西无法解释,几乎没有任何代码示例。
  3. 我在 OpenCV 2.4.3 库中看到了 cv::findContours、cv::moments 和 cv::drawContours。

作为专家,你有什么建议?我的紧迫问题:新的 OpenCV 不会涵盖谷歌代码上的 cvBlobs 吗?


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

4

2 回答 2

5

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

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

于 2012-11-23T18:16:28.803 回答
2

你应该看看新的opencvblobslib。它具有强大的功能,例如多核支持。

于 2013-11-12T08:17:06.173 回答