CN110515452A - 图像处理方法、装置、存储介质和计算机设备 - Google Patents

图像处理方法、装置、存储介质和计算机设备 Download PDF

Info

Publication number
CN110515452A
CN110515452A CN201810494117.8A CN201810494117A CN110515452A CN 110515452 A CN110515452 A CN 110515452A CN 201810494117 A CN201810494117 A CN 201810494117A CN 110515452 A CN110515452 A CN 110515452A
Authority
CN
China
Prior art keywords
model
picture frame
image
dummy entry
terminal
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.)
Granted
Application number
CN201810494117.8A
Other languages
English (en)
Other versions
CN110515452B (zh
Inventor
刘天成
潘红
余媛
何金文
刘立强
赵彬如
钟庆华
王旅波
肖欢
方楚楠
刘伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810494117.8A priority Critical patent/CN110515452B/zh
Priority to JP2020551294A priority patent/JP7096902B2/ja
Priority to PCT/CN2019/083295 priority patent/WO2019223463A1/zh
Priority to EP19808017.8A priority patent/EP3798801A4/en
Publication of CN110515452A publication Critical patent/CN110515452A/zh
Priority to US16/996,566 priority patent/US11238644B2/en
Application granted granted Critical
Publication of CN110515452B publication Critical patent/CN110515452B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30241Trajectory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Multimedia (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Social Psychology (AREA)
  • Psychiatry (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Abstract

本发明涉及一种图像处理方法、装置、存储介质和计算机设备,该方法包括:获取从现实场景中采集的图像帧;将获取的图像帧按照采集的时序逐帧播放;当获取的多帧图像帧中目标物运动所形成的轨迹满足触发条件时,确定现实场景中所述目标物所对应的位置;按照所述位置在当前播放的图像帧中渲染虚拟入口;在所述虚拟入口中显示虚拟内容。本申请提供的方案提高了图像处理效率。

Description

图像处理方法、装置、存储介质和计算机设备
技术领域
本发明涉及计算机技术领域,特别是涉及一种图像处理方法、装置、存储 介质和计算机设备。
背景技术
随着计算机技术的发展,图像处理技术也不断进步。用户可以通过专业的 图像处理软件对图像进行处理,使得经过处理的图像表现更好。用户还可以通 过图像处理软件,在图像中附加由图像处理软件提供的素材,让经过处理的图 像能够传递更多的信息。
然而,目前的图像处理方式,需要用户展开图像处理软件的素材库,浏览 素材库,从素材库中选择合适的素材,调整素材在图像中的位置,从而确认修 改,完成图像处理。于是目前的图像处理方式需要大量的人工操作,耗时长, 导致图像处理过程效率低。
发明内容
基于此,有必要针对传统的图像处理过程效率低问题,提供一种图像处理 方法、装置、存储介质和计算机设备。
一种图像处理方法,包括:
获取从现实场景中采集的图像帧;
将获取的图像帧按照采集的时序逐帧播放;
当获取的多帧图像帧中目标物运动所形成的轨迹满足触发条件时,确定现 实场景中所述目标物所对应的位置;
按照所述位置在当前播放的图像帧中渲染虚拟入口;
在所述虚拟入口中显示虚拟内容。
一种图像处理装置,包括:
获取模块,用于获取从现实场景中采集的图像帧;
播放模块,用于将获取的图像帧按照采集的时序逐帧播放;
确定模块,用于当获取的多帧图像帧中目标物运动所形成的轨迹满足触发 条件时,确定现实场景中所述目标物所对应的位置;
渲染模块,用于按照所述位置在当前播放的图像帧中渲染虚拟入口;在所 述虚拟入口中显示虚拟内容。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序, 所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
获取从现实场景中采集的图像帧;
将获取的图像帧按照采集的时序逐帧播放;
当获取的多帧图像帧中目标物运动所形成的轨迹满足触发条件时,确定现 实场景中所述目标物所对应的位置;
按照所述位置在当前播放的图像帧中渲染虚拟入口;
在所述虚拟入口中显示虚拟内容。
一种计算机设备,包括存储器和处理器,所述存储器中储存有计算机程序, 所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
获取从现实场景中采集的图像帧;
将获取的图像帧按照采集的时序逐帧播放;
当获取的多帧图像帧中目标物运动所形成的轨迹满足触发条件时,确定现 实场景中所述目标物所对应的位置;
按照所述位置在当前播放的图像帧中渲染虚拟入口;
在所述虚拟入口中显示虚拟内容。
上述图像处理方法、装置、存储介质和计算机设备,一方面将反映现实场 景的图像帧播放,使得播放的图像帧能够反映现实场景;另一方面在从现实场 景中采集的图像帧中目标物运动所形成的轨迹满足触发条件时,自动确定现实 场景中该目标物所对应的位置,以按照确定的位置在当前播放的图像帧中渲染 虚拟入口,并在虚拟模入口中显示虚拟内容,这样就可以自动实现在虚拟入口 内显示虚拟世界的虚拟内容,在虚拟入口外显示现实世界的现实内容,避免了 人工操作的繁琐步骤,极大地提高了图像处理效率。
附图说明
图1为一个实施例中图像处理方法的应用环境图;
图2为一个实施例中图像处理方法的流程示意图;
图3为一个实施例中播放图像帧的界面示意图;
图4为一个实施例中在当前播放的图像帧中渲染虚拟入口的界面示意图;
图5为一个实施例中从获取的图像帧中分割出手部区域的示意图;
图6为一个实施例中在图像帧中轨迹变化的示意图;
图7为一个实施例中坐标空间的关系示意图;
图8为一个实施例中当前终端的位置经过空间区域后的渲染原理图;
图9为一个实施例中当前终端的位置未再次穿过空间区域、且当前视野区 域经过移动后覆盖虚拟入口时,终端界面显示的界面示意图;
图10为一个实施例中当前终端的位置围绕空间区域移动时的渲染原理图;
图11为一个实施例中模型的剖面示意图;
图12为一个实施例中渲染原理示意图;
图13为一个实施例中图像处理方法的流程框图;
图14为一个实施例中图像处理装置的模块结构图;
图15为另一个实施例中图像处理装置的模块结构图;
图16为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅 仅用以解释本发明,并不用于限定本发明。
图1为一个实施例中图像处理方法的应用环境图。参照图1,该图像处理方 法应用于图像处理系统。该图像处理系统包括终端110和服务器120。其中,终 端110和服务器120通过网络连接。终端110用于执行图像处理方法。终端110 具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本 电脑等中的至少一种。服务器120具体可以是独立的服务器,也可以是多个独 立的服务器组成的服务器集群。
终端110可以获取从现实场景中采集的图像帧,将获取的图像帧按照采集的 时序逐帧播放。该图像帧可以是终端110通过内置的图像采集装置或者外部连 接的图像采集装置才现实世界中采集的,内置的图像采集装置具体可以是终端 110的前置摄像头或者后置摄像头;该图像帧也可以是其它设备从现实场景中采 集后发送至终端110的。终端110可在本地判定获取的多帧图像帧中目标物运 动所形成的轨迹满足触发条件时,确定现实场景中目标物所对应的位置,按照 该位置在当前播放的图像帧中渲染虚拟入口,在虚拟入口中显示虚拟内容;终 端110也可将获取的图像帧发送至服务器120,由服务器120在判定获取的多帧 图像帧中目标物运动所形成的轨迹满足触发条件时,通知终端110触发条件被 满足,终端110继而确定现实场景中目标物所对应的位置,按照该位置在当前 播放的图像帧中渲染虚拟入口,在虚拟入口中显示虚拟内容。
图2为一个实施例中图像处理方法的流程示意图。本实施例主要以该图像处 理方法应用于计算机设备来举例说明,该计算机设备可以是图1中的终端110。 参照图2,该图像处理方法具体包括如下步骤:
S202,获取从现实场景中采集的图像帧。
其中,现实场景是自然世界中存在的场景。图像帧是能够形成动态画面的 图像帧序列中的单元,用来记录某时刻现实场景中的画面。
在一个实施例中,终端具体可按照固定或动态的帧率,从现实场景中采集 图像帧,获取采集得到的图像帧。其中,固定或动态的帧率能够使图像帧按照 该固定或动态的帧率播放时形成连续的动态画面。
在一个实施例中,终端可通过内置或者外部连接的图像采集装置如摄像头, 在摄像头当前的视野下,采集现实场景的图像帧,获取采集得到的图像帧。其 中,摄像头的视野可因终端的姿态和位置的变化而变化。
在一个具体的实施例中,终端可通过在本机上运行的应用所提供的AR(Augmented Reality,增强现实)拍摄模式,并在选定该AR拍摄模式后,从现 实场景中采集图像帧,获取采集得到的图像帧。其中,应用具体可以是社交应 用,社交应用是能够基于社交网络进行网络社交互动的应用。社交应用包括即 时通信应用、SNS(Social NetworkService,社交网站)应用、直播应用或者拍 照应用等,比如QQ或者微信等。
在一个实施例中,终端可接收另一终端发送的从现实场景中采集的图像帧, 获取接收的图像帧。比如,终端通过运行在终端上的社交应用建立视频会话时, 接收其他会话方所对应的终端发送的从现实场景中采集的图像帧。
在一个实施例中,获取图像帧的帧率可以与采集图像帧的帧率一致,也可 小于采集图像帧的帧率。
S204,将获取的图像帧按照采集的时序逐帧播放。
其中,采集的时序是指采集图像帧时的时间顺序,可通过图像帧在采集时 记录的时间戳的大小关系来表示。逐帧播放是指逐图像帧播放。
具体地,终端可按照获取图像帧的帧率,按照时间戳升序,逐个播放采集 的图像帧。终端可以将获取的图像帧直接播放,也可以将获取的图像帧按照采 集的时序存入缓存区,并按采集的时序从缓存区取出图像帧播放。
在一个实施例中,终端可将接收到的另一终端发送的从现实场景中采集的 图像帧,按照另一终端采集图像帧的帧率,根据时间戳升序,逐个播放接收到 的图像帧。终端可以将接收到的图像帧直接播放,也可以将接收到的图像帧按 照采集的时序存入缓存区,并按采集的时序从缓存区取出图像帧播放。
图3示出了一个实施例中播放图像帧的界面示意图。参考图3,图3(a)为 播放图像帧时终端界面的简化示意图,图3(b)为播放图像帧时终端界面的录 屏截图。可以看出,终端显示屏上显示的即为现实场景中的画面。
S206,当获取的多帧图像帧中目标物运动所形成的轨迹满足触发条件时, 确定现实场景中目标物所对应的位置。
其中,目标物是现实场景中作为目标的实体。目标物具体地可以是手部、 面部或者长条形物体等。目标物运动所形成的轨迹,可以是目标物在运动时获 取的图像帧中目标物的参考点移动所形成的轨迹。比如用户控制手部运动时, 获取的图像帧中手部食指指尖的成像点移动所形成的轨迹,再比如,用户手持 长条形物体(比如笔或者魔法棒等)运动时,获取的图像帧中长条形物体顶部 的成像点移动所形成的轨迹等。
触发条件是触发特定事件的约束条件。在本实施例中,特定事件是在播放 的图像帧中渲染虚拟入口的事件。触发条件具体可以是获取的多帧图像帧中目 标物运动所形成的轨迹为规则的闭合形状,比如三角形、四边形或者圆形等。
可以理解,用户可选择目标物,通过控制目标物在现实场景中移动,从而 使得采集该目标物的图像帧中目标物运动所形成的轨迹满足特定的约束条件 (如触发条件),以触发特定的事件(渲染虚拟入口)。而在现实场景中目标物 所对应的位置,就是用户意图终端在播放的图像帧中渲染虚拟入口的位置在现 实场景中的映射。这样,对于用户而言,从视觉上的感知即为触发一个虚拟入 口在现实世界中出现,犹如现实世界的真实入口一样。
具体地,终端在获取的多帧图像帧中目标物运动所形成的轨迹满足触发条 件时,确定目标物在该图像帧中的坐标位置,根据与终端的图像采集装置适配 的投影矩阵,计算该目标物在现实场景中的位置。其中,目标物在该图像帧中 的坐标位置具体可以是目标物的参考点在该图像帧中的坐标位置。比如,手部 食指指尖的成像点的坐标位置。目标物在该图像帧中的坐标位置也可以是目标 物运动所形成的轨迹的中心坐标位置。比如,手部食指指尖画圈时,该圆形轨 迹的中心嘴巴坐标位置。
在一个具体的应用场景中,用户手持终端,通过终端上用于调用摄像头的 应用程序打开终端上内置的摄像头,这样,终端可在摄像头当前的视野下,采 集现实场景中的图像帧。用户对着终端的摄像头控制目标物运动就会被采集到, 从而获取到实时采集的包括目标物的图像帧。可以理解,若用户打开的是前置 摄像头,那么采集的图像帧中包括目标物以及前置摄像头当前视野下的背景; 若用户打开的是后置摄像头,那么采集的图像中就包括目标物以及后置摄像头 当前视野下的背景。
S208,按照位置在当前播放的图像帧中渲染虚拟入口。
其中,虚拟入口是相对于真实入口的概念。真实入口是用作在现实场景中 划分现实空间的实体。真实入口比如房间门,可将现实空间划分为房间内区域 和房间外区域;或者,真实入口比如景区入口,可将现实空间划分为景区和非 景区等。虚拟入口则是用作在虚拟场景中划分区域的虚拟模型。虚拟入口比如 虚拟模型门等。
可以理解,现实场景中的位置是真实空间中的绝对位置。该位置不因终端 内置或者外部连接的图像采集装置当前视野的变化而变化。由此可知,在图像 采集装置当前视野发生变化时,虚拟入口在图像帧中的渲染位置和尺寸均不同。 那么,在图像采集装置当前视野发生变化时,虚拟入口在图像帧中的渲染位置 和尺寸依据现实世界中物体成像原理,呈现出近大远小的效果。
具体地,终端在确定目标物在现实场景中的位置后,可根据现实场景与终 端的图像采集装置当前视野下适配的投影矩阵,计算该虚拟入口在当前视野下 采集的图像帧中的渲染位置,在该位置渲染虚拟入口。
图4示出了一个实施例中在当前播放的图像帧中渲染虚拟入口的界面示意 图。参考图4,图4(a)为在当前播放的图像帧中渲染虚拟入口时终端界面的 简化示意图,图4(b)为在当前播放的图像帧中渲染虚拟入口时终端界面的录 屏截图。图4(a)包括渲染虚拟入口410a,图4(b)包括渲染虚拟入口410b。
S210,在虚拟入口中显示虚拟内容。
其中,这里的虚拟内容是不存在于获取的图像帧所采集自的现实场景中的 内容。可以理解,这里的虚拟内容是相对于当前现实场景而言虚拟的内容,而 非绝对虚拟的内容。也就是说,这里的虚拟内容可以是通过计算机技术模拟出 的完全虚拟的内容,也可以是在非当前现实场景中的内容。当前现实场景即终 端获取的图像帧采集自的现实场景。
在一个实施例中,虚拟内容可以是动态内容,也可以是静态内容。虚拟内 可以是统一的内容,也可以是与图像帧中目标物运动所形成的轨迹对应的内容, 还可以是通过用户自主选择的内容。具体地,终端可预先设置轨迹与虚拟内容 的对应关系,这样终端即可在识别出轨迹后,即查询与该轨迹对应的虚拟内容 进行显示。比如,当轨迹为三角形时,显示的虚拟内容为足球比赛视频;当轨 迹为四边形时,显示的虚拟内容为拍摄商场得到的视频;当轨迹为圆形时,显 示的虚拟内容为拍摄旅游景区得到的视频。终端还可显示选择对话框,在选择 对话框中展示可供选择的虚拟内容,再在虚拟入口中显示用户选择指令选中的 虚拟内容。
在一个实施例中,虚拟内容具体可以是虚拟视频,也可以是从现实场景中 采集图像帧生成的视频。比如,用户手持终端处于办公室中采集办公室内的现 实场景得到图像帧播放,那么虚拟入口外显示的内容是办公室这一现实场景, 虚拟入口内显示的可以是游戏视频,也可以是其他图像采集装置在非当前办公 室,比如王府井大街的现实场景。
继续参考图4,可以看出虚拟入口410a(b)内显示的是虚拟内容,虚拟入 口410a(b)外显示的是现实场景中的画面。这样,对于用户而言,从视觉上的 感知即为虚拟入口内是虚拟世界,虚拟入口外则是现实世界。用户便可通过移 动穿过虚拟入口查看虚拟入口内的虚拟世界,或者通过移动传出虚拟入口查看 虚拟入口外的现实世界,体验在虚拟世界和现实世界中的穿越效果。
上述图像处理方法,一方面将反映现实场景的图像帧播放,使得播放的图 像帧能够反映现实场景;另一方面在从现实场景中采集的图像帧中目标物运动 所形成的轨迹满足触发条件时,自动确定现实场景中该目标物所对应的位置, 以按照确定的位置在当前播放的图像帧中渲染虚拟入口,并在虚拟模入口中显 示虚拟内容,这样就可以自动实现在虚拟入口内显示虚拟世界的虚拟内容,在 虚拟入口外显示现实世界的现实内容,避免了人工操作的繁琐步骤,极大地提 高了图像处理效率。
在一个实施例中,目标物为手部。该图像处理方法还包括:从获取的图像 帧中分割出手部图像;识别出手部图像所对应的手势类型;当手势类型为触发 类型时,在图像帧中确定运动参考点;按照运动参考点确定手部运动所形成的 轨迹。
其中,手部是人或动物的肢体部分。手部图像是包括手部、且手部区域占 图像区域占比高的图像。手势是由用户通过手部做出的动作形态。手势类型是 获取的图像帧中手势所属的类型。触发类型为触发特定事件的手势所属的类型。
运动参考点是用作目标物的运动过程判别的参考基准。可以理解,在不同 的图像帧中运动参考点的位置发生了变化,则表示目标物进行了运行。比如, 以手指的食指指尖的成像点为运动参考点,当食指指尖在多帧图像帧中的成像 点位置发生了变化,则判定手部进行了运动。
可以理解,相比于直接对获取的原始图像帧中手部区域进行手势类型识别, 从获取的图像帧中分割出手部图像之后再对分割出的手部图像进行手势类型识 别,可避免手部图像占整个图像帧的比例较小时导致的识别不准确的问题,能 够减少原始图像帧中相对于手部区域的背景区域对手部区域的手势类型识别的 干扰,可以提高识别的准确度。
在一个实施例中,从获取的图像帧中分割出手部图像,包括:通过手部识 别模型,将获取的图像帧编码为语义分割特征矩阵;解码语义分割特征矩阵得 到语义分割图像;语义分割图像中的像素点,具有表示所属分类类别的像素值, 且编码自的图像帧中的像素点对应;根据属于手部类别的像素点从图像中分割 出手部图像。
其中,手部识别模型是经过训练后具有手部识别能力的机器学习模型。机 器学习英文全称为Machine Learning,简称ML。机器学习模型可通过样本学习 具备特定的能力。机器学习模型可采用神经网络模型、支持向量机或者逻辑回 归模型等。神经网络模型比如卷积神经网络等。在本实施例中,手部识别模型 具体可以是全卷积网络模型(FullyConvolutional Networks)。
语义分割特征矩阵是对图像帧中图像内容的语义特征的低维表达,涵盖了 该整个图像帧的语义特征信息。语义分割图像是分割为若干个互不重叠的、具 有一定语义的区域的图像。语义分割图像中像素点的像素值用于反映相应像素 点所属的分类类别。像素点的分类可以是二分类,也可以是多分类。像素点二 分类,比如地图图像中对应道路的像素点和其他像素点。像素点多分类,比如 风景地图中对应天空的像素点、对应大地的像素点以及对应人物的像素点等。 语义分割图像的图像尺寸与原始图像帧的图像尺寸一致。这样,可以理解为对 模型输入图像进行了逐像素点分类,根据语义分割图像中的像素点的像素值, 即可得到模型输入图像中的每个像素点的类别隶属。
具体地,终端可事先通过属于各手势类型的图像样本,训练得到手部识别 模型。这样,终端在从获取的图像帧中分割出手部图像后,将手部图像作为手 部识别模型的输入,通过获取的手部识别模型的编码结构,将手部图像编码为 语义分割特征矩阵。再继续通过手部识别模型的解码结构,解码语义分割特征 矩阵得到语义分割图像。
其中,当终端预先设置的触发类型的手势类型唯一时,手部识别模型即为 二分类模型。用于训练二分类模型的图像样本包括属于目标手势类型的正样本, 及不属于目标手势类型的负样本。当终端预先设置的触发类型的手势类型多样 时,手部识别模型即为多分类模型。用于训练多分类模型的图像样本包括属于 各目标手势类型的样本。
图5示出了一个实施例中从获取的图像帧中分割出手部区域的示意图。参 考图5,图5(a)为获取的包括手部区域的原始图像帧;图5(b)为进行语义 分割后得到的语义分割图像;图5(c)为分割出手部区域的规则的手部图像。
在本实施例中,在获取到图像帧后,即自动将该图像帧输入训练好的机器 学习模型,将图像帧编码为语义分割特征矩阵,再解码该语义分割特征矩阵即 可得到语义分割图像。其中,语义分割图像中的像素点,具有表示所属分类类 别的像素值,且与原始图像帧中的像素点对应。这样即可自动根据属于手部类 别的像素点来确定手部区域以分割出手部图像,提高了图像分割准确率。
进一步地,终端可将分割出的手部图像与触发类型的手部图像模板进行比 较,在分割出的手部图像与触发类型的手部图像模板匹配时,判定手部图像所 对应的手势类型为触发类型,然后在图像帧中确定运动参考点;按照运动参考 点确定手部运动所形成的轨迹。
终端也可将分割出的手部图像输入事先训练好的手势识别模型,得到该手 势识别模型输出的手势识别结果,当该手势识别结果表示手部图像所对应的手 势类型为触发类型,然后在图像帧中确定运动参考点;按照运动参考点确定手 部运动所形成的轨迹。
在一个具体的场景中,用户对着终端的摄像头做出一个手势,在确定了该 手势对应的操作类型为绘图类型时,就确定采集的连续的每一帧图像中手势的 运动参考点,由于采集图像的频率较高,因此连续的运动参考点用很短线段连 接起来后可以形成轨迹。
在一个实施例中,终端可在按采集时序从获取的图像帧中,按小于获取帧 率的帧率选取图像帧进行手部图像分割与手势识别。其中,从获取的图像帧中 选取图像帧,可以是通过多线程异步选取图像帧分别独立进行手部图像分割与 手势识别,这样可以提高识别效率。
上述实施例中,通过手部做出特定的手势,隔空绘制出特定的轨迹,即可 自动触发虚拟入口的展示效果。整个绘图过程无需用户通过输入装置进行操作, 用户可在较大的空间范围内通过示出的手势进行绘图,提高了触发虚拟入口的 便利性。
在一个实施例中,该图像处理方法还包括:当触发条件未满足时,在播放 的视频帧中,将轨迹所经过的像素点的像素值替换为预设像素值;当触发条件 被满足时,按照位置在当前播放的图像帧中,播放预设动画。
具体地,当触发条件未满足时,为了以可视化方式突显目标物运动所形成 的轨迹,便于用户直观地感知是否满足触发条件,可以以异于图像中像素点的 像素值展示轨迹。轨迹实质上是连续的多帧图像帧中各运动参考点所对应的像 素坐标形成的轨迹,因而,终端可以根据各个像素坐标在图像帧中确定轨迹所 经过的像素点,将这些像素点的像素值更新为预设像素值。预设像素值比如较 为鲜艳的绿色或红色对应的像素值。
在一个实施例中,终端也可将以这些像素点为中心,一定范围内的像素点 的像素值更新为预设像素值。终端也可在轨迹所经过的像素点处渲染粒子动画, 覆盖或者替换轨迹所经过的像素点的像素值,实现魔法手势运动的效果。
在一个实施例中,终端在更新像素值或者渲染粒子动画时,可以是实时进 行的,一旦确定了当前图像帧中轨迹经过的像素点,就将该像素点的像素值进 行更新,或者在该像素点位置渲染粒子动画,这样即可实现实时展示运动轨迹。
图6示出了一个实施例中在图像帧中轨迹变化的示意图。参考图6,图6(a)、 (b)和(c)为图像帧中轨迹变化时终端界面的简化示意图,图6(d)、(e)和(f)为图像帧中轨迹变化时终端界面的录屏截图。从图6(a)或(d)可以明 显看出轨迹所经过的像素点的像素值更新为异于原始像素值。从图6(b)或(e) 可以明显看出获取的多帧图像帧中目标物运动所形成的轨迹为圆形,满足触发 条件。从图6(c)或(f)可以明显看出取值为异于原始像素值的像素点逐渐向 轨迹中心位置处靠近,实现动画效果。
进一步地,当触发条件被满足时,终端可按照位置在当前播放的图像帧中, 播放预设动画。其中,预设动画可以是逐渐将更新为预设像素值的像素点恢复 初始像素值,或者逐渐取消渲染粒子动画,或者粒子动画逐渐向轨迹中心位置 处靠近后取消渲染等。
上述实施例中,通过对图像帧中轨迹所经过的像素点的像素值进行更新, 可以将目标物的运动轨迹直接展示在当前的图像帧中,形成实时绘图的效果, 提高用户感知度。而且在触发条件满足后,播放预定动画,提高了趣味性。
在一个实施例中,确定现实场景中目标物所对应的位置,包括:确定目标 物在世界坐标空间中的世界坐标位置。按照位置在当前播放的图像帧中渲染虚 拟入口,包括:按照相机坐标空间中对应于世界坐标位置的相机坐标位置,在 当前播放的图像帧中渲染虚拟入口。
其中,世界坐标空间是现实场景的坐标空间,是固定不变的绝对坐标空间。 相机坐标空间是以光轴与图像平面的交点为原点所构成的坐标空间,是随图像 采集装置(相机)的位置变化而变化的相对坐标空间。世界坐标空间中的世界 坐标位置可通过刚体变化映射为相机坐标系中的相机坐标位置。
可以理解,对于现实场景中的目标物,通常情况下该目标物在未发生运动 时,其在世界坐标空间中的世界坐标位置是固定不变的,但随着图像采集装置 的位置和姿态的变化,其在相机坐标空间中的相机坐标位置是相对不变的。
在本发明中,是意图在目标物运动的世界坐标位置映射在图像帧中的位置 处渲染虚拟入口,让用户感知为目标物运动的世界坐标位置处出现了虚拟入口, 故需要获取目标物运动的世界坐标位置,再实时确定在当前的相机坐标空间中 的相机坐标位置。比如,用户手持终端在后置摄像头的视野区域内用手部食指 指尖画出了圆圈,那就是意图在现实场景中手指画圈的那个位置出现虚拟门。
具体地,终端在判定获取的多帧图像帧中目标物运动所形成的轨迹满足触 发条件时,可获取当前图像帧中目标物的图像坐标位置,按照图像坐标空间与 相机坐标空间的投影变化,得到目标物的相机坐标位置,再按照相机坐标空间 与世界坐标空间的刚体变化,得到目标物在世界坐标空间中的世界坐标位置。 其中,图像坐标空间是以图像的中心处为原点,坐标轴平行于图像的边所构成 的坐标空间。
可以理解,由于相机坐标空间和图像坐标空间之间的投影变化关系是基于 出厂设置确定的,所以根据预设投影变化关系,以及图像坐标空间中的图像坐 标位置,可以确定目标物在相机坐标空间中横纵坐标,再根据目标物的图像深 度可以得到目标物在相机坐标空间中垂直方向的坐标。
由于本申请实施例中涉及到多个坐标空间,为了使本申请方案更加清晰, 现以图7为例对各坐标空间进行区分说明。参照图7,Oo-XoYoZo为模型坐标 空间的坐标系、Ow-XwYwZw为世界坐标空间的坐标系、Oc-XcYcZc为相机坐 标空间的坐标系、O1-xy为图像坐标空间的坐标系以及O2-uv为像素坐标空间的 坐标系。点P(Xw,Yw,Zw)为世界坐标空间中的点(即现实世界中真实的点), 点p即为与点P(Xw,Yw,Zw)匹配的图像帧中的像点。点p在图像坐标系空间 中的位置坐标为(x,y),在像素坐标系空间中的位置坐标为(u,v)。通过点p在 图像坐标空间中的位置坐标(x,y)和点p的深度,可以确定点p在相机坐标空 间中的相机坐标位置。可以理解,像素坐标空间的原点即为屏幕顶点。
在一个实施例中,按照相机坐标空间中对应于世界坐标位置的相机坐标位 置,在当前播放的图像帧中渲染虚拟入口,包括:获取当前终端的位置和姿态; 根据当前终端的位置和姿态,确定当前的相机坐标空间与世界坐标空间的变换 矩阵;按变换矩阵将世界坐标位置变换为相机坐标空间中的相机坐标位置;按 照相机坐标位置,在当前播放的图像帧中渲染虚拟入口。
其中,当前终端的位置即为当前终端的图像采集装置在现实场景中的位置。 当前终端的姿态是当前终端的图像采集装置在现实场景中横滚(roll)、俯仰(pitch)、 偏转(yaw)的空间状态。
可以理解,终端在进行图像处理之前,还执行了构建地图的步骤。终端通 过采集关键帧,定位并记录采集关键帧时在现实场景中的位置,这样终端在实 时进行图像处理时,即可将当前获取的图像帧与关键帧进行匹配,以将对应于 匹配的关键帧记录的位置。终端具体可基于SLAM(Simultaneous Localization And Mapping定位与地图构建)、VO(Visual Odometry视觉里程计)或者VIO (Visual Inertial Odometry视觉惯性里程计)对现实场景构建相应的地图。
在一个实施例中,获取当前终端的位置和姿态,包括:从地图中挑选与获 取的图像帧匹配的地图节点;查询对应于地图节点所存储的在现实场景中的位 置;获取惯性传感器采集的传感器数据;根据传感器数据,确定当前终端的姿 态。
具体地,终端可将获取的图像帧与地图中的节点图像进行匹配,在匹配成 功时,定位该匹配的节点图像的地图节点,查询对应于该地图节点所存储的在 现实场景中的位置,也就是终端当前的位置。终端还可获取惯性传感器(IMU, Inertial MeasurementUnit)采集的传感器数据,根据传感器数据,确定当前终端 的姿态。这样,即可根据当前终端的位置和姿态,计算当前相机坐标空间与世 界坐标空间的刚体变换矩阵。
可以理解,终端在构建地图时,可以事先计算参考地图节点处,相机坐标 空间与时间坐标空间的刚体变换矩阵,这样,其他地图节点位置的相机坐标空 间与时间坐标空间的刚体变换矩阵,即可根据当前地图节点与参考地图节点的 位置与姿态变化,得到当前相机坐标空间与世界坐标空间的刚体变换矩阵。终 端也可实时根据物点的世界坐标位置和像点在当前相机坐标空间中的相机坐标 位置之间的转换关系,确定世界坐标空间和当前相机坐标空间之间的当前刚体 变换矩阵。
在本实施例中,结合当前采集的图像帧的图像特征,以及惯性传感器采集 的传感器数据对当前终端进行定位,提高了定位的准确性。
进一步地,终端即可根据世界坐标空间和当前相机坐标空间之间的当前刚 体变换矩阵,按该刚体变换矩阵将世界坐标位置变换为相机坐标空间中的相机 坐标位置。
在一个实施例中,按照相机坐标位置,在当前播放的图像帧中渲染虚拟入 口,包括:将虚拟入口的模型顶点投影为图像坐标空间中相应的像素点;根据 各模型顶点间的连接关系,将模型顶点相应的像素点组合为图元;将光栅化后 的图元按照图元中各像素点的像素值,在图像坐标空间中对应于相机坐标位置 的图像坐标位置处,渲染得到虚拟入口。
其中,虚拟入口的模型是事先设置完成的模型。模型参数也是事先设置好 的。模型参数包括模型顶点参数和模型顶点之间的连接关系。模型顶点参数包 括模型顶点在模型坐标空间中的模型坐标位置、模型顶点的颜色以及模型纹理 坐标。图元是点、线或面等基本图形。光栅化是将图元转化为一组二维图像的 过程,这些二维图像代表着可在屏幕上绘制的像素。通俗地说,图元装配得到 的是顶点组成的图形,光栅化是根据图形的形状,插值出那个图形区域的像素。
具体地,终端可通过自模型坐标空间、世界坐标空间、相机坐标空间至图 像坐标空间之间的变换关系,将将虚拟入口的模型顶点投影为图像坐标空间中 相应的像素点。然后根据各模型顶点间的连接关系,将模型顶点相应的像素点 组合为图元,实现图元装配。再对图元进行光栅化以及着色,在图像坐标空间 中对应于相机坐标位置的图像坐标位置处,渲染得到虚拟入口。终端具体可依 据OpenGL(Open Graphics Librar开放图形库)进行虚拟模型的绘制。
终端可以在采集的图像帧中,图像坐标空间中对应于相机坐标位置的图像 坐标位置处渲染得到虚拟入口后,将得到的渲染虚拟入口后的图像帧放入帧缓 存区,等待显示;也可直接在终端屏幕上进行显示。
在一个实施例中,该图像处理方法还包括:构建地图的步骤,该构建地图 的步骤包括:从按时序采集的图像帧中选取图像帧;当选取的图像帧的图像特 征符合节点图像的图像特征时,获取选取的图像帧为节点图像;确定获取的节 点图像在地图中相应的地图节点;对应于确定的地图节点存储获取的节点图像 的图像特征,及采集获取的节点图像时在现实场景中的位置。
其中,选取的图像帧,可以是采集的图像帧中的关键帧。
在一个实施例中,终端可接收用户选择指令,根据该用户选择指令,从采 集的图像帧中选取图像帧。终端也可按照预设间隔帧数从采集的图像帧中选取 图像帧。比如,每隔20帧图像帧后选取图像帧。
预设的节点图像的图像特征是预设的用于选择节点图像的图像特征。符合 预设的节点图像的图像特征可以是图像中包括的特征点与已有节点图像包括的 特征点中相匹配的特征点的数量超过预设数量,也可以是包括的特征点与已有 节点图像包括的特征点中相匹配特征点占已有节点图像包括的特征点的比例低 于预设比例。
举例说明,假设最近添加的节点图像包括的特征点数量为100,当前选取的 图像帧包括的特征点数量为120。预设数量为50,预设比例为90%。其中,若 当前选取的图像帧包括的特征点与最近添加的节点图像包括的特征点中相匹配 的特征点的数量为70。那么,当前图像帧中包括的特征点与已有节点图像包括 的特征点匹配的数量超过预设数量,可判定当前选取的图像帧的特征符合预设 的节点图像的特征。
在一个实施例中,终端在获取构建地图的指令后,可按照固定或动态的帧 率采集图像帧,选取采集的图像帧包括的特征点的数量大于预设数量阈值的图 像帧为初始的节点图像,确定该节点图像在地图中相应的地图节点,以及该节 点图像包括的特征点在地图中相应的位置,构建局部地图。终端再从按时序采 集的图像帧中选取图像帧,将选取符合预设的节点图像的特征的图像帧作为后 续的节点图像,直至得到全局地图。
具体地,终端可以初始的节点图像为参考节点图像,追踪参考节点图像中 的特征点。当选取的图像帧包括的特征点与参考节点图像包括的特征点的匹配 数量低于第一预设数量且高于第二预设数量时,将选取的图像帧作为节点图像。 当选取的图像帧包括的特征点与参考节点图像包括的特征点的匹配数量低于第 二预设数量时,将最近获取的节点图像为参考节点图像,继续进行图像追踪, 以选取节点图像。
进一步地,终端可确定在自然空间中采集该获取的节点图像投影于地图空 间中的地图节点。终端可提取在获取的节点图像时序靠前的节点图像的特征, 计算时序靠前的节点图像的特征与获取的节点图像的变化矩阵,根据该变化矩 阵得到采集时序靠前的节点图像时的位置到采集获取的节点图像时的位置的变 化量,再根据该变化量确定获取的节点图像在地图中相应的地图节点。
其中,变化矩阵是二维图像的特征到二维图像的特征之间的相似变化关系。 具体地,终端可提取获取的节点图像的图像特征,地图中已有的节点对应的节 点图像的图像特征进行匹配,获取匹配成功的图像特征分别在获取的节点图像 和已有的节点图像中的位置。获取的节点图像为在后采集的图像帧,已有的节 点图像为在后采集的图像帧。终端即可根据得到的匹配的特性特征在先后采集 的两帧图像帧上的位置确定先后采集的两帧图像帧之间的变化矩阵,从而得到 终端采集这两帧图像帧时的位置变化和姿态变化,再根据在前采集的图像的位 置和姿态,即可得到在后采集的图像的位置和姿态。
在一个实施例中,地图中已有的节点对应的节点图像可以是一帧或者多帧。 终端也可将获取的节点图像的特征与多个已有的节点对应的节点图像的特征比 较,得到在采集后的图像帧与多个在先采集的图像帧的变化矩阵,再根据多个 变化矩阵综合得到在后采集的图像的位置和姿态。比如,对计算得到的多个位 置变化和姿态变化加权求平均等。
在本实施例中,通过节点图像的特征之间的变化矩阵,得到当前获取的节 点图像与在前已有的节点图像的转化关系,从而实现由在前的图像帧在地图中 的位置推测当前图像帧的在地图中的位置,实现实时定位。
具体地,终端可提取节点图像的图像特征,将节点图像的图像特征对应于 节点图像相应的地图节点存储,可在需要进行图像特征比较时,直接根据地图 节点查找对应的节点图像的图像特征,以节省存储空间提高查找效率。
终端还可将采集获取的节点图像时在现实场景中的位置,以在终端定位时, 直接根据地图节点查找对应的节点图像存储的位置,以提高查找效率。
在本实施例中,通过自身采集图像帧,再对采集的图像帧进行处理即可自 动进行地图构建,避免了需要大量具备专业绘图能力的工作人员人工对环境进 行测绘,对工作人员能力要求高且劳动量大的问题,提高地图构建的效率。
在一个实施例中,虚拟内容为全景视频。该图像处理方法还包括:确定虚 拟入口对应于现实场景中的空间区域;在当前终端的位置经过空间区域后,则 直接显示全景视频中当前视野区域内的视频画面。
其中,全景视频是利用3D摄像机进行全方位360度进行拍摄的视频。用户 在观看全景视频的时候,可以随意调节视角进行360度全景观看。虚拟入口对 应于现实场景中的空间区域,是虚拟入口在相机坐标空间中所占空间在世界坐 标空间中的投影。该空间区域可以是平面空间区域,即没有厚度;也可以是立 体空间区域,即有厚度。对用户而言,即让用户感知为现实场景中某个固定的 位置出现了虚拟入口(虚拟的房间门),当用户手持终端向该位置移动时,感知 为走向该虚拟入口(虚拟的房间门)。
具体地,当前终端的位置经过空间区域后,通俗地理解为用户穿过房间门 进入了另一个房间或空间。终端可以终端当前位置为球心建立三维球体模型, 将全景视频以纹理方式渲染到球面内侧。这样,终端即可直接显示全景视频中 终端当前视野区域内的视频画面。当前视野区域与终端当前的姿态有关。
图8示出了一个实施例中当前终端的位置经过空间区域后的渲染原理图。 参考图8,图8(a)示出了当前终端的位置经过空间区域的示意图,可以明显 看到终端的位置是穿过虚拟入口801所在的区域,从虚拟入口的一侧运动至虚 拟入口的另一侧。图8(b)示出了在渲染全景视频的三维球体模型中确定当前 视野区域内的视频画面的示意图,可以明显看出,三维球体模型的球心即为终 端位置,也就是终端摄像头作为观测点的位置,当前视野区域810与球面820 交集区域830的视频画面即为用于在终端屏幕上显示的画面。图8(c)示出了 交集区域830的视频画面在终端界面显示的简化示意图,图8(d)示出了交集 区域830的视频画面在终端界面显示时的截图。
在一个实施例中,当前终端的位置经过空间区域后,终端的姿态可根据用 户指令进行变化。当终端的姿态发生变化时,终端当前视野区域随即发生变化。 终端即可实时显示全景视频中当前视野区域内的视频画面。
在一个实施例中,图像处理方法还包括:在直接显示全景视频中当前视野 区域内的视频画面后,则在当前终端的位置未再次穿过空间区域、且当前视野 区域经过移动后覆盖虚拟入口时,则确定当前视野区域中位于虚拟入口内的视 野区域;在虚拟入口中显示获取的图像帧中确定的视野区域内的画面。
可以理解,当前终端的位置未再次穿过空间区域、且当前视野区域经过移 动后覆盖虚拟入口,即为当前终端并未位移穿过虚拟入口,而是调整当前终端 的姿态,使得虚拟入口重新进入终端当前视野区域内。
具体地,终端在直接显示全景视频中当前视野区域内的视频画面后,当检 测到当前终端的位置未再次穿过空间区域、且当前视野区域经过移动后覆盖虚 拟入口时,则确定当前视野区域中位于虚拟入口内的视野区域,在虚拟入口中 显示获取的图像帧中确定的视野区域内的画面。这样,即实现在虚拟入口内显 示现实世界,在虚拟入口外显示虚拟内容。
通俗地理解为,用户通过房间门进入房间后,房间门即在用户身后,不再 出现在用户视野中。用户在房间内调整视野进行观看,看到房间各处的场景画 面,也就是本实施例中当前终端的位置经过空间区域后,则直接显示的全景视 频中当前视野区域内的视频画面,用户即看到的是虚拟入口内的全景视频。当 用户转身后,房间门又重新出现在用户视野中,用户通过房间门看到的是房间 外的现实画面,也就是本实施例中在当前终端的位置未再次穿过空间区域、且 当前视野区域经过移动后覆盖虚拟入口时,则确定当前视野区域中位于虚拟入 口内的视野区域;在虚拟入口中显示获取的图像帧中确定的视野区域内的画面。 这样用户看到的是虚拟入口内的现实场景的画面。
图9示出了一个实施例中当前终端的位置未再次穿过空间区域、且当前视 野区域经过移动后覆盖虚拟入口时,终端界面显示的界面示意图。参考图9,虚 拟入口内的是现实场景的画面,虚拟入口外则为虚拟内容。
在一个实施例中,图像处理方法还包括:在当前终端的位置围绕空间区域 移动时,则确定当前视野区域中位于虚拟入口内的视野区域;在虚拟入口中显 示全景视频中确定的视野区域内的视频画面。
图10示出了一个实施例中当前终端的位置围绕空间区域移动时的渲染原理 图。参考图10,图10左图示出了当前终端的位置围绕空间区域移动时的示意图, 可以明显看到终端的位置是绕过虚拟入口1001所在的区域,从虚拟入口的一侧 运动至虚拟入口的另一侧。终端在以图10左图的移动方式移动时,终端显示的 画面汇总,虚拟入口内的始终是虚拟内容,虚拟入口外则始终为现实场景画面, 如图10右图所示。
在一个具体的应用场景中,用户手持终端,通过终端上用于调用摄像头的 应用程序打开终端上内置的摄像头,这样,终端可在摄像头当前的视野下,采 集现实场景中的图像帧。用户手持终端在后置摄像头的视野区域内用手部食指 指尖画出了圆圈,意图在现实场景中手指画圈的那个位置出现虚拟门。此时, 终端即在该位置相应于终端屏幕的图像位置渲染虚拟入口。虚拟入口外显示现 实场景画面,虚拟入口内显示全景视频的局部视频画面。
用户手持终端向虚拟入口映射在现实场景中的位置靠近,则终端屏幕上的 虚拟入口逐渐变大,直至在终端穿过该位置后不再出现在终端屏幕上,此时用 户看到的是呈现在终端屏幕上的全景视频的局部视频画面。用户可调整后置摄 像头的视野区域以观看不同区域的全景视频画面。
用户可手持终端向后退以再次穿过该位置,此时,虚拟入口出现在终端屏 幕上并逐渐变小,虚拟入口外显示现实场景画面,虚拟入口内显示全景视频的 局部视频画面。用户可手持终端向转身,但未再次穿过该位置,此时,虚拟入 口出现在终端屏幕上,虚拟入口外显示全景视频的局部视频画面,虚拟入口内 显示现实场景画面。
用户手持终端围绕虚拟入口映射在现实场景中的位置,此时,虚拟入口始 终出现在终端屏幕上,虚拟入口外显示现实场景画面,虚拟入口内显示全景视 频的局部视频画面。
上述实施例中,提供了当前终端的位置在经过虚拟入口或围绕虚拟入口移 动时,虚拟入口内外的渲染内容的变化。使得用户可以移动位置从入口外穿越 到入口中,查看入口内的虚拟世界,也可以从入口内移动到入口外查看外面的 现实世界,体验虚拟和现实的穿越效果。
在一个实施例中,虚拟内容为全景视频。该图像处理方法还包括:将采集 的视频帧绘制于第一球体模型的球面内侧,并将全景视频的全景视频画面绘制 于第二球体模型的球面内侧;确定虚拟入口对应于现实场景中的空间区域;在 当前终端的位置未曾穿过空间区域、或者当前终端的位置穿过空间区域的次数 为偶数时,则按照渲染顺序和模型深度的逆序,根据当前视野区域内的第一球 体模型、第二球体模型以及全透明的第三模型渲染得到用于显示的画面;其中, 第一球体模型的球半径大于第二球体模型的球半径;第一球体模型的模型深度 大于第二球体模型的模型深度;第二球体模型的模型深度大于第三模型的模型 深度;第三模型用于在当前视野区域覆盖虚拟入口时,触发取消渲染当前视野区域中位于虚拟入口外的视野区域中的第二球体模型;或者,用于在视野区域 未覆盖虚拟入口时触发取消渲染第二球体模型。
其中,渲染顺序是渲染模型的先后顺序。模型深度是模型边界离观测点的 距离。模型深度越深,模型边界离观测点的距离越远。观测点是在模型内部观 测模型的位置,观测点视野区域内渲染得到的画面,即为终端屏幕显示的画面。 通常情况下,在渲染视野区域内的模型得到用于显示的画面时,通常是按照模 型深度的逆序渲染,也就是先渲染离观测点的距离近的模型。渲染顺序则是人 为设定的在渲染时需要依据的顺序。
本实施例中,同时依据渲染顺序和模型深度的逆序进行渲染。这样,在渲 染某一模型时,已渲染模型深度小于该模型的其他模型时,该模型则不再渲染。 具体地,终端可在建模时,即在深度缓冲(depthBuffer)中记录各模型的深度信 息(writesToDepthBuffer),并添加深度信息测试标记(readsToDepthBuffer)。添 加深度信息测试标记,表示模型在绘制时,终端会读取该模型的模型深度,根 据该模型深度进行渲染。
具体地,终端可依据模型坐标空间与世界坐标空间的变化关系、虚拟入口 在世界坐标系中的世界坐标位置,确定虚拟入口在模型坐标空间中的模型坐标 位置。然后以该模型坐标位置为球心建立第一球体模型和第二球体模型。终端 可再将采集的视频帧以纹理方式绘制于第一球体模型的球面内侧,并将全景视 频的全景视频画面以纹理方式绘制于第二球体模型的球面内侧。
在一个实施例中,终端也可在观测点的前方创建可以投影到终端屏幕上的 模型平面,这个模型平面随着观测点的移动和转向永远保持在观测点的前方。 终端再在这个模型平面上绘制从现实场景中采集的图像帧,这样即实现将获取 的图像帧按照采集的时序逐帧播放。
可以理解,在触发条件满足后,首次渲染虚拟入口时,虚拟入口内为虚拟 内容,虚拟入口外为现实场景。那么当前终端的位置未曾穿过空间区域、或者 当前终端的位置穿过空间区域的次数为偶数时,也就是虚拟入口内仍为虚拟内 容,虚拟入口外仍为现实场景。
这样,为了保持在虚拟入口内仍为虚拟内容,虚拟入口外仍为现实场景, 终端可创建包围观测点的第三模型,将渲染顺序(renderingOrder)设置为:第 一球体模型→第三模型→第二球体模型。其中,虚拟入口位于第三模型的界面 上,且虚拟入口所在的区域为空。
图11示出了一个实施例中模型的剖面示意图。参考图11(a),包括第一球 体模型1101、第二球体模型1102、第三模型1103和虚拟入口1104。此时,观 测点1105离虚拟入口1104较远。
这样,在观测点的视野区域的视线上存在第三模型时,由于第三模型的渲 染顺序优先于第二球体模型、且第三模型的模型深度小于第二球体模型,此时 终端则仅渲染第一球体模型和第三模型得到用于显示的画面。终端还可将第三 模型的透明度设置为全透明,那么此时用于显示的画面实际上即为在第一球体 模型的球面内侧绘制从现实场景采集的视频帧,那就是说保证了虚拟入口外显 示现实场景。
继续参考图11(a)起始于观测点1105未经过虚拟入口1104的视线OA, 依次经过第三模型、第二球体模型和第一球体模型,如图12(a)所示。这样, 在渲染时,由于渲染顺序为:第一球体模型→第三模型→第二球体模型,假设 第三模型的颜色为C3,透明度为T3;第二球体模型的颜色为C2,透明度为T2; 第一球体模型的颜色为C1,透明度为T1;那么渲染得到的屏幕上的颜色即为: C3*T3+(1-C3)*T1*C1。具体可设置C3为0,即为全透明,C1为1,即为不 透明,那么屏幕上的颜色即为第一球体模型的颜色,也就是绘制在第一球体模 型球面内侧的从现实场景中采集的图像帧。
在观测点的视野区域的视线上不存在第三模型时,此时终端则仅渲染第一 球体模型和第二球体模型得到用于显示的画面。终端具体可设置第二球体模型, 为不透明,那么此时用于显示的画面实际上即为在第二球体模型的球面内侧绘 制全景视频的视频帧,那就是说保证了虚拟入口内显示虚拟内容。
继续参考图11(a)起始于观测点1105经过虚拟入口1104的视线OB,依 次经过第二球体模型和第一球体模型,如图12(b)所示。这样,在渲染时,由 于渲染顺序为:第一球体模型→第二球体模型,假设第二球体模型的颜色为C2, 透明度为T2;第一球体模型的颜色为C1,透明度为T1;那么渲染得到的屏幕 上的颜色即为:C2*T2+(1-C2)*T1*C1。具体可设置C2为1,即为不透明, C1为1,即为不透明,那么屏幕上的颜色即为第二球体模型的颜色,也就是绘 制在第二球体模型球面内侧的全景视频的视频帧。
上述实施例中,在用户为进入虚拟入口时,通过第三模型在当前视野区域 覆盖虚拟入口时,触发取消渲染当前视野区域中位于虚拟入口外的视野区域中 的第二球体模型上的全景视频;在视野区域未覆盖虚拟入口时触发取消渲染第 二球体模型上的全景视频。这样保证了用户进入虚拟入口后未看到虚拟入口时, 看到的都是全景视频的内容;看到虚拟入口时,虚拟入口内是现实场景的内容, 虚拟入口外则是全景视频的内容。
在一个实施例中,该图像处理方法还包括:在当前终端的位置穿过空间区 域的次数为奇数时,则按照渲染顺序和模型深度的逆序,根据当前视野区域内 的第一球体模型、第二球体模型以及全透明的第四模型渲染得到用于显示的画 面;其中,第二球体模型的模型深度大于第四模型的模型深度;第四模型用于 在当前视野区域覆盖虚拟入口时,触发取消渲染当前视野区域中位于虚拟入口 外的视野区域中的第二球体模型;或者,用于在视野区域未覆盖虚拟入口时触 发取消渲染第二球体模型。
可以理解,在触发条件满足后,首次渲染虚拟入口时,虚拟入口内为虚拟 内容,虚拟入口外为现实场景。那么当前终端的位置穿过空间区域的次数为奇 数时,也就是虚拟入口内变化为现实场景,虚拟入口外则变化为虚拟内容场景。
这样,为了保持在虚拟入口内变化为现实场景,虚拟入口外外则变化为虚 拟内容场景,终端可创建包围观测点的第四模型,将渲染顺序设置为:第一球 体模型→第四模型→第二球体模型。其中,第四模型的界面即为虚拟入口。
参考图11(b),包括第一球体模型1101、第二球体模型1102、第四模型1106 和虚拟入口1104。此时,观测点1107离虚拟入口1104较远。
这样,在观测点的视野区域的视线上存在第四模型时,由于第四模型的渲 染顺序优先于第二球体模型、且第四模型的模型深度小于第二球体模型,此时 终端则仅渲染第一球体模型和第四模型得到用于显示的画面。终端还可将第四 模型的透明度设置为全透明,那么此时用于显示的画面实际上即为在第一球体 模型的球面内侧绘制从现实场景采集的视频帧,那就是说保证了虚拟入口内显 示现实场景。
继续参考图11(b)起始于观测点1107经过虚拟入口1104的视线OC,依 次经过第四模型、第二球体模型和第一球体模型,如图12(c)所示。这样,在 渲染时,由于渲染顺序为:第一球体模型→第四模型→第二球体模型,假设第 四模型的颜色为C4,透明度为T4;第二球体模型的颜色为C2,透明度为T2; 第一球体模型的颜色为C1,透明度为T1;那么渲染得到的屏幕上的颜色即为: C4*T4+(1-C4)*T1*C1。具体可设置C4为0,即为全透明,C1为1,即为不 透明,那么屏幕上的颜色即为第一球体模型的颜色,也就是绘制在第一球体模 型球面内侧的从现实场景中采集的图像帧。
在观测点的视野区域的视线上不存在第三模型时,此时终端则仅渲染第一 球体模型和第二球体模型得到用于显示的画面。终端具体可设置第二球体模型, 为不透明,那么此时用于显示的画面实际上即为在第二球体模型的球面内侧绘 制全景视频的视频帧,那就是说保证了虚拟入口外显示虚拟内容。
继续参考图11(a)起始于观测点1107经过虚拟入口1104的视线OB,依 次经过第二球体模型和第一球体模型,如图12(d)所示。这样,在渲染时,由 于渲染顺序为:第一球体模型→第二球体模型,假设第二球体模型的颜色为C2, 透明度为T2;第一球体模型的颜色为C1,透明度为T1;那么渲染得到的屏幕 上的颜色即为:C2*T2+(1-C2)*T1*C1。具体可设置C2为1,即为不透明, C1为1,即为不透明,那么屏幕上的颜色即为第二球体模型的颜色,也就是绘 制在第二球体模型球面内侧的全景视频的视频帧。
上述实施例中,在用户为未进入虚拟入口时,通过第四模型在当前视野区 域覆盖虚拟入口时,触发取消渲染当前视野区域中位于虚拟入口外的视野区域 中的第二球体模型上的全景视频内容;在视野区域未覆盖虚拟入口时触发取消 渲染第二球体模型上的全景视频内容。这样保证了用户未进入虚拟入口后未看 到虚拟入口时,看到的都是现实场景的内容;看到虚拟入口时,虚拟入口内是 全景视频的内容,虚拟入口外则是显示场景的内容。
在另外的实施例中,当观测点离虚拟入口较近时,可在观测点所在位置增 加第三模型或第四模型的边界区域,以避免观测点在经过或者围绕虚拟入口移 动时,渲染是出现的扰动。图11(c)为当前终端的位置穿过空间区域的次数为 奇数、且当前终端的朝向且靠近虚拟入口时的模型剖面图。图11(d)为当前终 端的位置未曾穿过空间区域、或者当前终端的位置穿过空间区域的次数为偶数、 且当前终端的朝向且靠近虚拟入口时的模型剖面图。图11(e)为当前终端的位 置未曾穿过空间区域、或者当前终端的位置穿过空间区域的次数为偶数、且当 前终端在虚拟入口一侧绕行时的模型剖面图。
在一个实施例中,在当前终端的位置未曾穿过空间区域、或者当前终端的 位置穿过空间区域的次数为偶数、且当前终端从虚拟入口一侧绕行至虚拟入口 的另一侧时,第三模型按虚拟入口所在平面进行翻转。这样保证了虚拟入口中 仍显示虚拟内容,虚拟入口外仍显示从现实世界采集的图像帧。也就是说,只 有在终端经过虚拟入口后,才会交换虚拟入口内外所显示的内容。
通俗地理解,终端在摄像头中渲染一个三维球形空间,球形空间中贴合播 放全景视频纹理图像,在球径大于该球的球面上播放从现实场景中采集的图像 帧,或者在观测点前方的模型平面上播放从现实场景中采集的图像帧。终端继 而在触发条件被满足时,模拟一个任意门,实现在门内展示虚拟世界,门外显 示现实世界图像。用户可以移动位置从门外穿越到门洞,查看门内的虚拟世界, 也可以从门内移动到门外查看外面的现实世界,体验虚拟和现实的穿越效果。
人进入任意门且离门较远时,以门为第四模型,该第四模型全透明。这样, 人透过门看时,门内为现实世界,门外为虚拟世界,即人处于虚拟世界中。人 进入任意门且离门很近时,为了防人穿越门是发生渲染抖动,在门对面临时放 一个刚好套住门的小房间,门本身为空,小房间为全透明,人透过门看时,门 内为现实世界,门外为虚拟世界,即人处于虚拟世界中。
人未进入任意门且离门较远时,以门为局部边界创建包围观测点的第三模 型,第三模型上门所在的区域为空,其他区域为全透明,这样,人透过门看时, 门内为虚拟世界,门外为现实世界,即人处于现实世界中。人未进入任意门且 离门较近时,为了防人穿越门是发生渲染抖动,在第三模型上以门为边界扩展 边界,这样,人透过门看时,门内为虚拟世界,门外为现实世界,即人处于现 实世界中。人未进入任意门且靠近门的一侧时,为了防人穿越门是发生渲染抖 动,扩展第三模型中观测点所在一侧的边界,当人穿过门所在的平面时,第三 模型按门所在平面进行翻转。这样,人透过门看时,门内仍为虚拟世界,门外 仍为现实世界,即仍处于现实世界中。
可以理解,上述实施例中第三模型以及第三模型的边界可以是平面也可以 是曲面。
图13为一个具体的实施例中图像处理方法的流程框图。参考图13,用户手 持终端,通过终端的摄像头从现实场景中采集图像帧,终端一方面根据采集的 图像帧创建地图,另一方面检测图像帧中是否包括手部区域。若终端未在检测 到图像帧中包括手部区域,则检测继续检测后续采集的图像帧。若终端在检测 到图像帧中包括手部区域时,则继续判断该手部区域所对应的手势类型是否为 触发类型。若否,则检测继续检测后续采集的图像帧;若是,则识别该图像帧 中手部区域的运动参考点,在运动参考点处渲染粒子动画,以突出显示手部运 动形成的轨迹。终端可再继续判断该轨迹是否满足触发条件,若否,则检测继 续检测后续采集的图像帧;若是,则触发渲染虚拟入口。
终端继而确定现实场景中手部所对应的位置,按照该位置在当前播放的图 像帧中渲染虚拟入口,在虚拟入口中显示全景视频,在虚拟入口外显示现实场 景。用户可手持终端移动,终端继而判断是否经过虚拟入口。若经过虚拟入口, 则直接显示全景视频中当前视野区域内的视频画面。若未经过虚拟入口,则依 然在虚拟入口中显示全景视频,在虚拟入口外显示现实场景。终端还可根据用 户指令进行录屏,将录屏得到的视频进行分享。
在一个实施例中,终端还可展示引导信息。引导信息可以是文本、语音或 者图片等。引导信息包括引导用户操控目标物运动形成满足触发条件的信息。 比如“伸出手指,在后置摄像头前画圈,触发开启任意门”,可参考图3(b)。 引导信息还可以包括引导用户向虚拟入口移动的信息。比如,指向虚拟入口的 箭头等,可参考图4(b)。
应该理解的是,虽然上述各实施例的流程图中的各个步骤按照箭头的指示 依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文 中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其 它的顺序执行。而且,上述各实施例中的至少一部分步骤可以包括多个子步骤 或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可 以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行, 而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交 替地执行。
如图14所示,在一个实施例中,提供了一种图像处理装置1400。参照图 14,该图像处理装置1400包括:获取模块1401、播放模块1402、确定模块1403 和渲染模块1404。
获取模块1401,用于获取从现实场景中采集的图像帧。
播放模块1402,用于将获取的图像帧按照采集的时序逐帧播放。
确定模块1403,用于当获取的多帧图像帧中目标物运动所形成的轨迹满足 触发条件时,确定现实场景中目标物所对应的位置。
渲染模块1404,用于按照位置在当前播放的图像帧中渲染虚拟入口;在虚 拟入口中显示虚拟内容。
在一个实施例中,目标物为手部。确定模块1403还用于从获取的图像帧中 分割出手部图像;识别出手部图像所对应的手势类型;当手势类型为触发类型 时,在图像帧中确定运动参考点;按照运动参考点确定手部运动所形成的轨迹。
在一个实施例中,确定模块1403还用于通过手部识别模型,将获取的图像 帧编码为语义分割特征矩阵;解码语义分割特征矩阵得到语义分割图像;语义 分割图像中的像素点,具有表示所属分类类别的像素值,且编码自的图像帧中 的像素点对应;根据属于手部类别的像素点从图像中分割出手部图像。
在一个实施例中,渲染模块1404还用于当触发条件未满足时,在播放的视 频帧中,将轨迹所经过的像素点的像素值替换为预设像素值;当触发条件被满 足时,按照位置在当前播放的图像帧中,播放预设动画。
在一个实施例中,确定模块1403还用于确定目标物在世界坐标空间中的世 界坐标位置。渲染模块1404还用于按照相机坐标空间中对应于世界坐标位置的 相机坐标位置,在当前播放的图像帧中渲染虚拟入口。
在一个实施例中,渲染模块1404还用于获取当前终端的位置和姿态;根据 当前终端的位置和姿态,确定当前的相机坐标空间与世界坐标空间的变换矩阵; 按变换矩阵将世界坐标位置变换为相机坐标空间中的相机坐标位置;按照相机 坐标位置,在当前播放的图像帧中渲染虚拟入口。
在一个实施例中,渲染模块1404还用于从地图中挑选与获取的图像帧匹配 的地图节点;查询对应于地图节点所存储的现实场景中的位置;获取惯性传感 器采集的传感器数据;根据传感器数据,确定当前终端在现实场景中的姿态。
如图15所示,在一个实施例中,图像处理装置1400还包括地图构建模块 1405,用于从按时序采集的图像帧中选取图像帧;当选取的图像帧的图像特征 符合节点图像的图像特征时,获取选取的图像帧为节点图像;确定获取的节点 图像在地图中相应的地图节点;对应于确定的地图节点存储获取的节点图像的 图像特征,及采集获取的节点图像时在现实场景中的位置。
在一个实施例中,渲染模块1404还用于将虚拟入口的模型顶点投影为图像 坐标空间中相应的像素点;根据各模型顶点间的连接关系,将模型顶点相应的 像素点组合为图元;将光栅化后的图元按照图元中各像素点的像素值,在图像 坐标空间中对应于相机坐标位置的图像坐标位置处,渲染得到虚拟入口。
在一个实施例中,虚拟内容为全景视频。渲染模块1404还用于确定虚拟入 口对应于现实场景中的空间区域;在当前终端的位置经过空间区域后,则直接 显示全景视频中当前视野区域内的视频画面。
在一个实施例中,渲染模块1404还用于在直接显示全景视频中当前视野区 域内的视频画面后,则在当前终端的位置未再次穿过空间区域、且当前视野区 域经过移动后覆盖虚拟入口时,则确定当前视野区域中位于虚拟入口内的视野 区域;在虚拟入口中显示获取的图像帧中确定的视野区域内的画面。
在一个实施例中,渲染模块1404还用于在当前终端的位置围绕空间区域移 动时,则确定当前视野区域中位于虚拟入口内的视野区域;在虚拟入口中显示 全景视频中确定的视野区域内的视频画面。
在一个实施例中,虚拟内容为全景视频。渲染模块1404还用于将采集的视 频帧绘制于第一球体模型的球面内侧,并将全景视频的全景视频画面绘制于第 二球体模型的球面内侧;确定虚拟入口对应于现实场景中的空间区域;在当前 终端的位置未曾穿过空间区域、或者当前终端的位置穿过空间区域的次数为偶 数时,则按照渲染顺序和模型深度的逆序,根据当前视野区域内的第一球体模 型、第二球体模型以及全透明的第三模型渲染得到用于显示的画面;其中,第 一球体模型的球半径大于第二球体模型的球半径;第一球体模型的模型深度大 于第二球体模型的模型深度;第二球体模型的模型深度大于第三模型的模型深 度;第三模型用于在当前视野区域覆盖虚拟入口时,触发取消渲染当前视野区 域中位于虚拟入口外的视野区域中的第二球体模型;或者,用于在视野区域未 覆盖虚拟入口时触发取消渲染第二球体模型。
在一个实施例中,渲染模块1404还用于在当前终端的位置穿过空间区域的 次数为奇数时,则按照渲染顺序和模型深度的逆序,根据当前视野区域内的第 一球体模型、第二球体模型以及全透明的第四模型渲染得到用于显示的画面; 其中,第二球体模型的模型深度大于第四模型的模型深度;第四模型用于在当 前视野区域覆盖虚拟入口时,触发取消渲染当前视野区域中位于虚拟入口外的 视野区域中的第二球体模型;或者,用于在视野区域未覆盖虚拟入口时触发取 消渲染第二球体模型。
图16示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可 以是图1中的终端110。如图16所示,该计算机设备包括通过系统总线连接的 处理器、存储器、网络接口、输入设备和显示屏。其中,存储器包括非易失性 存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还 可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现图像 处理方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行 时,可使得处理器执行图像处理方法。计算机设备的显示屏可以是液晶显示屏 或者电子墨水显示屏等,输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板 或鼠标等。本领域技术人员可以理解,图16中示出的结构,仅仅是与本申请方 案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备 的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合 某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的图像处理装置可以实现为一种计算机程序 的形式,计算机程序可在如图16所示的计算机设备上运行,计算机设备的非易 失性存储介质可存储组成该图像处理装置的各个程序模块,比如,图14所示的 获取模块1401、播放模块1402、确定模块1403和渲染模块1404等。各个程序 模块组成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的 图像处理方法中的步骤。
例如,图16所示的计算机设备可以通过如图14所示的图像处理装置1400 中的获取模块1401获取从现实场景中采集的图像帧。通过播放模块1402将获 取的图像帧按照采集的时序逐帧播放。通过确定模块1403当获取的多帧图像帧 中目标物运动所形成的轨迹满足触发条件时,确定现实场景中目标物所对应的 位置。通过渲染模块1404按照位置在当前播放的图像帧中渲染虚拟入口;在虚 拟入口中显示虚拟内容。
在一个实施例中,提供了一种计算机可读存储介质,该计算机可读存储介 质上存储有计算机程序,该计算机程序被处理器执行时,使得处理器执行以下 步骤:获取从现实场景中采集的图像帧;将获取的图像帧按照采集的时序逐帧 播放;当获取的多帧图像帧中目标物运动所形成的轨迹满足触发条件时,确定 现实场景中目标物所对应的位置;按照位置在当前播放的图像帧中渲染虚拟入 口;在虚拟入口中显示虚拟内容。
在一个实施例中,目标物为手部。该计算机程序还使得处理器执行以下步 骤:从获取的图像帧中分割出手部图像;识别出手部图像所对应的手势类型; 当手势类型为触发类型时,在图像帧中确定运动参考点;按照运动参考点确定 手部运动所形成的轨迹。
在一个实施例中,从获取的图像帧中分割出手部图像,包括:通过手部识 别模型,将获取的图像帧编码为语义分割特征矩阵;解码语义分割特征矩阵得 到语义分割图像;语义分割图像中的像素点,具有表示所属分类类别的像素值, 且编码自的图像帧中的像素点对应;根据属于手部类别的像素点从图像中分割 出手部图像。
在一个实施例中,该计算机程序还使得处理器执行以下步骤:当触发条件 未满足时,在播放的视频帧中,将轨迹所经过的像素点的像素值替换为预设像 素值;当触发条件被满足时,按照位置在当前播放的图像帧中,播放预设动画。
在一个实施例中,确定现实场景中目标物所对应的位置,包括:确定目标 物在世界坐标空间中的世界坐标位置;按照位置在当前播放的图像帧中渲染虚 拟入口,包括:按照相机坐标空间中对应于世界坐标位置的相机坐标位置,在 当前播放的图像帧中渲染虚拟入口。
在一个实施例中,按照相机坐标空间中对应于世界坐标位置的相机坐标位 置,在当前播放的图像帧中渲染虚拟入口,包括:获取当前终端的位置和姿态; 根据当前终端的位置和姿态,确定当前的相机坐标空间与世界坐标空间的变换 矩阵;按变换矩阵将世界坐标位置变换为相机坐标空间中的相机坐标位置;按 照相机坐标位置,在当前播放的图像帧中渲染虚拟入口。
在一个实施例中,获取当前终端的位置和姿态,包括:从地图中挑选与获 取的图像帧匹配的地图节点;查询对应于地图节点所存储的现实场景中的位置; 获取惯性传感器采集的传感器数据;根据传感器数据,确定当前终端在现实场 景中的姿态。
在一个实施例中,该计算机程序还使得处理器执行以下步骤:从按时序采 集的图像帧中选取图像帧;当选取的图像帧的图像特征符合节点图像的图像特 征时,获取选取的图像帧为节点图像;确定获取的节点图像在地图中相应的地 图节点;对应于确定的地图节点存储获取的节点图像的图像特征,及采集获取 的节点图像时在现实场景中的位置。
在一个实施例中,按照相机坐标位置,在当前播放的图像帧中渲染虚拟入 口,包括:将虚拟入口的模型顶点投影为图像坐标空间中相应的像素点;根据 各模型顶点间的连接关系,将模型顶点相应的像素点组合为图元;将光栅化后 的图元按照图元中各像素点的像素值,在图像坐标空间中对应于相机坐标位置 的图像坐标位置处,渲染得到虚拟入口。
在一个实施例中,虚拟内容为全景视频;该计算机程序还使得处理器执行 以下步骤:确定虚拟入口对应于现实场景中的空间区域;在当前终端的位置经 过空间区域后,则直接显示全景视频中当前视野区域内的视频画面。
在一个实施例中,该计算机程序还使得处理器执行以下步骤:在直接显示 全景视频中当前视野区域内的视频画面后,则在当前终端的位置未再次穿过空 间区域、且当前视野区域经过移动后覆盖虚拟入口时,则确定当前视野区域中 位于虚拟入口内的视野区域;在虚拟入口中显示获取的图像帧中确定的视野区 域内的画面。
在一个实施例中,该计算机程序还使得处理器执行以下步骤:在当前终端 的位置围绕空间区域移动时,则确定当前视野区域中位于虚拟入口内的视野区 域;在虚拟入口中显示全景视频中确定的视野区域内的视频画面。
在一个实施例中,虚拟内容为全景视频;该计算机程序还使得处理器执行 以下步骤:将采集的视频帧绘制于第一球体模型的球面内侧,并将全景视频的 全景视频画面绘制于第二球体模型的球面内侧;确定虚拟入口对应于现实场景 中的空间区域;在当前终端的位置未曾穿过空间区域、或者当前终端的位置穿 过空间区域的次数为偶数时,则按照渲染顺序和模型深度的逆序,根据当前视 野区域内的第一球体模型、第二球体模型以及全透明的第三模型渲染得到用于 显示的画面;其中,第一球体模型的球半径大于第二球体模型的球半径;第一 球体模型的模型深度大于第二球体模型的模型深度;第二球体模型的模型深度 大于第三模型的模型深度;第三模型用于在当前视野区域覆盖虚拟入口时,触 发取消渲染当前视野区域中位于虚拟入口外的视野区域中的第二球体模型;或 者,用于在视野区域未覆盖虚拟入口时触发取消渲染第二球体模型。
在一个实施例中,该计算机程序还使得处理器执行以下步骤:在当前终端 的位置穿过空间区域的次数为奇数时,则按照渲染顺序和模型深度的逆序,根 据当前视野区域内的第一球体模型、第二球体模型以及全透明的第四模型渲染 得到用于显示的画面;其中,第二球体模型的模型深度大于第四模型的模型深 度;第四模型用于在当前视野区域覆盖虚拟入口时,触发取消渲染当前视野区 域中位于虚拟入口外的视野区域中的第二球体模型;或者,用于在视野区域未 覆盖虚拟入口时触发取消渲染第二球体模型。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器 中储存有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤: 获取从现实场景中采集的图像帧;将获取的图像帧按照采集的时序逐帧播放; 当获取的多帧图像帧中目标物运动所形成的轨迹满足触发条件时,确定现实场 景中目标物所对应的位置;按照位置在当前播放的图像帧中渲染虚拟入口;在 虚拟入口中显示虚拟内容。
在一个实施例中,目标物为手部。该计算机程序还使得处理器执行以下步 骤:从获取的图像帧中分割出手部图像;识别出手部图像所对应的手势类型; 当手势类型为触发类型时,在图像帧中确定运动参考点;按照运动参考点确定 手部运动所形成的轨迹。
在一个实施例中,从获取的图像帧中分割出手部图像,包括:通过手部识 别模型,将获取的图像帧编码为语义分割特征矩阵;解码语义分割特征矩阵得 到语义分割图像;语义分割图像中的像素点,具有表示所属分类类别的像素值, 且编码自的图像帧中的像素点对应;根据属于手部类别的像素点从图像中分割 出手部图像。
在一个实施例中,该计算机程序还使得处理器执行以下步骤:当触发条件 未满足时,在播放的视频帧中,将轨迹所经过的像素点的像素值替换为预设像 素值;当触发条件被满足时,按照位置在当前播放的图像帧中,播放预设动画。
在一个实施例中,确定现实场景中目标物所对应的位置,包括:确定目标 物在世界坐标空间中的世界坐标位置;按照位置在当前播放的图像帧中渲染虚 拟入口,包括:按照相机坐标空间中对应于世界坐标位置的相机坐标位置,在 当前播放的图像帧中渲染虚拟入口。
在一个实施例中,按照相机坐标空间中对应于世界坐标位置的相机坐标位 置,在当前播放的图像帧中渲染虚拟入口,包括:获取当前终端的位置和姿态; 根据当前终端的位置和姿态,确定当前的相机坐标空间与世界坐标空间的变换 矩阵;按变换矩阵将世界坐标位置变换为相机坐标空间中的相机坐标位置;按 照相机坐标位置,在当前播放的图像帧中渲染虚拟入口。
在一个实施例中,获取当前终端的位置和姿态,包括:从地图中挑选与获 取的图像帧匹配的地图节点;查询对应于地图节点所存储的现实场景中的位置; 获取惯性传感器采集的传感器数据;根据传感器数据,确定当前终端在现实场 景中的姿态。
在一个实施例中,该计算机程序还使得处理器执行以下步骤:从按时序采 集的图像帧中选取图像帧;当选取的图像帧的图像特征符合节点图像的图像特 征时,获取选取的图像帧为节点图像;确定获取的节点图像在地图中相应的地 图节点;对应于确定的地图节点存储获取的节点图像的图像特征,及采集获取 的节点图像时在现实场景中的位置。
在一个实施例中,按照相机坐标位置,在当前播放的图像帧中渲染虚拟入 口,包括:将虚拟入口的模型顶点投影为图像坐标空间中相应的像素点;根据 各模型顶点间的连接关系,将模型顶点相应的像素点组合为图元;将光栅化后 的图元按照图元中各像素点的像素值,在图像坐标空间中对应于相机坐标位置 的图像坐标位置处,渲染得到虚拟入口。
在一个实施例中,虚拟内容为全景视频;该计算机程序还使得处理器执行 以下步骤:确定虚拟入口对应于现实场景中的空间区域;在当前终端的位置经 过空间区域后,则直接显示全景视频中当前视野区域内的视频画面。
在一个实施例中,该计算机程序还使得处理器执行以下步骤:在直接显示 全景视频中当前视野区域内的视频画面后,则在当前终端的位置未再次穿过空 间区域、且当前视野区域经过移动后覆盖虚拟入口时,则确定当前视野区域中 位于虚拟入口内的视野区域;在虚拟入口中显示获取的图像帧中确定的视野区 域内的画面。
在一个实施例中,该计算机程序还使得处理器执行以下步骤:在当前终端 的位置围绕空间区域移动时,则确定当前视野区域中位于虚拟入口内的视野区 域;在虚拟入口中显示全景视频中确定的视野区域内的视频画面。
在一个实施例中,虚拟内容为全景视频;该计算机程序还使得处理器执行 以下步骤:将采集的视频帧绘制于第一球体模型的球面内侧,并将全景视频的 全景视频画面绘制于第二球体模型的球面内侧;确定虚拟入口对应于现实场景 中的空间区域;在当前终端的位置未曾穿过空间区域、或者当前终端的位置穿 过空间区域的次数为偶数时,则按照渲染顺序和模型深度的逆序,根据当前视 野区域内的第一球体模型、第二球体模型以及全透明的第三模型渲染得到用于 显示的画面;其中,第一球体模型的球半径大于第二球体模型的球半径;第一 球体模型的模型深度大于第二球体模型的模型深度;第二球体模型的模型深度 大于第三模型的模型深度;第三模型用于在当前视野区域覆盖虚拟入口时,触 发取消渲染当前视野区域中位于虚拟入口外的视野区域中的第二球体模型;或 者,用于在视野区域未覆盖虚拟入口时触发取消渲染第二球体模型。
在一个实施例中,该计算机程序还使得处理器执行以下步骤:在当前终端 的位置穿过空间区域的次数为奇数时,则按照渲染顺序和模型深度的逆序,根 据当前视野区域内的第一球体模型、第二球体模型以及全透明的第四模型渲染 得到用于显示的画面;其中,第二球体模型的模型深度大于第四模型的模型深 度;第四模型用于在当前视野区域覆盖虚拟入口时,触发取消渲染当前视野区 域中位于虚拟入口外的视野区域中的第二球体模型;或者,用于在视野区域未 覆盖虚拟入口时触发取消渲染第二球体模型。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程, 是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易 失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施 例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据 库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存 储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、 电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器 (RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得, 诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率 SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线 动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述 实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特 征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但 并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的 普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改 进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权 利要求为准。

Claims (17)

1.一种图像处理方法,包括:
获取从现实场景中采集的图像帧;
将获取的图像帧按照采集的时序逐帧播放;
当获取的多帧图像帧中目标物运动所形成的轨迹满足触发条件时,确定现实场景中所述目标物所对应的位置;
按照所述位置在当前播放的图像帧中渲染虚拟入口;
在所述虚拟入口中显示虚拟内容。
2.根据权利要求1所述的方法,其特征在于,所述目标物为手部;所述方法还包括:
从获取的图像帧中分割出手部图像;
识别出所述手部图像所对应的手势类型;
当所述手势类型为触发类型时,在所述图像帧中确定运动参考点;
按照所述运动参考点确定所述手部运动所形成的轨迹。
3.根据权利要求2所述的方法,其特征在于,所述从获取的图像帧中分割出手部图像,包括:
通过手部识别模型,将获取的图像帧编码为语义分割特征矩阵;
解码所述语义分割特征矩阵得到语义分割图像;所述语义分割图像中的像素点,具有表示所属分类类别的像素值,且编码自的图像帧中的像素点对应;
根据属于手部类别的像素点从所述图像中分割出手部图像。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当所述触发条件未满足时,在播放的视频帧中,将所述轨迹所经过的像素点的像素值替换为预设像素值;
当所述触发条件被满足时,按照所述位置在当前播放的图像帧中,播放预设动画。
5.根据权利要求1所述的方法,其特征在于,所述确定现实场景中所述目标物所对应的位置,包括:
确定所述目标物在世界坐标空间中的世界坐标位置;
所述按照所述位置在当前播放的图像帧中渲染虚拟入口,包括:
按照相机坐标空间中对应于所述世界坐标位置的相机坐标位置,在当前播放的图像帧中渲染虚拟入口。
6.根据权利要求2所述的方法,其特征在于,所述按照相机坐标空间中对应于所述世界坐标位置的相机坐标位置,在当前播放的图像帧中渲染虚拟入口,包括:
获取当前终端的位置和姿态;
根据所述当前终端的位置和姿态,确定当前的相机坐标空间与所述世界坐标空间的变换矩阵;
按所述变换矩阵将世界坐标位置变换为相机坐标空间中的相机坐标位置;
按照所述相机坐标位置,在当前播放的图像帧中渲染虚拟入口。
7.根据权利要求6所述的方法,其特征在于,所述获取当前终端的位置和姿态,包括:
从地图中挑选与获取的图像帧匹配的地图节点;
查询对应于所述地图节点所存储的现实场景中的位置;
获取惯性传感器采集的传感器数据;
根据所述传感器数据,确定当前终端在现实场景中的姿态。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
从按时序采集的图像帧中选取图像帧;
当选取的图像帧的图像特征符合节点图像的图像特征时,获取选取的图像帧为节点图像;
确定获取的所述节点图像在地图中相应的地图节点;
对应于确定的所述地图节点存储获取的所述节点图像的图像特征,及采集获取的所述节点图像时在现实场景中的位置。
9.根据权利要求6所述的方法,其特征在于,所述按照所述相机坐标位置,在当前播放的图像帧中渲染虚拟入口,包括:
将虚拟入口的模型顶点投影为图像坐标空间中相应的像素点;
根据各所述模型顶点间的连接关系,将模型顶点相应的像素点组合为图元;
将光栅化后的图元按照图元中各像素点的像素值,在图像坐标空间中对应于所述相机坐标位置的图像坐标位置处,渲染得到虚拟入口。
10.根据权利要求1所述的方法,其特征在于,所述虚拟内容为全景视频;所述方法还包括:
确定所述虚拟入口对应于现实场景中的空间区域;
在当前终端的位置经过所述空间区域后,则
直接显示全景视频中当前视野区域内的视频画面。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
在直接显示全景视频中当前视野区域内的视频画面后,则
在当前终端的位置未再次穿过所述空间区域、且当前视野区域经过移动后覆盖所述虚拟入口时,则
确定当前视野区域中位于所述虚拟入口内的视野区域;
在所述虚拟入口中显示获取的图像帧中确定的所述视野区域内的画面。
12.根据权利要求10所述的方法,其特征在于,所述方法还包括:
在当前终端的位置围绕所述空间区域移动时,则
确定当前视野区域中位于所述虚拟入口内的视野区域;
在所述虚拟入口中显示全景视频中确定的所述视野区域内的视频画面。
13.根据权利要求1所述的方法,其特征在于,所述虚拟内容为全景视频;所述方法还包括:
将采集的视频帧绘制于第一球体模型的球面内侧,并将全景视频的全景视频画面绘制于第二球体模型的球面内侧;
确定所述虚拟入口对应于现实场景中的空间区域;
在当前终端的位置未曾穿过所述空间区域、或者当前终端的位置穿过所述空间区域的次数为偶数时,则
按照渲染顺序和模型深度的逆序,根据当前视野区域内的所述第一球体模型、所述第二球体模型以及全透明的第三模型渲染得到用于显示的画面;
其中,所述第一球体模型的球半径大于所述第二球体模型的球半径;所述第一球体模型的模型深度大于所述第二球体模型的模型深度;所述第二球体模型的模型深度大于所述第三模型的模型深度;所述第三模型用于在当前视野区域覆盖所述虚拟入口时,触发取消渲染当前视野区域中位于所述虚拟入口外的视野区域中的第二球体模型;或者,用于在视野区域未覆盖所述虚拟入口时触发取消渲染所述第二球体模型。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
在当前终端的位置穿过所述空间区域的次数为奇数时,则
按照渲染顺序和模型深度的逆序,根据当前视野区域内的所述第一球体模型、所述第二球体模型以及全透明的第四模型渲染得到用于显示的画面;
其中,所述第二球体模型的模型深度大于所述第四模型的模型深度;所述第四模型用于在当前视野区域覆盖所述虚拟入口时,触发取消渲染当前视野区域中位于所述虚拟入口外的视野区域中的第二球体模型;或者,用于在视野区域未覆盖所述虚拟入口时触发取消渲染所述第二球体模型。
15.一种图像处理装置,包括:
获取模块,用于获取从现实场景中采集的图像帧;
播放模块,用于将获取的图像帧按照采集的时序逐帧播放;
确定模块,用于当获取的多帧图像帧中目标物运动所形成的轨迹满足触发条件时,确定现实场景中所述目标物所对应的位置;
渲染模块,用于按照所述位置在当前播放的图像帧中渲染虚拟入口;在所述虚拟入口中显示虚拟内容。
16.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至14中任一项所述的方法的步骤。
17.一种计算机设备,包括存储器和处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至14中任一项所述的方法的步骤。
CN201810494117.8A 2018-05-22 2018-05-22 图像处理方法、装置、存储介质和计算机设备 Active CN110515452B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201810494117.8A CN110515452B (zh) 2018-05-22 2018-05-22 图像处理方法、装置、存储介质和计算机设备
JP2020551294A JP7096902B2 (ja) 2018-05-22 2019-04-18 画像処理方法、装置、コンピュータプログラム及びコンピュータデバイス
PCT/CN2019/083295 WO2019223463A1 (zh) 2018-05-22 2019-04-18 图像处理方法、装置、存储介质和计算机设备
EP19808017.8A EP3798801A4 (en) 2018-05-22 2019-04-18 IMAGE PROCESSING METHOD AND APPARATUS, RECORDING MEDIA AND COMPUTER DEVICE
US16/996,566 US11238644B2 (en) 2018-05-22 2020-08-18 Image processing method and apparatus, storage medium, and computer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810494117.8A CN110515452B (zh) 2018-05-22 2018-05-22 图像处理方法、装置、存储介质和计算机设备

Publications (2)

Publication Number Publication Date
CN110515452A true CN110515452A (zh) 2019-11-29
CN110515452B CN110515452B (zh) 2022-02-22

Family

ID=68616193

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810494117.8A Active CN110515452B (zh) 2018-05-22 2018-05-22 图像处理方法、装置、存储介质和计算机设备

Country Status (5)

Country Link
US (1) US11238644B2 (zh)
EP (1) EP3798801A4 (zh)
JP (1) JP7096902B2 (zh)
CN (1) CN110515452B (zh)
WO (1) WO2019223463A1 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111008260A (zh) * 2019-12-20 2020-04-14 山东省国土测绘院 轨迹的可视化方法、装置、设备和存储介质
CN111310744A (zh) * 2020-05-11 2020-06-19 腾讯科技(深圳)有限公司 图像识别方法、视频播放方法、相关设备及介质
CN112933606A (zh) * 2021-03-16 2021-06-11 天津亚克互动科技有限公司 游戏场景转换方法及装置、存储介质、计算机设备
CN113658296A (zh) * 2021-10-20 2021-11-16 腾讯科技(深圳)有限公司 一种图像渲染方法及相关装置
CN113709389A (zh) * 2020-05-21 2021-11-26 北京达佳互联信息技术有限公司 一种视频渲染方法、装置、电子设备及存储介质
CN114422698A (zh) * 2022-01-19 2022-04-29 北京字跳网络技术有限公司 视频生成方法、装置、设备及存储介质
CN114939278A (zh) * 2021-02-17 2022-08-26 武汉金运激光股份有限公司 一种基于nfc技术的轨道玩具车互动方法及系统
CN117032618A (zh) * 2023-10-07 2023-11-10 启迪数字科技(深圳)有限公司 基于多屏幕的动画旋转方法、设备及介质
WO2024007704A1 (zh) * 2022-07-08 2024-01-11 腾讯科技(深圳)有限公司 虚拟对象的显示方法、装置、终端设备及存储介质

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9332285B1 (en) * 2014-05-28 2016-05-03 Lucasfilm Entertainment Company Ltd. Switching modes of a media content item
JP7445642B2 (ja) 2018-08-13 2024-03-07 マジック リープ, インコーポレイテッド クロスリアリティシステム
US11227435B2 (en) 2018-08-13 2022-01-18 Magic Leap, Inc. Cross reality system
JP2022512600A (ja) 2018-10-05 2022-02-07 マジック リープ, インコーポレイテッド 任意の場所における場所特有の仮想コンテンツのレンダリング
WO2021002687A1 (ko) * 2019-07-04 2021-01-07 (주) 애니펜 사용자 간의 경험 공유를 지원하기 위한 방법, 시스템 및 비일시성의 컴퓨터 판독 가능 기록 매체
US11416998B2 (en) * 2019-07-30 2022-08-16 Microsoft Technology Licensing, Llc Pixel classification to reduce depth-estimation error
CN114600064A (zh) * 2019-10-15 2022-06-07 奇跃公司 具有定位服务的交叉现实系统
CN114616534A (zh) 2019-10-15 2022-06-10 奇跃公司 具有无线指纹的交叉现实系统
JP2023504775A (ja) 2019-11-12 2023-02-07 マジック リープ, インコーポレイテッド 位置特定サービスおよび共有場所ベースのコンテンツを伴うクロスリアリティシステム
EP4073763A4 (en) 2019-12-09 2023-12-27 Magic Leap, Inc. CROSS-REALLY SYSTEM WITH SIMPLIFIED PROGRAMMING OF VIRTUAL CONTENT
CN113256715B (zh) * 2020-02-12 2024-04-05 北京京东乾石科技有限公司 机器人的定位方法和装置
WO2021163295A1 (en) 2020-02-13 2021-08-19 Magic Leap, Inc. Cross reality system with prioritization of geolocation information for localization
US11562525B2 (en) 2020-02-13 2023-01-24 Magic Leap, Inc. Cross reality system with map processing using multi-resolution frame descriptors
US11410395B2 (en) 2020-02-13 2022-08-09 Magic Leap, Inc. Cross reality system with accurate shared maps
WO2021163289A1 (en) * 2020-02-13 2021-08-19 Magic Leap, Inc. Cross reality system for large scale environments
CN115461787A (zh) 2020-02-26 2022-12-09 奇跃公司 具有快速定位的交叉现实系统
WO2021222371A1 (en) 2020-04-29 2021-11-04 Magic Leap, Inc. Cross reality system for large scale environments
CN111862288A (zh) * 2020-07-29 2020-10-30 北京小米移动软件有限公司 一种位姿渲染方法、装置及介质
CN114153307A (zh) * 2020-09-04 2022-03-08 中移(成都)信息通信科技有限公司 场景区块化处理方法、装置、电子设备及计算机存储介质
CN113766117B (zh) * 2020-11-09 2023-08-08 北京沃东天骏信息技术有限公司 一种视频去抖动方法和装置
CN112562068B (zh) * 2020-12-24 2023-07-14 北京百度网讯科技有限公司 人体姿态生成方法、装置、电子设备及存储介质
US11361519B1 (en) 2021-03-29 2022-06-14 Niantic, Inc. Interactable augmented and virtual reality experience
JP7467810B2 (ja) 2021-05-07 2024-04-16 Kyoto’S 3D Studio株式会社 複合現実感提供システムおよび複合現実感提供方法
CN113014824B (zh) * 2021-05-11 2021-09-24 北京远度互联科技有限公司 视频画面处理方法、装置及电子设备
CN113421343A (zh) * 2021-05-27 2021-09-21 深圳市晨北科技有限公司 基于增强现实观测设备内部结构的方法
CN113674435A (zh) * 2021-07-27 2021-11-19 阿里巴巴新加坡控股有限公司 图像处理方法、电子地图展示方法、装置及电子设备
WO2023049087A1 (en) * 2021-09-24 2023-03-30 Chinook Labs Llc Portal view for content items
TWI817479B (zh) * 2022-04-29 2023-10-01 狂點軟體開發股份有限公司 結合現實世界與複數虛擬世界而為虛實互動之適地性「Metaverse」社群系統
CN114494328B (zh) * 2022-02-11 2024-01-30 北京字跳网络技术有限公司 图像显示方法、装置、电子设备及存储介质
WO2024024357A1 (ja) * 2022-07-29 2024-02-01 ガラクーダ株式会社 画像表示装置および画像表示方法
CN116475905B (zh) * 2023-05-05 2024-01-09 浙江闽立电动工具有限公司 角磨机的控制系统及其方法
CN116778127B (zh) * 2023-07-05 2024-01-05 广州视景医疗软件有限公司 一种基于全景图的三维数字场景构建方法及系统
CN117078975B (zh) * 2023-10-10 2024-01-02 四川易利数字城市科技有限公司 一种基于进化算法的ar时空场景模式匹配方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140104274A1 (en) * 2012-10-17 2014-04-17 Microsoft Corporation Grasping virtual objects in augmented reality
CN104331929A (zh) * 2014-10-29 2015-02-04 深圳先进技术研究院 基于视频地图与增强现实的犯罪现场还原方法
CN104536579A (zh) * 2015-01-20 2015-04-22 刘宛平 交互式三维实景与数字图像高速融合处理系统及处理方法
CN105988562A (zh) * 2015-02-06 2016-10-05 刘小洋 智能穿戴设备及基于智能穿戴设备实现手势输入的方法
CN107168619A (zh) * 2017-03-29 2017-09-15 腾讯科技(深圳)有限公司 用户生成内容处理方法和装置
CN107707839A (zh) * 2017-09-11 2018-02-16 广东欧珀移动通信有限公司 图像处理方法及装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5424405B2 (ja) 2010-01-14 2014-02-26 学校法人立命館 複合現実感技術による画像生成方法及び画像生成システム
JP5601045B2 (ja) * 2010-06-24 2014-10-08 ソニー株式会社 ジェスチャ認識装置、ジェスチャ認識方法およびプログラム
EP2691935A1 (en) 2011-03-29 2014-02-05 Qualcomm Incorporated System for the rendering of shared digital interfaces relative to each user's point of view
US9164589B2 (en) * 2011-11-01 2015-10-20 Intel Corporation Dynamic gesture based short-range human-machine interaction
US9530232B2 (en) * 2012-09-04 2016-12-27 Qualcomm Incorporated Augmented reality surface segmentation
JP2016062486A (ja) 2014-09-19 2016-04-25 株式会社ソニー・コンピュータエンタテインメント 画像生成装置および画像生成方法
US20170186219A1 (en) * 2015-12-28 2017-06-29 Le Holdings (Beijing) Co., Ltd. Method for 360-degree panoramic display, display module and mobile terminal
US9898256B2 (en) * 2015-12-31 2018-02-20 Microsoft Technology Licensing, Llc Translation of gesture to gesture code description using depth camera
WO2017167381A1 (en) * 2016-03-31 2017-10-05 Softkinetic Software Method for foreground and background determination in an image
DE102016212236A1 (de) * 2016-07-05 2018-01-11 Siemens Aktiengesellschaft Interaktionssystem und -verfahren
CN110827376A (zh) * 2018-08-09 2020-02-21 北京微播视界科技有限公司 增强现实多平面模型动画交互方法、装置、设备及存储介质
CN110020909A (zh) * 2019-01-14 2019-07-16 启云科技股份有限公司 采用虚拟实境技术的购物系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140104274A1 (en) * 2012-10-17 2014-04-17 Microsoft Corporation Grasping virtual objects in augmented reality
CN104331929A (zh) * 2014-10-29 2015-02-04 深圳先进技术研究院 基于视频地图与增强现实的犯罪现场还原方法
CN104536579A (zh) * 2015-01-20 2015-04-22 刘宛平 交互式三维实景与数字图像高速融合处理系统及处理方法
CN105988562A (zh) * 2015-02-06 2016-10-05 刘小洋 智能穿戴设备及基于智能穿戴设备实现手势输入的方法
CN107168619A (zh) * 2017-03-29 2017-09-15 腾讯科技(深圳)有限公司 用户生成内容处理方法和装置
CN107707839A (zh) * 2017-09-11 2018-02-16 广东欧珀移动通信有限公司 图像处理方法及装置

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111008260A (zh) * 2019-12-20 2020-04-14 山东省国土测绘院 轨迹的可视化方法、装置、设备和存储介质
CN111310744A (zh) * 2020-05-11 2020-06-19 腾讯科技(深圳)有限公司 图像识别方法、视频播放方法、相关设备及介质
CN113709389A (zh) * 2020-05-21 2021-11-26 北京达佳互联信息技术有限公司 一种视频渲染方法、装置、电子设备及存储介质
CN114939278A (zh) * 2021-02-17 2022-08-26 武汉金运激光股份有限公司 一种基于nfc技术的轨道玩具车互动方法及系统
CN112933606A (zh) * 2021-03-16 2021-06-11 天津亚克互动科技有限公司 游戏场景转换方法及装置、存储介质、计算机设备
CN112933606B (zh) * 2021-03-16 2023-05-09 天津亚克互动科技有限公司 游戏场景转换方法及装置、存储介质、计算机设备
CN113658296A (zh) * 2021-10-20 2021-11-16 腾讯科技(深圳)有限公司 一种图像渲染方法及相关装置
WO2023065875A1 (zh) * 2021-10-20 2023-04-27 腾讯科技(深圳)有限公司 一种图像渲染方法及相关装置
CN113658296B (zh) * 2021-10-20 2022-01-25 腾讯科技(深圳)有限公司 一种图像渲染方法及相关装置
CN114422698A (zh) * 2022-01-19 2022-04-29 北京字跳网络技术有限公司 视频生成方法、装置、设备及存储介质
CN114422698B (zh) * 2022-01-19 2023-09-26 北京字跳网络技术有限公司 视频生成方法、装置、设备及存储介质
WO2024007704A1 (zh) * 2022-07-08 2024-01-11 腾讯科技(深圳)有限公司 虚拟对象的显示方法、装置、终端设备及存储介质
CN117032618A (zh) * 2023-10-07 2023-11-10 启迪数字科技(深圳)有限公司 基于多屏幕的动画旋转方法、设备及介质
CN117032618B (zh) * 2023-10-07 2024-02-02 启迪数字科技(深圳)有限公司 基于多屏幕的动画旋转方法、设备及介质

Also Published As

Publication number Publication date
WO2019223463A1 (zh) 2019-11-28
EP3798801A4 (en) 2021-07-14
JP2021517309A (ja) 2021-07-15
JP7096902B2 (ja) 2022-07-06
CN110515452B (zh) 2022-02-22
EP3798801A1 (en) 2021-03-31
US11238644B2 (en) 2022-02-01
US20200380769A1 (en) 2020-12-03

Similar Documents

Publication Publication Date Title
CN110515452A (zh) 图像处理方法、装置、存储介质和计算机设备
EP3179447B1 (en) Foveated rendering
CN105046752B (zh) 用于在真实环境的视图中描绘虚拟信息的方法
CN102981616B (zh) 增强现实中对象的识别方法及系统和计算机
CN105188516B (zh) 用于增强和虚拟现实的系统与方法
CN105404441B (zh) 可视化相同环境的表面数据和全景图像数据的方法
CN103472909B (zh) 用于头戴式、增强现实显示器的逼真遮挡
US20070006091A1 (en) Image processing method and image processing apparatus
CN109615703A (zh) 增强现实的图像展示方法、装置及设备
KR20180108709A (ko) 사용자의 현실적인 신체 모델에 가상으로 옷을 입혀보는 방법
CN113269858B (zh) 虚拟场景渲染方法、装置、计算机设备和存储介质
CN109074681A (zh) 信息处理装置、信息处理方法和程序
JP2012058968A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2004537082A (ja) 仮想現実環境における実時間バーチャル・ビューポイント
CN108735052A (zh) 一种基于slam的增强现实自由落体实验方法
Hsu et al. A rendering framework for multiscale views of 3D models.
US11557094B2 (en) Efficient capture and delivery of walkable and interactive virtual reality or 360 degree video
CN107168619A (zh) 用户生成内容处理方法和装置
US11238651B2 (en) Fast hand meshing for dynamic occlusion
US11315309B2 (en) Determining pixel values using reference images
CN106331823B (zh) 一种视频播放方法及装置
CN109859100A (zh) 虚拟背景的显示方法、电子设备和计算机可读存储介质
JP2023515517A (ja) ライブフィッティングを含む眼鏡フレームのフィッティング
CN110225400A (zh) 一种动作捕捉方法、装置、移动终端及存储介质
US20230037750A1 (en) Systems and methods for generating stabilized images of a real environment in artificial reality

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant