|  |  | @ -50,7 +50,8 @@ class KalmanParams: | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | class Track: |  |  |  | class Track: | 
			
		
	
		
		
			
				
					
					|  |  |  |   def __init__(self, v_lead: float, kalman_params: KalmanParams): |  |  |  |   def __init__(self, identifier: int, v_lead: float, kalman_params: KalmanParams): | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     self.identifier = identifier | 
			
		
	
		
		
			
				
					
					|  |  |  |     self.cnt = 0 |  |  |  |     self.cnt = 0 | 
			
		
	
		
		
			
				
					
					|  |  |  |     self.aLeadTau = _LEAD_ACCEL_TAU |  |  |  |     self.aLeadTau = _LEAD_ACCEL_TAU | 
			
		
	
		
		
			
				
					
					|  |  |  |     self.K_A = kalman_params.A |  |  |  |     self.K_A = kalman_params.A | 
			
		
	
	
		
		
			
				
					|  |  | @ -98,11 +99,12 @@ class Track: | 
			
		
	
		
		
			
				
					
					|  |  |  |       "vLead": float(self.vLead), |  |  |  |       "vLead": float(self.vLead), | 
			
		
	
		
		
			
				
					
					|  |  |  |       "vLeadK": float(self.vLeadK), |  |  |  |       "vLeadK": float(self.vLeadK), | 
			
		
	
		
		
			
				
					
					|  |  |  |       "aLeadK": float(self.aLeadK), |  |  |  |       "aLeadK": float(self.aLeadK), | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       "aLeadTau": float(self.aLeadTau), | 
			
		
	
		
		
			
				
					
					|  |  |  |       "status": True, |  |  |  |       "status": True, | 
			
		
	
		
		
			
				
					
					|  |  |  |       "fcw": self.is_potential_fcw(model_prob), |  |  |  |       "fcw": self.is_potential_fcw(model_prob), | 
			
		
	
		
		
			
				
					
					|  |  |  |       "modelProb": model_prob, |  |  |  |       "modelProb": model_prob, | 
			
		
	
		
		
			
				
					
					|  |  |  |       "radar": True, |  |  |  |       "radar": True, | 
			
		
	
		
		
			
				
					
					|  |  |  |       "aLeadTau": float(self.aLeadTau) |  |  |  |       "radarTrackId": self.identifier, | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |     } |  |  |  |     } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |   def potential_low_speed_lead(self, v_ego: float): |  |  |  |   def potential_low_speed_lead(self, v_ego: float): | 
			
		
	
	
		
		
			
				
					|  |  | @ -158,8 +160,9 @@ def get_RadarState_from_vision(lead_msg: capnp._DynamicStructReader, v_ego: floa | 
			
		
	
		
		
			
				
					
					|  |  |  |     "aLeadTau": 0.3, |  |  |  |     "aLeadTau": 0.3, | 
			
		
	
		
		
			
				
					
					|  |  |  |     "fcw": False, |  |  |  |     "fcw": False, | 
			
		
	
		
		
			
				
					
					|  |  |  |     "modelProb": float(lead_msg.prob), |  |  |  |     "modelProb": float(lead_msg.prob), | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     "status": True, | 
			
		
	
		
		
			
				
					
					|  |  |  |     "radar": False, |  |  |  |     "radar": False, | 
			
		
	
		
		
			
				
					
					|  |  |  |     "status": True |  |  |  |     "radarTrackId": -1, | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |   } |  |  |  |   } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  |  | @ -237,7 +240,7 @@ class RadarD: | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |       # create the track if it doesn't exist or it's a new track |  |  |  |       # create the track if it doesn't exist or it's a new track | 
			
		
	
		
		
			
				
					
					|  |  |  |       if ids not in self.tracks: |  |  |  |       if ids not in self.tracks: | 
			
		
	
		
		
			
				
					
					|  |  |  |         self.tracks[ids] = Track(v_lead, self.kalman_params) |  |  |  |         self.tracks[ids] = Track(ids, v_lead, self.kalman_params) | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |       self.tracks[ids].update(rpt[0], rpt[1], rpt[2], v_lead, rpt[3]) |  |  |  |       self.tracks[ids].update(rpt[0], rpt[1], rpt[2], v_lead, rpt[3]) | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     # *** publish radarState *** |  |  |  |     # *** publish radarState *** | 
			
		
	
	
		
		
			
				
					|  |  | 
 |