发明内容
本发明的主要目的为提供一种扫地机器人建立场景地图的方法,该方法建立的场景地图中没有运动的物体。
本发明提出一种扫地机器人建立场景地图的方法,包括步骤:
采集图片;
判定所述图片中静止的物体所对应的区域,标记为有效区域;
根据所述图片中有效区域建立场景地图。
进一步地,所述判定所述图片中静止的物体所对应的区域,标记为有效区域的步骤包括:
采用光流法提取所述图片中的运动物体;
将所述运动物体在所述图片对应的区域中忽略,得到图片中剩余的区域为静止的物体所对应的区域,形成所述有效区域。
进一步地,所述根据所述图片中有效区域建立场景地图的步骤包括:
利用摄像头的内参结合所述静止的物体在所述图片中的位置计算所述静止的物体在场景地图中的位置;
根据所述静止的物体在场景地图中的位置建立场景地图。
进一步地,所述利用摄像头的内参结合所述静止的物体在所述图片中的位置计算所述静止的物体在场景地图中的位置的步骤包括:
获取摄像头在所述场景地图中的位置;
根据摄像头的内参,计算出所述静止的物体相对所述摄像头的位置;
根据预设公式,计算得出所述静止的物体在所述场景地图中的位置。
进一步地,所述摄像头的内参包括所述摄像头的焦距和光圈中心。
进一步地,所述根据所述图片中有效区域建立场景地图的步骤包括:
根据所述图片,建立三维坐标体系;
获取所述静止的物体在所述三维坐标体系中的坐标,并在所述三维坐标体系中标记,形成所述场景地图;
所述计算出所述静止的物体相对所述摄像头的位置的步骤包括:
根据指定公式计算出在三维坐标体系中,所述静止的物体相对所述摄像头的坐标[x,y,z],所述指定公式为:
z=d
x=(u-cx)·z/fx
y=(v-cy)·z/fy
其中,fx、fy指摄像头在x,y两个轴上的焦距,cx、cy指像头的光圈中心,[u,v,d]为图片中的像素坐标。
进一步地,所述根据预设公式,计算得出所述静止的物体在所述空间场景地图中位置的步骤包括:
用所述静止的物体相对所述摄像头的坐标[x,y,z]加上所述摄像头在所述三维体系中的坐标,得到所述静止的物体在所述空间场景地图中位置。
本发明还提出一种视觉扫地机器人,包括:
视觉***,用于采集清扫过程中拍摄的图片;
判定***,用于判定所述图片中静止的物体所对应的区域,标记为有效区域;
地图***,根据判定***标记的有效区域建立场景地图。
进一步地,所述判定***包括:
光流模块,用于采用光流法提取所述图片中的运动物体;
忽略模块,用于将所述运动物体在所述图片对应的区域中忽略,得到图片中剩余的区域为静止的物体所对应的区域,形成所述有效区域。
进一步地,所述地图***包括:
内参模块,用于利用摄像头的内参结合所述静止的物体在所述图片中的位置计算所述静止的物体在场景地图中的位置;
建立模块,用于根据所述静止的物体在场景地图中的位置建立场景地图。
进一步地,所述内参模块包括:
位置单元,用于获取摄像头在所述场景地图中的位置;
第一计算单元,用于根据摄像头的内参,计算出所述静止的物体相对所述摄像头的位置;
第二计算单元,用于根据预设公式,计算得出所述静止的物体在所述场景地图中的位置。
进一步地,所述摄像头的内参包括所述摄像头的焦距和光圈中心。
进一步地,所述地图***包括:
坐标体系模块,用于根据所述图片,建立三维坐标体系;
标记模块,用于获取所述静止的物体在所述三维坐标体系中的坐标,并在所述三维坐标体系中标记,形成所述场景地图;
所述第一计算单元包括:
公式子单元,用于根据指定公式计算出在三维坐标体系中,所述静止的物体相对所述摄像头的坐标[x,y,z],所述指定公式为:
z=d
x=(u-cx)·z/fx
y=(v-cy)·z/fy
其中,fx、fy指摄像头在x,y两个轴上的焦距,cx、cy指像头的光圈中心,[u,v,d]为图片中的像素坐标。
进一步地,所述第二计算单元包括:
相加子单元,用于用所述静止的物体相对所述摄像头的坐标[x,y,z]加上所述摄像头在所述三维体系中的坐标,得到所述静止的物体在所述空间场景地图中位置。
与现有技术相比,本发明的视觉扫地机器人建立场景地图,将清扫环境中运动的物体不建立在场景地图中,使建立的场景地图更加准确,使用户在使用时避免将运动的家人或宠物建立在场景地图中,为后续的规划清扫路径提供更高效准确的路径规则。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参照图1,提出本发明一实施例的视觉扫地机器人建立场景地图的方法,包括步骤:
S1、采集图片;
S2、判定所述图片中静止的物体所对应的区域,标记为有效区域;
S3、根据所述图片中有效区域建立场景地图。
本实施例中,视觉扫地机器人的视觉***,可以进行拍照。扫地机器人在清扫时,视觉***拍照,并根据拍摄的照片建立场景地图,在地图中,清扫环境中的各物体都会在地图中体现。例如清扫环境是用户的房子,房子里的桌子、椅子、电视等各种物体均会被视觉***拍摄,然后利用视觉***判断图中的物体是否移动,若物体是移动状态,则判定物体不是属于固定的环境,获取该物体的外形轮廓,将该外形轮廓从图片中剔除掉,判定运动的物体是无效区域,判定静止的物体的外形轮廓对应的区域是有效区域,在建立场景地图时,只获取图片中有效区域的部分。判定图片中静止的物体所对应的区域为有效区域的方法,可以是视觉***分别采集两张图片,将两张图片进行对比,发现物体在图片中位置不一样,则判定物体为运动的物体。
参照图2,进一步的,所述判定所述图片中静止的物体所对应的区域为有效区域的步骤包括:
S21、采用光流法提取所述图片中的运动物体;
S22、将所述运动物体在所述图片对应的区域中忽略,得到图片中剩余的区域为静止的物体所对应的区域,形成所述有效区域。
本实施例中,光流法是给图片中的每个像素点赋予一个速度矢量,形成一个运动矢量场。扫地机器人根据拍摄的图像中各个像素点的速度矢量特征,可以对图像进行动态分析。如果图像中没有运动目标,则光流矢量在整个图像区域是连续变化的。当图像中有运动物体时,目标和背景存在着相对运动。运动物体所形成的速度矢量必然和背景的速度矢量有所不同,如此便可以计算出运动物体在图像中的位置。通过上述步骤将图片中静止物体对应的区域划分出来,确认为有效区域。将图片中运动的物体对应的区域忽略,得到图片中剩余的静止的物体对应的区域,在建立地图中只建立静止的物体对应的区域,忽略运动的物体对应的区域。
参照图3,进一步地,所述根据所述图片中有效区域建立场景地图的步骤包括:
S31、利用摄像头的内参,结合所述静止的物体在所述图片中的位置计算所述静止的物体在场景地图中的位置;
S32、根据所述静止的物体在场景地图中的位置建立场景地图。
本实施例中,摄像头的内参,是指摄像头的内部参数,比如摄像头的焦距、光圈等固定的系数在对应拍摄照片时的数字。利用拍摄照片时摄像头的内参,结合静止的物体在所述图片中的位置,可以计算出静止的物体在场景地图中的位置。计算出静止物体在场景地图中的位置后,根据这些静止物体的位置信息,建立场景地图。
参照图4,进一步地,所述利用摄像头的内参结合所述静止的物体在所述图片中的位置计算所述静止的物体在场景地图中的位置的步骤包括:
S311、获取摄像头在所述场景地图中的位置;
S312、根据摄像头的内参,计算出所述静止的物体相对所述摄像头的位置;
S313、根据预设公式,计算得出所述静止的物体在所述场景地图中的位置。
本实施例中,根据内参计算出静止的物体相对摄像头的位置,再获取视觉扫地机器人的移动路径,可以计算出视觉扫地机器人的摄像头在环境中的位置,再根据预设的公式,即可以计算出图片中静止的物体在环境中的位置,从而得出静止物体在场景地图中的位置。
进一步地,所述摄像头的内参包括所述摄像头的焦距、光圈中心。
本实施例中,根据摄像头的焦距、光圈中心参数值,可以判定出扫地机器人在拍摄照片时,两者的相对距离以及相对角度等位置信息,计算出图片中的静止的物体相对摄像头的位置。
进一步地,所述根据所述图片中有效区域建立场景地图的步骤包括:
S32、根据所述图片,建立三维坐标体系;
S33、获取所述静止的物体在所述三维坐标体系中的坐标,并在所述三维坐标体系中标记,形成所述场景地图;
所述计算出所述静止的物体相对所述摄像头的位置的步骤包括:
S3123、根据指定公式计算出在三维坐标体系中,所述静止的物体相对所述摄像头的坐标[x,y,z],所述指定公式为:
z=d
x=(u-cx)·z/fx
y=(v-cy)·z/fy
其中,fx、fy指摄像头在x,y两个轴上的焦距,cx、cy指像头的光圈中心,[u,v,d]为图片中的像素坐标。
本实施例中,摄像头在拍摄图片后,以拍摄图片时摄像头的位置为坐标原点,建立三维坐标体系,再将图片中静止的物体标记在三维坐标体系中,三维坐标体系就是场景地图。三维坐标体系以墙壁为X轴和Y轴平面,与墙壁面垂直的轴为Z轴,每隔一段固定距离设置有一个标度。以坐标标度的形式计算出静止的物体相对摄像头的位置,具体的,计算出静止的物体在清扫环境中相对摄像头的上下距离,然后再根据摄像头的焦距以及光圈中心,得出静止的物体在清扫环境中相对摄像头的前后距离和左右距离。
进一步地,所述根据预设公式,计算得出所述静止的物体在所述空间场景地图中位置的步骤包括:
S3124、用所述静止的物体相对所述摄像头的坐标[x,y,z]加上所述摄像头在所述三维体系中的坐标,得到所述静止的物体在所述空间场景地图中位置。
本实施例中,在计算时,先获取摄像头在三维坐标体系中的坐标,例如摄像头拍照时的坐标是[1,0,1],经过上述公式计算出的静止的物体相对摄像头的坐标是[2,0,3],即如果以摄像头为坐标原点的话,静止的物体坐标是[2,0,3],因此计算出静止的物体相对实际的坐标原点的话,则应加上摄像头的坐标,最终计算出静止的物体的坐标为[3,0,4],然后将该坐标在三维坐标体系中标记出来。依此方法,多次计算出图片中静止的物体相对原点的位置,经过多次计算后,该三维坐标体系中就有很多个点,即可以建立出整个场景地图。
综上所述,本发明的视觉扫地机器人建立场景地图,将清扫环境中运动的物体不建立在场景地图中,使建立的场景地图更加准确,使用户在使用时避免将运动的家人或宠物建立在场景地图中,为后续的规划清扫路径提供更高效准确的路径规则。
参照图5,本发明还提出一种视觉扫地机器人,包括:
视觉***1,用于采集清扫过程中拍摄的图片;
判定***2,用于判定所述图片中静止的物体所对应的区域,标记为有效区域;
地图***3,根据判定***标记2的有效区域建立场景地图。
本实施例中,视觉扫地机器人视觉***1,可以进行拍照。扫地机器人在清扫时,视觉***1拍照,并根据拍摄的照片建立场景地图,在地图中,清扫环境中的各物体都会在地图中体现。例如清扫环境是用户的房子,房子里的桌子、椅子、电视等各种物体均会被视觉***拍摄,然后判定***2利用视觉***1判断图中的物体是否移动,若物体是移动状态,则判定物体不是属于固定的环境,获取该物体的外形轮廓,将该外形轮廓从图片中剔除掉,判定***2判定运动的物体是无效区域,判定静止的物体的外形轮廓对应的区域是有效区域,地图***3在建立场景地图时,只获取图片中有效区域的部分。判定图片中静止的物体所对应的区域为有效区域的方法,可以是视觉***分别采集两张图片,将两张图片进行对比,发现物体在图片中位置不一样,则判定物体为运动的物体。
参照图6,进一步地,所述判定***2包括:
光流模块21,用于采用光流法提取所述图片中的运动物体;
忽略模块22,用于将所述运动物体在所述图片对应的区域中忽略,得到图片中剩余的区域为静止的物体所对应的区域,形成所述有效区域。
本实施例中,光流法是给图片中的每个像素点赋予一个速度矢量,形成一个运动矢量场。扫地机器人根据拍摄的图像中各个像素点的速度矢量特征,可以对图像进行动态分析。如果图像中没有运动目标,则光流矢量在整个图像区域是连续变化的。当图像中有运动物体时,目标和背景存在着相对运动。运动物体所形成的速度矢量必然和背景的速度矢量有所不同,如此光流模块21便可以计算出运动物体在图像中的位置。通过光流模块21将图片中静止物体对应的区域划分出来,确认为有效区域。忽略模块22将图片中运动的物体对应的区域忽略,在建立地图中忽略运动的物体对应的区域。
参照图7,进一步地,所述地图***3包括:
内参模块31,用于利用摄像头的内参,结合所述静止的物体在所述图片中的位置计算所述静止的物体在场景地图中的位置;
建立模块32,用于根据所述静止的物体在场景地图中的位置建立场景地图。
本实施例中,摄像头的内参,是指摄像头的内部参数,比如摄像头的焦距、光圈等固定的系数在对应拍摄照片时的数字。内参模块31利用拍摄照片时摄像头的内参,结合静止物体在所述图片中的位置,可以计算出静止的物体在场景地图中的位置,计算出静止物体在场景地图中的位置后,建立模块32根据这些静止物体的位置信息,建立场景地图。
参照图8,进一步地,所述内参模块31包括:
位置单元311,用于获取摄像头在所述场景地图中的位置;
第一计算单元312,用于根据摄像头的内参,计算出所述静止的物体相对所述摄像头的位置;
第二计算单元312,用于根据预设公式,计算得出所述静止的物体在所述场景地图中的位置。
本实施例中,位置单元311根据内参计算出静止的物体相对摄像头的位置,再获取视觉扫地机器人的移动路径,第一计算单元312可以计算出视觉扫地机器人的摄像头在环境中的位置,再根据预设的公式,第二计算单元313可以计算出图片中静止的物体在环境中的位置,从而得出静止物体在场景地图中的位置。
进一步地,所述摄像头的内参包括所述摄像头的焦距和光圈中心。
本实施例中,根据摄像头的焦距和光圈中心,可以判定出扫地机器人在拍摄照片时,两者的相对距离以及相对角度等位置信息,计算出图片中的静止的物体相对摄像头的位置。
进一步地,所述地图***3包括:
坐标体系模块,用于根据所述图片,建立三维坐标体系;
标记模块,用于获取所述静止的物体在所述三维坐标体系中的坐标,并在所述三维坐标体系中标记,形成所述场景地图;
所述第一计算单元312包括:
公式子单元,用于根据指定公式计算出在三维坐标体系中,所述静止的物体相对所述摄像头的坐标[x,y,z],所述指定公式为:
z=d
x=(u-cx)·z/fx
y=(v-cy)·z/fy
其中,fx、fy指摄像头在x,y两个轴上的焦距,cx、cy指像头的光圈中心,[u,v,d]为图片中的像素坐标。
本实施例中,摄像头在拍摄图片后,以拍摄图片时摄像头的位置为坐标原点,坐标体系模块建立三维坐标体系,标记模块再将图片中静止的物体标记在三维坐标体系中,三维坐标体系就是场景地图。三维坐标体系以墙壁为X轴和Y轴平面,与墙壁面垂直的轴为Z轴,每隔一段固定距离设置有一个标度。第一计算单元312以坐标标度的形式计算出静止的物体相对摄像头的位置,具体的,计算出静止的物体在清扫环境中相对摄像头的上下距离,然后公式子单元再根据摄像头的焦距以及光圈中心,得出静止的物体在清扫环境中相对摄像头的前后距离和左右距离。
进一步地,所述第二计算单元313包括:
相加子单元,用于用所述静止的物体相对所述摄像头的坐标[x,y,z]加上所述摄像头在所述三维体系中的坐标,得到所述静止的物体在所述空间场景地图中位置。
本实施例中,在计算时,先获取摄像头在三维坐标体系中的坐标,例如摄像头拍照时的坐标是[1,0,1],经过上述公式计算出的静止的物体相对摄像头的坐标是[2,0,3],即如果以摄像头为坐标原点的话,静止的物体坐标是[2,0,3],因此计算出静止的物体相对实际的坐标原点的话,则应加上摄像头的坐标,最终相加子单元计算出静止的物体的坐标为[3,0,4],然后将该坐标在三维坐标体系中标记出来。依此方法,多次计算出图片中静止的物体相对原点的位置,经过多次计算后,该三维坐标体系中就有很多个点,即可以建立出整个场景地图。
综上所述,本发明的视觉扫地机器人建立场景地图,将清扫环境中运动的物体不建立在场景地图中,使建立的场景地图更加准确,使用户在使用时避免将运动的家人或宠物建立在场景地图中,为后续的规划清扫路径提供更高效准确的路径规则。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。