LimbScanner.predict_limbs¶
giant.relative_opnav.estimators.ellipse_matching
:
Predict the limb locations for a given target in the camera frame.
This is done by
get the angle between the illumination vector and the x axis of the image
Generate
number_of_scan_lines
scan angles evenly distributed between the sun angle -scan_range
/2 the and sun angle +scan_range
/2convert the image scan line directions into directions in the camera frame
use
Shape.find_limbs()
to find the limbs of the target given the scan center and the scan directions in the camera frame
The limbs will be returned as a 3xn array in the camera frame.
This method is automatically called by
extract_limbs()
and will almost never be used directly, however, it is exposed for the adventurous types.- Parameters:
scan_center (ndarray) – the beginning of the scan in the image (pixels)
line_of_sight_sun (ndarray) – the line of sight to the sun in the image (pixels)
target (SceneObject) – The target the limbs are to be predicted for
camera_temperature (Real) – The temperature of the camera
- Returns:
The predicted limb locations in the camera frame
- Return type:
Tuple[ndarray, ndarray, ndarray]