Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
movie_publisher::ExifBaseMetadataExtractor Class Reference

Common base for all metadata extractors that utilize EXIF data. More...

#include <ExifBaseMetadataExtractor.h>

Inheritance diagram for movie_publisher::ExifBaseMetadataExtractor:
Inheritance graph
[legend]

Public Member Functions

 ExifBaseMetadataExtractor (const cras::LogHelperPtr &log, const std::weak_ptr< MetadataManager > &manager, size_t width, size_t height)
 Constructor. More...
 
cras::optional< geometry_msgs::Vector3 > getAcceleration () override
 
cras::optional< compass_msgs::Azimuth > getAzimuth () override
 
cras::optional< std::string > getCameraMake () override
 
cras::optional< std::string > getCameraModel () override
 
cras::optional< std::string > getCameraSerialNumber () override
 
cras::optional< ros::TimegetCreationTime () override
 
cras::optional< double > getCropFactor () override
 
cras::optional< double > getFocalLength35MM () override
 
cras::optional< double > getFocalLengthMM () override
 
std::pair< cras::optional< sensor_msgs::NavSatFix >, cras::optional< gps_common::GPSFix > > getGNSSPosition () override
 
cras::optional< std::string > getLensMake () override
 
cras::optional< std::string > getLensModel () override
 
cras::optional< std::pair< double, double > > getRollPitch () override
 
cras::optional< intgetRotation () override
 
cras::optional< std::pair< double, double > > getSensorSizeMM () override
 
 ~ExifBaseMetadataExtractor () override
 
- Public Member Functions inherited from movie_publisher::MetadataExtractor
virtual cras::optional< geometry_msgs::Vector3 > getAngularVelocity ()
 
virtual cras::optional< std::string > getCameraGeneralName ()
 
virtual cras::optional< sensor_msgs::CameraInfo > getCameraInfo ()
 
virtual cras::optional< std::string > getCameraUniqueName ()
 
virtual cras::optional< DistortionDatagetDistortion ()
 
virtual cras::optional< vision_msgs::Detection2DArray > getFaces ()
 
virtual cras::optional< double > getFocalLengthPx ()
 
virtual cras::optional< sensor_msgs::Imu > getImu ()
 
virtual cras::optional< IntrinsicMatrixgetIntrinsicMatrix ()
 
virtual cras::optional< sensor_msgs::MagneticField > getMagneticField ()
 
virtual std::string getName () const =0
 Return the name of the extractor. More...
 
virtual cras::optional< geometry_msgs::Transform > getOpticalFrameTF ()
 
virtual int getPriority () const =0
 Return the priority of the extractor (for ordering in MetadataManager). More...
 
virtual cras::optional< geometry_msgs::Transform > getZeroRollPitchTF ()
 
 MetadataExtractor (const cras::LogHelperPtr &log)
 Constructor. More...
 
virtual void processPacket (const AVPacket *packet)
 Optional processing of libav packets as they are read from the movie file. More...
 
virtual ~MetadataExtractor ()
 
- Public Member Functions inherited from cras::HasLogger
::cras::LogHelperConstPtr getCrasLogger () const
 
 HasLogger (const ::cras::LogHelperPtr &log)
 
void setCrasLogger (const ::cras::LogHelperPtr &log)
 

Protected Member Functions

compass_conversions::CompassConvertergetCompassConverter ()
 Get a helper for converting various azimuth representations and references. More...
 
virtual cras::optional< ExifData< ExifSRational > > getExifAcceleration (size_t n)
 
virtual cras::optional< ExifData< ExifAscii > > getExifBodySerialNumber ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifDateTimeOriginal ()
 
virtual cras::optional< ExifData< ExifRational > > getExifFocalLength ()
 
virtual cras::optional< ExifData< ExifShort > > getExifFocalLength35MM ()
 
virtual cras::optional< ExifData< ExifShort > > getExifFocalPlaneResUnit ()
 
virtual cras::optional< ExifData< ExifRational > > getExifFocalPlaneXRes ()
 
virtual cras::optional< ExifData< ExifRational > > getExifFocalPlaneYRes ()
 
