panlei
2019-07-23 737e60d5c62c90837bd6cd5055dd646288d8c793
追踪添加容错
1个文件已修改
27 ■■■■■ 已修改文件
ruleserver/personTrack.go 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruleserver/personTrack.go
@@ -35,28 +35,28 @@
                    if err != nil {
                        logger.Error("人脸序列化错误", err)
                    }
                    TrackPond[msg.Cid].FaceN = 5
                    logger.Info("===================追踪中途人脸的个数", len(faceParam.Faces))
                } else {
                    if TrackPond[msg.Cid] != nil {
                        if TrackPond[msg.Cid].FaceN > 0 {
                            TrackPond[msg.Cid].FaceN--
                            faceParam.Faces = (faceParam.Faces)[0:0]
                            sdkinfo.Sdkdata, err = proto.Marshal(&faceParam)
                            if err != nil {
                                logger.Error("人脸序列化错误", err)
                            }
                            TrackPond[msg.Cid].YoloN = 5
                            logger.Info("此时容错值为:",TrackPond[msg.Cid].FaceN)
                        }
                        if TrackPond[msg.Cid].FaceN == 0 { //此时连续五次不对
                            TrackPond[msg.Cid].Face = len(faceParam.Faces)
                            TrackPond[msg.Cid].FaceN = 10
                            TrackPond[msg.Cid].FaceN = 5
                        }
                    } else {
                        TrackPond[msg.Cid] = &PersonTrack{Face: len(faceParam.Faces),FaceN:10}
                        TrackPond[msg.Cid] = &PersonTrack{Face: len(faceParam.Faces),FaceN:5}
                    }
                }
                //for i := 0;  i < len(faceParam.Faces); {
                //    if flag := IsInPond(msg.Cid,faceParam.Faces[i]);flag { // 已经存在,从msg的人脸数组中删除这个元素,不必传到下一个环节
                //        faceParam.Faces = append(faceParam.Faces[:i], faceParam.Faces[i+1:]...)
                //    } else {
                //        i++
                //    }
                //}
            } else {
                continue
            }
@@ -87,14 +87,19 @@
                        TrackPond[msg.Cid].Yolo = yoloNum
                        if TrackPond[msg.Cid].YoloN > 0 {
                            TrackPond[msg.Cid].YoloN--
                            yoloParam.Infos = (yoloParam.Infos)[0:0]
                            sdkinfo.Sdkdata, err = proto.Marshal(&yoloParam)
                            if err != nil {
                                logger.Error("yolo序列化错误", err)
                            }
                            logger.Info("此时容错值为:",TrackPond[msg.Cid].YoloN)
                        }
                        if TrackPond[msg.Cid].YoloN == 0 { //此时连续五次不对
                            TrackPond[msg.Cid].Yolo = yoloNum
                            TrackPond[msg.Cid].YoloN = 10
                            TrackPond[msg.Cid].YoloN = 5
                        }
                    } else {
                        TrackPond[msg.Cid] = &PersonTrack{Yolo: yoloNum,YoloN:10}
                        TrackPond[msg.Cid] = &PersonTrack{Yolo: yoloNum,YoloN:5}
                    }
                }
            } else {