Removing the 'red' artifact from my JPEG I have a JPEG that originally came from a IP Camera. I have converted the JPEG to a bytes and have uploaded it to my server. Upon receiving it on my server I save it to disk.

When I view the image it looks 'grainy' and 'reddish'.



When I perform a contrast stretch I get this:



When I perform a Hist-Equalization I get this:



N.B.
I have also tried a filter just on the Red Channel:

Image&lt;Bgr, byte&gt; CurrentFrame = new Image&lt;Bgr, byte&gt;((Bitmap)picOriginal.Image.Clone());
CvInvoke.cvSmooth(CurrentFrame[2], CurrentFrame[2], SMOOTH_TYPE.CV_GAUSSIAN, 3, 3, 1.5, 0);


Is there another approach so I could make the image look better, 'balanced', if that makes sense?
Did you try to change the white balance of your image ? Apparently there's a function (balanceWhite) in OpenCV that tries to correct the white balance, you might want to give it a go.