How to find the optical flow of the corner point of a red box in a video?

1 view (last 30 days)
I extracted all the frames of the video.I have to find the optical flow of the left corner of the redbox over subsequent frames.
I have created a red mask for the red box and found the corners using the Harrisfeatures, how do I iterate over all the frames and store the corner points of the red box ina array?
for n=1:150
pic{n}= imread(sprintf('image%03d.png',n));
% points = detectHarrisFeatures(rgb2gray(pic{1}));
red_channel = pic{n}(:, :, 1);
green_channel =pic{n}(:, :, 2);
blue_channel = pic{n}(:, :, 3);
redMask = red_channel > 200 & green_channel < 200 & blue_channel < 200;
points = detectHarrisFeatures(redMask);
end
pointImage = insertMarker(pic{150=}, points.Location, '+', 'Color', 'blue');

Answers (1)

darova
darova on 24 Mar 2020
What about find()?
[y,x] = find(redMask,1,'first')

Community Treasure Hunt

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

Start Hunting!