I'm having some difficulty subtracting an averaged image from a series of images from which the average was obtained. The images have been obtained from a MP4 video file. This is what i have done: Ven23 = VideoReader('MyVideo23.MP4'); %Read in the video file Ven23frame1 = read(Ven23,1); % Read in the first frame of the video sumImage23 = im2double(Ven23frame1); %Double the accuracy of the frame for i=2:30 Ven23Frames= read(Ven23,i); sumImage23 = sumImage23 + im2double(Ven23Frames); end avgVen23= imshow(sumImage23/30); This all seems to work; I get an image which looks like the average. However, whenever I try to subtract this average image from any particular frame from the video I get this error: Undefined operator '-' for input arguments of type 'matlab.graphics.primitive.Image'. Then I tried to save the average image and frames as bmp files, load them back in and subtract them. Doing this just returns a black screen. I also tried doubling the accuracy of the reloaded images to no avail. I'm obviously doing something wrong and I would be grateful if anyone could point it out to me. Thanks.
John Michell answered .
2025-11-20