[mob][photos] Make blur detection static method

This commit is contained in:
laurenspriem
2024-06-22 00:36:07 +05:30
parent c8effce8fc
commit 7c535adff1
2 changed files with 6 additions and 6 deletions

View File

@@ -3,14 +3,14 @@ import "package:photos/services/machine_learning/face_ml/face_detection/detectio
import 'package:photos/services/machine_learning/face_ml/face_filtering/face_filtering_constants.dart';
class BlurDetectionService {
final _logger = Logger('BlurDetectionService');
static final _logger = Logger('BlurDetectionService');
// singleton pattern
BlurDetectionService._privateConstructor();
static final instance = BlurDetectionService._privateConstructor();
factory BlurDetectionService() => instance;
Future<(bool, double)> predictIsBlurGrayLaplacian(
static Future<(bool, double)> predictIsBlurGrayLaplacian(
List<List<int>> grayImage, {
int threshold = kLaplacianHardThreshold,
FaceDirection faceDirection = FaceDirection.straight,
@@ -22,7 +22,7 @@ class BlurDetectionService {
return (variance < threshold, variance);
}
double _calculateVariance(List<List<int>> matrix) {
static double _calculateVariance(List<List<int>> matrix) {
final int numRows = matrix.length;
final int numCols = matrix[0].length;
final int totalElements = numRows * numCols;
@@ -49,7 +49,7 @@ class BlurDetectionService {
return variance;
}
List<List<int>> _padImage(
static List<List<int>> _padImage(
List<List<int>> image, {
int removeSideColumns = 56,
FaceDirection faceDirection = FaceDirection.straight,
@@ -115,7 +115,7 @@ class BlurDetectionService {
return paddedImage;
}
List<List<int>> _applyLaplacian(
static List<List<int>> _applyLaplacian(
List<List<int>> image, {
FaceDirection faceDirection = FaceDirection.straight,
}) {

View File

@@ -248,7 +248,7 @@ Future<(Float32List, List<AlignmentResult>, List<bool>, List<double>, Size)>
final grayscalems = blurDetectionStopwatch.elapsedMilliseconds;
log('creating grayscale matrix took $grayscalems ms');
final (isBlur, blurValue) =
await BlurDetectionService.instance.predictIsBlurGrayLaplacian(
await BlurDetectionService.predictIsBlurGrayLaplacian(
faceGrayMatrix,
faceDirection: face.getFaceDirection(),
);