当点击按钮预览时,下面的代码应该显示名为axes1的图形中的网络摄像头预览。它必须实时显示网络摄像头图像。
% --- Executes on button press in Preview.
function Preview_Callback(hObject, eventdata, handles)
% hObject handle to Preview (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
img = snapshot(cam);
imshow(img,'Parent',handles.axes1);
disp(clock);
pause(0.5);
出现错误是: 评估UIControl回调时出错
未定义的功能或变量' cam'。
Main> Preview_Callback出错(第161行) img = snapshot(cam);
gui_mainfcn出错(第95行) feval(varargin {:});
主要错误(第43行) gui_mainfcn(gui_State,varargin {:});
@(hObject,eventdata)Main(' Preview_Callback',hObject,eventdata,guidata(hObject))
评估UIControl回调时出错
如果我在cam=webcam;
之前放置img = snapshot(cam);
错误状态错误使用Main> Preview_Callback(第161行)
已经存在与网络摄像头的有效连接,即集成网络摄像头。您无法创建与同一网络摄像头的其他连接。
gui_mainfcn出错(第95行) feval(varargin {:});
主要错误(第43行) gui_mainfcn(gui_State,varargin {:});
@(hObject,eventdata)Main(' Preview_Callback',hObject,eventdata,guidata(hObject))
评估UIControl回调时出错
很明显,初始化位于错误的位置。应该在哪里进行网络连接的初始化/状态连接?
答案 0 :(得分:0)
Intialise counter as follows:
handles.PressOne=0;
if handles.PressOne==0
Connect to the camera (cam=webcam).
Update counter for handles.PressOne.
else
Capture the image (img=snapshot(cam)) and disp the data.
end