how to select certain shape from different images?

2 visualizaciones (últimos 30 días)
Isee You
Isee You el 28 de Mayo de 2012
i have an image of star
and
I want to select a this shape from other different images that content star and other shapes
how to do that
  7 comentarios
Walter Roberson
Walter Roberson el 29 de Mayo de 2012
Your sample image is filled. Should only the (small) filled stars be selected, or should the large non-filled stars also be selected?
Some of the hollow stars are different aspect ratios (stretched more vertically); should those be found or only the ones with the same aspect ratio?
Is the task to be able to find portions of the image that match the given input image, or is the task to be able to match stars specifically?
Isee You
Isee You el 29 de Mayo de 2012
i want to select the edges of the stars even star is small or large filled or non filled
only the out line of stars

Iniciar sesión para comentar.

Respuestas (3)

Stephen
Stephen el 29 de Mayo de 2012
haha, Walter :)
You can use the rucklidge algorithm. It relies on the haussdorf distance of a set of points, say the 10 points of your pentagram, and looks for a similar set of distances in all points of the target image. It takes a while sometimes, but it's pretty good.
You can also decompose the image with wavelets and look for similar signatures that way I've heard, but I can't help you build something like that. There may be something in the file exchange, like train a face recognizer to look for pentagrams or satanic faces.
  1 comentario
Isee You
Isee You el 29 de Mayo de 2012
my star image is like this
http://www.surfling.org/darkstar/images/star.gif
and other image content small and large star image and other shape
http://www.mediafire.com/i/?c67bq9ox0n5kapv
and so other image
what i want is i want to select the all stars in this images

Iniciar sesión para comentar.


Image Analyst
Image Analyst el 29 de Mayo de 2012
I agree that it is a poorly phrased question that is so ambigous and open-ended as to make answering it have a high likelihood of wasting time. About all I can say, unless the poster posts an image or gives other additional information, is that this is a case of pattern recognition and there are thousands of ways to do that. You can go here http://iris.usc.edu/Vision-Notes/bibliography/contentspattern.html#Pattern%20Recognition,%20Clustering,%20Statistics,%20Grammars,%20Learning,%20Neural%20Nets,%20Genetic%20Algorithms for a list of them. The CBIR (content based image retrieval) community is involved heavily in this research right now, so you might look up CBIR methods. You might get your star by using nromxcorr2(), SURF, MSER, looking at the perimeter square to area ratio, or dozens of other ways depending on what your images look like. Sorry I can't explain all or any of them here - it would waste my time unless I know what kind of images you're dealing with.

Image Analyst
Image Analyst el 29 de Mayo de 2012
For the images you have now provided, I'd recommend that you look at my image segmentation demo. http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862 Modify it to take the "solidity" - I think that will be enough to pick out just the stars. Basically it comes down to this process:
  1. extract the red channel: redChannel = rgbImage(:,:,1)
  2. threshold: binaryImage = redChannel > 128;
  3. call imfill: binaryImage = imfill(binaryImage , 'holes');
  4. call bwlabel and regionprops asking for solidity: regionprops(binaryImage, 'Solidity')
  5. filter out, using ismember, those blobs not having the require solidity values. See my demo.
My demo has everything you need. Give that a shot and let me know if you can't figure it out.
  5 comentarios
Walter Roberson
Walter Roberson el 30 de Mayo de 2012
http://www.mathworks.com/matlabcentral/answers/7924-where-can-i-upload-images-and-files-for-use-on-matlab-answers
Isee You
Isee You el 30 de Mayo de 2012
http://imageshack.us/g/85/14340572.jpg/

Iniciar sesión para comentar.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by