用法:
class skimage.feature.BRIEF(descriptor_size=256, patch_size=49, mode='normal', sigma=1, sample_seed=1)
基础:
skimage.feature.util.DescriptorExtractor
简要二进制说明符提取器。
Brief(Binary Robust Independent Elementary Features)是一种有效的特征点说明符。即使使用相对较少的位,它也具有很高的辨别力,并且使用简单的强度差异测试来计算。
对于每个关键点,对 pixel-pairs 的特定分布数 N 进行强度比较,得到长度为 N 的二进制说明符。对于二进制说明符,汉明距离可用于特征匹配,与L2 范数。
- descriptor_size:int 可选
每个关键点的简要说明符的大小。作者推荐的尺码 128、256 和 512。默认值为 256。
- patch_size:int 可选
关键点周围的二维正方形补丁采样区域的长度。默认值为 49。
- mode:{‘normal’, ‘uniform’},可选
关键点周围决策pixel-pairs 的采样位置的概率分布。
- sample_seed:{无,int
numpy.random.Generator
如果sample_seed是没有的
numpy.random.Generator
使用单例。如果sample_seed是一个int 一个新的Generator
使用实例,播种sample_seed.如果sample_seed已经是一个Generator
实例然后使用该实例。决策pixel-pairs的随机抽样种子。从长度为patch_size 的方形窗口,使用模式参数对像素对进行采样,以使用强度比较构建说明符。 sample_seed 的值必须与构建说明符时要匹配的图像相同。
- sigma:浮点数,可选
应用于图像以减轻噪声敏感性的高斯low-pass 滤波器的标准差,强烈建议使用此方法来获得有辨别力的良好说明符。
参数:
例子:
>>> from skimage.feature import (corner_harris, corner_peaks, BRIEF, ... match_descriptors) >>> import numpy as np >>> square1 = np.zeros((8, 8), dtype=np.int32) >>> square1[2:6, 2:6] = 1 >>> square1 array([[0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 1, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0]], dtype=int32) >>> square2 = np.zeros((9, 9), dtype=np.int32) >>> square2[2:7, 2:7] = 1 >>> square2 array([[0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 1, 1, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 1, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0]], dtype=int32) >>> keypoints1 = corner_peaks(corner_harris(square1), min_distance=1) >>> keypoints2 = corner_peaks(corner_harris(square2), min_distance=1) >>> extractor = BRIEF(patch_size=5) >>> extractor.extract(square1, keypoints1) >>> descriptors1 = extractor.descriptors >>> extractor.extract(square2, keypoints2) >>> descriptors2 = extractor.descriptors >>> matches = match_descriptors(descriptors1, descriptors2) >>> matches array([[0, 0], [1, 1], [2, 2], [3, 3]]) >>> keypoints1[matches[:, 0]] array([[2, 2], [2, 5], [5, 2], [5, 5]]) >>> keypoints2[matches[:, 1]] array([[2, 2], [2, 6], [6, 2], [6, 6]])
- descriptors:(问,descriptor_size) dtype bool 数组
大小的二进制说明符的 2D ndarraydescriptor_size过滤掉具有索引值的边界关键点后的 Q 关键点
(i, j)
或者是True
或者False
表示 j-th 决策 pixel-pair 上 i-th 关键点的强度比较结果。这是Q == np.sum(mask)
.- mask:(N, ) dtype bool 数组
指示是否已过滤掉关键点的掩码 (
False
) 或在说明符大批 (True
)。
属性:
相关用法
- Python skimage.feature.graycomatrix用法及代码示例
- Python skimage.feature.blob_doh用法及代码示例
- Python skimage.feature.blob_dog用法及代码示例
- Python skimage.feature.graycoprops用法及代码示例
- Python skimage.feature.corner_orientations用法及代码示例
- Python skimage.feature.structure_tensor用法及代码示例
- Python skimage.feature.hessian_matrix用法及代码示例
- Python skimage.feature.ORB用法及代码示例
- Python skimage.feature.corner_subpix用法及代码示例
- Python skimage.feature.canny用法及代码示例
- Python skimage.feature.peak_local_max用法及代码示例
- Python skimage.feature.CENSURE用法及代码示例
- Python skimage.feature.hessian_matrix_eigvals用法及代码示例
- Python skimage.feature.corner_foerstner用法及代码示例
- Python skimage.feature.haar_like_feature_coord用法及代码示例
- Python skimage.feature.corner_harris用法及代码示例
- Python skimage.feature.corner_fast用法及代码示例
- Python skimage.feature.haar_like_feature用法及代码示例
- Python skimage.feature.SIFT用法及代码示例
- Python skimage.feature.structure_tensor_eigvals用法及代码示例
注:本文由纯净天空筛选整理自scikit-image.org大神的英文原创作品 skimage.feature.BRIEF。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。