1.一种批量条码定位方法,其特征在于,包括如下步骤:
步骤1:从慢速运动场景中连续获取目标图像,目标图像是含有批量条码的图像,并构成含有三张图像的图像集;
步骤2:依次使用目标检测方法对图像集中的所有条码进行定位,并获取定位信息所对应的矩形框和中心坐标;
步骤3:若判定当前时刻产生了系统解码需求触发信号,按照步骤4继续执行;若判定当前时刻未产生系统解码需求触发信号,按照步骤6继续执行;
步骤4:根据步骤2中对图像集获取的信息,估算出下一时刻获取的图像中每个条码所对应的中心坐标、旋转角度;
步骤5:根据步骤2中对图像集获取的信息,估算出下一时刻获取的图像中每个条码所对应的定位信息矩形框大小;
步骤6:更新图像集,返回步骤2继续执行;所述步骤1中,所述图像为通过扫码器获取的低像素图像,用于对图像上的条码进行定位;所述步骤4包括以下过程:步骤41,根据步骤2中对图像集中三张图像所获取的信息,以图论进行关联形成每个条码的运动轨迹的最佳匹配;步骤42,利用每个运动轨迹估算该轨迹中的条码在下一时刻所对应的中心坐标、旋转角度;步骤41中以图论进行关联的过程包括:将较先获取的图像中的所有条码对应的中心坐标构建为第一数据图,将较后获取的图像中的所有条码对应的中心坐标构建为第二数据图,所述第一数据图和第二数据图均包括节点和连接节点的边,其中节点代表条码的中心坐标位置,边代表两个节点之间的距离;
将第一数据图和第二数据图中的节点进行匹配:分别计算第一数据图和第二数据图中各个节点与其周围其他节点的相对距离,通过每个节点与周围节点距离的固有关系,完成第一数据图和第二数据图中的节点匹配;当第一数据图和第二数据图中某个节点位于图结构中心,第一数据图和第二数据图均构成关于图结构中心节点的对称图时,将第一数据图的每个节点和第二数据图的任一节点进行匹配,获取多种匹配方式,分别计算多种匹配方式中第一数据图中每个节点到第二数据图中相匹配节点的距离和,距离和最小的匹配方式为最佳匹配方式。
2.如权利要求1所述的批量条码定位方法,其特征在于,步骤42中利用每个运动轨迹估算该轨迹中的条码在下一时刻所对应的中心坐标、旋转角度的过程包括:(1)构建数据集:获取含有条码的连续四帧图像的集合,获取每个集合中的第一帧图像的R分量数据、第二帧图像的G分量数据、第三帧图像的B分量数据,并将该三帧图像中对应的目标条码按照绝对位置进行叠加,同时将第四帧图像中条码的中心坐标和对应的4个边角的坐标作为当前数据的标注,构建轨迹数据集;
(2)基于卷积神经网络构建深度学习框架,并以所构建的数据集作为输入进行训练,获得可预测慢速运动场景中条码运动轨迹所对应的中心坐标和4个边角的坐标的网络框架;
(3)基于构建的网络框架,分别以最佳匹配的连续三帧图像中各个条码的R、G、B通道叠加构成的图像为输入,预测输出第四帧图像中相应条码的中心坐标和4个边角的坐标,并计算旋转角度。
3.如权利要求1所述的批量条码定位方法,其特征在于,所述步骤5中根据步骤2中对图像集获取的信息,估算出下一时刻获取的图像中每个条码所对应的定位信息矩形框大小的方法为:获取每个运动轨迹所对应的条码在图像集的三张图像中的每个定位信息矩形框的水平长度和垂直长度,并对比每个定位信息矩形框的水平长度,估算下一时刻获取图像中条码的定位信息矩形框的水平长度;对比每个定位信息矩形框的垂直长度,估算下一时刻获取图像中条码的定位信息矩形框的垂直长度。
4.如权利要求1所述的批量条码定位方法,其特征在于,所述步骤6中,更新图像集的具体方法为:去除当前时刻所构成的图像集中的第一张图像,并在获得下一时刻含有多个条码的图像后,构成新的连续三张图像的图像集。
5.一种批量条码识别系统,其特征在于,包括:
扫码器,用于获取含有多个条码的图像,并将多个条码的图像传输至定位服务器,并根据定位服务器返回的相关位置信息完成多个条码的解码;
定位服务器,用于执行所述权利要求1‑4任一种批量条码定位方法的步骤,定位扫码器传输的图像中的多个条码的相关位置,并将这些位置信息返回给所述扫码器。
6.如权利要求5所述的批量条码识别系统,其特征在于,所述扫码器包括:
低像素摄像头模块,在扫码器握持触发信号产生之后会一直处于运行状态,并持续产生含有多个条码的低像素图像,并传输至控制与通信模块;
高像素摄像头模块,用于产生含有多个条码的高像素图像,并传输至高速数据分配模块;
控制与通信模块,用于从低像素摄像头模块获取含有多个条码的低像素图像,运行两帧差分算法检测图像变化,并将变化图像传输至无线通信模块,用于从无线通信模块获取相关坐标位置及解码所需旋转角度,用于从解码模块获取条码的解码信息,用于与高速数据分配模块和显示模块交互;
无线通信模块,用于将所述含有多个条码的低像素图像传输至定位服务器,并从所述定位服务器获取含有多个条码的低像素图像中每个条码的坐标位置及解码所需旋转角度,并将该信息回传至控制与通信模块;
解码模块,由多个解码子模块构成,具有数据存储功能,用于对条码进行解码;
高速数据分配模块,在控制与通信模块控制下,用于从高像素摄像头模块获取含有多个条码的高像素图像,并根据解码子模块数量,采用聚类算法,将分割为多组的条码图像传输到解码模块;
显示模块,用于显示解码触发状态、解码信息。