Optical Flow HS between two Images
9 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi, I'm working with the Optical Flow HS method and I would like to know how I can set the "Compute optical flow between" parameter to 'Two images'.
In the description, it says that I have to change it into 'Two images' to compute the optical Flow between images instead of video frames.
% Compute optical flow
flow = estimateFlow(opticFlow, frameGray);
This is the standard input, what exactly I have to digit to change it?
Thank you very much
0 comentarios
Respuestas (1)
Hrishikesh Borate
el 15 de Jul. de 2021
Hi,
The following code demonstrates the computation of optical flow between two images.
vidReader = VideoReader('visiontraffic.avi','CurrentTime',11);
frame1 = readFrame(vidReader);
% Extract 11th frame
for i=1:10
frame2 = readFrame(vidReader);
end
frame = {frame1, frame2};
h = figure;
movegui(h);
hViewPanel = uipanel(h,'Position',[0 0 1 1],'Title','Plot of Optical Flow Vectors');
hPlot = axes(hViewPanel);
opticFlow = opticalFlowHS;
for i=1:2
frameRGB = frame{i};
frameGray = im2gray(frameRGB);
flow = estimateFlow(opticFlow,frameGray);
imshow(frameRGB)
hold on
plot(flow,'DecimationFactor',[5 5],'ScaleFactor',60,'Parent',hPlot);
hold off
pause(1)
end
The flow variable stores the optical flow between the two images (frame1 and frame2).
2 comentarios
Vivek Raj
el 5 de Nov. de 2023
Hello everyone, how i can detect current position of a ball (if i want to track a ball in image) using Horn-Schunk method?
Image Analyst
el 5 de Nov. de 2023
I'm guessing you'd threshold the flow image and then call regionprops and ask for the centroid. Attach a snippet of your video in a new question, and your code, if you still have problems.
Ver también
Categorías
Más información sobre Tracking and Motion Estimation en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!