一种用于自动饮水机的出水控制方法与流程

文档序号:18624038发布日期:2019-09-06 22:48阅读:1466来源:国知局
一种用于自动饮水机的出水控制方法与流程

本发明涉及机器视觉的技术领域,具体涉及一种用于自动饮水机的出水控制方法。



背景技术:

现阶段,不论是在学校、工厂、医院还是家庭,使用传统饮水机场合的居多。但随着人们对美好生活的向往和追求,传统饮水机已经越来越满足不了人们的要求了。目前市场上普通饮水机在使用过程中,其智能性和安全性存在着明显的缺陷。目前我国饮水机每年的增量在30多万台,并且每台普通饮水机的耗电量很大。那么每年全国将在这方面损失很多电能源。在安全性能上传统饮水机需要人工操纵出水阀出水,一旦疏忽将会出现水溢出纸杯的现象,如若出现热水溢出的情况还会对人体造成较大的伤害。



技术实现要素:

本发明提供了一种用于自动饮水机的出水控制方法,解决了现有自动饮水机不能自动控制出水阀,易出现溢水,对使用者造成伤害等问题。

本发明可通过以下技术方案实现:

一种用于自动饮水机的出水控制方法,包括以下步骤:

步骤一、将透明杯体放入自动饮水机的出水口下方,利用摄像头对所述透明杯体进行拍摄,从拍摄的视频中等时间间隔选取多帧图像;

步骤二、以所述透明杯体的杯口中心点作为图像中心点,选取感兴趣区域roi;

步骤三、对所述roi区域进行边缘检测,获取杯口的内边缘、液面的上边缘;

步骤四、以roi区域的角点为原点建立直角坐标系,计算杯口的内边缘的上边缘与液面的上边缘之间的像素点个数,将所述像素点个数与第二个数阈值做比较;

步骤五、若所述像素点个数小于第二个数阈值,自动饮水机的出水口停止出水,否则,重复步骤二至四,对选取的下一帧图像进行处理。

进一步,对所述roi区域进行边缘检测的方法包括以下步骤:

步骤ⅰ、对所述roi区域进行灰度化处理,利用sobel算子对灰度化后的图像进行边缘提取,找到杯口的外边缘、内边缘、杯壁边缘和液面边缘;

步骤ⅱ、对边缘提取后的roi区域进行二值化处理,计算各个连通区域所包含的像素个数,将各个所述像素个数与第一个数阈值做比较,若小于第一个数阈值,则将对应连通区域内所有像素点的灰度值都置为零;

步骤ⅲ、以所述roi区域的图像中心点作为种子点,设置灰度阈值n,利用区域生长法找到杯口的内边缘;

步骤ⅵ、以所述杯口的内边缘所在的像素点为种子点,设定相同的灰度阈值n,利用区域生长法找到杯口的外边缘,并将所述外边缘所在的像素点的灰度值都置为零。

进一步,在以roi区域的角点为原点的直角坐标系中,沿图像中心点的纵坐标所在直线由roi区域的顶部而底部进行搜索,对灰度值为255的像素点作标记,计算第一标记点与第三标记点之间的像素点个数。

进一步,所述摄像头设置在透明杯体的斜上方,所述出水口下方设置有位置标志,所述位置标志用于指示透明杯体的放置位置。

本发明有益的技术效果在于:

通过在自动饮水机上设置摄像头和位置标识,方便对放入自动饮水机的透明水杯进行拍摄,利用灰度化和二值化的处理方法得到清晰的图像边缘,借助连通区域所包含的像素点统计,剔除干扰噪声,提高了后续计算的准确度,然后利用区域生产法找出杯口的内边缘同时去掉杯口的外边缘,方便后续沿图像中心点的纵坐标所在的直线由上至下进行搜索,从而可以准确找到其与内边缘的上边缘和液面的上边缘的交点,提高计算透明杯体内部的液面离杯口的距离的准确度,本发明的方法简单可靠,算法流程合理,速度快,效率高,准确度高,便于推广应用。

附图说明

图1为本发明的总体流程图;

图2为本发明的摄像头拍摄的原始图像示意图;

图3为本发明的选取roi区域后的图像示意图;

图4为本发明的进行边缘检测后的图像示意图;

图5为本发明的进行二值化和去噪处理后的图像示意图;

图6为本发明的去除杯口外边缘的图像示意图;

图7为本发明的带有标记点的图像示意图。

具体实施方式

下面结合附图及较佳实施例详细说明本发明的具体实施方式。

如图1所示,本发明提供了一种用于自动饮水机的出水控制方法,包括以下步骤:

