using Azaion.Common.DTO; using MessagePack; using Newtonsoft.Json; namespace Azaion.Common.Database; [MessagePackObject] public class Detection : YoloLabel { [JsonProperty(PropertyName = "an")][Key("an")] public string AnnotationName { get; set; } = null!; [JsonProperty(PropertyName = "p")][Key("p")] public double Confidence { get; set; } [JsonProperty(PropertyName = "dn")][Key("dn")] public string Description { get; set; } [JsonProperty(PropertyName = "af")][Key("af")] public AffiliationEnum Affiliation { get; set; } //For db & serialization public Detection(){} public Detection(string annotationName, YoloLabel label, string description = "", double confidence = 1) { AnnotationName = annotationName; Description = description; ClassNumber = label.ClassNumber; CenterX = label.CenterX; CenterY = label.CenterY; Height = label.Height; Width = label.Width; Confidence = confidence; } }