浏览代码

add TrafficCongestion trigger

zwh 10 月之前
父节点
当前提交
1f93a9b8f6

+ 2 - 2
trigger/pjisuv/tpperception/NumTargetsExceedThreshold/main/NumTargetsExceedThreshold.go

@@ -22,14 +22,14 @@ func Rule(data *pjisuv_msgs.PerceptionObjects, param *pjisuv_param.PjisuvParam)
 		}
 	}()
 
-	if param.VelocityXOfCicvLocation > 0.5 && len(data.Objs) > 6 {
+	if param.VelocityXOfCicvLocation > 2.5 && len(data.Objs) > 6 {
 		for _, obj := range data.Objs {
 			if obj.Type != 0 && obj.X >= 2 {
 				NumTargets++
 			}
 		}
 		//fmt.Println(NumTargets)
-		if NumTargets >= 6 {
+		if NumTargets >= 5 {
 			//event_lable := "NumTargetsExceedThreshold"
 			fmt.Printf("NumTargetsExceedThreshold,%d Targets were found\n", NumTargets)
 			return "NumTargetsExceedThreshold"

+ 41 - 0
trigger/pjisuv/tpperception/TrafficCongestion/main/TrafficCongestion.go

@@ -0,0 +1,41 @@
+package main
+
+import (
+	"cicv-data-closedloop/pjisuv_msgs"
+	"cicv-data-closedloop/pjisuv_param"
+	"fmt"
+	"math"
+)
+
+func Topic() string {
+	return "/tpperception"
+}
+
+// Label todo 禁止存在下划线_
+func Label() string {
+	return "TrafficCongestion"
+}
+func Rule(data *pjisuv_msgs.PerceptionObjects, param *pjisuv_param.PjisuvParam) string {
+	NumTargets := 0
+	defer func() {
+		if r := recover(); r != nil {
+			fmt.Println("Recovered from panic:", r)
+		}
+	}()
+
+	if param.VelocityXOfCicvLocation < 3.5 && len(data.Objs) > 3 {
+		for _, obj := range data.Objs {
+			if (obj.Type == 2 || obj.Type == 3) && math.Abs(float64(obj.Y)) <= 2.5 && math.Abs(float64(obj.X)) <= 20 && obj.Speed <= 4 {
+				NumTargets++
+			}
+		}
+		//fmt.Println(NumTargets)
+		if NumTargets >= 3 {
+			return "TrafficCongestion"
+
+		}
+	}
+
+	return ""
+
+}