How can I use imfindcircles in real time video?
9 次查看(过去 30 天)
显示 更早的评论
I have written below code which gives photo from camera and mark circles on them
vid = videoinput('winvideo', 1, 'RGB24_640x480');
set(vid, 'FramesPerTrigger', Inf);
set(vid, 'ReturnedColorspace', 'rgb')
vid.FrameGrabInterval = 5;
data = getsnapshot(vid);
[center,radii] = imfindcircles(data,[20 60],'ObjectPolarity','dark','Sensitivity',0.9,'Method','twostage');
imshow(data)
h=viscircles(center,radii);
how can I make this working in real time?
0 个评论
回答(3 个)
Image Analyst
2013-3-13
You may not be able to. How long does it take to call imfindcircles()? Wrap it in tic and toc to find out. It may take longer than 1/30th of a second or whatever your definition of "real time" is.
0 个评论
kurczak
2013-3-14
1 个评论
Image Analyst
2013-3-14
Well it was just a suggestion. You're free to work on a faster method. And no, I don't have one ready to hand over to you, or even know of one. Plus I don't use Simulink.
Spandan Tiwari
2013-3-20
Two ways to get IMFINDCIRCLES run faster in your code are:
1) Sending in the image at a lower resolution.
2) Use smaller radius range, if possible.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Acquisition Support Packages for Hardware Adaptors (Generic Video Interface) 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!