一种基于临近异构分布式结构的移动增强现实交互方法与流程

文档序号:11676973阅读:457来源:国知局
一种基于临近异构分布式结构的移动增强现实交互方法与流程

本发明属于图像处理和增强现实技术领域,具体涉及一种基于临近异构分布式结构的移动增强现实交互方法。



背景技术:

增强现实技术的应用场景非常广泛,针对增强现实的技术引擎技术也在突飞猛进,比如ar(augmentedrealit)。

同时鉴于复杂的应用场景,良好的人机交互也是必不可少的一部分,ar的应用场景本身已经极为复杂,在复杂场景中对模型的标定已经有很繁重的计算量,同时要在复杂场景中提取指令像素并进行指令匹配已经是捉襟见肘。

在视觉方面,基于开源计算机视觉库opencv(opensourcecomputervisionlibrary)的手势识别技术也在突飞猛进,然而性能和效率往往不能兼得,每一种识别算法都存在比较强的环境依赖性,可靠性不能够得到保证,如何协调好各种算法的优点,也是当今的一大难题。

现在的增强现实技术都是在一个终端同时实现特征提取、模板匹配以及图像融合。即各种运算通过单个cpu和gpu进行,运算量极大,移动设备资源根本无法完全兼顾特征提取和模板匹配。这就给移动端的增强现实显示提供了阻力。



技术实现要素:

本发明所要解决的技术问题是提供一种基于opencv指令识别,临近异构分布式结构的移动端增强现实交互方法,本发明通过肤色提取、指令集匹配,异端处理实现对摄入的视频流做出实时的交互响应,利用总线近场通信模型,提高处理的高速性、实时性,提供符合应用场景所需的交互方法。

本发明的基于临近异构分布式结构的移动增强现实交互方法包括下列步骤:

首先,移动终端将采集的视频流以切片的方式存储到本地,并将采集的视频流发送给一个临近异构识别处理装置(临近异构识别处理装置为预置的能与移动终端进行通信的指令识别服务器,当移动终端进入到临近异构识别处理装置的通信范围内,则能实现通信,当存在多个可通信的临近异构识别处理装置时,任意选择其中一个即可),移动终端和收到的视频流的临近异构识别处理装置分别进行下述处理:

移动终端执行下述步骤a1~a3:

步骤a1:计算屏幕坐标:

根据公式x′=[r|t]*x得到摄像机坐标x′,其中r为移动终端的摄像装置的外参旋转矩阵,t是平移向量,x是世界坐标,符号“丨”表示矩阵分块;

然后根据公式得到屏幕坐标其中c为移动终端的摄像装置的内参矩阵,从而完成坐标系的转换工作;

步骤a2:对视频流的帧图像进行二值化处理,再对各二值图像进行连通域分析,将连通域中的四边行区域作为候选区域,将每一个候选区域与本地预置的目标对象(目标对象设置为矩形图像块)进行图像匹配,将与目标对象匹配的候选区域作为每帧的标识区域;

若标识区域不是矩形,则基于屏幕坐标对其进行坐标变换,得到矩形的标识区域。

临近异构识别处理装置执行下述步骤b1~b3:

步骤b1:构建指令分类器:以不同的手势图像作为训练样本,对训练样本进行轮廓检测,将轮廓检测结果作为指令模型样本值,基于指令模型样本值构建关于手势与指令类型的分类器;

步骤b2:依次确定接收的视频流每帧的指令类型值并回传给移动终端;

其中每帧的指令类型值确定方式为:

对视频流的帧图像进行肤色提取处理,得到肤色区域;再对肤色区域进行轮廓检测,将轮廓检测结果作为指令特征值;

通过指令分类器对当前帧的指令特征值进行指令类型匹配,并将第一个匹配结果作为当前帧的指令类型值;

最后,移动终端基于本地预置的指令类型值与虚拟物体的映射关系,将对应每帧的指令类型值的虚拟物体叠加到当前帧的标识区域内,即将虚拟物体以图像融合的方式叠加到当前帧的各标识区域内,生成交互视频流。

本发明的有效效果为:本发明提供了一源输入,多端处理,同端输出,临近异构模型的增强现实交互方法,整合近场闲置资源,为高、精的识别过程提供充足的运算环境,对移动端本身来说,图像指令的提取是一个透明的过程;结合开源的ar处理的框架,能够快速在移动端搭建虚拟模型,从而能够实时准确的完成ar虚拟场景与真实物体之间的交互。

附图说明

图1:本发明具体实施过程示意图;

图2:临近异构识别处理装置的组成框架示意图。

具体实施方式

为了让发明的目的、方案以及其优势显现的更加清楚,下面结合实施方式和附图,对本发明进行进一步的阐述:

参见图1,基于opencv实现本发明的基于临近异构分布式结构的移动增强现实交互方法,其具体的包括下列步骤:s1:临近异构模式搭建:将移动端(如手机)和临近异构识别处理装置(指令识别服务器)放在同一个本地网络域下,以确保能被互相发现。移动端和指令识别服务器搭建自己的路由(router),两个路由负责进行通信交互,即移动端和指令识别服务器通过近距离无线传输方式alljoyn实现广播和发现服务。其中指令识别服务器的单元结构如图2所示,包括主处理进程、服务架构层、基础核心库、alljoyn路由和操作系统,主处理进程用于实现服务主运算;服务架构层是基于基础核心库组成的基础服务,为上层提供基础组件;基础核心库提供最底层的基础核心运算;alljoyn路由用于实现与移动端的近距离无线传输。

