用法:
skimage.feature.blob_doh(image, min_sigma=1, max_sigma=30, num_sigma=10, threshold=0.01, overlap=0.5, log_scale=False, *, threshold_rel=None)
在给定的灰度图像中查找 blob。
使用 Hessian 行列式方法 [1] 找到 Blob。对于找到的每个 blob,该方法返回其坐标和用于行列式检测到 blob 的 Hessian 矩阵的高斯核的标准偏差。 Hessians 的行列式使用 [2] 来近似。
- image:二维数组
输入灰度图像。Blob 可以在黑暗中变亮,反之亦然。
- min_sigma:浮点数,可选
用于计算 Hessian 矩阵的高斯核的最小标准偏差。保持这个低以检测较小的斑点。
- max_sigma:浮点数,可选
用于计算 Hessian 矩阵的高斯核的最大标准偏差。保持这个高以检测更大的斑点。
- num_sigma:int 可选
min_sigma 和 max_sigma 之间要考虑的标准差中间值的数量。
- threshold:浮点数或无,可选
尺度空间最大值的绝对下限。小于阈值的局部最大值被忽略。减少它以检测强度较低的斑点。如果还指定了threshold_rel,则将使用较大的阈值。如果没有,则使用threshold_rel。
- overlap:浮点数,可选
一个介于 0 和 1 之间的值。如果两个斑点的面积重叠的部分大于阈值,则消除较小的斑点。
- log_scale:布尔型,可选
如果设置的标准偏差的中间值使用以 10 为底的对数刻度进行插值。如果没有,则使用线性插值。
- threshold_rel:浮点数或无,可选
峰的最小强度,计算为
max(doh_space) * threshold_rel
,其中doh_space
指内部计算的Determinant-of-Hessian (DoH) 图像堆栈。这应该有一个介于 0 和 1 之间的值。如果没有,临界点改为使用。
- A:(n, 3) 数组
一个二维数组,每行代表 3 个值,
(y,x,sigma)
其中(y,x)
是 blob 的坐标,sigma
是行列式检测到 blob 的 Hessian 矩阵的高斯核的标准偏差。
参数:
返回:
注意:
每个斑点的半径约为西格玛. Hessians 行列式的计算与标准偏差无关。因此检测较大的斑点不会花费更多时间。在方法行skimage.feature.blob_dog和skimage.feature.blob_log更大的高斯计算西格玛需要更多时间。缺点是这种方法不能用于检测半径小于3像素由于在 Hessian 行列式的近似中使用了箱形滤波器。
参考:
- 1
https://en.wikipedia.org/wiki/Blob_detection#The_determinant_of_the_Hessian
- 2
Herbert Bay, Andreas Ess, Tinne Tuytelaars, Luc Van Gool, “SURF: Speeded Up Robust Features” ftp://ftp.vision.ee.ethz.ch/publications/articles/eth_biwi_00517.pdf
例子:
>>> from skimage import data, feature >>> img = data.coins() >>> feature.blob_doh(img) array([[197. , 153. , 20.33333333], [124. , 336. , 20.33333333], [126. , 153. , 20.33333333], [195. , 100. , 23.55555556], [192. , 212. , 23.55555556], [121. , 271. , 30. ], [126. , 101. , 20.33333333], [193. , 275. , 23.55555556], [123. , 205. , 20.33333333], [270. , 363. , 30. ], [265. , 113. , 23.55555556], [262. , 243. , 23.55555556], [185. , 348. , 30. ], [156. , 302. , 30. ], [123. , 44. , 23.55555556], [260. , 173. , 30. ], [197. , 44. , 20.33333333]])
相关用法
- Python skimage.feature.blob_dog用法及代码示例
- Python skimage.feature.blob_log用法及代码示例
- Python skimage.feature.graycomatrix用法及代码示例
- 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.BRIEF用法及代码示例
- Python skimage.feature.haar_like_feature用法及代码示例
- Python skimage.feature.SIFT用法及代码示例
注:本文由纯净天空筛选整理自scikit-image.org大神的英文原创作品 skimage.feature.blob_doh。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。