We are given a set of grayscale image patches obtained from images after edge detection. Each patch is 10x10 pixels with intensity varying between 0 and 255 for each pixel. This set may contain a very few (maybe one or two) or a large number of patches. We want to represent the set by a single 10x10 pixel patch or “feature” such that the feature captures the invariance or common properties of the set. Intuitively speaking, the feature should be the intersection of the edges in the image patches in the set. For example, if all the patches contain a vertical edge at a fixed position and also contain other edges in different orientations and positions, then our feature should contain only the vertical edge at the fixed position and no other edge. Unfortunately, the operation of intersection is not well-defined for images. How can we approach to compute such a feature for a set of image patches?

  • 7
    $\begingroup$ Post some of the images please. $\endgroup$
    – Maurits
    Commented Feb 21, 2012 at 21:16
  • $\begingroup$ A sample of such 3x3 patch can be [22 225 100; 92 200 56; 175 175 5 ] $\endgroup$
    – I_N
    Commented Feb 22, 2012 at 4:28

1 Answer 1


I may be wrong if i have not understood the question! I am trying to give a rather elementary introduction here. I can refine things and be more rigorous as suited.

What you are looking for is that of 100 (or 1000) patches, which patch is the most representative patch of all.

For simplicity if the size of a patch is 1x1. So it is just a scalar. In this case, you can just find a simple average $RepScalar = Avg = \sum P_i$.

You can also apply median rather than averaging if appropriate. A more generalized way is to treat this as random variable and find expected value as $E(P) = \sum PDF(x) \cdot x $

I don't know if you are really conversent with this: so i am leaving you with a tutorial on this: http://www.dartmouth.edu/~chance/teaching_aids/books_articles/probability_book/Chapter6.pdf

Now in your case the $P$ is a vector instead of scalar.

So the averaging will become

$$ RepPatch[i] = \sum_{k} P_k[i] $$

where $k$ is a patch number and $i \in { 1, ... 100 }$ for $10x10$ patch size.

If you know the PDF or if you can estimate PDF you can find Expected value of this but for a vector of size of 100 (10x10) it is too complex.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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