Attention! This forum will be made read-only by Dec-20. Please migrate to https://forum.opencv.org. Most of existing active users should've received invitation by e-mail.
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Bursts of light (e.g. car lights in your example) are a challenge when it comes to false alarms. There are three ways that I've worked to tackle this;

  1. Max threshold for number of contours (or contour areas): I find that these flashes of light tend to create many (e.g., hundreds) of contours. I set a limit which tends to suppress most of these, careful not to suppress actual objects that I'm seeking to detect.

  2. Mask: There are areas that are susceptible to flashes of car lights in my camera's field of view, so I create a mask with GIMP (load a camera frame, add a transparent layer over top, paint the area that I want masked, save that) and apply the mask when I do the background subtraction.

  3. Rapid changes in histogram levels (still working on this one on the back burner, too early to gauge results).

Bursts of light (e.g. car lights in your example) are a challenge when it comes to false alarms. There are three ways that I've worked to tackle this;

  1. Max threshold for number of contours (or contour areas): I find that these flashes of light tend to create many (e.g., hundreds) of contours. I set a limit which tends to suppress most of these, careful not to suppress actual objects that I'm seeking to detect.

  2. Mask: There are areas that are susceptible to flashes of car lights in my camera's field of view, so I create a mask with GIMP (load a camera frame, add a transparent layer over top, paint the area that I want masked, save that) and apply copyTo() the mask to the image when I do the background subtraction.

  3. Rapid changes in histogram levels (still working on this one on the back burner, too early to gauge results).

Bursts of light (e.g. car lights in your example) are a challenge when it comes to false alarms. There are three ways that I've worked to tackle this;

  1. Max threshold for number of contours (or contour areas): I find that these flashes of light tend to create many (e.g., hundreds) of contours. I set a limit which tends to suppress most of these, careful not to suppress actual objects that I'm seeking to detect.

  2. Mask: There are areas that are susceptible to flashes of car lights in my camera's field of view, so I create a mask with GIMP (load a camera frame, add a transparent layer over top, paint the area that I want masked, save that) and copyTo() the mask to the image when I image, then do the background subtraction.

  3. Rapid changes in histogram levels (still working on this one on the back burner, too early to gauge results).

click to hide/show revision 4
Added additional clarification of challenges

Bursts of light (e.g. car lights in your example) are a challenge when it comes to false alarms. There are three ways that I've worked to tackle this;

  1. Max threshold for number of contours (or contour areas): I find that these flashes of light tend to create many (e.g., hundreds) of contours. I set a limit which tends to suppress most of these, careful not to suppress actual objects that I'm seeking to detect.

  2. Mask: There are areas that are susceptible to flashes of car lights in my camera's field of view, so I create a mask with GIMP (load a camera frame, add a transparent layer over top, paint the area that I want masked, save that) and copyTo() the mask to the image, then do the background subtraction.

  3. Rapid changes in histogram levels (still working on this one on the back burner, too early to gauge results).

My most difficult challenge at this time is tracking a car at night that is coming towards the camera, due to the massive light change and obfuscation of the car itself (which greatly impedes feature detection or classifier matching).

Camera placement is key to helping to moderate these issues, though there is rarely always a perfect location to mount a camera to mitigate these issues.

Bursts of light (e.g. car lights in your example) example, a neighbor turning on a porch light, etc) are a challenge when it comes to false alarms. There are three ways that I've worked to tackle this;

  1. Max threshold for number of contours (or contour areas): I find that some of these flashes of light tend to create many (e.g., hundreds) of contours. I set a limit which tends to suppress most of these, careful not to suppress actual objects that I'm seeking to detect.

  2. Mask: There are certainly specific areas that are susceptible to flashes of car lights from the roadway in my camera's field of view, so I create a mask with GIMP (load a camera frame, add a transparent layer over top, paint the area that I want masked, save that) and copyTo() the mask to the image, then do the background subtraction.

  3. Rapid changes in histogram levels (still working on this one on the back burner, too early to gauge results).

