I have images with repeated patterns in them. I would like to find similar images based on having similar patterns.
The patterns are made of crosses, triangles, squares which are combined to form more complicated structures made of those "primitive shapes". For example, imagine a cross made of triangles or hexagons etc.
These decorations are found in wallpapers, carpets, kilims, wool sweaters and even some paintings.
An example image from wikipedia is here
My typical application is to find, say, sweaters with similar patterns in them. Ignoring colour for the moment.
I have tried to extract SIFT descriptors (using C++ and OpenCV) and match these between two images. However, they match tiny areas e.g. the vertex of a hexagon and a triangle but ideally I would like to match the actual shapes of the triangle and rectangle.
It works a bit better if I scaled down the images but still I sense I need a different approach than SIFT and friends.
Can anyone suggest other methods for these kind of problems?