论文部分内容阅读
在过去的几十年中,字符识别已经有了广泛的研究。目前成熟的字符识别主要有文本文档的字符识别、手写字符的识别和车牌识别等。然而,还有一类特殊的字符识别,涉及从工业和工程部件读取和提取有用信息。但是,此类字符识别在过去的这些年并未得到充分利用。忽略的原因可能是工业自动化字符识别系统的高成本或者是识别的性能低下。但是,随着图像算法技术的不断开发和工业自动化水平的不断提升,这种情况正在逐渐改变。本次研究的主题就是该字符识别方向的应用,文章主要研究了汽车零件上字符的读取与识别。这些字符包含了一些零件型号和零件尺寸等信息,例如有些包含了曲柄轴承直径和滑块孔直径信息的字符,可以确保在发动机的组装过程中选择正确的轴承。针对汽车零件字符识别问题,本文主要展开以下四个部分的研究:首先,针对汽车零件大多是具有三维立体特征的凹凸字符的特点,提出了基于光度立体法的汽车零件字符预处理方法。该方法首先从四个不同方向对物体进行照明收集图片,利用四张采集的图片计算物体三维表面的局部梯度,然后继续计算物体表面的旋度、散度、平均曲率和高斯曲率,最终得到对比度高的灰度图片,提高后面字符识别过程的效率。然后进行的是图像的预处理操作。首先通过二值化处理来获取背景信息较少的图像;然后运用形态学开运算消除图像中的小面积干扰区域;接着利用中值滤波继续减少图像中的干扰噪点;最后结合连通域面积标记法去除图中字符以外的大部分干扰区域。接着,对预处理后的图像进行字符定位与字符分割。第一步进行字符分割前的字符定位操作。目标区域边缘检测利用sobel算子替代canny算子;在目标区域边缘检测完成后,找到目标区域的轮廓且在原图像中画出轮廓;在轮廓获取后再计算其外接矩形,且将外接矩形放缩到合适的大小最终实现字符定位。第二步进行的是字符的粗分割和倾斜校正工作。字符的粗分割主要采用了灰度投影的方法来实现;对图像进行字符的倾斜校正则主要采用中点直线拟合的方法。第三步完成的是单一字符分割和字符归一化的工作。单一字符进行分割主要利用基于列方向的灰度投影法。单一字符分割后实现了字符的归一化,使得字符图像大小变为15×25像素。最后对字符进行了特征提取、识别算法选取和实验与分析。特征提取选取了基于灰度直方图特征和4组不同参数的方向梯度直方图特征共5个不同特征。识别算法则选择了模板匹配算法和BP神经网络算法。实验结果发现BP神经网络算法的识别准确率更高,且在使用同一个识别算法时,特征向量的维度越大,识别准确率越高。最后,将本次实验的结果与其他工业字符识别的实验结果作了比较。实验结果表明本文的识别算法准确率较高。