1.一种条形码识别方法,其特征在于,该方法包括:
A1、将用户终端获取到的条形码图像进行灰度化,对灰度化后的条形码图像进行边缘检测得到边缘图像,对所述边缘图像进行hough线段检测,确定条形码各线段的端点,对各线段进行聚类,利用聚类结果中各线段的端点确定条形码区域的角点;
A2、基于条形码区域的角点对条形码图像进行几何校正,得到标准角度的条形码图像;
S1、对A2得到的条形码图像进行二值化;
S2、对二值化后的条形码图像进行横向投影,根据横向投影值的分布状况定位出字符区域;
S3、将字符区域进行纵向投影,根据纵向投影值的分布状况定位出各字符;
S4、对各字符进行文字识别,并将文字识别结果进行组合得到条形码识别结果。
2.根据权利要求1所述的方法,其特征在于,所述对各线段进行聚类,利用聚类结果中各线段的端点确定条形码区域的角点具体包括:从各线段中选取种子线段,将与种子线段的角度和距离在设定范围内的线段进行聚合;
利用聚合在一起的各线段的起点和终点分别做直线拟合,得到各起点拟合得到的起点线段以及各终点拟合得到的终点线段;
将所述起点线段和终点线段的端点确定为条形码区域的角点。
3.根据权利要求1所述的方法,其特征在于,在所述步骤A2中采用透视变换的方式进行几何校正。
4.根据权利要求1至3任一权项所述的方法,其特征在于,所述步骤S2中根据横向投影值的分布状况定位出字符区域具体包括:确定横向投影值的低谷值点,将低谷值点以下的区域识别为字符区域。
5.根据权利要求4所述的方法,其特征在于,在所述将横向投影值的低谷值点以下的区域识别为字符区域之前还包括:判断所述低谷值点是否位于存在横向投影值区域的上半部分还是下半部分,如果位于上半部分,则将条形码图像进行上下翻转后,执行所述将横向投影值的低谷值点以下的区域识别为字符区域;如果位于下半部分,则继续执行所述将横向投影值的低谷值点以下的区域识别为字符区域。
6.根据权利要求1至3任一权项所述的方法,其特征在于,所述步骤S3中根据纵向投影值的分布状况定位出各字符具体包括:将纵向投影值的低谷值点作为各字符的边界点对字符区域进行分割得到各字符。
7.根据权利要求1至3任一权项所述的方法,其特征在于,在所述步骤S4之后还包括:S5、对所述条形码识别结果采用欧洲物品编码EAN-13校验算法进行校验,如果校验通过,则输出所述条形码识别结果,否则,确定本次条形码识别失败。
8.一种条形码识别装置,其特征在于,该装置包括:
条码区域定位单元,用于将用户终端获取到的条形码图像进行灰度化,对灰度化后的条形码图像进行边缘检测得到边缘图像,对所述边缘图像进行hough线段检测,确定条形码各线段的端点,对各线段进行聚类,利用聚类结果中各线段的端点确定条形码区域的角点;
几何校正单元,用于基于条形码区域的角点对条形码图像进行几何校正,得到标准角度的条形码图像;
图像二值化单元,用于对所述几何校正单元得到的条形码图像进行二值化;
字符区域定位单元,用于对二值化后的条形码图像进行横向投影,根据横向投影值的分布状况定位出字符区域;
字符定位单元,用于将字符区域进行纵向投影,根据纵向投影值的分布状况定位出各字符;
文字识别单元,用于对各字符进行文字识别,并将文字识别结果进行组合得到条形码识别结果。
9.根据权利要求8所述的装置,其特征在于,所述条码区域定位单元具体包括:灰度化子单元,用于将用户终端获取到的条形码图像进行灰度化;
边缘检测子单元,用于对灰度化后的条形码图像进行边缘检测得到边缘图像;
线段检测子单元,用于对所述边缘图像进行hough线段检测,确定条形码各线段的端点;
角点确定子单元,用于对各线段进行聚类,利用聚类结果中各线段的端点确定条形码区域的角点。
10.根据权利要求9所述的装置,其特征在于,所述角点确定子单元在进行聚类和角点的确定时,具体从各线段中选取种子线段,将与种子线段的角度和距离在设定范围内的线段进行聚合;利用聚合在一起的各线段的起点和终点分别做直线拟合,得到各起点拟合得到的起点线段以及各终点拟合得到的终点线段;将所述起点线段和终点线段的端点确定为条形码区域的角点。
11.根据权利要求8所述的装置,其特征在于,所述几何校正单元采用透视变换的方式进行几何校正。
12.根据权利要求8至11任一权项所述的装置,其特征在于,所述字符区域定位单元在定位字符区域时,具体确定横向投影值的低谷值点,将低谷值点以下的区域识别为字符区域。
13.根据权利要求12所述的装置,其特征在于,所述字符区域定位单元在将低谷值点以下的区域识别为字符区域之前还包括:判断所述低谷值点是否位于存在横向投影值区域的上半部分还是下半部分,如果位于上半部分,则将条形码图像进行上下翻转后,执行所述将横向投影值的低谷值点以下的区域识别为字符区域;如果位于下半部分,则继续执行所述将横向投影值的低谷值点以下的区域识别为字符区域。
14.根据权利要求8至11任一权项所述的装置,其特征在于,所述字符定位单元在定位各字符时,具体将纵向投影值的低谷值点作为各字符的边界点对字符区域进行分割得到各字符。
15.根据权利要求8至11任一权项所述的装置,其特征在于,该装置还包括:结果校验单元,用于对所述条形码识别结果采用欧洲物品编码EAN-13校验算法进行校验,如果校验通过,则输出所述条形码识别结果,否则,确定本次条形码识别失败。