How to extract/obtain motion vectors from .mp4 videos in MATLAB?

18 visualizaciones (últimos 30 días)
Tintumon
Tintumon el 23 de Feb. de 2018
Editada: Tintumon el 6 de Jul. de 2020
Hello, Is there any code (or inbuilt function) for extracting motion vectors (frame-to-frame) from MPEG-4 (H.264 compressed videos)? For my work, the input video is a scene of people moving through streets/malls.
  5 comentarios
Shahbaz Khan
Shahbaz Khan el 6 de Jul. de 2020
i have downloaded ffmpeg, how to use it to extract motion vectors? can you please guide. the file have several libraries and codes
Tintumon
Tintumon el 6 de Jul. de 2020
Editada: Tintumon el 6 de Jul. de 2020
Note: The answer is out of scope of this thread.
But, I will explain it.
1) Build the example programs (located in "doc\examples") by using the following command (run the command while you are in the source FFmpeg directory):
make examples
2) Execute the "extract_mvs" binary file, generated as a result of Step 1, to obtain the motion vectors from an h.264 compressed video (navigate to "doc\examples" or provide the absolute path while executing). Write the motion vectors to a text-file (outputFile.txt).
.\extract_mvs inputVideoName.extension > outputFile.txt
This ".txt" file can be read in MATLAB and used for further processing!

Iniciar sesión para comentar.

Respuestas (2)

Tintumon
Tintumon el 24 de Feb. de 2018
Thanks again for a detailed answer.
In the case of "VideoReader": 1) What if I had multiple codecs? I guess the routine chooses the default done. Can we manually change the default setting? 2) Also, Will it produce motion vectors as one of its output?

Jishnu P
Jishnu P el 28 de Abr. de 2018
I am not sure about MATLAB. But you can have a look at MV-Tractus.

Community Treasure Hunt

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

Start Hunting!

Translated by