I have an image which is generated by convolution between (1) a simple small patch and (2) larger image composed of localized point-like features (e.g. slat-and-pepper noise, sum of shifted $\delta$-functions).

In other words the image seems like the patch (1) stamped at random locations without any affine transforms.

Se example of images here 1 2 3

I would like to find out what is the stamp in order to eventually conduct de-convolution.

signal/image processing is not my profession, so I don't know if this fast is easy and solved long time a go, or if it is still difficult. But I guess it is easier than what is done in image processing today e.g. here or here since at least I don't need to consider any affine transforms.

  • $\begingroup$ if you convolve an image with a patch (kernel), and then you want to obtain the patch and the initial image only from the output of convolution, it's called blind deconvolution which is still difficult task. $\endgroup$ – Mohammad M May 29 '17 at 17:54
  • $\begingroup$ if you want to only find where the patches repeated it's not a difficult task. $\endgroup$ – Mohammad M May 29 '17 at 18:06
  • $\begingroup$ I understand that it is difficult task in general case ... but if I assume that the original image is composed separated $\delta$-function such that the stamps usually does not overlap, than I guess it should be much easier. $\endgroup$ – Prokop Hapala May 30 '17 at 15:37
  • $\begingroup$ I know some method which are used for 1D signals. ARMA (auto-regressive moving average) processes take a white noise (random delta trains) as input and produce some repeating pattern, also you could use cepstrum to separate the delta train from the patch. I'm not aware how to extend these concepts to images (2D signals). $\endgroup$ – Mohammad M May 31 '17 at 10:05

Your Answer

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

Browse other questions tagged or ask your own question.