| | |
| | | "fmt" |
| | | "github.com/go-yaml/yaml" |
| | | "io/ioutil" |
| | | "os" |
| | | "ruleprocess/cache" |
| | | "ruleprocess/logger" |
| | | "strconv" |
| | |
| | | |
| | | // 给目标填充liker |
| | | func (arg *Arg) fillLiker(tableId []string,compareThreshold float32) { |
| | | fmt.Println("---------------------------------看看那三个混蛋:",dbTablePersons,serverIp,serverPort) |
| | | bytes := bigCache.GetComparePersonBaseInfo(tableId,arg.Feature,compareThreshold) |
| | | var m map[string]float32 |
| | | err1 := json.Unmarshal(bytes, &m) |
| | |
| | | if err1 != nil { |
| | | logger.Error("查询底库人员信息出错", err1) |
| | | } |
| | | logger.Debug("----------------++++++++++++++++++++底库人员信息:",baseinfos) |
| | | for _,baseinfo := range baseinfos { |
| | | // 根据tableId查询底库信息给liker赋值 |
| | | logger.Info("---------看看每个底库人员的信息:",baseinfo.Id,baseinfo.PersonName) |
| | | var tableIds []string |
| | | tableIds = append(tableIds,baseinfo.TableId) // 虽然是传入数组返回数组的接口,但我按单个的使用了 |
| | | logger.Debug("看看四个参数:",tableIds,"dbtables",serverIp,serverPort) |
| | | table,err := esutil.Dbtablefosbyid(tableIds,"dbtables",serverIp,serverPort) |
| | | if err != nil || len(table) == 0{ |
| | | logger.Error("根据id查询底库信息出错!",err,"--返回值长度为:",len(table)) |
| | |
| | | arg.Liker = append(arg.Liker, &base) |
| | | } |
| | | } |
| | | logger.Debug("liker的长度为:",len(arg.Liker)) |
| | | os.Exit(1) |
| | | |
| | | } |
| | | // 人脸比对 |
| | | func Compare(args *SdkDatas, groupRule *protomsg.GroupRule) { |
| | |
| | | if sdkData.IpcId == "A8B73405-373D-4F23-CED2-A617EBD7EC55" { // 搜索到人脸检测的sdkdata 现在关于人脸的只有他一个sdk,全找他 |
| | | logger.Info("============================================进行人脸对比") |
| | | for _, areaMap := range sdkData.AreaMapList { |
| | | logger.Info("-------------人脸比对之前目标数量",len(areaMap.args)) |
| | | // 拿区域中每个人脸特征值去对比,填充其liker |
| | | logger.Debug("----看看两个区域id是否一致:",groupRule.Rules[j].PolygonId,areaMap.areaId) |
| | | if groupRule.Rules[j].PolygonId == areaMap.areaId { |
| | | logger.Info("--------------看看compareFlag的值和tableId:",compareFlag,tableIds) |
| | | for _, arg := range areaMap.args { |