基于增强现实的移动平台三维生物分子展示系统和方法转让专利

申请号 : CN201510033511.8

文献号 : CN104537705B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 罗益民郝爱民李帅朱润凯胡文洁

申请人 : 济宁医学院

摘要 :

本发明涉及一种基于增强现实的移动平台三维生物分子展示系统和方法,在移动平台上实现了对传统纸质印刷物生物分子二维图片的识别和对应分子的三维实时展示。其对图像特征点检测和匹配方法进行改进,使其在移动客户端和云端服务器协同完成,提高了灵活性,节约了客户端资源。三维分子建模数据来源于蛋白质结构信息数据库PDB(Protein Data Bank),保证了准确性和权威性。本发明将增强现实技术进行了扩展,并在生物化学与分子生物学教育学习方面提出了一种典型应用,其技术手段和框架可应用于任何教育教学领域,由于移动终端的发展和普及,以及其便于携带的特点,使用者可随时随地使用本系统,可极大的提高教学效率和学习兴趣。

权利要求 :

1.一种基于增强现实的移动平台三维生物分子展示方法,其特征包括以下步骤:

步骤(1)、图片特征点提取:对教材上的平面图片进行拍照或扫描,提取特征点后将特征点数据存储在服务端;

步骤(2)、PDB文件获取及处理:对每一张图片,人工确定其对应的蛋白质结构信息数据库中PDB ID号,服务器以此PDB ID号在蛋白质结构信息数据库进行检索,获得PDB文件后进行处理和本地存储,将图片ID与PDB文件以及图片相关信息进行关联;

步骤(3)、图片识别:移动客户端使用摄像头捕获教材上的平面图片,提取特征点后,以一定间隔时间将提取到的特征点上传到服务器,与步骤(1)中每一张图片的特征点进行相似度比较,若不匹配则丢弃步骤(1)中的该图片;若匹配则认为识别到了一个标记;将对应的PDB文件及相关信息发往移动客户端;

步骤(4)、三维分子模型的绘制:在移动客户端根据获得的PDB文件中的原子三维点坐标,利用OpenGL ES库实时绘制生物分子C原子骨架飘带模型和分子表面三维模型;

步骤(5)、基于视觉标记的跟踪注册:移动客户端系统将步骤(4)中生成的模型与移动客户端摄像头拍摄的真实背景进行叠加显示;移动客户端摄像头空间位移或旋转发生变化时系统实时地重绘窗口,经坐标变换实时更新视角,使观察者可从任意角度和距离观察模型。

2.根据权利要求1所述的基于增强现实的移动平台三维生物分子展示方法,其特征在于:步骤(1)图片特征点提取,通过基于SIFT即Scale-Invariant Feature Transform算法改进的SURF即Speeded Up Robust Features算法,寻找图像特征点,将其保存在服务器。

3.根据权利要求2所述的基于增强现实的移动平台三维生物分子展示方法,其特征在于:步骤(2)中所述的PDB文件获取及处理,对步骤(1)中每一张图片,人工规定一个PDB ID号,利用RCSB-PDB web services服务从PDB服务器检索,对得到的PDB文件进行简化处理和本地存储。

4.根据权利要求2所述的基于增强现实的移动平台三维生物分子展示方法,其特征在于:步骤(3)中所述的图片识别,移动客户端以步骤(1)中的特征点提取方法提取图片特征点矩阵,以一定时间间隔上传到服务端,在服务端遍历数据库中的特征点矩阵与之进行相似度比较;当两幅图像特征点匹配数量大于设定的阈值时认为两幅图像匹配。

5.根据权利要求2所述的基于增强现实的移动平台三维生物分子展示方法,其特征在于:步骤(4)中所述的三维分子模型的绘制,使用OpenGL ES库,利用服务器发来的PDB文件的原子三维坐标信息,绘制生物分子C原子骨架飘带模型和分子表面三维模型。

6.根据权利要求2所述的基于增强现实的移动平台三维生物分子展示方法,其特征在于:步骤(5)中所述的基于视觉标记的跟踪注册,根据图像识别得到的凸四边形插图主体的四边为基以原始AR标记确定方向建立图像仿射坐标系,从而标定移动客户端摄像头和主体定位标记的空间信息,包括位置和姿态;按照仿射变换矩阵在视平面上绘制步骤(4)中制作的三维分子模型或交互式场景,最后与真实场景的实时画面合并渲染,显示在移动客户端屏幕上;若有图片附加信息,则将其一起显示。

