Determine lat/lon of a point in the image

I have images of a drone and I already know the height and width of the image in meters (obtained from the drone's FOV). I also have information on the yaw, pitch and roll angles and the coordinate in lat/lon of the center of the image (data from the drone's flight log).

I believe the drone image is a distorted view of the place as the yaw, pitch and roll angles are non-zero.

I need to get the lat/lon coordinate of a point in the image which is given in pixels.

I tried to use the following logic:

  1. As I have the image size in meters and in pixels, I transformed the requested coordinate in pixels to meters.

  2. I used the rotation matrix https://en.wikipedia.org/wiki/Rotation_matrix to calculate the new coordinate position

  3. I used the new position to calculate the new latitude and longitude using equirectangular projection (distance between center and object is less than 30 meters)

I'm using Python to develop.

Does anyone have an idea what to do?

Thanks!

How many English words
do you know?
Test your English vocabulary size, and measure
how many words do you know
Online Test
Powered by Examplum