首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Opencv背景差分不检测具有小雪阵雨的视频的移动对象

Opencv背景差分不检测具有小雪阵雨的视频的移动对象
EN

Stack Overflow用户
提问于 2016-02-11 00:46:57
回答 1查看 895关注 0票数 3

我正在尝试使用opencv背景差分来检测移动对象。它对一些视频效果很好。但是对于一个特定的视频(由静止摄像机捕获),它不会检测到移动的行人。此外,视频中有非常小的阵雪,这是肉眼很难看到的。这可能是它没有检测到移动物体的原因。或者可能有其他原因,比如背景和前景对象的像素值相似。

这是程序代码:

代码语言:javascript
复制
import processing.core.*;
import processing.video.*;
import gab.opencv.*; 
public class BackgroundSubtraction extends PApplet {

Movie video;
OpenCV opencv;

public void setup(){
    size(720,680);
    video = new Movie(this, "/home/gurinderbeer/Downloads/IMG_1570.MOV");
    opencv = new OpenCV(this, width, height);
    opencv.startBackgroundSubtraction(0, 3, .5); // 5,3, .5
    video.play();
    }

public void draw() {
    image(video, 0, 0); 
    opencv.loadImage(video);
    opencv.updateBackground();
    opencv.dilate();
    opencv.erode();
    noFill();
    stroke(255, 0, 0);
    strokeWeight(3);
    for (Contour contour : opencv.findContours()) {
        contour.draw();
        }
    }


public void movieEvent(Movie m) {
      m.read();
    }

public static void main(String _args[]){
    PApplet.main(new String[] { BackgroundSubtraction.class.getName()});
    }
}

这些是视频中的几个快照。我们几乎看不到任何降雪(尽管实际上有非常小的降雪),有两个行人在走。但是它们不会在轮廓检测中被捕获。

这场小雪会不会是不能检测到行人的原因。

EN

Stack Overflow用户

发布于 2016-02-12 12:01:29

这可能是由于来自环境的背景噪声,你可以在处理之前对你的视频使用平滑效果。

平滑一定会模糊噪声,从而提高整体检测率。

这里有一个here示例。

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35321082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档