说明书 :

基于增强现实的移动平台三维生物分子展示系统和方法

技术领域

[0001] 本发明为一种在移动平台上实现的三维蛋白质、核酸分子实时渲染、交互和追踪技术,涉及增强现实技术的应用。

背景技术

[0002] 长久以来,基础医学科学,尤其是类似生物化学与分子生物学这样的学科教研中,最大的一个难题就是研究对象的微观性、不可见性。随着后基因组时代、蛋白质组时代的到来,这个矛盾越来越突出。学科的迅猛发展要求从学、从业人员尽快掌握新理论和新技术,传统的以纸质媒介作为载体的教学、研究手段已跟不上要求。
[0003] 增强现实(AR,augmented reality)技术是一种利用计算机技术对用户所看到的真实世界进行景象扩展的技术。AR源于虚拟现实(Virtual Reality,VR)技术,后者是利用计算机生成的虚拟环境逼真地模拟人在自然环境中的视觉、听觉、运动等行为的技术。与之不同的是,AR是模拟仿真后再将现实场景进行叠加,它把计算机产生的图形、文字按指定的位置和姿态融合到真实场景中,使用户沉浸在真实与虚拟的混合环境中,产生一种新型的人机交互方式。增强现实已经成为虚拟现实研究中的一个重要领域,它在军事、安全、工业、医疗、教育和娱乐等行业有着广泛的应用前景。增强现实技术包含了多媒体、三维建模、实时视频显示及控制、传感器、实时跟踪及注册、场景融合等新技术与新手段。增强现实提供了在一般情况下,不同于人类可以感知的信息。
[0004] 本发明利用了移动平台便于携带、方便使用的特点和云端数据检索。在移动终端完整实现了AR技术,并结合实际情况做出了扩展和改进。本发明首次将AR技术和生物分子三维展示结合起来,以RCSB蛋白质与核酸结构信息数据库作为三维分子建模依据制作三维模型及动画,为AR技术在微观分子教学、模拟领域提出了一种典型实现。

发明内容

[0005] 本发明解决的技术问题是:一种基于增强现实的移动平台三维生物分子虚拟展示技术。包括图片特征点云端存储、识别检测与模型匹配、以图片特征点识别为基础的云端服务器-蛋白质数据库数据检索和传输、移动端生物分子三维模型的实时绘制、移动终端摄像头位置标定与场景绘制。
[0006] 本发明克服了传统纸质媒体对三维分子结构和功能展示的局限性,提出了一种全新的三维分子实时展示技术和教学手段,克服了复杂多边形在手机平台显示的效率和速度问题,为AR技术在微观分子教学、模拟领域的应用提出一个典型实现。
[0007] 本发明采用的技术方案为:一种基于增强现实的移动平台三维生物分子虚拟展示技术,包括以下五个步骤:
[0008] 步骤(1)图片特征点提取:对教材上的平面图片进行拍照或扫描,提取特征点数据并存储在服务端。
[0009] 步骤(2)PDB文件获取及处理:对每一张图片规定其PDB ID号,服务器以PDB ID号在PDB进行检索,获得pdb文件后进行处理,并存储在服务器,将图片ID与pdb文件以及图片相关信息进行关联。
[0010] 步骤(3)图片识别:移动端提取图片特征点矩阵,以一定时间间隔上传到服务端,在服务端遍历数据库中的特征点矩阵进行相似度比较。当两幅图像特征点匹配数量大于设定的阈值时认为两幅图像匹配。
[0011] 步骤(4)三维分子模型的绘制:在移动端根据获得的PDB文件中的原子三维点坐标,实时绘制分子C原子骨架飘带模型和表面三维模型。
[0012] 步骤(5)基于视觉标记的跟踪注册:移动客户端系统将步骤(4)中生成的模型与摄像头拍摄的真实图片进行叠加显示。客户端摄像头位置发生变化时进行相机重新标定,经坐标变换实时更新视角,使观察者可从任意角度和距离观察模型。
[0013] 本发明与现有技术相比的优点在于:
[0014] 1.识别效率和准确性:AR技术中常用的特征点识别方法是角点检测,如Roberts、Sobel、Prewitt、Canny算子检测方法等。而实际的书本插图中,必然有一些图片特征点较少,采用这些方法无法提取到有效的特征点。导致识别率的下降。本发明中,图片特征点的识别匹配使用Surf算法。Surf算法基于Sift算法,但在构建尺度空间时不需对图像进行二次抽样,从而提高算法性能。其最大的特点是识别速度快。适中的条件下,完成两幅图像中物体的匹配基本实现了实时处理。相对其它算法,能够有效识别特征点,识别的速度和准确率有很大的提升。
[0015] 2.多张图片的识别、网络识别:传统的AR技术是将识别图片作为模板保留在本地,占用空间大且不灵活。且只能识别几张特定的图片,应用范围有限。本发明中,识别图片作为模板保留在云端服务器,减小了客户端体积占用,理论上可识别任意多张图片;图片识别依赖于网络,客户端向服务器发送的实际是提取出来的特征点数据,其数据量很小,可以理解为简单的文本文件,可减少网络流量、缩短传输时间。
[0016] 3.三维分子模型实时绘制:传统的AR技术一般是先制作好待显示的三维模型,需要时进行显示和隐藏。本发明在移动客户端,利用OpenGL ES完成三维分子模型的实时绘制。服务器将相应的PDB文件进行处理,只向客户端只发送少量的信息(三维分子空间坐标),进一步提高了识别的实时性;需要改变模型时,只需再次传输坐标文件即可,减轻了移动端系统负担。
[0017] 4.本发明首次将AR技术运用于与生物分子的三维实时展示。
[0018] 5.本发明利用移动端便携性的特点,可随时随地使用,克服了利用桌面电脑等实现AR技术的局限性。

