How can I detect objects and distinguish them from each other?

3 Ansichten (letzte 30 Tage)
roudabe
roudabe am 14 Dez. 2013
Bearbeitet: roudabe am 22 Dez. 2013
They can be in different colors, or maybe it's better to distinguish them bye edge detection, or some thing else which I need you help me to use a suitable method. Purpose is to detect objects and find their movement if exist and estimate their direction and velocity. Thank you

Akzeptierte Antwort

Image Analyst
Image Analyst am 14 Dez. 2013
Please try out my image segmentation demos and color segmentation demos: http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862
To do object tracking across different images or video frames, you can use the Computer Vision System Toolbox
  4 Kommentare
roudabe
roudabe am 21 Dez. 2013
Bearbeitet: roudabe am 22 Dez. 2013
Hi, I used regionprops with properties : PixelList to have a set of region pixels, but now I need the pixel list of region for every frame!!! What should I do in for loop?
xyloObj = VideoReader('vid.avi');
nFrames = xyloObj.NumberOfFrames;
vidHeight = xyloObj.Height;
vidWidth = xyloObj.Width;
mov(1:nFrames) = ...
struct('cdata', zeros(vidHeight, vidWidth, 3, 'uint8'),...
'colormap', []);
for k = 1 : nFrames
mov(k).cdata = read(xyloObj, k);
s = regionprops(mov(k).cdata,'PixelList');
region=s.PixelList;
imshow(mov(k).cdata)
end
Image Analyst
Image Analyst am 21 Dez. 2013
s is structure array, you need to index it, like s(k).PixelList. A single frame might have 2 or 10 different regions so you need an index. But then after you (attempt to) get it, you aren't doing anything with it.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by