virtual cras::optional< ExifData< ExifRational > > getExifGpsAlt ()
 
virtual cras::optional< ExifData< ExifByte > > getExifGpsAltRef ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifGpsDateStamp ()
 
virtual cras::optional< ExifData< ExifShort > > getExifGpsDifferential ()
 
virtual cras::optional< ExifData< ExifRational > > getExifGpsDOP ()
 
virtual cras::optional< ExifData< ExifRational > > getExifGpsHPositioningError ()
 
virtual cras::optional< ExifData< ExifRational > > getExifGpsImgDirection ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifGpsImgDirectionRef ()
 
virtual cras::optional< ExifData< ExifRational > > getExifGpsLat (size_t n)
 
virtual cras::optional< ExifData< ExifAscii > > getExifGpsLatRef ()
 
virtual cras::optional< ExifData< ExifRational > > getExifGpsLon (size_t n)
 
virtual cras::optional< ExifData< ExifAscii > > getExifGpsLonRef ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifGpsMeasureMode ()
 
virtual cras::optional< ExifData< ExifRational > > getExifGpsSpeed ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifGpsSpeedRef ()
 
virtual cras::optional< ExifData< ExifRational > > getExifGpsTimeStamp (size_t n)
 
virtual cras::optional< ExifData< ExifRational > > getExifGpsTrack ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifGpsTrackRef ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifLensMake ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifLensModel ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifLensSerialNumber ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifMake ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifModel ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifOffsetTimeOriginal ()
 
virtual cras::optional< ExifData< ExifShort > > getExifOrientation ()
 
virtual cras::optional< ExifData< ExifSRational > > getExifPitchAngle ()
 
virtual cras::optional< ExifData< ExifShort > > getExifResUnit ()
 
virtual cras::optional< ExifData< ExifSRational > > getExifRollAngle ()
 
virtual cras::optional< ExifData< ExifAscii > > getExifSubSecTimeOriginal ()
 
virtual cras::optional< double > getGPSAltitude ()
 Construct altitude from GPSAltitude and GPSAltitudeRef. More...
 
virtual cras::optional< double > getGPSImgDirection ()
 GPS image direction from GPSImgDirection. More...
 
virtual cras::optional< std::string > getGPSImgDirectionRef ()
 Get the image direction reference. More...
 
virtual cras::optional< double > getGPSLatitude ()
 Construct latitude from GPSLatitude and GPSLatitudeRef. More...
 
virtual cras::optional< double > getGPSLongitude ()
 Construct latitude from GPSLongitude and GPSLongitudeRef. More...
 
virtual cras::optional< double > getGPSSpeed ()
 Construct ground speed from GPSSpeed and GPSSpeedRef. More...
 
virtual cras::optional< ros::TimegetGPSTime ()
 Get the GPS time corresponding to the current frame. More...
 
virtual cras::optional< double > getGPSTrack ()
 Construct GPS track (heading) from GPSTrack and GPSTrackRef. More...
 

Protected Attributes

size_t height
 Height of the movie [px]. More...
 
size_t width
 Width of the movie [px]. More...
 
- Protected Attributes inherited from cras::HasLogger
::cras::LogHelperPtr log
 

Private Attributes

std::unique_ptr< ExifBaseMetadataExtractorPrivate > data
 PIMPL. More...
 

Additional Inherited Members

- Public Types inherited from movie_publisher::MetadataExtractor
using ConstPtr = std::shared_ptr< const MetadataExtractor >
 
using Ptr = std::shared_ptr< MetadataExtractor >
 

Detailed Description

Common base for all metadata extractors that utilize EXIF data.

This base class contains implementations of the standard MetadataExtractor interface by combining various EXIF fields. Descendant classes are only responsible for reading the EXIF tags.

Definition at line 55 of file ExifBaseMetadataExtractor.h.

Constructor & Destructor Documentation

◆ ExifBaseMetadataExtractor()

movie_publisher::ExifBaseMetadataExtractor::ExifBaseMetadataExtractor ( const cras::LogHelperPtr log,
const std::weak_ptr< MetadataManager > &  manager,
size_t  width,
size_t  height 
)

