全景图漫游中交互热点的自动选取方法

文档序号:8260215阅读:904来源:国知局
全景图漫游中交互热点的自动选取方法
【技术领域】
[0001] 本发明涉及虚拟现实、全景影像技术领域,具体涉及一种全景图漫游中交互热点 的自动选取方法。
【背景技术】
[0002] 全景图漫游是利用专业相机,通过广角的表现手段,捕捉整个场景的图像信息,然 后使用软件进行图片拼合,将平面照片变为360度全观,从而用于虚拟现实浏览,把二维的 平面图模拟成真实的三维空间,使用户产生强烈的沉浸感。
[0003] 在全景图漫游过程中,当用户浏览到某个物体时,需要与之交互,以展现与之相关 的特定信息。为了实现交互的目的,就需要预先定义交互区域。这个交互区域通常用分布 在交互区域边缘的一组简化点集来表示,称为"交互热点"。
[0004]目前"交互热点"是通过开发人员手工选取的。开发人员需要在"交互物体"的边 缘逐个选取"交互热点",形成一个闭合环。例如著名的全景图像转换工具Pan〇2VR就是这 样处理的。这种方法在处理大量全景图数据时,开发人员的工作量就变得巨大,工作效率低 下。

【发明内容】

[0005] 本发明针对目前设定"交互热点"时,工作量巨大,工作效率低下的问题,提供了一 种全景图漫游中交互热点的自动选取方法,采用图像处理技术,自动选取全景图指定区域 的热点。
[0006] 本发明提供的全景图漫游中交互热点的自动选取方法,实现步骤如下:
[0007] 步骤1 :用户选取交互物体的所在区域;优选采用矩形框来选取区域;
[0008] 步骤2 :选取背景图像,将用户所选区域向左右上下四个方向放大X个像素,得到 包含背景图像的区域;X为大于20小于100的整数;
[0009] 步骤3 :对经过步骤2得到区域进行图像分割;
[0010] 步骤4:对图像进行自适应阈值处理,使得图像变为二值图像,交互物体变为白 色,背景变为黑色;
[0011] 步骤5 :提取交互物体的轮廓,获得分布在交互物体边缘的连续点集;
[0012] 步骤6 :利用多边形逼近方法对所提取的交互物体的轮廓进行简化;
[0013] 步骤7 :提取步骤6所得到的多边形的各个端点作为热点。
[0014] 采用本发明交互热点的自动选取方法,一方面可以使从繁重的人工选取工作中解 放出来,另一方面可以提高交互热点选取的准确性。
【附图说明】
[0015] 图1是本发明的全景图漫游中交互热点的自动选取方法的流程示意图;
[0016] 图2是本发明实施例中选取物体多在区域的示意图;
[0017]图3是本发明实施例中选取背景图像的示意图;
[0018]图4是本发明实施例中进行图像分割后得到的图像;
[0019]图5是本发明实施例中进行对矩形框内图像二值化后得到的图像;
[0020] 图6是本发明实施例中获取的图像轮廓的示意图;
[0021] 图7是本发明实施例中多边形简化的图像轮廓示意图;
[0022] 图8是本发明实施例中所获取的热点的示意图。
【具体实施方式】
[0023] 下面将结合附图和实施例对本发明作进一步的详细说明。
[0024] 全景图具有真实场景的特点,又比三维动画经济实用,因此被广泛应用于旅游景 点、酒店宾馆、建筑设计、房地产、装修展示、网上商城等领域。在这些应用领域中,如果交互 物体的数量较少,通过传统软件进行手工选取还可行。如果项目中全景图数量巨大、交互物 体繁多(比如各种网上商城、装修展示等),那么"交互热点"的自动选取就称为必然选择, 会得到广泛的应用。
[0025] 通过本发明方法,用户在全景图上指定交互物体所在的大致区域,本发明方法自 动分割出需要交互的物体,提取物体的轮廓,然后把轮廓上的点进行大规模的简化,使简化 后的点集可以代表物体的轮廓,从而得到"交互热点"。
[0026] 本发明的全景图漫游中交互热点的自动选取方法,实现步骤如下:
[0027] 步骤1 :用户选取交互物体所在区域。
[0028] 本发明方法需要用户指定交互物体所在区域作为输入。这个区域是大致区域,不 需要十分精确。因为在一张全景图中存在多个物体,所以需要用户指定所选物体的大致区 域。例如,本发明实施例中选取吊灯,如图2所示,可选取吊灯所在的一个矩形区域。检测 所选取区域的顶点坐标和长宽并保存。图2中,以整个图片的左上角作为坐标原点(0,0), 图片横向为x轴,且向右为x正方向,图片纵向为y轴方向,且向下为y正方向。
[0029] 本发明实施例中定义如下数据结构来保存所选取的区域:
[0030]char*HotPoint::GrabHotPointsAsString(char*filename,intRectX,int RectY,intRectffidth,intRectHeight,boolIfDrawPoints,boolIfShowImage)
[0031] 其中,RectX表示矩形区域左上角起点的x坐标;RectY表示矩形区域左上角起点 的y坐标;RectWidth表示矩形区域的宽;RectHeight表示矩形区域的高。filename表示 当前所选区域保存的文件名;IfDrawPoints表示是否绘制点集,IfShowImage表示是否显 示图像。
[0032] 本发明实施例中优先设置矩形选取框,用户通过拉伸收缩矩形框,将要交互的物 体框在矩形框中。采用矩形框选取物体,一方面方便用户简单操作,另一方面也使得下面的 图像操作简单。
[0033] 步骤2:选取背景图像。本发明实施例中X设置为50,即把用户所选区域向左右上 下四个方向放大50个像素,作为下一步图像分割的背景图像。
[0034] 步骤2是本发明方法对图像分割方法的改进之处。背景图像不再针对整幅图像, 而是缩小到分割区域周围。通过这样的改进,减少了数据计算量,加快了运算速度,提高了 图像分割的精确度。
[0035] 本发明实施例对图2所示图像进行步骤2,如图3所示,黑色实框为用户所选矩形, 黑色虚线框为自动扩展后得到的区域。
[0036] 具体地,本发明进行扩展的代码如下:
[0037]image=&_image;
[0038]intextension= 50 ;
[0039]intOutRectX=max(RectX-extension, 0);
[0040]intOutRectY=max(RectY-extension, 0);
[0041]int0utRectX2 =min(RectX+Rectffidth+extension,image->cols-rect.x);
[0042]int0utRectY2 =min(RectY+RectHeight+extension,image->rows-rect.y);
[0043]rectOut=Rect(Point(OutRectX,OutRectY),Point(0utRectX2, 0utRectY2));
[0044]imageOut= (*image) (rectOut);
[0045] 其中,extension为扩展值X,OutRectX和OutRectY分别表示扩展后矩形区域的 左上角顶点的x和y坐标,0utRectX2和0utRectY2分别表示扩展后矩形区域的右上角顶 点的x和y坐标,rectOut表示扩展得到的矩形区域左、右上角顶点的坐标。在确定顶
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1