利索能及
我要发布
收藏
专利号: 2020105348007
申请人: 桂林电子科技大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-10-14
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于图像识别与用户偏好的智能车位推荐方法,包括车辆定位系统,所述车辆定位系统包括通过网络互连的车载终端、4G网络模块和远程监测中心终端,其特征在于,所述方法包括如下步骤:

1)确定当前用户车辆位置:结合GPS和Google earth的车辆定位软件,车载终端将GPS当前用户车辆定位信息数据经4G网络模块与远程监测中心终端进行数据传输,远程监测中心终端接收到当前用户车辆定位信息数据后,确定当前用户车辆的位置坐标,并在Google earth中对移动车辆实现定位跟踪;

2)车位状态图像识别:车辆定位系统对停车场的现场图片进行采集,并进行车位状态图像识别,找到空闲车位,包括:

2‑1)灰度化图像:对于彩色的RGB图像的像素矩阵,将RGB三个分量平均,得到灰度后的对应位置(i,j)的像素值:f(i,j)=(R(i,j)+G(i,j)+B(i,j))/3;其中,(i,j)表示对应像素点的横坐标i和纵坐标j;

2‑2)去噪:采用小波阈值的图像对灰度化后的图像去噪,设定过滤的阈值,对小波系数进行处理,保留有效的信号系数,再对处理后的小波系数逆变换,得到去噪的结果;

2‑3)基于卷积神经网络的图像分类:将步骤2‑1)、2‑2)预处理后的图像作为输入,输入到具有三层卷积网络结构的卷积神经网络即CNN中,所述CNN网络中每层网络都包括卷积、激活和池化操作,其中,预设定的卷积核大小为5*5,卷积核的深度与卷积后的feature map即特征图像深度相同,池化操作为最大值池化即MAX‑POOLING,激活函数为RELU函数,在三层网络之后设定一个全连接层即FC layer,采用Softmax函数将分类结果和训练集匹配,判断停车场的对应车位是否被占用;

2‑4)对于车牌号的识别:进行字符的分割,对于停车场现场图片灰度化后的车牌矩形框截取字符图块,利用步骤2‑3)中的CNN网络和训练集进行训练,实现字符识别,设定每隔一段时间间隔对停车场的现场车位图像进行采集,以此来实现车位状态的数据实时更新,同时实现对车位状态表中数据的更新,车位状态表包括当前车位的转态是否为空闲,若不是,则要记录所停车的车牌号;

3)推荐车位:首先选择出泊车位的较优特征,即对于泊车位的特征向量集合D,采用遗传算法从中选取d个较优特征,其中,d

3‑1)染色体的初始化:将所有泊车位的特征描述为由0和1字符组成的字符串,其中0表示该特征没被选取,1表示该特征被选取,初始化一个1*D维的列向量作为初始染色体,列向量的每一维都是0,采用随机数的操作将其中d个随机为1,重复这个步骤n次,可以得到有n条染色体的初始种群M(t=0);

3‑2)计算染色体的适应度函数:采用预先定义的适应度函数即所要求的目标函数最优化,计算每条染色体的适应度值f(m);

3‑3)基于适应度的选择:按照选择概率密度p(f(m))对种群的染色体进行采样,依据采样得到的染色体繁殖下一代染色体,组成新一代的种群M(t+1),具体的选择过程如下:

3‑3‑1)计算出所有染色体适应度之和

3‑3‑2)由每个染色体个体的相对适应度大小,即 得到一个新的划分区间

3‑3‑3)在所有di组成一个0‑1的区域,通过随机一个0到1的数字m确定m所位于的区间dk,从而确定出被筛选出的染色体,重复选择n次,可以得到n条染色体;

3‑3‑4)交叉:交叉的意义是产生新一代的个体,过程为:

3‑3‑4‑1)随机选取两条染色体;

3‑3‑4‑2)设置交叉点j;

3‑3‑4‑3)确定两两互换交叉点之后的基因序列,

3‑3‑5)变异:对于当前种群M(t)中的每一条染色体,依据设定的变异概率决定它是否变异,若是,随机地选取该染色体的一个基因进行变异,如果该基因是0则变为1,反之亦然;

