How to Reduce the time of capturing image

Here is my code for capturing image
vid=videoinput('winvideo',1);
vid.Framespertrigger=1;
start(vid)
im=getdata(vid);
imagename=('C:\Program Files\MATLAB\R2013a\bin\test.tif');
imwrite(im,imagename);
stop(vid);
This code is taking around 2 seconds to capture one image,but the camera frame rate specifies it is 15 frames/sec,Is it possible to capture 15 images per second or even close to it? If so what modification I should make in this code, Please help me..Thank you

 채택된 답변

Image Analyst
Image Analyst 2014년 11월 8일

0 개 추천

Use "run and time" to see where the time is being spent. I bet most of it is in calling videoinput() - that takes a long time. imwrite() also takes a long time. To speed up you can use a ramdisk or use solid state drives instead of hard drives.

추가 답변 (1개)

Anchit Dhar
Anchit Dhar 2014년 11월 13일
편집: Anchit Dhar 2014년 11월 13일

0 개 추천

Starting/Initializing the camera takes up some time. Starting/Stopping for each frame can slow down your application considerably. In order to capture frames at a higher frame rate, you can start the camera once and then use 'manual triggering' to grab the frames in a loop. The following example describes this method.
As an alternate solution, you can use the WEBCAM interface (introduced in R2014a).

카테고리

도움말 센터File Exchange에서 MATLAB Support Package for IP Cameras에 대해 자세히 알아보기

질문:

2014년 11월 7일

편집:

2014년 11월 13일

Community Treasure Hunt

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

Start Hunting!

Translated by