Any
MoveToDecade
This commit is contained in:
@ -1,4 +1,5 @@
|
||||
using ShellProgressBar;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Text.Json;
|
||||
using View_by_Distance.Distance.Models.Stateless;
|
||||
using View_by_Distance.FaceRecognitionDotNet;
|
||||
@ -122,7 +123,7 @@ public partial class E_Distance
|
||||
(Face, double?)[] results;
|
||||
List<(Face Face, double? Length)> collection = GetValues(mappingFromItem, intersectFaces, modelsFaceEncoding);
|
||||
results = (from l in collection where l.Length < _RangeDistanceToleranceAverage orderby l.Length select l).Take(1).ToArray();
|
||||
if (results.Any())
|
||||
if (results.Length > 0)
|
||||
{
|
||||
(Face _, double? length) = results.First();
|
||||
_Debug.Add(length);
|
||||
@ -199,7 +200,7 @@ public partial class E_Distance
|
||||
}
|
||||
}
|
||||
|
||||
public void LookForMatchFacesAndPossiblyRename(string facesFileNameExtension, MappingFromItem mappingFromItem, List<Face> faces, List<LocationContainer<MetadataExtractor.Directory>> locationContainers)
|
||||
public void LookForMatchFacesAndPossiblyRename(string facesFileNameExtension, MappingFromItem mappingFromItem, List<Face> faces, ReadOnlyCollection<LocationContainer<MetadataExtractor.Directory>> locationContainers)
|
||||
{
|
||||
string? json;
|
||||
string fileName;
|
||||
@ -219,7 +220,7 @@ public partial class E_Distance
|
||||
if (locationContainer.FromDistanceContent && _DuplicateMappedFaceFiles.Contains(fileName))
|
||||
continue;
|
||||
checkFaces.Clear();
|
||||
if (!locationContainer.Directories.Any())
|
||||
if (locationContainer.Directories.Count == 0)
|
||||
{
|
||||
if (locationContainer.FromDistanceContent)
|
||||
throw new NullReferenceException(nameof(locationContainer.Directories));
|
||||
@ -232,7 +233,7 @@ public partial class E_Distance
|
||||
MoveUnableToMatch(locationContainer.File);
|
||||
continue;
|
||||
}
|
||||
if (filteredFaces.Any())
|
||||
if (filteredFaces.Length > 0)
|
||||
checkFaces.AddRange(GetMatchingFacesByFaceEncoding(filteredFaces, json));
|
||||
if (checkFaces.Count == 1)
|
||||
_Debug.Add(0);
|
||||
@ -242,14 +243,14 @@ public partial class E_Distance
|
||||
modelsFaceEncoding = JsonSerializer.Deserialize<Shared.Models.FaceEncoding>(json);
|
||||
if (modelsFaceEncoding is null)
|
||||
throw new NotSupportedException();
|
||||
if (filteredFaces.Any())
|
||||
if (filteredFaces.Length > 0)
|
||||
{
|
||||
intersectFaces = Shared.Models.Stateless.Methods.ILocation.FilterByIntersect(filteredFaces, _RectangleIntersectMinimum, locationContainer.WholePercentages);
|
||||
if (intersectFaces.Any())
|
||||
if (intersectFaces.Count > 0)
|
||||
checkFaces.AddRange(GetClosestFaceByDistanceIgnoringTolerance(mappingFromItem, intersectFaces, modelsFaceEncoding));
|
||||
}
|
||||
}
|
||||
if (!checkFaces.Any())
|
||||
if (checkFaces.Count == 0)
|
||||
{
|
||||
if (_DistanceMoveUnableToMatch)
|
||||
MoveUnableToMatch(locationContainer.File);
|
||||
@ -279,7 +280,7 @@ public partial class E_Distance
|
||||
{
|
||||
lock (_AllMappedFaceFiles)
|
||||
matches = (from l in _AllMappedFaceFiles where l != locationContainer.File && Path.GetFileName(l) == fileName select l).ToArray();
|
||||
if (locationContainer.FromDistanceContent && matches.Any())
|
||||
if (locationContainer.FromDistanceContent && matches.Length > 0)
|
||||
AppendMatchingDuplicates(locationContainer.File, matches);
|
||||
}
|
||||
if (!locationContainer.FromDistanceContent)
|
||||
@ -296,14 +297,14 @@ public partial class E_Distance
|
||||
if (_Log is null)
|
||||
throw new NullReferenceException(nameof(_Log));
|
||||
double?[] debug = (from l in _Debug where l is null or not 0 select l).ToArray();
|
||||
if (debug.Any())
|
||||
if (debug.Length > 0)
|
||||
{
|
||||
string debugMessage = $"{_Debug.Count - debug.Length} - {debug.Min()} - {_Debug.Max()}";
|
||||
_Log.Info(debugMessage);
|
||||
}
|
||||
if (_DuplicateMappedFaceFiles.Any())
|
||||
if (_DuplicateMappedFaceFiles.Count > 0)
|
||||
_Log.Info($"Renamed {_DuplicateMappedFaceFiles.Count} to *.dup file(s)");
|
||||
if (_Moved.Any() || _Renamed.Any())
|
||||
if (_Moved.Count > 0 || _Renamed.Count > 0)
|
||||
throw new NotImplementedException("Restart!");
|
||||
_Debug.Clear();
|
||||
_Moved.Clear();
|
||||
@ -313,7 +314,7 @@ public partial class E_Distance
|
||||
_DuplicateMappedFaceFiles.Clear();
|
||||
}
|
||||
|
||||
public List<FaceDistanceContainer> GetMissingFaceDistanceContainer(int maxDegreeOfParallelism, long ticks, string dFacesCollectionDirectory, Dictionary<int, Dictionary<int, PersonContainer[]>> missingIdThenWholePercentagesToPersonContainers)
|
||||
public List<FaceDistanceContainer> GetMissingFaceDistanceContainer(int maxDegreeOfParallelism, long ticks, string dFacesCollectionDirectory, Dictionary<int, ReadOnlyDictionary<int, ReadOnlyCollection<PersonContainer>>> missingIdThenWholePercentagesToPersonContainers)
|
||||
{
|
||||
List<FaceDistanceContainer> results = new();
|
||||
string[] files;
|
||||
@ -324,7 +325,7 @@ public partial class E_Distance
|
||||
FaceDistance faceDistance;
|
||||
List<(int id, string json)> collection = new();
|
||||
FaceDistanceContainer faceDistanceContainer;
|
||||
foreach (KeyValuePair<int, Dictionary<int, PersonContainer[]>> keyValuePair in missingIdThenWholePercentagesToPersonContainers)
|
||||
foreach (KeyValuePair<int, ReadOnlyDictionary<int, ReadOnlyCollection<PersonContainer>>> keyValuePair in missingIdThenWholePercentagesToPersonContainers)
|
||||
{
|
||||
files = Directory.GetFiles(dFacesCollectionDirectory, $"{keyValuePair.Key}*.json", SearchOption.TopDirectoryOnly);
|
||||
if (files.Length != 1)
|
||||
@ -530,16 +531,16 @@ public partial class E_Distance
|
||||
FaceDistance faceDistanceEncoding = filteredFaceDistanceContainers[i].FaceDistance;
|
||||
Face face = filteredFaceDistanceContainers[i].Face;
|
||||
List<Sorting> sortingCollection = GetSortingCollection(mapLogic, faceDistanceEncodings, i, faceDistanceEncoding);
|
||||
if (!sortingCollection.Any())
|
||||
if (sortingCollection.Count == 0)
|
||||
return;
|
||||
List<SortingContainer> sortingContainers = GetSortingContainers(mapConfiguration, distanceLimits, face, faceDistanceEncoding, sortingCollection);
|
||||
if (sortingContainers.Any())
|
||||
if (sortingContainers.Count > 0)
|
||||
{
|
||||
lock (collection)
|
||||
collection.AddRange(sortingContainers);
|
||||
}
|
||||
});
|
||||
if (!collection.Any())
|
||||
if (collection.Count == 0)
|
||||
results = Array.Empty<SortingContainer>();
|
||||
else
|
||||
{
|
||||
|
Reference in New Issue
Block a user