Log video and pose to USB-stick.
Logs attitude and position to a csv and images to jpeg files (only for linux).
Example for airframe file
Add to your firmware section: This example contains all possible configuration options, not all of them are mandatory!
<module name="video_usb_logger">
b'<define name="VIDEO_USB_LOGGER_PATH" />\n '
b'<define name="VIDEO_USB_LOGGER_CAMERA" value="front_camera|bottom_camera" />\n '
b'<define name="VIDEO_USB_LOGGER_WIDTH" value="272" />\n '
b'<define name="VIDEO_USB_LOGGER_HEIGHTH" value="272" />\n '
b'<define name="VIDEO_USB_LOGGER_JPEG_WITH_EXIF_HEADER" value="TRUE" />\n '
b'<define name="VIDEO_USB_LOGGER_FPS" value="0" />\n '
</module>
Module configuration options
Define Options
- name:
VIDEO_USB_LOGGER_PATH
value: None
Description: Logging path
- name:
VIDEO_USB_LOGGER_CAMERA
value: front_camera|bottom_camera
Description: Video device to log
- name:
VIDEO_USB_LOGGER_WIDTH
value: 272
Description: Size of the to log images
- name:
VIDEO_USB_LOGGER_HEIGHTH
value: 272
Description: Size of the to log images
- name:
VIDEO_USB_LOGGER_JPEG_WITH_EXIF_HEADER
value: TRUE
Description: Whether to store data in the exif header or not
- name:
VIDEO_USB_LOGGER_FPS
value: 0
Description: The (maximum) frequency to run the calculations at. If zero, it will max out at the camera frame rate
Module functions
Periodic Functions
These functions are called periodically at the specified frequency from the module periodic loop.
Files
Header Files
The following headers are automatically included in modules.h
Source Files
Raw video_usb_logger.xml file:
<!DOCTYPE module SYSTEM "module.dtd">
<module name="video_usb_logger" dir="computer_vision">
<doc>
<description>
Log video and pose to USB-stick.
Logs attitude and position to a csv and images to jpeg files (only for linux).
</description>
<define name="VIDEO_USB_LOGGER_PATH" description="Logging path"/>
<define name="VIDEO_USB_LOGGER_CAMERA" value="front_camera|bottom_camera" description="Video device to log"/>
<define name="VIDEO_USB_LOGGER_WIDTH" value="272" description="Size of the to log images"/>
<define name="VIDEO_USB_LOGGER_HEIGHTH" value="272" description="Size of the to log images"/>
<define name="VIDEO_USB_LOGGER_JPEG_WITH_EXIF_HEADER" value="TRUE" description="Whether to store data in the exif header or not"/>
<define name="VIDEO_USB_LOGGER_FPS" value="0" description="The (maximum) frequency to run the calculations at. If zero, it will max out at the camera frame rate"/>
</doc>
<dep>
<depends>video_thread,pose_history</depends>
</dep>
<header>
<file name="video_usb_logger.h"/>
</header>
<periodic fun="video_usb_logger_periodic()" start="video_usb_logger_start()" stop="video_usb_logger_stop()" autorun="TRUE"/>
<makefile target="ap">
<file name="video_usb_logger.c"/>
</makefile>
</module>