Image capture using webcam

5 views (last 30 days)
Prateek
Prateek on 16 Apr 2011
Edited: Walter Roberson on 16 May 2020
I am using matlab for capturing image using a webcam(company-Labtec) whenever i get a snapshot the image appears Red.How should i overcome this problem?
Also how can I increase the shuter exposore time of the webcam?
OS-Windows XP
  3 Comments
Mohan Kant
Mohan Kant on 12 Mar 2017
the same problem with me please solve that problem
Chaitanya Panse
Chaitanya Panse on 27 May 2018
Edited: Chaitanya Panse on 27 May 2018
The problem with my GUI is that whenever i connect an external webcam and run in GUI the axis becomes very small that it is hardly seen. How do i overcome this problem? Please help.

Sign in to comment.

Accepted Answer

David Tarkowski
David Tarkowski on 20 Apr 2011
I'm going to guess that the problem is the color space that your camera returns data in is not RGB. This is common for a lot of webcams. The commands commonly used to display images such as image or imshow expect RGB data. If you pass in YCbCr (or YUV) data, the result is an image that looks vaguely correct but has a pink and green hue to it.
There are a number of ways to work around this, but in your case, I suspect that the easiest will be to change the ReturnedColorSpace property of the videoinput object:
vid = videoinput('winvideo', 1);
set(vid, 'ReturnedColorSpace', 'RGB');
img = getsnapshot(vid);
imshow(img)
  9 Comments
Image Analyst
Image Analyst on 1 Aug 2017
Try this:
>> ver
>> which getsnapshot
What does it say? You probably don't have the Image Acquisition Toolbox installed.
Ritika
Ritika on 3 Feb 2018
How to save the snapshots during recording...can u Please help me for this

Sign in to comment.

More Answers (5)

Mark Jones
Mark Jones on 25 Apr 2011
Edited: John Kelly on 13 Nov 2013
Alternatively, it may be that your camera needs to warm up. To allow for this, try using manual triggering and GETSNAPSHOT.

Ian
Ian on 7 Jul 2014
I got this to work, but is there a way to then read that image? Like to call it back so matlab can analyze it?
  6 Comments
Ian
Ian on 10 Jul 2014
Ahhh thank you very much! I have gotten the code to work now.
Antonio Meza
Antonio Meza on 5 Nov 2015
Thank you!! it works. Finally, i can finish my project. Greetengs from Mexico

Sign in to comment.


finalyear project
finalyear project on 21 Oct 2016
Tried to take an image using webcam by following code
vid = videoinput('winvideo', 3);
set(vid, 'ReturnedColorSpace', 'RGB');
img = getsnapshot(vid);
imshow(img)
but still got black image.Can anybody please suggest something?
  1 Comment
Syed Aameer
Syed Aameer on 1 Feb 2017
attach this code above to to your code axes(handles.axes1);
hImage=image(zeros(80,120,3),'Parent',handles.axes1); preview(vid,hImage);

Sign in to comment.


mohamed hushan
mohamed hushan on 5 Oct 2017
Edited: Walter Roberson on 16 May 2020
vid = videoinput('winvideo', 1);
set(vid, 'ReturnedColorSpace', 'RGB');
img = getsnapshot(vid); imshow(img)
after that how to save the snap images into folder?

Shrey Garg
Shrey Garg on 16 May 2020
webcam not working in matlab
it opensup logitech webcam nut it doesnot works and displays message that application already opened

Community Treasure Hunt

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

Start Hunting!