convert pixels to object coordinates

I have a satellite with known coordinates as a function of time.
A sensor is installed on a gimbal attached to a satellite.
Gimbal is pointed to (pointAt) specific coordinates of a point of interest (POI). So, I can read azimuth and elevation angle of the Gimbal (gimbalAngles).
The sensor is CMOS, with known pixel size, number of pixels and focal distance of a lens.
When sensor observes a POI, the sensor surface is normal to the vector between the sesnor center and the POI.
I have another object X in the vicinity of the POI (at the same altitude).
My sensor has pixel coordinates of this object X.
How to transform these pixel coordinates to the coordinates of the object X in the same coordinate frame as the POI (e.g. ECEF, LLA etc)?
… and vice-versa: if I know the coordinates of the object X (ECEF, LLA), how to transform these coordinates to pixels of my sensor.
Can somebody please point me towards useful Matlab help page on this subject?
Image2world2d? But what is the world coordinates?

답변 (1개)

Matt J
Matt J 2024년 12월 17일
편집: Matt J 2024년 12월 17일

0 개 추천

Gimbal is pointed to (pointAt) specific coordinates of a point of interest (POI). So, I can read azimuth and elevation angle of the Gimbal (gimbalAngles).
It doesn't sound like you have enough information. You would need to know the distance of POI from the sensor, i.e. the full 3D set of spherical coordinates of POI relative to the gimbal.
Additionally, you need to know the orientation of the x,y,z coordinate axes of the gimbal in 3D world (ECEF, LLA) coordinates. You would probably need to have gimbal coordinates of not one, but three POIs to determine that.

댓글 수: 4

vasili
vasili 2024년 12월 18일
Thanks Matt. The distance to POI from the gimbal can be calculated, because I know ECEF coordinates of the both. I know the coordinates of the gimbal (sesnor) in both ECEF and LLA (from the satelltite trajectory), in addition to azimuth and elevation towards the POI. I suspect there should be some transfer matrix to align the sensor frame to the frame of the POI and an object X, but I couldn't find any functions in Matlab so far.
Matt J
Matt J 2024년 12월 18일
편집: Matt J 2024년 12월 18일
I suspect there should be some transfer matrix to align the sensor frame to the frame of the POI and an object X, but I couldn't find any functions in Matlab so far.
Because, as I mentioned, you don't have enough POIs. To align two frames, you need at least 3 non-colinear points whose 3D cartesian coordinates are known in both frames. So far, it sounds like you only have 2 (the POI and the sensor). If you can obtain 1 more point, then you can use this FEX download to find the rototranslation relating the frames,
vasili
vasili 2024년 12월 18일
ok, thanks Matt. Will think more about that
Matt J
Matt J 2024년 12월 18일
OK. Maybe there is some station with known ECEF coordinates on the ground that is communicating with the satellite? Maybe that could be your 3rd point?

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Reference Applications에 대해 자세히 알아보기

질문:

2024년 12월 17일

댓글:

2024년 12월 18일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by