zoukankan      html  css  js  c++  java
  • 使用opencv中函数实现基于Harris算法的图像角点检测

    opencv(python)中Harris角点检测函数

    函数原型:

    dst = cv.cornerHarris( src, blockSize, ksize, k[, dst[, borderType]] )
    src : 原图
    blockSize : 检测过程中移动窗口大小
    ksize : Soble 滤波器的大小
    k : 常数,通常取值范围[0.04,0.16]
    对参数有不懂,请参考:Harris角点检测算法讲解及python实现

    小例子:

    import numpy as np 
    import cv2 as cv 
    
    image1 = cv.imread('../qiqiao.jpg')
    gray = cv.cvtColor(image1,cv.COLOR_RGB2GRAY)
    gray = np.float32(gray)
    dst	= cv.cornerHarris(gray, blockSize=10, ksize=3, k=0.04)
    # 使角点更大
    dst = cv.dilate(dst,None)
    # 标记角点为红色
    image1[dst>0.01*dst.max()]=[0,0,255]
    
    cv.imshow('result',image1)
    cv.imwrite('out.jpg',image1)
    cv.waitKey(0)
    cv.destroyAllWindows()
    

    实验结果:

    原图:

    原图

    Harris角点检测算法结果:

    Harris角点检测算法结果
    点个赞再走啊,帅哥!

  • 相关阅读:
    Handling Touches
    Learn the Basics
    Getting started
    (dev mode) install CONSUL on ubuntu
    Resilience4j usage
    spring cloud gateway
    courator
    courator
    js 获取服务器控件
    js
  • 原文地址:https://www.cnblogs.com/wojianxin/p/12576114.html
Copyright © 2011-2022 走看看