一种容器液位检测方法、装置及存储介质与流程

专利查询8月前  58



1.本发明涉及液位检测技术领域,特别是涉及一种容器液位检测方法、装置及存储介质。


背景技术:

2.目前,通常采用静压式液位计、浮筒式液位计、浮子式液位计等测量容器内的液位,基本都需要在容器内部或者表面安装各种仪器或装置,存在测量精度不高、校准难且操作繁琐等问题。
3.由于容器本体和液体的比热不同,在容器的红外图像中能够明显看出液位分界线区域,因此,现有技术中对于表面不透明的容器(如油罐)内液体的液位检测,出现了通过红外成像仪获取容器红外图像,通过提取红外图像中液位分界线区域,并基于液位分界线区域获得液位的技术方案。但是,从红外图像上看起来明显的液位分界线区域,通过计算机读取其温度矩阵时却发现液位分界线区域数据点的温度值从上到下呈逐渐递增状态,且增幅非常接近,无法直接准确判断出液位分界线。


技术实现要素:

4.本发明旨在至少解决现有技术中存在的技术问题,特别创新地提出了一种容器液位检测方法、装置及存储介质。
5.为了实现本发明的上述目的,根据本发明的第一个方面,本发明提供了一种容器液位检测方法,包括:获取包含容器的红外温度矩阵;设置滑块,所述滑块在所述红外温度矩阵内滑动;在所述滑块滑动过程中,若滑块内数据点的温度均匀度小于等于/大于温度均匀度阈值,则在所述红外温度矩阵中滤除所述滑块内数据点;在滑块滑动结束后,基于滤除数据点后的红外温度矩阵识别出液位分界线,根据液位分界线获得液位高度。
6.为了实现本发明的上述目的,根据本发明的第二个方面,本发明提供了一种容器液位检测装置,包括:红外温度矩阵获取模块,用于获取包含容器的红外温度矩阵;滑块设置模块,用于设置滑块;滑块,可在所述红外温度矩阵的全部或部分区域内滑动;滤除模块:在所述滑块滑动过程中,若滑块内数据点的温度均匀度小于等于/大于预设的温度均匀度阈值,则在所述红外温度矩阵中滤除所述滑块内数据点;液位获取模块,在滑块滑动结束后,基于滤除数据点后的所述红外温度矩阵识别出液位分界线,根据液位分界线获得液位高度。
7.为了实现本发明的上述目的,根据本发明的第三个方面,本发明提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现本发明第一方面所述容器液位检测方法。
8.综上所述,由于采用了上述技术方案,本发明的有益效果是:基于红外图像实现无接触测量,不再需要在容器内部或者外部安装各种仪器,操作简便并且安全。通过设置滑块
在红外温度矩阵中滑动,根据滑块内数据点的温度均匀度对红外温度矩阵的数据点进行滤除,能够滤除影响液位分界线提取精度的干扰数据点,使得滤除数据点后的红外温度矩阵能更明显、更准确的展现出液位分界线区域并能更简便地提取出液位分界线,进而实现能准确、有效的计算出液面高度,无需人工操作,自动计算液位高度,而非直接从原始红外温度矩阵提取液位分界线。
附图说明
9.图1是本发明一具体实施方式中容器液位检测方法的流程示意图;
10.图2是本发明一具体实施方式中滤除数据点前后的红外温度矩阵对比图;
11.图3是本发明一具体实施方式中方位定义示意图。
12.附图标记:
13.1断层区域;2液位分界线;3标记。
具体实施方式
14.下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
15.在本发明的描述中,需要理解的是,术语“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
16.在本发明的描述中,除非另有规定和限定,需要说明的是,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是机械连接或电连接,也可以是两个元件内部的连通,可以是直接相连,也可以通过中间媒介间接相连,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
17.本发明公开了一种容器液位检测方法,在一种优选实施方式中,如图1所示,具体包括:
18.步骤s1,获取包含容器的红外温度矩阵。
19.在本实施方式中,容器优选但不限于为油罐或油箱,如工业生产环境中的油罐或运输车上的油罐。具体的,可通过热成像仪等红外成像设备获取包含容器的红外图像,获取红外图像对应的红外温度矩阵并存储,红外温度矩阵中的数据点与红外图像中的像素点一一对应,每个数据点的值代表对应像素点的温度值。在红外温度矩阵中标识出容器区域,可采用标记3对容器区域进行标识,如图3所示,标记3优选但不限于为与容器上下边相切的方框,根据标记3获得容器在红外温度矩阵中的高度,记为h。为便于后续计算,测量容器在红外温度矩阵中的尺寸并存储,如高h和宽w。优选地,还存储容器的真实尺寸。可通过人工或工业机器人拍摄红外图像。
20.在本实施方式中,由于工厂环境复杂,油罐往往会被其他管道等障碍物遮挡,如图2和图3中所示。遮挡物给液位分界线2的准确识别带来了一定的干扰和影响。基于此,优选
地,从不同拍摄角度获取包含容器的红外图像,得到多个红外图像,对多个红外图像进行筛选选择遮挡较少的红外图像进行后续的液位分界线2识别。发明人观察到,在红外图像上容器本体特征与遮挡物特征有明显不同,由于遮挡物和容器本体一般不接触,两者存在着明显的温差,因此,在多个红外图像对应的红外温度矩阵中,计算容器区域的温度值方差,选择温度值方差最小的红外温度矩阵进行后续的液位分界线检测,可以获得更加准确的检测结果。
21.在本实施方式中,需要说明的是,获得红外温度矩阵后建立xoy坐标系,如图3所示,红外温度矩阵处于xoy坐标系中,x轴代表了红外温度矩阵的宽度方向,y轴代表了红外温度矩阵的高度方向。
22.步骤s2,设置滑块,滑块在红外温度矩阵内滑动。
23.在本实施方式中,滑块可以是滑动窗口,该滑动窗口优选但不限于为矩形、方形或圆形。滑动窗口可在红外温度矩阵的全区域内滑动进行液位分界线2区域检测,也可在预设区域内滑动进行液位分界线2区域检测。预设区域可根据经验设置,如在容器内液体的使用周期早期,可将预设区域定义为容器上部1/3的区域,若在使用周期中期,预设区域可定义为容器上部2/3的区域,这样能够避免不必要的滑动,减少计算量,加快检测速度。
24.在本实施方式中,滑块的滑动顺序可以任意设置。优选地,为避免漏检和加快检测速度,滑块在红外温度矩阵中按照从左到右、从上到下的顺序滑动,即先从左到右检测第一行(这里的行代表红外温度矩阵中与滑块高度对应的多行数据点),再从左到右检测第二行,依次类推滑动。
25.步骤s3,在滑块滑动过程中,若滑块内数据点的温度均匀度小于等于/大于温度均匀度阈值,则在红外温度矩阵中滤除该滑块内的数据点。当滑块滑动到某处时,计算当前滑块内数据点的温度均匀度,若该温度均匀度小于等于/大于温度均匀度阈值,则滤除当前滑块的内数据点,滤除方式可以是将滑块内的数据点的温度值全部赋值为同一掩码,该掩码优选但不限于为0。
26.在本实施方式中,滑块尺寸太大会导致无法检测出液位分界线2区域(即断层区域1或空洞区域),滑块尺寸太小虽能得到液位分界线2区域,但是运算量会急剧增大,降低检测速度。此外,若能获得液位分界线2区域,要求滑块的高度应小于最后获得的液位分界线2区域高度,因此,可根据经验设置滑块高度,为便于滑块高度设置的普适性,当滑块为矩形时,将滑块尺寸按照如下公式设计,以便确保能过滤出液位分界线2区域:
27.其中,w

表示滑块的宽度;w表示容器在红外温度矩阵中的宽度;kw表示滑块的宽度系数;h

表示滑块的高度;h表示容器在红外温度矩阵中的高度;kh表示滑块的高度系数。
28.在本实施方式中,进一步优选地,可将滑块的尺寸在上述取值范围中随机选取一个数值后,在保证能获得液位分界线区域的前提下不断增大滑块尺寸直到达到计算量最优,进而获得最优的滑块尺寸。
29.在本实施方式中,若滑块内数据点的温度均匀度小于等于温度均匀度阈值,则在
所述红外温度矩阵中滤除滑块内数据点,获得断层区域1,即液位分界线2区域,如图2所示。若滑块内数据点的温度均匀度大于温度均匀度阈值,则在红外温度矩阵中滤除滑块内数据点,在红外温度矩阵中获得代表液位分界线2区域的空洞区域。
30.在本实施方式中,滑块内数据点的温度均匀度优选但不限于为数据点温度值的方差或标准差,由于液位分界线2上下的温度值变化不明显,单从液位分界线2上下的温度值判断液位分界线2存在很大的误差,采用计算比较滑块内数据点的温度值方差的方法能有效减少误差,提高检测准确率。
31.在本实施方式中,温度均匀度阈值的大小会影响液位分界线2区域的识别,若温度均匀度阈值设置太大可能会把液位分界线2区域误判为容器的其他区域(液体区域或空气区域),若温度均匀度阈值设置太小,可能会将其他区域(液体区域或空气区域)误认为时液位分界线2区域。因此,优选地,先为温度均匀度阈值设置一个能保证滤出液位分界线2区域的初始值,该初始值应大于容器的其他区域(上方的空气部分或下方的液体部分)的温度均匀度,逐渐减小温度均匀度阈值直到液位分界线2区域的高度达到最小,这时将当前的设置值作为温度均匀度阈值。根据经验,温度均匀度为数据点温度值的方差时,温度均匀度阈值优选但不限于为0.1(单位:摄氏度),方差v计算公式为:
32.其中,设滑块内有n个数据点,ti表示第i个数据点的温度值,表示滑块内数据点温度值得平均值,i∈[1,n]。
[0033]
步骤s4,在滑块滑动结束后,基于滤除数据点后的红外温度矩阵识别出液位分界线2,根据液位分界线2获得液位高度。
[0034]
在本实施方式中,若在滑块滑动过程中,滤除了温度均匀度小于等于温度均匀度阈值的滑块内数据点,则最后获得的液位分界线2区域在红外温度矩阵中的形式表现为断层区域1,如图2右列所示。若在滑块滑动过程中,滤除了温度均匀度大于温度均匀度阈值的滑块内数据点,则最后获得的液位分界线2区域在红外温度矩阵中的形式表现为空洞区域。优选的,将获取的断层区域1/空洞区域在红外温度矩阵宽度方向(图3中的x轴方向)的中心线或下边界作为液位分界线2。
[0035]
在本实施方式中,在获得液位分界线2后,获取液位分界线2在红外温度矩阵中与容器底部的高度差,记为h。求取h与h的比值,将该比值与存储的容器真实高度相乘获得液位高度。
[0036]
在一种优选实施方式中,为了更好的提取出红外温度矩阵中的温度变化细节,在滑块滑动过程中,滑块在宽度方向的滑动步进小于滑块的宽度,和/或,滑块在高度方向的滑动步进小于滑块的高度。
[0037]
在一种优选实施方式中,为减少运算量,提高检测速度,在滑块滑动过程中,若红外温度矩阵中存在沿宽度方向延伸的连续或间断的断层区域1/空洞区域,则结束滑块滑动。优选的,设置长度阈值,若断层区域1/空洞区域在x轴方向的长度大于等于长度阈值,则认为断层区域1/空洞区域为连续的,若断层区域1/空洞区域在x轴方向的长度小于长度阈值,则认为断层区域1/空洞区域为一个间断的断层区域1/空洞区域,可通过至少两个间断的断层区域1/空洞区域来拟合出液位分界线2。优选的,若区域的宽度大于高度时可认为该区域沿宽度方向延伸。
[0038]
在一种优选实施方式中,当滑块完成红外温度矩阵的全部区域或预设区域后结束滑块滑动。预设区域优选但不限于为容器的上半部或上面1/3区域或上面2/3区域。
[0039]
在一种优选实施方式中,在滑块滑动结束后,基于滤除数据点后的红外温度矩阵识别出液位分界线2,具体包括:
[0040]
步骤一,判断滤除数据点后的红外温度矩阵中是否存在沿宽度方向延伸的连续或间断的断层区域1/空洞区域,图2中右列上方的红外温度矩阵展示了连续的断层区域1,图2中右列下方的红外温度矩阵展示了间断的断层区域1。在容器被遮挡较多时,无法获得连续的断层区域1/空洞区域,需要识别出作为液位分界线2的间断的断层区域1/空洞区域,优选的,若一个以上的分段断层区域1/空洞区域的y轴坐标(如图3所示的y轴)相同或相近,那么这些分段可认为是间断的断层区域1/空洞区域。若y轴坐标差值在预设的差值范围内,则认为一个以上的分段断层区域1/空洞区域的y轴坐标相近。这样能够实现较多遮挡时的准确液位分界线2获取。
[0041]
步骤二,若滤除数据点后的红外温度矩阵中存在沿宽度方向延伸的连续或间断的断层区域1/空洞区域,则停止滑块滑动,获取断层区域1/空洞区域的宽度方向中心线,将宽度方向中心线作为液位分界线2。
[0042]
步骤三,若滤除数据点后的红外温度矩阵中不存在沿宽度方向延伸的连续或间断的断层区域1/空洞区域,则减小滑块尺寸和/或增大温度均匀度阈值后重新在原始红外温度矩阵中滑动获取液位分界线2,直到能够获得在红外温度矩阵宽度方向(图3中的x轴方向)延伸的断层区域1或空洞区域,或者直到获得的断层区域1或空洞区域的高度达到最小时,这样获得的液位分界线2最准确。
[0043]
在本实施方式中,实现了减小滑块尺寸和增大温度均匀度阈值动态调整,以期获得最优的识别结果。在减小滑块尺寸和增大温度均匀度阈值过程中,可以先固定一者,改变另外一者获得较好结果后再改变在先固定的一者,直到获得最优结果。
[0044]
在本发明容器液位检测方法的一种应用场景中,容器为存油的油罐,如图2的下行两个红外温度矩阵和图3所示,油罐内长期存放的石油会析出水分在罐底形成液面,对常规液位计测量会形成干扰,但通过本方法能够识别出两条液位分界线2,两条液位分界线2之间的高度差才是油罐内油量的真实液位,这样测得的油量的液位更准确。
[0045]
本发明还公开了一种容器液位检测装置,该装置包括:红外温度矩阵获取模块,用于获取包含容器的红外温度矩阵;滑块设置模块,用于设置滑块;滑块,可在红外温度矩阵的全部或部分区域内滑动;滤除模块:在滑块滑动过程中,若滑块内数据点的温度均匀度小于等于/大于预设的温度均匀度阈值,则在红外温度矩阵中滤除滑块内数据点;液位获取模块,在滑块滑动结束后,基于滤除数据点后的红外温度矩阵识别出液位分界线2,根据液位分界线2获得液位高度。
[0046]
本发明还公开了一种计算机可读存储介质,存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、所述至少一段程序、代码集或指令集由处理器加载并执行以实现上述容器液位检测方法。
[0047]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不
一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
[0048]
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。

