基于视频获取全景图的方法和装置与流程

文档序号:17089521发布日期:2019-03-13 23:16阅读:433来源:国知局
基于视频获取全景图的方法和装置与流程

本申请实施例涉及计算机技术领域,尤其涉及一种基于视频获取全景图的方法和装置。



背景技术:

旅游之前先了解一下旅游目的地是非常必要的,比如用户可通过观看有关旅游目的地的视频对旅游目的地进行了解。

但是,旅游目的地的视频一般只能满足拍摄者视角的效果,当用户在使用浏览器观看旅游目的地的视频时,可能无法满足用户的需求,比如用户希望能够在观看旅游目的地的视频时得到旅游目的地的全景图。那么,在用户观看视频时,如何向用户显示视频中的对象的全景图是亟待解决的问题。



技术实现要素:

本申请实施例提供一种基于视频获取全景图的方法和装置,实现了在用户观看视频时,向用户显示视频中的对象的全景图的目的。

第一方面,本申请实施例提供一种基于视频获取全景图的方法,应用于终端,包括:

在播放视频时,获取与所述视频相关的文本;

获取所述文本中的标识;

获取所述标识所标识的对象的多张图像,所述多张图像为所述对象不同方位的图像;

拼接所述多张图像,得到所述对象的全景图,并显示所述对象的全景图。

在一种可能的设计中,获取与视频相关的文本,包括:

获取与视频相关的第一文本和/或第二文本,所述第一文本为能够与所述视频分割的文本,所述第二文本为不能够与所述视频分割的文本。

在一种可能的设计中,所述获取所述标识所标识的对象的多张图像,包括:

将所述标识发送至服务器;

从服务器获取所述标识所标识的对象的多张图像。

在一种可能的设计中,所述从服务器获取所述标识所标识的对象的多张图像,包括:

从服务器接收入口数据,所述入口数据包括所述多张图像的标识;

根据所述入口数据,绘制全景入口图标;

接收用户通过所述全景入口图标输入的全景查看指令;

根据所述全景查看指令生成全景查看请求,并将该全景查看请求发送至服务器,所述全景查看请求包括所述多张图像的标识;

从所述服务器获取所述多张图像。

在一种可能的设计中,所述终端内缓存有所述视频的词表,所述将所述标识发送至服务器,包括:

若当前所述词表中不包括所述标识,则将所述标识发送至服务器。

在一种可能的设计中,还包括:

若当前所述词表中不包括所述标识,则添加所述标识至所述词表。

在一种可能的设计中,所述获取第二文本,包括:

根据所述视频和机器学习模型,得到区域信息,所述区域信息用于指示所述视频中的文字区域;

根据所述区域信息,获取所述视频中的文字区域;

对所述文字区域进行文本识别,得到所述第二文本。

第二方面,本申请实施例提供一种基于视频获取全景图的装置,包括:

获取模块,用于在播放视频时,获取与所述视频相关的文本;

所述获取模块,还用于获取所述文本中的标识;

所述获取模块,还用于获取所述标识所标识的对象的多张图像,所述多张图像为所述对象不同方位的图像;

拼接模块,用于拼接所述多张图像,得到所述对象的全景图;

显示模块,用于显示所述对象的全景图。

在一种可能的设计中,所述获取模块,具体用于:

将所述标识发送至服务器;

从服务器获取所述标识所标识的对象的多张图像。

在一种可能的设计中,所述获取模块,具体用于:

从服务器接收入口数据,所述入口数据包括所述多张图像的标识;

根据所述入口数据,绘制全景入口图标;

接收用户通过所述全景入口图标输入的全景查看指令;

根据所述全景查看指令生成全景查看请求,并将该全景查看请求发送至服务器,所述全景查看请求包括所述多张图像的标识;

从所述服务器获取所述多张图像。

在一种可能的设计中,所述基于视频获取全景图的装置内缓存有所述视频的词表,所述获取模块,具体用于:

若当前所述词表中不包括所述标识,则将所述标识发送至服务器。

在一种可能的设计中,还包括,添加模块;

所述添加模块,用于添加所述标识至所述词表。

第三方面,本申请实施例还提供一种终端,包括:处理器,所述处理器与存储器耦合;

所述存储器用于,存储计算机程序;

