-1

I have faced with such problem, when I capture photo from LCD display there are annoying rainbow strips.

Is there any way to clear image from them doing some computer vision stuff? Which are the keywords should I google for? Or maybe some useful links/papers related for.

My goal is to OCRing after it. In case of low threshold WolfJolion binarization finds a lot of connected components which cause slow and bad recognition. Using higher threshold some characters are vanished from image.

Source photo: enter image description here

First binarization: enter image description here

Second binarization: enter image description here

P.S. Photos are taken from MacBook Pro Retina Display with iPhone 6 camera.

  • Capture multiple photos and average the images to avoid Moire effect?! Not sure if this is a solution you are looking for. – shekkizh Apr 07 '16 at 19:22
  • I really can't see how this is programming related in any way – Mihai Bujanca Apr 08 '16 at 12:57
  • @shekkizh In many cases I cannot capture multiple photos to avoid this effect, I am interested in programming way, applying some filters or something else to avoid it. – Evgeny Savinov Apr 08 '16 at 13:37

1 Answers1

2

What you see is called Moire effect. It is caused by subsampling the screen pixels with your camera pixels. Simply slightly change angle and or distance to avoid these. Then you don't need any image processing. Beside that these stripes should not bother any decent OCR.

If you insist on image processing then a global threshold should do the trick.

Piglet
  • 27,501
  • 3
  • 20
  • 43