本发明涉及标注方法领域。更具体地说,本发明涉及一种基于slam的空间标注方法。
背景技术:
在生活中或者是工业生产中,为了解决一些自己无法解决的问题,请教专家而专家又距离远,通过视频通话请求远程专家协助完成操作。当专家向另一方做出指导时,会遇到一些问题或者是操作,通过简单的语言表达可能无法准确描述位置,可能需要借助画图标注等方式来完成。
在现有的标注方式中,一种是直接在画面最上层标注,标注内容始终不会与真实环境发生任何交互;一种方式是标注内容跟随摄像头移动,但是标注位置与专家标注的位置存在很大误差。
技术实现要素:
本发明的目的是提供一种基于slam的空间标注方法,将专家标注的二维平面内容准确放置到专家对应的三维虚拟空间位置。
为了实现根据本发明的这些目的和其它优点,提供了一种基于slam的空间标注方法,包括以下步骤:
s1、通过基于slam技术的真实摄像机获取空间特征点,构建虚拟的三维坐标系;
s2、在所述三维坐标系内创建一个与真实摄像机对应的虚拟摄像机,并通过slam技术实时修改校正所述虚拟摄像机在所三维坐标系中的位置,以使所述虚拟摄像机在所述三维坐标系内的位置时刻与所述真实摄像机在真实空间内的位置对应;
s3、记录所述虚拟摄像机的位置及其旋转角度,同时获取所述真实摄像机所拍摄的真实画面,并在所述真实画面上进行标注,然后将标注的内容保存为带透明通道的二维图片;
s4、在所述二维图片内建立平面坐标系,并根据透明通道对标注的图片进行裁边处理,得到标注内容所在的矩形区域的标注图片,并获取所述标注图片的左上角和右下角的平面坐标点a和b,并对所述平面坐标系中所述标注图片所在的矩形区域进行等间隔均匀采样,得到屏幕坐标数组;
s5、通过所述s3中记载的所述虚拟摄像机的位置及其旋转角度,还原所述虚拟摄像机的位置及朝向,遍历所述s4中获得的屏幕坐标数组,所述虚拟摄像机依次向所述三维坐标系发出射线,获得一组与所述三维坐标系相交的空间坐标,再计算出距离所述虚拟摄像机最近的点的空间坐标;
s6、在所述三维坐标系中距离所述虚拟摄像机最近点处创建一个无限大的第一平面,再根据所述虚拟摄像机的旋转角度对位移后的所述第一平面进行旋转,得到第二平面,在所述三维坐标系内从所述虚拟摄像机分别向所述s4中获得的所述平面坐标点a和b处发出射线,得到与所述第二平面相交的两个点的空间坐标点c和d,所述空间坐标点c和d之间的中心点即为标注内容在虚拟空间中放置的位置,建立以所述虚拟相机为原点的虚拟相机坐标系,且所述虚拟相机坐标系的z轴的方向与所述三维坐标系的z轴的方向相同,然后分别计算出所述空间坐标点c和d在所述虚拟相机坐标系下的空间坐标点e和f,所述空间坐标点e和f在所述虚拟相机坐标系下的x轴和y轴所对应的值相减的绝对值即为标注内容的缩放比例,然后将所述标注内容按照所述缩放比例进行缩放后,将其移动到其在虚拟空间中放置的位置;
s7、在unity3d环境下,根据所述s6计算获得所述标注图片在空间中的缩放、坐标、旋转创建一个带有meshfilter和meshrenderer的物体;创建material并指定material的shader为带有透明通道的shader,material的贴图设置为所述标注图片;将material赋值给meshrender,再通过unity3d的渲染系统进行渲染,并在眼镜屏幕上显示出来,即可通过眼镜屏幕看到最终成像效果。
本发明经过基于slam技术的空间转换,将专家标注的二维平面内容准确放置到专家对应的三维虚拟空间位置,最终利用眼镜设备将三维虚拟空间渲染出来,人眼通过眼镜成像效果与真实场景进行叠加,最终用户看到的效果与专家标注的位置完全一致。并且不随用户的位置改变而发生变化,实现标注内容由二维平面标注贴图转化为三维空间放置贴图,准确叠加在真实三维空间中,并且实时跟随标注目标。可以直观看到标注位置和信息,省去文字或者语言表述。
本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。
附图说明
图1为本发明所述的基于slam的空间标注方法的流程图;
图2为本发明所述的实施例中在所述真实画面上进行标注的示意图;
图3为本发明所述的实施例中对所述真实画面的起始位置和结束位置构成的矩形进行等间隔均匀采样的示意图;
图4为本发明所述的实施例中获得一组与所述三维坐标系相交的空间坐标的示意图;
图5为本发明所述的实施例中得到与所述第二平面相交的两个点的空间坐标的示意图;
图6为本发明所述的实施例中将标注贴图转换成空间标注的示意图。
具体实施方式
下面结合附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。
需要说明的是,在本发明的描述中,术语“横向”、“纵向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,并不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
如图1-图6所示,本发明的实施例提供一种基于slam的空间标注方法,包括以下步骤:
s1、通过基于slam技术的真实摄像机获取空间特征点,构建虚拟的三维坐标系;
s2、在所述三维坐标系内创建一个与真实摄像机对应的虚拟摄像机,并通过slam技术实时修改校正所述虚拟摄像机在所三维坐标系中的位置,以使所述虚拟摄像机在所述三维坐标系内的位置时刻与所述真实摄像机在真实空间内的位置对应;
s3、记录所述虚拟摄像机的位置及其旋转角度,同时获取所述真实摄像机所拍摄的真实画面,如图2所示,并在所述真实画面上进行标注,然后将标注的内容保存为带透明通道的二维图片;
s4、在所述二维图片内建立平面坐标系,并根据透明通道对标注的图片进行裁边处理,得到标注内容所在的矩形区域的标注图片,并获取所述标注图片的左上角和右下角的平面坐标点a和b,并对所述平面坐标系中所述标注图片所在的矩形区域进行等间隔均匀采样,如图3所示,得到屏幕坐标数组;
s5、通过所述s3中记载的所述虚拟摄像机的位置及其旋转角度,还原所述虚拟摄像机的位置及朝向,遍历所述s4中获得的屏幕坐标数组,所述虚拟摄像机依次向所述三维坐标系发出射线,获得一组与所述三维坐标系相交的空间坐标,如图4所示,再计算出距离所述虚拟摄像机最近的点的空间坐标;
s6、在所述三维坐标系中距离所述虚拟摄像机最近点处创建一个无限大的第一平面,再根据所述虚拟摄像机的旋转角度对位移后的所述第一平面进行旋转,得到第二平面,在所述三维坐标系内从所述虚拟摄像机分别向所述s4中获得的所述平面坐标点a和b处发出射线,得到与所述第二平面相交的两个点的空间坐标点c和d,所述空间坐标点c和d之间的中心点即为标注内容在虚拟空间中放置的位置,建立以所述虚拟相机为原点的虚拟相机坐标系,且所述虚拟相机坐标系的z轴的方向与所述三维坐标系的z轴的方向相同,然后分别计算出所述空间坐标点c和d在所述虚拟相机坐标系下的空间坐标点e和f,如图6所示,所述空间坐标点e和f在所述虚拟相机坐标系下的x轴和y轴所对应的值相减的绝对值即为标注内容的缩放比例,然后将所述标注内容按照所述缩放比例进行缩放后,将其移动到其在虚拟空间中放置的位置;
s7、在unity3d环境下,根据所述s6计算获得所述标注图片在空间中的缩放、坐标、旋转创建一个带有meshfilter和meshrenderer的物体;创建material并指定material的shader为带有透明通道的shader,material的贴图设置为所述标注图片;将material赋值给meshrender,再通过unity3d的渲染系统进行渲染,并在眼镜屏幕上显示出来,即可通过眼镜屏幕看到最终成像效果。
s1、通过基于slam技术的真实摄像机获取空间特征点,构建虚拟的三维坐标系;
s2、在所述三维坐标系内创建一个与真实摄像机对应的虚拟摄像机,并通过slam技术实时修改校正所述虚拟摄像机在所三维坐标系中的位置,以使所述虚拟摄像机在所述三维坐标系内的位置时刻与所述真实摄像机在真实空间内的位置对应;
s3、记录所述虚拟摄像机的位置及其旋转角度,同时获取所述真实摄像机所拍摄的真实画面,如图2所示,并在所述真实画面上进行标注,然后将标注的内容保存为带透明通道的二维图片;
s4、利用透明通道对所述二维图片进行裁边处理,得到标注内容所在的矩形区域的标注图片,计算所述标注图片相对于所述二维图片的起始位置和结束位置的坐标(所述标注图片相对于所述二维图片的起始位置和结束位置分别为所述标注图片相对的两个直角处),并由所述标注图片与所述真实画面的相对位置关系,得到所述真实画面的起始位置和结束位置的坐标,并对所述真实画面的起始位置和结束位置构成的矩形进行等间隔均匀采样,如图3所示,得到屏幕坐标数组;
s5、通过所述s3中记载的所述虚拟摄像机的位置及其旋转角度,还原所述虚拟摄像机的位置及朝向,遍历所述s4中获得的屏幕坐标数组,所述虚拟摄像机依次向所述三维坐标系发出射线,获得一组与所述三维坐标系相交的空间坐标,如图4所示,再计算出距离所述虚拟摄像机最近的点的空间坐标;
s6、创建一个无限大的第一平面,根据距离所述虚拟摄像机最近的点的空间坐标对所述第一平面进行位移,再根据所述虚拟摄像机的旋转角度对位移后的所述第一平面进行旋转,得到第二平面,再根据所述标注图片与所述真实画面的相对位置关系,获取所述真实画面的起始位置和和终点位置的空间坐标,并从所述虚拟摄像机分别向所述二维图片的起始位置和和终点位置发出射线,得到与所述第二平面相交的两个点的空间坐标,如图5所示,如图6所示,两个点的中心点即为标注内容在虚拟空间中放置的位置,且两个点的空间坐标相减的绝对值即为标注内容的缩放比例,然后将所述标注内容按照所述缩放比例进行缩放后,将其移动到其在虚拟空间中放置的位置,即完成了标注贴图转换成空间标注。
尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的实施例。