Constructor.

Parameters
[in]logLogger.
[in]managerMetadata manager.
[in]widthWidth of the movie [px].
[in]heightHeight of the movie [px].

◆ ~ExifBaseMetadataExtractor()

movie_publisher::ExifBaseMetadataExtractor::~ExifBaseMetadataExtractor ( )
override

Member Function Documentation

◆ getAcceleration()

cras::optional<geometry_msgs::Vector3> movie_publisher::ExifBaseMetadataExtractor::getAcceleration ( )
overridevirtual
Returns
Acceleration vector acting on the camera when capturing the frame (including gravity) [m/s^2].

Reimplemented from movie_publisher::MetadataExtractor.

◆ getAzimuth()

cras::optional<compass_msgs::Azimuth> movie_publisher::ExifBaseMetadataExtractor::getAzimuth ( )
overridevirtual
Returns
Azimuth describing global camera heading when capturing the frame. Timestamp is zero.

Reimplemented from movie_publisher::MetadataExtractor.

◆ getCameraMake()

cras::optional<std::string> movie_publisher::ExifBaseMetadataExtractor::getCameraMake ( )
overridevirtual
Returns
Camera manufacturer.

Reimplemented from movie_publisher::MetadataExtractor.

◆ getCameraModel()

cras::optional<std::string> movie_publisher::ExifBaseMetadataExtractor::getCameraModel ( )
overridevirtual
Returns
The camera model name (just the model, without manufacturer).

Reimplemented from movie_publisher::MetadataExtractor.

◆ getCameraSerialNumber()

cras::optional<std::string> movie_publisher::ExifBaseMetadataExtractor::getCameraSerialNumber ( )
overridevirtual
Returns
The camera's serial number.

Reimplemented from movie_publisher::MetadataExtractor.

◆ getCompassConverter()

compass_conversions::CompassConverter& movie_publisher::ExifBaseMetadataExtractor::getCompassConverter ( )
protected

Get a helper for converting various azimuth representations and references.

Only call this method if you actually need the converter. Its construction is not free. It will be created lazily.

Returns
The compass converter.

◆ getCreationTime()

cras::optional<ros::Time> movie_publisher::ExifBaseMetadataExtractor::getCreationTime ( )
overridevirtual
Returns
The global time corresponding to the first frame of the movie stream.

Reimplemented from movie_publisher::MetadataExtractor.

◆ getCropFactor()

cras::optional<double> movie_publisher::ExifBaseMetadataExtractor::getCropFactor ( )
overridevirtual
Returns
Crop factor of the camera (i.e. how many times is the sensing area smaller than 36x24 mm).

Reimplemented from movie_publisher::MetadataExtractor.

◆ getExifAcceleration()

virtual cras::optional<ExifData<ExifSRational> > movie_publisher::ExifBaseMetadataExtractor::getExifAcceleration ( size_t  n)
inlineprotectedvirtual
Returns
Acceleration read from makernotes (3 signed rationals, in geometrical frame of camera, m/s^2).

Definition at line 281 of file ExifBaseMetadataExtractor.h.

◆ getExifBodySerialNumber()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifBodySerialNumber ( )
inlineprotectedvirtual
Returns
ExifIFD.BodySerialNumber (0xa431)

Definition at line 161 of file ExifBaseMetadataExtractor.h.

◆ getExifDateTimeOriginal()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifDateTimeOriginal ( )
inlineprotectedvirtual
Returns
ExifIFD.DateTimeOriginal (0x9003)

Definition at line 169 of file ExifBaseMetadataExtractor.h.

◆ getExifFocalLength()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifFocalLength ( )
inlineprotectedvirtual
Returns
ExifIFD.FocalLength (0x920a)

Definition at line 205 of file ExifBaseMetadataExtractor.h.

◆ getExifFocalLength35MM()

virtual cras::optional<ExifData<ExifShort> > movie_publisher::ExifBaseMetadataExtractor::getExifFocalLength35MM ( )
inlineprotectedvirtual
Returns
ExifIFD.FocalLengthIn35mmFormat (0xa405)