附图说明

[0019] 图1为本发明的系统原理和实现方式示意图;
[0020] 图2为服务器将检索得到的pdb文件进行处理;
[0021] 图3为根据Surf方法,服务端图片和客户端拍摄到的图片特征点匹配示意图;
[0022] 图4摄像机模型采用针孔模型近似表示,真实环境中标志物的重心P在图像上的投影位置p,为光学中心O与P点的连线OP与图像平面的交点;
[0023] 图5为最终结果(人血红蛋白,PDB ID:2dhb)。

具体实施方式

[0024] 下面结合附图对本发明具体实施方式进行说明:
[0025] 步骤:
[0026] 1.图片特征点提取
[0027] 1.1图像采集:
[0028] 用扫描仪或拍照的形式获取书中插图。
[0029] 1.2图片预处理:
[0030] S1:亮度校正:对每一个像素的RGB值同时加上或减去一个特定的值。
[0031] S2::灰度级变换:将灰度图直方图化,计算各个像素级的像素数目;形成累积直方图,然后进行直方图均衡化;建立新的亮度查找表。
[0032] S3:平滑处理,对图像长宽各×2,并高斯过滤进行平滑。
[0033] 1.3Surf算法实现及特征点生成:
[0034] 本部分主要分为5个步骤:
[0035] S1:构建Hessian矩阵,用图像像素L(x,y)代替函数值f(x,y),选用二阶标准高斯函数作为滤波器,通过特定核间的卷积计算二阶偏导数,这样便能计算出H矩阵,式中,L xx(x,σ),Lxy(x,σ),Lyy(x,σ)为X点处高斯函数的二阶导数与图像的卷积。
[0036]
[0037] S2:构建尺度空间:在Sift算法中,每层图像依赖于前一层图像,并且图像需要重设尺寸,因此,这种计算方法运算量较大,而Surf算法在使用金字塔方面与Sift不同。算法允许尺度空间多层图像同时被处理,不需对图像进行二次取样,从而提高了性能。
[0038] S3:定位特征点:确定一个合适的预设极值,使用与S2中尺度层图像解析度相对应大小的滤波器进行检测,像素点的特征值若大于周围像素则可确定该点为该区域的特征点。所有小于预设极值的取值都被丢弃。
[0039] S4:主方向确定:以特征点为中心,计算半径为6s(S为特征点所在的尺度值)的邻域内的点在z、y方向的Haar小波(Haar小波边长取4s)响应,并给这些响应值赋高斯权重系数,使得靠近特征点的响应贡献大,而远离特征点的响应贡献小,其次将60°范围内的响应相加以形成新的矢量,遍历整个圆形区域,选择最长矢量的方向为该特征点的主方向。这样,通过特征点逐个进行计算,得到每一个特征点的主方向。
[0040] S5:生成特征点描述子:以关键点为中心取8×8的窗口。求得每个像素的梯度幅值与梯度方向,用高斯窗口对其进行加权运算,每个像素对应一个向量,然后在每4×4的小块上计算8个方向的梯度方向直方图,绘制每个梯度方向的累加值。
[0041] 1.4图片特征向量的保存
[0042] 将上述特征点向量信息保存在本地服务器,在数据库中将图片ID与之关联。
[0043] 2.PDB文件获取及处理
[0044] 2.1PDB文件获取:在服务器后台上传每张图片时,以人工方式规定每张图片的PDB ID号,服务器根据此ID号在RCSB PDB数据库利用RCSB-PDB FETCH services服务进行检索,由于ID号唯一,所以得到的pdb文件也是唯一的。
[0045] 2.2PDB文件处理:原始pdb文件一般较大,包含有很多冗余信息,为减少服务器和客户端网络数据传输量,服务器对检索到的pdb文件进行预处理。Pdb文件中包含原子点坐标的行以ATOM或HETATM开头。找到文件中以ATOM或HETATM.第一次出现的行,从此行开始将之前的行删除,只保留原子三维点坐标的文件,如图2所示。
[0046] 3.图片识别与模板匹配
[0047] 移动端通过摄像头对准图片,捕捉场景,进行尺寸统一化和初步压缩,以每隔10fps的速率持续将捕捉到的图片进行提取特征点处理,处理方法同步骤(1)所述方法。提取到图像特征点后将其发往服务端,在服务端,对于某幅图像上的一个特征点,利用如K-D树算法在另一幅图像中找到与待匹配点的特征向量距离最小和次最小的特征点。如果最小距离与次最小距离比值小于某个阈值,则认为待匹配点与距离最小的点匹配。反之匹配不成功。如图2所示,左图为服务端图片,右图为移动端实时拍摄到的图片。两者进行特征点匹配(连线)的数量远大于设定的阈值,认为捕获到了图片。
[0048] 4.基于视觉标记的跟踪注册、三维分子模型绘制
[0049] S1:摄像机位置标定:
[0050] 此部分主要基于Qualcomm Vuforia FastCV开源库实现,现对原理加以说明:
[0051] 相机标定技术与四个坐标系统有关,分别是世界坐标系,成像平面坐标系,相机坐标系和图像显示坐标系。真实世界的三维物体通过相机成像原理变为图像平面的二维点的过程,需要经过四个坐标系之间的坐标变换,相机标定技术需要确定这些坐标变换之间的变换关系,然后利用这种关系根据图像显示平面上的二维点来计算这个点在真实三维空间中的位置。
[0052] 首先计算摄像机的5个内部参数及6个外部参数。
[0053] 摄像机模型采用针孔模型近似表示,真实环境中标志物的重心P在图像上的投影位置p,为光学中心O与P点的连线OP与图像平面的交点,如图4所示。
[0054] 彩色标志点在世界坐标系中三维空间坐标已知Xwi,Ywi,Zwi。它在摄像机坐标系中的坐标以及图像像面坐标系中的位置可用以下公式表示。其中R,T分别为旋转矩阵和平移矢量。f为摄像机的焦距,u0,v0为像面中心坐标,△x,△y为相邻像素点在水平和垂直方向的间距。
[0055]
[0056]
[0057]
[0058] 以上公式共包括11个未知参数,5个摄像机内部参数f,u0,v0,△x,△y;6个外部参数R(Rx,Ry,Rz)和T(Tx,Ty,Tz)。因此只要有空间6个以上图像点坐标(ui,vi)就可求出全部内外参数。
[0059] S2:模型、场景绘制
[0060] 蛋白质结构有多种图形表示方式,最常见的有线框模型(wireframe)、棍模型(Bonds),球棍模型(CpK)、VDW模型、飘带状模型(Ribbon)和分子表面模型等。
[0061] 线框模型(Wireframe):原子之间的化学键用一根直线表示。
[0062] 棍模型(Bond):原子之间的化学键用一个圆柱体表示。
[0063] 球棍模型(CPK):原子用一个球体表示,化学键用一个圆柱体表示。
[0064] 范德华模型(VDW):原子用一个球体表示,球半径为范德华半径。
[0065] 飘带模型(Ribbon):由经过所有C原子的B样条曲线为中心向两侧均匀扩展的带状表示。
[0066] 分子表面模型(MolecularSurface):包括两种定义:模型分子表面和由溶剂分子在分子表面移动时所经过的轨迹形成的表面。
[0067] 飘带模型是生物大分子可视化最重要的模型之一,这主要是因为它能有效反映生物分子的二级结构信息。分子表面模型从整体上表现生物大分子外观,使对其有直观认识。同时,移动端GPU性能的局限性,其不适合表现三角形面数非常多球棍模型或范德华模型,而线框模型能够表现的信息量又太少。综上所述,我们采用在客户端实时绘制飘带模型和半透明分子表面模型的方法,后者附加于前者之上。这种方法能够比较好的展示分子结构和三维外观。
[0068] 飘带模型绘制:
[0069] 蛋白质的飘带模型几何是由主链的原子组成的,而根据主链原子,我们可以构建出飘带模型的轮廓曲线。轮廓曲线可有多种绘制方法。Carson方法和蛋白质化学相关联的关键点是肽平面被用来作为几何造型的基础,这个方法和计算机图形学相关联的关键点是B样条被用来作为产生飘带模型的光滑正规曲线。该方法被广泛应用于蛋白质飘带模型的绘制。具体算法如下:
[0070] 定义肽平面:只需要输入一系列排序好的蛋白质分子的alpha碳原子和羧基氧原子坐标。以下是定义肽平面的方法(Cα表示α碳原子):
[0071] 1.计算向量A=Cα(i+l)-Cα(i)
[0072] 2.计算向量B=O(i)-Cα(i)
[0073] 3.叉乘得到向量C=A×B
[0074] 4.叉乘得到向量D=C×A
[0075] 5.对向量C和D进行单位化
[0076] 向量C是由Cα(i),O(i),和Cα(i+l)原子组成的肽平面的法向。向量D平行于肽平面并且垂直于向量A。
[0077] 生成中轴坐标:这一步骤的输入是模拟飘带所需要的插值点数目,加上对于每个二级结构的氨基酸的宽度的赋值。以下是定义B样条中轴坐标的步骤:
[0078] 找到Ca(i)和Ca(i+l)的中点P。如果这个肽平面是alpha螺旋的一部分,沿着向量C的方向平移点P,向远离螺旋轴的方向移动半个飘带的宽度分别得到点P(-)=P-D和P(+)=P+D。
[0079] 当前面的步骤完成以后就形成了线段P(-)→P(+),其宽度是我们想要的飘带的宽度并且平行于肽平面。这些点就均匀分配在这个线段上。
[0080] 有了上述点坐标,便可调用OpenGL ES库进行飘带模型绘制。
[0081] 分子表面模型绘制:
[0082] 三维分子表面模型的绘制,最关键的在于如何定义分子表面。由于分子表面边界的原子决定了分子的形状和主要功能,因此,有效的判断分子边界的原子就变的格外重要。这其中的一个方法就是计算出蛋白质分子表面原子上的一个完整的光滑曲面。这个曲面就被称作分子表面。
[0083] 溶剂外部曲面(solvent excluded surface,SES)绘制方法使用一个半径为R的探测球在分子范德华表面进行滚动计算分子表面的可达距离,其计算出的表面模型精确度最高。但计算量较大。无法做到实时绘制。我们采用基于高斯模糊的Coarse绘制方法绘制表面模型,在降低绘制精度的前提下,在移动端实现了三维分子表面实时绘制。
[0084] 本发明的所有实际测试均在pc模拟器和运行安卓4.3系统的手机上进行,程序可流畅运行。
[0085] 本发明未详细阐述的技术内容属于本领域技术人员的公知技术。
[0086] 尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。