Print intrinsic calibration information.
(intrinsic: dict)
| 250 | |
| 251 | |
| 252 | def print_intrinsic_info(intrinsic: dict): |
| 253 | """Print intrinsic calibration information.""" |
| 254 | print("\n=== Intrinsic Calibration Info ===") |
| 255 | |
| 256 | device_name = intrinsic.get("deviceName", "Unknown") |
| 257 | is_stereo = intrinsic.get("isStereo", False) |
| 258 | print(f"Device: {device_name} ({'Stereo' if is_stereo else 'Mono'})") |
| 259 | |
| 260 | left = intrinsic.get("leftIntrinsics") |
| 261 | if left: |
| 262 | print(f"\nLeft Camera Intrinsics:") |
| 263 | print(f" Resolution: {left.get('imageWidth', 'N/A')}x{left.get('imageHeight', 'N/A')}") |
| 264 | print(f" Focal length: fx={left.get('fx', 0):.2f}, fy={left.get('fy', 0):.2f}") |
| 265 | print(f" Principal point: cx={left.get('cx', 0):.2f}, cy={left.get('cy', 0):.2f}") |
| 266 | dist = left.get('distortionCoeffs', []) |
| 267 | if dist: |
| 268 | print(f" Distortion: [{', '.join(f'{d:.4f}' for d in dist[:5])}]") |
| 269 | print(f" Reproj error: {left.get('reprojectionError', 0):.4f} px") |
| 270 | |
| 271 | right = intrinsic.get("rightIntrinsics") |
| 272 | if right: |
| 273 | print(f"\nRight Camera Intrinsics:") |
| 274 | print(f" Resolution: {right.get('imageWidth', 'N/A')}x{right.get('imageHeight', 'N/A')}") |
| 275 | print(f" Focal length: fx={right.get('fx', 0):.2f}, fy={right.get('fy', 0):.2f}") |
| 276 | print(f" Principal point: cx={right.get('cx', 0):.2f}, cy={right.get('cy', 0):.2f}") |
| 277 | dist = right.get('distortionCoeffs', []) |
| 278 | if dist: |
| 279 | print(f" Distortion: [{', '.join(f'{d:.4f}' for d in dist[:5])}]") |
| 280 | print(f" Reproj error: {right.get('reprojectionError', 0):.4f} px") |
| 281 | |
| 282 | print("=" * 35) |
| 283 | |
| 284 | |
| 285 | def print_extrinsic_info(extrinsic: dict): |