技术特征:
1.一种容器液位检测方法,其特征在于,包括:获取包含容器的红外温度矩阵;设置滑块,所述滑块在所述红外温度矩阵内滑动;在所述滑块滑动过程中,若滑块内数据点的温度均匀度小于等于/大于温度均匀度阈值,则在所述红外温度矩阵中滤除所述滑块内数据点;在滑块滑动结束后,基于滤除数据点后的红外温度矩阵识别出液位分界线,根据液位分界线获得液位高度。2.如权利要求1所述的容器液位检测方法,其特征在于,所述滑块为矩形。3.权利要求2所述的容器液位检测方法,其特征在于,所述滑块的尺寸满足:其中,w

表示滑块的宽度;w表示容器在红外温度矩阵中的宽度;k
w
表示滑块的宽度系数;h

表示滑块的高度;h表示容器在红外温度矩阵中的高度;k
h
表示滑块的高度系数。4.如权利要求1所述的容器液位检测方法,其特征在于,在所述滑块滑动过程中,所述滑块在宽度方向的滑动步进小于滑块的宽度;和/或所述滑块在高度方向的滑动步进小于滑块的高度。5.如权利要求1所述的容器液位检测方法,其特征在于,所述滑块在所述红外温度矩阵中按照从左到右、从上到下的顺序滑动。6.如权利要求1-5中任一项所述的容器液位检测方法,其特征在于,在滑块滑动过程中,若红外温度矩阵中存在沿宽度方向延伸的连续或间断的断层区域/空洞区域,则结束滑块滑动。7.如权利要求1-5中任一项所述的容器液位检测方法,其特征在于,当所述滑块完成红外温度矩阵的全部区域或预设区域内滑动后结束滑动。8.如权利要求7所述的容器液位检测方法,其特征在于,所述在滑块滑动结束后,基于滤除数据点后的红外温度矩阵识别出液位分界线,具体包括:判断滤除数据点后的红外温度矩阵中是否存在沿红外温度矩阵宽度方向延伸的连续或间断的断层区域/空洞区域:若滤除数据点后的红外温度矩阵中存在沿红外温度矩阵宽度方向延伸的连续或间断的断层区域/空洞区域,则停止滑块滑动,获取所述断层区域/空洞区域在红外温度矩阵宽度方向的中心线,将所述中心线作为液位分界线;若滤除数据点后的红外温度矩阵中不存在沿红外温度矩阵宽度方向延伸的连续或间断的断层区域/空洞区域,则减小滑块尺寸和/或增大温度均匀度阈值后重新在原始红外温度矩阵中滑动获取液位分界线。9.一种容器液位检测装置,其特征在于,包括:红外温度矩阵获取模块,用于获取包含容器的红外温度矩阵;滑块设置模块,用于设置滑块;滑块,可在所述红外温度矩阵的全部或部分区域内滑动;
滤除模块:在所述滑块滑动过程中,若滑块内数据点的温度均匀度小于等于/大于预设的温度均匀度阈值,则在所述红外温度矩阵中滤除所述滑块内数据点;液位获取模块,在滑块滑动结束后,基于滤除数据点后的所述红外温度矩阵识别出液位分界线,根据液位分界线获得液位高度。10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至8中任一项所述容器液位检测方法。

技术总结
本发明特别创新地提出了一种容器液位检测方法、装置及存储介质。容器液位检测方法包括:获取包含容器的红外温度矩阵;设置滑块,所述滑块在所述红外温度矩阵内滑动;在所述滑块滑动过程中,若滑块内数据点的温度均匀度小于等于/大于温度均匀度阈值,则在所述红外温度矩阵中滤除所述滑块内数据点;在滑块滑动结束后,基于滤除数据点后的红外温度矩阵识别出液位分界线,根据液位分界线获得液位高度。通过设置滑块在红外温度矩阵中滑动,根据滑块内数据点的温度均匀度对红外温度矩阵中液位分界线提取精度的干扰数据点进行滤除,能准确、有效的计算出液面高度,无需人工操作,自动计算液位高度。液位高度。液位高度。


技术研发人员:朱冬 李欣 杨易 禹浪 方向明 张建
受保护的技术使用者:重庆七腾科技有限公司
技术研发日:2021.12.13
技术公布日:2022/3/8

最新回复(0)