Definition at line 201 of file ExifBaseMetadataExtractor.h.

◆ getExifFocalPlaneResUnit()

virtual cras::optional<ExifData<ExifShort> > movie_publisher::ExifBaseMetadataExtractor::getExifFocalPlaneResUnit ( )
inlineprotectedvirtual
Returns
ExifIFD.FocalPlaneResolutionUnit (0xa210)

Definition at line 193 of file ExifBaseMetadataExtractor.h.

◆ getExifFocalPlaneXRes()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifFocalPlaneXRes ( )
inlineprotectedvirtual
Returns
ExifIFD.FocalPlaneXResolution (0xa20e)

Definition at line 185 of file ExifBaseMetadataExtractor.h.

◆ getExifFocalPlaneYRes()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifFocalPlaneYRes ( )
inlineprotectedvirtual
Returns
ExifIFD.FocalPlaneYResolution (0xa20f)

Definition at line 189 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsAlt()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsAlt ( )
inlineprotectedvirtual
Returns
GPS.GPSAltitude (0x0006)

Definition at line 229 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsAltRef()

virtual cras::optional<ExifData<ExifByte> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsAltRef ( )
inlineprotectedvirtual
Returns
GPS.GPSAltitudeRef (0x0005)

Definition at line 225 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsDateStamp()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsDateStamp ( )
inlineprotectedvirtual
Returns
GPS.GPSDateStamp (0x001d)

Definition at line 261 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsDifferential()

virtual cras::optional<ExifData<ExifShort> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsDifferential ( )
inlineprotectedvirtual
Returns
GPS.GPSDifferential (0x001e)

Definition at line 265 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsDOP()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsDOP ( )
inlineprotectedvirtual
Returns
GPS.GPSDOP (0x0006)

Definition at line 237 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsHPositioningError()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsHPositioningError ( )
inlineprotectedvirtual
Returns
GPS.GPSHPositioningError (0x001f)

Definition at line 269 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsImgDirection()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsImgDirection ( )
inlineprotectedvirtual
Returns
GPS.GPSImgDirection (0x0011)

Definition at line 277 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsImgDirectionRef()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsImgDirectionRef ( )
inlineprotectedvirtual
Returns
GPS.GPSImgDirectionRef (0x0010)

Definition at line 273 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsLat()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsLat ( size_t  n)
inlineprotectedvirtual
Returns
GPS.GPSLatitude (0x0002)

Definition at line 213 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsLatRef()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsLatRef ( )
inlineprotectedvirtual
Returns
GPS.GPSLatitudeRef (0x0001)

Definition at line 209 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsLon()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsLon ( size_t  n)
inlineprotectedvirtual
Returns
GPS.GPSLongitude (0x0004)

Definition at line 221 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsLonRef()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsLonRef ( )
inlineprotectedvirtual
Returns
GPS.GPSLongitudeRef (0x0003)

Definition at line 217 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsMeasureMode()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsMeasureMode ( )
inlineprotectedvirtual
Returns
GPS.GPSMeasureMode (0x000a)

Definition at line 233 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsSpeed()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsSpeed ( )
inlineprotectedvirtual
Returns
GPS.GPSSpeed (0x000d)

Definition at line 245 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsSpeedRef()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsSpeedRef ( )
inlineprotectedvirtual
Returns
GPS.GPSSpeedRef (0x000c)

Definition at line 241 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsTimeStamp()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsTimeStamp ( size_t  n)
inlineprotectedvirtual
Returns
GPS.GPSTimeStamp (0x0007)

Definition at line 257 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsTrack()

virtual cras::optional<ExifData<ExifRational> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsTrack ( )
inlineprotectedvirtual
Returns
GPS.GPSTrack (0x000f)

Definition at line 253 of file ExifBaseMetadataExtractor.h.

◆ getExifGpsTrackRef()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifGpsTrackRef ( )
inlineprotectedvirtual
Returns
GPS.GPSTrackRef (0x000e)

Definition at line 249 of file ExifBaseMetadataExtractor.h.

◆ getExifLensMake()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifLensMake ( )
inlineprotectedvirtual
Returns
ExifIFD.LensMake (0xa433)

