Webcam preview in GUI not showing up
Show older comments
Using MatlabR2019a. Trying to get a webcam preview to show up in a GUI, but just getting a black box in the resulting axes - see image below

Here is the code:
function align_GUI_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to align_GUI (see VARARGIN)
% Choose default command line output for align_GUI
handles.output = hObject;
cam=webcam(2)
imWidth=640;
imHeight=480;
axes(handles.axes1);
hImage=image(zeros(imHeight,imWidth,3),'Parent',handles.axes1);
preview(cam,hImage)
Webcam preview when just using the command window works fine using:
cam=webcam(2);
preview(cam)
3 Comments
Geoff Hayes
on 13 Jun 2019
Jesse - try saving the cam objec to the handles structure. From your code, it looks like cam will be a local variable so when the OpeningFcn completes, the cam object may be destroyed. (I say may since I am only guessing...)
function align_GUI_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to align_GUI (see VARARGIN)
% Choose default command line output for align_GUI
handles.output = hObject;
handles.cam=webcam(2)
imWidth=640;
imHeight=480;
axes(handles.axes1);
handles.hImage=image(zeros(imHeight,imWidth,3),'Parent',handles.axes1);
preview(handles.cam, handles.hImage)
guidata(hObject, handles)
Jesse McAlister
on 13 Jun 2019
May Mon Phyoo
on 31 Aug 2020
Thank u so much.
i'm also face with that situation. It's helped.
Accepted Answer
More Answers (0)
Categories
Find more on National Instruments Frame Grabbers in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!