所述处理器用于,调用所述存储器中存储的计算机程序,以实现第一方面任一所述的方法。

第四方面,本申请实施例还提供一种可读存储介质,包括程序或指令,当所述程序或指令在计算机上运行时,第一方面任一所述的方法被执行。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1a为本申请实施例提供的应用场景示意图一;

图1b为本申请实施例提供的应用场景图二;

图2为本申请实施例提供的基于视频获取全景图的方法的流程图;

图3为本申请实施例提供的基于视频获取全景图的方法的交互图;

图4a为本申请实施例提供的用户界面图一;

图4b为本申请实施例提供的用户界面图二;

图4c为本申请实施例提供的用户界面图三;

图5为本申请实施例提供的基于视频获取全景图的装置的结构示意图一;

图6为本申请实施例提供的基于视频获取全景图的装置的结构示意图二;

图7为本申请实施例提供的终端的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b的情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。本申请中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

全景图即通过广角的表现手段以及绘画、相片、视频、三维模型等形式,尽可能多表现出周围的环境,比如360全景图,是即通过对专业相机捕捉整个场景的图像信息或者使用建模软件渲染过后的图片,使用软件进行图片拼合,并用专门的播放器进行播放,即将平面照片或者计算机建模图片变为360度全观,用于虚拟现实浏览,把二维的平面图模拟成真实的三维空间。

图1a为本申请实施例提供的应用场景图一,图1b为本申请实施例提供的应用场景图二;参见图1,用户采用终端播放视频11,当终端是从视频中出现的文本12以及视频标题13、视频的描述信息中的文本识别到能够标识对象的标识后,会向用户显示该标识指示的对象的全景图14。可以理解的是,图1b中的图像是全景图的一部分,当用户拖动图1b中的界面时,会显示图1b中的对象的其它方位的图像。

下面,通过具体实施例对本申请所示的技术方案进行详细说明。需要说明的是,下面几个具体实施例可以相互结合,对于相同或相似的内容,在不同的实施例中不再进行重复说明。

图2为本申请实施例提供的基于视频获取全景图的方法的流程图,本实施例的执行主体可为基于视频获取全景图的装置,该装置可位于终端中;参见图2,本实施的方法,包括:

步骤s101、在播放视频时,获取与该视频相关的文本;

具体地,本实施例中的视频可以为一个完整的视频中的一段视频,该一段视频的持续时长可为一预设时长,比如预设时长可为2s~10s中的任一时长。一个完整视频中的每段视频均按照步骤s101~步骤s104中的步骤执行。

其中,获取与该视频相关的文本,包括:获取与该视频相关的第一文本和/或第二文本,该第一文本为能够与该视频分割的文本,该第二文本为不能够与该视频分割的文本。

具体地,第一文本可以包括该视频中的字幕、弹幕、视频的标题、视频的描述文本中的至少一项。字幕、弹幕、视频的标题、视频的描述文本均是可以与该视频分割的文本,或者说是与该视频是独立的。

由于视频是由多帧视频帧图像组成的,第二文本可为视频帧图像中的文字,不可与视频分割。比如,一所高校的大门,上面刻有“xx大学”,当对该大门录制视频时,“xx大学”即为与视频不可分割的文本。

进一步地,为了保证获取的第二文本的准确性,在一种方式中,获取第二文本,包括:

a1、根据该视频和机器学习模型,得到区域信息,该区域信息用于指示该视频中的文字区域;

具体地,可以每间隔一段时间提取一张该视频包括的视频帧图像,根据该视频帧图像和机器学习模型,得到区域信息,即将该视频帧图像的特征输入机器学习模型中,输出一区域信息,该区域信息用于指示该视频帧图像中的文字区域。

可以理解的是,若提取的视频帧图像中没有文字,则该区域信息可为指示视频帧没有文字的信息,若提取的视频帧图像中有文字,则该区域信息可为该视频帧图像的文字区域的四个顶点的坐标。

其中,提取视频帧图像所间隔的时长可为该视频时长的1/n,n可为5~20中的任一整数值,也可为其它的值,本实施例中并不限制。

