摘  要: 针对目前常用的运动目标提取易受到噪声影响、易出现阴影和误检漏检等情况,提出了一种基于Sobel算子的彩色边缘图像检测和帧差分相结合的检测方法。首先用Sobel算子提取视频流中连续4帧图像的彩色边缘图像,然后将边缘图像进行隔帧差分相与,提取出较精确的运动目标边缘轮廓。提取的轮廓经过一系列的形态学操作填充,可得到完整的运动目标。实验结果表明,该方法对运动目标边缘轮廓提取准确,抗噪

摘  要: 针对目前常用的运动目标提取易受到噪声影响、易出现阴影和误检漏检等情况,提出了一种基于Sobel算子的彩色边缘图像检测和帧差分相结合的检测方法。首先用Sobel算子提取视频流中连续4帧图像的彩色边缘图像,然后将边缘图像进行隔帧差分相与,提取出较精确的运动目标边缘轮廓。提取的轮廓经过一系列的形态学操作填充,可得到完整的运动目标。实验结果表明,该方法对运动目标边缘轮廓提取准确,抗噪能力强,且鲁棒性好。
关键词: 彩色边缘检测; 隔帧差分; 运动目标提取

运动目标检测是目标识别、跟踪的难点和关键环节,目标提取的好坏直接影响处理结果。而在运动目标检测中遇到最多的问题是提取的前景不准确,受环境影响噪声较多,且阴影难消除。很多文献也提出了改进方法,常用的经典算法有:背景差分、混合高斯背景模型、帧差法等。背景差分[1]首先构建一个背景图像,然后利用当前帧图像与背景图像相减,得到差分图像,通过阈值分割来提取目标。混合高斯模型[2]使用K个(基本为3~5个)高斯模型来表征图像中各个像素点的特征,在新一帧图像获得后更新混合高斯模型, 用当前图像中的每个像素点与混合高斯模型匹配,如果成功,则判定该点为背景点, 否则为前景点。混合高斯背景模型检测运动目标易出现阴影,而对阴影的去除目前存在较大困难。帧差法通过视频流中相邻两帧或3帧图像相减,根据差分图像来检测目标。常用的相邻差分法检测目标存在两帧目标重叠部分不易检测、出现虚假目标等问题。一般来说,图像的边缘信息不易受噪声和亮度突变的影响。本文提出一种边缘差分的思想,将传统Sobel算子边缘检测应用到彩色图像边缘检测,将边缘检测与帧间差分相结合,很好地克服了阴影以及噪声的影响,经形态学处理最后得到较为清晰准确的运动目标。
1 边缘检测
    边缘检测算法的基本步骤为:滤波、增强、检测和定位。经典的检测算法主要采用梯度算子,常用的梯度算子有Sobel算子、Prewitt算子、Canny算子、Laplacian算子和LOG算子[3]等。
1.1 Sobel算子检测边缘
    Sobel算子把重点放在接近于模板中心的像素点,是边缘检测器中最常用的算子之一。
1.1.1 Sobel算法原理
    由于图像边缘附近的亮度变化比较大,因此把那些邻域内灰度超过某个值的像素点当作边缘点。算法的主要步骤如下。
    (1)分别将两个方向模板沿着图像从一个像素移动到另一像素,并将像素的中心与某个像素位置相重合;
  (2)将模板内的系数与其图像上相对应的像素值相乘;
  (3)将所有相乘的值相加;
  (4)将两个卷积的最大值赋给图像中对应模板中心位置的像素作为该像素新的灰度值;
  (5)选取合适的阈值TH,若新像素灰度值≥TH,则判断该像素点为图像边缘点。
 
1.1.2 Sobel算子彩色图像边缘检测的实现和改进
    本文算法针对彩色图像,建立水平方向和垂直方向的彩色分量图[5],具体步骤如下。
    (1)遍历一幅彩色图像,取图像上像素的颜色值;
    (2)将像素的R、G、B灰度值分别赋给水平方向和垂直方向彩色分量图对应像素的R、G、B值;
    (3)分别计算原图像中像素的R、G、B分量在水平和垂直方向与模板(掩膜)卷积的累加值,卷积模板选用上述Sobel核,Sobel算子使用权重2的思想是通过突出中心点的作用而达到平滑的目的;
    (4)将累加值除以某个权重,取绝对值赋给上述分量图的R、G、B值;
    (5)用式(1)计算该像素的R、G、B梯度值,赋给原图像对应的R、G、B值,得到彩色边缘图像。
    Sobel算子利用像素的上、下、左、右邻域的灰度值加权算法,算法利用图1(a)所示的模板分别与图1(b)和图1(c)所示的两个核做卷积,一个核对垂直边缘影响最大,而另一个核对水平边缘影响最大。该方法不但产生较好的检测效果,而且对噪声具有平滑作用,可以提供较为精确的边缘,因此选用Sobel算子进行边缘检测,结合后面的帧差分,可以得到准确、良好的边缘轮廓图像[6]。


2.2 边缘检测与差分相结合
  本文算法的流程如图2所示。

用本文提出的改进Sobel算子彩色图像边缘检测方法从视频流中提取连续的4帧图像,得到它们的边缘图像,然后用上述4帧差分的思想作边缘图像的隔帧差分,得到准确、噪声很小的运动目标边缘轮廓。
2.3 形态学处理
2.3.1 腐蚀运算
    腐蚀是指用某种形状的基元对一个图像进行探测,以便找出在图像中能够放下该基元的区域。集合A被集合B腐蚀,表示为AΘB,其定义为
    

