Question

I am trying to improve the quality of an image.

I use emgu for this.

I use this code to change the contrast (I think!).

Image<Bgr, byte> improveMe = new Image<Bgr, byte>(grid);
improveMe._EqualizeHist();

For a daytime image I get this:

enter image description here

For a night time image I get this:

enter image description here

Obviously, not so good!

The 1st image is nice and lush and the 2nd is as you can see could be descirbed as over-exposed.

Are there ways to avoid get such a poor image at night-time? Is it because the image is now lower in color channels (if that makes sense)? Should I check for min/max color ranges of an image before deciding to apply this filter? Should I use a completely different filter?

Reading material links are welcome answers as well...

Was it helpful?

Solution

There are many ways to do this some better then others depending whether is a video feed, still and even camera shutter speed... and so on.

I would recommend you to try "adaptive threshold" (EMGU ThresholdAdaptive function) and also check some white balance algorithms. Check this one: White balance algorithm

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top