一、Harris角点

如上图所示,红色框AB都是平面,蓝色框CD都是边缘,而绿色框EF就是角点。

平面:框往X或Y抽移动,变化都很小。

边缘:框沿X或Y轴移动,其中一个变化很小,而另外一个变化比较大。

角点:框沿X或Y轴移动,两个变化都比较大。

见《图像基础》笔记第7页

二、背景建模

使用帧差法:

即用后一帧图像减去前一帧图像,得到运动的物体,但是会出现空洞(前景物体的一个面灰度变化不大,减完得到接近0的数)。

使用GMM方法:

# -*- coding:utf-8 -*-
__author__ = 'Leo.Z' import cv2 as cv # 打开媒体流
cap = cv.VideoCapture('rtsp://admin:bs12345678@171.221.219.92:554/PSIA/streaming/channels/1201')
# 创建一个形态学kernel
kernel = cv.getStructuringElement(cv.MORPH_ELLIPSE, (5, 5))
# 创建MOG2
fgbg = cv.createBackgroundSubtractorMOG2() while (True):
# 读取一帧
ret, frame = cap.read()
# MOG2运用到每一帧
fgmask = fgbg.apply(frame)
# 使用形态学开操作
fgmask = cv.morphologyEx(fgmask, cv.MORPH_OPEN, kernel)
# 找轮廓
contours, hierarchy = cv.findContours(fgmask, cv.RETR_EXTERNAL, cv.CHAIN_APPROX_SIMPLE) for c in contours:
# 计算每个轮廓的周长
perimeter = cv.arcLength(c, True)
# 周长大于188的则用方框框起来
if perimeter > 188:
# 获取轮廓的外接矩形
x, y, w, h = cv.boundingRect(c)
cv.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2) cv.imshow('frame', frame)
cv.imshow('fgmask', fgmask)
k = cv.waitKey(10) & 0xff
if k == 27:
break
# 释放cap
cap.release()
# 关闭所有窗口
cv.destroyAllWindows()

OpenCV笔记(6)(harris角点检测、背景建模)的更多相关文章

  1. opencv笔记6:角点检测

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

  2. cv2.cornerHarris()详解 python+OpenCV 中的 Harris 角点检测

    参考文献----------OpenCV-Python-Toturial-中文版.pdf 参考博客----------http://www.bubuko.com/infodetail-2498014. ...

  3. OpenCV教程(43) harris角的检测(1)

          计算机视觉中,我们经常要匹配两幅图像.匹配的的方式就是通过比较两幅图像中的公共特征,比如边,角,以及图像块(blob)等,来对两幅图像进行匹配.      相对于边,角更适合描述图像特征, ...

  4. OpenCV教程(45) harris角的检测(3)

          在前面一篇教程中,我们通过取局部最大值的方法来处理检测结果,但是从图像中可以看到harris角的分布并不均匀,在纹理颜色比较深的地方检测的harris角结果更密集一些.本章中,我们使用一个 ...

  5. OpenCV教程(44) harris角的检测(2)

          在上一篇教程中,我们得到的harris特征角二值图中,角的数目特别多,本章我们用一个局部最大化的方法,只保留局部值最大的harris特征角. // Harris角计算 cv::corner ...

  6. 第十一节、Harris角点检测原理(附源码)

    OpenCV可以检测图像的主要特征,然后提取这些特征.使其成为图像描述符,这类似于人的眼睛和大脑.这些图像特征可作为图像搜索的数据库.此外,人们可以利用这些关键点将图像拼接起来,组成一个更大的图像,比 ...

  7. opencv-角点检测之Harris角点检测

    转自:https://blog.csdn.net/poem_qianmo/article/details/29356187 先看看程序运行截图:   一.引言:关于兴趣点(interest point ...

  8. Opencv学习笔记------Harris角点检测

    image算法测试iteratoralgorithmfeatures 原创文章,转载请注明出处:http://blog.csdn.net/crzy_sparrow/article/details/73 ...

  9. OpenCV Harris 角点检测子

    Harris 角点检测子 目标 本教程中我们将涉及: 有哪些特征?它们有什么用? 使用函数 cornerHarris 通过 Harris-Stephens方法检测角点. 理论 有哪些特征? 在计算机视 ...

随机推荐

  1. Oracle 即时客户点下载以及简单连接数据库的方法

    1. 下载方法 百度 oracle client 第一个即可 2. 下载地址为: https://www.oracle.com/database/technologies/instant-client ...

  2. 洛谷 P3384树链剖分 题解

    题面 挺好的一道树剖模板: 首先要学会最模板的树剖: 然后这道题要注意几个细节: 初始化时,seg[0]=1,seg[root]=1,top[root]=root,rev[1]=root; 在线段树上 ...

  3. Ruby学习中(哈希变量/python的字典, 简单的类型转换)

    一. 哈希变量(相当于Python中的字典) 详情参看:https://www.runoob.com/ruby/ruby-hash.html 1.值得注意的 (1). 创建Hash时需注意 # 创建一 ...

  4. Codeforces 1229C. Konrad and Company Evaluation

    传送门 首先考虑如何算出答案,考虑枚举中间那个点,显然每个点作为中间的点的次数为入度乘出度 所以答案就是每个点的入度乘出度之和 然后每个点开一个 $vector$ 维护从它出去的点数,每次修改的时候直 ...

  5. (转载)sublime3安装markdown插件

    原文链接 http://www.jianshu.com/p/335b7d1be39e?utm_source=tuicool&utm_medium=referral 最近升级到了 Sublime ...

  6. 第四章 子查询 T-SQL语言基础

    子查询 SQL支持在查询语句中编写查询,或者嵌套其他查询. 最外层查询的结果集会返回给调用者,称为外部查询. 内部查询的结果是供外部查询使用的,也称为子查询. 子查询可以分为独立子查询和相关子查询.独 ...

  7. vs nuget找不到包

    nuget.org https://api.nuget.org/v3/index.json

  8. VS Code 配置碰到的问题

    VS Code 呈现缩进参考线以及语法高亮改变 找到 首选项——>设置→搜索renderIntentGuides→将此选项改为true(默认为false),就可以了.

  9. 总线(bus)简介

    内容来自于<Computer Organization>,这是我的一篇学习笔记

  10. SpringCloudGateWay之限流

    一.引言在高并发系统中,经常需要限制系统中的电流化妆.一方面是防止大量的请求使服务器过载,导致服务不可用,另一方面是防止网络攻击.常用的限流方法,如hystrix.应用线程池隔离.超过线程池的负载和g ...