Extract flames from a video avoiding reflection on the background panel

4 Ansichten (letzte 30 Tage)
Dheeraj
Dheeraj am 11 Sep. 2021
Kommentiert: Image Analyst am 11 Sep. 2021
Hi,
I am trying to analyse flame area from a video by extracting each frame and analysing them. However, the flames are of different size in each frame and in turn the reflection on the back panel is also different. Which means that I cannot use a single binarizing threshold for the entire video. The original videoframe and the binarized video frame are shown below. The binarized image shows a higher flame area at the bottom than in the original frame. If I use a higher threshold, then I loose data from the top of the flame. I cannot change the background either as I am studying how the panel burns.
Is there any Image processing algorithm I can use to extract the flames and avoid the reflection?
Is there any other way I could solve the problem?
original videoframeBinarized videoframe with 0.5 threshold
Hope someone can help me out. Thanks in advance!
Cheers

Antworten (2)

Image Analyst
Image Analyst am 11 Sep. 2021
You need to eliminate the reflection on the back panel. A very effective, and inexpensive, way is to use black velvet as your background. Black velvet is extremely black, much blacker than black felt/flannel/Lycra, black posterboard, black anodized aluminum, etc. Obviously make sure it's far enough back to not catch on fire. This simple trick could save you much time in trying to devise a smarter image processing algorithm.
  4 Kommentare
Dheeraj
Dheeraj am 11 Sep. 2021
I cannot change the panel to any colour. It needs to be untreated. So no paints and the material does not come in a different color.
Image Analyst
Image Analyst am 11 Sep. 2021
What's wrong with what you're doing now? How/why do you think it's wrong?
Even if the image analysis is slightly wrong, it might be wrong by a lower percentage than the inherent variability in burning an actual physical object. Like if the flame area is off by 2% (you think) but the time to burn away completely varies by 30% from one panel to the next, then the variability in the image analysis is not a significant source of error.
You could use stdfilt() on the image and try to identify smooth areas. We might assume the panel will have low standard deviation and the flames will have high StDev. You can somehow combine the mask you get from thresholding the stdfilt image with one you get from Color Thresholding using the ColorThresholder app on the Apps tab of the tool ribbon.

Melden Sie sich an, um zu kommentieren.


Image Analyst
Image Analyst am 11 Sep. 2021
Papers on fire detection:
23.4.12.8 Forest Fire Evaluation, Wildfire Analysis, Brushfire Analysis, Fire Detection

Produkte


Version

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by