Как получить метку времени каждого кадра видео GoPro в MATLAB?

Я пытаюсь выполнить постобработку видео из GoPro с использованием MATLAB 2015a. Мне нужно получить временную метку из каждого кадра видео, чтобы я мог использовать ее для сравнения с другим набором данных, который также использует временные метки. Таким образом, две метки времени должны совпадать с точностью до секунды.

Я проверил документы MATLAB, и у класса VideoReader есть свойство с именем "CurrentTime", но оно дает мне только время кадра относительно первого кадра, которое устанавливается равным "0" секундам, а не фактическое время и дата съемки видео.

Я также видел людей, спрашивающих на разных форумах о том, как добавлять метки времени в видео GoPro, и даже на Python есть библиотеки, которые позволяют вам это делать, поэтому я предполагаю, что у видео GoPro нет меток времени в информации о файлах.

Разве в видеоформатах не должно быть нескольких бит с датой и временем записи видео, особенно таких, как MPEG, AVI и MOV? Если так, то почему нет доступа к ним из MATLAB?

Я ценю любую возможную помощь. Ура!

1 ответ

Решение

Вы можете прочитать это из данных EXIF, хранящихся в изображении. Это единственный способ, который я нашел, чтобы точно получить время.

http://au.mathworks.com/help/matlab/ref/exifread.html

Я использую поле: "EXIF DateTimeOriginal", хотя есть несколько других полей даты / времени EXIF

Вы также можете получить время, используя последний измененный заголовок с HTTP-сервера GoPro для этого изображения.

Другие вопросы по тегам