From 366e2ff546092d9be26411fb698b3ddd8e834a11 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期一, 09 十二月 2024 15:38:02 +0800
Subject: [PATCH] 更新实名比对

---
 compare/capture.go  |    4 ++--
 compare/compare.go  |    2 +-
 db/person.go        |    2 +-
 compare/realName.go |   15 +++++++++++++--
 db/summary.go       |    1 +
 5 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/compare/capture.go b/compare/capture.go
index daed2cc..07e0e75 100644
--- a/compare/capture.go
+++ b/compare/capture.go
@@ -9,7 +9,7 @@
 
 func capturePersonsCompere(args protomsg.CompareArgs, fFeature []float32, baseScore float32) protomsg.SdkCompareResult {
 	var scr protomsg.SdkCompareResult
-	var walkedArea = make(map[string]struct{}, 0)
+	var walkedArea = make(map[string]struct{})
 
 	// 姣斿浼犲叆鐨勫皬鍖篿d
 	if args.TreeNodes != nil && len(args.TreeNodes) > 0 {
@@ -45,7 +45,7 @@
 
 	// 姣斿鍏ㄩ儴灏忓尯
 	if !args.IsCompareAll && len(args.TreeNodes) > 0 {
-		baseScore += 20
+		baseScore += 10
 	}
 
 	for key, val := range cache.CaptureDbMap.Area {
diff --git a/compare/compare.go b/compare/compare.go
index b8f3fab..5a5f88c 100644
--- a/compare/compare.go
+++ b/compare/compare.go
@@ -27,7 +27,7 @@
 	}
 
 	if args.IsCompareAll {
-		baseScore = 0
+		baseScore = 25
 	}
 
 	logger.Debugf("Compare args treeNodes %+v, is all %v, target %s, feature len %d", args.TreeNodes, args.IsCompareAll, args.CompareTarget, len(fFeature))
diff --git a/compare/realName.go b/compare/realName.go
index 4753655..d086abd 100644
--- a/compare/realName.go
+++ b/compare/realName.go
@@ -3,14 +3,25 @@
 import (
 	"basic.com/pubsub/protomsg.git"
 	"sdkCompare/cache"
+	"sort"
 )
 
 func realNamePersonsCompere(args protomsg.CompareArgs, fFeature []float32, baseScore float32) protomsg.SdkCompareResult {
 	var scr protomsg.SdkCompareResult
 	targets := cache.RealNameDbMap.Walk(DoSdkCompare, fFeature, baseScore)
 	if len(targets) > 0 {
-		for idx, _ := range targets {
-			scr.CompareResult = append(scr.CompareResult, targets[idx])
+		sort.Slice(targets, func(i, j int) bool {
+			return targets[i].CompareScore > targets[j].CompareScore
+		})
+
+		// 鎴彇鍓�5涓厓绱�
+		topTargets := targets
+		if len(targets) > 5 {
+			topTargets = targets[:5] // 鍙彇鍓�5涓厓绱�
+		}
+
+		for idx, _ := range topTargets {
+			scr.CompareResult = append(scr.CompareResult, topTargets[idx])
 		}
 	}
 
diff --git a/db/person.go b/db/person.go
index 959862d..068497d 100644
--- a/db/person.go
+++ b/db/person.go
@@ -49,7 +49,7 @@
 				FaceFeature: util.ByteSlice2float32Slice(byteFeat),
 			})
 		} else {
-			logger.Warnf("Person %s feature is empty %s", p.ID)
+			logger.Warnf("Person %s feature is empty", p.ID)
 		}
 	}
 
diff --git a/db/summary.go b/db/summary.go
new file mode 100644
index 0000000..3a49c63
--- /dev/null
+++ b/db/summary.go
@@ -0,0 +1 @@
+package db

--
Gitblit v1.8.0