scikit-image库-- 圆形和椭圆形霍夫变换(十七)

最简单形式的霍夫变换是一种检测直线的方法,但它也可用于检测圆或椭圆。该算法假设检测到边缘并且它对噪声或缺失点具有鲁棒性。

圆检测

在以下示例中,Hough变换用于检测硬币位置并匹配其边缘。我们提供一系列合理的半径。对于每个半径,提取两个圆圈,我们最终保留五个最突出的候选者。结果表明,硬币位置被很好地检测到。

算法概述

给定白色背景上的黑色圆圈,我们首先猜测其半径(或半径范围)以构建新圆。该圆圈应用于原始图像的每个黑色像素,并且该圆圈的坐标在累加器中进行投票。从这种几何结构,原始圆心位置获得最高分。请注意,累加器大小构建为大于原始图像,以便检测帧外的中心。它的尺寸扩大了半径更大的两倍。

import numpy as np
import matplotlib.pyplot as plt

from skimage import data, color
from skimage.transform import hough_circle, hough_circle_peaks
from skimage.feature import canny
from skimage.draw import circle_perimeter
from skimage.util import img_as_ubyte
%matplotlib inline

# Load picture and detect edges
image = img_as_ubyte(data.coins()[160:230, 70:270]) #将图像转换为8位无符号整数格式。

edges = canny(image, sigma=3, low_threshold=10, high_threshold=50)


# Detect two radii
hough_radii = np.arange(20, 35,
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值