CN110806848B - 一种实现全景图像播放器显示计算机系统 - Google Patents
一种实现全景图像播放器显示计算机系统 Download PDFInfo
- Publication number
- CN110806848B CN110806848B CN201911059248.4A CN201911059248A CN110806848B CN 110806848 B CN110806848 B CN 110806848B CN 201911059248 A CN201911059248 A CN 201911059248A CN 110806848 B CN110806848 B CN 110806848B
- Authority
- CN
- China
- Prior art keywords
- panoramic image
- playing
- window
- instantiated
- variable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 229910052739 hydrogen Inorganic materials 0.000 claims description 44
- 238000013500 data storage Methods 0.000 claims description 39
- 230000009191 jumping Effects 0.000 claims description 32
- 230000003321 amplification Effects 0.000 claims description 30
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 30
- 238000000034 method Methods 0.000 claims description 22
- 238000000605 extraction Methods 0.000 claims description 19
- 230000001960 triggered effect Effects 0.000 claims description 10
- 229910052717 sulfur Inorganic materials 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 229910052799 carbon Inorganic materials 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims description 5
- 229910052757 nitrogen Inorganic materials 0.000 claims description 5
- 230000008520 organization Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 18
- 238000003491 array Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 9
- 230000000694 effects Effects 0.000 description 7
- 239000008186 active pharmaceutical agent Substances 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 230000018109 developmental process Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 239000000969 carrier Substances 0.000 description 3
- 229910052698 phosphorus Inorganic materials 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 239000011800 void material Substances 0.000 description 2
- 241001249461 Panoplax Species 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
Abstract
本发明公开了一种实现全景图像播放器显示计算机系统,属于全景图像应用领域,利用全景图像作为播放资源,通过按照播放组对两个以上全景图像进行组织、定向顺序播放,实现全景图像同屏多视窗自动展示,具体包括:步骤一,播放视窗设置;步骤二,播放结构与变量设置;步骤三,读取播放数据;步骤四,装载一条播放记录;步骤五,全景图像视窗显示;步骤六,循环控制;步骤七,操作控制;步骤八,播放控制。
Description
技术领域
本发明涉及全景图像技术领域,特别是涉及一种实现全景图像播放器显示计算机系统。
背景技术
目前,全景图像已成为一种新的影像数据资源,全景图像的全场景、连续性的技术特征是图片和视频无法替代的,而在实现本发明过程中,发明人发现现有技术至少存在如下问题,在有关风光、景点等适合应用全景图像展示场景中,通常只有摄影图片、视频录像等传统形式,某个全景图像只有在特定制作的项目中通过观察者戴上特殊眼镜才能体验到全景技术的魅力,多个全景图像由于没有通用的展示全自动播放平台而无法得到更广泛利用,在终端屏幕上只能手动一幅一幅查看,另外,多年来,在一些省市旅游、投资贸易洽谈会、展览会上,只有大牌展位才会使用视频播放形式,众多中小展位只使用静态图片,所述静态图片不能动画,缺乏视觉冲击力。虽然现有多数全景图像的具体画面与传统拍摄图片、视频相比具有一定的局限性,但其全场景、连续性、定向等优势,是现有摄影和视频不可替代,而将全景图像作为影像素材资源普及应用、广泛展示,存在缺乏对多个全景图像组织通用的全自动播放工具的问题。“一种实现街景视图展示的方法及装置”(申请号:201410457789.3,专利授权公告号CN 104199944 B)对街景地图中的全景图像全自动播放进行了有益探索,其采取预先生成各路段沿道路行进方向的视野角度范围内的部分全景图像拼接成动态图像,根据接收的起点、终点坐标,生成动态图像自动播放,解决了沿划定路线上全景图像播放的问题,但并不是适用任意一组全景图像自动播放。总之,需要本领域技术人员迫切解决的一个技术问题就是如何能够将多个全景图像有效地组织起来,建立一种以全景图像为内容的全景图像成组动画自动播放显示计算机系统。
发明内容
有鉴于此,本发明提供了一种实现全景图像播放器显示计算机系统,以解决现有技术中没有用于全景图像成组通用全自动播放工具的技术问题,为解决上述问题,本发明提供的技术方案如下,全景图像播放器显示的物理模型是,在计算机网络环境下,终端屏幕内使用一组全景图像视窗(1至9个全景图像视窗)作为全景图像显示载体构成播放屏,按照一定约束条件的播放参数,加载网络上的一组全景图像,以及播放数据,并按照播放顺序存储在客户端的一个用于存贮全景图像播放数据的存贮结构中,以每个全景图像视窗为播放单元,每个播放单元有自身的包括全景图像ID及初始显示参数、时间间隔、动画模式、动画幅度的显示参数,每个全景图像视窗建立独立的动画序列帧,通过动画控制,形成播放屏进行多样动画显示,经过一定时间间隔,再进行下一播放屏的全景图像、动画显示,通过类似视频播放的控制按钮,进行暂停、播放控制,循环往复支撑全景图像播放器的运行,目的是能够将全景图像作为播放资源,不用修改程序实现以一种播放器的形式,使用播放参数加载一组全景图像,组成标准化全景图像播放数据,在终端屏幕页面上,按照人为控制的播放参数形成全景图像显示参数,一屏、一屏全自动展示。
为实现上述目的,本发明公开了一种实现全景图像播放器显示计算机系统,包括存储器、处理器、显示器、网络、全景图像,以及存储在存储器上并可在处理器上运行的计算机程序,对实现一组全景图像同屏多视窗全自动播放动画显示,所述程序的流程图如图1所示,其特征在于,所述处理器执行所述程序时实现以下步骤。
步骤一,播放视窗设置,包括在显示器屏幕页面内设置的一个顶级区域S100,在所述S100顶级区域内,设置包括1个以上最多9个全景图像容器的全景图像播放屏,设置包括播放、暂停操作控制的操作控件,进入步骤二;需要说明的是,多视窗同屏显示一一对应的全景图像,以及全景图像播放器使用播放、暂停操作控制的操作控件是本发明首创。
步骤二,播放结构与变量设置,包括设置包括全景图像ID编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式字段的全景图像播放数据存贮结构,设置包括播放参数索引变量INDEX、全景图像提取约束条件变量B、播放循环标识变量R(取值包括:yes或no,yes表示循环、no表示无循环)、播放状态标识变量A(取值包括:run或stop, run表示运行,stop表示暂停)、每屏多视窗数量变量S(取值范围:1至9)、每屏播放时间变量T(取值范围:3秒至60秒)的播放参数,对应所述全景图像播放数据存贮结构的字段,设置包括全景图像编码变量ID、名称变量Name、水平视角变量H、竖直视角变量V、放大系数变量Z、动画时间间隔变量W(取值范围:10至500毫秒)、动画幅度变量CON(取值范围:0.01至1度)、动画模式变量DIC(取值包括:静止、左转、右转、斜左上、斜右下、上移、下移、斜右上、斜左下、放大、缩小)的显示参数,设置包括全景图像总数变量N、播放屏内位置指针变量C、播放遍历位置指针变量P的操作参数,C=0,P=0,进入步骤三;需要说明的是,所述播放数据存贮结构、播放参数、显示参数、操作参数的一结构三组变量,是所述全景图像播放器运行的基本构成,是实现全景图像多视窗同屏显示的前提,是本发明首创。
步骤三,读取播放数据,包括读取播放参数并对应赋值给所述播放参数相应变量INDEX、B、R、A、S、T,依据所读取的播放参数中的全景图像提取约束条件B,从指定包括网络数据库、数据文件的数据表、XML文件中读取M(2个以上)个全景图像的包括所述全景图像播放数据存贮结构全部字段的播放数据,并按照播放顺序由前到后,对应存储在所述全景图像播放数据存贮结构中并形成M条记录,N=M,进入步骤四;需要说明的是,通过读取播放参数,依据所述播放参数加载全景图像播放数据是全景图像播放器标准化、通用化运行的基础,是本发明首创。
步骤四,装载一条播放记录,包括从所述全景图像播放数据存贮结构中的第P条记录位置,读取全部字段的数据并对应赋值给所述显示参数相应变量ID、Name、H、V、Z、W、CON、DIC,如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗,所述对应全景图像视窗加载所读取的所述ID、Name、H、V、Z初始化定向显示全景图像,进入步骤五;需要说明的是,所述全景图像视窗播放屏内各全景图像视窗具有独立的显示参数是本发明首创。
步骤五,全景图像视窗显示,包括在所述指定一全景图像视窗,按照全景图像视窗动画总帧数SUM=T/W,设置一个包括所述SUM个均匀间隔所述W的时间轴序列帧,执行所述SUM次延迟所述W毫秒、刷新显示全景图像操作,所述刷新显示全景图像操作进一步包括,使用所装载的水平视角、竖直视角、放大系数、动画幅度数据,按照所装载的所述动画模式,计算出当前帧全景图像的水平视角、竖直视角、放大系数在对应全景图像视窗显示全景图像,进入步骤六;需要说明的是,所述全景图像视窗播放屏内各全景图像视窗具有独立的时间轴序列帧、独立的动画是本发明首创。
步骤六,循环控制,包括P=P+1,判断所述C,如果小于所述S则C=C+1、跳转至步骤四,否则C=0、跳转至步骤七;需要说明的是,以所述播放屏作为循环控制单元是本发明首创。
步骤七,操作控制,包括监测所述操作控件是否触发,如果触发、则清除所述全景图像视窗播放屏内所有全景图像视窗的时间轴序列帧,进一步判断所述A,如果等于Stop则将所述A设置为run、所述操作控件显示播放提示、跳转至步骤八,否则所述A设置为Stop、所述操作控件显示暂停提示、跳转至步骤七的开始;需要说明的是,在全景图像播放中引入类似视频播放的操作控制是本发明首创,在暂停状态下,全景图像视窗独有的人机交互功能可以得到应用。
步骤八,播放控制,包括延迟所述T秒,之后判断所述P,如果小于N、则C=0、跳转至步骤四,如果大于等于N、则进一步判断所述R,如果等于yes则P=0、C=0、跳转至步骤四,如果等于no则结束。需要说明的是,通过所述播放循环标识可控制全景图像播放器循环播放,是本发明首创。
优选的,步骤一中所述在所述S100顶级区域内,设置包括1至9个全景图像容器的全景图像播放屏还包括,在所述S100顶级区域内分3行3列分割设置9个全景图像容器,分别用S110、S120、S130、S140、S150、S160、S170、S180、S190表示,在最上一行从左向右分别命名为S110、S120、S130;在中间一行从左向右分别命名为S140、S150、S160;在最下一行从左向右分别命名为S170、S180、S190,屏幕页面全景图像播放屏9个全景图像容器布局设置如图2所示,形成全景图像播放屏布局。需要说明的是,本发明对所述容器的形状、风格、具体命名、具体位置不加以限制,9个全景图像容器可以使全景图像播放器播放出不同的播放屏布局,是本发明首创。
优选的,步骤三中所述读取播放参数并对应赋值给所述播放参数相应变量INDEX、B、R、A、S、T还包括,在程序加载时可以只加载一个参数,将该参数作为所述读取播放参数的索引,从指定包括网络数据库、数据文件的数据表、XML文件中,分别读取包括全景图像提取约束条件、播放循环标识、播放状态标识、每屏多视窗数量、每屏播放时间参数的所述播放参数,并对应赋值给对应变量。需要说明的是,以一个参数作为全景图像播放器实际播放加载数据的入口,是本发明首创。
优选的,步骤三中所述读取播放参数并对应赋值给所述播放参数相应变量INDEX、B、R、A、S、T还包括,在程序加载时可以加载包括播放参数索引、全景图像提取约束条件、播放循环标识、播放状态标识、每屏多视窗数量、每屏播放时间参数的全部播放参数,并对应赋值给对应变量,如果所述程序可以是以包括网页的形式作为载体,可以按照指定超链接目标的URL网址路径后面的查询字符串格式,分别读取网页地址参数变量HREF内的所述播放参数索引、全景图像提取约束条件、播放循环标识、播放状态标识、每屏多视窗数量、每屏播放时间参数对应赋值给对应变量。需要说明的是,所述播放参数全部在全景图像播放器实际播放运行时加载,是本发明首创。
优选的,步骤三中所述依据所读取的播放参数中的全景图像提取约束条件B,从指定包括网络数据库、数据文件的数据表、XML文件中读取M(2个以上)个全景图像的包括所述全景图像播放数据存贮结构全部字段的播放数据,并按照播放顺序由前到后,对应存储在所述全景图像播放数据存贮结构中并形成M条记录还包括,依据所读取的播放参数中的全景图像提取约束条件B,遍历指定包括网络数据库、数据文件的数据表、XML文件,读取包括全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式作为一条记录,按照所述播放顺序由前到后,存储在所述全景图像播放数据存贮结构中,在所述全景图像播放数据存贮结构中形成含有M条记录的一组全景图像播放数据。
优选的,步骤四中如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗还包括,如果所述S等于1,则所述C所指向的全景图像容器为所述S110,关闭除所述S110之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111并充满所述S100,如果所述S等于2,则所述C等于0、1所指向的全景图像容器分别为所述S110、S120,关闭除所述S110、S120之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S120未被实例化、则使用全景图像引擎将所述S120实例化成对应全景图像视窗S121,所述S111、S121构成双视窗播放屏充满所述S100,如图4视图1所示,如果所述S等于3,则所述C等于0、1、2所指向的全景图像容器分别为所述S110、S140、S170,关闭除所述S110、S140、S170之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S140未被实例化、则使用全景图像引擎将所述S140实例化成对应全景图像视窗S141,如果所述S170未被实例化、则使用全景图像引擎将所述S170实例化成对应全景图像视窗S171,所述S111、S141、S171构成三视窗播放屏充满所述S100,如图4视图2所示。
优选的,步骤四中如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗还包括,如果所述S等于4,则所述C等于0、1、2、3所指向的全景图像容器分别为所述S110、S120、S140、S150,关闭除所述S110、S120、S140、S150之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S120未被实例化、则使用全景图像引擎将所述S120实例化成对应全景图像视窗S121,如果所述S140未被实例化、则使用全景图像引擎将所述S140实例化成对应全景图像视窗S141,如果所述S150未被实例化、则使用全景图像引擎将所述S150实例化成对应全景图像视窗S151,所述S111、S121、S141、S151构成四视窗播放屏充满所述S100,如图5视图1所示,如果所述S等于6,则所述C等于0、1、2、3、4、5所指向的全景图像容器分别为所述S110、S120、S130、S140、S150、S160,关闭除所述S110、S120、S130、S140、S150、S160之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S120未被实例化、则使用全景图像引擎将所述S120实例化成对应全景图像视窗S121,如果所述S130未被实例化、则使用全景图像引擎将所述S130实例化成对应全景图像视窗S131,如果所述S140未被实例化、则使用全景图像引擎将所述S140实例化成对应全景图像视窗S141,如果所述S150未被实例化、则使用全景图像引擎将所述S150实例化成对应全景图像视窗S151,如果所述S160未被实例化、则使用全景图像引擎将所述S160实例化成对应全景图像视窗S161,所述S111、S121、S131、S141、S151、S161构成六视窗播放屏充满所述S100,如图5视图2所示。
优选的,步骤四中如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗还包括,如果所述S等于8,则所述C等于0、1、2、3、4、5、6、7所指向的全景图像容器分别为所述S110、S120、S130、S140、S160、S170、S180、S190,关闭除所述S110、S120、S130、S140、S160、S170、S180、S190之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S120未被实例化、则使用全景图像引擎将所述S120实例化成对应全景图像视窗S121,如果所述S130未被实例化、则使用全景图像引擎将所述S130实例化成对应全景图像视窗S131,如果所述S140未被实例化、则使用全景图像引擎将所述S140实例化成对应全景图像视窗S141,如果所述S160未被实例化、则使用全景图像引擎将所述S160实例化成对应全景图像视窗S161,如果所述S170未被实例化、则使用全景图像引擎将所述S170实例化成对应全景图像视窗S171,如果所述S180未被实例化、则使用全景图像引擎将所述S180实例化成对应全景图像视窗S181,如果所述S190未被实例化、则使用全景图像引擎将所述S190实例化成对应全景图像视窗S191,所述S111、S121、S131、S141、S161、S171、S181、S191构成八视窗播放屏,如图6视图1所示。
优选的,步骤四中如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗还包括,如果所述S等于9,则所述C等于0、1、2、3、4、5、6、7、8所指向的全景图像容器分别为所述S110、S120、S130、S140、S150、S160、S170、S180、S190,进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S120未被实例化、则使用全景图像引擎将所述S120实例化成对应全景图像视窗S121,如果所述S130未被实例化、则使用全景图像引擎将所述S130实例化成对应全景图像视窗S131,如果所述S140未被实例化、则使用全景图像引擎将所述S140实例化成对应全景图像视窗S141,如果所述S150未被实例化、则使用全景图像引擎将所述S150实例化成对应全景图像视窗S151,如果所述S160未被实例化、则使用全景图像引擎将所述S160实例化成对应全景图像视窗S161,如果所述S170未被实例化、则使用全景图像引擎将所述S170实例化成对应全景图像视窗S171,如果所述S180未被实例化、则使用全景图像引擎将所述S180实例化成对应全景图像视窗S181,如果所述S190未被实例化、则使用全景图像引擎将所述S190实例化成对应全景图像视窗S191,所述S111、S121、S131、S141、S151、S161、S171、S181、S191构成九视窗播放屏充满所述S100,如图6视图2所示。
优选的,步骤五中所述刷新显示全景图像操作还包括,设置当前帧位置指针变量Step=0(0<Step<所述SUM全景图像视窗动画总帧数),判断所述动画模式DIC,如果等于静止,则H=H、V=V、Z=Z,如果等于左转,则H=H+Step*CON、V=V、Z=Z,如果等于右转,则H=H-Step*CON、V=V、Z=Z,如果等于斜左上,则H=H+Step*CON、V=V+Step*CON、Z=Z,如果等于斜右下,则H=H-Step*CON、V=V-Step*CON、Z=Z,如果等于上移,则H=H、V=V+Step*CON、Z=Z,如果等于下移,则H=H、V=V-Step*CON、Z=Z,如果等于斜右上,则H=H-Step*CON、V=V+Step*CON、Z=Z,如果等于斜左下,则H=H+Step*CON、V=V-Step*CON、Z=Z,如果等于放大,则H=H、V=V、Z=Z+Step*CON,如果等于缩小,则H=H、V=V、Z=Z-Step*CON(Z>0),Step=Step+1,使用上述计算出的当前帧的H、V、Z每隔W毫秒更新全景图像视窗一幅画面,每一幅画面有一定视角变化,利用人眼的视觉残留效应产生一个全景图像向某一方向移动的自动定向转动动画效果,从而达到浏览者在无需操作的前提下浏览全景图像视窗初始画面以外一定视角范围的景物。需要说明的是,多个全景图像同屏多种动画模式显示,是本发明首创。
通过本发明的实施例表现出具有如下有益效果:使用播放器形式,通过对播放数据存贮结构、播放参数、播放操作和播放显示变量的一结构三组变量设置,实现了全景图像播放数据提取、存贮、操作、显示,解决了缺乏通用的全自动播放多个全景图像的工具平台问题,一屏一屏全自动顺序播放全景图像同屏多视窗定向动画显示,有益效果主要有五个方面,一是有效利用互联网终端的计算和显示能力,播放器通过读取播放参数和播放数据、客户端计算形成多个全景图像播放效果,各视窗内的全景图像每一帧动画显示是通过客户端计算完成;二是全景图像播放显示可控,播放器具有与经典的视频播放器类似的暂停、播放功能按钮,可以实现对整个播放进程的人为控制,三是每个全景图像视窗具有独立动画形式,使每一全景图像播放屏显示效果可以实现多样化;四是实现了多个全景图像按顺序、按方位播放显示,是将全景图像数据转化为一种信息服务的新形式;五是增加了视频制作的一种新途径,改变了现有视频主要利用流媒体格式的视频文件实现视频播放服务的视频技术格局,从技术架构和播放资源角度讲,所述全景图像播放器显示与现有网络视频有着本质区别,视窗在暂停状态下可以进行人机交互,是对现有视频拍摄方式有效的补充。
附图说明
图1为本发明的实现全景图像播放器显示计算机程序流程图。
图2为本发明的实施例中屏幕页面播放屏各全景图像容器布局示意图。
图3为本发明的实施例中全景图像播放数据存贮结构示意图。
图4为本发明的实施例中双视窗、三视窗播放屏布局示意图。
图5为本发明的实施例中四视窗、六视窗播放屏布局示意图。
图6为本发明的实施例中八视窗、九视窗播放屏布局示意图。
图7为本发明的实施例中播放屏+播放工具条按钮页面设置示意图。
图8为本发明的实施例中八视窗页面显示布局示意图。
图9为本发明的实施例中四视窗页面显示布局示意图。
图10为本发明的实施例中三视窗播放屏页面设置与显示布局示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式,对本发明作进一步详细的说明。如图1所示,示出了本发明一种实现全景图像播放器显示计算机系统的程序流程图,通过以下3个实施例进行具体说明,本发明实施例所播放全景图像来源于互联网上的某街景地图服务提供商街景地图中的全景图像或者X市X单位建立的专有全景图像库。
实施例1,作为本发明的一个实施例,其具体使用JavaScript+C#+MySQL实现通用数据库连接进行Web应用开发,在一指定数据库中创建一个名为playindex数据表、panolist数据表, 在playindex数据表中创建包括所述播放参数索引、全景图像提取约束条件、播放循环标识、播放状态标识、每屏多视窗数量、每屏播放时间的字段,并录入编辑若干条记录作为若干组播放参数,在panolist数据表中创建包括所述全景图像提取约束条件、播放序号、全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式的字段,并录入编辑若干条(大于N)记录作为若干组播放数据,全景图像视窗使用某街景地图服务提供商的街景地图JavaScriptAPI,基于HTML5及CSS3,创建一个Web窗体文件PanoPlay.aspx(JavaScript)及对应PanoPlay.aspx.cs(C#),按照URL网址路径后面的查询字符串格式,将所述播放参数索引参数记录在内,具体可以是PanoPlay.aspx@index=2,在名为playindex数据表中的播放参数索引字段下面有某一记录内容等于2,且其对应的所述全景图像提取约束条件、播放循环标识、播放状态标识、每屏多视窗数量、每屏播放时间字段的内容分别具体为1(注:将全景图像约束条件按编码分组,如1、2、3、4)、yes(注:yes表示循环播放)、run(注:程序装载就进入运行播放状态)、8(注:表示播放屏由8个全景图像视窗构成)、10(注:表示播放一屏间隔10秒),国内外的街景地图服务提供商主要是腾讯公司、百度公司和谷歌公司,谷歌公司、腾讯公司和百度公司为方便开发者对其电子地图及其全景图像的开发利用,均提供了API开发平台,可用于在网站中加入交互性强的全景图像、地图,支持PC及手机设备,提供地图操作、标注、地点搜索、出行规划、地址解析、街景等接口,且支持HTML5,因此,本发明实施例对具体使用国内外哪一家全景图像服务提供商的API、全景图像不加以限制,以PanoPlay.aspx内的多个全景图像视窗作为全景图像播放载体,实现在页面上,一组全景图像顺序分屏定向、定位、定义播放显示,计算机程序进行以下步骤。
步骤一,播放视窗设置1,包括在显示器屏幕页面内设置的一个顶级区域S100,在所述S100顶级区域内,设置包括1个以上最多9个全景图像容器的全景图像播放屏,设置包括播放、暂停操作控制的操作控件,进入步骤二。本发明实施例可以提供如下具体方案:PanoPlay.aspx页面首屏窗口设置布局使用DIV及CSS3形成播放屏页面,具体在PanoPlay.aspx文件内使用< div >标签将页面在整体上进行区块分割,把页面分为若干个区块进行布局,然后对各个区块进行CSS3的宽度百分比、高度百分比、浮动、背景颜色、边框样式设置,最后在各个区块中添加视窗,适应不同互联网终端显示器屏幕分辨率、各窗口占据页面分割比例不变、各窗口相对位置不变、同时可自动延伸撑满屏幕;具体使用<div >标签设置一个顶级区域S100,在所述S100顶级区域内分三行三列,具体使用< div >标签设置9个窗口,分别是S110、S120、S130、S140、S150、S160、 S170、S180、S190,在所述S110窗口内创建一个空div窗口元素命名为S111全景图像容器,在所述S120窗口内创建一个空div窗口元素命名为S121全景图像容器,在所述S130窗口内创建一个空div窗口元素命名为S131全景图像容器,在所述S140窗口内创建一个空div窗口元素命名为S141全景图像容器,在所述S150窗口内创建一个空div窗口元素命名为S151全景图像容器,在所述S160窗口内创建一个空div窗口元素命名为S161全景图像容器,在所述S170窗口内创建一个空div窗口元素命名为S171全景图像容器,在所述S180窗口内创建一个空div窗口元素命名为S181全景图像容器,在所述S190窗口内创建一个空div窗口元素命名为S191全景图像容器,在所述S100顶级区域下方设置全景图像播放工具条区块S200,在所述S200内使用<input type="button"id="S211"display="none"name="S211"value="播放"onclick="S211()" />设置播放按钮S211并隐藏显示、使用<input type="button"id="S221"display="none"name="S221"value="暂停"onclick="S221()" />设置暂停按钮S221并隐藏显示,上述页面的窗口设置如图7所示,进入步骤二。需要说明的是,本发明实施例中,关闭窗口具体使用JavaScript隐藏控件的方法,通过设置控件的style的"display"="none"实现隐藏窗口,打开窗口通过设置控件的style的"display"="-moz-box"和display"="-webkit-box"实现重新打开窗口,本发明对窗口、按钮的背景颜色、边框样式设置不加以限制。
步骤二,播放结构与变量设置2,包括设置包括全景图像ID编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式字段的全景图像播放数据存贮结构,设置包括播放参数索引变量INDEX、全景图像提取约束条件变量B、播放循环标识变量R(取值包括:yes或no,yes表示循环、no表示无循环)、播放状态标识变量A(取值包括:run或stop, run表示运行,stop表示暂停)、每屏多视窗数量变量S(取值范围:1至9)、每屏播放时间变量T(取值范围:3秒至60秒)的播放参数,对应所述全景图像播放数据存贮结构的字段,设置包括全景图像编码变量ID、名称变量Name、水平视角变量H、竖直视角变量V、放大系数变量Z、动画时间间隔变量W(取值范围:10至500毫秒)、动画幅度变量CON(取值范围:0.01至1度)、动画模式变量DIC(取值包括:静止、左转、右转、斜左上、斜右下、上移、下移、斜右上、斜左下、放大、缩小)的显示参数,设置包括全景图像总数变量N、播放屏内位置指针变量C、播放遍历位置指针变量P的操作参数,C=0,P=0,进入步骤三。本发明实施例可以提供如下具体方案:在PanoPlay.aspx.cs文件中设置一个播放参数索引变量INDEX初始值设置为NULL、一个全景图像提取约束条件变量B初始值设置为NULL,在PanoPlay.aspx和PanoPlay.aspx.cs文件中各设置一个全景图像播放总数变量N初始值为0、一个播放循环标识变量R初始值为yes、一个播放状态标识变量A初始值为run、一个每屏多视窗数量变量S初始值为9、一个每屏播放时间变量T初始值为10、8个一维数组(8个一维数组依次对应全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式8个字段的所述全景图像播放数据存贮结构),在PanoPlay.aspx文件中设置一个播放遍历位置指针变量P初始值为0、一个播放屏内位置指针变量C初始值为0、一个全景图像编码变量ID初始值为NULL、一个名称变量Name初始值为NULL、一个水平视角变量H初始值为1、一个竖直视角变量V初始值为1、一个放大系数变量Z初始值为1、一个动画时间间隔变量W初始值为10、一个动画幅度变量CON初始值为1、一个动画模式变量DIC初始值为左转,进入步骤三。需要说明的是,本发明对所述各变量具体命名不加以限制。
步骤三,读取播放数据3,包括读取播放参数并对应赋值给所述播放参数相应变量INDEX、B、R、A、S、T,依据所读取的播放参数中的全景图像提取约束条件B,从指定包括网络数据库、数据文件的数据表、XML文件中读取M(2个以上)个全景图像的包括所述全景图像播放数据存贮结构全部字段的播放数据,并按照播放顺序由前到后,对应存储在所述全景图像播放数据存贮结构中并形成M条记录,N=M,进入步骤四。本发明实施例可以提供如下具体方案:在PanoPlay.aspx.cs文件内,具体使用MySQL的select从所述一指定数据库中名为playindex数据表中将按照所述播放参数索引字段内容等于2作为检索条件进行查询,并将查询结果记录对应的所述播放参数索引、全景图像提取约束条件、播放循环标识、播放状态标识、每屏多视窗数量、每屏播放时间字段内容分别对应赋值给INDEX、B、R、A、S、T,具体为INDEX=2(播放参数检索条件)、B=1(注:将全景图像约束条件按编码分组)、R=yes(注:yes表示循环播放)、A=run(注:程序装载就进入运行播放状态)、S=8(注:表示播放屏由8个全景图像视窗构成)、T=10(单位:秒,每屏播放时间),具体使用MySQL的select从所述一指定数据库中名为panolist内按照字段为全景图像提取约束条件的内容等于B、且按照播放序号字段内容从小到大为检索条件进行查询,对符合所述检索条件的N条查询结果记录,逐条读取每一条记录的所述全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式共8个字段内容对应存放在8个一维数组的同一条记录位置,形成基于所述全景图像播放数据存贮结构的播放数据,在PanoPlay.aspx文件中具体使用<asp:HiddenFieldrunat="server"/>实现与PanoPlay.aspx.cs进行数据传递,获取PanoPlay.aspx.cs中N、R、A、S、T变量的数值,并对应赋值给名称相同的变量,同理获取PanoPlay.aspx.cs中所述8个一维数组的N条记录数值,并对应存储在8个一维数组中再次形成一个与PanoPlay.aspx.cs所述全景图像播放数据存贮结构的播放数据一致的播放数据,方便之后数据读取操作使用,进入步骤四。
步骤四,装载一条播放记录4,包括从所述全景图像播放数据存贮结构中的第P条记录位置,读取全部字段的数据并对应赋值给所述显示参数相应变量ID、Name、H、V、Z、W、CON、DIC,如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗,所述对应全景图像视窗加载所读取的所述ID、Name、H、V、Z初始化定向显示全景图像,进入步骤五。本发明实施例可以提供如下具体方案:在PanoPlay.aspx文件中对所述8个一维数组构成的播放数据的第P条记录,依次读取所述全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式字段数据分别赋值给ID、Name、H、V、Z、W、CON、DIC,由于所述S等于8,则所述C等于0、1、2、3、4、5、6、7所指向的全景图像容器分别为所述S111、S121、S131、S141、S161、S171、S181、S191,在所述P首次等于1、2、3、4、5、6、7、8,具体使用某街景地图服务商针对Web应用的JavaScriptAPI的newqq.maps.Panorama()分别实例化所述S111、S121、S131、S141、S161、S171、S181、S191全景图像容器成为对应全景图像视窗S111、S121、S131、S141、S161、S171、S181、S191,并定向显示全景图像,且关闭所述S150,以所述P等于1为例,S111=newqq.maps.Panorama(“S111”,{pano:ID, pov:{heading:parseFloat(H),pitch:parseFloat(V)},zoom:parseInt(Z)}),并在所述S111对应全景图像视窗的底部外使用<span id="Name111"></span>居中显示所述Name名称,页面显示布局如图8所示,进入步骤五。需要说明的是,本发明使用的全景图像播放数据属原始创新,在现有网络视频主要利用流媒体格式的视频文件实现在线视频播放服务的网络视频技术基础上,增加了一种新的影像播放形式,实施例具体使用的全景图像是互联网上公开的街景地图的全景图像资源。
步骤五,全景图像视窗显示5,包括在所述指定一全景图像视窗,按照全景图像视窗动画总帧数SUM=T/W,设置一个包括所述SUM个均匀间隔所述W的时间轴序列帧,执行所述SUM次延迟所述W毫秒、刷新显示全景图像操作,所述刷新显示全景图像操作进一步包括,使用所装载的水平视角、竖直视角、放大系数、动画幅度数据,按照所装载的所述动画模式,计算出当前帧全景图像的水平视角、竖直视角、放大系数在对应全景图像视窗显示全景图像,进入步骤六。本发明实施例可以提供如下具体方案:在PanoPlay.aspx文件中针对一个全景图像视窗设置SUM个延迟执行函数setTimeout(),形成一个时间轴,每个setTimeout()函数设定时间间隔设置为W毫秒,每个setTimeout()执行下面函数funct(),函数funct()中包括,设置当前帧位置指针变量Step=0(0<Step<所述SUM全景图像视窗动画总帧数),提取所述播放数据中第P条记录的全景图像水平视角、竖直视角、放大系数、动画幅度和动画模式并对应赋值给H、V、Z、CON、DIC,判断所述动画模式DIC,如果等于静止,则H=H、V=V、Z=Z,如果等于左转,则H=H+Step*CON、V=V、Z=Z,如果等于右转,则H=H-Step*CON、V=V、Z=Z,如果等于斜左上,则H=H+Step*CON、V=V+Step*CON、Z=Z,如果等于斜右下,则H=H-Step*CON、V=V-Step*CON、Z=Z,如果等于上移,则H=H、V=V+Step*CON、Z=Z,如果等于下移,则H=H、V=V-Step*CON、Z=Z,如果等于斜右上,则H=H-Step*CON、V=V+Step*CON、Z=Z,如果等于斜左下,则H=H+Step*CON、V=V-Step*CON、Z=Z,如果等于放大,则H=H、V=V、Z=Z+Step*CON,如果等于缩小,则H=H、V=V、Z=Z-Step*CON(Z>0),如果DIC等于左转、右转、斜左上、斜右下、上移、下移、斜右上、斜左下,则使用当前播放帧的H、V和对应全景图像视窗的setPano()在其视窗内显示全景图像,如果DIC等于放大、缩小,则使用当前播放帧的Z和对应实例化某个全景图像视窗的setZoom()在其视窗内更新显示全景图像,Step=Step+1;进入步骤六。需要说明的是,利用全景图像全场景和连续性的技术特性,使用一定数量的延迟执行函数,在一个时间轴上形成若干帧,通过对各全景图像视窗的当前帧的水平视角、竖直视角或放大系数,与前一帧相比有CON角度的移动变化,每隔W毫秒更新一幅画面,利用人眼的视觉残留效应产生一个全景图像向某一方向移动的自动定向转动动画效果,从而达到浏览者在无需操作的前提下环视全景图像视窗初始画面以外一定视角范围的景物,本发明实现每个全景图像视窗进行播放产生视频效果的途径是通过建立时间轴序列帧数量、控制每帧动画模式和幅度三项指标实现的,同屏多视窗全景图像动画是本发明原创。
步骤六,循环控制6,包括P=P+1,判断所述C,如果小于所述S则C=C+1、跳转至步骤四,否则C=0、跳转至步骤七。本发明实施例可以提供如下具体方案:在PanoPlay.aspx文件中具体是:P=P+1,具体使用ifelse,判断所述C播放屏内位置指针,如果小于S则C=C+1、跳转至步骤四,否则C=0、跳转至步骤七。需要说明的是,本发明的同屏多视窗同时显示多个全景图像,并在对应全景图像视窗附加文字标题,属全景图像显示技术方面属首创,可实现多个全景图像同屏定位、定向、定义对比观察,与传统逐个察看全景图像形式相比,将不同景物图像放在一起对比察看,对比效果明显。
步骤七,操作控制7,包括监测所述操作控件是否触发,如果触发、则清除所述全景图像视窗播放屏内所有全景图像视窗的时间轴序列帧,进一步判断所述A,如果等于Stop则将所述A设置为run、所述操作控件显示播放提示、跳转至步骤八,否则所述A设置为Stop、所述操作控件显示暂停提示、跳转至步骤七的开始。本发明实施例可以提供如下具体方案:在PanoPlay.aspx文件中具体是,判断所述A播放状态标识,如果等于Stop则显示所述S211播放按钮、否则显示所述S221暂停按钮,监测所述S211、S221按钮是否被触发,分别具体使用onclick="S211()"、onclick="S221()",如果所述暂停按钮被触发即执行S221(),所述S221()具体包括,A等于Stop、使用window.clearInterval()清除所述全景图像视窗播放屏内所有对应全景图像视窗的时间轴序列帧、隐藏所述暂停按钮、显示所述S211播放按钮、跳转至步骤八,如果所述S211播放按钮被触发即执行S211(),所述S211()具体包括,A等于run、使用window.clearInterval()清除所述全景图像视窗播放屏内所有对应全景图像视窗的时间轴序列帧、隐藏所述S211播放按钮、显示所述S221暂停按钮、跳转至步骤七的开始。
步骤八,播放控制8,包括延迟所述T秒,之后判断所述P,如果小于N、则C=0、跳转至步骤四,如果大于等于N、则进一步判断所述R,如果等于yes则P=0、C=0、跳转至步骤四,如果等于no则结束。本发明实施例可以提供如下具体方案:在PanoPlay.aspx文件中具体使用setTimeout()延迟T秒,执行下面函数func(),所述func()具体包括,if(P<N) { C=0;执行步骤四;} else{ if(R==“yes”){P=0;C=0;执行步骤四;}}。
从上述本发明的实施例1可以得出如下明显优势,使用互联网上某街景地图服务提供商的全景图像,以及相应JavaScriptAPI,将播放参数、一组全景图像播放数据存放在服务器的数据库中,创建一个页面作为全景图像播放器载体,实现了全景图像播放数据提取、存贮、操作、显示,一屏一屏全自动顺序播放全景图像同屏多视窗定向动画显示,创造出一种播放多个全景图像的新形式,改变了传统观看多个全景图像需要人工操作费事、费时的问题。
实施例2,作为本发明的一个实施例,采用目前在信息存储和描述领域非常流行的XML 作为存储具有所述全景图像播放数据存贮结构的播放数据的载体,具体全景图像来源于“X市X行业基础设施信息管理系统”,存储在服务器本实施例网页所在文件夹的下一级文件夹data中,全景图像视窗的各项功能函数,使用该信息管理系统所提供的JavaScriptAPI创建,基于HTML5及CSS3,创建一个PanoPlay.html文件作为本实施例载体,按照URL网址路径后面的查询字符串格式,将所述播放参数的7个内容用小写字母参数形式记录在网页网址内,具体是PanoPlay.html@index=2&b=6&r=yes&a=run&s=4&t=20,所述播放参数索引设定为2、全景图像提取约束条件设定为6(即将全景图像约束条件按编码分组)、播放循环标识设定为yes、播放状态标识设定为run、每屏多视窗数量设定为4、每屏播放时间设定为20秒,具体在2.XML(与所述播放参数索引参数具体数值对应一致)中按照定义的标签和文档结构,依据所述全景图像播放数据存贮结构,设置包括所述全景图像提取约束条件、播放序号、全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式的数据项,按照所述播放序号由小到大顺序录入编辑存储一组播放数据,通过使用2.XML文件在网页内装载一组全景图像播放数据,首先在PanoPlay.html文件中初始化全景图像使用<script type='text/javascript' src='GPanoTJW.js'></script>,以PanoPlay.html内的多个全景图像视窗作为全景图像播放载体,实现在网页页面上,一组全景图像顺序分屏定向动画显示,计算机程序进行以下步骤:
步骤一,播放视窗设置1,包括在显示器屏幕页面内设置的一个顶级区域S100,在所述S100顶级区域内,设置包括1个以上最多9个全景图像容器的全景图像播放屏,设置包括播放、暂停操作控制的操作控件,进入步骤二。本发明实施例可以提供如下具体方案:PanoPlay.html页面首屏窗口设置布局使用DIV及CSS3形成播放页面,具体在PanoPlay.html文件内使用< div >标签将页面在整体上进行区块分割,把页面分为若干个区块进行布局,然后对各个区块进行CSS3的宽度百分比、高度百分比、浮动、背景颜色、边框样式设置,最后在各个区块中添加视窗,适应不同互联网终端显示器屏幕分辨率、各窗口占据页面分割比例不变、各窗口相对位置不变、同时可自动延伸撑满首屏;具体使用<div >标签设置一个顶级区域S100,在所述S100顶级区域内分三行三列,具体使用< div >标签设置9个窗口,分别是S110、S120、S130、S140、S150、S160、 S170、S180、S190,在所述S110窗口内创建一个空div窗口元素命名为S111全景图像容器,在所述S120窗口内创建一个空div窗口元素命名为S121全景图像容器,在所述S130窗口内创建一个空div窗口元素命名为S131全景图像容器,在所述S140窗口内创建一个空div窗口元素命名为S141全景图像容器,在所述S150窗口内创建一个空div窗口元素命名为S151全景图像容器,在所述S160窗口内创建一个空div窗口元素命名为S161全景图像容器,在所述S170窗口内创建一个空div窗口元素命名为S171全景图像容器,在所述S180窗口内创建一个空div窗口元素命名为S181全景图像容器,在所述S190窗口内创建一个空div窗口元素命名为S191全景图像容器,在所述S100顶级区域下方设置全景图像播放工具条区块S200,在所述S200内使用<input type="button"id="S211"display="none"name="S211"value="暂停"onclick=" S211()" />设置播放/暂停按钮S211并隐藏显示,进入步骤二。本发明实施例中,关闭S110、S120、S130、S140、S150、S160、 S170、S180、S190窗口具体使用JavaScript隐藏控件的方法,通过设置控件的style的"display"="none"实现隐藏窗口,打开窗口通过设置控件的style的"display"="-moz-box"和display"="-webkit-box"实现重新打开窗口,本发明对窗口、按钮的背景颜色、边框样式设置不加以限制。
步骤二,播放结构与变量设置2,包括设置包括全景图像ID编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式字段的全景图像播放数据存贮结构,设置包括播放参数索引变量INDEX、全景图像提取约束条件变量B、播放循环标识变量R(取值包括:yes或no,yes表示循环、no表示无循环)、播放状态标识变量A(取值包括:run或stop, run表示运行,stop表示暂停)、每屏多视窗数量变量S(取值范围:1至9)、每屏播放时间变量T(取值范围:3秒至60秒)的播放参数,对应所述全景图像播放数据存贮结构的字段,设置包括全景图像编码变量ID、名称变量Name、水平视角变量H、竖直视角变量V、放大系数变量Z、动画时间间隔变量W(取值范围:10至500毫秒)、动画幅度变量CON(取值范围:0.01至1度)、动画模式变量DIC(取值包括:静止、左转、右转、斜左上、斜右下、上移、下移、斜右上、斜左下、放大、缩小)的显示参数,设置包括全景图像总数变量N、播放屏内位置指针变量C、播放遍历位置指针变量P的操作参数,C=0,P=0,进入步骤三。本发明实施例可以提供如下具体方案:在PanoPlay.html文件中设置一个播放参数索引变量INDEX初始值设置为NULL、一个全景图像提取约束条件变量B初始值设置为NULL、一个播放循环标识变量R初始值为yes、一个播放状态标识变量A初始值为run、一个每屏多视窗数量变量S初始值为9、一个每屏播放时间变量T初始值为10,设置8个一维数组(8个一维数组依次对应全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式8个字段的所述全景图像播放数据存贮结构),设置一个全景图像播放总数变量N初始值为0、一个播放遍历位置指针变量P初始值为0、一个播放屏内位置指针变量C初始值为0,设置一个全景图像编码变量ID初始值为NULL、一个名称变量Name初始值为NULL、一个水平视角变量H初始值为1、一个竖直视角变量V初始值为1、一个放大系数变量Z初始值为1、一个动画时间间隔变量W初始值为10、一个动画幅度变量CON初始值为1、一个动画模式变量DIC初始值为左转,进入步骤三。需要说明的是,本发明对所述各变量具体命名不加以限制。
步骤三,读取播放数据3,包括读取播放参数并对应赋值给所述播放参数相应变量INDEX、B、R、A、S、T,依据所读取的播放参数中的全景图像提取约束条件B,从指定包括网络数据库、数据文件的数据表、XML文件中读取M(2个以上)个全景图像的包括所述全景图像播放数据存贮结构全部字段的播放数据,并按照播放顺序由前到后,对应存储在所述全景图像播放数据存贮结构中并形成M条记录,N=M,进入步骤四。本发明实施例可以提供如下具体方案:在PanoPlay.html文件内,具体按照URL网址路径后面的查询字符串格式,分别读取网页地址参数变量HREF内的各小写字母参数index、b、r、a、s、t对应赋值给对应设置的大写字母变量INDEX、B、R、A、S、T,具体为INDEX=2+“.XML”(检索条件)、B=6(注:将全景图像约束条件按编码分组)、R=yes(注:yes表示循环播放)、A=run(注:程序装载就进入运行播放状态)、S=4(注:表示播放屏由4个全景图像视窗构成)、T=20(单位:秒,每屏播放时间),按照所述全景图像播放数据存贮结构,从INDEX(2.XML)中读取M条记录,读取的每一条记录包括所述全景图像提取约束条件、播放序号、全景图像编码ID、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式10个数据,按照所述B全景图像提取约束条件从所读取M条记录中再选出N条记录,并按照所述播放序号从小到大进行排序,并所述全景图像编码ID、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式8个数据对应存储在所创建的8个一维数组中再次形成一个与所述全景图像播放数据存贮结构的数据结构一致的播放数据,方便之后数据读取操作使用,进入步骤四。
步骤四,装载一条播放记录4,包括从所述全景图像播放数据存贮结构中的第P条记录位置,读取全部字段的数据并对应赋值给所述显示参数相应变量ID、Name、H、V、Z、W、CON、DIC,如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗,所述对应全景图像视窗加载所读取的所述ID、Name、H、V、Z初始化定向显示全景图像,进入步骤五。本发明实施例可以提供如下具体方案:在PanoPlay.html文件内对所述8个一维数组构成的播放数据的第P条记录,依次读取全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式字段数据分别赋值给ID、Name、H、V、Z、W、CON、DIC,由于所述S等于4,则所述C等于0、1、2、3所指向的全景图像容器分别为所述S111、S121、S141、S151,在所述P首次等于1、2、3、4,具体使用“X市X行业基础设施信息管理系统”提供的针对全景图像Web应用的JavaScriptAPI分别实例化所述S111、S121、S141、S151全景图像容器成为对应全景图像视窗S111、S121、S141、S151,并定向显示全景图像,且关闭S130、S160、S170、S180、S190,以所述P首次等于1为例,varserver1=new GPanoServer();server1.name=ID;server1.path="data/";var option1=new GPanoOptions();option1.panoServer=server1;var S111 = new GPanoMap(“S111”, option1); S111.setHeading(parseFloat(H));S111.setPitch(parseFloat(V));panoObj1.setPitch(Z);S111.setLaber=Name,页面显示布局如图9所示,进入步骤五。
步骤五,全景图像视窗显示5,包括在所述指定一全景图像视窗,按照全景图像视窗动画总帧数SUM=T/W,设置一个包括所述SUM个均匀间隔所述W的时间轴序列帧,执行所述SUM次延迟所述W毫秒、刷新显示全景图像操作,所述刷新显示全景图像操作进一步包括,使用所装载的水平视角、竖直视角、放大系数、动画幅度数据,按照所装载的所述动画模式,计算出当前帧全景图像的水平视角、竖直视角、放大系数在对应全景图像视窗显示全景图像,进入步骤六。本发明实施例可以提供如下具体方案:在PanoPlay.html文件中针对一个指定全景图像视窗设置SUM个延迟执行函数setTimeout(),形成一个时间轴,每个setTimeout()函数设定时间间隔设置为W毫秒,每个setTimeout()执行下面函数funct(),函数funct()中包括,设置当前帧位置指针变量Step=0(0<Step<所述全景图像视窗动画总帧数SUM),提取所述播放数据中第P条记录的全景图像水平视角、竖直视角、放大系数、动画幅度和动画模式并对应赋值给H、V、Z、CON、DIC,判断所述动画模式DIC,如果等于静止,则H=H、V=V、Z=Z,如果等于左转,则H=H+Step*CON、V=V、Z=Z,如果等于右转,则H=H-Step*CON、V=V、Z=Z,如果等于斜左上,则H=H+Step*CON、V=V+Step*CON、Z=Z,如果等于斜右下,则H=H-Step*CON、V=V-Step*CON、Z=Z,如果等于上移,则H=H、V=V+Step*CON、Z=Z,如果等于下移,则H=H、V=V-Step*CON、Z=Z,如果等于斜右上,则H=H-Step*CON、V=V+Step*CON、Z=Z,如果等于斜左下,则H=H+Step*CON、V=V-Step*CON、Z=Z,如果等于放大,则H=H、V=V、Z=Z+Step*CON,如果等于缩小,则H=H、V=V、Z=Z-Step*CON(Z>0),如果DIC等于左转、右转、斜左上、斜右下、上移、下移、斜右上、斜左下,则使用当前播放帧的H、V和对应全景图像视窗(所述C等于0、1、2、3,所对应的全景图像视窗分别为所述S111、S121、S141、S151)的setHeading(parseFloat(H))和setPitch(parseFloat(V))在其视窗内显示全景图像,如果DIC等于放大、缩小,则使用当前播放帧的Z和对应全景图像视窗的setPitch(parseFloat(Z))在其视窗内更新显示全景图像,Step=Step+1;进入步骤六。
步骤六,循环控制6,包括P=P+1,判断所述C,如果小于所述S则C=C+1、跳转至步骤四,否则C=0、跳转至步骤七。本发明实施例可以提供如下具体方案:在PanoPlay.html文件中具体是:P=P+1,具体使用ifelse,判断所述C播放屏内位置指针,如果小于S则C=C+1、跳转至步骤四,否则C=0、跳转至步骤七。需要说明的是,本发明的同屏多视窗同时显示多个全景图像,可实现多个全景图像同屏定向对比观察,与传统逐个察看全景图像形式相比,将不同景物图像放在一起对比察看,对比效果明显。
步骤七,操作控制7,包括监测所述操作控件是否触发,如果触发、则清除所述全景图像视窗播放屏内所有全景图像视窗的时间轴序列帧,进一步判断所述A,如果等于Stop则将所述A设置为run、所述操作控件显示播放提示、跳转至步骤八,否则所述A设置为Stop、所述操作控件显示暂停提示、跳转至步骤七的开始。本发明实施例可以提供如下具体方案:在PanoPlay.html文件中具体是监测所述全景图像播放工具条内的播放/暂停按钮是否触发,具体使用onclick="S211()",如果所述播放/暂停按钮触发即执行S211(),S211()具体包括,如果A等于Stop、则A等于run、使用window.clearInterval()清除所述全景图像视窗播放屏内所有全景图像视窗的时间轴序列帧、显示所述S211播放/暂停按钮为播放状态、跳转至步骤八,如果 A等于run、则A等于Stop、使用window.clearInterval()清除所述全景图像视窗播放屏内所有全景图像视窗的时间轴序列帧、显示所述S211播放/暂停按钮为暂停状态、跳转至步骤七的开始。
步骤八,播放控制8,包括延迟所述T秒,之后判断所述P,如果小于N、则C=0、跳转至步骤四,如果大于等于N、则进一步判断所述R,如果等于yes则P=0、C=0、跳转至步骤四,如果等于no则结束。本发明实施例可以提供如下具体方案:在PanoPlay.html文件中具体使用setTimeout()延迟T秒,执行下面函数func(),所述func()具体包括,if(P<N) { C=0;执行步骤四;} else{ if(R==“yes”){P=0;C=0;执行步骤四;}}。
从上述本发明的实施例2可以得出如下明显优势,使用某单位存储在租用互联网服务器上且自主拍摄的全景图像,以及相应API,将一组全景图像播放数据存放在XML中,创建一个页面作为全景图像播放器载体,实现了全景图像一屏一屏全自动顺序播放,全景图像同屏多视窗定向动画显示,进一步验证了本发明实施例全景图像播放器在全景图像播放数据提取、存贮、操作、显示的通用性,进一步验证了全景图像成为一种新的互联网播放资源的可能性和可行性,解决了多个全景图像没有播放工具平台的问题,创新一种影像展示形式。
实施例3,作为本发明的一个实施例,如图1所示,示出了本发明实现一种全景图像播放器显示计算机系统的程序流程图,实施例3在以Android作为智能手机的操作系统上,以一个名为PanoPlay.app作为载体的手机应用软件,使用Java语言,将包括所述R=yes(播放循环标识,yes表示循环、no表示无循环)、A=run(播放状态标识, run表示运行,stop表示暂停)、S=3(每屏多视窗数量变量,1至9)、T=30(每屏播放时间,3秒至60秒)的播放参数,以及包括所述全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式的数据项,按照所述播放顺序由小到大顺序的N条记录播放数据存储在一个XML文件中,通过使用所述XML文件在页面内装载一组全景图像播放数据,供播放的全景图像具体调用某互联网公司街景地图服务平台提供的全景图像,全景图像视窗使用所述某互联网公司的Android全景SDK进行创建,在实施例3中建立一个页面文件activity_main.xml及一个控制文件MainActivity.java,还要修改配置文件AndroidMainifest.xml,访问某互联网公司街景地图服务平台http://lbsyun.baidu.com,依次选择:开发文档->Android开发->Android全景SDK、->产品下载,勾选全景后下载,将开发包里的BaiduPanoramaSDK_v2_1_0.jar拷贝到libs根目录下,将libapp_BaiduPanoApplib.so拷贝到libs\armeabi目录下,在清单文件里,在Activity组件注册的代码后,添加注册远程服务和配置应用Key的代码,以页面内的多个全景图像视窗作为全景图像播放载体,实现在页面上,一组全景图像顺序分屏定向、定位、定义播放显示,计算机程序进行以下步骤:
步骤一,播放视窗设置1,包括在显示器屏幕页面内设置的一个顶级区域S100,在所述S100顶级区域内,设置包括1个以上最多9个全景图像容器的全景图像播放屏,设置包括播放、暂停操作控制的操作控件,进入步骤二。本发明实施例可以提供如下具体方案:具体在布局文件activity_main.xml内在终端屏幕页面内具体使用相对布局<RelativeLayout>创建一个顶级区域S100,在所述S100顶级区域内,使用<com.baidu.lbsapi.panoramaview.PanoramaView android:id="@+id/ S110" />创建一个名为全景图像容器S110,同理创建全景图像容器S140、S170,具体使用<TextView>在每个全景图像容器上边对应创建一个文字控件,分别为命名为T111、T141、T171,在所述S100顶级区域底部使用<Button android:id="@+id/ S210" />创建一个名为播放/暂停按钮S211,所述3个全景图像容器、3个文本控件、1个按钮均处于显示状态并充满所述S100顶级区域,页面设置如图10视图1所示,进入步骤二。
步骤二,播放结构与变量设置2,包括设置包括全景图像ID编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式字段的全景图像播放数据存贮结构,设置包括播放参数索引变量INDEX、全景图像提取约束条件变量B、播放循环标识变量R(取值包括:yes或no,yes表示循环、no表示无循环)、播放状态标识变量A(取值包括:run或stop, run表示运行,stop表示暂停)、每屏多视窗数量变量S(取值范围:1至9)、每屏播放时间变量T(取值范围:3秒至60秒)的播放参数,对应所述全景图像播放数据存贮结构的字段,设置包括全景图像编码变量ID、名称变量Name、水平视角变量H、竖直视角变量V、放大系数变量Z、动画时间间隔变量W(取值范围:10至500毫秒)、动画幅度变量CON(取值范围:0.01至1度)、动画模式变量DIC(取值包括:静止、左转、右转、斜左上、斜右下、上移、下移、斜右上、斜左下、放大、缩小)的显示参数,设置包括全景图像总数变量N、播放屏内位置指针变量C、播放遍历位置指针变量P的操作参数,C=0,P=0,进入步骤三。本发明实施例可以提供如下具体方案:设置一个播放参数索引变量INDEX初始值设置为NULL、一个全景图像提取约束条件变量B初始值设置为NULL、一个播放循环标识变量R初始值为yes、一个播放状态标识变量A初始值为run、一个每屏多视窗数量变量S初始值为9、一个每屏播放时间变量T初始值为10,设置8个一维数组(8个一维数组依次对应全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式8个字段的所述全景图像播放数据存贮结构),设置一个全景图像播放总数变量N初始值为0、一个播放遍历位置指针变量P初始值为0、一个播放屏内位置指针变量C初始值为0,设置一个全景图像编码变量ID初始值为NULL、一个名称变量Name初始值为NULL、一个水平视角变量H初始值为1、一个竖直视角变量V初始值为1、一个放大系数变量Z初始值为1、一个动画时间间隔变量W初始值为10、一个动画幅度变量CON初始值为1、一个动画模式变量DIC初始值为左转,进入步骤三。
步骤三,读取播放数据3,包括读取播放参数并对应赋值给所述播放参数相应变量INDEX、B、R、A、S、T,依据所读取的播放参数中的全景图像提取约束条件B,从指定包括网络数据库、数据文件的数据表、XML文件中读取M(2个以上)个全景图像的包括所述全景图像播放数据存贮结构全部字段的播放数据,并按照播放顺序由前到后,对应存储在所述全景图像播放数据存贮结构中并形成M条记录,N=M,进入步骤四。本发明实施例可以提供如下具体方案:在主代码:MainActivity.java中,读取所述指定XML文件内的包括所述R=yes(播放循环标识,yes表示循环、no表示无循环)、A=run(播放状态标识, run表示运行,stop表示暂停)、S=3(每屏多视窗数量变量,1至9)、T=30(每屏播放时间,3秒至60秒)的播放参数,以及一组包括所述全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式的数据项的N条记录的播放数据,具体是在MainActivity.java包括设置有,Private File file;file =new File(getFilesDir(),“test.xml”);通过DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance()获取到DocumentBuilder的实例化,通过DocumentBuilder builder = builderFactory.newDocumentBuilder()拿到DocumentBuilder,通过Document xml = builder.parse(file) 解析xml文件,之后,获取其根标签,根据子标签进行查找,返回的是一个list集合,获取到子标签以及属性并赋值给所述变量R、A、S、T,以及对应所述8个一维数组中,进入步骤四。
步骤四,装载一条播放记录4,包括从所述全景图像播放数据存贮结构中的第P条记录位置,读取全部字段的数据并对应赋值给所述显示参数相应变量ID、Name、H、V、Z、W、CON、DIC,如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗,所述对应全景图像视窗加载所读取的所述ID、Name、H、V、Z初始化定向显示全景图像,进入步骤五。本发明实施例可以提供如下具体方案:对所述8个一维数组构成的播放数据的第P条记录,依次读取全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式字段数据分别赋值给ID、Name、H、V、Z、W、CON、DIC,由于所述S等于3,则所述C等于0、1、2所指向的全景图像容器分别为所述S110、S140、S170,在所述P首次等于1、2、3,具体可以是在onCreate方法中使用全景图像引擎实例化所述S110、S140、S170全景图像容器为全景图像视窗S111、S141、S171,定向显示全景图像并充满全景图像视窗,为所述T111、T141、T171,进行赋值操作,以所述S110全景图像容器为例,具体是PanoramaView S111 = (PanoramaView)findViewById(R.id.S110),S111.setPanorama(D),S111.setPanoramaHeading(H),S111.setPanoramaPitch(V),S111.setPanoramaLevel(Z),T111.setText(Name),页面显示布局如图9附图2所示,进入步骤五。
步骤五,全景图像视窗显示5,包括在所述指定一全景图像视窗,按照全景图像视窗动画总帧数SUM=T/W,设置一个包括所述SUM个均匀间隔所述W的时间轴序列帧,执行所述SUM次延迟所述W毫秒、刷新显示全景图像操作,所述刷新显示全景图像操作进一步包括,使用所装载的水平视角、竖直视角、放大系数、动画幅度数据,按照所装载的所述动画模式,计算出当前帧全景图像的水平视角、竖直视角、放大系数在对应全景图像视窗显示全景图像,进入步骤六。本发明实施例可以提供如下具体方案:本发明实施例可以提供如下具体方案:针对一个全景图像视窗设置SUM个延迟执行函数postDelayed(),形成一个时间轴,每个postDelayed()函数设定时间间隔设置为W毫秒,每个postDelayed()可以执行下面函数getVersion(),具体可以是Private Handler mHandler = new Handler();mHandler.postDelayed(new Runnable() {@Override public void run() {getVersion();}},W),函数getVersion()中执行包括,设置当前帧位置指针变量Step=0(0<Step<SUM),使用所述播放数据中第P条记录的全景图像水平视角、竖直视角、放大系数、动画幅度和动画模式并对应赋值给H、V、Z、CON、DIC,判断所述动画模式DIC,如果等于静止,则H=H、V=V、Z=Z,如果等于左转,则H=H+Step*CON、V=V、Z=Z,如果等于右转,则H=H-Step*CON、V=V、Z=Z,如果等于斜左上,则H=H+Step*CON、V=V+Step*CON、Z=Z,如果等于斜右下,则H=H-Step*CON、V=V-Step*CON、Z=Z,如果等于上移,则H=H、V=V+Step*CON、Z=Z,如果等于下移,则H=H、V=V-Step*CON、Z=Z,如果等于斜右上,则H=H-Step*CON、V=V+Step*CON、Z=Z,如果等于斜左下,则H=H+Step*CON、V=V-Step*CON、Z=Z,如果等于放大,则H=H、V=V、Z=Z+Step*CON,如果等于缩小,则H=H、V=V、Z=Z-Step*CON(Z>0),如果DIC等于左转、右转、斜左上、斜右下、上移、下移、斜右上、斜左下,则使用当前播放帧的H、V和对应全景图像视窗的setPanoramaHeading(H)、setPanoramaPitch(V)在其视窗内显示全景图像,如果DIC等于放大、缩小,则使用当前播放帧的Z和对应实例化某个全景图像视窗的setPanoramaLevel(Z)在其视窗内更新显示全景图像,Step=Step+1;进入步骤六。
步骤六,循环控制6,包括P=P+1,判断所述C,如果小于所述S则C=C+1、跳转至步骤四,否则C=0、跳转至步骤七。本发明实施例可以提供如下具体方案:P=P+1,具体使用ifelse,判断所述C播放屏内位置指针,如果小于S则C=C+1、跳转至步骤四,否则C=0、跳转至步骤七。
步骤七,操作控制7,包括监测所述操作控件是否触发,如果触发、则清除所述全景图像视窗播放屏内所有全景图像视窗的时间轴序列帧,进一步判断所述A,如果等于Stop则将所述A设置为run、所述操作控件显示播放提示、跳转至步骤八,否则所述A设置为Stop、所述操作控件显示暂停提示、跳转至步骤七的开始。本发明实施例可以提供如下具体方案:对所述S211播放/暂停按钮设置监听事件,mDownloadBtn = findViewById(R.id.S211);mDownloadBtn.setOnClickListener(new View.OnClickListener() {@Override publicvoid onClick(View view) {如果A等于Stop、则A等于run、使用终止线程运行清除所述全景图像视窗播放屏内所有全景图像视窗的时间轴序列帧、显示所述S211播放/暂停按钮为播放状态、跳转至步骤八,如果 A等于run、则A等于Stop、使用终止线程运行清除所述全景图像视窗播放屏内所有全景图像视窗的时间轴序列帧、显示所述S211播放/暂停按钮为暂停状态、跳转至步骤七,实现播放/暂停操作控制。
步骤八,播放控制8,包括延迟所述T秒,之后判断所述P,如果小于N、则C=0、跳转至步骤四,如果大于等于N、则进一步判断所述R,如果等于yes则P=0、C=0、跳转至步骤四,如果等于no则结束。本发明实施例可以提供如下具体方案:具体使用postDelayed()延迟T秒,执行下面函数func(),func()具体包括,if(P<N) { C=0;执行步骤四;} else{ if(R==“yes”){P=0;C=0;执行步骤四;}}。
从上述本发明的实施例3可以得出如下明显优势,在以Android作为智能手机的操作系统的屏幕上,通过读取存储在一个指定XML文件中的所述播放参数、播放数据,定向播放一组全景图像,再通过按钮的触发响应,控制播放与暂停,解决以Android作为智能手机的操作系统的屏幕上没有全景图像播放器问题。
以上对本发明所提供的一种实现全景图像播放器显示计算机系统,进行了详细介绍,本文中应用了具体3个实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制,本领域技术人员应该可以理解,如果利用其它开发平台和数据,使用某种计算机语言开发,无论是PC机、智能手机、平板电脑、智能电视、智能平板显示设备,只要在互联网终端屏幕内全景图像对象具有上述显示设计、操作步骤或功能,都应该在本发明申请的保护范围之内。
Claims (10)
1.一种实现全景图像播放器显示计算机系统,包括存储器、处理器、显示器、网络、全景图像,以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现以下步骤:
步骤一,播放视窗设置(1),包括在显示器屏幕页面内设置的一个顶级区域S100,在所述S100顶级区域内,设置包括1个以上最多9个全景图像容器的全景图像播放屏,设置包括播放、暂停操作控制的操作控件,进入步骤二(2);
步骤二,播放结构与变量设置(2),包括设置包括全景图像ID编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式字段的全景图像播放数据存贮结构,设置包括播放参数索引变量INDEX、全景图像提取约束条件变量B、播放循环标识变量R、播放状态标识变量A、每屏多视窗数量变量S、每屏播放时间变量T的播放参数,对应所述全景图像播放数据存贮结构的字段,设置包括全景图像编码变量ID、名称变量Name、水平视角变量H、竖直视角变量V、放大系数变量Z、动画时间间隔变量W、动画幅度变量CON、动画模式变量DIC的显示参数,设置包括全景图像总数变量N、播放屏内位置指针变量C、播放遍历位置指针变量P的操作参数,C=0,P=0,进入步骤三(3);R取值包括yes或no,yes表示循环、no表示无循环,A取值包括run或stop, run表示运行,stop表示暂停,S取值范围1至9,T取值范围3秒至60秒,W取值范围10至500毫秒,CON取值范围0.01至1度,DIC取值包括静止、左转、右转、斜左上、斜右下、上移、下移、斜右上、斜左下、放大、缩小;
步骤三,读取播放数据(3),包括读取播放参数并对应赋值给所述播放参数相应变量INDEX、B、R、A、S、T,依据所读取的播放参数中的全景图像提取约束条件B,从指定包括网络数据库、数据文件的数据表、XML文件中读取M个全景图像的包括所述全景图像播放数据存贮结构全部字段的播放数据,并按照播放顺序由前到后,对应存储在所述全景图像播放数据存贮结构中并形成M条记录,N=M,进入步骤四(4);M为2个以上;
步骤四,装载一条播放记录(4),包括从所述全景图像播放数据存贮结构中的第P条记录位置,读取全部字段的数据并对应赋值给所述显示参数相应变量ID、Name、H、V、Z、W、CON、DIC,如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗,所述对应全景图像视窗加载所读取的所述ID、Name、H、V、Z初始化定向显示全景图像,进入步骤五(5);
步骤五,全景图像视窗显示(5),包括在指定一全景图像视窗,按照全景图像视窗动画总帧数SUM=T/W,设置一个包括所述SUM个均匀间隔所述W的时间轴序列帧,执行所述SUM次延迟所述W毫秒、刷新显示全景图像操作,所述刷新显示全景图像操作进一步包括,使用所装载的水平视角、竖直视角、放大系数、动画幅度数据,按照所装载的所述动画模式,计算出当前帧全景图像的水平视角、竖直视角、放大系数在对应全景图像视窗显示全景图像,进入步骤六(6);
步骤六,循环控制(6),包括P=P+1,判断所述C,如果小于所述S则C=C+1、跳转至步骤四(4),否则C=0、跳转至步骤七(7);
步骤七,操作控制(7),包括监测所述操作控件是否触发,如果触发、则清除全景图像视窗播放屏内所有全景图像视窗的时间轴序列帧,进一步判断所述A,如果等于Stop则将所述A设置为run、所述操作控件显示播放提示、跳转至步骤八(8),否则所述A设置为Stop、所述操作控件显示暂停提示、跳转至步骤七(7)的开始;
步骤八,播放控制(8),包括延迟所述T秒,之后判断所述P,如果小于N、则C=0、跳转至步骤四(4),如果大于等于N、则进一步判断所述R,如果等于yes则P=0、C=0、跳转至步骤四(4),如果等于no则结束。
2.根据权利要求1所述的一种实现全景图像播放器显示计算机系统,其特征在于所述的步骤一,播放视窗设置(1)中所述在所述S100顶级区域内,设置包括1个以上最多9个全景图像容器的全景图像播放屏还包括,在所述S100顶级区域内分3行3列分割设置9个全景图像容器,分别用S110、S120、S130、S140、S150、S160、S170、S180、S190表示,在最上一行从左向右分别命名为S110、S120、S130;在中间一行从左向右分别命名为S140、S150、S160;在最下一行从左向右分别命名为S170、S180、S190,形成全景图像播放屏布局。
3.根据权利要求1所述的一种实现全景图像播放器显示计算机系统,其特征在于所述的步骤三,读取播放数据(3)中所述读取播放参数并对应赋值给所述播放参数相应变量INDEX、B、R、A、S、T还包括,在程序加载时可以只加载一个参数,将该参数作为所述读取播放参数的索引,从指定包括网络数据库、数据文件的数据表、XML文件中,分别读取包括全景图像提取约束条件、播放循环标识、播放状态标识、每屏多视窗数量、每屏播放时间参数的所述播放参数,并对应赋值给对应变量。
4.根据权利要求1所述的一种实现全景图像播放器显示计算机系统,其特征在于所述的步骤三,读取播放数据(3)中所述读取播放参数并对应赋值给所述播放参数相应变量INDEX、B、R、A、S、T还包括,在程序加载时可以加载包括播放参数索引、全景图像提取约束条件、播放循环标识、播放状态标识、每屏多视窗数量、每屏播放时间参数的全部播放参数,并对应赋值给对应变量,如果所述程序可以是以包括网页的形式作为载体,可以按照指定超链接目标的URL网址路径后面的查询字符串格式,分别读取网页地址参数变量HREF内的所述播放参数索引、全景图像提取约束条件、播放循环标识、播放状态标识、每屏多视窗数量、每屏播放时间参数对应赋值给对应变量。
5.根据权利要求1所述的一种实现全景图像播放器显示计算机系统,其特征在于所述的步骤三,读取播放数据(3)中所述依据所读取的播放参数中的全景图像提取约束条件B,从指定包括网络数据库、数据文件的数据表、XML文件中读取M个全景图像的包括所述全景图像播放数据存贮结构全部字段的播放数据,并按照播放顺序由前到后,对应存储在所述全景图像播放数据存贮结构中并形成M条记录还包括,依据所读取的播放参数中的全景图像提取约束条件B,遍历指定包括网络数据库、数据文件的数据表、XML文件,读取包括全景图像编码、名称、水平视角、竖直视角、放大系数、动画时间间隔、动画幅度、动画模式作为一条记录,按照所述播放顺序由前到后,存储在所述全景图像播放数据存贮结构中,在所述全景图像播放数据存贮结构中形成含有M条记录的一组全景图像播放数据,M为2个以上。
6.根据权利要求2所述的一种实现全景图像播放器显示计算机系统,其特征在于所述步骤四,装载一条播放记录(4)中所述如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗还包括,如果所述S等于1,则所述C所指向的全景图像容器为所述S110,关闭除所述S110之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111并充满所述S100,如果所述S等于2,则所述C等于0、1所指向的全景图像容器分别为所述S110、S120,关闭除所述S110、S120之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S120未被实例化、则使用全景图像引擎将所述S120实例化成对应全景图像视窗S121,所述S111、S121构成双视窗播放屏充满所述S100,如果所述S等于3,则所述C等于0、1、2所指向的全景图像容器分别为所述S110、S140、S170,关闭除所述S110、S140、S170之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S140未被实例化、则使用全景图像引擎将所述S140实例化成对应全景图像视窗S141,如果所述S170未被实例化、则使用全景图像引擎将所述S170实例化成对应全景图像视窗S171,所述S111、S141、S171构成三视窗播放屏充满所述S100。
7.根据权利要求2所述的一种实现全景图像播放器显示计算机系统,其特征在于所述步骤四,装载一条播放记录(4)中所述如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗还包括,如果所述S等于4,则所述C等于0、1、2、3所指向的全景图像容器分别为所述S110、S120、S140、S150,关闭除所述S110、S120、S140、S150之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S120未被实例化、则使用全景图像引擎将所述S120实例化成对应全景图像视窗S121,如果所述S140未被实例化、则使用全景图像引擎将所述S140实例化成对应全景图像视窗S141,如果所述S150未被实例化、则使用全景图像引擎将所述S150实例化成对应全景图像视窗S151,所述S111、S121、S141、S151构成四视窗播放屏充满所述S100,如果所述S等于6,则所述C等于0、1、2、3、4、5所指向的全景图像容器分别为所述S110、S120、S130、S140、S150、S160,关闭除所述S110、S120、S130、S140、S150、S160之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S120未被实例化、则使用全景图像引擎将所述S120实例化成对应全景图像视窗S121,如果所述S130未被实例化、则使用全景图像引擎将所述S130实例化成对应全景图像视窗S131,如果所述S140未被实例化、则使用全景图像引擎将所述S140实例化成对应全景图像视窗S141,如果所述S150未被实例化、则使用全景图像引擎将所述S150实例化成对应全景图像视窗S151,如果所述S160未被实例化、则使用全景图像引擎将所述S160实例化成对应全景图像视窗S161,所述S111、S121、S131、S141、S151、S161构成六视窗播放屏充满所述S100。
8.根据权利要求2所述的一种实现全景图像播放器显示计算机系统,其特征在于所述步骤四,装载一条播放记录(4)中所述如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗还包括,如果所述S等于8,则所述C等于0、1、2、3、4、5、6、7所指向的全景图像容器分别为所述S110、S120、S130、S140、S160、S170、S180、S190,关闭除所述S110、S120、S130、S140、S160、S170、S180、S190之外所有全景图像容器,且进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S120未被实例化、则使用全景图像引擎将所述S120实例化成对应全景图像视窗S121,如果所述S130未被实例化、则使用全景图像引擎将所述S130实例化成对应全景图像视窗S131,如果所述S140未被实例化、则使用全景图像引擎将所述S140实例化成对应全景图像视窗S141,如果所述S160未被实例化、则使用全景图像引擎将所述S160实例化成对应全景图像视窗S161,如果所述S170未被实例化、则使用全景图像引擎将所述S170实例化成对应全景图像视窗S171,如果所述S180未被实例化、则使用全景图像引擎将所述S180实例化成对应全景图像视窗S181,如果所述S190未被实例化、则使用全景图像引擎将所述S190实例化成对应全景图像视窗S191,所述S111、S121、S131、S141、S161、S171、S181、S191构成八视窗播放屏。
9.根据权利要求2所述的一种实现全景图像播放器显示计算机系统,其特征在于所述步骤四,装载一条播放记录(4)中所述如果所述C所指向的全景图像容器未被实例化,则使用全景图像引擎将所述所指向的全景图像容器实例化成对应全景图像视窗还包括,如果所述S等于9,则所述C等于0、1、2、3、4、5、6、7、8所指向的全景图像容器分别为所述S110、S120、S130、S140、S150、S160、S170、S180、S190,进一步判断,如果所述S110未被实例化、则使用全景图像引擎将所述S110实例化成对应全景图像视窗S111,如果所述S120未被实例化、则使用全景图像引擎将所述S120实例化成对应全景图像视窗S121,如果所述S130未被实例化、则使用全景图像引擎将所述S130实例化成对应全景图像视窗S131,如果所述S140未被实例化、则使用全景图像引擎将所述S140实例化成对应全景图像视窗S141,如果所述S150未被实例化、则使用全景图像引擎将所述S150实例化成对应全景图像视窗S151,如果所述S160未被实例化、则使用全景图像引擎将所述S160实例化成对应全景图像视窗S161,如果所述S170未被实例化、则使用全景图像引擎将所述S170实例化成对应全景图像视窗S171,如果所述S180未被实例化、则使用全景图像引擎将所述S180实例化成对应全景图像视窗S181,如果所述S190未被实例化、则使用全景图像引擎将所述S190实例化成对应全景图像视窗S191,所述S111、S121、S131、S141、S151、S161、S171、S181、S191构成九视窗播放屏充满所述S100。
10.根据权利要求1所述的一种实现全景图像播放器显示计算机系统,其特征在于所述的步骤五,全景图像视窗显示(5)中所述刷新显示全景图像操作还包括,设置当前帧位置指针变量Step=0,Step取值范围为0<Step<所述SUM全景图像视窗动画总帧数,判断所述动画模式DIC,如果等于静止,则H=H、V=V、Z=Z,如果等于左转,则H=H+Step*CON、V=V、Z=Z,如果等于右转,则H=H-Step*CON、V=V、Z=Z,如果等于斜左上,则H=H+Step*CON、V=V+Step*CON、Z=Z,如果等于斜右下,则H=H-Step*CON、V=V-Step*CON、Z=Z,如果等于上移,则H=H、V=V+Step*CON、Z=Z,如果等于下移,则H=H、V=V-Step*CON、Z=Z,如果等于斜右上,则H=H-Step*CON、V=V+Step*CON、Z=Z,如果等于斜左下,则H=H+Step*CON、V=V-Step*CON、Z=Z,如果等于放大,则H=H、V=V、Z=Z+Step*CON,如果等于缩小,则H=H、V=V、Z=Z-Step*CON,Z>0,Step=Step+1,使用计算出的当前帧的H、V、Z每隔W毫秒更新全景图像视窗一幅画面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911059248.4A CN110806848B (zh) | 2019-11-02 | 2019-11-02 | 一种实现全景图像播放器显示计算机系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911059248.4A CN110806848B (zh) | 2019-11-02 | 2019-11-02 | 一种实现全景图像播放器显示计算机系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110806848A CN110806848A (zh) | 2020-02-18 |
CN110806848B true CN110806848B (zh) | 2023-11-03 |
Family
ID=69500975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911059248.4A Active CN110806848B (zh) | 2019-11-02 | 2019-11-02 | 一种实现全景图像播放器显示计算机系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110806848B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019061118A1 (zh) * | 2017-09-28 | 2019-04-04 | 深圳传音制造有限公司 | 全景拍摄方法及终端 |
CN113506608B (zh) * | 2021-06-25 | 2024-03-19 | 青岛海信医疗设备股份有限公司 | 超声电影处理方法及超声设备 |
CN116540902A (zh) * | 2023-07-06 | 2023-08-04 | 广东长盈科技股份有限公司 | 一种数据展示方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5153716A (en) * | 1988-12-14 | 1992-10-06 | Horizonscan Inc. | Panoramic interactive system |
KR20150081750A (ko) * | 2014-01-06 | 2015-07-15 | 노현욱 | 골프 스윙 분석 시스템 및 방법 |
CN106028115A (zh) * | 2016-05-18 | 2016-10-12 | 乐视控股(北京)有限公司 | 视频播放方法和装置 |
CN110286993A (zh) * | 2019-07-07 | 2019-09-27 | 徐书诚 | 一种实现全景图像非匀速动画显示计算机系统 |
-
2019
- 2019-11-02 CN CN201911059248.4A patent/CN110806848B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5153716A (en) * | 1988-12-14 | 1992-10-06 | Horizonscan Inc. | Panoramic interactive system |
KR20150081750A (ko) * | 2014-01-06 | 2015-07-15 | 노현욱 | 골프 스윙 분석 시스템 및 방법 |
CN106028115A (zh) * | 2016-05-18 | 2016-10-12 | 乐视控股(北京)有限公司 | 视频播放方法和装置 |
CN110286993A (zh) * | 2019-07-07 | 2019-09-27 | 徐书诚 | 一种实现全景图像非匀速动画显示计算机系统 |
Non-Patent Citations (1)
Title |
---|
基于HTML5 WebGL技术的校园全景漫游系统研究;周昌权;;电脑知识与技术(第35期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110806848A (zh) | 2020-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11538066B2 (en) | Method for serving interactive content to a user | |
CN110806848B (zh) | 一种实现全景图像播放器显示计算机系统 | |
EP2480960B1 (en) | Apparatus and method for grid navigation | |
JP5182680B2 (ja) | コンテンツ統合フレームワークにおけるユーザインターフェイスのための視覚処理 | |
CN102707866B (zh) | 用于导航基于层级式菜单的用户界面的方法和装置 | |
CN106303740B (zh) | 智能电视的桌面导航系统及该系统的实现方法 | |
US8924889B2 (en) | Scene transitions in a zoomable user interface using a zoomable markup language | |
US20220197448A1 (en) | Method, apparatus and device for displaying followed user information, and storage medium | |
US20110289458A1 (en) | User interface animation for a content system | |
CN104216691A (zh) | 一种创建应用的方法及装置 | |
CN107273079B (zh) | 关联信息显示、图谱处理方法、装置、介质、设备和系统 | |
CN104918095A (zh) | 多媒体流数据预览展示方法及装置 | |
US9451195B2 (en) | Moving video tags outside of a video area to create a menu system | |
CN107295415B (zh) | 视频播放方法和装置 | |
US11727442B2 (en) | Method for serving interactive content to a user | |
US11803993B2 (en) | Multiplane animation system | |
CN112367549B (zh) | 电视浏览器的视频播放实现方法及浏览器应用运行方法 | |
KR101952131B1 (ko) | 가상현실 컨텐츠 제작방법 및 프로그램 | |
US11582319B1 (en) | System and method for tracking interactions in an email | |
WO2015105804A1 (en) | System and method for generating and using spatial and temporal metadata | |
CN110493661A (zh) | 一种视频文件的处理方法以及服务器 | |
CN110110022B (zh) | 一种多时态全景数据显示交互系统 | |
CN105224602A (zh) | 一种资源的展示方法和装置 | |
CN111107323B (zh) | 一种实现全景影像单屏环视窗显示计算机系统 | |
CN110888962A (zh) | 一种实现互联网地理异构信息显示计算机系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |