Fix #104373: Motion Tracker solve with anamorphic footage not working
The issue was caused by rather recent refactor in 7dea18b3aa.
The root of the issue lies within the fact that the optical center was updated
on the Blender side after the solution was run. There was a mistake in the code
which double-corrected for the pixel aspect ratio.
Added a comment in the code about this, so that it does not look suspicious.
Pull Request #104711
This commit is contained in:
@@ -538,13 +538,14 @@ void tracking_cameraIntrinscisOptionsFromTracking(
|
||||
void tracking_trackingCameraFromIntrinscisOptions(
|
||||
MovieTracking *tracking, const libmv_CameraIntrinsicsOptions *camera_intrinsics_options)
|
||||
{
|
||||
float aspy = 1.0f / tracking->camera.pixel_aspect;
|
||||
MovieTrackingCamera *camera = &tracking->camera;
|
||||
|
||||
camera->focal = camera_intrinsics_options->focal_length;
|
||||
|
||||
/* NOTE: The image size stored in the `camera_intrinsics_options` is aspect-ratio corrected,
|
||||
* so there is no need to "un-apply" it from the principal point. */
|
||||
const float principal_px[2] = {camera_intrinsics_options->principal_point_x,
|
||||
camera_intrinsics_options->principal_point_y / (double)aspy};
|
||||
camera_intrinsics_options->principal_point_y};
|
||||
|
||||
tracking_principal_point_pixel_to_normalized(principal_px,
|
||||
camera_intrinsics_options->image_width,
|
||||
|
||||
Reference in New Issue
Block a user