feat: Add Face Matcher functionality and related settings
- Implemented FilePathToBitmapConverter for image loading. - Enhanced DataModel with commands and properties for Face Matcher. - Created FaceMatcherResultItem model to store results. - Updated SettingsDto to include Face Matcher paths and tolerance. - Introduced PickerPreferenceService for managing folder paths. - Expanded AiSettingsViewModel to manage Face Matcher settings and results.
This commit is contained in:
parent
f57dc1edba
commit
c261557a29
10 changed files with 2041 additions and 192 deletions
|
|
@ -225,6 +225,105 @@ public class AiSettingsViewModel : ViewModelBase
|
|||
}
|
||||
}
|
||||
|
||||
private string _faceMatcherExecutablePath = string.Empty;
|
||||
public string FaceMatcherExecutablePath
|
||||
{
|
||||
get => _faceMatcherExecutablePath;
|
||||
set
|
||||
{
|
||||
_faceMatcherExecutablePath = value;
|
||||
NotifyPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
private string _faceMatcherEncodingsPath = string.Empty;
|
||||
public string FaceMatcherEncodingsPath
|
||||
{
|
||||
get => _faceMatcherEncodingsPath;
|
||||
set
|
||||
{
|
||||
_faceMatcherEncodingsPath = value;
|
||||
NotifyPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
private string _faceMatcherOutputPath = string.Empty;
|
||||
public string FaceMatcherOutputPath
|
||||
{
|
||||
get => _faceMatcherOutputPath;
|
||||
set
|
||||
{
|
||||
_faceMatcherOutputPath = value;
|
||||
NotifyPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
private string _faceMatcherLogPath = string.Empty;
|
||||
public string FaceMatcherLogPath
|
||||
{
|
||||
get => _faceMatcherLogPath;
|
||||
set
|
||||
{
|
||||
_faceMatcherLogPath = value;
|
||||
NotifyPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
private double _faceMatcherTolerance = 0.5;
|
||||
public double FaceMatcherTolerance
|
||||
{
|
||||
get => _faceMatcherTolerance;
|
||||
set
|
||||
{
|
||||
_faceMatcherTolerance = value;
|
||||
NotifyPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
private string _faceMatcherSelectedImagePath = string.Empty;
|
||||
public string FaceMatcherSelectedImagePath
|
||||
{
|
||||
get => _faceMatcherSelectedImagePath;
|
||||
set
|
||||
{
|
||||
_faceMatcherSelectedImagePath = value;
|
||||
NotifyPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
private bool _isFaceMatcherRunning;
|
||||
public bool IsFaceMatcherRunning
|
||||
{
|
||||
get => _isFaceMatcherRunning;
|
||||
set
|
||||
{
|
||||
_isFaceMatcherRunning = value;
|
||||
NotifyPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
private string _faceMatcherStatusMessage = string.Empty;
|
||||
public string FaceMatcherStatusMessage
|
||||
{
|
||||
get => _faceMatcherStatusMessage;
|
||||
set
|
||||
{
|
||||
_faceMatcherStatusMessage = value;
|
||||
NotifyPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
private string _faceMatcherCommandOutput = string.Empty;
|
||||
public string FaceMatcherCommandOutput
|
||||
{
|
||||
get => _faceMatcherCommandOutput;
|
||||
set
|
||||
{
|
||||
_faceMatcherCommandOutput = value;
|
||||
NotifyPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
private double _aiProgress;
|
||||
public double AiProgress
|
||||
{
|
||||
|
|
@ -237,4 +336,6 @@ public class AiSettingsViewModel : ViewModelBase
|
|||
}
|
||||
|
||||
public ObservableCollection<AiResultItem> PreviewResults { get; } = new();
|
||||
|
||||
public ObservableCollection<FaceMatcherResultItem> FaceMatcherResults { get; } = new();
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue