1.Harris角点检测

# coding=utf-8
import cv2
import numpy as np filename = 'pic5.png' #1.读入一个灰度图像
img = cv2.imread(filename)
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
cv2.imshow('gray',gray) #2.执行角点检测函数
gray = np.float32(gray)
dst = cv2.cornerHarris(gray,2,3,0.04) #函数 cv2.cornerHarris() 可以用来进行角点检测
#数据类型为 float32 的输入图像
# 2:角点检测中要考虑的领域大小
#3: Sobel 求导中使用的窗口大小
#Harris 角点检测方程中的自由参数,取值参数为 [0,04,0.06] dst = cv2.dilate(dst,None) #扩大标记角
img[dst>0.01*dst.max()] = [0,0,255] #阈值为一个最佳值,它可能会根据图像而变化。 cv2.imshow('dst',img) cv2.waitKey(0)
cv2.destroyAllWindows()

2.Shi-Tomasi角点检测&适合跟踪的图像特征

    

# coding=utf-8

import cv2
import numpy as np
from matplotlib import pyplot as plt #1.读入图像,灰度
filename = 'pic5.png'
filename2 = 'woman.JPEG' img = cv2.imread(filename2)
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY) #2.执行角点函数 cv2.goodFeaturesToTrack
corners = cv2.goodFeaturesToTrack(gray,50,0.01,10)
#50个最佳点
#0.01 角点的质量水平,0到 1 之间
# 返回的结果是 [[ 311., 250.]] 两层括号的数组。 corners = np.int0(corners) #3.在img标记角点
for i in corners:
x,y = i.ravel()
cv2.circle(img,(x,y),3,255,-1) plt.imshow(img)
plt.show()

    

day6 角点检测的更多相关文章

  1. harris角点检测的学习

    Harris通过运用微分运算和自相关矩阵改进了Moravec角点检测算法.用微分算子重新定义灰度强度变化的公式,其灰度强度变化表示为: 式中的wu,v为高斯窗口在(u,v)处的系数.X,Y它们是像素点 ...

  2. Harris角点检测算法优化

    Harris角点检测算法优化 一.综述 用 Harris 算法进行检测,有三点不足:(1 )该算法不具有尺度不变性:(2 )该算法提取的角点是像素级的:(3 )该算法检测时间不是很令人满意. 基于以上 ...

  3. Shi-Tomasi角点检测

    代码示例: #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> #inc ...

  4. Harris角点检测

    代码示例一: #include<opencv2/opencv.hpp> using namespace cv; int main(){ Mat src = imread(); imshow ...

  5. opencv笔记6:角点检测

    time:2015年10月09日 星期五 23时11分58秒 # opencv笔记6:角点检测 update:从角点检测,学习图像的特征,这是后续图像跟踪.图像匹配的基础. 角点检测是什么鬼?前面一篇 ...

  6. Harris 角点检测

    一 .Motivation 对于做图像处理的人来说,Harris角点检测肯定听过,1988年发表的文章"A combined corner and edge detector"描述 ...

  7. Harris角点检测算原理

    主要参考了:http://blog.csdn.net/yudingjun0611/article/details/7991601  Harris角点检测算子 本文将该文拷贝了过来,并做了一些数学方面的 ...

  8. DOG角点检测——opencv实现

    1.原理 Difference of Gaussian(DOG)是高斯函数的差分.将两幅图像在不同参数下的高斯滤波结果相减,得到DoG图.步骤: 处理一幅图像在不同高斯参数下的DoG 用两个不同的5x ...

  9. OpenCV探索之路(十五):角点检测

    角点检测是计算机视觉系统中用来获取图像特征的一种方法.我们都常说,这幅图像很有特点,但是一问他到底有哪些特点,或者这幅图有哪些特征可以让你一下子就识别出该物体,你可能就说不出来了.其实说图像的特征,你 ...

随机推荐

  1. 【OpenCV】透视变换矫正

    演示结果参考: 功能实现:运行程序,会显示图片的尺寸,按回车键后,依次点击需矫正的图片的左上.右上.左下.右下角,并能显示其坐标,结果弹出矫正后的图片,如图上的PIC2对话框.可以继续选择图片四个点进 ...

  2. java开发优化常用的快捷键

    快速打印的输出语句:输入syso,然后按alt+/,即可 快速删除一行:ctrl+D 让代码块缩进:选中要缩进的代码,然后按tab键 让代码块退格:选中要退格的代码,然后按shift+tab键 格式化 ...

  3. python反序列化

    import pickle import os class A(object): def __reduce__(self): a = """python -c 'impo ...

  4. [Java123] JDBC and Multi-Threading 多线程编程学习笔记

    项目实际需求:DB交互使用多线程实现 多线程编程基础:1.5  :( (假设总分10) 计划一个半月从头学习梳理Java多线程编程基础以及Oracle数据库交互相关的多线程实现 学习如何通过代码去验证 ...

  5. [Python 多线程] GIL全局解释器锁 (十三)

    Queue 标准库queue模块,提供FIFO(先进先出)的Queue.LIFO(后进先出)的队列.优先队列. Queue类是线程安全的,适用于多线程间安全的交换数据.内部使用了Lock和Condit ...

  6. mongoDB的常用语法

    安装: 到mongodb官网下载安装包或者压缩包:https://www.mongodb.com/download-center?jmp=nav 1.如果是msi包的话则点击按步骤安装,如果是压缩包的 ...

  7. [转]浅谈利用SQLite存储离散瓦片的思路和实现方法

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 在多个项目中涉及到互联网地图的内网显示,通过自制工具完成了互联 ...

  8. matplotlib.pyplot的两种模式

    在交互模式下: 1.plt.plot(x)或plt.imshow(x)是直接出图像,不需要plt.show() 2.如果在脚本中使用ion()命令开启了交互模式,没有使用ioff()关闭的话,则图像会 ...

  9. HTML小记

    1.页面内跳转 当<a>元素用于页面内的锚点跳转时,应该先为该页面设置一些锚点,而定义锚点有两种办法: 通过<a>元素的name属性来定义,如:<a name=" ...

  10. Spring Boot Admin 2.1.0 全攻略

    转载请标明出处: https://www.fangzhipeng.com 本文出自方志朋的博客 Spring Boot Admin简介 Spring Boot Admin是一个开源社区项目,用于管理和 ...