matlab多车道车辆进出检测算法GUI界面设计与实现

1、内容简介


282-可以交流、咨询、答疑

2、内容说明

本次仿真使用Matlab绘制GUI来对车辆进出进行模拟。

仿真界面(GUI):

图4 仿真界面

仿真界面的介绍:

GUI左侧显示了两组车道L1,L2,红外对射、车辆。L11,L12模拟L1车道里面的两对红外。L21,L22模拟L2车道里面的两对红外,用蓝色方框模拟车辆。就拿单车道来说(以L1为例),L11和L12是L1车道中的两组红外对射模块。用M(a,b)标记两组红外的状态a标记L11,b标记L12。蓝色表示红外对射未被车辆遮挡,红色表示红外对射被车辆遮挡。GUI右侧显示了车辆进出的情况,是哪个车道有车辆进出,是进入还是驶出,以及是否异常。

  1. 车辆驶入矿仓的情形:

    M(1,1)->M(0,1)->M(0,0)->M(1,0)->M(1,1)

①初始状态:

如图5所示,初始时,L11,L12都没有被车辆遮挡,此时L11,L12都用蓝色表示(蓝色表示红外对射未被车辆遮挡),标记为M(1,1)。

②当车辆刚开始进入矿仓时:

如图6所示,车辆先是遮挡L11但并未遮挡L12,此时将L11由蓝色变为红色(红色表示红外对射被车辆遮挡),L12未被遮挡,依旧用蓝色表示(蓝色表示红外对射未被车辆遮挡),标记为M(0,1)。

③如图7所示的进入状态:

车辆遮挡L11和L12,此时将L11和L12都用红色表示(红色表示红外对射被车辆遮挡),标记为M(0,0)。

                   

④如图8所示即将驶离红外对射模块:

车辆遮挡L12并没有遮挡L11,此时将L12用红色表示(红色表示红外对射被车辆遮挡),L11用蓝色表示(蓝色表示红外对射未被车辆遮挡),标记为M(1,0)。

   ⑤如图9所示,车辆完全驶入矿仓:

         

  1. 车辆驶出矿仓的情形:

     M(1,1)->M(1,0)->M(0,0)->M(0,1)->M(1,1)

 ①如图10所示,车辆在矿仓中:

L11,L12均未被遮挡,都用蓝色表示(蓝色表示红外对射未被车辆遮挡)。

          

②如图11所示,车辆在矿仓中刚开始驶出:

车辆遮挡L12但并没有遮挡L11,此时将L12用红色表示(红色表示红外对射被车辆遮挡),L11用蓝色表示(蓝色表示红外对射未被车辆遮挡),标记为M(1,0)。

③如图12所示的状态:

车辆遮挡L11和L12,此时将L11和L12都用红色表示(红色表示红外对射被车辆遮挡),标记为M(0,0)。

④当车辆即将驶出红外对射模块时:

如图13所示,车辆遮挡L11但并未遮挡L12,此时将L12由红色变为蓝色(蓝色表示红外对射未被车辆遮挡),L11依旧被遮挡,依旧用红色表示(红色表示红外对射被车辆遮挡),标记为M(0,1)

⑤车辆完全驶出矿仓中的状态:

如图14所示,在矿仓中时,L11,L12都没有被车辆遮挡,此时L11,L12都用蓝色表示(蓝色表示红外对射未被车辆遮挡),标记为M(1,1)。

                   

整个仿真过程先用guide绘制整体框架以及按键生成.fig文件,然后在.m文件里做出每个车道进出的情形,按键通过callback函数进行触发,具体每个状态的描绘代码见附录。

3、仿真分析

 

4、参考论文


 

猜你喜欢

转载自blog.csdn.net/qingfengxd1/article/details/125172838