上述的机器学习模型是基于多个训练样本训练得到的,训练样本需要包括根据没有文字的图像得到的训练样本,也要包括根据有文字的图像得到的训练样本,训练样本的标签可为文字区域的四个顶点的坐标或者指示没有文字的信息,标签的形式可为字符串的形式。根据训练样本和训练样本的标签,采集机器学习算法对训练样本进行训练,便可得到机器学习模型。其中,机器学习模型可为神经网络模型。

a2、根据该区域信息,获取该视频中的文字区域;

对于提取的该视频的每张视频帧图像,按照a1中的方法,均会得到一个区域信息。对于具有文字的视频帧图像,根据该区域信息,可确定视频帧图像中的文字区域;对于没有文字的视频帧图像,根据该区域信息,可确定视频帧图像中没有文字。

a3、对该文字区域进行文本识别,得到该第二文本。

对具有文字的每张视频帧图像中的文字区域进行文本识别,便可得到第二文本。

步骤s102、获取该文本中的标识;

具体地,获取该文本中用于标识对象的标识,可以是基于视频获取全景图的装置自身获取的,也可以是从服务器中获取的。

获取该文本中的标识包括:获取该第一文本和/或该第二文本中的标识。即该文本包括该第一文本和/或该第二文本。

标识可为景点的名称、城市的名称、建筑物的名称等等。相应地,若标识为景点的名称,则标识所标识的对象即为景点,若标识为城市的名称,则标识所标识的对象即为城市,若标识为建筑物的名称,则标识所标识的对象即为建筑物;建筑物比如可以是图书馆、教学楼、著名地标等。

若获取文本中的标识是从服务器获取的,则获取该文本中的标识包括:

将该文本发送至服务器;

从服务器接收该文本中的标识。

其中,服务器在接收到该文本后,提取该文本中的名词,并将该文本中的名词位于预设标识列表中的名词确定为该文本中的标识,接着,服务器将确定的该文本中的标识,发送至终端。

在该种方式中,服务器中存储有一预设标识列表,若该文本中的名词位于预设标识列表中,则该名词即为该文本中的标识。

若获取该文本中用于标识对象的标识,是基于视频获取全景图的装置自身获取的,则基于视频获取全景图的装置中安装有hanlp工具包,采用hanlp工具包识别地名、机构名等,实现识别出该文本中的标识的目的。

可以理解的是,若根据该文本,能够识别出标识,则该文本包括的标识的个数为至少一个。

在一种改进的方式中,基于视频获取全景图的装置缓存有该视频对应的完整视频的词表,该词表在该完整视频开始播放时建立,在该完整视频停止播放时删除。

在获取到该文本中的标识后,对于该文本中的每个标识,判断该词表中是否包括该标识,若不包括,则将该标识添加至该词表。

步骤s103、获取该标识所标识的对象的多张图像,该多张图像为该位置不同方位的图像;

具体地,对于识别出来该文本中的标识去重,得到该文本中的m个标识;在一种方式中,对于m个标识中的每个标识,获取标识所标识的对象的多张图像,可包括:

b1、将标识发送至服务器;

具体地,对于该m个标识中的每个标识,若词表中不包括该标识,则将该标识发送至服务器。

若词表中不包括该标识,说明该标识第一次被识别出,用户没有查看过该标识所标识的对像的全景图,需要将标识发送至服务器。若词表中包括该标识,说明该标识不是第一次被识别出,该标识所标识的对像的全景图可能已用户没有查看过,则不将该标识发送至服务器。

b2、从服务器获取标识所标识的对象的多张图像,该多张图像为标识所标识的对象不同方位的图像。

具体地,服务器中可存储有一全景资源列表,该全景资源列表中包括在服务器中存储有全景资源的标识,全景资源即为拼接后能够得到对象的全景图的多张不同方位的图像。在服务器接收到该文本的m个标识后,对应m个标识中的每个标识,服务器判断标识是否存在于全景资源列表中,若存在,则说明服务器中存储有标识所标识的对象的不同方位的多张图像,则服务器获取到标识所标识的对象的不同方位的多张图像,并将该多张图像发送至终端。

可以理解的是,服务器中存储的标识所标识的对象的不同方位的多张图像,在拼接后应该可以得到标识所标识的对象的全景图。

其中,全景资源列表可与预设标识表为同一个表,也可为不同的表。若全景资源列表与预设标识表不为同一个表,则全景资源列表与预设标识表包括的标识可相同。

