一、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. 我理解的CLH

    学而时习之,不亦说乎!                              --<论语> 原创,转载请附原文链接,谢谢. CLH 思路 保持时序的锁基本思路就是将等待获取锁的线程放入 ...

  2. nginx加php(一)

    yum install nginx 安装php7.3https://kifarunix.com/installing-php-7-3-3-on-centos-7-6/ yum install epel ...

  3. mysql的授权命令

    #查看用户select user,host from mysql.user; (root,%),表示可以远程登录,并且是除服务器外的其他任何终端, 如CREATE USER 'azkaban'@'19 ...

  4. # pycharm新建项目后运行按钮为灰色

    pycharm新建项目后运行按钮为灰色 第一次运行需要先为项目创建解释器,第一次可以对项目右键选中Run或者Ctrl+Shift+F10自动为项目创建解释器.或者手动Run->Edit Conf ...

  5. 使用Python基于TensorFlow的CIFAR-10分类训练

    TensorFlow Models GitHub:https://github.com/tensorflow/models Document:https://github.com/jikexueyua ...

  6. 基于FCN的图像语义分割

    语义图像分割的目标在于标记图片中每一个像素,并将每一个像素与其表示的类别对应起来.因为会预测图像中的每一个像素,所以一般将这样的任务称为密集预测.(相对地,实例分割模型是另一种不同的模型,该模型可以区 ...

  7. 附录2:CEL文件格式

    一.版本3 描述 version 版本号,设为3 Cols 列数 Rows 行数 TotalX 和Cols一样 TotalY 和Rows一样 OffsetX 无用,设置为0 OffsetY 无用,设置 ...

  8. 解决:IDE编译报错:Dangling metacharacter

    Dangling metacharacter的意思是说:摇摆不定的元字符. 翻译成编程意思就是:当前字符计算有其它意思,并不能确定你到底用于什么意思.类似于中文的多义词. 如下图所示,当我们要分割字符 ...

  9. python--命令(各个模块的安装)

    python命令行 退出python命令行:exit() 安装pymysql pip install pymysql 安装request pip install requests 1.安装django ...

  10. Spingboot使用log4j2

    1.pom.xml加入log4j2,并同时把spring boot默认的logging去掉,注意一定要全部排除否则会报错. <dependency> <groupId>org. ...