CN109145899B - 一种汽车仪表指针提取方法 - Google Patents
一种汽车仪表指针提取方法 Download PDFInfo
- Publication number
- CN109145899B CN109145899B CN201810852762.2A CN201810852762A CN109145899B CN 109145899 B CN109145899 B CN 109145899B CN 201810852762 A CN201810852762 A CN 201810852762A CN 109145899 B CN109145899 B CN 109145899B
- Authority
- CN
- China
- Prior art keywords
- pointer
- picture
- extracting
- instrument
- meter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/02—Recognising information on displays, dials, clocks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种汽车仪表指针提取方法,涉及汽车仪表技术领域。本发明包括S1,获取待提取指针的仪表图片;S2,获取待提取指针的仪表图片的仪表背景图片;S3,通过将待提取指针的仪表图片与仪表背景图片进行帧差检测,提取仪表图片与背景图片的差异部分;S4,对差异部分进行二值化处理;S5,计算二值化处理后的连通域得出指针大致的区域:S6,计算指针的最佳端点,S7,连接计算得出的最佳两端点即为指针指向信息。本发明可以快速、准确的找到仪表中指针的位置区域、指向方向且稳定性高、误差小且十分高效。
Description
技术领域
本发明属于汽车仪表技术领域,特别是涉及一种汽车仪表指针提取方法。
背景技术
在智能化自动化的时代,很多企业也在不断的引进自动化设备,其中包括组合仪表设备。组合仪表设备是一种对汽车、摩托车的仪表进行自动检测的设备,包括自动检测仪表运行状态的功能。汽车、摩托车仪表中指针包含了大量的运行状态的信息,所以检测仪表的运行状态时获取仪表指针的情况就十分重要。目前获取仪表指针信息的方法大多是通过人工来识别寻找,误差大,稳定性差且效率低下。
如何高效准确的获取仪表指针信息是目前本领域亟待解决的问题之一。
发明内容
本发明为解决背景技术中所提出的问题,提供了一种汽车仪表指针提取方法。
本发明是通过以下技术方案实现的:
本发明为一种汽车仪表指针提取方法,包括如下步骤;
S1,获取待提取指针的仪表图片;
S2,获取待提取指针的仪表图片的仪表背景图片;
S3,通过将待提取指针的仪表图片与仪表背景图片进行帧差检测,提取待提取仪表图片与背景图片的差异部分;
S4,对差异部分进行二值化处理;
S5,计算二值化处理后的连通域得出指针大致的区域:
设定图片像素为F(x,y),通过逐行扫描确定像素块的边界部分,因为是二值化处理后的,故图片只有0与1两种状态;则边界点确定的方法公式为:F(x,y-1)=0且F(x,y)=1,确定出所有的边界点则连通域即可确定;
S6,计算指针的最佳端点:
S611,获取指针连通域的最小外接矩形,再求出最小外接矩形的四个角点设为ag1、ag2、ag3、ag4;
S612,获取待提取指针的仪表图片的中心点设为center;
S613,分别获取ag1、ag2、ag3、ag4到center的距离,记为A、B、C、D;
S614,循环遍历比较A、B、C、D,得出最大的两个值记为(pt_far1、pt_far2)和最小的两个值记为(pt_near1、pt_near2);
S615,利用双层循环,外层循环从pt_near1-pt_near2遍历,求所有近端点pt1,内层循环从pt_far1-pt_far2遍历,求所有远端点pt2;
S616,计算pt1到pt2的长度记为len;
S617,循环遍历len计算len上的垂点记为pt3,遍历以pt3为垂足的垂线,求垂线上,pt3两侧的对称点p1、p2,如果p1、p2在图像中位置的像素值都为255,则统计数量currSymmetric加1;
S618,步骤S615-S617共有4层循环,每次循环开始currSymmetric都会清零,找到currSymmetric值最大的一次循环,此时的pt1、pt2就是要找的指针的两端点;
S7,连接计算得出的最佳端点即为指针指向信息。
进一步地,所述步骤S4中还包括如下步骤:
S411,对差异部分进行降噪处理。
进一步地,所述步骤S5中还包括如下步骤:
S511,修复可能出现的指针断裂情况;通过计算所述连通域的外接矩形大致上得出指针的角度,通过所述角度上的不连续部分填充二值化处理后的前景像素,即可完成指针连通域的断裂修复。
进一步地,所述步骤S612中center的获取方式为:待提取指针的仪表图片的width/2=x,height/2=y。
进一步地,所述步骤S613中A、B、C、D的获得通过公式:sqrt(float(ag.x-center.x)*(ag.x-center.x)+float(ag.y-center.y)*(ag.y-center.y))。
进一步地,所述仪表背景图片的获取通过采集仪表在相机同一位置下拍摄的n张不同状态的图片,且n为大于等于3的自然数;选取第一张图片为基准图片,分别提取基准图片与其他n-1张图片的差异部分得到第一差异部分、第二差异部分、第三差异部分…第n-1差异部分;提取第一差异部分、第二差异部分、第三差异部分…第n-1差异部分的共同部分,记为第一共同部分;从除基准图片之外的任一张图片上提取第一共同部分对应的像素逐个替换到基准图片相应的位置即可。
本发明具有以下有益效果:
本发明可以快速、准确的找到仪表中指针的位置区域、指向方向且稳定性高、误差小且十分高效。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明汽车仪表指针提取方法的步骤流程图;
图2为本发明中计算指针的最佳端点的步骤流程图;
图3为本发明中待提取指针的仪表图片;
图4为图3中待提取指针的仪表图片的背景图;
图5为本发明中差异部分进行二值化处理后的图;
图6为图5中差异部分进行降噪处理后的图;
图7为指针断裂断裂图;
图8为指针断裂修复后的图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1所示,本发明为一种汽车仪表指针提取方法,包括如下步骤:S1,获取待提取指针的仪表图片,参阅图3所示;
S2,获取待提取指针的仪表图片的仪表背景图片;此仪表背景图片中不带指针,参阅图4所示;
S3,通过将待提取指针的仪表图片与仪表背景图片进行帧差检测,提取待提取仪表图片与仪表背景图片的差异部分;原理是通过计算两张图片中相同位置的像素差值绝对值来获取差异信息,如果差异为0则表示无差异;
S4,对差异部分进行二值化处理;具体的设采样图片为Img,背景图片为Back,像素采用二维的方式表示,则差异值diff=Abs(Img(x,y)-Back(x,y));本质上就是一个减法公式,应用领域从数学变成了图片,图片在计算机中表示的方式为RGB三组数值组合表示像素,每组数值的区间为0-255表示深度,使用反直角坐标系体系组合像素表示为图片,因此使用减法计算两张图片从坐标(0,0)-(width,heigth)的差,那么结果的绝对值就是两组图片之间的差异部分。本法发明中对差异部分进行二值化处理后得到的是一张带有指针和一些细小噪点的差值结果图片,参阅图5所示。
S5,计算二值化处理后的连通域得出指针大致的区域:
设定图片像素为F(x,y),通过逐行扫描确定像素块的边界部分,因为是二值化处理后的,故图片只有0与1两种状态;则边界点确定的方法公式为:F(x,y-1)=0且F(x,y)=1,确定出所有的边界点则指针连通域即可确定;
S6,计算指针的最佳端点:参阅图2所示,
S611,获取指针连通域的最小外接矩形,再求出最小外接矩形的四个角点设为ag1、ag2、ag3、ag4;
S612,获取待提取指针的仪表图片的中心点设为center;具体的center为待提取指针的仪表图片的width/2=x,height/2=y;
S613,分别获取ag1、ag2、ag3、ag4到center的距离,记为A、B、C、D;具体的,A、B、C、D使用使用公式:sqrt(float(ag.x-center.x)*(ag.x-center.x)+float(ag.y-center.y)*(ag.y-center.y))获得,公式为一个计算两点之间距离的计算公式在计算机编程中的伪代码表示,如果使用标准数学公式则为sqrt((p1.x-p2.x)^2+(p1.y-p2.y)^2。
S614,循环遍历比较A、B、C、D,得出最大的两个值记为(pt_far1、pt_far2)和最小的两个值记为(pt_near1、pt_near2);具体的循环遍历过程为现有技术不再赘述。
S615,利用双层循环,外层循环从pt_near1-pt_near2遍历,求所有近端点pt1,内层循环从pt_far1-pt_far2遍历,求所有远端点pt2;
S616,计算pt1到pt2的长度记为len;同时计算pt1、pt2形成直线的斜率,具体的斜率公式为:slope=-(pt1.x-pt2.x)/(pt1.y-pt2.y+0.000001f);
S617,循环遍历len计算len上的垂点记为pt3,遍历以pt3为垂足的垂线,求垂线上,pt3两侧的对称点p1、p2,如果p1、p2在图像中位置的像素值都为255(白色),则统计数量currSymmetric加1;具体的,pt3的计算是在步骤S615的双循环里面。
S618,步骤S615-S617共有4层循环,每次循环开始currSymmetric都会清零,找到currSymmetric值最大的一次循环,此时的pt1、pt2就是要找的指针的最佳两端点;
S7,连接计算得出的最佳端点即为指针指向信息。
其中,步骤S4中还包括如下步骤:S411对差异部分进行降噪处理,具体降噪处理放置在对差异部分二值化处理后,对二值化后的差异部分进行降噪处理,结果参阅图6所示。因为待提取指针的仪表图片与仪表背景图片拍摄时间、环境之间的差异,在将待提取指针的仪表图片与仪表背景图片进行帧差检测,提取仪表图片与仪表背景图片的差异部分时,差异部分中除了包含指针信息外还会包含一些噪点信息,这些信息是无用的,且会对后续步骤中的操作精度产生影响,因此需要对差异结果进行降噪处理。具体的,使用形态学中的腐蚀和膨胀处理,可以在保证需要的信息不受较大影响的情况下,对结果进行降噪处理,处理过程是对待降噪图片进行2*2的腐蚀处理,过滤掉大小小于2*2的连通域,在过滤较小连通域的同时腐蚀操作也会对其余不需要过滤的连通域产生影响,因此还需要对腐蚀结果进行一次2*2的膨胀处理,即可使的腐蚀操作对需要提取的信息影响减小的最低。腐蚀是指对非空(黑色认定为空)的像素连通块(像素连通块指一块连续像素集合没有断开的情况)进行边缘的消除操作部分像素操作,文中的2*2腐蚀处理,2*2表示一个长度2像素宽度2像素的矩形方块,也就是说文中的2*2腐蚀操作是指消除掉像素连通块中边缘部分2*2的像素块,文中的细小噪点长度或者宽度中通常大小不会超出2个像素,所以会被过滤掉。膨胀和腐蚀相反,会在像素连通块边缘添加部分像素操作,所以使用相同大小的2*2的矩形块进行膨胀操作能够消除腐蚀操作对正常像素块的影响。
其中,步骤S5中还包括如下步骤:S511,修复可能出现的指针断裂情况参阅图7所示;通过计算所述连通域的外接矩形大致上得出指针的角度,通过所述角度上的不连续部分填充二值化的前景像素(白色像素),即可完成指针连通域的断裂修复,参阅图8所示。因为使用二值化获取的指针区域信息,涉及到指针和仪表数字重叠且阈值差异不是非常大的情况下,指针会在与数字重叠的部分出现断裂或者连同数字一起被提取的情况。通过对二值化操作的阈值的控制(数字和指针的阈值的中间值),使得在指针和数字重叠时的连通域只会出现断裂的情况。具体的,过对图片中的连通域进行合并(主要是指针碎片之间的合并),使用连通域之间相加即可,得出大致指针区域的连通域,通过计算该连通域的外接矩形大致上得出指针的角度,通过遍历指针角度上的前景像素数量,在大于平均阈值且出现像素不连续的情况下,即可断定为指针断裂。
进一步地,步骤S612中center的获取方式为:待提取指针的仪表图片的width/2=x,height/2=y。
进一步地,所述步骤S613中A、B、C、D的获得通过公式:sqrt(float(ag.x-center.x)*(ag.x-center.x)+float(ag.y-center.y)*(ag.y-center.y))。
进一步地,所述仪表背景图片的获取通过采集仪表在相机同一位置下拍摄的n张不同状态的图片,且n为大于等于3的自然数;选取第一张图片为基准图片,分别提取基准图片与其他n-1张图片的差异部分得到第一差异部分、第二差异部分、第三差异部分…第n-1差异部分;提取第一差异部分、第二差异部分、第三差异部分…第n-1差异部分的共同部分,记为第一共同部分;从除基准图片之外的任一张图片上提取第一共同部分对应的像素逐个替换到基准图片相应的位置即可。
在本说明书的描述中,参考术语“一个实施例”、“示例”、“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (6)
1.一种汽车仪表指针提取方法,其特征在于,包括如下步骤;
S1,获取待提取指针的仪表图片;
S2,获取待提取指针的仪表图片的仪表背景图片;
S3,通过将待提取指针的仪表图片与仪表背景图片进行帧差检测,提取待提取仪表图片与仪表背景图片的差异部分;
S4,对差异部分进行二值化处理;
S5,计算二值化处理后的连通域得出指针大致的区域:
设定图片像素为F(x,y),通过逐行扫描确定像素块的边界部分,因为是二值化处理后的,故图片只有0与1两种状态;则边界点确定的方法公式为:F(x,y-1)=0且F(x,y)=1,确定出所有的边界点则连通域即可确定;
S6,计算指针的最佳端点:
S611,获取指针连通域的最小外接矩形,再求出最小外接矩形的四个角点设为ag1、ag2、ag3、ag4;
S612,获取待提取指针的仪表图片的中心点设为center;
S613,分别获取ag1、ag2、ag3、ag4到center的距离,记为A、B、C、D;
S614,循环遍历比较A、B、C、D,得出最大的两个值记为(pt_far1、pt_far2)和最小的两个值记为(pt_near1、pt_near2);
S615,利用双层循环,外层循环从pt_near1-pt_near2遍历,求所有近端点pt1,内层循环从pt_far1-pt_far2遍历,求所有远端点pt2;
S616,计算pt1到pt2的长度记为len;
S617,循环遍历len计算len上的垂点记为pt3,遍历以pt3为垂足的垂线,求垂线上,pt3两侧的对称点p1、p2,如果p1、p2在图像中位置的像素值都为255,则统计数量currSymmetric加1;
S618,步骤S615-S617共有4层循环,每次循环开始currSymmetric都会清零,找到currSymmetric值最大的一次循环,此时的pt1、pt2就是要找的指针的最佳两端点;
S7,连接计算得出的最佳两端点即为指针指向信息。
2.根据权利要求1所述的一种汽车仪表指针提取方法,其特征在于,所述步骤S4中还包括如下步骤:
S411,对差异部分进行降噪处理。
3.根据权利要求1所述的一种汽车仪表指针提取方法,其特征在于,所述步骤S5中还包括如下步骤:
S511,修复可能出现的指针断裂情况;通过计算所述连通域的外接矩形大致上得出指针的角度,通过所述角度上的不连续部分填充二值化处理后的前景像素,即可完成指针连通域的断裂修复。
4.根据权利要求1所述的一种汽车仪表指针提取方法,其特征在于,所述步骤S612中center的获取方式为:待提取指针的仪表图片的width/2=x,height/2=y。
5.根据权利要求1所述的一种汽车仪表指针提取方法,其特征在于,所述步骤S613中A、B、C、D的获得通过公式:sqrt(float(ag.x-center.x)*(ag.x-center.x)+float(ag.y-center.y)*(ag.y-center.y))。
6.根据权利要求1所述的一种汽车仪表指针提取方法,其特征在于,所述仪表背景图片的获取通过采集仪表在相机同一位置下拍摄的n张不同状态的图片,且n为大于等于3的自然数;选取第一张图片为基准图片,分别提取基准图片与其他n-1张图片的差异部分得到第一差异部分、第二差异部分、第三差异部分…第n-1差异部分;提取第一差异部分、第二差异部分、第三差异部分…第n-1差异部分的共同部分,记为第一共同部分;从除基准图片之外的任一张图片上提取第一共同部分对应的像素逐个替换到基准图片相应的位置即可。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810852762.2A CN109145899B (zh) | 2018-07-30 | 2018-07-30 | 一种汽车仪表指针提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810852762.2A CN109145899B (zh) | 2018-07-30 | 2018-07-30 | 一种汽车仪表指针提取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109145899A CN109145899A (zh) | 2019-01-04 |
CN109145899B true CN109145899B (zh) | 2021-12-07 |
Family
ID=64798321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810852762.2A Active CN109145899B (zh) | 2018-07-30 | 2018-07-30 | 一种汽车仪表指针提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109145899B (zh) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799867B (zh) * | 2012-07-09 | 2015-05-20 | 哈尔滨工业大学 | 基于图像处理的仪表指针转角识别方法 |
US9411445B2 (en) * | 2013-06-27 | 2016-08-09 | Synaptics Incorporated | Input object classification |
CN107167172A (zh) * | 2017-04-17 | 2017-09-15 | 江苏大学 | 一种总线式汽车数字仪表指针功能的在线监测方法 |
CN107239742B (zh) * | 2017-05-11 | 2020-06-09 | 安徽慧视金瞳科技有限公司 | 一种仪表指针刻度值计算方法 |
CN107220645B (zh) * | 2017-05-24 | 2021-02-26 | 河北省计量监督检测研究院 | 基于动态图像处理的水表识别方法 |
CN108121985A (zh) * | 2017-11-21 | 2018-06-05 | 武汉中元华电科技股份有限公司 | 一种基于机器视觉的双指针仪表读数方法 |
-
2018
- 2018-07-30 CN CN201810852762.2A patent/CN109145899B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109145899A (zh) | 2019-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111179243A (zh) | 一种基于计算机视觉的小尺寸芯片裂纹检测方法及系统 | |
CN109472271B (zh) | 印刷电路板图像轮廓提取方法及装置 | |
JP2011191312A (ja) | 画像処理装置 | |
CN113160161B (zh) | 目标边缘处缺陷的检测方法和装置 | |
CN111444964B (zh) | 一种基于自适应roi划分的多目标快速图像匹配方法 | |
CN113340909B (zh) | 一种基于机器视觉的胶线缺陷检测方法 | |
CN109752392A (zh) | 一种pcb板缺陷类型检测系统和方法 | |
CN114519714B (zh) | 一种显示屏脏污缺陷判定的方法和系统 | |
EP1605407A1 (en) | Image processing device | |
CN100494891C (zh) | 摄影测量中亚象素级轮廓线提取方法 | |
CN116485764A (zh) | 一种结构表面缺陷识别方法、系统、终端及介质 | |
CN109741306B (zh) | 应用于危险化学品库房堆垛的图像处理方法 | |
CN112733855B (zh) | 表格结构化方法、表格恢复设备及具有存储功能的装置 | |
CN109145899B (zh) | 一种汽车仪表指针提取方法 | |
CN112036232B (zh) | 一种图像表格结构识别方法、系统、终端以及存储介质 | |
CN100353381C (zh) | 图像检查设备和方法 | |
CN114494323A (zh) | 一种障碍物检测方法、装置、设备及存储介质 | |
CN113378847B (zh) | 字符分割方法、系统、计算机设备和存储介质 | |
CN105930813B (zh) | 一种在任意自然场景下检测行文本的方法 | |
CN110298799B (zh) | 一种pcb图像定位校正方法 | |
CN115511902A (zh) | 一种角点特征提取方法及系统 | |
US6597805B1 (en) | Visual inspection method for electronic device, visual inspecting apparatus for electronic device, and record medium for recording program which causes computer to perform visual inspecting method for electronic device | |
KR20100009452A (ko) | 영상 처리 방법 | |
CN111986169A (zh) | 门窗检测方法、系统、终端以及介质 | |
JP2710685B2 (ja) | 外観検査による欠陥検出方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 230000 Yafu Park, Juchao Economic Development Zone, Chaohu City, Hefei City, Anhui Province Applicant after: ANHUI HUISHI JINTONG TECHNOLOGY Co.,Ltd. Address before: 230000 Room 102, 1st Floor, C District, Science Park, Hefei National University, 602 Huangshan Road, Hefei High-tech Zone, Anhui Province Applicant before: ANHUI HUISHI JINTONG TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |