identifying objects in a picture containing several objects

I have a picture that contains more obiecte.Obiectele I have separated into smaller pictures (cut from full size) must make a sequence of code that I find an object and make a circle around him. 10x

 Respuesta aceptada

Hello,
Why don't you use command 'normxcorr2' from Matlab??
Here I have a sample code :
clear; clc;
I = imread('office_5.jpg');
J = I(192:250,180:220,:);
imshow(J);
c = normxcorr2(J(:,:,1),I(:,:,1));
[max_c, imax] = max(abs(c(:)));
[ypeak, xpeak] = ind2sub(size(c),imax(1));
corr_offset = [(xpeak-size(J,2)) (ypeak-size(J,1))];
figure, imshow(I); hold on;
rectangle('position',[corr_offset(1) corr_offset(2) 50 50],...
'curvature',[1,1],'edgecolor','g','linewidth',2);
The object is :
And the correlation result is :

3 comentarios

Sara
Sara el 11 de Abr. de 2017
Hi. How to find the value of j?
What are you talking about? I see no lower case j in the code.
Sara
Sara el 12 de Abr. de 2017
No sorry . i mean J at the coding above . This J = I(192:250,180:220,:); . How to get the value?

Iniciar sesión para comentar.

Más respuestas (5)

Just the same code.
You just need to change the I and J with your 'reference' image and the object
clear; clc;
I = imread('di-5Y01.jpg');
object = imread('di-FNMJ.jpg');
c = normxcorr2(object(:,:,1),I(:,:,1));
[max_c, imax] = max(abs(c(:)));
[ypeak, xpeak] = ind2sub(size(c),imax(1));
corr_offset = [(xpeak-size(object,2)) (ypeak-size(object,1))];
figure, imshow(I); hold on;
rectangle('position',[corr_offset(1) corr_offset(2) 30 60],...
'curvature',[1,1],'edgecolor','g','linewidth',2);
And the result :

5 comentarios

Thank you very much! It works. May I ask one more thing if you can help me. Should identify the object in a circle. Now we identify an ellipse. and not half as the reference object (ellipse is part of the object). Thank you again. http://imageshack.us/photo/my-images/825/obiect10inpoza.png/ http://imageshack.us/photo/my-images/651/obiect10.jpg/
Comment on this Answer
The ellipse in the overlay is there from the call to rectangle() function. Just look it up in the help and modify its arguments. You shouldn't need Chandra to do that simple thing.
I managed to make the circle, the problem is that the circle is not centered on obiect.The circle is tangent to the top of the object and left. How can I center the circle on the object? 10Q
Hi Chandra,
How about the objects that have some rotation, I mean consider some frames and in each frame the object has a little rotation and translation, is it possible to detect the object in all of the frames? if yes How?
Thanks in advance,
Arash
hi, i used the above code.i downloaded an image from http://imageshack.us/photo/my-images/825/obiect10inpoza.png/ and used it instead of di-5Y01.jpg.similarly i downloaded the image in URL http://imageshack.us/photo/my-images/690/obiect5.jpg/ and used it instead of di-FNMJ.jpg.only i changed the images used.but still it is not detecting the cup from the image.what shall i do?

Iniciar sesión para comentar.

Tomescu
Tomescu el 21 de Dic. de 2011
Thanks for the reply! I reference image that contains 10 items. I have separate objects in small images (cut from the reference image). Code sequence must find an object that you selected (if the write code sequence "object 1" must make a circle around the "object 1" If it says "Objective 2" to make the circle around the "item 2" Can you help me please? Thanks reference image
Object
Tomescu
Tomescu el 21 de Dic. de 2011
Thank you very much! It works. May I ask one more thing if you can help me. Should identify the object in a circle. Now we identify an ellipse. and not half as the reference object (ellipse is part of the object). Thank you again. http://imageshack.us/photo/my-images/825/obiect10inpoza.png/ http://imageshack.us/photo/my-images/651/obiect10.jpg/

1 comentario

This is not an answer. This should be a comment on someone's answer, which you did above, so you can delete this "answer" lest someone respond to it and then you mark this (your follow-up comment) as the solution.

Iniciar sesión para comentar.

sneha
sneha el 18 de Abr. de 2012
hi....experts.....sneha here..........very amazing detection of objects.....i also worked on license plate detection of car...can u give me this type of code for detecting car license plate...please.........m waitng for reply............
Francesco Violo
Francesco Violo el 28 de Jul. de 2015
Hello, I am Francesco , for a university work let me know if you can extract from a video the license plates of cars , and then get a file of alphanumeric text . Thank you, you can contact me also on francescoviolo8@yahoo.it

Categorías

Preguntada:

el 21 de Dic. de 2011

Comentada:

el 12 de Abr. de 2017

Community Treasure Hunt

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

Start Hunting!

Translated by