步骤s104、对于文本中的每个标识,拼接标识所标识的对象的多张图像,得到的标识所标识的对象的全景图,并显示全景图。

具体地,对于文本中的每个标识,终端在得到标识所标识的对象的多张图像后,拼接该多张图像,得到标识所标识的对象的全景图,并显示全景图。其中,全景图可以悬浮于该视频以上的全景沉浸式浮层效果显示。可以理解的是,文本中的每个标识所标识的对象均对应一张全景图。

其中,拼接多张图像,得到全景图的方法参照现有技术中的方法,本实施例中不再赘述。

进一步地,在终端显示全景图时,终端可停止播放视频。

本实施例中通过在视频播放时,识别出与视频相关的对象的标识,获取标识所标识的对象的不同方位的多张图像,拼接多张图像后得到所标识的对像的全景图,并向用户显示所标识的对像的全景图,实现了基于视频向用户显示与视频相关的对象的全景图的目的。

应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

为了可以根据用户的需求显示用户想要看的对象的全景图,而不是将识别出来的全景图均显示在终端上,本实施例在上一实施例的基础上作了进一步的改进。图3为本申请实施例提供的基于视频获取全景图的方法的交互图,本实施例是对上一实施例中的步骤获取标识所标识的对象的多张图像的过程的改进,本实施例的方法包括:

步骤s201、终端将获取的文本中的标识发送至服务器,文本为在播放视频时,获取的与视频相关的文本。

具体地,获取该步骤中的文本中的标识的方法参照上一实施例中的步骤s101~步骤s102,此处不再赘述。

步骤s202、服务器获取入口数据,该入口数据包括该文本中的标识所标识的对象的多张图像各自的标识。

为了阐述清楚,本实施例文本中的标识称为第一标识,图像的标识称为第二标识。

具体地,服务器接收该文本中的第一标识后,对于该文本中的每个第一标识,服务器判断是否存储有该第一标识所标识的对象的多张图像(判断方式可参照上一实施例中的方法),若服务器中存储有该第一标识所标识的对象的多张图像,则获取该第一标识所标识的对象的多张图像的第二标识,第二标识可为索引值,接着根据该第一标识所标识的对象的多张图像的第二标识,生成该第一标识所标识的对象的入口数据。

可以理解的是,若服务器接收到该文本中的指示不同对象的m个第一标识,且服务器中存储有m个第一标识中每个第一标识所标识的对象的多张图像,则服务器会获取到m个入口数据。

入口数据还可包括:该文本中的相应的第一标识;进一步地,入口数据还可包括样本图像的数据,该样本图像可为相应第一标识所标识的对应的多张图像中的任一张图像。

步骤s203、服务器发送入口数据至终端。

步骤s204、终端根据入口数据,绘制全景入口图标;

具体地,终端接收到入口数据后,根据入口数据,绘制全景入口图标。若入口数据中包括该文本中的相应的第一标识,则全景入口图标中包括该文本中的相应的第一标识;若入口数据中还包括样本图像的数据,则全景入口图标中还包括该样本图像。

可以理解的是,若终端接收到了m个入口数据,则会绘制得到m个全景入口图标。

步骤s205、终端显示全景入口图标。

具体地,终端可在视频的周围或者视频的上方显示全景入口图标。

图4a为本申请实施例提供的用户界面图一,该图中的51、52即为全景入口图标。

步骤s206、终端接收用户通过触摸该全景入口图标输入的全景查看指令。

当用户想到查看某一对象a的全景时,点击或触摸该对象a的全景入口图标,输入全景查看指令。

步骤s207、终端根据全景查看指令生成全景查看请求;全景查看请求包括该文本的标识所标识的对象的多张图像各自的标识。

具体地,若用户触摸了对象a对应的全景入口图标,则全景查看请求包括对象a的多张图像各自的标识。

步骤s208、终端将全景查看请求发送至服务器;

步骤s209、服务器根据全景查看请求,获取多张图像;

具体地,服务器根据全景查看请求包括的多张图像的标识,获取到多张图像。

步骤s210、服务器将该多张图像发送至终端。