Definition at line 153 of file ExifBaseMetadataExtractor.h.

◆ getExifLensModel()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifLensModel ( )
inlineprotectedvirtual
Returns
ExifIFD.LensModel (0xa434)

Definition at line 157 of file ExifBaseMetadataExtractor.h.

◆ getExifLensSerialNumber()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifLensSerialNumber ( )
inlineprotectedvirtual
Returns
ExifIFD.LensSerialNumber (0xa435)

Definition at line 165 of file ExifBaseMetadataExtractor.h.

◆ getExifMake()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifMake ( )
inlineprotectedvirtual
Returns
IFD0.Make (0x010f)

Definition at line 145 of file ExifBaseMetadataExtractor.h.

◆ getExifModel()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifModel ( )
inlineprotectedvirtual
Returns
IFD0.Model (0x0110)

Definition at line 149 of file ExifBaseMetadataExtractor.h.

◆ getExifOffsetTimeOriginal()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifOffsetTimeOriginal ( )
inlineprotectedvirtual
Returns
ExifIFD.OffsetTimeOriginal (0x9011)

Definition at line 173 of file ExifBaseMetadataExtractor.h.

◆ getExifOrientation()

virtual cras::optional<ExifData<ExifShort> > movie_publisher::ExifBaseMetadataExtractor::getExifOrientation ( )
inlineprotectedvirtual
Returns
IFD0.Orientation (0x0112)

Definition at line 181 of file ExifBaseMetadataExtractor.h.

◆ getExifPitchAngle()

virtual cras::optional<ExifData<ExifSRational> > movie_publisher::ExifBaseMetadataExtractor::getExifPitchAngle ( )
inlineprotectedvirtual
Returns
Pitch angle [rad] read from makernotes.

Definition at line 289 of file ExifBaseMetadataExtractor.h.

◆ getExifResUnit()

virtual cras::optional<ExifData<ExifShort> > movie_publisher::ExifBaseMetadataExtractor::getExifResUnit ( )
inlineprotectedvirtual
Returns
IFD0.ResolutionUnit (0x0128)

Definition at line 197 of file ExifBaseMetadataExtractor.h.

◆ getExifRollAngle()

virtual cras::optional<ExifData<ExifSRational> > movie_publisher::ExifBaseMetadataExtractor::getExifRollAngle ( )
inlineprotectedvirtual
Returns
Roll angle [rad] read from makernotes.

Definition at line 285 of file ExifBaseMetadataExtractor.h.

◆ getExifSubSecTimeOriginal()

virtual cras::optional<ExifData<ExifAscii> > movie_publisher::ExifBaseMetadataExtractor::getExifSubSecTimeOriginal ( )
inlineprotectedvirtual
Returns
ExifIFD.SubsecTimeOriginal (0x9291)

Definition at line 177 of file ExifBaseMetadataExtractor.h.

◆ getFocalLength35MM()

cras::optional<double> movie_publisher::ExifBaseMetadataExtractor::getFocalLength35MM ( )
overridevirtual
Returns
Focal length recomputed to an equivalent 35 mm system.

Reimplemented from movie_publisher::MetadataExtractor.

◆ getFocalLengthMM()

cras::optional<double> movie_publisher::ExifBaseMetadataExtractor::getFocalLengthMM ( )
overridevirtual
Returns
The focal length in mm.

Reimplemented from movie_publisher::MetadataExtractor.

◆ getGNSSPosition()

std::pair<cras::optional<sensor_msgs::NavSatFix>, cras::optional<gps_common::GPSFix> > movie_publisher::ExifBaseMetadataExtractor::getGNSSPosition ( )
overridevirtual
Returns
GNSS position of the camera when capturing the frame. Timestamps are zero.

Reimplemented from movie_publisher::MetadataExtractor.

◆ getGPSAltitude()

virtual cras::optional<double> movie_publisher::ExifBaseMetadataExtractor::getGPSAltitude ( )
protectedvirtual

Construct altitude from GPSAltitude and GPSAltitudeRef.

Returns
Altitude [m].

◆ getGPSImgDirection()