每天进步一点点------Sobel算子(3)基于彩色图像边缘差分的运动目标检测算法的更多相关文章

  1. 每天进步一点点------Sobel算子(1)

    void MySobel(IplImage* gray, IplImage* gradient) { /* Sobel template a00 a01 a02 a10 a11 a12 a20 a21 ...

  2. 基于模糊Choquet积分的目标检测算法

    本文根据论文:Fuzzy Integral for Moving Object Detection-FUZZ-IEEE_2008的内容及自己的理解而成,如果想了解更多细节,请参考原文.在背景建模中,我 ...

  3. 【计算机视觉】基于局部二值相似性模式(LBSP)的运动目标检测算法

    基于局部二值相似性模式(LBSP)的运动目标检测算法 kezunhai@gmail.com http://blog.csdn.net/kezunhai 本文根据论文:Improving backgro ...

  4. 【计算机视觉】基于样本一致性的背景减除运动目标检测算法(SACON)

    SACON(SAmple CONsensus)算法是基于样本一致性的运动目标检测算法.该算法通过对每个像素进行样本一致性判断来判定像素是否为背景. 算法框架图 由上图可知,该算法主要分为四个主要部分, ...

  5. 基于COCO数据集验证的目标检测算法天梯排行榜

    基于COCO数据集验证的目标检测算法天梯排行榜 AP50 Rank Model box AP AP50 Paper Code Result Year Tags 1 SwinV2-G (HTC++) 6 ...

  6. 每天进步一点点------Sobel算子(2)

    转载  http://blog.csdn.net/tianhai110 索贝尔算子(Sobel operator)主要用作边缘检测,在技术上,它是一离散性差分算子,用来运算图像亮度函数的灰度之近似值. ...

  7. 基于Shading Model(对光照变化一定不变性)的运动目标检测算法

    光照模型(Shading Model)在很多论文中得到了广泛的应用,如robust and illumination invariant change detection based on linea ...

  8. 五种基于RGB色彩空间统计的皮肤检测算法

    最近一直在研究多脸谱识别以及如何分辨多个皮肤区域是否是人脸的问题 网上找了很多资料,看了很多篇文章,将其中基于RGB色彩空间识别皮肤 的统计算法做了一下总结,统计识别方法主要是简单相比与很多其它基于 ...

  9. 【计算机视觉】基于Shading Model(对光照变化一定不变性)的运动目标检测算法

    光照模型(Shading Model)在很多论文中得到了广泛的应用,如robust and illumination invariant change detection based on linea ...

随机推荐

  1. 关于在Ubuntu中无法使用tree命令的原因

    初学linux系统的时候使用的是Ubuntu的操作系统,边看视频边学习,却发现很多命令行在自己使用的时候没有效果,只会盲目的百度,后面回过头来仔细一看才发现,原来终端早就给你答案了,只是自己一看到英语 ...

  2. java通过浏览器请求头(User-Agent)获取访问者设备信息以及系统版本

    个人博客 地址:http://www.wenhaofan.com/article/20181125220342 在开发AutuBlog项目时需要做后台的登录记录,想起浏览器的User-Agent,于是 ...

  3. python爬取连续一字板股票及当时日期数据【原创分享】

    本篇为个人测试记录,记录爬取连续一字板的股票及当时日期. import tushare as ts import pandas as pd import time # 筛选一字板的策略 def gp_ ...

  4. idea 配置 tomcat 教程

    最近在搞一个项目需要用到idea 配置tomcat,翻了翻网上的帖子发现稂莠不齐,最后决定还是自己写个吧!(其实我挺蠢的走了好多的弯路,哎~) 1.首先准备一个需要大家tomcat的工程,然后使用id ...

  5. vue 中的路由为什么 采用 hash 路由模式,而不是href超链接模式(Hypertext,Reference)?

    1. vue中路由模式的种类有两种 1. 一种是 hash 模式. 2. 一种是 h5 的 history 模式. 2. hash 和 history 都是来自 bom 对象 bom 来自 windo ...

  6. EasyExcel实现导入excel

    https://blog.csdn.net/rexueqingchun/article/details/91870372 1.pom.xml配置依赖包 <!-- xls格式excel依赖包 -- ...

  7. 爬虫 urllib

    内置http请求库 模块 urllib.request 请求模块 urllib.error  异常处理模块 urllib.parse     url解析模块 urllib.robotparser    ...

  8. Jmeter录制https协议不能跳转成功(证书导入)

    原文:  http://www.cnblogs.com/Lam7/p/7154120.html 录制脚本的时候,比如录制https协议的百度网站 https://www.baidu.com ,所有录制 ...

  9. OrCAD 16.6 自建仿真模型

    今天仿真用到一个三极管,NXP的MMBT2222A,OdCAD自带的库里没找到,于是打算学着自己建立一个仿真模型 http://www.nxp.com/documents/spice_model/MM ...

  10. k线、指标绘制

    我接触的绘制有两种:gdi+和qt绘图.可以灵活的绘制任何想要的东西. 先上效果图吧. 如下:基于gdi+的股指和股票的绘制.上面是沪深成分股实时生成的股票指数走势,下面是IF主力走势和开平仓位置. ...