借助AForge.NET视觉检测烟雾 [英] Detecting smoke visually with the help of AForge.NET

查看:124
本文介绍了借助AForge.NET视觉检测烟雾的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,我真的很赶时间,我的项目要求我从Aforge.net Videosourceplayer上的任何视频中进行射击和抽烟.
我已经进行了火灾检测,但仍不能100%准确,但是现在我主要关心的是如何检测烟雾?

似乎Aforge.NET中的所有筛选器只能帮助我进行一定程度的扩展.仅检测烟雾本身是一件烦事,现在我唯一的计划是
-更新视频中特定区域的像素值以检测对比度下降.

如果像素的对比度值下降,则检测到烟雾.

我知道这是完成该项目的一种半心半意的方式,但是我需要做一些至少可行的事情.

我已经对烟进行了十周的研究,这已经超出了我的范围.

帮助将不胜感激!!!

有谁知道哪种方法适合选择用于检测对比度或样本代码的像素区域?请帮助!谢谢!! :confused:

Hi guys I''m in a really rush of time , My project requires me to do fire and smoke from any video on the Aforge.net Videosourceplayer .
I already did my fire detection which is still not 100% accurate but now my main concern is how do I detect smoke?

Seems like all the filter in Aforge.NET will be able to help me to a certain extend only. To detect smoke just itself is a chore, now my only plan is to
-update pixel value of certain area in the video to detect for falling contrast.

if the pixel''s contrast value is declining then smoke is detected.

I know it''s a pretty half hearted way to complete this project but I need to do something that may at least work.

I''ve been doing research on smoke for 10 weeks and it''s just beyond me .

Help will be greatly greatly appreciated!!!

anyone knows what method is good for selecting a pixel area for detecting contrast or sample code? pls help! Thanks!! :confused:

推荐答案

我已经建议您通过对比水平来检测烟雾.另外,您应该只使用一帧进行检测;动作检测对您无济于事.因此,您应该使用静态方法,或者甚至最好使用准静态方法,这是我针对您的第一个问题建议的.

现在我正在考虑它的一些细节.您可以尝试直接测量图像的总体对比度.但是,此方法过多地取决于场景和照明,可能需要进行彻底的校准,并且如果照明发生变化,可能会变得不合适.

相反,您可以尝试以下计划:

1)归一化框架.

2)执行边缘检测 http://en.wikipedia.org/wiki/Edge_detection [C#中的图像处理实验室 [ ^ ],或者例如,在这里: http://www.pages.drexel.edu/~weg22/edge.html [ ^ ].功能的最终选择取决于比例比较:相机的像素尺寸和图片上细节的特征比例.

3)产生的图片应进行对比.

4)应该进行分析以检测没有或边缘水平很低的图像斑点.想法是烟雾覆盖了图像的锐利细节,使边缘微弱或消失.这样,您可以在烟雾完全充满之前发现一些烟雾.与无烟样品的比较可能非常有用.我认为在所有情况下,您的算法都需要教学阶段.

仅当您的场景中包含许多细小的锐利细节时,此方法才能从烟雾情况中分辨出无烟状态.如果没有清晰的细节,则应具有很高的对比度,因此可以使用直接对比度测量.我认为,是否所有这些条件都不是,烟雾检测将非常困难或不可能.

根据我过去为您提供咨询服务的经验,我记得您对运动检测有些专心.在任何情况下,您都不能使用烟雾运动检测:烟雾会慢慢填充场景,因此在任何给定的时间段内,图片看起来几乎都是静态的.

顺便问一下,您申请火灾探测的方法是什么?静止运动检测?..

—SA
I already advised you to detect smoke by the level of contrast. Also, you should use just one frame for detection; motion detection should not help you. So, you should use static method, or, even better, quasi-static which I recommended in response to you first Question.

Now I''m thinking about some detail of it. You can try to measure general contrast of the picture directly. This method, however, depends on the scene and lighting too much much, may require thorough calibration and can turn unsuitable if the lighting changes.

Instead, you can try the following plan:

1) Normalize the frame.

2) Perform edge detection http://en.wikipedia.org/wiki/Edge_detection[^] transformation. As you''re are not interested in edges themselves you may find the simplest algorithm the best. Most likely, you can perform simple convolution; the code is available in AForge.net. The samples of the second function in the convolution (the mask of filter matrix) can be found in the library and/or sample code from the article by Andrew Kirillov: Image Processing Lab in C#[^], or, for example, here: http://www.pages.drexel.edu/~weg22/edge.html[^]. The final selection of the function depends on scale comparison: the pixel dimensions of your camera and the characteristic scale of detail on the picture.

3) The resulting picture should be contrasted.

4) The analysis should be done to detect the blobs of image with no or low level of distinct edges. The idea is that smoke covers the sharp detail of the picture, which makes the edged weak or disappear. In this way, you could spot some smoke before it totally fills the picture. The comparison with the smoke-free sample can be very useful. I think in all cases your algorithm will need the teaching stage.

This method can tell no-smoke from smoke situation only if you have a scene rich of small sharp detail. If it does not have sharp detail is should be highly contrast, so you could use direct contrast measurements. Is none of these condition is the case, I think, smoke detection will be very difficult or impossible.

From my past experience advising you I remember you had some preoccupation with motion detection. In no case you can use motion detection for smoke: the smoke will slowly fill the scene, so for any given time slice the picture will look almost static.

By the way, what method you apply for fire detection? Still motion detection?..

—SA


这篇关于借助AForge.NET视觉检测烟雾的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