| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- using UnityEngine;
- namespace LightGlue.Unity.Runtime
- {
- /// <summary>
- /// 对外统一的位置更新数据。
- /// </summary>
- public struct LightGluePositionUpdate
- {
- /// <summary>
- /// 给业务/UI直接使用的位置坐标。
- /// 当前默认透传算法参考图坐标;未来可扩展为已映射的 UI/屏幕坐标。
- /// </summary>
- public Vector2 Position;
- /// <summary>
- /// 算法原始相机/参考图坐标。
- /// 通常对应 LightGlueResult.CameraPosition。
- /// </summary>
- public Vector2 CameraLocation;
- /// <summary>
- /// 本次结果是否有效。
- /// </summary>
- public bool IsValid;
- /// <summary>
- /// 匹配点数量。
- /// </summary>
- public ushort NumMatches;
- /// <summary>
- /// 内点比例。
- /// </summary>
- public float InliersRatio;
- public LightGluePositionUpdate(
- Vector2 position,
- Vector2 cameraLocation,
- bool isValid,
- ushort numMatches,
- float inliersRatio)
- {
- Position = position;
- CameraLocation = cameraLocation;
- IsValid = isValid;
- NumMatches = numMatches;
- InliersRatio = inliersRatio;
- }
- public override string ToString()
- {
- return $"LightGluePositionUpdate(Pos={Position}, Camera={CameraLocation}, Valid={IsValid}, Matches={NumMatches}, Inliers={InliersRatio:P1})";
- }
- }
- }
|