图4b为本申请实施例提供的用户界面图二,图4c为本申请实施例提供的用户界面图三,如图4b所示,用户点击全景入口图标,输入全景查看指令,终端根据全景查看指令生成全景查看请求;全景查看请求包括全景入口图标所对应的对象的多张图像的标识,接着终端将全景查看请求发送至服务器,服务器根据全景查看请求,获取全景入口图标所对应的对象的多张图像,并将全景入口图标所对应的对象的多张图像发送至终端,终端接收到后,拼接全景入口图标所对应的对象的多张图像,得到全景入口图标所对应的对象的全景图,显示该全景图,如图4c所示。图4c中的图像是全景图的一部分,当用户拖动4c中的界面时,会显示对象其它方位的图像。

本实施例中通过终端绘制全景入口图标,在用户通过全景入口图标输入全景查看指令后,才会向用户显示相应对象的全景图,使得用户可根据自己的需求查看自己想要查看的对象的全景图。

上面结合图1~图4对本申请的基于视频获取全景图的方法进行了说明,下面对基于视频获取全景图的装置进行说明。

图5为本申请实施例提供的基于视频获取全景图的装置的结构示意图一,参见图5,本实施例的装置包括:

获取模块51,用于在播放视频时,获取与所述视频相关的文本;

所述获取模块51,还用于获取所述文本中的标识;

所述获取模块51,还用于获取所述标识所标识的对象的多张图像,所述多张图像为所述对象不同方位的图像;

拼接模块52,用于拼接所述多张图像,得到所述对象的全景图;

显示模块53,用于显示所述对象的全景图。

在一种可能的设计中,所述获取模块51,具体用于:获取与视频相关的第一文本和/或第二文本,所述第一文本为能够与所述视频分割的文本,所述第二文本为不能够与所述视频分割的文本。

在一种可能的设计中,所述获取模块51,具体用于:

将所述标识发送至服务器;

从服务器获取所述标识所标识的对象的多张图像。

在一种可能的设计中,所述获取模块51,具体用于:

从服务器接收入口数据,所述入口数据包括所述多张图像的标识;

根据所述入口数据,绘制全景入口图标;

接收用户通过所述全景入口图标输入的全景查看指令;

根据所述全景查看指令生成全景查看请求,并将该全景查看请求发送至服务器,所述全景查看请求包括所述多张图像的标识;

从所述服务器获取所述多张图像。

在一种可能的设计中,所述基于视频获取全景图的装置内缓存有所述视频的词表,所述获取模块51,具体用于:

若当前所述词表中不包括所述标识,则将所述标识发送至服务器。

本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。

图6为本申请实施例提供的基于视频获取全景图的装置的结构示意图二,如图6所示,本实施例的装置在图5所示装置结构的基础上,进一步地,还可以包括:添加模块54;

所述添加模块54,用于添加所述标识至所述词表。

本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。

图7为本申请实施例提供的终端的结构示意图,参见图7,本实施例的终端包括:处理器71、存储器72和通信总线73,通信总线73用于连接处理器71和存储器72,处理器71与存储器72耦合;

所述存储器71用于,存储计算机程序;

所述处理器72用于,调用所述存储器中存储的计算机程序,以实现上述方法实施例中的方法。

其中,计算机程序还可存储在终端外部的存储器中。

应理解,在本申请实施例中,该处理器72可以是cpu,该处理器52还可以是其他通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。

该存储器71可以包括只读存储器和随机存取存储器,并向处理器52提供指令和数据。存储器71还可以包括非易失性随机存取存储器。例如,存储器71还可以存储设备类型的信息。

该存储器71可以是易失性存储器或非易失性存储器,或均可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(electricallyeprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(staticram,sram)、动态随机存取存储器(dram)、同步动态随机存取存储器(synchronousdram,sdram)、双倍数据速率同步动态随机存取存储器(doubledatadatesdram,ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,esdram)、同步连接动态随机存取存储器(synchlinkdram,sldram)和直接内存总线随机存取存储器(directrambusram,drram)。

该总线73除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线53。

本申请实施例提供一种可读存储介质,包括程序或指令,当所述程序或指令在计算机上运行时,上述方法实施例中的方法被执行。

本申请实施例还提供一种可读存储介质,包括程序或指令,当所述程序或指令在计算机上运行时,上述方法实施例中所述的方法被执行。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本申请实施例的技术方案,而非对其限制;尽管参照前述各实施例对本申请实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请实施例方案的范围。

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