s2:移动端采集视频流并以切片的方式存储到本地(如利用开源ar框架artoolkit,设定一个固定的图像分割阈值,通过此图像分割阈值对视频流的每一帧进行分割,得到帧图像。),同时将采集的视频流通过近距离无线传输给一个指令识别服务器,移动终端和收到的视频流的指令识别服务器分别进行下述处理:

s3:指令识别服务器依次提取接收视频流每帧的指令类型值:

s3-1:对视频流的帧图像进行肤色提取处理,得到肤色区域:

肤色提取即肤色检测,是利用肤色ycbcr颜色空间色彩模型进行提取,人的肤色在外观上的差异是由色度引起的,不同人的肤色分布集中在较小的区域内。肤色的ycbcr颜色空间cbcr平面分布在近似的椭圆区域内,通过判断当前像素点的cbcr值是否落在肤色分布的椭圆区域内,就可以确认当前像素点是否属于肤色。

因为移动端拍摄的图像基本都为rgb颜色空间,故首先将帧图像转换成ycbcr颜色空间,并且在cbcr平面进行投影,再进行非线性变换k-l变换。根据肤色模型对像素点进行筛选得到肤色区域,并将肤色区域均分为多个子区域,将各子区域的中心点的cbcr色度值作为当前子区域的特征值,对肤色区域像素值进行遍历,将各子区域的cbcr色度值替换为当前子区域的特征值。

s3-2:对得到的肤色区域的图像进行凸包检测,首先对图像进行去噪和灰度化处理,设置轮廓检测参数,进行阈值化操作,然后利用findcontours进行轮廓检测,检测输出结果为vector<vector<vec4i>>,其中vector是一种向量存储数据集合,vec4i存储了起始点、结束点、距离以及最远点到凸包的距离。凸包检测会得到多个凸包缺陷,每一个凸包缺陷由n个vec4i进行描述,据此形成一个指令特征值。

s3-3:基于预先构建的指令分类器对当前帧的指令特征值进行指令类型匹配,并将第一个匹配结果作为当前帧的指令类型值,即若当前帧存在多个指令特征值,则串行对各指令特征值进行分类匹配处理,每次从未匹配的指令特征值中任意选取一个,直到得到匹配结果则向移动端返回当前帧的指令类型值。

其中构建的指令分类器的具体过程为:

首先,以不同的手势图像作为训练样本,对训练样本进行轮廓检测,将轮廓检测结果作为指令模型样本值。

其中轮廓检测具体为:对训练样本图像进行凸包检测,首先对图像进行去噪和灰度化处理,设置轮廓检测参数,进行阈值化操作,然后利用findcontours进行轮廓检测,检测输出结果为vector<vector<vec4i>>,其中vector是一种向量存储数据集合,其中vec4i存储了起始点、结束点、距离以及最远点到凸包的距离。凸包检测会得到多个凸包缺陷,每一个凸包缺陷由n个vec4i进行描述,据此形成一个指令模型样本描述符,即指令模型样本值。

然后,基于得到的指令模型样本值构建关于手势与指令类型的分类器。

s4:移动端的ar成像。

s4-1:摄像头参数初始化,包括焦距、光圈、像素等;导入预设置的目标对象文件,即由多个目标对象图像(矩形图像块)构成的文件;

s4-2:计算计算屏幕坐标(即图像的三维坐标注册):

根据公式x′=[r|t]*x得到摄像机坐标x′,其中r为移动终端的摄像装置的外参旋转矩阵,t是平移向量,x是世界坐标,符号“丨”表示矩阵分块;

然后根据公式得到屏幕坐标其中c为移动终端的摄像装置的内参矩阵(基于摄像头参数获得),从而完成坐标系的转换工作;

s4-3:对本地存储的帧图像进行二值化处理,再对各二值图像进行连通域分析,将连通域中的四边行区域作为候选区域,将每一个候选区域与目标对象图像进行图像匹配,将与目标对象匹配的候选区域作为帧图像的标识区域,并对帧图像的标识区域中的非矩形基于屏幕坐标对其进行坐标变换,变换为矩形的标识区域,即最终得到的帧图像的标识区域均为矩形区域,以用于对应的指令类型。

其中匹配标识区域具体为:假设有n幅关于目标对象的图像,其中各目标对象包括m个标定点,产生评价函数:其中,a是增益向量,mij为第j个标定点在第i幅图像中的像素点;ri为第i幅图像的旋转矩阵;ti为第i幅图像的平移向量;mj为第j个标定点的空间坐标;m(a,k1,k2,k3,p1,p2,ri,ti,mj)是通过已知量求得的像素点坐标,k1,k2,k3,p1,p2为非线性畸变系数。利用levenbergmarquara算法求解上述关于评价函数c的非线性最小二乘问题。

s4-4:移动端基于本地预设的指令类型值与虚拟物体(标识物体)的映射关系,根据收到的当前帧的指令类型值查找对应的标识物体,并根据s4-3得到的标识区域相对矩形的形变,确定相机针对标识物体的具体姿态,将标识物体叠加融合到当前帧的所有标识区域内,得到真实图像与虚拟物体融合的帧图像;

s5:移动端开启监听指令识别服务器的服务,当接收到的指令类型值出现变化时,查找与之匹配的虚拟物体,否则继续基于当前虚拟物体和标识区域坐标变化加载虚拟物体的坐标,实现操作虚拟模型的目的。

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