BEBLID 类
- java.lang.Object
-
- org.opencv.core.Algorithm
-
- org.opencv.features2d.Feature2D
-
- org.opencv.xfeatures2d.BEBLID
-
public class BEBLID extends Feature2D
实现 BEBLID(基于提升的有效二进制局部图像描述符)的类,如 CITE: Suarez2020BEBLID 中所述。BEBLID \cite Suarez2020BEBLID 是一种使用提升学习的有效二进制描述符。它只需更改 scale_factor 参数即可描述任何检测器的关键点。在多个基准测试中,它已被证明在效率相同的情况下,比其他二进制描述符(如 ORB 或 BRISK)有了很大的改进。BEBLID 使用关键点周围图像不同区域的平均灰度值差异进行描述,该描述符专门针对图像匹配和补丁检索进行了优化,以解决这些问题的非对称性。如果您发现此代码有用,请添加对以下论文的引用:<BLOCKQUOTE> Iago Suárez, Ghesn Sfeir, José M. Buenaposada, and Luis Baumela. BEBLID: Boosted efficient binary local image descriptor. Pattern Recognition Letters, 133:366–372, 2020. </BLOCKQUOTE> 该描述符使用来自 UBC 数据集 Liberty 分割的 100 万个随机采样图像块对(20% 正样本和 80% 负样本)进行训练 \cite winder2007learning,如论文 CITE: Suarez2020BEBLID 中所述。您可以在 [AKAZE 示例](https://raw.githubusercontent.com/opencv/opencv/master/samples/cpp/tutorial_code/features2D/AKAZE_match.cpp) 中查看 BEBLID 的效果。使用 ORB 检测 10000 个关键点并使用 BEBLID 进行描述可以得到 561 个内点 (75%),而使用 ORB 进行描述只能得到 493 个内点 (63%)。
-
-
字段摘要
字段 修饰符和类型 字段 描述 static int
SIZE_256_BITS
static int
SIZE_512_BITS
-
构造函数摘要
构造函数 修饰符 构造函数 描述 protected
BEBLID(long addr)
-
方法摘要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 描述 static BEBLID
__fromPtr__(long addr)
static BEBLID
create(float scale_factor)
创建 BEBLID 描述符。static BEBLID
create(float scale_factor, int n_bits)
创建 BEBLID 描述符。protected void
finalize()
java.lang.String
getDefaultName()
返回算法字符串标识符。float
getScaleFactor()
void
setScaleFactor(float scale_factor)
-
从类 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 BEBLID __fromPtr__(long addr)
-
create
public static BEBLID create(float scale_factor, int n_bits)
创建 BEBLID 描述符。- 参数
scale_factor
- 调整检测到的关键点周围的采样窗口- <b> 1.00f </b> 应为 ORB 关键点的比例
- <b> 6.75f </b> 应为 SIFT 检测到的关键点的比例
- <b> 6.25f </b> 是默认值,适用于 KAZE、SURF 检测到的关键点
- <b> 5.00f </b> 应为 AKAZE、MSD、AGAST、FAST、BRISK 关键点的比例
n_bits
- 确定描述符中的位数。应为 BEBLID::SIZE_512_BITS 或 BEBLID::SIZE_256_BITS。- 返回
- 自动生成
-
create
public static BEBLID create(float scale_factor)
创建 BEBLID 描述符。- 参数
scale_factor
- 调整检测到的关键点周围的采样窗口- <b> 1.00f </b> 应为 ORB 关键点的比例
- <b> 6.75f </b> 应为 SIFT 检测到的关键点的比例
- <b> 6.25f </b> 是默认值,适用于 KAZE、SURF 检测到的关键点
- <b> 5.00f </b> 应为 AKAZE、MSD、AGAST、FAST、BRISK 关键点的比例
- 返回
- 自动生成
-
setScaleFactor
public void setScaleFactor(float scale_factor)
-
getScaleFactor
public float getScaleFactor()
-
getDefaultName
public java.lang.String getDefaultName()
从类复制描述:Algorithm
返回算法字符串标识符。保存对象到文件或字符串时,此字符串用作顶级 xml/yml 节点标签。- 覆盖
getDefaultName
在类Feature2D
中- 返回
- 自动生成
-
-