| | |
| | | } |
| | | wg.Wait() |
| | | logger.Debug("抓拍档案库人员缓存完成用时:", time.Since(temptime)) |
| | | |
| | | for k, v := range CaptureDbMap.Area { |
| | | logger.Debugf("Cache area %s item len %d ", k, v.GetLen()) |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | |
| | | import ( |
| | | "basic.com/pubsub/protomsg.git" |
| | | "fmt" |
| | | "sdkCompare/db" |
| | | "sync" |
| | | //"encoding/json" |
| | |
| | | func (s *ShardMap) Walk(wf wfOp, sourceFea []float32, baseScore float32) (targets []*protomsg.SdkCompareEach) { |
| | | var wg sync.WaitGroup |
| | | var lock sync.Mutex |
| | | fmt.Printf("Walk shards len %d\n", len(s.shards)) |
| | | |
| | | for _, si := range s.shards { |
| | | var tempsi shardItem = *si |
| | | |
| | |
| | | package compare |
| | | |
| | | import ( |
| | | "fmt" |
| | | "sdkCompare/cache" |
| | | |
| | | "basic.com/pubsub/protomsg.git" |
| | |
| | | continue |
| | | } |
| | | |
| | | fmt.Printf("Walk area %s, cache len %d\n", key, val.GetLen()) |
| | | targets := val.Walk(DoSdkCompare, fFeature, baseScore) |
| | | if len(targets) > 0 { |
| | | // 比对结果去重, 同一个人到访过多个小区, 缓存数据内会有多条记录 |
| | |
| | | baseScore = 0 |
| | | } |
| | | |
| | | logger.Debugf("Compare args treeNodes %+v, is all %v, target %s, feature len %d", args.TreeNodes, args.IsCompareAll, args.CompareTarget, len(fFeature)) |
| | | |
| | | var response protomsg.SdkCompareResult |
| | | |
| | | // 抓拍库比对 |
| | |
| | | response = capturePersonsCompere(args, fFeature, baseScore) |
| | | } |
| | | |
| | | logger.Debugf("Compare Target %s result len %d", args.CompareTarget, len(response.CompareResult)) |
| | | logger.Debugf("Compare target %s result len %d", args.CompareTarget, len(response.CompareResult)) |
| | | |
| | | if len(response.CompareResult) > 0 { |
| | | logger.Debugf("Compare result %+v", response.CompareResult) |