From 5572a775f44cefed8c8c14da29ecef11c5d3593e Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期二, 07 五月 2024 16:52:11 +0800
Subject: [PATCH] 修复以图搜图出现多个相同目标的bug
---
compare/compare.go | 30 ++++++++++++++++++++++++++++--
1 files changed, 28 insertions(+), 2 deletions(-)
diff --git a/compare/compare.go b/compare/compare.go
index ae83818..59f989a 100644
--- a/compare/compare.go
+++ b/compare/compare.go
@@ -40,7 +40,19 @@
if _, ok := cache.CacheMap.Area[id]; ok {
targets := cache.CacheMap.Area[id].Walk(DoSdkCompare, floatFeat, baseScore)
if len(targets) > 0 {
- scResult.CompareResult = append(scResult.CompareResult, targets...)
+ // 姣斿缁撴灉鍘婚噸, 鍚屼竴涓汉鍒拌杩囧涓皬鍖�, 缂撳瓨鏁版嵁鍐呬細鏈夊鏉¤褰�
+ for idx, t := range targets {
+ var isRepeat bool
+ for _, r := range scResult.CompareResult {
+ if t.Id == r.Id {
+ isRepeat = true
+ break
+ }
+ }
+ if !isRepeat {
+ scResult.CompareResult = append(scResult.CompareResult, targets[idx])
+ }
+ }
}
walkedArea[id] = struct{}{}
@@ -64,7 +76,21 @@
targets := val.Walk(DoSdkCompare, floatFeat, baseScore)
if len(targets) > 0 {
- scResult.CompareResult = append(scResult.CompareResult, targets...)
+ if len(targets) > 0 {
+ // 姣斿缁撴灉鍘婚噸, 鍚屼竴涓汉鍒拌杩囧涓皬鍖�, 缂撳瓨鏁版嵁鍐呬細鏈夊鏉¤褰�
+ for idx, t := range targets {
+ var isRepeat bool
+ for _, r := range scResult.CompareResult {
+ if t.Id == r.Id {
+ isRepeat = true
+ break
+ }
+ }
+ if !isRepeat {
+ scResult.CompareResult = append(scResult.CompareResult, targets[idx])
+ }
+ }
+ }
// todo 娣诲姞灏忓尯澶栫殑鍏宠仈鍏崇郴, 涓嬫浼樺厛姣斿
}
}
--
Gitblit v1.8.0