步骤一、将透明杯体放入自动饮水机的出水口下方,利用摄像头对透明杯体进行拍摄,从拍摄的视频中等时间间隔选取多帧图像,如图2所示。为了简化处理的复杂度,可以在出水口对应的自动饮水机的侧壁上设置白色背景,摄像头设置在透明杯体的斜上方,以拍摄的图像能够看到杯体的底部为准,在出水口的下方设置位置标志,用于指示透明杯体的放置位置,这样,每次放入的透明杯体的位置基本一致,从而确保每次对透明杯体的拍摄都可以得到看见透明杯体的底部的图像,提高后续计算的准确性。

步骤二、为了提高计算速度,以透明杯体的杯口中心点作为图像中心点,选取感兴趣区域roi,如图3所示,对该roi区域进行边缘检测,获取杯口的内边缘、液面的上边缘,具体如下:

首先,对roi区域进行灰度化处理,利用sobel算子对灰度化后的图像进行边缘提取,找到杯口的外边缘、内边缘、杯壁边缘和液面边缘;

由于在灰度图像中计算量比彩色图像少得多,而拍摄到图像为真彩色图像,在能够得到较好效果的前提下,必然优先使用灰度图像。对图像进行rgb模型下的灰度化处理,如果r=g=b,颜色则表示为一种灰度,人眼对绿色敏感度最高,对蓝色敏感度最低,对rgb三分量进行加权平均能得到较为合理的灰度图像,数学模型为公式:

f(i,j)=0.3×r(i,j)+0.59×g(i,j)+0.11b(i,j)

对于图像中变化比较缓慢的区域,相邻的像素的灰度变化不大,因而梯度幅值较小,而在图像的边缘地带,像素的灰度变化剧烈,所以梯度幅值较大,用一阶导数的大小可以确定边缘位置。因此,利用如下所示的sobel算子与转换后的灰度图像做卷积运算,提取出图像内容的边缘如图4所示。

然后、对边缘提取后的roi区域进行二值化处理,计算各个连通区域所包含的像素个数,将各个所述像素个数与第一个数阈值做比较,若小于第一个数阈值,则将对应连通区域内所有像素点的灰度值都置为零;

二值化处理能凸显出目标轮廓,将roi区域的灰度图进行二化值处理可以使杯口轮廓更清晰。选取适当灰度阈值,将图像上所有灰度值小于该灰度阈值的像素点认定为背景或者例外的物体区域,将其灰度值置为零,若大于该灰度阈值,则判定为图像内容的边缘,将其灰度值置为255。由于采集中存在很多干扰,二值化后就会出现如图3中所示有很多的小的白色连通域,这样对检测结果会造成很大影响。因此,需要进行去噪处理,可利用matlab计算出各连通区域所包含的像素个数,选择合适的个数阈值,将所包含的像素个数小于个数阈值的连通区域所有像素点的灰度值都置为零,处理后的结果如图5所示。

最后,以roi区域的图像中心点即杯口的中心点作为种子点,设置灰度阈值n,利用区域生长法找到杯口的内边缘,再以杯口的内边缘所在的像素点为种子点,设定相同的灰度阈值n,同样利用区域生长法找到杯口的外边缘,并将外边缘所在的像素点的灰度值都置为零。这样,在杯口部分就会仅剩下内边缘,如图6所示,减少后续计算液面高度的干扰,提高计算精度。

步骤三、以roi区域的角点为原点建立直角坐标系,沿图像中心点的纵坐标所在直线由roi区域的顶部而底部进行搜索,对灰度值为255的像素点作标记,记为r1、r2、r3,如图7所示,由于杯口处仅有内边缘,所以图像中心点的纵坐标所在直线与图像中的边缘的交点顺序必定是口内边缘的上边缘、下边缘、液面的上边缘等等,因此,通过计算第一标记点r1与第三标记点r3之间的像素点个数,就可以得到液面距离杯口的距离。

步骤四、将该像素点个数与第二个数阈值做比较,若小于个数阈值,说明杯体内部的水就快到到达杯口,自动饮水机的出水口停止出水,否则,重复步骤二至三,对选取的下一帧图像进行处理。

本发明通过在自动饮水机上设置摄像头和位置标识,方便对放入自动饮水机的透明水杯进行拍摄,利用灰度化和二值化的处理方法得到清晰的图像边缘,借助连通区域所包含的像素点统计,剔除干扰噪声,提高了后续计算的准确度,然后利用区域生产法找出杯口的内边缘同时去掉杯口的外边缘,方便后续沿图像中心点的纵坐标所在的直线由上至下进行搜索,从而可以准确找到其与内边缘的上边缘和液面的上边缘的交点,提高计算透明杯体内部的液面离杯口的距离的准确度,本发明的方法简单可靠,算法流程合理,速度快,效率高,准确度高,便于推广应用。

虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,因此,本发明的保护范围由所附权利要求书限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1