光照模型(Shading Model)在很多论文中得到了广泛的应用,如robust and illumination invariant change detection based on linear dependence for surveillance application、Making background subtraction robust to sudden illumination Changes以及Illuminatin independent change detection for real world image sequence(本文介绍的内容)。后面两本文献虽然是90年代的东西,但还是值得看看。先来简单说说什么是光照模型(Shading Model)。光照模型就是给定一个观察的像素点Ip,其值是由照度(Illumination)Ii和光照系数(Shading coefficient)Sp决定的,用公式表示如下:

光照模型的完整形式可以用下图来说明:

由上图和学过的知识可知,光照系数是由物体表面材料的反射因子和物体物理表面结构决定的。因此,对于某一位置,如果其物理表面结构没有发生变化,那么其光照系数将也不会发生;反之,如果物体表面结构发生变化,光照系数也会发生变化。

基于以上的结论,光照系数是由物体的表面结构决定的,而相对于光照变化具有独立性。因此,基于光照系数的目标检测算法不仅可以准确,而且对光照变化具有强鲁棒性。然而,光照系数却事先无法得知,一般也不容易计算。但是,在视频序列中,可以通过计算两帧图像中某一区域的灰度比率(Intensity ratio)来检测光照系数的变化,以此进行运动区域的检测。

灰度比率的计算和检测原理如下:

  通过式(17)得到灰度比率方差的举止,如果计算得到的灰度比率方差的均值接近0,则表示该区域没有发生变化;否则,就认为该区域发生了变化。

该算法的核心代码已经实现,经过测试,对光照具有较强的鲁棒性(确实是具有鲁棒性,突然的光照变化不会引起全局大范围的变化,即不会出现前景一片白的情况,但是小范围内会出现白片的现象)。由于今天下班走得匆忙,代码下个星期更新附上。

基于Shading Model(对光照变化一定不变性)的运动目标检测算法的更多相关文章

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

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

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

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

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

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

  4. 每天进步一点点------Sobel算子(3)基于彩色图像边缘差分的运动目标检测算法

    摘  要: 针对目前常用的运动目标提取易受到噪声影响.易出现阴影和误检漏检等情况,提出了一种基于Sobel算子的彩色边缘图像检测和帧差分相结合的检测方法.首先用Sobel算子提取视频流中连续4帧图像的 ...

  5. 基于DCT系数的实时监控中运动目标检测

    本文的主要内容来自2009 Advanced Video and Signal Based Surveillance会议的一篇论文“Real-Time Moving Object Detection ...

  6. UnrealEngine4 PBR Shading Model 概述

      虽然是概述,但内容并还是有些多,写上一篇PBR概念概述后,也在考虑怎么继续下去,最后还是觉得先多写一些东西再慢慢总结,所以还是尽量把这些年PBR相关的Paper精粹沉淀下来吧.     因为UE4 ...

  7. [UE4] Adding a custom shading model

    转自:https://blog.felixkate.net/2016/05/22/adding-a-custom-shading-model-1/ This was written in Februa ...

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

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

  9. 基于Adaboost的人脸检测算法

    AdaBoost算法是一种自适应的Boosting算法,基本思想是选取若干弱分类器,组合成强分类器.根据人脸的灰度分布特征,AdaBoost选用了Haar特征[38].AdaBoost分类器的构造过程 ...

随机推荐

  1. qt 5 基础知识 2(控件篇)

    QVBoxLayout *lay = new QVBoxLayout(this); // 创建一个竖直的盒子 lebel 篇 lay->addWidget(label = new QLabel( ...

  2. iOS 改变UILabel部分颜色

    //协议 UILabel *xieLabel = [[UILabel alloc] init]; xieLabel.textColor = TextGrayColor; xieLabel.font = ...

  3. Flatten Binary Tree to Linked List (LeetCode #114 Medium)(LintCode #453 Easy)

    114. Flatten Binary Tree to Linked List (Medium) 453. Flatten Binary Tree to Linked List (Easy) 解法1: ...

  4. [cocos2dx动作]CCLabel类数字变化动作

    cococs2dx的CCLabel类的数字变化动作 介绍: 简单的数字变化动作(适用于CCLabel类对象, 包括CCLabelTTF, CCLabelAtlas, CCLabelBMFont等等) ...

  5. bzoj1231

    看到n<=16不难想到状压dp 我们用二进制表示前x个位置,哪些牛被已经被选过了 这里我们可以通过穷举二进制数的顺序来转移 所以二维就够了 ..] of longint;     f:.. sh ...

  6. JS判断浏览器是否支持某一个CSS3属性

    1.引子 css3的出现让浏览器的表现更加的丰富多彩,表现冲击最大的就是动画了,在日常书写动画的时候,很有必要去事先判断浏览器是否支持,尤其是在写CSS3动画库的时候.比如transition的ani ...

  7. Java序列化技术

    Java序列化与反序列化是什么?为什么需要序列化与反序列化?如何实现Java序列化与反序列化? Java序列化是指把Java对象转换为字节序列的过程:而Java反序列化是指把字节序列恢复为Java对象 ...

  8. JavaScript实现网页背景自动变色

    JavaScript实现网页背景自动变色,自己变换颜色,设定时间和颜色值即可,在你设定的颜色值.一定时间内自动切换网页背景颜色. <!DOCTYPE HTML PUBLIC "-//W ...

  9. Android 解决安装Egit时Egit Mylyn和org.eclipse.team.core报错

    为了让Aptana支持GitHub,需要安装Egit,但在的时候碰到两个错误,一个是关于缺少EGit Mylyn另一个是缺少org.eclipse.egit.import.feature.group. ...

  10. Flash Vector例子

    var s1:Student = new Student(); var s2:Student = new Student(); var s3:Student = new Student(); s1.n ...