From ff2fa4e474ee794ebc6e8b2111c8a7992eaed09a Mon Sep 17 00:00:00 2001 From: Mike Phares Date: Sun, 23 Oct 2022 09:55:56 -0700 Subject: [PATCH] Configuration Clean Up --- Drag-Drop/Models/Binder/Configuration.cs | 8 ------ Drag-Drop/Models/Configuration.cs | 6 ----- Instance/DlibDotNet.cs | 26 +++++++++++-------- Instance/Models/Binder/Configuration.cs | 12 +++------ Instance/Models/Configuration.cs | 9 +++---- Instance/appsettings.Development.json | 4 +-- Instance/appsettings.Staging.json | 4 +-- Instance/appsettings.json | 4 +-- Map/Models/MapLogic.cs | 2 +- Tests/Models/Binder/Configuration.cs | 8 ------ Tests/Models/Configuration.cs | 6 ----- .../Models/Binder/Configuration.cs | 16 ------------ .../Models/Configuration.cs | 12 --------- 13 files changed, 26 insertions(+), 91 deletions(-) diff --git a/Drag-Drop/Models/Binder/Configuration.cs b/Drag-Drop/Models/Binder/Configuration.cs index 3ad35dd..66c44f0 100644 --- a/Drag-Drop/Models/Binder/Configuration.cs +++ b/Drag-Drop/Models/Binder/Configuration.cs @@ -25,7 +25,6 @@ public class Configuration [Display(Name = "Load Or Create Then Save Index"), Required] public bool? LoadOrCreateThenSaveIndex { get; set; } [Display(Name = "Location Confidence Factor"), Required] public int? LocationConfidenceFactor { get; set; } [Display(Name = "Mapped Max Index"), Required] public int? MappedMaxIndex { get; set; } - [Display(Name = "Max Items In Distance Collection"), Required] public int? MaxItemsInDistanceCollection { get; set; } [Display(Name = "Mixed Year Relative Paths"), Required] public string[] MixedYearRelativePaths { get; set; } [Display(Name = "Model Directory"), Required] public string ModelDirectory { get; set; } [Display(Name = "Model Name"), Required] public string ModelName { get; set; } @@ -37,7 +36,6 @@ public class Configuration [Display(Name = "Override For Face Images"), Required] public bool? OverrideForFaceImages { get; set; } [Display(Name = "Override For Face Landmark Images"), Required] public bool? OverrideForFaceLandmarkImages { get; set; } [Display(Name = "Override For Resize Images"), Required] public bool? OverrideForResizeImages { get; set; } - [Display(Name = "Padding Loops"), Required] public int? PaddingLoops { get; set; } [Display(Name = "Predictor Model Name"), Required] public string PredictorModelName { get; set; } [Display(Name = "Properties Changed For Distance"), Required] public bool? PropertiesChangedForDistance { get; set; } [Display(Name = "Properties Changed For Faces"), Required] public bool? PropertiesChangedForFaces { get; set; } @@ -92,8 +90,6 @@ public class Configuration throw new NullReferenceException(nameof(configuration.LoadOrCreateThenSaveIndex)); if (configuration.LocationConfidenceFactor is null) throw new NullReferenceException(nameof(configuration.LocationConfidenceFactor)); - if (configuration.MaxItemsInDistanceCollection is null) - throw new NullReferenceException(nameof(configuration.MaxItemsInDistanceCollection)); if (configuration.MixedYearRelativePaths is null) throw new NullReferenceException(nameof(configuration.MixedYearRelativePaths)); if (configuration.NumberOfJitters is null) @@ -110,8 +106,6 @@ public class Configuration throw new NullReferenceException(nameof(configuration.OverrideForFaceLandmarkImages)); if (configuration.OverrideForResizeImages is null) throw new NullReferenceException(nameof(configuration.OverrideForResizeImages)); - if (configuration.PaddingLoops is null) - throw new NullReferenceException(nameof(configuration.PaddingLoops)); if (configuration.PropertiesChangedForDistance is null) throw new NullReferenceException(nameof(configuration.PropertiesChangedForDistance)); if (configuration.PropertiesChangedForFaces is null) @@ -156,7 +150,6 @@ public class Configuration configuration.LoadOrCreateThenSaveIndex.Value, configuration.LocationConfidenceFactor.Value, configuration.MappedMaxIndex, - configuration.MaxItemsInDistanceCollection.Value, configuration.MixedYearRelativePaths, configuration.ModelDirectory, configuration.ModelName, @@ -168,7 +161,6 @@ public class Configuration configuration.OverrideForFaceImages.Value, configuration.OverrideForFaceLandmarkImages.Value, configuration.OverrideForResizeImages.Value, - configuration.PaddingLoops.Value, configuration.PredictorModelName, configuration.PropertiesChangedForDistance.Value, configuration.PropertiesChangedForFaces.Value, diff --git a/Drag-Drop/Models/Configuration.cs b/Drag-Drop/Models/Configuration.cs index aeffc10..6ca08b2 100644 --- a/Drag-Drop/Models/Configuration.cs +++ b/Drag-Drop/Models/Configuration.cs @@ -24,7 +24,6 @@ public class Configuration public bool LoadOrCreateThenSaveIndex { init; get; } public int LocationConfidenceFactor { init; get; } public int? MappedMaxIndex { init; get; } - public int MaxItemsInDistanceCollection { init; get; } public string[] MixedYearRelativePaths { init; get; } public string ModelDirectory { init; get; } public string ModelName { init; get; } @@ -36,7 +35,6 @@ public class Configuration public bool OverrideForFaceImages { init; get; } public bool OverrideForFaceLandmarkImages { init; get; } public bool OverrideForResizeImages { init; get; } - public int PaddingLoops { init; get; } public string PredictorModelName { init; get; } public bool PropertiesChangedForDistance { init; get; } public bool PropertiesChangedForFaces { init; get; } @@ -70,7 +68,6 @@ public class Configuration bool loadOrCreateThenSaveIndex, int locationConfidenceFactor, int? mappedMaxIndex, - int maxItemsInDistanceCollection, string[] mixedYearRelativePaths, string modelDirectory, string modelName, @@ -82,7 +79,6 @@ public class Configuration bool overrideForFaceImages, bool overrideForFaceLandmarkImages, bool overrideForResizeImages, - int paddingLoops, string predictorModelName, bool propertiesChangedForDistance, bool propertiesChangedForFaces, @@ -115,7 +111,6 @@ public class Configuration LoadOrCreateThenSaveIndex = loadOrCreateThenSaveIndex; LocationConfidenceFactor = locationConfidenceFactor; MappedMaxIndex = mappedMaxIndex; - MaxItemsInDistanceCollection = maxItemsInDistanceCollection; MixedYearRelativePaths = mixedYearRelativePaths; ModelDirectory = modelDirectory; ModelName = modelName; @@ -127,7 +122,6 @@ public class Configuration OverrideForFaceImages = overrideForFaceImages; OverrideForFaceLandmarkImages = overrideForFaceLandmarkImages; OverrideForResizeImages = overrideForResizeImages; - PaddingLoops = paddingLoops; PredictorModelName = predictorModelName; PropertiesChangedForDistance = propertiesChangedForDistance; PropertiesChangedForFaces = propertiesChangedForFaces; diff --git a/Instance/DlibDotNet.cs b/Instance/DlibDotNet.cs index afcb7d2..bc4a5cf 100644 --- a/Instance/DlibDotNet.cs +++ b/Instance/DlibDotNet.cs @@ -859,7 +859,8 @@ public partial class DlibDotNet mapLogicSupport); Dictionary> idToNormalizedPixelPercentageToMapping = MapLogicSupport.GetIdToNormalizedPixelPercentageToFace(mappingCollection); mapLogic.CopyManualFiles(dFacesContentDirectory, idToNormalizedPixelPercentageToMapping); - mapLogic.CopyNotMappedFaces(_Configuration.FaceDistanceAreaPermilleTolerance, dFacesContentDirectory, idToNormalizedPixelPercentageToMapping); + if (!_Configuration.SaveFaceDistancesForOutputResolutions.Contains(outputResolution)) + mapLogic.CopyNotMappedFaces(_Configuration.FaceDistanceAreaPermilleTolerance, dFacesContentDirectory, idToNormalizedPixelPercentageToMapping); (Dictionary personKeyToCount, int totalNotMapped) = mapLogic.AddToMapping(mappingCollection); if (_Configuration.SaveMappedForOutputResolutions.Contains(outputResolution)) mapLogic.SaveMapped(dFacesContentDirectory, d2FacePartsContentDirectory, mappingCollection, idToNormalizedPixelPercentageToMapping, personKeyToCount, totalNotMapped); @@ -869,20 +870,23 @@ public partial class DlibDotNet mapLogic.SaveShortcuts(a2PeopleSingletonDirectory, personContainers, filteredItems, mappingCollection, personKeyToCount); if (_Configuration.SaveResizedImagesByPersonKeyFormattedForOutputResolutions.Contains(outputResolution)) mapLogic.SaveResizedImagesByPersonKeyFormatted(_Configuration.JLinks, a2PeopleSingletonDirectory, personContainers, mappingCollection, personKeyToCount, totalNotMapped); - MapLogicSupport.SetFaceDistances(_AppSettings.MaxDegreeOfParallelism, ticks, distinctFilteredFaces); - sortingContainers = mapLogicSupport.SetFaceMappingSortingCollectionThenGetSortingContainers(_AppSettings.MaxDegreeOfParallelism, ticks, mapLogic, distinctFilteredFaces, useFiltersCounter); - if (!sortingContainers.Any()) + if (_Configuration.SaveFaceDistancesForOutputResolutions.Contains(outputResolution)) { - for (useFiltersCounter = 1; useFiltersCounter < 17; useFiltersCounter++) + MapLogicSupport.SetFaceDistances(_AppSettings.MaxDegreeOfParallelism, ticks, distinctFilteredFaces); + sortingContainers = mapLogicSupport.SetFaceMappingSortingCollectionThenGetSortingContainers(_AppSettings.MaxDegreeOfParallelism, ticks, mapLogic, distinctFilteredFaces, useFiltersCounter); + if (!sortingContainers.Any()) { - sortingContainers = mapLogicSupport.SetFaceMappingSortingCollectionThenGetSortingContainers(_AppSettings.MaxDegreeOfParallelism, ticks, mapLogic, distinctFilteredFaces, useFiltersCounter); - if (sortingContainers.Any()) - break; + for (useFiltersCounter = 1; useFiltersCounter < 17; useFiltersCounter++) + { + sortingContainers = mapLogicSupport.SetFaceMappingSortingCollectionThenGetSortingContainers(_AppSettings.MaxDegreeOfParallelism, ticks, mapLogic, distinctFilteredFaces, useFiltersCounter); + if (sortingContainers.Any()) + break; + } } + MapLogicSupport.SaveFaceDistances(_Configuration.PropertyConfiguration, sortingContainers); + if (totalNotMapped > 0) + mapLogic.UpdateFromSortingContainersThenSaveContainers(dFacesContentDirectory, d2FacePartsContentDirectory, mappingCollection, idToNormalizedPixelPercentageToMapping, useFiltersCounter, sortingContainers, totalNotMapped); } - MapLogicSupport.SaveFaceDistances(_Configuration.PropertyConfiguration, sortingContainers); - if (totalNotMapped > 0) - mapLogic.UpdateFromSortingContainersThenSaveContainers(dFacesContentDirectory, d2FacePartsContentDirectory, mappingCollection, idToNormalizedPixelPercentageToMapping, useFiltersCounter, sortingContainers, totalNotMapped); } private static Container? AreAllSameEndsWith(string argZero, Container[] containers) diff --git a/Instance/Models/Binder/Configuration.cs b/Instance/Models/Binder/Configuration.cs index 235af5a..452be7f 100644 --- a/Instance/Models/Binder/Configuration.cs +++ b/Instance/Models/Binder/Configuration.cs @@ -38,7 +38,6 @@ public class Configuration [Display(Name = "Mapping Default Name"), Required] public string MappingDefaultName { get; set; } [Display(Name = "Mapping Use Deterministic Hash Code Unknown Face Key Value Pairs for Add to Mapping"), Required] public bool? MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping { get; set; } [Display(Name = "Mapping Use Deterministic Hash Code Unknown Face Key Value Pairs for Save Mapping"), Required] public bool? MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping { get; set; } - [Display(Name = "Max Items In Distance Collection"), Required] public int? MaxItemsInDistanceCollection { get; set; } [Display(Name = "Mixed Year Relative Paths"), Required] public string[] MixedYearRelativePaths { get; set; } [Display(Name = "Model Directory"), Required] public string ModelDirectory { get; set; } [Display(Name = "Model Name"), Required] public string ModelName { get; set; } @@ -50,7 +49,6 @@ public class Configuration [Display(Name = "Override For Face Images"), Required] public bool? OverrideForFaceImages { get; set; } [Display(Name = "Override For Face Landmark Images"), Required] public bool? OverrideForFaceLandmarkImages { get; set; } [Display(Name = "Override For Resize Images"), Required] public bool? OverrideForResizeImages { get; set; } - [Display(Name = "Padding Loops"), Required] public int? PaddingLoops { get; set; } [Display(Name = "Person Birthday First Year"), Required] public int? PersonBirthdayFirstYear { get; set; } [Display(Name = "Person Birthday Format"), Required] public string PersonBirthdayFormat { get; set; } [Display(Name = "PersonKey Format"), Required] public string PersonKeyFormat { get; set; } @@ -65,6 +63,7 @@ public class Configuration [Display(Name = "Reverse"), Required] public bool? Reverse { get; set; } [Display(Name = "Save Face Landmark For Output Resolutions"), Required] public string[] SaveFaceLandmarkForOutputResolutions { get; set; } [Display(Name = "Save Full Year Of Random Files"), Required] public bool? SaveFullYearOfRandomFiles { get; set; } + [Display(Name = "Save Face Distances"), Required] public string[] SaveFaceDistancesForOutputResolutions { get; set; } [Display(Name = "Save Mapped"), Required] public string[] SaveMappedForOutputResolutions { get; set; } [Display(Name = "Save Not Mapped"), Required] public string[] SaveNotMappedForOutputResolutions { get; set; } [Display(Name = "Save Resized Images by Person Key Formatted"), Required] public string[] SaveResizedImagesByPersonKeyFormattedForOutputResolutions { get; set; } @@ -141,8 +140,6 @@ public class Configuration throw new NullReferenceException(nameof(configuration.MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping)); if (configuration.MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping is null) throw new NullReferenceException(nameof(configuration.MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping)); - if (configuration.MaxItemsInDistanceCollection is null) - throw new NullReferenceException(nameof(configuration.MaxItemsInDistanceCollection)); if (configuration.MixedYearRelativePaths is null) throw new NullReferenceException(nameof(configuration.MixedYearRelativePaths)); if (configuration.NumberOfJitters is null) @@ -159,8 +156,6 @@ public class Configuration throw new NullReferenceException(nameof(configuration.OverrideForFaceLandmarkImages)); if (configuration.OverrideForResizeImages is null) throw new NullReferenceException(nameof(configuration.OverrideForResizeImages)); - if (configuration.PaddingLoops is null) - throw new NullReferenceException(nameof(configuration.PaddingLoops)); if (configuration.PersonBirthdayFirstYear is null) throw new NullReferenceException(nameof(configuration.PersonBirthdayFirstYear)); if (configuration.PersonBirthdayFormat is null) @@ -183,6 +178,8 @@ public class Configuration throw new NullReferenceException(nameof(configuration.Reverse)); if (configuration.SaveFaceLandmarkForOutputResolutions is null) configuration.SaveFaceLandmarkForOutputResolutions = Array.Empty(); + if (configuration.SaveFaceDistancesForOutputResolutions is null) + configuration.SaveFaceDistancesForOutputResolutions = Array.Empty(); if (configuration.SaveMappedForOutputResolutions is null) configuration.SaveMappedForOutputResolutions = Array.Empty(); if (configuration.SaveNotMappedForOutputResolutions is null) @@ -241,7 +238,6 @@ public class Configuration configuration.MappingDefaultName, configuration.MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping.Value, configuration.MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping.Value, - configuration.MaxItemsInDistanceCollection.Value, configuration.MixedYearRelativePaths, configuration.ModelDirectory, configuration.ModelName, @@ -253,7 +249,6 @@ public class Configuration configuration.OverrideForFaceImages.Value, configuration.OverrideForFaceLandmarkImages.Value, configuration.OverrideForResizeImages.Value, - configuration.PaddingLoops.Value, configuration.PersonBirthdayFirstYear.Value, configuration.PersonBirthdayFormat, configuration.PersonKeyFormat, @@ -267,6 +262,7 @@ public class Configuration configuration.Reverse.Value, configuration.SaveFaceLandmarkForOutputResolutions, configuration.SaveFullYearOfRandomFiles.Value, + configuration.SaveFaceDistancesForOutputResolutions, configuration.SaveMappedForOutputResolutions, configuration.SaveNotMappedForOutputResolutions, configuration.SaveResizedImagesByPersonKeyFormattedForOutputResolutions, diff --git a/Instance/Models/Configuration.cs b/Instance/Models/Configuration.cs index a3eb4f9..ee51835 100644 --- a/Instance/Models/Configuration.cs +++ b/Instance/Models/Configuration.cs @@ -37,7 +37,6 @@ public class Configuration public string MappingDefaultName { init; get; } public bool MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping { init; get; } public bool MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping { init; get; } - public int MaxItemsInDistanceCollection { init; get; } public string[] MixedYearRelativePaths { init; get; } public string ModelDirectory { init; get; } public string ModelName { init; get; } @@ -49,7 +48,6 @@ public class Configuration public bool OverrideForFaceImages { init; get; } public bool OverrideForFaceLandmarkImages { init; get; } public bool OverrideForResizeImages { init; get; } - public int PaddingLoops { init; get; } public int PersonBirthdayFirstYear { init; get; } public string PersonBirthdayFormat { init; get; } public string PersonKeyFormat { init; get; } @@ -63,6 +61,7 @@ public class Configuration public bool Reverse { init; get; } public string[] SaveFaceLandmarkForOutputResolutions { init; get; } public bool SaveFullYearOfRandomFiles { init; get; } + public string[] SaveFaceDistancesForOutputResolutions { init; get; } public string[] SaveMappedForOutputResolutions { init; get; } public string[] SaveNotMappedForOutputResolutions { init; get; } public string[] SaveResizedImagesByPersonKeyFormattedForOutputResolutions { init; get; } @@ -106,7 +105,6 @@ public class Configuration string mappingDefaultName, bool mappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping, bool mappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping, - int maxItemsInDistanceCollection, string[] mixedYearRelativePaths, string modelDirectory, string modelName, @@ -118,7 +116,6 @@ public class Configuration bool overrideForFaceImages, bool overrideForFaceLandmarkImages, bool overrideForResizeImages, - int paddingLoops, int personBirthdayFirstYear, string personBirthdayFormat, string personKeyFormat, @@ -132,6 +129,7 @@ public class Configuration bool reverse, string[] saveFaceLandmarkForOutputResolutions, bool saveFullYearOfRandomFiles, + string[] saveFaceDistancesForOutputResolutions, string[] saveMappedForOutputResolutions, string[] saveNotMappedForOutputResolutions, string[] saveResizedImagesByPersonKeyFormattedForOutputResolutions, @@ -174,7 +172,6 @@ public class Configuration MappingDefaultName = mappingDefaultName; MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping = mappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping; MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping = mappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping; - MaxItemsInDistanceCollection = maxItemsInDistanceCollection; MixedYearRelativePaths = mixedYearRelativePaths; ModelDirectory = modelDirectory; ModelName = modelName; @@ -186,7 +183,6 @@ public class Configuration OverrideForFaceImages = overrideForFaceImages; OverrideForFaceLandmarkImages = overrideForFaceLandmarkImages; OverrideForResizeImages = overrideForResizeImages; - PaddingLoops = paddingLoops; PersonBirthdayFirstYear = personBirthdayFirstYear; PersonBirthdayFormat = personBirthdayFormat; PersonKeyFormat = personKeyFormat; @@ -200,6 +196,7 @@ public class Configuration Reverse = reverse; SaveFaceLandmarkForOutputResolutions = saveFaceLandmarkForOutputResolutions; SaveFullYearOfRandomFiles = saveFullYearOfRandomFiles; + SaveFaceDistancesForOutputResolutions = saveFaceDistancesForOutputResolutions; SaveMappedForOutputResolutions = saveMappedForOutputResolutions; SaveNotMappedForOutputResolutions = saveNotMappedForOutputResolutions; SaveResizedImagesByPersonKeyFormattedForOutputResolutions = saveResizedImagesByPersonKeyFormattedForOutputResolutions; diff --git a/Instance/appsettings.Development.json b/Instance/appsettings.Development.json index 48ad23e..9e14a1c 100644 --- a/Instance/appsettings.Development.json +++ b/Instance/appsettings.Development.json @@ -74,11 +74,9 @@ "LocationFactor": 10000, "MappedMaxIndex": 1034720, "MappingDefaultName": "John Doe~25", - "MappingSaveFaceEncoding": false, "MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping": false, "MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping": false, "MaxImagesInDirectoryForTopLevelFirstPass": 10, - "MaxItemsInDistanceCollection": 50, "ModelDirectory": "C:/GitHub/dlib-models", "ModelName": "Hog", "NumberOfJitters": 0, @@ -88,7 +86,6 @@ "OverrideForFaceImages": false, "OverrideForFaceLandmarkImages": false, "OverrideForResizeImages": false, - "PaddingLoops": 5, "Pattern": "[^ABCDEFGHIJKLMNOPQRSTUVWXYZbcdfghjklmnpqrstvwxyz0-9]", "PersonBirthdayFirstYear": 1500, "PersonBirthdayFormat": "yyyy-MM-dd_HH", @@ -144,6 +141,7 @@ "176 x 176", "256 x 256" ], + "SaveFaceDistancesForOutputResolutions": [], "SaveMappedForOutputResolutions": [], "SaveNotMappedForOutputResolutions": [], "SaveResizedImagesByPersonKeyFormattedForOutputResolutions": [], diff --git a/Instance/appsettings.Staging.json b/Instance/appsettings.Staging.json index b823453..7533ade 100644 --- a/Instance/appsettings.Staging.json +++ b/Instance/appsettings.Staging.json @@ -74,11 +74,9 @@ "LocationFactor": 10000, "MappedMaxIndex": 1034720, "MappingDefaultName": "John Doe~25", - "MappingSaveFaceEncoding": false, "MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping": false, "MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping": false, "MaxImagesInDirectoryForTopLevelFirstPass": 10, - "MaxItemsInDistanceCollection": 50, "ModelDirectory": "L:/GitHub/dlib-models", "ModelName": "Hog", "NumberOfJitters": 0, @@ -88,7 +86,6 @@ "OverrideForFaceImages": false, "OverrideForFaceLandmarkImages": false, "OverrideForResizeImages": false, - "PaddingLoops": 5, "Pattern": "[^ABCDEFGHIJKLMNOPQRSTUVWXYZbcdfghjklmnpqrstvwxyz0-9]", "PersonBirthdayFirstYear": 1500, "PersonBirthdayFormat": "yyyy-MM-dd_HH", @@ -134,6 +131,7 @@ "176 x 176", "256 x 256" ], + "SaveFaceDistancesForOutputResolutions": [], "SaveMappedForOutputResolutions": [], "SaveNotMappedForOutputResolutions": [], "SaveResizedImagesByPersonKeyFormattedForOutputResolutions": [ diff --git a/Instance/appsettings.json b/Instance/appsettings.json index 2fcb271..d479260 100644 --- a/Instance/appsettings.json +++ b/Instance/appsettings.json @@ -74,11 +74,9 @@ "LocationFactor": 10000, "MappedMaxIndex": 1034720, "MappingDefaultName": "John Doe~25", - "MappingSaveFaceEncoding": false, "MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping": false, "MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping": false, "MaxImagesInDirectoryForTopLevelFirstPass": 10, - "MaxItemsInDistanceCollection": 50, "ModelDirectory": "C:/GitHub/dlib-models", "ModelName": "Hog", "NumberOfJitters": 0, @@ -88,7 +86,6 @@ "OverrideForFaceImages": false, "OverrideForFaceLandmarkImages": false, "OverrideForResizeImages": false, - "PaddingLoops": 5, "Pattern": "[^ABCDEFGHIJKLMNOPQRSTUVWXYZbcdfghjklmnpqrstvwxyz0-9]", "PersonBirthdayFirstYear": 1500, "PersonBirthdayFormat": "yyyy-MM-dd_HH", @@ -143,6 +140,7 @@ "176 x 176", "256 x 256" ], + "SaveFaceDistancesForOutputResolutions": [], "SaveMappedForOutputResolutions": [], "SaveNotMappedForOutputResolutions": [], "SaveResizedImagesByPersonKeyFormattedForOutputResolutions": [ diff --git a/Map/Models/MapLogic.cs b/Map/Models/MapLogic.cs index 0c895dc..b61f222 100644 --- a/Map/Models/MapLogic.cs +++ b/Map/Models/MapLogic.cs @@ -1000,7 +1000,7 @@ public class MapLogic faceFileHolder = new(Path.Combine(facesDirectory, $"{mapping.MappingFromLocation.DeterministicHashCodeKey}{mapping.MappingFromItem.ImageFileHolder.ExtensionLowered}{_Configuration.FacesFileNameExtension}")); if (directoryName is null || !faceFileHolder.Exists) continue; - directory = Path.Combine(_EDistanceContentTicksDirectory, by, $"{mapping.MappingFromItem.MinimumDateTime.ToString("yyyy")[..3]}#A{mapping.MappingFromLocation.AreaPermille:0000}"); + directory = Path.Combine(_EDistanceContentTicksDirectory, by, $"{mapping.MappingFromLocation.AreaPermille:0000}A{mapping.MappingFromItem.MinimumDateTime.ToString("yyyy")[..3]}#"); checkFile = Path.Combine(directory, $"{mapping.MappingFromLocation.DeterministicHashCodeKey}{mapping.MappingFromItem.ImageFileHolder.ExtensionLowered}{_Configuration.FacesFileNameExtension}"); results.Add(new(directory, faceFileHolder, checkFile)); } diff --git a/Tests/Models/Binder/Configuration.cs b/Tests/Models/Binder/Configuration.cs index 75b0b3b..d563589 100644 --- a/Tests/Models/Binder/Configuration.cs +++ b/Tests/Models/Binder/Configuration.cs @@ -25,7 +25,6 @@ public class Configuration [Display(Name = "Load Or Create Then Save Index"), Required] public bool? LoadOrCreateThenSaveIndex { get; set; } [Display(Name = "Location Confidence Factor"), Required] public int? LocationConfidenceFactor { get; set; } [Display(Name = "Mapped Max Index"), Required] public int? MappedMaxIndex { get; set; } - [Display(Name = "Max Items In Distance Collection"), Required] public int? MaxItemsInDistanceCollection { get; set; } [Display(Name = "Mixed Year Relative Paths"), Required] public string[] MixedYearRelativePaths { get; set; } [Display(Name = "Model Directory"), Required] public string ModelDirectory { get; set; } [Display(Name = "Model Name"), Required] public string ModelName { get; set; } @@ -37,7 +36,6 @@ public class Configuration [Display(Name = "Override For Face Images"), Required] public bool? OverrideForFaceImages { get; set; } [Display(Name = "Override For Face Landmark Images"), Required] public bool? OverrideForFaceLandmarkImages { get; set; } [Display(Name = "Override For Resize Images"), Required] public bool? OverrideForResizeImages { get; set; } - [Display(Name = "Padding Loops"), Required] public int? PaddingLoops { get; set; } [Display(Name = "Predictor Model Name"), Required] public string PredictorModelName { get; set; } [Display(Name = "Properties Changed For Distance"), Required] public bool? PropertiesChangedForDistance { get; set; } [Display(Name = "Properties Changed For Faces"), Required] public bool? PropertiesChangedForFaces { get; set; } @@ -92,8 +90,6 @@ public class Configuration throw new NullReferenceException(nameof(configuration.LoadOrCreateThenSaveIndex)); if (configuration.LocationConfidenceFactor is null) throw new NullReferenceException(nameof(configuration.LocationConfidenceFactor)); - if (configuration.MaxItemsInDistanceCollection is null) - throw new NullReferenceException(nameof(configuration.MaxItemsInDistanceCollection)); if (configuration.MixedYearRelativePaths is null) throw new NullReferenceException(nameof(configuration.MixedYearRelativePaths)); if (configuration.NumberOfJitters is null) @@ -110,8 +106,6 @@ public class Configuration throw new NullReferenceException(nameof(configuration.OverrideForFaceLandmarkImages)); if (configuration.OverrideForResizeImages is null) throw new NullReferenceException(nameof(configuration.OverrideForResizeImages)); - if (configuration.PaddingLoops is null) - throw new NullReferenceException(nameof(configuration.PaddingLoops)); if (configuration.PropertiesChangedForDistance is null) throw new NullReferenceException(nameof(configuration.PropertiesChangedForDistance)); if (configuration.PropertiesChangedForFaces is null) @@ -156,7 +150,6 @@ public class Configuration configuration.LoadOrCreateThenSaveIndex.Value, configuration.LocationConfidenceFactor.Value, configuration.MappedMaxIndex, - configuration.MaxItemsInDistanceCollection.Value, configuration.MixedYearRelativePaths, configuration.ModelDirectory, configuration.ModelName, @@ -168,7 +161,6 @@ public class Configuration configuration.OverrideForFaceImages.Value, configuration.OverrideForFaceLandmarkImages.Value, configuration.OverrideForResizeImages.Value, - configuration.PaddingLoops.Value, configuration.PredictorModelName, configuration.PropertiesChangedForDistance.Value, configuration.PropertiesChangedForFaces.Value, diff --git a/Tests/Models/Configuration.cs b/Tests/Models/Configuration.cs index 45ae9fe..e6679ce 100644 --- a/Tests/Models/Configuration.cs +++ b/Tests/Models/Configuration.cs @@ -24,7 +24,6 @@ public class Configuration public bool LoadOrCreateThenSaveIndex { init; get; } public int LocationConfidenceFactor { init; get; } public int? MappedMaxIndex { init; get; } - public int MaxItemsInDistanceCollection { init; get; } public string[] MixedYearRelativePaths { init; get; } public string ModelDirectory { init; get; } public string ModelName { init; get; } @@ -36,7 +35,6 @@ public class Configuration public bool OverrideForFaceImages { init; get; } public bool OverrideForFaceLandmarkImages { init; get; } public bool OverrideForResizeImages { init; get; } - public int PaddingLoops { init; get; } public string PredictorModelName { init; get; } public bool PropertiesChangedForDistance { init; get; } public bool PropertiesChangedForFaces { init; get; } @@ -70,7 +68,6 @@ public class Configuration bool loadOrCreateThenSaveIndex, int locationConfidenceFactor, int? mappedMaxIndex, - int maxItemsInDistanceCollection, string[] mixedYearRelativePaths, string modelDirectory, string modelName, @@ -82,7 +79,6 @@ public class Configuration bool overrideForFaceImages, bool overrideForFaceLandmarkImages, bool overrideForResizeImages, - int paddingLoops, string predictorModelName, bool propertiesChangedForDistance, bool propertiesChangedForFaces, @@ -115,7 +111,6 @@ public class Configuration LoadOrCreateThenSaveIndex = loadOrCreateThenSaveIndex; LocationConfidenceFactor = locationConfidenceFactor; MappedMaxIndex = mappedMaxIndex; - MaxItemsInDistanceCollection = maxItemsInDistanceCollection; MixedYearRelativePaths = mixedYearRelativePaths; ModelDirectory = modelDirectory; ModelName = modelName; @@ -127,7 +122,6 @@ public class Configuration OverrideForFaceImages = overrideForFaceImages; OverrideForFaceLandmarkImages = overrideForFaceLandmarkImages; OverrideForResizeImages = overrideForResizeImages; - PaddingLoops = paddingLoops; PredictorModelName = predictorModelName; PropertiesChangedForDistance = propertiesChangedForDistance; PropertiesChangedForFaces = propertiesChangedForFaces; diff --git a/TestsWithFaceRecognitionDotNet/Models/Binder/Configuration.cs b/TestsWithFaceRecognitionDotNet/Models/Binder/Configuration.cs index 643f33b..66e3267 100644 --- a/TestsWithFaceRecognitionDotNet/Models/Binder/Configuration.cs +++ b/TestsWithFaceRecognitionDotNet/Models/Binder/Configuration.cs @@ -38,7 +38,6 @@ public class Configuration [Display(Name = "Mapping Default Name"), Required] public string MappingDefaultName { get; set; } [Display(Name = "Mapping Use Deterministic Hash Code Unknown Face Key Value Pairs for Add to Mapping"), Required] public bool? MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping { get; set; } [Display(Name = "Mapping Use Deterministic Hash Code Unknown Face Key Value Pairs for Save Mapping"), Required] public bool? MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping { get; set; } - [Display(Name = "Max Items In Distance Collection"), Required] public int? MaxItemsInDistanceCollection { get; set; } [Display(Name = "Mixed Year Relative Paths"), Required] public string[] MixedYearRelativePaths { get; set; } [Display(Name = "Model Directory"), Required] public string ModelDirectory { get; set; } [Display(Name = "Model Name"), Required] public string ModelName { get; set; } @@ -50,7 +49,6 @@ public class Configuration [Display(Name = "Override For Face Images"), Required] public bool? OverrideForFaceImages { get; set; } [Display(Name = "Override For Face Landmark Images"), Required] public bool? OverrideForFaceLandmarkImages { get; set; } [Display(Name = "Override For Resize Images"), Required] public bool? OverrideForResizeImages { get; set; } - [Display(Name = "Padding Loops"), Required] public int? PaddingLoops { get; set; } [Display(Name = "Person Birthday First Year"), Required] public int? PersonBirthdayFirstYear { get; set; } [Display(Name = "Person Birthday Format"), Required] public string PersonBirthdayFormat { get; set; } [Display(Name = "PersonKey Format"), Required] public string PersonKeyFormat { get; set; } @@ -65,8 +63,6 @@ public class Configuration [Display(Name = "Reverse"), Required] public bool? Reverse { get; set; } [Display(Name = "Save Face Landmark For Output Resolutions"), Required] public string[] SaveFaceLandmarkForOutputResolutions { get; set; } [Display(Name = "Save Full Year Of Random Files"), Required] public bool? SaveFullYearOfRandomFiles { get; set; } - [Display(Name = "Save Mapped"), Required] public string[] SaveMappedForOutputResolutions { get; set; } - [Display(Name = "Save Not Mapped"), Required] public string[] SaveNotMappedForOutputResolutions { get; set; } [Display(Name = "Save Resized Images by Person Key Formatted"), Required] public string[] SaveResizedImagesByPersonKeyFormattedForOutputResolutions { get; set; } [Display(Name = "Save Resized Subfiles"), Required] public bool? SaveResizedSubfiles { get; set; } [Display(Name = "Save Shortcuts"), Required] public string[] SaveShortcutsForOutputResolutions { get; set; } @@ -141,8 +137,6 @@ public class Configuration throw new NullReferenceException(nameof(configuration.MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping)); if (configuration.MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping is null) throw new NullReferenceException(nameof(configuration.MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping)); - if (configuration.MaxItemsInDistanceCollection is null) - throw new NullReferenceException(nameof(configuration.MaxItemsInDistanceCollection)); if (configuration.MixedYearRelativePaths is null) throw new NullReferenceException(nameof(configuration.MixedYearRelativePaths)); if (configuration.NumberOfJitters is null) @@ -159,8 +153,6 @@ public class Configuration throw new NullReferenceException(nameof(configuration.OverrideForFaceLandmarkImages)); if (configuration.OverrideForResizeImages is null) throw new NullReferenceException(nameof(configuration.OverrideForResizeImages)); - if (configuration.PaddingLoops is null) - throw new NullReferenceException(nameof(configuration.PaddingLoops)); if (configuration.PersonBirthdayFirstYear is null) throw new NullReferenceException(nameof(configuration.PersonBirthdayFirstYear)); if (configuration.PersonBirthdayFormat is null) @@ -183,10 +175,6 @@ public class Configuration throw new NullReferenceException(nameof(configuration.Reverse)); if (configuration.SaveFaceLandmarkForOutputResolutions is null) configuration.SaveFaceLandmarkForOutputResolutions = Array.Empty(); - if (configuration.SaveMappedForOutputResolutions is null) - configuration.SaveMappedForOutputResolutions = Array.Empty(); - if (configuration.SaveNotMappedForOutputResolutions is null) - configuration.SaveNotMappedForOutputResolutions = Array.Empty(); if (configuration.SaveFullYearOfRandomFiles is null) throw new NullReferenceException(nameof(configuration.SaveFullYearOfRandomFiles)); if (configuration.SaveResizedImagesByPersonKeyFormattedForOutputResolutions is null) @@ -239,7 +227,6 @@ public class Configuration configuration.MappingDefaultName, configuration.MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping.Value, configuration.MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping.Value, - configuration.MaxItemsInDistanceCollection.Value, configuration.MixedYearRelativePaths, configuration.ModelDirectory, configuration.ModelName, @@ -251,7 +238,6 @@ public class Configuration configuration.OverrideForFaceImages.Value, configuration.OverrideForFaceLandmarkImages.Value, configuration.OverrideForResizeImages.Value, - configuration.PaddingLoops.Value, configuration.PersonBirthdayFirstYear.Value, configuration.PersonBirthdayFormat, configuration.PersonKeyFormat, @@ -265,8 +251,6 @@ public class Configuration configuration.Reverse.Value, configuration.SaveFaceLandmarkForOutputResolutions, configuration.SaveFullYearOfRandomFiles.Value, - configuration.SaveMappedForOutputResolutions, - configuration.SaveNotMappedForOutputResolutions, configuration.SaveResizedImagesByPersonKeyFormattedForOutputResolutions, configuration.SaveResizedSubfiles.Value, configuration.SaveShortcutsForOutputResolutions, diff --git a/TestsWithFaceRecognitionDotNet/Models/Configuration.cs b/TestsWithFaceRecognitionDotNet/Models/Configuration.cs index 679ea76..6c90ebe 100644 --- a/TestsWithFaceRecognitionDotNet/Models/Configuration.cs +++ b/TestsWithFaceRecognitionDotNet/Models/Configuration.cs @@ -37,7 +37,6 @@ public class Configuration public string MappingDefaultName { init; get; } public bool MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping { init; get; } public bool MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping { init; get; } - public int MaxItemsInDistanceCollection { init; get; } public string[] MixedYearRelativePaths { init; get; } public string ModelDirectory { init; get; } public string ModelName { init; get; } @@ -49,7 +48,6 @@ public class Configuration public bool OverrideForFaceImages { init; get; } public bool OverrideForFaceLandmarkImages { init; get; } public bool OverrideForResizeImages { init; get; } - public int PaddingLoops { init; get; } public int PersonBirthdayFirstYear { init; get; } public string PersonBirthdayFormat { init; get; } public string PersonKeyFormat { init; get; } @@ -63,8 +61,6 @@ public class Configuration public bool Reverse { init; get; } public string[] SaveFaceLandmarkForOutputResolutions { init; get; } public bool SaveFullYearOfRandomFiles { init; get; } - public string[] SaveMappedForOutputResolutions { init; get; } - public string[] SaveNotMappedForOutputResolutions { init; get; } public string[] SaveResizedImagesByPersonKeyFormattedForOutputResolutions { init; get; } public bool SaveResizedSubfiles { init; get; } public string[] SaveShortcutsForOutputResolutions { init; get; } @@ -106,7 +102,6 @@ public class Configuration string mappingDefaultName, bool mappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping, bool mappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping, - int maxItemsInDistanceCollection, string[] mixedYearRelativePaths, string modelDirectory, string modelName, @@ -118,7 +113,6 @@ public class Configuration bool overrideForFaceImages, bool overrideForFaceLandmarkImages, bool overrideForResizeImages, - int paddingLoops, int personBirthdayFirstYear, string personBirthdayFormat, string personKeyFormat, @@ -132,8 +126,6 @@ public class Configuration bool reverse, string[] saveFaceLandmarkForOutputResolutions, bool saveFullYearOfRandomFiles, - string[] saveMappedForOutputResolutions, - string[] saveNotMappedForOutputResolutions, string[] saveResizedImagesByPersonKeyFormattedForOutputResolutions, bool saveResizedSubfiles, string[] saveShortcutsForOutputResolutions, @@ -174,7 +166,6 @@ public class Configuration MappingDefaultName = mappingDefaultName; MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping = mappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForAddToMapping; MappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping = mappingUseDeterministicHashCodeUnknownFaceKeyValuePairsForSaveMapping; - MaxItemsInDistanceCollection = maxItemsInDistanceCollection; MixedYearRelativePaths = mixedYearRelativePaths; ModelDirectory = modelDirectory; ModelName = modelName; @@ -186,7 +177,6 @@ public class Configuration OverrideForFaceImages = overrideForFaceImages; OverrideForFaceLandmarkImages = overrideForFaceLandmarkImages; OverrideForResizeImages = overrideForResizeImages; - PaddingLoops = paddingLoops; PersonBirthdayFirstYear = personBirthdayFirstYear; PersonBirthdayFormat = personBirthdayFormat; PersonKeyFormat = personKeyFormat; @@ -200,8 +190,6 @@ public class Configuration Reverse = reverse; SaveFaceLandmarkForOutputResolutions = saveFaceLandmarkForOutputResolutions; SaveFullYearOfRandomFiles = saveFullYearOfRandomFiles; - SaveMappedForOutputResolutions = saveMappedForOutputResolutions; - SaveNotMappedForOutputResolutions = saveNotMappedForOutputResolutions; SaveResizedImagesByPersonKeyFormattedForOutputResolutions = saveResizedImagesByPersonKeyFormattedForOutputResolutions; SaveResizedSubfiles = saveResizedSubfiles; SaveShortcutsForOutputResolutions = saveShortcutsForOutputResolutions;