| | |
| | | |
| | | func Entrance(rule *protomsg.Rule, am *structure.AreaMap,lable *structure.Others,args *structure.SdkDatas,message *protomsg.SdkMessage) structure.LittleRuleResult { |
| | | if rule.PolygonId == am.AreaId { // 首先这条规则得是这个算法的规则,其次规则所对应的区域id要跟区域数据的id对的上 |
| | | if rule.SdkArgAlias != "nCarCount" && rule.SdkArgAlias != "nCarLogoCount" { |
| | | if rule.SdkArgAlias != "nCarCount" { |
| | | logger.Info("过滤车牌信息") |
| | | return filterRule(rule, am) |
| | | } else { |
| | |
| | | // 过滤规则先筛选出符合条件的目标数量 |
| | | func filterRule(rule *protomsg.Rule, am *structure.AreaMap) structure.LittleRuleResult { |
| | | // 处理的都是yolo数据 |
| | | carFlag := rule.SdkArgAlias == "license" || rule.SdkArgAlias == "nColor" || rule.SdkArgAlias == "nConfidence" || |
| | | rule.SdkArgAlias == "nBright" || rule.SdkArgAlias == "nTime" || rule.SdkArgAlias == "nCarBright" || rule.SdkArgAlias == "nCarColor" || |
| | | rule.SdkArgAlias == "nCarLogo" || rule.SdkArgAlias == "nCarType" || rule.SdkArgAlias == "nCarModel" || rule.SdkArgAlias == "nCarModelConfidence" |
| | | carFlag := rule.SdkArgAlias == "license" || rule.SdkArgAlias == "nConfidence" || rule.SdkArgAlias == "fConfidence" || |
| | | rule.SdkArgAlias == "nType" || rule.SdkArgAlias == "nVehicleColor1" || rule.SdkArgAlias == "nVehicleBright" || rule.SdkArgAlias == "nCarColor" || |
| | | rule.SdkArgAlias == "fVDConf" || rule.SdkArgAlias == "nVehicleColor2" || rule.SdkArgAlias == "nColor" || rule.SdkArgAlias == "nPlateFlag" |
| | | |
| | | if rule.SdkArgAlias == "score" || rule.SdkArgAlias == "proportion" || rule.SdkArgAlias == "size" || carFlag{ // 判断的是相似值,占比,尺寸等过滤条件,如果再有,还可以再加 |
| | | logger.Debug("---------走了车牌识别过滤算法",rule.Id,rule.SdkArgAlias,rule.Operator,rule.SdkArgValue,am.AreaId) |