SURF 类
- java.lang.Object
-
- org.opencv.core.Algorithm
-
- org.opencv.features2d.Feature2D
-
- org.opencv.xfeatures2d.SURF
-
public class SURF extends Feature2D
用于从图像中提取加速鲁棒特征 (Speeded Up Robust Features) 的类 CITE: Bay06。算法参数- 成员 int extended
- 0 表示计算基本描述符(每个 64 个元素)。
- 1 表示计算扩展描述符(每个 128 个元素)。
- 成员 int upright
- 0 表示检测器计算每个特征的方向。
- 1 表示不计算方向(速度快得多)。例如,如果您匹配立体图像对中的图像或进行图像拼接,则匹配的特征可能具有非常相似的角度,您可以通过设置 upright=1 来加快特征提取速度。
- 成员 double hessianThreshold 关键点检测器的阈值。只有 Hessian 值大于 hessianThreshold 的特征才会被检测器保留。因此,值越大,获得的关键点越少。根据图像对比度,一个好的默认值可能是 300 到 500。
- 成员 int nOctaves 检测器使用的 Gaussian 金字塔层的数量。默认为 4。如果要获取非常大的特征,请使用较大的值。如果只需要小特征,请减小它。
- 成员 int nOctaveLayers Gaussian 金字塔中每个层内的图像数量。默认为 2。
- 使用 SURF 特征检测器的示例可以在 opencv_source_code/samples/cpp/generic_descriptor_match.cpp 中找到。
- 另一个使用 SURF 特征检测器、提取器和匹配器的示例可以在 opencv_source_code/samples/cpp/matcher_simple.cpp 中找到。
- 成员 int extended
-
-
构造函数摘要
构造函数 修饰符 构造函数 描述 protected
SURF(long addr)
-
方法摘要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 描述 static SURF
__fromPtr__(long addr)
static SURF
创建()
64 元素描述符)。static SURF
create(double hessianThreshold)
static SURF
create(double hessianThreshold, int nOctaves)
static SURF
create(double hessianThreshold, int nOctaves, int nOctaveLayers)
static SURF
create(double hessianThreshold, int nOctaves, int nOctaveLayers, boolean extended)
static SURF
create(double hessianThreshold, int nOctaves, int nOctaveLayers, boolean extended, boolean upright)
protected void
finalize()
java.lang.String
getDefaultName()
返回算法字符串标识符。boolean
getExtended()
double
getHessianThreshold()
int
getNOctaveLayers()
int
getNOctaves()
boolean
getUpright()
void
setExtended(boolean extended)
void
setHessianThreshold(double hessianThreshold)
void
setNOctaveLayers(int nOctaveLayers)
void
setNOctaves(int nOctaves)
void
setUpright(boolean upright)
-
继承自类 org.opencv.features2d.Feature2D 的方法
compute, compute, defaultNorm, descriptorSize, descriptorType, detect, detect, detect, detect, detectAndCompute, detectAndCompute, empty, read, write
-
继承自类 org.opencv.core.Algorithm 的方法
clear, getNativeObjAddr, save
-
-
-
-
方法详情
-
__fromPtr__
public static SURF __fromPtr__(long addr)
-
创建
public static SURF create(double hessianThreshold, int nOctaves, int nOctaveLayers, boolean extended, boolean upright)
- 参数
hessianThreshold
- SURF 中使用的 Hessian 关键点检测器的阈值。nOctaves
- 关键点检测器将使用的金字塔层的数量。nOctaveLayers
- 每层内的八度层数。extended
- 扩展描述符标志 (true - 使用扩展的 128 元素描述符;false - 使用 64 元素描述符)。upright
- 正向或旋转特征标志 (true - 不计算特征的方向;false - 计算方向)。- 返回值
- 自动生成
-
创建
public static SURF create(double hessianThreshold, int nOctaves, int nOctaveLayers, boolean extended)
- 参数
hessianThreshold
- SURF 中使用的 Hessian 关键点检测器的阈值。nOctaves
- 关键点检测器将使用的金字塔层的数量。nOctaveLayers
- 每层内的八度层数。extended
- 扩展描述符标志 (true - 使用扩展的 128 元素描述符;false - 使用 64 元素描述符)。false - 计算方向)。- 返回值
- 自动生成
-
创建
public static SURF create(double hessianThreshold, int nOctaves, int nOctaveLayers)
- 参数
hessianThreshold
- SURF 中使用的 Hessian 关键点检测器的阈值。nOctaves
- 关键点检测器将使用的金字塔层的数量。nOctaveLayers
- 每层内的八度层数。64 元素描述符)。false - 计算方向)。- 返回值
- 自动生成
-
创建
public static SURF create(double hessianThreshold, int nOctaves)
- 参数
hessianThreshold
- SURF 中使用的 Hessian 关键点检测器的阈值。nOctaves
- 关键点检测器将使用的金字塔层的数量。64 元素描述符)。false - 计算方向)。- 返回值
- 自动生成
-
创建
public static SURF create(double hessianThreshold)
- 参数
hessianThreshold
- SURF 中使用的 Hessian 关键点检测器的阈值。64 元素描述符)。false - 计算方向)。- 返回值
- 自动生成
-
创建
public static SURF create()
64 元素描述符)。false - 计算方向)。- 返回值
- 自动生成
-
setHessianThreshold
public void setHessianThreshold(double hessianThreshold)
-
getHessianThreshold
public double getHessianThreshold()
-
setNOctaves
public void setNOctaves(int nOctaves)
-
getNOctaves
public int getNOctaves()
-
setNOctaveLayers
public void setNOctaveLayers(int nOctaveLayers)
-
getNOctaveLayers
public int getNOctaveLayers()
-
setExtended
public void setExtended(boolean extended)
-
getExtended
public boolean getExtended()
-
setUpright
public void setUpright(boolean upright)
-
getUpright
public boolean getUpright()
-
getDefaultName
public java.lang.String getDefaultName()
从类复制的描述:Algorithm
返回算法字符串标识符。将对象保存到文件或字符串时,此字符串用作顶级 xml/yml 节点标签。- 覆盖
getDefaultName
在类Feature2D
中- 返回值
- 自动生成
-
-