Python计算机视觉第二次作业

Python计算机视觉第二次作业
1.Harris检测角点
Harris角点检测算法是一个极为简单的角点检测算法。该算法的核心思想是,如果像素周围显示存在多于一个方向的边,我们认为该点为兴趣点,该点就为角点。
def compute_harris_response(im, sigma=3):
“”“在一幅灰度图像中,对每个像素计算Harris角点检测器响应函数”""

# 计算导数                                                                    
imx = zeros(im.shape)                                                     
filters.gaussian_filter(im, (sigma, sigma), (0, 1), imx)                  
imy = zeros(im.shape)                                                     
filters.gaussian_filter(im, (sigma, sigma), (1, 0), imy)                  
                                                                          
# 计算Harris矩阵的分量                                                           
Wxx = filters.gaussian_filter(imx * imx, sigma)                           
Wxy = filters.gaussian_filter(imx * imy, sigma)                           
Wyy = filters.gaussian_filter(imy * imy, sigma)                           
                                                                          
# 计算特征值和迹                                                                 
Wdet = Wxx * Wyy - Wxy ** 2                                               
Wtr = Wxx + Wyy                                                           
                                                                          
return Wdet / Wtr                                                         
                                                                          
def get_harris_points(harrisim, min_dist=10, threshold=0.1):                  
"""从一幅Harris响应图像中返回角点。min_dist为分割角点和图像边界的最小像素数目"""                        
                                                                          
# 寻找高于阈值的候选角点                                                             
corner_threshold = harrisim.max() * threshold                             
harrisim_t = (harrisim > corner_threshold) * 1                            
                                                                          
# 得到候选点的坐标                                                                
coords = array(harrisim_t.nonzero()).T                                    
                                                            
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值