[mob] Minor fixes
This commit is contained in:
parent
52038b8972
commit
c8154784f1
|
@ -479,7 +479,7 @@ class FaceMlService {
|
|||
break;
|
||||
}
|
||||
}
|
||||
if (!allLandmarksEqual) {
|
||||
if (allLandmarksEqual) {
|
||||
debugPrint("Discarding remote embedding for fileID ${fileMl.fileID} "
|
||||
"because landmarks are not equal");
|
||||
return true;
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
import "dart:convert";
|
||||
|
||||
import "package:flutter/foundation.dart";
|
||||
import "package:logging/logging.dart";
|
||||
import "package:photos/core/event_bus.dart";
|
||||
import "package:photos/events/people_changed_event.dart";
|
||||
import "package:photos/face/db.dart";
|
||||
|
@ -22,6 +24,8 @@ class PersonService {
|
|||
return _instance!;
|
||||
}
|
||||
|
||||
late Logger logger = Logger("PersonService");
|
||||
|
||||
static init(
|
||||
EntityService entityService,
|
||||
FaceMLDataDB faceMLDataDB,
|
||||
|
@ -158,13 +162,26 @@ class PersonService {
|
|||
final Map<int, String> clusterToPersonID = {};
|
||||
for (var e in entities) {
|
||||
final personData = PersonData.fromJson(json.decode(e.data));
|
||||
int faceCount = 0;
|
||||
for (var cluster in personData.assigned!) {
|
||||
faceCount += cluster.faces.length;
|
||||
for (var faceId in cluster.faces) {
|
||||
if (faceIdToClusterID.containsKey(faceId)) {
|
||||
throw Exception("Face $faceId is already assigned to a cluster");
|
||||
}
|
||||
faceIdToClusterID[faceId] = cluster.id;
|
||||
}
|
||||
clusterToPersonID[cluster.id] = e.id;
|
||||
}
|
||||
if(kDebugMode) {
|
||||
logger.info(
|
||||
"Person ${e.id} ${personData.name} has ${personData.assigned!
|
||||
.length} clusters with $faceCount faces",
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
logger.info("Storing feedback for ${faceIdToClusterID.length} faces");
|
||||
await faceMLDataDB.updateClusterIdToFaceId(faceIdToClusterID);
|
||||
await faceMLDataDB.bulkAssignClusterToPersonID(clusterToPersonID);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue