CN112543901A - 根据外部对象的位置的改变显示与外部对象相对应的替身的电子装置 - Google Patents
根据外部对象的位置的改变显示与外部对象相对应的替身的电子装置 Download PDFInfo
- Publication number
- CN112543901A CN112543901A CN201980052410.1A CN201980052410A CN112543901A CN 112543901 A CN112543901 A CN 112543901A CN 201980052410 A CN201980052410 A CN 201980052410A CN 112543901 A CN112543901 A CN 112543901A
- Authority
- CN
- China
- Prior art keywords
- electronic device
- avatar
- processor
- external object
- display
- 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.)
- Pending
Links
- 230000008859 change Effects 0.000 title claims abstract description 49
- 230000015654 memory Effects 0.000 claims abstract description 63
- 238000000034 method Methods 0.000 claims description 55
- 230000000694 effects Effects 0.000 claims description 43
- 230000009471 action Effects 0.000 claims description 13
- 230000003247 decreasing effect Effects 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 9
- 238000004891 communication Methods 0.000 description 40
- 238000010586 diagram Methods 0.000 description 21
- 230000007423 decrease Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 14
- 230000004044 response Effects 0.000 description 8
- 230000008921 facial expression Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 5
- 239000003381 stabilizer Substances 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000001815 facial effect Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 239000000463 material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 210000000887 face Anatomy 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 239000002904 solvent Substances 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000024159 perception of rate of movement Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000036548 skin texture Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 229910052724 xenon Inorganic materials 0.000 description 1
- FHNFHKCVQCLJFQ-UHFFFAOYSA-N xenon atom Chemical compound [Xe] FHNFHKCVQCLJFQ-UHFFFAOYSA-N 0.000 description 1
Images
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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- 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/002—Specific input/output arrangements not covered by G06F3/01 - G06F3/16
- G06F3/005—Input arrangements through a video camera
-
- 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
-
- 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0346—Pointing 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
-
- 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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
-
- 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/04815—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/60—Rotation of whole images or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2200/00—Indexing scheme relating to G06F1/04 - G06F1/32
- G06F2200/16—Indexing scheme relating to G06F1/16 - G06F1/18
- G06F2200/161—Indexing scheme relating to constructional details of the monitor
- G06F2200/1614—Image rotation following screen orientation, e.g. switching from landscape to portrait mode
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
提供了一种电子装置。该电子装置包括:相机;显示器;传感器;存储器;以及处理器,被配置为:通过显示器显示与在使用相机获取的一个或多个图像中包括的外部对象相对应的替身,通过相机和传感器中的至少一个识别外部对象相对于电子装置的位置的改变,基于位置的改变来确定与显示的替身有关的视点,以及通过显示器,基于确定的视点来显示替身。
Description
技术领域
本公开涉及一种用于根据外部对象的位置的改变显示与外部对象相对应的替身(avatar)的电子装置。
背景技术
随着各种技术的发展,已经提供了在虚拟空间中提供用户体验的电子装置。例如,已经开发了使得能够在虚拟空间中进行用户和虚拟空间之间的交互的电子装置。
发明内容
本公开的一方面提供了一种用于确定与虚拟空间中的替身有关的视点的电子装置。
本公开的另一方面提供了一种用于确定虚拟空间中的替身的背景的属性的电子装置。
本公开的另一方面提供了一种用于确定替身和/或背景的视域的电子装置。
本公开的另一方面提供了一种用于将动画方案应用于替身的电子装置。
本公开的另一方面提供了一种用于确定虚拟空间中的虚拟相机的旋转角度和电子装置的模式的电子装置。
本公开的另一方面提供了一种用于构建与替身有关的信息的数据库的电子装置。
根据本公开的一方面,提供了一种电子装置。该电子装置包括:相机;显示器;传感器;存储器;以及处理器,其中,该处理器被配置为:通过显示器显示与在使用相机获取的一个或多个图像中包括的外部对象相对应的替身,通过相机和传感器中的至少一个识别外部对象相对于电子装置的位置的改变,基于位置的改变来确定与显示的替身有关的视点,以及通过显示器,基于确定的视点来显示替身。
根据本公开的另一方面,提供了一种电子装置。该电子装置包括:相机;显示器;传感器;存储器;以及处理器,其中,该处理器被配置为:通过显示器显示与在使用相机获取的一个或多个图像中包括的外部对象相对应的替身以及替身的背景,基于存储在存储器中的替身信息来确定替身的至少一个特性,基于存储在存储器中的背景信息来确定背景的至少一个特性,以及基于存储在存储器中的配置信息的至少一个配置值来控制通过显示器显示的替身和背景中的至少一个。
附图说明
通过结合附图的以下描述,本公开的某些实施例的上述以及其他方面、特征和优点将变得更加明显,在附图中:
图1是根据实施例的网络环境内的电子装置的框图;
图2是根据实施例的相机模块的框图;
图3是根据实施例的电子装置中包括的至少一些元件的框图;
图4A是根据实施例的电子装置的方法的流程图;
图4B是根据实施例的用于生成替身的电子装置的方法的流程图;
图4C是根据实施例的反映用户的面部特性的替身的图示;
图5是根据实施例的用于确定与替身有关的视点的电子装置的方法的流程图;
图6A和图6B是根据实施例的在电子装置的显示装置上显示的各种尺寸的替身的图示。
图7是根据实施例的用于确定替身的背景的属性的电子装置的方法的流程图;
图8A是根据实施例的用于控制背景模糊效果的电子装置的方法的流程图;
图8B是根据实施例的视点的移动和视域的改变之间的关系的图示。
图8C是根据实施例的视点的移动和视域的改变之间的关系的图示。
图9A是根据实施例的背景模糊效果和视点之间的关系的图示;
图9B是根据实施例的背景模糊效果和视点之间的关系的图示;
图9C是根据实施例的背景模糊效果和视点之间的关系的图示;
图10是根据实施例的用于确定背景中的显示区域以及替身的电子装置的方法的流程图;
图11是根据实施例的用于将动画方案应用于替身的每个组成部分的电子装置的方法的流程图;
图12是根据实施例的具有被应用动画方案的组成部分的替身的图示;
图13是根据实施例的用于旋转替身并显示旋转的替身的电子装置的方法的流程图;
图14A是根据实施例的替身的至少一部分被旋转的情况的图示;
图14B是根据实施例的替身的至少一部分被旋转的情况的图示;
图15是根据实施例的用于基于电子装置的旋转来确定替身的旋转和电子装置的模式的电子装置的方法的流程图;
图16是根据实施例的使用替身数据库(DB)的电子装置的方法的流程图;
图17是根据实施例的替身DB的图示;
图18A是根据实施例的从背景信息确定的背景图像的图示;
图18B是根据实施例的从背景信息确定的背景图像的图示;
图18C是根据实施例的从背景信息确定的背景图像的图示;并且
图19是根据实施例的描述配置信息的方法的图示。
具体实施方式
图1是示出根据各种实施例的网络环境100中的电子装置101的框图。
参照图1,网络环境100中的电子装置101可经由第一网络198(例如,短距离无线通信网络)与电子装置102进行通信,或者经由第二网络199(例如,长距离无线通信网络)与电子装置104或服务器108进行通信。根据实施例,电子装置101可经由服务器108与电子装置104进行通信。根据实施例,电子装置101可包括处理器120、存储器130、输入装置150、声音输出装置155、显示装置160、音频模块170、传感器模块176、接口177、触觉模块179、相机模块280、电力管理模块188、电池189、通信模块190、用户识别模块(SIM)196或天线模块197。在一些实施例中,可从电子装置101中省略所述部件中的至少一个(例如,显示装置160或相机模块280),或者可将一个或更多个其它部件添加到电子装置101中。在一些实施例中,可将所述部件中的一些部件实现为单个集成电路。例如,可将传感器模块176(例如,指纹传感器、虹膜传感器、或照度传感器)实现为嵌入在显示装置1160(例如,显示器)中。
处理器120可运行例如软件(例如,程序140)来控制电子装置101的与处理器120连接的至少一个其它部件(例如,硬件部件或软件部件),并可执行各种数据处理或计算。根据一个实施例,作为所述数据处理或计算的至少部分,处理器120可将从另一部件(例如,传感器模块176或通信模块190)接收到的命令或数据加载到易失性存储器132中,对存储在易失性存储器132中的命令或数据进行处理,并将结果数据存储在非易失性存储器134中。根据实施例,处理器120可包括主处理器121(例如,中央处理器(CPU)或应用处理器(AP))以及与主处理器121在操作上独立的或者相结合的辅助处理器123(例如,图形处理单元(GPU)、图像信号处理器(ISP)、传感器中枢处理器或通信处理器(CP))。另外地或者可选择地,辅助处理器123可被适配为比主处理器121耗电更少,或者被适配为具体用于指定的功能。可将辅助处理器123实现为与主处理器121分离,或者实现为主处理器121的部分。
在主处理器121处于未激活(例如,睡眠)状态时,辅助处理器123可控制与电子装置101(而非主处理器121)的部件之中的至少一个部件(例如,显示装置160、传感器模块176或通信模块190)相关的功能或状态中的至少一些,或者在主处理器121处于激活状态(例如,运行应用)时,辅助处理器123可与主处理器121一起来控制与电子装置101的部件之中的至少一个部件(例如,显示装置160、传感器模块176或通信模块190)相关的功能或状态中的至少一些。根据实施例,可将辅助处理器123(例如,图像信号处理器或通信处理器)实现为在功能上与辅助处理器123相关的另一部件(例如,相机模块280或通信模块190)的部分。
存储器130可存储由电子装置101的至少一个部件(例如,处理器120或传感器模块176)使用的各种数据。所述各种数据可包括例如软件(例如,程序140)以及针对与其相关的命令的输入数据或输出数据。存储器130可包括易失性存储器132或非易失性存储器134。
可将程序140作为软件存储在存储器130中,并且程序140可包括例如操作***(OS)142、中间件144或应用146。
输入装置150可从电子装置101的外部(例如,用户)接收将由电子装置101的其它部件(例如,处理器120)使用的命令或数据。输入装置150可包括例如麦克风、鼠标、键盘或数字笔(例如,手写笔)。
声音输出装置155可将声音信号输出到电子装置101的外部。声音输出装置155可包括例如扬声器或接收器。扬声器可用于诸如播放多媒体或播放唱片的通用目的,接收器可用于呼入呼叫。根据实施例,可将接收器实现为与扬声器分离,或实现为扬声器的部分。
显示装置160可向电子装置101的外部(例如,用户)视觉地提供信息。显示装置160可包括例如显示器、全息装置或投影仪以及用于控制显示器、全息装置和投影仪中的相应一个的控制电路。根据实施例,显示装置160可包括被适配为检测触摸的触摸电路或被适配为测量由触摸引起的力的强度的传感器电路(例如,压力传感器)。
音频模块170可将声音转换为电信号,反之亦可。根据实施例,音频模块170可经由输入装置150获得声音,或者经由声音输出装置155或与电子装置101直接(例如,有线地)连接或无线连接的外部电子装置(例如,电子装置102)的耳机输出声音。
传感器模块176可检测电子装置101的操作状态(例如,功率或温度)或电子装置101外部的环境状态(例如,用户的状态),然后产生与检测到的状态相应的电信号或数据值。根据实施例,传感器模块176可包括例如手势传感器、陀螺仪传感器、大气压力传感器、磁性传感器、加速度传感器、握持传感器、接近传感器、颜色传感器、红外(IR)传感器、生物特征传感器、温度传感器、湿度传感器或照度传感器。
接口177可支持将用来使电子装置101与外部电子装置(例如,电子装置102)直接(例如,有线地)或无线连接的一个或更多个特定协议。根据实施例,接口177可包括例如高清晰度多媒体接口(HDMI)、通用串行总线(USB)接口、安全数字(SD)卡接口或音频接口。
连接端178可包括连接器,其中,电子装置101可经由所述连接器与外部电子装置(例如,电子装置102)物理连接。根据实施例,连接端178可包括例如HDMI连接器、USB连接器、SD卡连接器或音频连接器(例如,耳机连接器)。
触觉模块179可将电信号转换为可被用户经由他的触觉或动觉识别的机械刺激(例如,振动或运动)或电刺激。根据实施例,触觉模块179可包括例如电机、压电元件或电刺激器。
相机模块180可捕获静止图像或运动图像。根据实施例,相机模块180可包括一个或更多个透镜、图像传感器、图像信号处理器或闪光灯。
电力管理模块188可管理对电子装置101的供电。根据实施例,可将电力管理模块188实现为例如电力管理集成电路(PMIC)的至少部分。
电池189可对电子装置101的至少一个部件供电。根据实施例,电池189可包括例如不可再充电的原电池、可再充电的蓄电池、或燃料电池。
通信模块190可支持在电子装置101与外部电子装置(例如,电子装置102、电子装置104或服务器108)之间建立直接(例如,有线)通信信道或无线通信信道,并经由建立的通信信道执行通信。通信模块190可包括能够与处理器120(例如,应用处理器(AP))独立操作的一个或更多个通信处理器,并支持直接(例如,有线)通信或无线通信。根据实施例,通信模块190可包括无线通信模块192(例如,蜂窝通信模块、短距离无线通信模块或全球导航卫星***(GNSS)通信模块)或有线通信模块194(例如,局域网(LAN)通信模块或电力线通信(PLC)模块)。这些通信模块中的相应一个可经由第一网络198(例如,短距离通信网络,诸如蓝牙、无线保真(Wi-Fi)直连或红外数据协会(IrDA))或第二网络199(例如,长距离通信网络,诸如蜂窝网络、互联网、或计算机网络(例如,LAN或广域网(WAN)))与外部电子装置进行通信。可将这些各种类型的通信模块实现为单个部件(例如,单个芯片),或可将这些各种类型的通信模块实现为彼此分离的多个部件(例如,多个芯片)。无线通信模块192可使用存储在用户识别模块196中的用户信息(例如,国际移动用户识别码(IMSI))识别并验证通信网络(诸如第一网络198或第二网络199)中的电子装置101。
天线模块197可将信号或电力发送到电子装置101的外部(例如,外部电子装置)或者从电子装置101的外部(例如,外部电子装置)接收信号或电力。根据实施例,天线模块197可包括天线,所述天线包括辐射元件,所述辐射元件由形成在基底(例如,PCB)中或形成在基底上的导电材料或导电图案构成。根据实施例,天线模块197可包括多个天线。在这种情况下,可由例如通信模块190(例如,无线通信模块192)从所述多个天线中选择适合于在通信网络(诸如第一网络198或第二网络199)中使用的通信方案的至少一个天线。随后可经由所选择的至少一个天线在通信模块190和外部电子装置之间发送或接收信号或电力。根据实施例,除了辐射元件之外的另外的组件(例如,射频集成电路(RFIC))可附加地形成为天线模块197的一部分。
上述部件中的至少一些可经由外设间通信方案(例如,总线、通用输入输出(GPIO)、串行外设接口(SPI)或移动工业处理器接口(MIPI))相互连接并在它们之间通信地传送信号(例如,命令或数据)。
根据实施例,可经由与第二网络199连接的服务器108在电子装置101和外部电子装置104之间发送或接收命令或数据。电子装置102和电子装置104中的每一个可以是与电子装置101相同类型的装置,或者是与电子装置101不同类型的装置。根据实施例,将在电子装置101运行的全部操作或一些操作可在外部电子装置102、外部电子装置104或服务器108中的一个或更多个运行。例如,如果电子装置101应该自动执行功能或服务或者应该响应于来自用户或另一装置的请求执行功能或服务,则电子装置101可请求所述一个或更多个外部电子装置执行所述功能或服务中的至少部分,而不是运行所述功能或服务,或者电子装置101除了运行所述功能或服务以外,还可请求所述一个或更多个外部电子装置执行所述功能或服务中的至少部分。接收到所述请求的所述一个或更多个外部电子装置可执行所述功能或服务中的所请求的所述至少部分,或者执行与所述请求相关的另外功能或另外服务,并将执行的结果传送到电子装置101。电子装置101可在对所述结果进行进一步处理的情况下或者在不对所述结果进行进一步处理的情况下将所述结果提供作为对所述请求的至少部分答复。为此,可使用例如云计算技术、分布式计算技术或客户机-服务器计算技术。
图2是示出根据各种实施例的相机模块280的框图。
参照图2,相机模块280可包括镜头组件210、闪光灯220、图像传感器230、图像稳定器240、存储器250(例如,缓冲存储器)或图像信号处理器260。镜头组件210可采集从将被拍摄图像的对象发出或反射的光。镜头组件210可包括一个或更多个透镜。根据实施例,相机模块280可包括多个镜头组件210。在这种情况下,相机模块280可形成例如双相机、360度相机或球形相机。多个镜头组件210中的一些镜头组件210可具有相同的镜头属性(例如,视角、焦距、自动对焦、f数或光学变焦),或者至少一个镜头组件可具有与另外的镜头组件的镜头属性不同的一个或更多个镜头属性。镜头组件210可包括例如广角镜头或长焦镜头。
闪光灯220可发光,其中,发出的光用于增强从对象反射的光。根据实施例,闪光灯220可包括一个或更多个发光二极管(LED)(例如,红绿蓝色(RGB)LED、白色LED、红外(IR)LED或紫外(UV)LED)或氙灯。图像传感器230可通过将从对象发出或反射并经由镜头组件210透射的光转换为电信号来获取与对象相应的图像。根据实施例,图像传感器230可包括从具有不同属性的多个图像传感器中选择的一个图像传感器(例如,RGB传感器、黑白(BW)传感器、IR传感器或UV传感器)、具有相同属性的多个图像传感器或具有不同属性的多个图像传感器。可使用例如电荷耦合器件(CCD)传感器或互补金属氧化物半导体(CMOS)传感器来实现包括在图像传感器230中的每个图像传感器。
图像稳定器240可沿特定方向移动图像传感器230或包括在镜头组件210中的至少一个透镜,或者响应于相机模块280或包括相机模块280的电子装置201的移动来控制图像传感器230的可操作属性(例如,调整读出时序)。这样,允许补偿由于正被捕捉的图像的移动而产生的负面效果(例如,图像模糊)的至少一部分。根据实施例,图像稳定器240可使用布置在相机模块280之内或之外的陀螺仪传感器(未示出)或加速度传感器(未示出)来感测相机模块280或电子装置101的这样的移动。根据实施例,可将图像稳定器240实现为例如光学图像稳定器。
存储器250可至少暂时地存储经由图像传感器230获取的图像的至少一部分以用于后续的图像处理任务。例如,如果快速捕捉了多个图像或者由于快门时滞而导致图像捕捉延迟,则可将获取的原始图像(例如,拜耳图案图像、高分辨率图像)存储在存储器250中,并且可经由显示装置160来预览其相应的副本图像(例如,低分辨率图像)。然后,如果满足了指定的条件(例如,通过用户的输入或***命令),则可由例如图像信号处理器260来获取和处理存储在存储器250中的原始图像的至少一部分。根据实施例,可将存储器250配置为存储器130的至少一部分,或者可将存储器250配置为独立于存储器130进行操作的分离的存储器。
图像信号处理器260可对经由图像传感器230获取的图像或存储在存储器250中的图像执行一个或更多个图像处理。所述一个或更多个图像处理可包括例如深度图生成、三维(3D)建模、全景图生成、特征点提取、图像合成或图像补偿(例如,降噪、分辨率调整、亮度调整、模糊、锐化或柔化)。另外或可选地,图像信号处理器260可对包括在相机模块280中的部件中的至少一个部件(例如,图像传感器230)执行控制(例如,曝光时间控制或读出时序控制)。可将由图像信号处理器260处理的图像存储回存储器250以用于进一步处理,或者可将该图像提供给在相机模块280之外的外部部件(例如,存储器130、显示装置160、电子装置102、电子装置104或服务器108)。根据实施例,可将图像信号处理器260配置为处理器120的至少一部分,或者可将图像信号处理器260配置为独立于处理器120进行操作的分离的处理器。如果将图像信号处理器260配置为与处理器120分离的处理器,则可由处理器120经由显示装置160将由图像信号处理器260处理的至少一个图像按照其原样显示,或者可将所述至少一个图像在被进一步处理后进行显示。
根据实施例,电子装置101可包括具有不同属性或功能的多个相机模块280。在这种情况下,所述多个相机模块280中的至少一个相机模块280可形成例如广角相机,并且所述多个相机模块280中的至少另一个相机模块280可形成长焦相机。类似地,所述多个相机模块280中的至少一个相机模块280可形成例如前置相机,并且所述多个相机模块280中的至少另一个相机模块280可形成后置相机。
电子装置101可以是各种类型的电子装置之一。电子装置可包括例如便携式通信装置(例如,智能电话)、计算机装置、便携式多媒体装置、便携式医疗装置、相机、可穿戴装置或家用电器。然而,电子装置不限于以上所述的那些电子装置。
应该理解的是,本公开的各种实施例以及其中使用的术语并不意图将在此阐述的技术特征限制于具体实施例,而是包括针对相应实施例的各种改变、等同形式或替换形式。对于附图的描述,相似的参考标号可用来指代相似或相关的元件。将理解的是,与术语相应的单数形式的名词可包括一个或更多个事物,除非相关上下文另有明确指示。如这里所使用的,诸如“A或B”、“A和B中的至少一个”、“A或B中的至少一个”、“A、B或C”、“A、B和C中的至少一个”以及“A、B或C中的至少一个”的短语中的每一个短语可包括在与所述多个短语中的相应一个短语中一起列举出的项的任意一项或所有可能组合。如这里所使用的,诸如“第1”和“第2”或者“第一”和“第二”的术语可用于将相应部件与另一部件进行简单区分,并且不在其它方面(例如,重要性或顺序)限制所述部件。将理解的是,在使用了术语“可操作地”或“通信地”的情况下或者在不使用术语“可操作地”或“通信地”的情况下,如果一元件(例如,第一元件)被称为“与另一元件(例如,第二元件)结合”、“结合到另一元件(例如,第二元件)”、“与另一元件(例如,第二元件)连接”或“连接到另一元件(例如,第二元件)”,则意味着所述一元件可与所述另一元件直接(例如,有线地)连接、与所述另一元件无线连接、或经由第三元件与所述另一元件连接。
如这里所使用的,术语“模块”可包括以硬件、软件或固件实现的单元,并可与其他术语(例如,“逻辑”、“逻辑块”、“部分”或“电路”)可互换地使用。模块可以是被适配为执行一个或更多个功能的单个集成部件或者是该单个集成部件的最小单元或部分。例如,根据实施例,可以以专用集成电路(ASIC)的形式来实现模块。
可将在此阐述的各种实施例实现为包括存储在存储介质(例如,内部存储器136或外部存储器138)中的可由机器(例如,电子装置101)读取的一个或更多个指令的软件(例如,程序140)。例如,在处理器的控制下,所述机器(例如,电子装置101)的处理器(例如,处理器120)可在使用或无需使用一个或更多个其它部件的情况下调用存储在存储介质中的所述一个或更多个指令中的至少一个指令并运行所述至少一个指令。这使得所述机器能够操作用于根据所调用的至少一个指令执行至少一个功能。所述一个或更多个指令可包括由编译器产生的代码或能够由解释器运行的代码。可以以非暂时性存储介质的形式来提供机器可读存储介质。其中,术语“非暂时性”仅意味着所述存储介质是有形装置,并且不包括信号(例如,电磁波),但是该术语并不在数据被半永久性地存储在存储介质中与数据被临时存储在存储介质中之间进行区分。
根据实施例,可在计算机程序产品中包括和提供根据本公开的各种实施例的方法。计算机程序产品可作为产品在销售者和购买者之间进行交易。可以以机器可读存储介质(例如,紧凑盘只读存储器(CD-ROM))的形式来发布计算机程序产品,或者可经由应用商店(例如,Play StoreTM)在线发布(例如,下载或上传)计算机程序产品,或者可直接在两个用户装置(例如,智能电话)之间分发(例如,下载或上传)计算机程序产品。如果是在线发布的,则计算机程序产品中的至少部分可以是临时产生的,或者可将计算机程序产品中的至少部分至少临时存储在机器可读存储介质(诸如制造商的服务器、应用商店的服务器或转发服务器的存储器)中。
根据各种实施例,上述部件中的每个部件(例如,模块或程序)可包括单个实体或多个实体。根据各种实施例,可省略上述部件中的一个或更多个部件,或者可添加一个或更多个其它部件。可选择地或者另外地,可将多个部件(例如,模块或程序)集成为单个部件。在这种情况下,根据各种实施例,该集成部件可仍旧按照与所述多个部件中的相应一个部件在集成之前执行一个或更多个功能相同或相似的方式,执行所述多个部件中的每一个部件的所述一个或更多个功能。根据各种实施例,由模块、程序或另一部件所执行的操作可顺序地、并行地、重复地或以启发式方式来执行,或者所述操作中的一个或更多个操作可按照不同的顺序来运行或被省略,或者可添加一个或更多个其它操作。
图3是根据实施例的电子装置101中包括的至少一些元件的框图。
参照图3,电子装置101可以包括传感器模块176、相机模块180、显示装置160、处理器120和存储器130。用户感测单元310和渲染单元320可以是可由处理器120使用的软件或处理器120中包括的硬件。替身DB 330可以存储在存储器130中。
用户感测单元310可以基于通过相机模块180和/或传感器模块176输入的信息来确定外部对象(例如,电子装置101的用户)的感测信息。感测信息可以包括外部对象的面部、面部表情、动作、手势和位置中的至少一个。例如,用户感测单元310可以检测外部对象和电子装置101之间的相对位置(例如,外部对象相对于电子装置101的位置)并且检测相对位置的改变。
渲染单元320可以基于感测信息来渲染替身。例如,渲染单元320可以渲染替身并通过显示单元160显示替身。
替身DB 330可以存储与替身有关的信息。例如,替身DB 330可以存储替身信息、背景信息和配置信息。与替身有关的每条信息可以包括一个或多个文件的集合。
替身信息可以包括用于确定替身的至少一个特性的信息。例如,替身信息可以包括用于确定替身的模型(或替身模型)(例如,定义用于在3D虚拟坐标系中显示替身形状的点和连接点的线的方法)的信息、用于确定要应用于替身的模型的颜色(例如,定义要应用于替身模型的每个点的RGB颜色的方法)的信息、用于确定法线贴图(例如,定义用于显示替身模型的点的方向的方法,其中可以基于每个点的方向来确定由点组成的表面的方向)的信息、用于确定替身模型的材料的信息、用于确定替身的纹理(即,用于映射二维(2D)背景图像以表示3D模型的图像)、以及用于确定照明的信息中的至少一条。替身模型可以基于通过相机模块180获取的、预设在存储器130中的或从服务器108下载的一个或多个图像中的外部对象来生成。此外,替身信息可以包括为每个替身定义的动画效果,并且动画效果可以基于电子装置101和外部对象之间的距离、电子装置101相对于外部对象的角度以及外部对象的手势中的至少一个。可以根据用户输入来指定动画效果。
背景信息可以包括用于确定背景的至少一个特性的信息。换句话说,背景信息可以包括用于定义3D虚拟坐标系中的替身的背景的信息。例如,背景信息可以包括(多个)2D背景图像、(多个)3D背景图像以及关于将2D背景图像映射到3D图形(例如,立方体、球体或其他多面体)的方法的信息中的至少一个。
配置信息可以包括用于控制替身和背景中的至少一个的至少一个配置值。例如,配置信息可以包括用于定义替身的动作(例如,替身的向左移动、向右移动、向前移动、向后移动和旋转)的信息、替身的环境光的信息、关于显示背景图像(例如,2D背景图像或3D背景图像)的方法的信息、关于虚拟相机在虚拟空间中的初始位置的信息以及关于替身的运动的感测信息的灵敏度的信息中的至少一条。
术语“替身”可以指虚拟空间中与在通过相机(例如,相机模块180)获取的一个或多个图像中包括的外部对象相对应的对象。替身可以响应于由相机模块180和/或传感器模块176检测到的外部对象的运动而移动。
术语“虚拟空间”可以指由电子装置(例如,电子装置101)实现的虚拟空间。虚拟空间可以对应于3D虚拟坐标系。
术语“虚拟相机”可以指用于捕获(或获取)包括虚拟空间中的替身和/或背景的图像的对象。由虚拟相机捕获的虚拟空间的图像可以通过电子装置101的显示装置160显示。例如,虚拟相机可以对应于虚拟空间中的位置(或虚拟空间中的视点或坐标(x,y,z)和方向(α,β,γ))、视角(或视场的角度)或可视距离(即前平面和后平面之间的范围)中的至少一个。虚拟相机可以在虚拟空间中的位置(x,y,z)和方向(α,β,γ)以2D形式和/或3D形式渲染视角和可视距离内的对象,并通过显示装置160显示该对象或者以2D图像形式和/或3D图像形式存储该对象。
短语“替身的背景”可以指示由虚拟相机捕获的虚拟空间的图像中除了替身之外的对象。替身的背景可以简称为背景。例如,在虚拟空间中可能存在围绕替身的立方体,并且图像和/或纹理可以被映射到立方体的内表面中的每一个。如果虚拟相机捕获了立方体内的替身,则背景可以是所捕获图像中的立方体的一部分。例如,在虚拟空间中可能存在围绕替身的球体,并且多个缝合图像和/或纹理可以被映射到球体的内表面。如果虚拟相机捕获了球体内的替身,则背景可以是所捕获图像中的球体的一部分。例如,在虚拟空间中可能存在围绕虚拟形象的圆柱体,并且多个缝合图像和/或纹理可以被映射到圆柱体的内表面。如果虚拟相机捕获了圆柱体内的替身,则背景可以是所捕获图像中的圆柱体的一部分。前述的立方体、球体和圆柱体仅是示例,并且背景可以是由虚拟相机捕获的图像中除了替身之外的对象,而不管虚拟空间的形状如何。
根据实施例,根据各种实施例的电子装置(例如,电子装置101)可以包括相机(例如,相机模块180)、显示器(例如,显示装置160)、传感器(例如,传感器模块176)、存储器(例如,存储器130)和处理器(例如,处理器120),并且处理器可以被配置为通过显示器显示与在使用相机获取的一个或多个图像中包括的外部对象相对应的替身,通过相机和传感器中的至少一个识别外部对象相对于电子装置的位置的改变,基于位置的改变来确定与显示的替身有关的视点,以及通过显示器显示基于确定的视点显示的替身。
处理器可以被配置为基于其之间的位置关系来确定替身的背景的属性,并根据属性通过显示器一起提供背景和替身。
背景的属性可以包括背景的模糊效果,并且处理器可以被配置为:如果外部对象和电子装置之间的距离增加,则减小背景的模糊效果,以及如果外部对象和电子装置之间的距离减小,则增加背景的模糊效果。
处理器可以被配置为:提取与在一个或多个图像中识别的电子装置的用户的面部有关的特征信息,以及基于特征信息和替身生成模型来生成反映用户的面部的特性的替身。
处理器可以被配置为:如果外部对象和电子装置之间的距离增加,则减小通过显示器显示的替身和替身的背景的尺寸,以及如果外部对象和电子装置之间的距离减小,则增加通过显示器显示的替身和替身的背景的尺寸。
处理器可以被配置为:确定外部对象和电子装置之间的距离是否在阈值距离范围内,如果外部对象和电子装置之间的距离在阈值距离范围内,则确定视点为虚拟空间中与外部对象和电子装置之间的距离相对应的位置,如果外部对象和电子装置之间的距离大于或等于阈值距离范围的上限,则确定视点为虚拟空间中与上限相对应的位置,以及如果外部对象和电子装置之间的距离小于或等于阈值距离范围的下限,则确定视点为虚拟空间中与下限相对应的位置。
如果外部对象和电子装置之间的距离小于或等于阈值距离范围的下限,则处理器可以被配置为在显示器上显示与未被相机捕获的外部对象的区域相对应的替身的区域作为默认替身图像。
处理器可以被配置为基于位置来确定替身的背景中的视域,并通过显示器将背景中的视域与替身一起提供。
处理器可以被配置为确定电子装置相对于外部对象移动的角度和该角度的方向,并在与该方向相反的方向上将背景中的视域移动该角度。
处理器可以被配置为基于该位置来确定替身中的视域,并通过显示器提供替身中的视域。
处理器可以被配置为确定电子装置相对于外部对象移动的角度和该角度的方向,并在该方向上将替身中的视域移动该角度。
处理器可以被配置为识别替身的多个组成部分,将不同的动画方案应用于多个组成部分中的至少两个组成部分,并通过显示器显示具有被应用不同的动画方案的至少两个组成部分的替身。
不同的动画方案可以包括应用于多个组成部分当中的第一组成部分的基于运动的动画方案,并且处理器可以被配置为根据基于运动的动画方案来识别在电子装置中配置的多个手势当中与外部对象的手势相对应的手势,并通过显示器显示根据识别的手势移动的第一组成部分。
不同的动画方案可以包括应用于多个组成部分当中的第二组成部分的基于跟踪的动画方案,并且处理器可以被配置为根据基于跟踪的动画方案来跟踪从与第二组成部分相对应的外部对象的区域提取的特征点的改变,并通过显示器显示根据特征点的改变自适应移动的第二组成部分。
不同的动画方案可以包括应用于多个组成部分当中的第三组成部分的预加载动画方案,并且处理器可以被配置为通过显示器根据预加载动画方案来显示与外部对象的手势无关地显示的第三组成部分。
处理器可以被配置为确定电子装置的第一模式下电子装置的旋转角度,确定第一模式下的旋转角度是否在第一阈值旋转范围内;如果第一模式下的旋转角度在第一阈值旋转范围内,则将替身的动作或位置的至少一部分反向旋转第一模式下的旋转角度;如果第一模式下的旋转角度大于或等于第一阈值旋转范围的上限,则将替身的动作或位置的至少一部分反向旋转第一模式下的上限;以及如果第一模式下的旋转角度小于或等于第一阈值旋转范围的下限,则将替身的动作或位置的至少一部分反向旋转第一模式下的下限,并且第一模式可以是纵向模式和横向模式中的一个。
处理器可以被配置为:确定电子装置的第一模式下电子装置的旋转角度,确定第一模式下的旋转角度是否在第二阈值旋转范围内,如果第一模式下的旋转角度在第二阈值旋转范围内,则基于第一模式下的旋转角度来改变替身的动作或位置的至少一部分,如果第一模式下的旋转角度在第二阈值旋转范围之外,则将电子装置的模式从第一模式改变为第二模式并且基于第一模式下的旋转角度来改变替身的动作或位置的至少一部分,并且第一模式可以是纵向模式和横向模式中的一个,并且第二模式可以是纵向模式和横向模式中的另一个。
根据实施例,根据各种实施例的电子装置(例如,电子装置101)可以包括相机(例如,相机模块180)、显示器(例如,显示装置160)、传感器(例如,传感器模块176)、存储器(例如,存储器130)和处理器(例如,处理器120),并且处理器可以被配置为通过显示器显示与在使用相机获取的一个或多个图像中包括的外部对象相对应的替身以及替身的背景,基于存储在存储器中的替身信息来确定替身的至少一个特性,基于存储在存储器中的背景信息来确定背景的至少一个特性,以及基于存储在存储器中的配置信息的至少一个配置值来控制通过显示器显示的替身和背景中的至少一个。
电子装置还可以包括输入装置,并且处理器可以被配置为基于通过输入装置接收的输入来确定替身的至少一个特性、背景的至少一个特性以及至少一个配置值中的至少一个。
配置信息可以包括阈值距离范围的上限和下限,并且处理器可以被配置为:如果外部对象和电子装置之间的距离在阈值距离范围内,则确定与虚拟空间中的替身有关的视点为虚拟空间中与外部对象和电子装置之间的距离相对应的位置,如果外部对象和电子装置之间的距离大于或等于上限,则确定视点为虚拟空间中与上限相对应的位置,以及如果外部对象和电子装置之间的距离小于或等于下限,则确定视点为虚拟空间中与下限相对应的位置。
配置信息可以包括第一阈值旋转范围的上限和下限,并且处理器可以被配置为:如果电子装置的第一模式下电子装置的旋转角度在第一阈值旋转范围内,则将替身的动作或位置的至少一部分改变第一模式下的旋转角度,如果第一模式下的旋转角度大于或等于上限,则将替身的动作或位置的至少一部分改变第一模式下的上限,以及如果第一模式下的旋转角度小于或等于下限,则将替身的动作或位置的至少一部分反向改变第一模式下的下限,第一模式可以是纵向模式和横向模式中的一个,第二模式可以是纵向模式和横向模式中的另一个。
图4A是根据实施例的电子装置的方法的流程图。根据以下附图的方法可以由图1的电子装置101、图3的电子装置101或者电子装置101的处理器120执行。
参照图4A,在步骤401中,处理器120可以在显示装置160上显示与在使用相机模块180获取的一个或多个图像中包括的外部对象相对应的替身。例如,处理器120可以通过相机模块180捕获包括外部对象的一个或多个图像,识别在一个或多个图像中包括的外部对象,在虚拟空间中生成与识别的外部对象相对应的替身,以及在显示装置160上显示生成的替身。
在步骤403中,处理器120可以通过相机模块180和传感器模块176中的至少一个识别外部对象相对于电子装置101的位置的改变。换句话说,处理器120可以通过相机模块180识别外部对象相对于电子装置101的位置的改变,通过传感器模块176识别外部对象相对于电子装置101的位置的改变,或者通过相机模块180和传感器模块176两者识别外部对象相对于电子装置101的位置的改变。为此,处理器120可以通过相机模块180和传感器模块176中的至少一个确定外部对象相对于电子装置101的位置。外部对象相对于电子装置101的位置可以包括相对位置。换句话说,外部对象相对于电子装置101的位置可以理解为电子装置101相对于外部对象的位置或外部对象相对于电子装置101的位置。例如,如果外部对象对应于3D坐标系的原点(0,0,0),则电子装置101相对于外部对象的相对位置可以被定义为电子装置101在3D坐标系中的位置在此,r表示外部对象和电子装置101之间的距离,θ表示电子装置101的方位角,并且表示电子装置101的高度角,其中,方位角θ和高度角中的至少一个可以是电子装置101相对于外部对象的角度。换句话说,外部对象相对于电子装置101的位置(即,相对位置)可以被定义为外部对象和电子装置101之间的距离以及电子装置101相对于外部对象的角度。例如,电子装置101相对于外部对象的位置可以表示为(x,y,z)。在此,类似地,如果电子装置101对应于3D坐标系的原点(0,0,0),则外部对象相对于电子装置101的位置可以被定义为外部对象在3D坐标系中的位置在下文中,尽管为了描述的方便,假设外部对象位于3D坐标系的原点(0,0,0),但是外部对象相对于电子装置101的位置是相对的,因此关于参考点的位置,各种实施例不受限。
在步骤405中,处理器120可以基于位置的改变来确定与显示的替身有关的视点。与替身有关的视点(或视点)可以是虚拟相机在虚拟空间中相对于替身的位置(或替身在虚拟空间中相对于虚拟相机的位置)。例如,如果替身对应于3D虚拟坐标系的原点(0,0,0),则虚拟相机在虚拟空间中相对于替身的位置可以被定义为虚拟相机在3D虚拟坐标系中的位置在此,r'表示替身和虚拟相机之间的距离,θ'表示虚拟相机的方位角,并且表示虚拟相机的高度角,其中,方位角θ'和高度角中的至少一个可以是虚拟相机相对于替身的角度。换句话说,视点可以被定义为替身和虚拟相机之间的距离以及虚拟相机相对于替身的角度。例如,电子装置101相对于外部对象的相对位置可以表示为(x',y',z')。在此,类似地,也可以定义替身相对于虚拟相机的位置(即,当虚拟相机的位置是原点(0,0,0)时),但是为了便于描述,假设替身位于3D虚拟坐标系的原点(0,0,0)。
替身和视点之间的距离可以与外部对象和电子装置101之间的距离成比例(例如,其比率可以不同地定义),并且视点相对于替身的角度可以与电子装置101相对于外部对象的角度成比例(其比率可以不同地定义)。因此,处理器120可以基于外部对象相对于电子装置101的位置的改变来定义与替身有关的视点以及该视点的改变。
在步骤407中,处理器120可以在显示装置160上显示基于确定的视点表示的替身。处理器120可以在显示装置160上显示与视点相对应的虚拟相机获取(或捕获)的一个或多个图像,并且一个或多个图像可以包括替身和/或替身的背景。
图4B是根据实施例的电子装置的方法的流程图。操作可以由图1的电子装置101、图3的电子装置101或者电子装置101的处理器120执行。
参照图4B,步骤409和步骤411可以与图4的步骤401相关联。
在步骤409中,处理器120可以提取与在一个或多个图像中识别的用户面部有关的特征信息。用户可以是电子装置101的用户,并且可以对应于由相机模块180获取的一个或多个图像中的外部对象。例如,处理器120可以通过相机模块180和传感器模块176中的至少一个在一个或多个图像中识别用户面部,并提取与用户面部有关的特征信息和/或用户面部的特征点。
在步骤411中,处理器120可以基于特征信息和替身生成模型来生成反映用户的面部特性的替身。替身生成模型可以是形成用于生成替身的基础的信息(例如,基础信息)。例如,替身生成模型可以包括替身的形状和定义连接用于表示替身形状的点的线和/或该点的方向的方法中的至少一个。替身生成模型可以被称为变形目标,并且可以被预先存储在存储器130中(即,替身生成模型可以是预定义的),或者可以由处理器120基于特征信息来生成。处理器120可以基于特征信息和替身生成模型来生成反映用户的面部特性(例如,包括眼睛、鼻子和嘴的排列、尺寸、形状和颜色,肤色和皮肤纹理中的至少一个)的替身。
图4C是根据实施例的反映用户的面部特性的替身的图示。
参照图4C,处理器120可以在电子装置101的显示单元160上显示替身420。替身420可以包括与从中提取特征信息以便生成替身420的外部对象的区域(例如,电子装置101的用户的面部)相对应的区域430。处理器120可以跟踪与用户面部有关的特征点,并且响应于特征点的改变而自适应地改变区域430中的替身的面部表情、位置和/或动作。
虽然图4C示出了替身具有人的形状,但这仅是示例,并且替身的形状可以被不同地显示。例如,处理器120可以通过与用户面部有关的特征信息以及角色形式(例如,动物角色的形式)的替身模型,根据特征点的改变来自适应地改变区域430中的角色形式的替身的面部表情、位置和/或动作。
替身420可以被划分为多个元素,并且可以将不同的动画方案应用于相应元素。例如,基于诸如区域430中的替身面部的特征点的基于跟踪的动画方案可以应用于替身420的一些元素,并且基于运动的动画方案和预加载动画方案中的至少一个可以应用于其他元素。动画方案的实施例参照图11和图12更详细地描述。
图5是根据实施例的用于确定与替身有关的视点的电子装置的方法的流程图。操作可以由图1的电子装置101、图3的电子装置101或者电子装置101的处理器120执行。
参照图5,步骤501、503、505、507和509可以与图4的步骤405相关联。
在步骤501中,处理器120可以确定外部对象和电子装置101之间的距离(r)是否大于阈值距离范围的下限(a)并且小于阈值距离范围的上限(b)。换句话说,处理器120可以确定外部对象和电子装置101之间的距离是否在阈值距离范围内。如果外部装置和电子装置101之间的距离在阈值距离范围内,则处理器120可以执行步骤503。否则,如果外部对象和电子装置101之间的距离在阈值距离范围之外,则处理器120可以执行步骤505。
处理器120可以确定外部对象和电子装置101之间的距离。例如,处理器120可以在由显示装置160显示的相机预览中识别外部对象的一部分(例如,外部对象的面部),并基于外部对象的一部分的面积与相机预览的面积之比来确定外部对象和电子装置101之间的距离。例如,如果外部对象的一部分的面积与相机预览的面积之比相对较大,则可以将外部对象和电子装置101之间的距离确定为相对较短,并且如果外部对象的一部分的面积与相机预览的面积之比相对较小,则可以将外部对象和电子装置101之间的距离确定为相对较长。例如,处理器120可以使用从安装的可穿戴传感器到外部对象的测量距离,或者可以使用飞行时间(ToF)型3D相机测量的距离来确定外部对象和电子装置101之间的距离。
在步骤503中,处理器120可以确定视点为虚拟空间中与外部对象和电子装置之间的距离相对应的位置。换句话说,处理器120可以将虚拟相机布置在虚拟空间中与外部对象和电子装置之间的距离相对应的位置。因此,如果外部对象和电子装置之间的距离在阈值距离范围内增加,则替身和虚拟相机之间的距离在虚拟空间中增加(即,虚拟相机的视角(或视场的角度)减小),从而显示在电子装置101的显示装置160上的替身和/或背景的尺寸可以增加。否则,如果外部对象和电子装置之间的距离在阈值距离范围内减小,则替身和虚拟相机之间的距离在虚拟空间中减小(即,虚拟相机的视角(或视场的角度)增加),从而显示在电子装置101的显示装置160上的替身和/或背景的尺寸可以减小。
例如,与阈值距离范围的下限(a)相对应的百分比可以是40%,并且与上限(b)相对应的百分比可以是110%。如果由电子装置101的显示装置160显示的相机预览中的百分比大于40%且小于110%(即,如果外部对象和电子装置101之间的距离在阈值距离范围内),则处理器120可以确定视点为虚拟空间中与由电子装置101的显示装置160显示的相机预览中的百分比相对应的位置,或者可以将替身和/或背景移动到虚拟空间中与相机预览中的百分比相对应的位置。
在步骤505中,处理器120可以确定外部对象和电子装置之间的距离是否大于或等于阈值距离范围的上限(b)。如果外部对象和电子装置之间的距离大于或等于阈值距离范围的上限(b),则处理器120可以执行步骤507。然而,如果外部对象和电子装置之间的距离小于阈值距离范围的上限(b),则处理器120可以执行步骤509。
在步骤507中,处理器120可以将视点确定为虚拟空间中与阈值距离范围的上限(b)相对应的位置。换句话说,处理器120可以将虚拟相机布置在虚拟空间中与阈值距离范围的上限(b)相对应的位置。因此,在外部对象和电子装置之间的距离大于或等于阈值距离范围的上限(b)的条件下,即使外部对象和电子装置之间的距离增加,替身和虚拟相机之间的距离也保持在与阈值距离范围的上限相对应的距离(即,保持虚拟相机的视角),从而可以保持由电子装置101的显示装置160显示的替身和/或背景的尺寸。
例如,与阈值距离范围的下限(a)相对应的百分比可以是40%,并且与上限(b)相对应的百分比可以是110%。如果由电子装置101的显示装置160显示的相机预览中的百分比大于或等于110%(即,如果外部对象和电子装置101之间的距离小于或等于阈值距离范围的上限),则处理器120可以确定视点为虚拟空间中与百分比110%相对应的位置,而不管由电子装置101的显示装置160显示的相机预览中的百分比如何,或者可以将替身和/或背景移动到虚拟空间中与110%相对应的位置。
在步骤509中,处理器120可以将视点确定为虚拟空间中与阈值距离范围的下限(a)相对应的位置。换句话说,处理器120可以将虚拟相机布置在虚拟空间中与阈值距离范围的下限(a)相对应的位置。因此,在外部对象和电子装置之间的距离小于或等于阈值距离范围的下限(a)的条件下,即使外部对象和电子装置之间的距离减小,虚拟空间中替身和虚拟相机之间的距离也保持在与阈值距离范围的下限相对应的距离(即,保持虚拟相机的视角),从而可以保持由电子装置101的显示装置160显示的替身和/或背景的尺寸。
例如,与阈值距离范围的下限(a)相对应的百分比可以是40%,并且与上限(b)相对应的百分比可以是110%。如果由电子装置101的显示装置160显示的相机预览中的百分比小于或等于40%(即,如果外部对象和电子装置101之间的距离小于或等于阈值距离范围的下限),则处理器120可以确定视点为虚拟空间中与百分比40%相对应的位置,而不管由电子装置101的显示装置160显示的相机预览中的百分比如何,或者可以将替身和/或背景移动到虚拟空间中与40%相对应的位置。
如果外部对象和电子装置101之间的距离小于阈值距离范围的下限,则可能不在显示装置160的相机预览中显示外部对象的一部分。换句话说,外部对象的区域的一部分可能不被相机模块180捕获。在这种情况下,处理器120可以将与未被相机模块180捕获的外部对象的区域相对应的替身的区域表示为默认替身图像。处理器120可以响应于外部对象的区域的运动而改变与由显示装置160中的相机模块180捕获的外部对象的区域相对应的替身的区域。否则,处理器120可以不改变与未被显示装置160中的相机模块180捕获的外部对象的另一区域相对应的替身的区域,但是尽管外部对象运动,仍可以与默认替身图像保持相同。默认替身图像是作为替身图像的基础的图像,并且可以是与外部对象的运动无关地配置的初始替身图像。
如果外部对象和电子装置101之间的距离在阈值距离范围之外,则处理器120可以将视点确定为虚拟空间中与阈值距离范围内的距离相对应的位置,渲染具有与阈值距离范围内的距离相对应的尺寸的替身,并在显示装置160上显示替身。
图6A和图6B是根据实施例的在电子装置的显示装置上显示的各种尺寸的替身的图示。
参照图6A,处理器120可以在显示装置160上以与阈值距离范围的下限(a)相对应的尺寸显示替身610。换句话说,处理器120可以将视点确定为虚拟空间中与阈值距离范围的下限(a)相对应的位置。在这种情况下,在外部对象和电子装置101之间的距离为阈值距离范围的下限的条件下,即使外部对象和电子装置101彼此靠近,处理器120也可以将视点保持为虚拟空间中与阈值距离范围的下限相对应的位置,并在图6A中以在显示装置160上显示的尺寸显示替身610。
参照图6B,处理器120可以在显示装置160上以与阈值距离范围的上限(b)相对应的尺寸显示替身610。换句话说,处理器120可以将视点确定为虚拟空间中与阈值距离范围的上限(b)相对应的位置。在这种情况下,在外部对象和电子装置101之间的距离大于或等于阈值距离范围的上限的条件下,即使外部对象和电子装置101彼此远离,处理器120也可以将视点保持为虚拟空间中与阈值距离范围的上限相对应的位置,并在图6B中以在显示装置160上显示的尺寸显示替身610。
处理器120可以在显示装置160上显示小于图6A中所示的替身或大于图6B中所示的替身的替身。例如,如果外部对象和电子装置101之间的距离在阈值距离范围内,则处理器120可以在显示装置160上显示小于图6A中所示的替身或大于图6B中所示的替身的替身。
图7是根据实施例的用于确定替身的背景的属性的电子装置的方法的流程图。操作可以由图1的电子装置101、图3的电子装置101或者电子装置101的处理器120执行。
参照图7,步骤701和步骤703可以与图4的步骤407相关联。
在步骤701中,处理器120可以基于外部对象相对于电子装置101的位置来确定替身的背景的属性。例如,处理器120可以根据外部对象和电子装置101之间的距离来确定不同的背景属性。背景属性可以包括模糊效果和亮度中的至少一个。
在步骤703中,处理器120可以通过显示装置160根据确定的属性来提供背景以及替身。例如,处理器120可以根据外部对象和电子装置101之间的距离来应用不同的模糊效果,并且可以在显示装置160上显示反映对应的模糊效果的背景以及替身。例如,处理器120可以根据外部对象和电子装置101之间的距离来应用不同的亮度,并且可以在显示装置160上显示具有对应亮度的背景以及替身。
在下文中,在图8A、图8B和图8C中,下面更详细地描述用于基于外部对象相对于电子装置101的位置来控制背景模糊效果的电子装置101的操作的示例。
图8A是根据实施例的用于控制背景模糊效果的电子装置的方法的流程图。操作可以由图1的电子装置101、图3的电子装置101或者电子装置101的处理器120执行。
参照图8A,步骤801、803、805、807和809可以与图7的步骤701相关联。
在步骤801中,处理器120可以确定外部对象和电子装置101之间的距离是否增加。例如,处理器120可以基于显示在显示装置160上的相机预览中的外部对象的尺寸、通过安装在外部装置中的可穿戴传感器的测量以及使用ToF型3D相机的测量中的至少一个来确定外部对象和电子装置101之间的距离是否增加。如果外部对象和电子装置101之间的距离增加,则处理器120可以执行步骤803和步骤805。否则,如果外部对象和电子装置101之间的距离没有增加(即,距离减小),则处理器120可以执行步骤807和步骤809。
在步骤803中,处理器120可以减小背景模糊效果。在步骤805中,处理器120可以减小显示在显示装置160上的替身和背景的尺寸(即,可以减小虚拟相机的视角)。如果外部对象和电子装置101之间的距离增加,则替身和视点之间的距离也增加,因此,显示在显示装置160上的替身和背景的尺寸可以减小。由于替身的尺寸减小,因此处理器120可以减小背景模糊效果,以便更清楚地显示背景。虽然图8示出了步骤803在步骤805之前执行,但这仅是示例,并且步骤805可以在步骤803之前执行。可选地,可以同时执行步骤803和步骤805。例如,可以仅执行步骤803和步骤805之一。换句话说,可以省略步骤803和步骤805中的剩余一个步骤。
在步骤807中,处理器120可以增加背景模糊效果。在步骤809中,处理器120可以增加显示在显示装置160上的替身和背景的尺寸(即,可以增加虚拟相机的视角)。如果外部对象和电子装置101之间的距离减小,则替身和视点之间的距离也减小,因此,显示在显示装置160上的替身和背景的尺寸可以增加。由于替身的尺寸增加,因此处理器120可以增加背景模糊效果,以便进一步强调替身。虽然图8示出了步骤807在步骤809之前执行,但这仅是示例,并且步骤809可以在步骤807之前执行。可选地,可以同时执行步骤807和步骤809。例如,可以仅执行步骤807和步骤809之一。换句话说,可以省略步骤807和步骤809中的剩余一个步骤。
在步骤801中,在外部对象和电子装置101之间的距离在阈值距离范围内的条件下,处理器120确定外部对象和电子装置101之间的距离是否增加。否则,即使外部对象和电子装置101之间的距离增加,处理器120也可以在步骤803中不减小背景模糊效果(即,可以保持相同),并且可以在步骤805中不减小替身或背景的尺寸(即,可以保持相同)。此外,即使外部对象和电子装置101之间的距离减小,处理器120也可以在步骤807中不增加背景模糊效果(即,可以保持相同),并且可以在步骤809中不增加替身和背景的尺寸(即,可以保持相同)。
处理器120可以基于外部对象和电子装置101之间的距离来控制背景的照度。例如,如果外部对象和电子装置101之间的距离增加,则处理器120可以增加背景的亮度,以便使背景更清晰可视。否则,如果外部对象和电子装置101之间的距离减小,则处理器120可以减小背景的亮度,以便进一步突出显示替身。
图8B是根据实施例的视点的移动和视域的改变之间的关系的图示。图8C是根据实施例的视点的移动和视域的改变之间的关系的图示。
参照图8B,随着视点840更靠近替身810(即,随着外部对象和电子装置101之间的距离减小),与视点840相对应的虚拟相机的视角可以增加,并且虚拟空间中的虚拟相机捕获的区域(以下称为捕获区域830)可以相对减小。因此,随着视点840更靠近替身810,显示在电子装置101的显示装置160上的替身810和背景820的尺寸可以变得相对较大。
参照图8C,随着视点840远离替身810(即,随着外部对象和电子装置101之间的距离增加),虚拟相机的视角可以减小并且捕获区域830可以相对增加。因此,随着视点840远离替身810,显示在电子装置101的显示装置160上的替身810和背景820的尺寸可以变得相对较小。
图9A是根据实施例的背景模糊效果和视点之间的关系的图示,图9B是根据实施例的背景模糊效果和视点之间的关系的图示。图9C是根据实施例的背景模糊效果和视点之间的关系的图示。在图9A、图9B和图9C中,虚拟空间中替身和视点之间的距离可以与外部对象和电子装置101之间的距离成比例。
参照图9A、图9B和图9C,外部对象和电子装置101之间的距离在图9A的情况下最短,在图9B的情况下比图9A的距离长,并且在图9C的情况下最长。因此显示在显示装置160上的替身910和背景920的尺寸(即,虚拟相机的视角)在图9A的情况下最大,在图9B的情况下小于图9A的尺寸,并且在图9C的情况下最小。
在图9A的情况下,背景920的模糊效果可以最大,其中,替身910的尺寸最大。因此,处理器120可以增加背景920的模糊效果,以便进一步强调相对较大的替身910。否则,在图9C的情况下,背景920的模糊效果可以最小,其中,替身910的尺寸最小。因此,处理器120可以减小背景920的模糊效果,以便在显示装置160上更清楚地显示相对较大的背景920。
图9B的情况下的背景模糊效果可以小于图9A的情况且大于图9C的情况。换句话说,背景模糊效果可以根据外部对象和电子装置101之间的距离连续改变。例如,图9B的情况下的背景模糊效果可以与图9A或图9C的背景模糊效果相同。换句话说,背景模糊效果可以根据外部对象和电子装置101之间的距离不连续地改变。例如,如果外部对象和电子装置101之间的距离大于阈值(或小于阈值),则背景模糊效果可以改变,并且阈值的数量可以为一个或多个。
虽然图9A、图9B和图9C通过示例的方式示出了背景模糊效果,但图9A、图9B和图9C的实施例可以应用于其他背景属性。例如,图9A、图9B和图9C的实施例也可以应用于背景的亮度。
图10是根据实施例的用于确定背景和替身中的视域的电子装置的方法的流程图。操作可以由图1的电子装置101、图3的电子装置101或者电子装置101的处理器120执行。
参照图10,步骤1001、1003、1005和1007可以与图4的步骤407相关联。
在步骤1001中,处理器120可以基于外部对象相对于电子装置101的位置来确定背景和替身中的视域。背景中的视域可以是在布置在虚拟空间中的背景的所有区域当中由虚拟相机捕获并显示在显示装置160上的区域。替身中的视域可以是虚拟空间中的替身的3D模型中由虚拟相机捕获的并显示在显示装置160上的区域。视域可以包括背景中的视域和替身中的视域中的至少一个。处理器210可以基于外部对象相对于电子装置101的位置来确定视点,并基于视点来确定背景和替身中的视域。
在步骤1003中,处理器120可以在显示装置160上显示视域。处理器120可以确定虚拟空间中替身和虚拟相机之间的距离以及虚拟相机相对于替身的角度,并且可以显示虚拟相机在确定的角度和距离捕获的背景和替身的区域。
在步骤1005中,处理器120可以确定电子装置101相对于外部对象的角度是否改变。例如,电子装置101相对于外部对象的角度可以基于电子装置101和外部对象中的至少一个的运动而移动。处理器120可以检测外部对象和电子装置101中的至少一个的运动,并且可以确定电子装置101的角度是否相对于外部对象改变。如果电子装置101的角度相对于外部对象改变,则处理器120可以执行步骤1007。如果电子装置101的角度相对于外部对象没有改变,则在步骤1003中,处理器120可以确定电子装置101的角度是否相对于外部对象改变。
在步骤1007中,处理器120可以基于电子装置101相对于外部对象的改变的角度来移动视域。处理器120可以确定电子装置101相对于外部对象的改变的角度以及角度的方向。角度的方向可以指示角度是在正方向上增加还是在负方向上减小。处理器120可以在虚拟空间中基于电子装置101相对于外部对象的改变的角度以及角度的方向来确定虚拟相机相对于替身的改变的角度以及角度的方向。例如,虚拟相机相对于替身的改变的角度可以与电子装置相对于外部对象的移动的角度相同或成比例。虚拟相机相对于替身的改变的角度的方向可以与电子装置相对于外部对象的改变的角度的方向相同。
处理器120可以确定电子装置101相对于外部对象的改变的角度以及角度的方向,并且在与对应方向相反的方向上将背景的视域移动背景中的对应角度。由于虚拟空间中的虚拟相机根据电子装置101的移动捕获了在与对应方向相反的方向上从背景中的参考区域移动对应角度的区域,因此处理器120可以将视域移动到捕获的背景区域。
处理器120可以确定电子装置101相对于外部对象的改变的角度以及角度的方向,并且在对应方向上将替身的视域移动替身中的对应角度。由于虚拟空间中的虚拟相机根据电子装置101的移动捕获了在对应方向上从替身的3D模型中的参考区域移动对应角度的区域,因此处理器120可以将视域移动到捕获的替身区域。
图11是根据实施例的用于将动画方案应用于替身的每个组成部分的电子装置的方法的流程图。操作可以由图1的电子装置101、图3的电子装置101或者电子装置101的处理器120执行。
参照图11,步骤1101、1103和1105可以与图4的步骤401相关联。
在步骤1101中,处理器120可以识别替身的多个组成部分。虚拟空间中的替身的3D模型可以被划分为多个区域,并且替身的多个组成部分中的每一个可以对应于由划分产生的区域中的每一个。
在步骤1103中,处理器120可以将不同的动画方案应用于多个组成部分中的至少两个。如果将不同的动画方案应用于多个组成部分中的所有组成部分,则可以根据动画方案来划分多个组成部分。换句话说,动画方案可以是用于划分替身的组成部分的参考。动画方案可以包括基于跟踪的动画方案、基于运动的动画方案和预加载动画方案中的至少一个。处理器120可以应用与替身的每个组成部分相对应的动画方案。
在步骤1105中,处理器120可以在显示装置160上显示具有被应用不同的动画方案的至少两个组成部分的替身。替身的每个组成部分可以根据应用于对应组成部分的动画方案进行动画处理,并且处理器120可以在显示装置160上显示根据动画方案移动的替身的组成部分。
基于运动的动画方案可以应用于替身的多个组成部分中的第一组成部分。例如,可以将基于运动的动画方案的多个手势存储或配置在电子装置101的存储器130中。处理器120可以根据基于运动的动画方案识别存储器130中配置的多个手势当中与外部对象的手势相对应的手势,并且在显示装置160上显示响应于识别的手势而移动的第一组成部分。存储在存储器130中的多个手势当中与外部对象的手势相对应的手势可以与外部对象的手势相同或不同。此外,如果在存储器130中配置的多个手势当中与外部对象的手势相对应的手势不存在,则处理器120可以显示第一组成部分,使得第一组成部分不在显示装置160上移动。
基于跟踪的动画方案可以应用于替身的多个组成部分当中的第二组成部分。处理器120可以根据基于跟踪的动画方案在与第二组成部分相对应的外部对象的区域中提取特征点,跟踪所提取的特征点的改变,并在显示装置160上显示根据特征点的改变自适应地移动的第二组成部分。更具体地,处理器120可以根据基于跟踪的动画方案在与第二组成部分相对应的外部对象的区域中提取特征点,跟踪所提取的特征点的改变以生成变形目标,并在第二组成部分中反映变形目标的运动以便显示第二组成部分,使得第二组成部分在显示装置160上移动。
可以将预加载动画方案应用于替身的多个组成部分当中的第三组成部分。处理器120可以根据预加载动画方案在显示装置160上显示与外部对象的手势无关地显示的第三组成部分。例如,处理器120可以在显示装置160上显示不移动的第三组成部分(即,静止的第三组成部分),而不管外部对象的手势如何。例如,处理器120可以在显示装置160上显示周期性地重复预定动作(例如,空闲动作)或根据预设模式移动的第三组成部分,而不管外部对象的手势如何。处理器120基本上处于停止状态,但是可以在显示装置160上响应于检测到特定事件(例如,通过传感器模块176和/或相机180检测的输入)而显示执行特定动画(例如,用手指做出“V”形)的第三组成部分。
可以将相同的动画方案应用于替身的多个组成部分中的所有组成部分。在这种情况下,替身可以不被划分为多个组成部分。
图12是根据实施例的具有被应用动画方案的组成部分的替身的图示。
参照图12,替身1250的多个组成部分可以包括第一组成部分1210、第二组成部分1220和第三组成部分1230。
基于运动的动画方案可以应用于第一组成部分1210。例如,处理器120可以根据基于运动的动画方案识别存储器130中配置的多个手势当中与外部对象1260的手势相对应的手势,并且在显示装置160上显示根据识别的手势移动的第一组成部分1210。
基于跟踪的动画方案可以应用于第二组成部分1220。例如,处理器120可以根据基于跟踪的动画方案从与第二组成部分1220相对应的外部对象1260的区域1240中提取特征点,跟踪所提取的特征点的改变以生成变形目标,并将变形目标的运动反映到第二组成部分1220以显示第二组成部分1220,使得第二组成部分1220在显示装置160上移动。
可以将预加载动画方案应用于第三组成部分1230。例如,处理器120可以在显示装置160上根据预加载动画方案显示与外部对象的手势无关地显示的第三组成部分1230。第三组成部分1230可以在第三组成部分1230不移动、周期性地重复空闲动作、根据预设模式移动或者响应于检测到某个事件而执行某个动画的状态下显示在显示装置160上。
替身1250可以被划分为比三个组成部分(例如,第一组成部分1210、第二组成部分1220和第三组成部分1230)更多数量的组成部分,并且可以将不同的动画方案应用于相应组成部分。换句话说,基于运动的动画方案、基于跟踪的动画方案和预加载动画方案仅是动画方案的示例,但是动画方案不限于此,并且还可以不同地定义其他动画方案。
图13是根据实施例的用于旋转替身并显示旋转的替身的电子装置的方法的流程图。操作可以由图1的电子装置101、图3的电子装置101或者电子装置101的处理器120执行。
参照图13,在步骤1301中,处理器120可以确定电子装置101的第一模式下电子装置101的旋转角度。电子装置101的模式可以包括第一模式和第二模式中的至少一个。例如,第一模式可以是纵向模式,并且第二模式可以是横向模式。例如,第一模式可以是横向模式,并且第二模式可以是纵向模式。可以根据电子装置101相对于地面的方位来划分纵向模式和横向模式。例如,处理器120可以通过传感器模块176的传感器(例如,加速度传感器、陀螺仪传感器和磁传感器)确定电子装置101相对于地面的方位,并基于电子装置101的方位来确定电子装置101的模式。可以对每个模式定义电子装置101的旋转角度。例如,纵向模式下电子装置101的旋转角度可以是与纵向模式下的参考旋转角度相比电子装置101旋转的角度,并且纵向模式下的参考旋转角度可以是在电子装置160的短边平行于地面并且电子装置160的长边垂直于地面的情况下电子装置101的旋转角度。此外,横向模式下电子装置101的旋转角度可以是与横向模式下的参考旋转角度相比电子装置101旋转的角度,并且横向模式下的参考旋转角度可以是在电子装置160的长边平行于地面并且电子装置101的短边垂直于地面的情况下电子装置101的旋转角度。旋转角度可以包括3D坐标系中的x方向上的旋转角度、y方向上的旋转角度和z方向上的旋转角度中的至少一个。类似地,可以定义虚拟空间中的虚拟相机的旋转角度。例如,虚拟空间中的虚拟相机的旋转角度可以是与虚拟相机的参考旋转角度相比虚拟相机旋转的角度,并且虚拟相机的参考旋转角度可以相同,而不管电子装置101的模式如何。虚拟相机的参考旋转角度可以是在3D虚拟坐标系中不应用旋转变换的情况下的旋转角度。
在步骤1303中,处理器120可以确定在第一模式下旋转角度是否在第一阈值旋转范围内。例如,处理器120可以通过传感器模块176的至少一个传感器确定第一模式下电子装置101的旋转角度,并确定第一模式下的确定的旋转角度是否在第一阈值旋转范围内。如果第一模式下的旋转角度在第一阈值旋转范围内,则处理器120可以执行步骤1305。否则,如果第一模式下的旋转角度在第一阈值旋转范围之外,则处理器120可以执行步骤1307。
在步骤1305中,处理器120可以将替身的动作或位置的至少一部分反向旋转第一模式下的旋转角度。换句话说,处理器120可以通过将虚拟相机旋转第一模式下的旋转角度来通过显示装置160显示反向旋转第一模式下的旋转角度的替身。处理器120可以将虚拟空间中的虚拟相机旋转第一模式下的旋转角度,并在显示装置160上显示由旋转的虚拟相机捕获的虚拟空间的图像(其中虚拟空间的图像可以包括替身和/或背景)。换句话说,如果第一模式下电子装置101的旋转角度在第一阈值旋转范围内增加,则处理器120可以在相反方向上增加显示在显示装置160上的替身的旋转角度。
在步骤1307中,处理器120可以确定第一模式下电子装置101的旋转角度是否大于第一阈值旋转范围的上限。如果第一模式下的旋转角度大于第一阈值旋转范围的上限,则处理器120可以执行步骤1309。否则,如果第一模式下的旋转角度小于或等于第一阈值旋转范围的下限,则处理器120可以执行步骤1311。
在步骤1309中,处理器120可以将替身的动作或位置的至少一部分反向旋转第一模式下的上限。换句话说,处理器120可以通过将虚拟相机旋转第一阈值旋转范围的上限在显示装置160上显示反向旋转第一模式下的上限的替身。处理器120可以将虚拟空间中的虚拟相机旋转第一阈值旋转范围的上限,并在显示装置160上显示由旋转的虚拟相机捕获的虚拟空间的图像(虚拟空间的图像可以包括替身和/或背景)。换句话说,在第一模式下电子装置101的旋转角度大于第一阈值旋转范围的上限的条件下,即使电子装置101的旋转角度增加,处理器101也可以将显示在显示装置160上的替身的旋转角度保持为第一阈值旋转范围的上限而不增加旋转角度。因此,可以减少由于替身的过度旋转引起的替身的畸变并改善用户体验。
在步骤1311中,处理器120可以将替身的动作或位置的至少一部分反向旋转第一模式下的下限。换句话说,处理器120可以通过将虚拟相机旋转第一阈值旋转范围的下限在显示装置160上显示反向旋转第一模式下的下限的替身。处理器120可以将虚拟空间中的虚拟相机旋转第一阈值旋转范围的下限,并通过显示装置160显示由旋转的虚拟相机捕获的虚拟空间的图像(例如,虚拟空间的图像可以包括替身和/或背景)。换句话说,在第一模式下电子装置101的旋转角度大于第一阈值旋转范围的下限的条件下,即使电子装置101的旋转角度减小,处理器101也可以将显示在显示装置160上的替身的旋转角度保持为第一阈值旋转范围的下限而不减小旋转角度。因此,可以减少由于替身的过度旋转引起的替身的畸变并改善用户体验。
图14A是根据实施例的替身的至少一部分被旋转的情况的图示,并且图14B是根据实施例的替身的至少一部分被旋转的情况的图示。
参照图14A,处理器120可以在显示装置160上显示反向旋转第一阈值旋转范围的下限的替身1410。换句话说,处理器120可以在虚拟空间中将虚拟相机旋转第一阈值旋转范围的下限。在这种情况下,在电子装置101的旋转角度小于或等于第一阈值旋转范围的下限的条件下,即使电子装置101的旋转角度减小,处理器120也可以保持替身1410的旋转角度而不减小旋转角度,并且因此可以减少归因于替身1410的过度旋转的替身1410的畸变。
参照图14B,处理器120可以在显示装置160上显示反向旋转第一阈值旋转范围的上限的替身1410。换句话说,处理器120可以在虚拟空间中将虚拟相机旋转第一阈值旋转范围的上限。在这种情况下,在电子装置101的旋转角度小于或等于第一阈值旋转范围的下限的条件下,即使电子装置101的旋转角度减小,处理器120也可以保持替身1410的旋转角度而不增加旋转角度,并且可以减少由于替身1410的过度旋转而引起的替身1410的畸变。
处理器120可以在显示装置160上显示旋转第一阈值旋转范围内的旋转角度的替身1410。例如,如果电子装置101的旋转角度在第一阈值旋转范围内,则处理器120可以在显示装置160上显示反向旋转电子装置101的旋转角度的替身1410。
不管电子装置101的旋转角度如何,替身1410的一些组成部分都可以不旋转。例如,处理器120可以根据电子装置101的旋转来旋转替身1410的头部1430,但是可以不旋转替身1410的身体部分1420。可以基于应用于替身1410的组成部分的动画方案来确定根据电子装置101的旋转而旋转的替身1410的组成部分。例如,可以将预加载动画方案应用于身体部分1420,并且处理器120可以不旋转被应用预加载动画方案的替身1410的组成部分。
图15是根据实施例的用于基于电子装置来确定替身的旋转和电子装置的模式的电子装置的方法的流程图。
参照图15,在步骤1501中,处理器120可以确定电子装置101的第一模式下电子装置101的旋转角度。处理器120可以通过传感器模块176的一个或多个传感器(例如,加速度传感器、陀螺仪传感器和磁传感器)确定第一模式下电子装置101的旋转角度。电子装置101的模式可以包括第一模式和第二模式中的至少一个。例如,第一模式可以是纵向模式,并且第二模式可以是横向模式。例如,第一模式可以是横向模式,并且第二模式可以是纵向模式。
在步骤1503中,处理器120可以确定第一模式下的旋转角度是否在第二阈值旋转范围内。如果第一模式下的旋转角度在第二阈值旋转范围内,则处理器120可以执行步骤1505。否则,如果第一模式下的旋转角度在第二阈值旋转范围之外,则处理器120可以执行步骤1507。
在步骤1505中,处理器120可以基于第一模式下的旋转角度来改变替身的动作或位置的至少一部分。换句话说,处理器120可以基于第一模式下的旋转角度来显示旋转的替身。例如,处理器120可以确定第一模式下的旋转角度是否在第一阈值旋转范围内,如在图13的步骤1303中,根据其结果来执行步骤1303之后的步骤,并在显示装置160上显示旋转的替身。
在步骤1507中,处理器120可以将电子装置101的模式从第一模式改变为第二模式。换句话说,当第一模式下的旋转角度偏离第二阈值旋转范围时,处理器120可以改变电子装置101的模式。第二阈值旋转范围的上限和下限可以是用于改变电子装置101的模式(或者用于确定电子装置101的模式的改变)的阈值。
在步骤1509中,处理器120可以确定第二模式下电子装置的旋转角度。处理器120可以确定参考旋转角度已经根据模式的改变而改变,并且可以基于改变的参考旋转角度来确定第二模式下电子装置101的旋转角度。例如,处理器120可以通过传感器模块176的一个或多个传感器确定电子装置101相对于第二模式下的参考旋转角度旋转的角度。例如,处理器120可以将第一模式和第二模式之间的参考旋转角度的改变量反映在第一模式下电子装置101的旋转角度中,并确定第二模式下电子装置101的旋转角度。
在步骤1511中,处理器120可以基于第二模式下的旋转角度来改变替身的动作或位置的至少一部分。换句话说,处理器120可以基于第二模式下的旋转角度来显示旋转的替身。例如,处理器120可以确定第二模式下的旋转角度是否在第一阈值旋转范围内,如在图13的步骤1303中,根据其结果来执行步骤1303之后的操作,并在显示装置160上显示旋转的替身。
第一阈值旋转范围可以被包括在第二阈值旋转范围中。
第二阈值旋转范围可以被包括在第一阈值旋转范围中。
第一阈值旋转范围的上限和下限可以分别小于第二阈值旋转范围的上限和下限。
第一阈值旋转范围的上限和下限可以分别大于第二阈值旋转范围的上限和下限。
第一阈值旋转范围可以与第二阈值旋转范围相同。
图16是根据实施例的使用替身DB的电子装置的方法的流程图。操作可以由图1的电子装置101、图3的电子装置101或者电子装置101的处理器120执行。
参照图16,在步骤1601中,处理器120可以基于存储在存储器130中的替身信息来确定替身的至少一个特性。例如,替身信息可以被包括在存储在存储器130中的替身DB 330中。替身的特性可以包括替身模型、应用于替身模型的颜色、替身的法线贴图、替身模型的材料、替身的纹理、替身的照度和为每个替身定义的动画效果中的至少一个。
在步骤1603中,处理器120可以基于存储在存储器130中的背景信息来确定背景的至少一个特性。例如,背景信息可以被包括在存储在存储器130中的替身DB 330中。背景的特性可以包括(多个)2D背景图像、(多个)3D背景图像以及将2D背景图像映射到3D图形(例如,长方体、球形多面体或其他多面体)的方法中的至少一个。
在步骤1605中,处理器120可以基于存储在存储器130中的至少一条配置信息的配置值来控制替身和背景中的至少一个。例如,配置信息可以被包括在存储在存储器130中的替身DB 330中。配置信息的配置值可以包括替身的动作(例如,替身的向左移动、向右移动、向前移动、向后移动和旋转)、替身的环境光、显示背景图像(例如,2D背景图像或3D背景图像)的方法、虚拟相机在虚拟空间中的初始位置以及用于感测信息的替身运动的灵敏度中的至少一个。
处理器120可以将确定的特性应用于替身和背景,根据配置值来控制对应特性的替身和背景,并在显示装置160上显示替身和背景。
处理器120可以基于通过输入装置150接收的输入来确定替身的特性、背景的特性和配置值中的至少一个。换句话说,可以基于输入来选择替身的特性、背景的特性和配置值。
图17是根据实施例的替身DB 330的结构的图示。
参照图17,替身DB 330可以包括3D_avatar_0 1710、overlay_frame_0 1730和标签1750。3D_avatar_0 1710可以对应于替身信息,overlay_frame_0 1730可以对应于背景信息,并且标签1750可以对应于配置信息。
3D_avatar_0 1710可以包括多个信息元素1711、1713、1715、1717、1719、1721、1723、1725、1727和1729。信息元素1711、1713、1715、1717、1719、1721、1723、1725、1727和1729可以包括用于确定替身模型的信息、用于确定要应用于替身模型的颜色的信息、用于确定替身的法线贴图的信息、用于确定替身模型的材料的信息、用于确定替身的纹理的信息、用于确定替身的照度的信息以及替身的动画效果中的至少一条。
Overlay_frame_0 1730可以包括2D背景图像1731和3D背景图像1730。背景信息还可以包括关于将2D背景图像映射到3D图形的方法的信息。
标签1750可以包括用于控制替身和背景中的至少一个的至少一个配置值。配置值可以包括替身的动作(例如,替身的向左移动、向右移动、向前移动、向后移动和旋转)、替身的环境光、显示背景图像(例如,2D背景图像或3D背景图像)的方法、虚拟相机在虚拟空间中的初始位置以及用于感测信息的替身运动的灵敏度中的至少一个。下面参照图19更详细地描述一种描述配置值的方法。
图18A是根据实施例的从背景信息确定的背景图像的图示,图18B是根据实施例的从背景信息确定的背景图像的图示,并且图18C是根据实施例的从背景信息确定的背景图像的图示。
参照图18A,处理器120可以将2D平面布置在3D空间中,并通过显示装置160在2D平面上显示2D图像,以便显示背景。换句话说,处理器120可以在显示装置160上显示平坦背景1820。处理器120可以基于背景信息来配置平坦背景1820,在平坦背景1820中渲染替身1810,并通过显示装置160一起提供平坦背景1820和替身1810。
参照图18B,处理器120可以将立方体形式的2D平面布置在3D空间中,并通过显示装置160在相应2D平面上显示2D图像,以便显示背景1830。换句话说,处理器1820可以在显示装置160上以立方体图形式显示背景1830。处理器120可以基于背景信息以立方体图形式配置背景1830,在背景1830中渲染替身1810,并通过显示装置160一起提供背景1830和替身1810。
参照图18C,处理器120可以基于布置在立方体的相应面上的2D背景图像1831、1833、1835、1837、1839和1841,以立方体图形式配置背景1830。2D背景图像1831、1833、1835、1837、1839和1841可以被包括在背景信息中。可以基于通过输入装置150接收的输入来选择2D背景图像1831、1833、1835、1837、1839和1841。处理器120可以根据背景信息在立方体的相应面上映射2D背景图像1831、1833、1835、1837、1839和1841,并以立方体图形式配置背景1830。
替身1810的背景(例如,背景1820和背景1830)可以基于替身(或外部对象)的位置、运动、动作状态或面部表情中的至少一个来改变。处理器120可以确定替身(或外部对象)的位置、运动、动作状态和面部表情中的至少一个,并基于确定的元素来改变背景。例如,处理器120可以基于替身(或外部对象)的位置、运动、动作状态和面部表情中的至少一个来改变2D背景图像1831、1833、1835、1837、1839和1841中的至少一些,基于改变的2D背景图像以立方体图形式配置背景1830,并将配置的背景1830与替身1810一起提供。
图19是根据实施例的描述配置信息的方法的图示。
参照图19,配置信息(例如,标签1750)可以包括描述区域1910,其中描述了配置值。例如,在描述区域1910中描述了配置值1911、1913、1915、1917和1919。
配置值1911可以表示为"face_size":[0.14,500.0]。如果外部对象的一部分(例如,用户面部)的面积与由显示装置160显示的相机预览的面积之比小于0.14(即,如果替身的显示尺寸非常小),则"face_size":[0.14,500.0]可以指示处理器120在500ms内显示相机预览而不显示替身。例如,如果外部对象的一部分(例如,用户面部)的面积与由显示装置160显示的相机预览的面积之比小于0.14(即,如果替身的显示尺寸非常小),"face_size":[0.14,500.0]可以指示处理器120在500ms内不分析相机预览(例如,相机预览的分析可以用于移动替身),停止替身的附加运动,或停止替身的组成部分(例如,与用户面部相对应的组成部分)的运动。如果该比变得大于0.14,则处理器120可以通过显示装置160再次显示替身和背景,但是可以不显示相机预览。
配置值1913可以表示为"face_roll":[35.0,500.0]。如果特定模式(例如,纵向模式或横向模式)下电子装置101的旋转角度大于或等于35度,则"face_roll":[35.0,500.0]可以指示处理器120在500ms内不显示替身和/或背景。例如,如果特定模式(例如,纵向模式或横向模式)下电子装置101的旋转角度大于或等于35度,则"face_roll":[35.0,500.0]可以指示处理器120在500ms内不分析相机预览(例如,相机预览的分析可以用于移动替身),停止替身的附加运动,或停止替身的组成部分(例如,对应于用户面部的组成部分)的运动。如果电子装置101的模式根据电子装置101的旋转而改变,则处理器120可以在改变的模式下在500ms内逐渐显示替身和/或背景。
配置值1915可以表示为"type":"directional"。"type":"directional"可以指示处理器120将直射光应用于例如替身1920。除了"type":"directional"之外,处理器120还可以基于在描述区域1910中描述的其他配置值"position":[85.0,915.0,400.0]和"intensity":1.4将具有强度1.4的直射光应用于与替身1920的虚拟坐标(85.0,915.0,400.0)相对应的位置。
配置值1917可以表示为"type":"ibl_irradiance"。"type":"ibl_irradiance"可以指示处理器120在背景1930中配置辐照度。除了"type":"ibl_irradiance"之外,处理器120还可以基于在描述区域1910中描述的另一配置值"intensity":0.7,将具有强度0.7的辐照度应用于背景1930。配置值1917不仅可以应用于背景1930,而且可以应用于用户定制的图像。
配置值1919可以表示为"type":"ibl_specular"。"type":"ibl_specular"可以指示处理器120将反射(镜面反射)应用于背景1940。除了"type":"ibl_specular"之外,处理器120还可以基于在描述区域1910中描述的另一配置值"intensity":0.6,将具有强度0.6的反射应用于背景1940。配置值1919不仅可以应用于背景1940,而且可以应用于用户的定制图像。
配置信息可以包括阈值距离范围的上限和下限。例如,可以在描述区域1910中描述阈值距离范围的上限和下限。
配置信息可以包括第一阈值旋转范围中的上限和下限。例如,可以在描述区域1910中描述第一阈值旋转范围的上限和下限。
配置信息可以包括第二阈值旋转范围的上限和下限。例如,可以在描述区域1910中描述第二阈值旋转范围的上限和下限。
根据实施例,一种操作电子装置(例如,电子装置101)的方法包括:显示与在使用电子装置的相机获取的一个或多个图像中包括的外部对象相对应的替身的操作;识别外部对象相对于电子装置的位置的改变的操作;基于位置的改变来确定与显示的替身有关的视点的操作;以及显示基于确定的视点显示的替身的操作。
显示基于确定的视点显示的替身的操作可以包括:基于其之间的位置关系来确定替身的背景的属性的操作;以及根据属性来一起提供背景和替身的操作。
背景的属性可以包括背景的模糊效果,并且确定替身的背景的属性的操作可以包括:如果外部对象和电子装置之间的距离增加,则减小背景的模糊效果的操作;以及如果外部对象和电子装置之间的距离减小,则增加背景的模糊效果的操作。
显示基于确定的视点显示的替身的操作可以包括:提取与在一个或多个图像中识别的电子装置的用户的面部有关的特征信息的操作;以及基于特征信息和替身生成模型来生成反映用户的面部的特性的替身的操作。
基于确定的视点来显示替身的操作可以包括:如果外部对象和电子装置之间的距离增加,则减小通过显示器显示的替身和替身的背景的尺寸的操作;以及如果外部对象和电子装置之间的距离减小,则增加通过显示器显示的替身和替身的背景的尺寸的操作。
确定与显示的替身有关的视点的操作可以包括:确定外部对象和电子装置之间的距离是否在阈值距离范围内的操作;如果外部对象和电子装置之间的距离在阈值距离范围内,则确定视点为虚拟空间中与外部对象和电子装置之间的距离相对应的位置的操作;如果外部对象和电子装置之间的距离大于或等于阈值距离范围的上限,则确定视点为虚拟空间中与上限相对应的位置的操作;以及如果外部对象和电子装置之间的距离小于或等于阈值距离范围的下限,则确定视点为虚拟空间中与下限相对应的位置的操作。
确定视点为虚拟空间中与下限相对应的位置的操作可以包括:如果外部对象和电子装置之间的距离小于或等于阈值距离范围的下限,则在显示器上显示与未被相机捕获的外部对象的区域相对应的替身的区域作为默认替身图像。
显示基于确定的视点显示的替身的操作可以包括:基于位置来确定替身的背景中的视域的操作;以及将背景中的视域与替身一起提供的操作。
确定替身的背景中的视域的操作可以包括:确定电子装置相对于外部对象移动的角度和该角度的方向的操作;以及在与该方向相反的方向上将背景中的视域移动该角度的操作。
显示基于确定的视点显示的替身的操作可以包括:基于该位置来确定替身中的视域的操作;以及提供替身中的视域的操作。
确定替身中的视域的操作可以包括:确定电子装置相对于外部对象移动的角度和该角度的方向的操作;以及在该方向上将替身中的视域移动该角度的操作。
显示与在使用电子装置的相机获取的一个或多个图像中包括的外部对象相对应的替身的操作可以包括:识别替身的多个组成部分的操作;将不同的动画方案应用于多个组成部分中的至少两个组成部分的操作;以及显示具有被应用不同的动画方案的至少两个组成部分的替身的操作。
不同的动画方案可以包括应用于多个组成部分当中的第一组成部分的基于运动的动画方案,并且显示替身的操作可以包括:根据基于运动的动画方案来识别在电子装置中配置的多个手势当中与外部对象的手势相对应的手势的操作;以及显示根据识别的手势移动的第一组成部分的操作。
不同的动画方案可以包括应用于多个组成部分当中的第二组成部分的基于跟踪的动画方案,并且显示替身的操作可以包括:根据基于跟踪的动画方案来跟踪从与第二组成部分相对应的外部对象的区域提取的特征点的改变的操作;以及显示根据特征点的改变自适应地移动的第二组成部分的操作。
不同的动画方案可以包括应用于多个组成部分当中的第三组成部分的预加载动画方案,并且显示替身的操作可以包括通过显示器根据预加载动画方案来显示与外部对象的手势无关地显示的第三组成部分的操作。
根据实施例,一种操作电子装置的方法包括:确定电子装置的第一模式下电子装置的旋转角度的操作;确定第一模式下的旋转角度是否在第一阈值旋转范围内的操作;如果第一模式下的旋转角度在第一阈值旋转范围内,则将替身的动作或位置的至少一部分反向旋转第一模式下的旋转角度的操作;如果第一模式下的旋转角度大于或等于第一阈值旋转范围的上限,则将替身的动作或位置的至少一部分反向旋转第一模式下的上限的操作;以及如果第一模式下的旋转角度小于或等于第一阈值旋转范围的下限,则将替身的动作或位置的至少一部分反向旋转第一模式下的下限,并且第一模式可以是纵向模式和横向模式中的一个。
根据实施例,一种操作电子装置的方法包括:确定电子装置的第一模式下电子装置的旋转角度的操作;确定第一模式下的旋转角度是否在第二阈值旋转角度内的操作;如果第一模式下的旋转角度在第二阈值旋转范围内,则基于第一模式下的旋转角度来改变替身的动作或位置的至少一部分的操作;以及如果第一模式下的旋转角度在第二阈值旋转范围之外,则将电子装置的模式从第一模式改变为第二模式并且基于第二模式下的旋转角度来改变替身的动作或位置的至少一部分的操作,并且第一模式可以是纵向模式和横向模式中的一个,并且第二模式可以是纵向模式和横向模式中的另一个。
根据实施例,一种操作电子装置的方法包括:基于存储在电子装置的存储器中的替身信息来确定替身的至少一个特性的操作;基于存储在存储器中的背景信息来确定背景的至少一个特性的操作;基于存储在存储器中的配置信息的至少一个配置值来控制通过显示器显示的替身和背景中的至少一个的操作;以及显示被控制的替身和背景中的至少一个的操作,并且替身可以对应于在使用电子装置的相机获取的一个或多个图像中包括的外部对象。
该操作电子装置的方法还可以包括:基于通过输入装置接收的输入来确定替身的至少一个特性、背景的至少一个特性和至少一个配置值中的至少一个。
配置信息可以包括阈值距离范围的上限和下限,并且该操作电子装置的方法还可以包括:如果外部对象和电子装置之间的距离在阈值距离范围内,则确定与虚拟空间中的替身有关的视点为虚拟空间中与外部对象和电子装置之间的距离相对应的位置的操作;如果外部对象和电子装置之间的距离大于或等于上限,则确定视点为虚拟空间中与上限相对应的位置的操作;以及如果外部对象和电子装置之间的距离小于或等于下限,则确定视点为虚拟空间中与下限相对应的位置的操作。
配置信息可以包括第一阈值旋转范围的上限和下限,并且该操作电子装置的方法可以包括:如果电子装置的第一模式下电子装置的旋转角度在第一阈值旋转范围内,则将替身的动作或位置的至少一部分改变第一模式下的旋转角度的操作;如果第一模式下的旋转角度大于或等于上限,则将替身的动作或位置的至少一部分改变第一模式下的上限的操作;以及如果第一模式下的旋转角度小于或等于下限,则将替身的动作或位置的至少一部分反向改变第一模式下的下限的操作,并且第一模式可以是纵向模式和横向模式中的一个。
根据各种实施例的在所附权利要求和/或公开中陈述的方法可以通过硬件、软件或硬件和软件的组合来实现。
当通过软件实现方法时,可以提供用于存储一个或多个程序(软件模块)的非暂时性计算机可读存储介质。存储在非暂时性计算机可读存储介质中的一个或多个程序可以被配置用于由电子装置内的一个或多个处理器运行。至少一个程序可以包括使电子装置执行根据由所附权利要求限定和/或本文公开的本公开的各种实施例的方法的指令。
程序(软件模块或软件)可以存储在非易失性存储器中,包括随机存取存储器(RAM)和闪存、只读存储器(ROM)、电可擦除可编程ROM(EEPROM)、磁盘存储装置、光盘(CD-ROM)、数字多功能光盘(DVD)或其他类型的光学存储装置或盒式磁带。可选地,部分或所有存储装置的任何组合可以形成存储程序的存储器。此外,在电子装置中可以包括多个这样的存储器。
此外,程序可以存储在通过通信网络可访问的可附接存储装置中,诸如互联网、内联网、LAN、WAN、存储区域网络(SAN)及其组合。这样的存储装置可以经由外部端口访问电子装置。此外,通信网络上的单独的存储装置可以访问便携式电子装置。
在本公开的上述实施例中,根据实施例,以单数或复数表示本公开中包括的部件。然而,为了便于描述,选择单数形式或复数形式以适合于所呈现的情况,并且本公开的各种实施例不限于单个元件或其多个元件。此外,在说明书中表达的多个元件可以被配置成单个元件,或者在说明书中的单个元件可以被配置成多个元件。
尽管已经参照本公开的某些实施例示出和描述了本公开,但是本领域技术人员将理解,在不脱离本公开的范围的情况下,可以在形式和细节上进行各种改变。因此,本公开的范围不应被限定为限于实施例,而是由所附权利要求及其等同物限定。
Claims (15)
1.一种电子装置,包括:
相机;
显示器;
传感器;
存储器;以及
处理器,
其中,所述处理器被配置为:通过显示器显示与在使用相机获取的一个或多个图像中包括的外部对象相对应的替身,通过相机和传感器中的至少一个识别外部对象相对于电子装置的位置的改变,基于位置的改变来确定与显示的替身有关的视点,以及通过显示器,基于确定的视点来显示替身。
2.根据权利要求1所述的电子装置,其中,所述处理器还被配置为:基于其之间的位置关系来确定替身的背景的属性,以及根据属性通过显示器一起提供背景和替身。
3.根据权利要求2所述的电子装置,其中,背景的属性包括背景的模糊效果,并且其中,所述处理器还被配置为:如果外部对象和电子装置之间的距离增加,则减小背景的模糊效果,以及如果外部对象和电子装置之间的距离减小,则增加背景的模糊效果。
4.根据权利要求1所述的电子装置,其中,所述处理器还被配置为:提取与在一个或多个图像中识别的电子装置的用户的面部有关的特征信息,以及基于特征信息和替身生成模型来生成反映用户的面部的特性的替身。
5.根据权利要求1所述的电子装置,其中,所述处理器还被配置为:确定外部对象和电子装置之间的距离是否在阈值距离范围内,如果外部对象和电子装置之间的距离在阈值距离范围内,则确定视点为虚拟空间中与外部对象和电子装置之间的距离相对应的位置,如果外部对象和电子装置之间的距离大于或等于阈值距离范围的上限,则确定视点为虚拟空间中与上限相对应的位置,以及如果外部对象和电子装置之间的距离小于或等于阈值距离范围的下限,则确定视点为虚拟空间中与下限相对应的位置。
6.根据权利要求5所述的电子装置,其中,所述处理器还被配置为:如果外部对象和电子装置之间的距离小于或等于阈值距离范围的下限,则在显示器上显示与未被相机捕获的外部对象的区域相对应的替身的区域作为默认替身图像。
7.根据权利要求1所述的电子装置,其中,所述处理器还被配置为:基于位置来确定替身的背景中的视域,以及通过显示器将背景中的视域与替身一起提供。
8.根据权利要求7所述的电子装置,其中,所述处理器还被配置为:确定电子装置相对于外部对象移动的角度和所述角度的方向,以及在与所述方向相反的方向上将背景中的视域移动所述角度。
9.根据权利要求1所述的电子装置,其中,所述处理器还被配置为:基于所述位置来确定替身中的视域,以及通过显示器提供替身中的视域。
10.根据权利要求9所述的电子装置,其中,所述处理器还被配置为:确定电子装置相对于外部对象移动的角度和所述角度的方向,以及在所述方向上将替身中的视域移动所述角度。
11.根据权利要求1所述的电子装置,其中,所述处理器还被配置为:识别替身的多个组成部分,将不同的动画方案应用于多个组成部分中的至少两个组成部分,以及通过显示器显示具有被应用不同的动画方案的至少两个组成部分的替身。
12.根据权利要求11所述的电子装置,其中,所述不同的动画方案包括应用于多个组成部分当中的第一组成部分的基于运动的动画方案,并且其中,所述处理器还被配置为:根据基于运动的动画方案来识别在电子装置中配置的多个手势当中与外部对象的手势相对应的手势,以及通过显示器显示根据识别的手势移动的第一组成部分。
13.根据权利要求11所述的电子装置,其中,所述不同的动画方案包括应用于多个组成部分当中的第二组成部分的基于跟踪的动画方案,并且其中,所述处理器还被配置为:根据基于跟踪的动画方案来跟踪从与第二组成部分相对应的外部对象的区域提取的特征点的改变,以及通过显示器显示根据特征点的改变自适应地移动的第二组成部分。
14.根据权利要求11所述的电子装置,其中,所述不同的动画方案包括应用于多个组成部分当中的第三组成部分的预加载动画方案,并且其中,所述处理器还被配置为:通过显示器根据预加载动画方案来显示第三组成部分,而不管外部对象的手势如何。
15.根据权利要求1所述的电子装置,其中,所述处理器还被配置为:确定电子装置的第一模式下电子装置的旋转角度,确定第一模式下的旋转角度是否在第一阈值旋转范围内,如果第一模式下的旋转角度在第一阈值旋转范围内,则将替身的动作或位置的至少一部分反向旋转第一模式下的旋转角度,如果第一模式下的旋转角度大于或等于第一阈值旋转范围的上限,则将替身的动作或位置的至少一部分反向旋转第一模式下的上限,以及如果第一模式下的旋转角度小于或等于第一阈值旋转范围的下限,则将替身的动作或位置的至少一部分反向旋转第一模式下的下限,并且第一模式是纵向模式和横向模式中的一个。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180092226A KR102664710B1 (ko) | 2018-08-08 | 2018-08-08 | 외부 객체의 위치의 변화에 따라 외부 객체에 대응하는 아바타를 표시하기 위한 전자 장치 |
KR10-2018-0092226 | 2018-08-08 | ||
PCT/KR2019/009894 WO2020032582A1 (en) | 2018-08-08 | 2019-08-07 | Electronic device for displaying avatar corresponding to external object according to change in position of external object |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112543901A true CN112543901A (zh) | 2021-03-23 |
Family
ID=67658532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980052410.1A Pending CN112543901A (zh) | 2018-08-08 | 2019-08-07 | 根据外部对象的位置的改变显示与外部对象相对应的替身的电子装置 |
Country Status (5)
Country | Link |
---|---|
US (3) | US11145101B2 (zh) |
EP (1) | EP3608757B1 (zh) |
KR (1) | KR102664710B1 (zh) |
CN (1) | CN112543901A (zh) |
WO (1) | WO2020032582A1 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200046417A (ko) * | 2018-10-24 | 2020-05-07 | 삼성전자주식회사 | 보정 이미지 기반 아바타 생성 방법 및 장치 |
US10902618B2 (en) * | 2019-06-14 | 2021-01-26 | Electronic Arts Inc. | Universal body movement translation and character rendering system |
US11504625B2 (en) | 2020-02-14 | 2022-11-22 | Electronic Arts Inc. | Color blindness diagnostic system |
WO2021197016A1 (en) * | 2020-04-01 | 2021-10-07 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | System and method for enhancing subjects in videos |
US11648480B2 (en) | 2020-04-06 | 2023-05-16 | Electronic Arts Inc. | Enhanced pose generation based on generative modeling |
US11232621B2 (en) | 2020-04-06 | 2022-01-25 | Electronic Arts Inc. | Enhanced animation generation based on conditional modeling |
US11790535B2 (en) | 2020-05-12 | 2023-10-17 | True Meeting Inc. | Foreground and background segmentation related to a virtual three-dimensional (3D) video conference |
US11570404B2 (en) | 2020-05-12 | 2023-01-31 | True Meeting Inc. | Predicting behavior changes of a participant of a 3D video conference |
US11381778B2 (en) | 2020-05-12 | 2022-07-05 | True Meeting Inc. | Hybrid texture map to be used during 3D video conferencing |
US11805157B2 (en) | 2020-05-12 | 2023-10-31 | True Meeting Inc. | Sharing content during a virtual 3D video conference |
US11870939B2 (en) | 2020-05-12 | 2024-01-09 | True Meeting Inc. | Audio quality improvement related to a participant of a virtual three dimensional (3D) video conference |
KR102558294B1 (ko) | 2020-12-31 | 2023-07-24 | 한국과학기술연구원 | 임의 시점 영상 생성 기술을 이용한 다이나믹 영상 촬영 장치 및 방법 |
US11765332B2 (en) | 2021-03-02 | 2023-09-19 | True Meeting Inc. | Virtual 3D communications with participant viewpoint adjustment |
CN113313796B (zh) * | 2021-06-08 | 2023-11-07 | 腾讯科技(上海)有限公司 | 场景生成方法、装置、计算机设备和存储介质 |
US11887232B2 (en) | 2021-06-10 | 2024-01-30 | Electronic Arts Inc. | Enhanced system for generation of facial models and animation |
CN115393486B (zh) * | 2022-10-27 | 2023-03-24 | 科大讯飞股份有限公司 | 虚拟形象的生成方法、装置、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100164956A1 (en) * | 2008-12-28 | 2010-07-01 | Nortel Networks Limited | Method and Apparatus for Monitoring User Attention with a Computer-Generated Virtual Environment |
US20140218371A1 (en) * | 2012-12-17 | 2014-08-07 | Yangzhou Du | Facial movement based avatar animation |
US20140218459A1 (en) * | 2011-12-29 | 2014-08-07 | Intel Corporation | Communication using avatar |
US20150325029A1 (en) * | 2013-11-14 | 2015-11-12 | Intel Corporation | Mechanism for facilitaing dynamic simulation of avatars corresponding to changing user performances as detected at computing devices |
US20160267699A1 (en) * | 2015-03-09 | 2016-09-15 | Ventana 3D, Llc | Avatar control system |
US20160335483A1 (en) * | 2014-11-13 | 2016-11-17 | Intel Corporation | Facial liveness detection in image biometrics |
CN107665485A (zh) * | 2016-07-29 | 2018-02-06 | 三星电子株式会社 | 用于显示图形对象的电子装置和计算机可读记录介质 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06298130A (ja) | 1993-04-16 | 1994-10-25 | Nippondenso Co Ltd | エアスポイラ装置 |
US8437514B2 (en) * | 2007-10-02 | 2013-05-07 | Microsoft Corporation | Cartoon face generation |
JP2010067002A (ja) * | 2008-09-10 | 2010-03-25 | Fujifilm Corp | 情報処理装置、方法およびプログラム |
JP5239660B2 (ja) | 2008-09-11 | 2013-07-17 | 株式会社豊田中央研究所 | 構造物の設計方法及びプログラム |
KR101648339B1 (ko) | 2009-09-24 | 2016-08-17 | 삼성전자주식회사 | 휴대용 단말기에서 영상인식 및 센서를 이용한 서비스 제공 방법 및 장치 |
US9245177B2 (en) | 2010-06-02 | 2016-01-26 | Microsoft Technology Licensing, Llc | Limiting avatar gesture display |
US8483481B2 (en) | 2010-07-27 | 2013-07-09 | International Business Machines Corporation | Foreground analysis based on tracking information |
US20140043329A1 (en) * | 2011-03-21 | 2014-02-13 | Peng Wang | Method of augmented makeover with 3d face modeling and landmark alignment |
KR101306221B1 (ko) | 2011-09-23 | 2013-09-10 | (주) 어펙트로닉스 | 3차원 사용자 아바타를 이용한 동영상 제작장치 및 방법 |
US9743002B2 (en) * | 2012-11-19 | 2017-08-22 | Magna Electronics Inc. | Vehicle vision system with enhanced display functions |
KR20150017258A (ko) * | 2013-08-06 | 2015-02-16 | 엘지전자 주식회사 | 이동 단말기 및 이의 제어방법 |
KR102077108B1 (ko) | 2013-09-13 | 2020-02-14 | 한국전자통신연구원 | 콘텐츠 체험 서비스 제공 장치 및 그 방법 |
JP6395423B2 (ja) * | 2014-04-04 | 2018-09-26 | キヤノン株式会社 | 画像処理装置、制御方法及びプログラム |
US20160148411A1 (en) * | 2014-08-25 | 2016-05-26 | Right Foot Llc | Method of making a personalized animatable mesh |
US9855499B2 (en) * | 2015-04-01 | 2018-01-02 | Take-Two Interactive Software, Inc. | System and method for image capture and modeling |
US10534955B2 (en) * | 2016-01-22 | 2020-01-14 | Dreamworks Animation L.L.C. | Facial capture analysis and training system |
JP6298130B2 (ja) | 2016-09-14 | 2018-03-20 | 株式会社バンダイナムコエンターテインメント | シミュレーションシステム及びプログラム |
CN109791702B (zh) * | 2016-09-23 | 2023-09-29 | 苹果公司 | 头像创建和编辑 |
US10198626B2 (en) * | 2016-10-19 | 2019-02-05 | Snap Inc. | Neural networks for facial modeling |
US10055880B2 (en) * | 2016-12-06 | 2018-08-21 | Activision Publishing, Inc. | Methods and systems to modify a two dimensional facial image to increase dimensional depth and generate a facial image that appears three dimensional |
JP6518645B2 (ja) * | 2016-12-13 | 2019-05-22 | 株式会社ソニー・インタラクティブエンタテインメント | 情報処理装置および画像生成方法 |
US10699461B2 (en) * | 2016-12-20 | 2020-06-30 | Sony Interactive Entertainment LLC | Telepresence of multiple users in interactive virtual space |
US10540817B2 (en) * | 2017-03-03 | 2020-01-21 | Augray Pvt. Ltd. | System and method for creating a full head 3D morphable model |
US10621417B2 (en) * | 2017-04-16 | 2020-04-14 | Facebook, Inc. | Systems and methods for generating content |
US10403031B2 (en) * | 2017-11-15 | 2019-09-03 | Google Llc | Learning to reconstruct 3D shapes by rendering many 3D views |
JP2019125278A (ja) * | 2018-01-19 | 2019-07-25 | ソニー株式会社 | 情報処理装置、情報処理方法及び記録媒体 |
DK201870346A1 (en) * | 2018-01-24 | 2019-09-12 | Apple Inc. | Devices, Methods, and Graphical User Interfaces for System-Wide Behavior for 3D Models |
-
2018
- 2018-08-08 KR KR1020180092226A patent/KR102664710B1/ko active IP Right Grant
-
2019
- 2019-08-07 WO PCT/KR2019/009894 patent/WO2020032582A1/en active Application Filing
- 2019-08-07 EP EP19190595.9A patent/EP3608757B1/en active Active
- 2019-08-07 CN CN201980052410.1A patent/CN112543901A/zh active Pending
- 2019-08-08 US US16/535,797 patent/US11145101B2/en active Active
-
2021
- 2021-10-08 US US17/497,165 patent/US11636641B2/en active Active
-
2023
- 2023-04-24 US US18/138,475 patent/US20230260188A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100164956A1 (en) * | 2008-12-28 | 2010-07-01 | Nortel Networks Limited | Method and Apparatus for Monitoring User Attention with a Computer-Generated Virtual Environment |
US20140218459A1 (en) * | 2011-12-29 | 2014-08-07 | Intel Corporation | Communication using avatar |
US20140218371A1 (en) * | 2012-12-17 | 2014-08-07 | Yangzhou Du | Facial movement based avatar animation |
US20150325029A1 (en) * | 2013-11-14 | 2015-11-12 | Intel Corporation | Mechanism for facilitaing dynamic simulation of avatars corresponding to changing user performances as detected at computing devices |
US20160335483A1 (en) * | 2014-11-13 | 2016-11-17 | Intel Corporation | Facial liveness detection in image biometrics |
US20160267699A1 (en) * | 2015-03-09 | 2016-09-15 | Ventana 3D, Llc | Avatar control system |
CN107665485A (zh) * | 2016-07-29 | 2018-02-06 | 三星电子株式会社 | 用于显示图形对象的电子装置和计算机可读记录介质 |
Also Published As
Publication number | Publication date |
---|---|
EP3608757A1 (en) | 2020-02-12 |
US11636641B2 (en) | 2023-04-25 |
KR102664710B1 (ko) | 2024-05-09 |
EP3608757B1 (en) | 2024-05-15 |
KR20200017068A (ko) | 2020-02-18 |
US20200051304A1 (en) | 2020-02-13 |
US20220028153A1 (en) | 2022-01-27 |
WO2020032582A1 (en) | 2020-02-13 |
US20230260188A1 (en) | 2023-08-17 |
US11145101B2 (en) | 2021-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11636641B2 (en) | Electronic device for displaying avatar corresponding to external object according to change in position of external object | |
US11138434B2 (en) | Electronic device for providing shooting mode based on virtual character and operation method thereof | |
KR102659357B1 (ko) | 아바타 애니메이션을 제공하기 위한 전자 장치 및 그에 관한 방법 | |
US20200265565A1 (en) | Electronic device applying bokeh effect to image and controlling method thereof | |
US11048923B2 (en) | Electronic device and gesture recognition method thereof | |
KR102524982B1 (ko) | 흐림 처리가 수행된 이미지에 노이즈 패턴을 반영하는 방법 및 장치 | |
US11102409B2 (en) | Electronic device and method for obtaining images | |
US11144197B2 (en) | Electronic device performing function according to gesture input and operation method thereof | |
US11412143B2 (en) | Electronic device and method for controlling camera motion | |
CN112351188B (zh) | 根据对象显示图形元素的装置和方法 | |
CN113366527A (zh) | 用于处理图像的电子装置和方法 | |
US11204668B2 (en) | Electronic device and method for acquiring biometric information using light of display | |
US11601590B2 (en) | Interface connected to image sensor and electronic device comprising interfaces connected among plurality of processors | |
US11403848B2 (en) | Electronic device and method for generating augmented reality object | |
US20230388441A1 (en) | Electronic device and method for capturing image by using angle of view of camera module | |
US11164388B2 (en) | Electronic device and method for providing augmented reality object therefor | |
KR20190114242A (ko) | 이미지에 포함된 반사 객체의 속성에 기반하여, 반사 객체에 다른 이미지를 합성하는 방법 및 전자 장치 | |
CN115066882A (zh) | 用于执行自动对焦的电子装置和方法 | |
US20230360245A1 (en) | Measurement method using ar, and electronic device | |
KR20190096697A (ko) | 전자 장치 및 전자 장치의 전 방향 영상 표시 방법 |
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 |