virtual cras::optional<double> movie_publisher::ExifBaseMetadataExtractor::getGPSImgDirection ( )
protectedvirtual

GPS image direction from GPSImgDirection.

Returns
Direction [deg] (referenced to geographic North by default, or to magnetic North if getGPSImgDirectionRef() returns "M").

◆ getGPSImgDirectionRef()

virtual cras::optional<std::string> movie_publisher::ExifBaseMetadataExtractor::getGPSImgDirectionRef ( )
protectedvirtual

Get the image direction reference.

Returns
Image direction reference ("M" for magnetic North, otherwise geographic North).

◆ getGPSLatitude()

virtual cras::optional<double> movie_publisher::ExifBaseMetadataExtractor::getGPSLatitude ( )
protectedvirtual

Construct latitude from GPSLatitude and GPSLatitudeRef.

Returns
Latitude [deg].

◆ getGPSLongitude()

virtual cras::optional<double> movie_publisher::ExifBaseMetadataExtractor::getGPSLongitude ( )
protectedvirtual

Construct latitude from GPSLongitude and GPSLongitudeRef.

Returns
Longitude [deg].

◆ getGPSSpeed()

virtual cras::optional<double> movie_publisher::ExifBaseMetadataExtractor::getGPSSpeed ( )
protectedvirtual

Construct ground speed from GPSSpeed and GPSSpeedRef.

Returns
Ground speed [m/s].

◆ getGPSTime()

virtual cras::optional<ros::Time> movie_publisher::ExifBaseMetadataExtractor::getGPSTime ( )
protectedvirtual

Get the GPS time corresponding to the current frame.

Returns
The GPS time.

◆ getGPSTrack()

virtual cras::optional<double> movie_publisher::ExifBaseMetadataExtractor::getGPSTrack ( )
protectedvirtual

Construct GPS track (heading) from GPSTrack and GPSTrackRef.

Returns
Track [deg] (referenced to geographic North).

◆ getLensMake()

cras::optional<std::string> movie_publisher::ExifBaseMetadataExtractor::getLensMake ( )
overridevirtual
Returns
Lens manufacturer.

Reimplemented from movie_publisher::MetadataExtractor.

◆ getLensModel()

cras::optional<std::string> movie_publisher::ExifBaseMetadataExtractor::getLensModel ( )
overridevirtual
Returns
Lens model.

Reimplemented from movie_publisher::MetadataExtractor.

◆ getRollPitch()

cras::optional<std::pair<double, double> > movie_publisher::ExifBaseMetadataExtractor::getRollPitch ( )
overridevirtual
Returns
Gravity-aligned roll and pitch of the camera when capturing the frame [rad].

Reimplemented from movie_publisher::MetadataExtractor.

◆ getRotation()

cras::optional<int> movie_publisher::ExifBaseMetadataExtractor::getRotation ( )
overridevirtual
Returns
Rotation of the image in degrees. Only values 0, 90, 180 and 270 are supported.

Reimplemented from movie_publisher::MetadataExtractor.

◆ getSensorSizeMM()

cras::optional<std::pair<double, double> > movie_publisher::ExifBaseMetadataExtractor::getSensorSizeMM ( )
overridevirtual
Returns
Physical size of the active sensor area that captures the movie (in mm; width, height).

Reimplemented from movie_publisher::MetadataExtractor.

Member Data Documentation

◆ data

std::unique_ptr<ExifBaseMetadataExtractorPrivate> movie_publisher::ExifBaseMetadataExtractor::data
private

PIMPL.

Definition at line 292 of file ExifBaseMetadataExtractor.h.

◆ height

size_t movie_publisher::ExifBaseMetadataExtractor::height
protected

Height of the movie [px].

Definition at line 87 of file ExifBaseMetadataExtractor.h.

◆ width

size_t movie_publisher::ExifBaseMetadataExtractor::width
protected

Width of the movie [px].

Definition at line 86 of file ExifBaseMetadataExtractor.h.


The documentation for this class was generated from the following file:


movie_publisher
Author(s): Martin Pecka
autogenerated on Wed May 28 2025 02:07:22