Example image

I have a set of images which consist of a fairly regular pattern - essentially a set of roughly concentric distorted ellipses - with a small area (<1% of the total image area) obscured by a circular disk. I'd like to be able, digitally, to reconstruct the part of the pattern which is hidden by the disk and produce an image which is 'complete', as it would look if the disk were not there.

Although the pattern is not completely regular (the ellipses are distorted and the centre moves around from image to image), it's pretty obvious to a human observer what the obscured part of the pattern would look like - one could draw it in with a pencil in a moment! I wonder therefore if there exists an image-processing algorithm which would enable me to do this automatically - for example, transforming the image into some suitable space that separates the circular disk from the rest of the pattern, filtering out the disk, then doing the inverse transform to reconstruct the image. Not being a specialist in this field, however, I don't really know what I'm looking for. Does anyone have any suggestions?

  • 1
    $\begingroup$ Could you provide a sample image or two? $\endgroup$ – user42 Nov 7 '11 at 21:40
  • $\begingroup$ I could, if I knew how to upload images to this site. I'm afraid I haven't been able to figure that out, either. $\endgroup$ – Eos Pengwern Nov 7 '11 at 21:54
  • 1
    $\begingroup$ @EosPengwern when you edit your question there's an icon of a photo/image, when you click it you get an upload dialog and through that you can add an image $\endgroup$ – Ivo Flipse Nov 7 '11 at 23:22
  • 2
    $\begingroup$ 2D Fourier extrapolation might work dsp.stackexchange.com/questions/101/… $\endgroup$ – endolith Nov 8 '11 at 5:08
  • $\begingroup$ @Ivo Flipse, Thank you, see image added above. These are laser interference patterns, so there's some speckle noise there as well. The disk is right at the centre of the frame, cutting what would otherwise be the innermost complete ellipse. $\endgroup$ – Eos Pengwern Nov 8 '11 at 19:36

You can try using the Hough transform to detect the disk and the visible ellipses.

Also, you may want to do a search for "texture generation".

Most importantly, keep in mind that just because a person can do something effortlessly, it doesn't mean that it is easy to program a computer to do it. Virtually any vision task is very easy for people, but are extremely hard for computers.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.