mirror of
https://github.com/azaion/annotations.git
synced 2026-04-22 12:06:31 +00:00
48c9ccbfda
refactor, renames
54 lines
1.7 KiB
C#
54 lines
1.7 KiB
C#
using System.IO;
|
|
using System.Windows.Media.Imaging;
|
|
using Azaion.Common.DTO.Config;
|
|
using Azaion.Common.DTO.Queue;
|
|
using Azaion.Common.Extensions;
|
|
using Azaion.CommonSecurity.DTO;
|
|
|
|
namespace Azaion.Common.DTO;
|
|
|
|
public class Annotation
|
|
{
|
|
private static string _labelsDir = null!;
|
|
private static string _imagesDir = null!;
|
|
private static string _thumbDir = null!;
|
|
|
|
public static void InitializeDirs(DirectoriesConfig config)
|
|
{
|
|
_labelsDir = config.LabelsDirectory;
|
|
_imagesDir = config.ImagesDirectory;
|
|
_thumbDir = config.ThumbnailsDirectory;
|
|
}
|
|
|
|
public string Name { get; set; } = null!;
|
|
public string ImageExtension { get; set; } = null!;
|
|
public DateTime CreatedDate { get; set; }
|
|
public string CreatedEmail { get; set; } = null!;
|
|
public RoleEnum CreatedRole { get; set; }
|
|
public SourceEnum Source { get; set; }
|
|
public AnnotationStatus AnnotationStatus { get; set; }
|
|
|
|
public IEnumerable<Detection> Detections { get; set; } = null!;
|
|
|
|
public double Lat { get; set; }
|
|
public double Lon { get; set; }
|
|
|
|
public List<int> Classes => Detections.Select(x => x.ClassNumber).ToList();
|
|
public string ImagePath => Path.Combine(_imagesDir, $"{Name}{ImageExtension}");
|
|
public string LabelPath => Path.Combine(_labelsDir, $"{Name}.txt");
|
|
public string ThumbPath => Path.Combine(_thumbDir, $"{Name}{Constants.THUMBNAIL_PREFIX}.jpg");
|
|
}
|
|
|
|
|
|
|
|
public enum AnnotationStatus
|
|
{
|
|
None = 0,
|
|
Created = 10,
|
|
Validated = 20
|
|
}
|
|
|
|
public class AnnotationName
|
|
{
|
|
public string Name { get; set; } = null!;
|
|
} |