My most difficult challenge at this time is tracking a car at night that is coming towards the camera, due to the massive light change and obfuscation of the car itself (which greatly impedes feature detection or classifier matching).

Camera placement is key to helping to moderate these issues, though there is rarely always a perfect location to mount a camera to mitigate these issues.

click to hide/show revision 6
more detail about light change

Bursts of light (e.g. car lights in your example, a neighbor turning on a porch light, etc) are a challenge when it comes to false alarms. There are three ways that I've worked to tackle this;

  1. Max threshold for number of contours (or contour areas): I find that some of these flashes of light tend to create many (e.g., hundreds) of contours. I set a limit which tends to suppress most of these, careful not to suppress actual objects that I'm seeking to detect.

  2. Mask: There are certainly specific areas that are susceptible to flashes of car lights from the roadway in my camera's field of view, so I create a mask with GIMP (load a camera frame, add a transparent layer over top, paint the area that I want masked, save that) and copyTo() the mask to the image, then do the background subtraction.

  3. Rapid changes in histogram levels (still working on this one on the back burner, too early to gauge results).

My most difficult challenge at this time is tracking a car at night that is coming towards the camera, camera in the driveway, due to the massive light change and obfuscation resulting obscuration of the car itself (which greatly impedes feature detection or classifier matching).

Camera placement is key to helping to moderate these issues, though there is rarely always a perfect location to mount a camera to mitigate these issues.

Bursts of light (e.g. car lights in your example, a neighbor turning on a porch light, etc) are a challenge when it comes to false alarms. There are three ways that I've worked to tackle this;

  1. Max threshold for number of contours (or contour areas): I find that some of these flashes of light tend to create many (e.g., hundreds) of contours. I set a limit which tends to suppress most of these, careful not to suppress actual objects that I'm seeking to detect.

  2. Mask: There are certainly specific areas that are susceptible to flashes of car lights from the roadway in my camera's field of view, so I create a mask with GIMP (load a camera frame, add a transparent layer over top, paint the area that I want masked, save that) and copyTo() the mask to the image, then do the background subtraction.

  3. Rapid changes in histogram levels (still working on this one on the back burner, too early to gauge results).

My most difficult challenge at this time is tracking a car at night that is coming towards the camera in the driveway, due to the massive light change and resulting obscuration of the car itself (which greatly impedes feature detection or classifier matching).

Camera placement is key to helping to moderate these issues, though there is rarely always a the perfect location to mount a camera to mitigate these issues.

issues is not always available; http://www.axis.com/academy/installation_challenges/placement.htm

Bursts of light (e.g. car lights in your example, a neighbor turning on a porch light, etc) are a challenge when it comes to false alarms. There are three ways that I've worked to tackle this;

  1. Max threshold for number of contours (or contour areas): I find that some of these flashes of light tend to create many a large number (e.g., sometimes hundreds) of contours. I set a limit which tends to suppress most of these, these false alarms (by disqualifying such frames in alarm processing), though one has to be careful not to suppress actual objects that I'm they are seeking to detect.

  2. Mask: There are certainly specific areas that are susceptible to flashes of car lights from the roadway in my camera's field of view, so I create a mask with GIMP (load a camera frame, add a transparent layer over top, paint the area that I want masked, save that) that layer only) and copyTo() the mask to the image, then do the background subtraction.

  3. Rapid changes in histogram levels (still working on this one on the back burner, too early to gauge results).

My most difficult challenge at this time is tracking a car at night that is coming towards the camera in the driveway, due to the massive light change and resulting obscuration of the car itself (which greatly impedes feature detection or classifier matching).

Camera placement is key to helping to moderate these issues, though the perfect location to mount a camera to mitigate these issues is not always available; http://www.axis.com/academy/installation_challenges/placement.htm