1.一种基于图像处理技术的玻璃液体温度计自动读数方法,其特征在于:对采集的包含有玻璃液体温度计的刻度线、感温液柱和刻度值的图像进行处理,包括以下步骤:步骤1:对原始图像进行图像二值化处理;
步骤2:获取部分温度计刻度线,计算长刻度线的长度和短刻度线的长度;
步骤3:获取短刻度线中心坐标,并求取短刻度线中心坐标拟合成的直线的倾角;
步骤4:获取感兴趣区域子图像并进行摆正处理;
步骤5:获取刻度线区域子图像和刻度值区域子图像;
步骤6:在刻度线区域子图像求取各刻度线的中心横坐标以及感温液柱截止点的横坐标,并确定与此截止点最邻近的左右两条刻度线;
步骤7:对刻度值区域子图像中最左侧的刻度值进行字符识别,并寻找与该刻度值区域中心横坐标最近的主刻度线;
步骤8:根据温度计的分度值、感温液柱截止点与各刻度线的位置关系,计算得到玻璃液体温度计的最终读数;
所述步骤2具体是:1)在二值化处理后的图像中进行轮廓检测;2)根据各轮廓的最小外接矩形的几何特征筛选出刻度线,并根据刻度线的长度进行降序排序;3)将降序排列后的刻度线中第1条刻度线的长度定位为长刻度线的长度,将降序排列后的刻度线总数的后p%的刻度线的长度均值作为短刻度线的长度,p在50~70间取值;
所述步骤3中采用最小二乘法对短刻度线中心坐标进行线性拟合得到拟合直线;
所述步骤5中获取刻度线区域子图像和刻度值区域子图像的方法为:在摆正后的感兴趣区域图像中截取长刻度线上端点和下端点间的图像得到刻度线区域子图像;在摆正后的感兴趣区域图像中截取长刻度线下端点以下部分图像得到刻度值区域子图像;
所述步骤6中求取各刻度线的中心横坐标的方法具体为:按从左到右的顺序统计刻度线区域子图像每列像素非0像素个数并存入长度为刻度线区域子图像列数的数组,按数组元素索引号从小到大的顺序搜索各数组元素值,如果数组元素值大于短刻度线长度的一半,则此数组元素索引号即为第一条刻度线的左侧横坐标,继续向后搜索,直到数组元素值小于短刻度线长度的一半,则此数组元素的前一个元素对应的索引号为第一条刻度线的右侧坐标,求取将第一条刻度线的左侧横坐标和第一条刻度线的右侧横坐标的均值,得到第一条刻度线的中心横坐标;依照求取第一条刻度线的中心横坐标的方法依次向后搜索,直到遍历数组所有元素,则得到从左至右顺序排列的全部刻度线中心横坐标;
所述步骤6中确定感温液柱截止点横坐标的方法为:按从左到右的顺序统计刻度线区域子图像每列像素中非0像素个数并存入长度为刻度线区域子图像列数的数组,数组元素值从非0变到0时的数组元素下标即为感温液柱截止点的横坐标;
所述步骤7具体包括以下步骤:71)在刻度值区域子图像中进行轮廓检测,获得刻度值字符轮廓;72)求取各字符轮廓外接矩形中心,合并中心横坐标差值小于200像素的轮廓,再求取合并轮廓的外接矩形中心;73)将轮廓合并后的所有轮廓外接矩形中心横坐标按照升序排列,外接矩形横坐标最小的轮廓的外接矩形区域即为最左端的刻度值区域;74)对最左端的刻度值区域中数字进行识别;75)将最左端的刻度值区域中心横坐标与步骤6中获得的各刻度线的中心横坐标逐一进行比较,差值最小的刻度线即为与最左端刻度值区域最近的主刻度线;
所述步骤74)中采用支持向量机对最左端的刻度值各数字进行识别,采用10进制加权法对刻度值进行计算;
所述步骤8中玻璃液体温度计的最终读数t可通过下式计算得到:
t=sv+dv×(tip+tdp)
其中,sv为最左侧的刻度值;dv为温度计分度值;tip为根据感温液柱截止点最邻近的左刻度线line1与最左侧的刻度值sv对应的刻度线line0的位置序号差值;tdp为感温液柱截止点所在的最近邻的两条刻度线line1和line2间的感温液柱长度与此两条刻度线间距的比值。