CameraCalibrationResult.cs 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. using System;
  2. namespace TeamAAS_VP.Models
  3. {
  4. /// <summary>
  5. /// 相机标定结果数据传输对象。
  6. /// 包含内参、畸变系数、外参等可选字段,供服务与 ViewModel 交换使用。
  7. /// </summary>
  8. public class CameraCalibrationResult
  9. {
  10. /// <summary>
  11. /// 标定是否成功
  12. /// </summary>
  13. public bool Success { get; set; }
  14. /// <summary>
  15. /// 说明性消息或错误信息
  16. /// </summary>
  17. public string Message { get; set; }
  18. /// <summary>
  19. /// 相机内参矩阵(3x3),按行主序展开(长度应为9)。
  20. /// 如果为空表示未设置。
  21. /// </summary>
  22. public double[] CameraMatrix { get; set; }
  23. /// <summary>
  24. /// 畸变系数(可包含 k1,k2,p1,p2,k3 ...)
  25. /// </summary>
  26. public double[] DistCoeffs { get; set; }
  27. /// <summary>
  28. /// 旋转向量或旋转矩阵的压缩表示(视实现而定)。
  29. /// </summary>
  30. public double[] Rotation { get; set; }
  31. /// <summary>
  32. /// 平移向量(tx,ty,tz)
  33. /// </summary>
  34. public double[] Translation { get; set; }
  35. /// <summary>
  36. /// 标定时间戳
  37. /// </summary>
  38. public DateTime Timestamp { get; set; }
  39. public CameraCalibrationResult()
  40. {
  41. Success = false;
  42. Message = string.Empty;
  43. CameraMatrix = null;
  44. DistCoeffs = null;
  45. Rotation = null;
  46. Translation = null;
  47. Timestamp = DateTime.UtcNow;
  48. }
  49. }
  50. }