Skip to content

Conversation

@originlake
Copy link
Contributor

Currently the camera id is created by combining camera make, camera model, width, height, projection type, focal length. However, this is not enough to cover the case when there are two or more drones with the same model and the same capture settings, this can happen on a large survey project where one drone's battery is not enough to cover the whole survey. And if not separating data from multiple drones, a single camera model will be used to optimize across all the images, leading worse accuracy.

This PR tries to solve this issue by utilizing serial number exists mostly in the drone image metadata. It will attach the serial number at the end of the camera id. Since there could be multiple tags used to represent the serial number from different drone/camera maker, I don't have enough data to cover all the scenario, my implementation is explained below, please suggest and if any other way to read serial number is missing, let me know.

The serial number will be unknown by default, then, when loading metadata, the following exif and xmp tags will be used with the priority in ascending order, camera/len serial number should always be preferred over drone/body serial number, as some drones allow to change sensors. EXIF BodySerialNumber, EXIF LensSerialNumber, @drone-dji:DroneSerialNumber, @drone-dji:CameraSerialNumber

…del but different drones/lens can be considered differently
@smathermather
Copy link
Contributor

Love this. Do you have a test dataset I could run it with?

@originlake
Copy link
Contributor Author

It's tested with some data under NDA 😢 , and has no side effect in normal datasets. If we could ask for some help from the community. Sorry I always have to create PR without actual data, my experience mostly comes from dealing issues with datasets under NDA.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants