OpenCV 4.10.0
开源计算机视觉
正在加载...
正在搜索...
无匹配项
| 公有成员函数 | 静态公有成员函数 | 所有成员列表
cv::SimpleBlobDetector 类参考abstract

用于从图像中提取斑点的类。: 更多...

#include <opencv2/features2d.hpp>

cv::SimpleBlobDetector 的协作图

struct Params
 

公有成员函数

virtual const std::vector< std::vector< cv::Point > > & getBlobContours () const
 
virtual String getDefaultName () const CV_OVERRIDE
 
virtual SimpleBlobDetector::Params getParams () const =0
 
virtual void setParams (const SimpleBlobDetector::Params &params)=0
 
- 从 cv::Feature2D 继承的公有成员函数
virtual ~Feature2D ()
 
virtual void compute (InputArray image, std::vector< KeyPoint > &keypoints, OutputArray descriptors)
 计算在图像(第一个变体)或图像集(第二个变体)中检测到的一组关键点的描述符。
 
virtual void compute (InputArrayOfArrays images, std::vector< std::vector< KeyPoint > > &keypoints, OutputArrayOfArrays descriptors)
 
virtual int defaultNorm () const
 
virtual int descriptorSize () const
 
virtual int descriptorType () const
 
virtual void detect (InputArray image, std::vector< KeyPoint > &keypoints, InputArray mask=noArray())
 在图像(第一个变体)或图像集(第二个变体)中检测关键点。
 
virtual void detect (InputArrayOfArrays images, std::vector< std::vector< KeyPoint > > &keypoints, InputArrayOfArrays masks=noArray())
 
virtual void detectAndCompute (InputArray image, InputArray mask, std::vector< KeyPoint > &keypoints, OutputArray descriptors, bool useProvidedKeypoints=false)
 
virtual bool empty () const CV_OVERRIDE
 如果检测器对象为空,则返回 true。
 
virtual void read (const FileNode &) CV_OVERRIDE
 从文件存储中读取算法参数。
 
void read (const String &fileName)
 
void write (const Ptr< FileStorage > &fs, const String &name) const
 
void write (const String &fileName) const
 
virtual void write (FileStorage &) const CV_OVERRIDE
 将算法参数存储在文件存储中。
 
void write (FileStorage &fs, const String &name) const
 
- 从 cv::Algorithm 继承的公有成员函数
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 清除算法状态。
 
virtual void save (const String &filename) const
 
void write (const Ptr< FileStorage > &fs, const String &name=String()) const
 
void write (FileStorage &fs, const String &name) const
 

静态公有成员函数

static Ptr< SimpleBlobDetectorcreate (const SimpleBlobDetector::Params &parameters=SimpleBlobDetector::Params())
 
- 从 cv::Algorithm 继承的静态公有成员函数
template<typename _Tp >
static Ptr< _Tpload (const String &filename, const String &objname=String())
 从文件中加载算法。
 
template<typename _Tp >
static Ptr< _TploadFromString (const String &strModel, const String &objname=String())
 从字符串中加载算法。
 
template<typename _Tp >
static Ptr< _Tpread (const FileNode &fn)
 从文件节点中读取算法。
 

其他继承的成员

- 从 cv::Algorithm 继承的受保护成员函数
void writeFormat (FileStorage &fs) const
 

详细描述

用于从图像中提取斑点的类。

该类实现了一个从图像中提取斑点的简单算法

  1. 通过使用从 minThreshold(包含)到 maxThreshold(不包含)的多个阈值,并使用相邻阈值之间的距离 thresholdStep 进行阈值处理,将源图像转换为二值图像。
  2. 通过 findContours 从每个二值图像中提取连通域,并计算它们的中心。
  3. 根据它们的坐标对来自多个二值图像的中心进行分组。 相近的中心形成一个对应于一个斑点的组,由 minDistBetweenBlobs 参数控制。
  4. 从这些组中,估计斑点的最终中心及其半径,并作为关键点的坐标和大小返回。

此类对返回的斑点执行多个过滤。 您可以将 filterBy* 设置为 true/false 以打开/关闭相应的过滤。 可用的过滤操作

参数的默认值经过调整,可以提取暗色的圆形斑点。

成员函数文档

◆ create()

static Ptr< SimpleBlobDetector > cv::SimpleBlobDetector::create ( const SimpleBlobDetector::Params parameters = SimpleBlobDetector::Params())
static
Python
cv.SimpleBlobDetector.create([, parameters]) -> retval
cv.SimpleBlobDetector_create([, parameters]) -> retval

◆ getBlobContours()

virtual const std::vector< std::vector< cv::Point > > & cv::SimpleBlobDetector::getBlobContours ( ) const
virtual
Python
cv.SimpleBlobDetector.getBlobContours() -> retval

◆ getDefaultName()

virtual String cv::SimpleBlobDetector::getDefaultName ( ) const
virtual
Python
cv.SimpleBlobDetector.getDefaultName() -> retval

返回算法字符串标识符。 此字符串用作对象保存到文件或字符串时最顶层的 xml/yml 节点标签。

cv::Feature2D 重新实现。

◆ getParams()

virtual SimpleBlobDetector::Params cv::SimpleBlobDetector::getParams ( ) const
纯虚
Python
cv.SimpleBlobDetector.getParams() -> retval

◆ setParams()

virtual void cv::SimpleBlobDetector::setParams ( const SimpleBlobDetector::Params params)
纯虚
Python
cv.SimpleBlobDetector.setParams(params) -> None

此类的文档是从以下文件生成的