Plot on top of a Live Image Preview

Illustration
Allison Liu - 2022-01-11T11:23:20+00:00
Question: Plot on top of a Live Image Preview

Hello,   I am trying to plot a few points on top of a live image preview, but my code returns an error of "Line cannot be a child of Image." Does anyone know of a way to plot on top of a Live Image, similar to the imageMarker function?   vidRes1 = handles.vid1.VideoResolution; imWidth1 = vidRes1(1); imHeight1 = vidRes1(2); nBands1 = handles.vid1.NumberOfBands; hImage = image(zeros(imHeight1, imWidth1, nBands1), 'Parent', handles.axes1); preview(handles.vid1, hImage); plot(hImage, 250, 300, 'bo'); Thanks,

Expert Answer

Profile picture of Kshitij Singh Kshitij Singh answered . 2025-11-20

This approach might work for you:

 

vid = videoinput('winvideo', 1);

vidInfo = imaqhwinfo(vid);

vidRes = vid.VideoResolution;
imWidth = vidRes(1);
imHeight = vidRes(2);
numBands = vid.NumberOfBands;

hFig = figure;
hAxes = axes(hFig);
hImage = image(hAxes, zeros(imHeight, imWidth, numBands, vidInfo.NativeDataType));

preview(vid, hImage);

hLine = line(hAxes, round([0.25*imWidth, 0.75*imWidth]),...
    round([0.5*imHeight, 0.5*imHeight]),...
    'Marker', 'o',...
    'LineStyle', 'none');


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!