namespace OrpaonVision.Model.Training;
///
/// 数据集模型。
///
public sealed class DatasetModel
{
///
/// 数据集ID。
///
public Guid Id { get; set; }
///
/// 数据集名称。
///
public string Name { get; set; } = string.Empty;
///
/// 数据集描述。
///
public string? Description { get; set; }
///
/// 数据集类型。
///
public DatasetType Type { get; set; }
///
/// 数据集状态。
///
public DatasetStatus Status { get; set; }
///
/// 数据集路径。
///
public string Path { get; set; } = string.Empty;
///
/// 数据集格式。
///
public string Format { get; set; } = string.Empty;
///
/// 总图像数量。
///
public int TotalImageCount { get; set; }
///
/// 训练图像数量。
///
public int TrainImageCount { get; set; }
///
/// 验证图像数量。
///
public int ValidationImageCount { get; set; }
///
/// 测试图像数量。
///
public int TestImageCount { get; set; }
///
/// 总标注数量。
///
public int TotalAnnotationCount { get; set; }
///
/// 类别数量。
///
public int ClassCount { get; set; }
///
/// 类别列表JSON。
///
public string ClassListJson { get; set; } = string.Empty;
///
/// 训练集比例。
///
public double TrainRatio { get; set; }
///
/// 验证集比例。
///
public double ValidationRatio { get; set; }
///
/// 测试集比例。
///
public double TestRatio { get; set; }
///
/// 数据增强配置JSON。
///
public string? DataAugmentationJson { get; set; }
///
/// 统计信息JSON。
///
public string? StatisticsJson { get; set; }
///
/// 版本号。
///
public string Version { get; set; } = "1.0.0";
///
/// 标签文件路径。
///
public string? LabelsFilePath { get; set; }
///
/// 配置文件路径。
///
public string? ConfigFilePath { get; set; }
///
/// 是否已验证。
///
public bool IsValidated { get; set; }
///
/// 验证时间(UTC)。
///
public DateTime? ValidatedAtUtc { get; set; }
///
/// 验证人。
///
public string? ValidatedBy { get; set; }
///
/// 创建人ID。
///
public Guid CreatedById { get; set; }
///
/// 创建人姓名。
///
public string CreatedByName { get; set; } = string.Empty;
///
/// 创建时间(UTC)。
///
public DateTime CreatedAtUtc { get; set; }
///
/// 更新时间(UTC)。
///
public DateTime UpdatedAtUtc { get; set; }
///
/// 创建人。
///
public string CreatedBy { get; set; } = string.Empty;
///
/// 更新人。
///
public string UpdatedBy { get; set; } = string.Empty;
///
/// 备注。
///
public string? Remark { get; set; }
}
///
/// 数据集类型枚举。
///
public enum DatasetType
{
///
/// 目标检测。
///
ObjectDetection = 0,
///
/// 图像分类。
///
ImageClassification = 1,
///
/// 语义分割。
///
SemanticSegmentation = 2,
///
/// 实例分割。
///
InstanceSegmentation = 3
}
///
/// 数据集状态枚举。
///
public enum DatasetStatus
{
///
/// 草稿。
///
Draft = 0,
///
/// 准备中。
///
Preparing = 1,
///
/// 已准备。
///
Ready = 2,
///
/// 验证中。
///
Validating = 3,
///
/// 已验证。
///
Validated = 4,
///
/// 验证失败。
///
ValidationFailed = 5,
///
/// 已发布。
///
Published = 6,
///
/// 已停用。
///
Disabled = 7
}