sickTest使用简单,即插即用 1.在解决方案资源管理器中将Test设为启动项。 2.将计算机ip设为192.168.1.1 3.运行。 核心代码在Test->Form1.cs中 对激光采集一帧数据的811个点,通过设置left_range和right_range,用点的序号设置显示点的范围; ground_truth_height:激光到"地面"的标准高度 static int min_num_point_of_hinder :判定为障碍物的最少点的数目 button1_Click():开始扫描 在this.Invoke(new Action(()=>中进行循环采集 解析好的811个点的x,y坐标分别存放在listx,listy中 listy通过kalmanFilter()进行卡尔曼滤波 dataFilter():对激光数据在相邻三个点之间去平均的方式进行滤波,还具备报警功能,如果滤波后依然有连续三帧数据 存在“有大于min_num_point_of_hinder个点与ground_truth_height之间距离大于30mm”的情况,则报警,在界面 的“障碍物”后面显示为True. InitChart()是界面显示部分 this.chart1.ChartAreas[0].AxisX/Y.Minimum : 坐标轴最小值 this.chart1.ChartAreas[0].AxisX/Y.Maximum : 坐标轴最大值 this.chart1.ChartAreas[0].AxisX/Y.Interval :网格大小 this.chart1.Series[0].Points.AddXY:显示激光点