增加了图像缩放的支持

This commit is contained in:
2025-12-27 07:05:07 +08:00
parent f9027e856e
commit d4a8b63031
9 changed files with 269 additions and 3 deletions

View File

@@ -0,0 +1,25 @@
using System.ComponentModel;
namespace SHH.CameraSdk;
/// <summary>
/// 图像缩放/变换类型枚举
/// 用于控制帧数据的尺寸调整策略,适配不同的显示/分析场景
/// </summary>
public enum FrameScaleType
{
/// <summary> 无变化(保持原始尺寸)</summary>
/// <remarks>适用于高精度分析、原始帧存储等场景,无性能损耗</remarks>
[Description("原始尺寸")]
None = 0,
/// <summary> 缩小 (Downscale) - 通常用于降低带宽或 UI 预览 </summary>
/// <remarks>适用于监控大屏、低性能设备预览,可降低 CPU/内存占用</remarks>
[Description("图像缩小")]
Shrink = 1,
/// <summary> 放大 (Upscale) - 通常用于增强显示效果 </summary>
/// <remarks>适用于细节观测场景,会增加一定的性能开销,建议配合硬件加速</remarks>
[Description("图像放大")]
Expand = 2
}

View File

@@ -0,0 +1,16 @@
namespace SHH.CameraSdk;
/// <summary>
/// [标准处理契约] 帧处理器接口
/// 职责:定义所有图像预处理服务(缩放、增强、去雾等)必须遵循的标准行为
/// </summary>
public interface IFrameProcessor : IDisposable
{
/// <summary>
/// 投递任务进入处理环节
/// </summary>
/// <param name="deviceId">设备ID用于保序路由</param>
/// <param name="frame">智能帧(携带原始图像)</param>
/// <param name="decision">决策上下文(用于透传给下一站)</param>
void Enqueue(long deviceId, SmartFrame frame, FrameDecision decision);
}