3‑3‑6)重复迭代:在经过上述选择、交叉和变异后,上一代的种群M(t)更新为下一代M(t+1),重复步骤3‑3‑2)‑步骤3‑3‑5),直到种群得到的染色体的适应度达到预先设定的阈值,则算法终止,输出适应度最大的染色体,取出其中标号为1的基因所对应的特征集合,就是最终特征选择的结果,然后采用基于协同过滤的算法来实现车位推荐:首先设定一个用户‑车位评价表,包括用户历史停车信息、对应的泊车位和对应的评价打分,用户对所使用的停车位满意度进行打分,打分份数为0‑5分,假设:(1) (2) (nm)

X表示停车位的特征向量,大小为d维的列向量,X=(x ,x ,.....,x ),其中,nm为车位总个数;

(1) (2) (nu)

θ表示用户偏好的特征向量,大小为d维的列向量,θ=(θ ,θ ,.....,θ ),其中,nu为停车用户总个数;

r(i,j):表示用户j对编号为i的车位的评价,0表示没有做出评价,1表示做出了评价;

y(i,j):表示用户j对编号为i的车位的评价得分,当且仅当r(i,j)=1时有定义;

为代价函数,目

标是函数: 的最优化,

(1) (2) (nm)

当给定了变量X=(x ,x ,.....,x ),即对于泊车位,如果知道它们的特征向量组,就可使用特征向量组训练每个停车用户的参数,只需要对进行最优化求解,

(1) (2) (nu)

同样的,当给定了变量θ=(θ ,θ ,.....,θ ),即对于每个用户,如果知道它的偏好特征向量,可使用偏好特征向量训练每个车位的参数,只需要对进行最优化求解,

考虑同时学习出这两个参数,即同时采用梯度下降算法,更新两个参数,即: 不断地迭代,最终

可以得到最优的θ,X;

4)路线规划和导航:假设用户当前的车辆定位为(xstart,ystart),经过上述步骤1)‑步骤

4)得到的目标车位的坐标为(xend,yend),将停车场表示成一个二维的网格,采用实际1平方米对应图中1个点的比例,将停车场的每一个车位抽象成网格图中的一个点,此外,将图中的标杆、柱子、护栏不可通过的部分在网格图中标记为不可经过的点,采用改进的Dijkstra和BFS算法相结合,首先定义:

搜索区域:停车场的搜索区域被划分成一个二维的数组,数组中的每个元素对应一个小网格,将网格的中心点表示为搜索区域节点;

Open List:将规划路径过程中所有待检测的节点存放于Open List中,对于已检测过的网格则存放于Close List中;

父节点:在路径规划中用于回溯的节点,表示双向链表中的父结点的指针;

路径排序:往哪个节点移动由以下公式确定:F(n)=G+H,G代表的是从初始位置A沿着已生成的路径到指定待检测格子的移动代价,H代表的是指定待测格子到目标节点B的估计移动开销;

启发函数:设H为启发函数,在找到唯一路径前,不确定在前面会不会出现障碍物,采用传统的曼哈顿距离作为H的计算方法,也就是横纵向走的距离之和,实施过程步骤为:Step 1.把起点ustart加入Open List;

Step 2:包括:

Step 2‑1:遍历Open List链表,查找F(n)最小值所对应的节点,把该节点作为当前待处理的节点ucurrent,移到Close List链表中;

Step 2‑2:对ucurrent的8个相邻方格即上、下、左、右、左上、右上、左下和右下方格分别进行检查,如果它是不可达的状态或它处在Close List中,直接跳过,否则,假设u'为ucurrent某个方向的邻接方格,进行如下操作:Step 2‑2‑1:如果Open List中没有u',把u'加入Open List中,并且把当前ucurrent设置为它的父节点;

Step 2‑2‑2:如果当前Open List已存在该节点u',需要检查这条路径即经由当前网格ucurrent到达u'是否更近,如果更近,把u'的父节点设置为当前方格ucurrent,并更新u'的G值和F值;

Step 2‑3:搜索停止的两种情况:

1)把终点uend加入到了Open List中,此时路径已经找到了,跳出循环;

2)查找终点uend失败,并且此时Open List为空的,此时表示没有可行的路径方案;

Step3:重复step2,直到跳出循环,此时,从终点开始,每个方格沿着父节点的方向移动直至回溯到起点ustart,形成最终的路径序列{ustart,...,uend},依据这个路径用户自动导航进入停车位,同时对推荐进行评价,使得之后的推荐更加的贴近用户的真实需求。