CN116368350A - 使用靶标的运动捕获校准 - Google Patents
使用靶标的运动捕获校准 Download PDFInfo
- Publication number
- CN116368350A CN116368350A CN202180065626.9A CN202180065626A CN116368350A CN 116368350 A CN116368350 A CN 116368350A CN 202180065626 A CN202180065626 A CN 202180065626A CN 116368350 A CN116368350 A CN 116368350A
- Authority
- CN
- China
- Prior art keywords
- cameras
- camera
- live action
- reference points
- reference point
- 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
- 230000033001 locomotion Effects 0.000 title claims abstract description 40
- 230000009471 action Effects 0.000 claims abstract description 138
- 238000000034 method Methods 0.000 claims abstract description 47
- 238000004891 communication Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 21
- 238000012545 processing Methods 0.000 description 19
- 230000000007 visual effect Effects 0.000 description 16
- 238000009877 rendering Methods 0.000 description 12
- 230000003287 optical effect Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 8
- 239000007787 solid Substances 0.000 description 5
- 238000005286 illumination Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 239000013589 supplement Substances 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 210000001503 joint Anatomy 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000007667 floating Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000004091 panning Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000037237 body shape Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 210000002310 elbow joint Anatomy 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 239000003973 paint Substances 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 239000003381 stabilizer Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- 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
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/90—Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B11/00—Measuring arrangements characterised by the use of optical techniques
- G01B11/24—Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
- G01B11/245—Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures using a plurality of fixed, simultaneously operating transducers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10032—Satellite or aerial image; Remote sensing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30204—Marker
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
- Image Analysis (AREA)
Abstract
实施例便于使用靶标校准实况动作场景中的摄像机。在一些实施例中,一种方法配置多个参考摄像机以观察实况动作场景的至少一部分。该方法还配置具有无约束运动的一个或多个移动摄像机,以观察实况动作场景中的一个或多个移动对象,并观察与多个参考摄像机相关联的至少三个已知的参考点。该方法还接收与一个或多个移动摄像机相关联的参考点数据,其中该参考点数据基于至少三个已知的参考点。该方法还基于参考点数据中的一个或多个和多个参考摄像机中的一个或多个参考摄像机的一个或多个位置计算一个或多个移动摄像机中的每个移动摄像机的位置和取向。
Description
相关申请的交叉引用
本申请要求于2020年8月28日提交的题为“使用带有多个摄像机的靶标的运动捕获校准(MOTION CAPTURE CALIBRATION USING DRONES WITH MULTIPLE CAMERAS)”的美国临时专利申请第63/072,085号,于2020年8月28日提交的题为“使用靶标的运动捕获校准(MOTION CAPTURE CALIBRATION USING DRONES)”的美国临时专利申请第63/072,088号,以及于2020年8月28日提交的题为“使用固定摄像机和靶标的运动捕获校准(MOTION CAPTURECALIBRATION USING FIXED CAMERAS AND DRONES)”的美国临时专利申请第63/072,092号的优先权,这些申请通过引用并入本文,如同在本申请中为了所有目的完全阐述一样。本申请涉及于2020年12月11日提交的题为“使用带有多个摄像机的靶标的运动捕获校准(MOTION CAPTURE CALIBRATION USING DRONES WITH MULTIPLE CAMERAS)”的美国实用专利申请第17/120,020号,于2020年12月11日提交的题为“使用靶标的运动捕获校准(MOTIONCAPTURE CALIBRATION USING DRONE)”的美国实用专利申请第17/120,024号,以及于2020年12月11日提交的题为“使用摄像机和靶标的运动捕获校准(MOTION CAPTURECALIBRATION USING CAMERAS AND DRONES)”的美国实用专利申请第17/120,031号,这些申请通过引用并入本文,如同在本申请中为了所有目的完全阐述一样。
背景技术
许多视觉作品(例如,电影、视频、剪辑和记录的视觉介质)包括真实图像和数字图像的组合,以创建动画和特殊效果,形成与实况动作集成的幻觉。例如,视觉作品可能包括在位置拍摄的现场演员和计算机生成的(“CG”、“虚拟”或“数字”)角色出现在一个场景中。希望通过将CG项目与实况动作项目合成来产生看似真实的视觉作品。通常,在一个集合上使用数种类型的摄像机,其中每个摄像机提供不同的数据,诸如实况动作场景的图像、深度信息、实况动作场景中的标记跟踪等。有必要实时校准各种摄像机数据,以准确地将实况动作元素与CG图像合成并产生逼真的视觉作品。
至少优选实施例的目的是解决前述要求中的至少一些。附加或替代的目的是至少向公众提供有用的选择。
发明内容
实施例总体上涉及使用靶标校准实况动作场景中的摄像机。实施例提供了使用靶标和由与靶标相关联的摄像机捕获的图像中的参考点,对实况动作场景中的摄像机进行自动校准。在各种实施例中,一种方法配置多个参考摄像机以观察实况动作场景的至少一部分。该方法还配置具有无约束运动的一个或多个移动摄像机,以观察实况动作场景中的一个或多个移动对象,并观察与多个参考摄像机相关联的至少三个已知的参考点。该方法还接收与一个或多个移动摄像机相关联的参考点数据,其中该参考点数据基于至少三个已知的参考点。该方法还基于参考点数据中的一个或多个和多个参考摄像机中的一个或多个参考摄像机的一个或多个位置计算一个或多个移动摄像机中的每个移动摄像机的位置和取向。
在实施例中,每个移动摄像机安装在可移动设备上。
在实施例中,一个或多个移动对象中的至少一个移动对象是人。
如本说明书所用,术语“包括”是指“至少部分地由……组成”。在解释本说明书中包含术语“包括”的每项陈述时,除此之外的特征或以该术语为开头的特征也可能存在。诸如“包括”(comprise)和“包括”(comprises)的相关术语以相同的方式解释。
本说明书中参考了专利说明书、其他外部文件或其他信息源,这通常是为了提供用于讨论本发明特征的上下文。除非另有特别说明,对此类外部文件或此类信息源的引用不应被解释为承认此类文件或此类信息源在任何管辖范围内是现有技术或形成本领域公知常识的一部分。
附图说明
图1是用于校准实况动作场景中的摄像机的示例环境的俯视图框图,可用于本文所述的实施例。
图2是用于校准实况动作场景中的摄像机的示例环境的侧视图框图,可用于本文所述的实施例。
图3是根据一些实施例的用于使用靶标校准实况动作场景中的摄像机的示例流程图。
图4是根据一些实施例的用于校准实况动作场景中的摄像机的示例环境的框图。
图5是根据一些实施例的包括由实况动作场景中的摄像机捕获的参考点的示例情况的框图。
图6是根据一些实施例的实况动作场景中的一组参考点的框图,其中参考点布置在直线上。
图7是根据一些实施例的包括由实况动作场景中的摄像机捕获的图像中的参考点的示例情况的框图。
图8是根据一些实施方式的用于使用靶标校准实况动作场景中的摄像机的示例流程图。
图9是根据一些实施例的联接到靶标的示例摄像机的框图。
图10是根据一些实施方式的用于使用靶标校准实况动作场景中的摄像机的示例流程图。
图11是可用于本文所述的实施例的示例计算机系统的框图。
图12是根据一些实施例的示例视觉内容生成系统的框图,该示例视觉内容生成系统可用于生成静止图像和/或图像的视频序列形式的影像。
图13是可用于本文所述的实施例的示例计算机系统的框图。
具体实施方式
实施例便于使用靶标校准实况动作场景中的摄像机。在一些实施例中,自动化系统使用由与靶标相关联的摄像机捕获的图像中的参考点来校准实况动作场景中的摄像机。该校准可以称为运动捕获(MoCap)校准。本文所述的实施例使系统能够提供用于跟踪参考点的经校准的多视图视觉系统,该参考点包括靶标且可包括有源和/或无源参考标记。
在各种实施例中,诸如靶标的设备包括至少两个摄像机,其中一个摄像机被配置为跟随实况动作场景中的动作,包括跟随演员。另一个摄像机被配置为在该实况动作场景中观看参考标记。如本文更详细描述的,在各种实施例中,系统配置多个参考摄像机以观察实况动作场景的至少一部分。该系统还配置联接到靶标的至少第一摄像机,以观察实况动作场景中的一个或多个移动对象。该系统还配置联接到靶标的至少第二摄像机,以观察位于实况动作场景中的至少三个已知的参考点。该系统还接收与至少第二摄像机相关联的参考点数据,其中该参考点数据基于三个已知的参考点。该系统还基于参考点数据计算第一摄像机和第二摄像机的位置和取向。
在各种实施例中,系统使用与靶标上的移动摄像机相关联的参考点数据以及一个或多个参考摄像机的位置,以便计算靶标上的移动摄像机的位置。如本文更详细描述的,在各种实施例中,系统配置多个参考摄像机以观察实况动作场景的至少一部分。该系统还配置具有无约束运动的一个或多个移动摄像机,以观察实况动作场景中的一个或多个移动对象,并观察与参考摄像机相关联的至少三个已知的参考点。该系统还接收与一个或多个移动摄像机相关联的参考点数据,其中该参考点数据基于至少三个已知的参考点。该系统还基于参考点数据中的一个或多个和一个或多个参考摄像机的一个或多个位置计算一个或多个移动摄像机中的每个移动摄像机的位置和取向。
在各种实施例中,系统使用与至少三个已知的参考点相关联的参考点数据和与一个或多个移动摄像机相关联的一个或多个参考点,以便计算靶标上的移动摄像机的位置。如本文更详细描述的,在各种实施例中,系统配置多个参考摄像机以观察位于实况动作场景中的至少三个已知的参考点,并且观察与具有无约束运动的一个或多个移动摄像机相关联的一个或多个参考点。该系统还配置一个或多个移动摄像机以观察实况动作场景中的一个或多个移动对象。该系统还接收与一个或多个参考摄像机相关联的参考点数据,其中该参考点数据基于至少三个已知的参考点和与一个或多个移动摄像机相关联的一个或多个参考点。该系统还基于参考点数据中的一个或多个和一个或多个参考摄像机的一个或多个位置计算每个移动摄像机的位置和取向。
图1是用于校准实况动作场景中的摄像机的示例环境100的俯视图框图,可用于本文所述的实施例。示出了系统102、网络104,以及摄像机112、114、116和118。在各种实施例中,摄像机112、114、116和118在环境100的视场(由虚线指示)中捕获诸如人130的对象的视频或图像。
在各种实施例中,摄像机112、114、116和118处于已知的位置和/或方位。在各种实施例中,确定和/或预定给定的摄像机的位置和/或方位。在各种实施例中,摄像机112、114、116和118也可以称为参考摄像机112、114、116和118。
如本文更详细描述的,在各种实施例中,一个或多个参考点附接到环境100中的摄像机中的至少一些。例如,参考点132、134、136和138附接到相应的参考摄像机112、114、116和118。参考点132至138使参考摄像机112至118能够经由它们相应的附接的参考点132至138来彼此识别和定位。在各种实施例中,当确定和/或预定参考摄像机112至118的方位和/或位置时,附接到相应的参考摄像机112至118的参考点132至138也可以称为已知的或预定的参考点。
在各种实施例中,当在摄像机122和124的相应的视场中时,可移动摄像机122和124还可经由所附接的参考点132至138来识别和定位摄像机112至118。在各种实施例中,当系统确定一个或多个给定的可移动摄像机(例如,可移动摄像机122、124等)的方位和/或位置时,此类可移动摄像机也可以称为参考摄像机。而且,附接到此类参考摄像机的任何参考点也可以称为已知的或预定的参考点。换言之,在可移动摄像机上可以有参考点。这使给定的可移动摄像机能够基于已知的参考点或附接到静止的参考摄像机、参考摄像机的移动系统(例如,车辆上的摄像机、轨道上的火车车厢上的摄像机等)和/或独立移动的摄像机(例如,可移动摄像机122、124等)来确定其位置和/或方位。
在各种实施例中,该系统至少部分地基于全球定位系统(GPS)数据、方位传感器数据和惯性引导传感器数据中的一个或多个,或其任何组合计算每个移动摄像机的位置。该系统可以结合本文所述的其他实施例使用这些技术来增加计算摄像机的位置和方位的精度。在各种实施例中,环境100中的每个摄像机还可以使用GPS技术来补充系统确定每个摄像机的位置和/或方位。在一些实施例中,系统至少部分地基于一个或多个GPS技术计算诸如靶标的可移动设备上的一个或多个可移动或移动摄像机的位置。在各种实施例中,给定的对象的已知的位置和方位/取向可以基于预定义的全局坐标系,并且相对于给定的对象的位置和相对于另一对象的方位是已知的。在各种实施例中,环境100中的每个摄像机还可以使用来自方位传感器或编码器(例如,运动编码器、旋转编码器等)的定位数据的组合来补充系统确定每个摄像机的位置和/或方位。在另一实例中,在各种实施例中,环境100中的每个摄像机还可以使用惯性引导传感器(例如,高度计、接近度传感器、加速度等)的组合来补充系统确定每个摄像机的位置和/或方位。
如上面所指示,在各种实施例中,参考摄像机可以安装在一个或多个刚性结构上。例如,在一些实施例中,摄像机112至118可以各自附接到立在地面上的三脚架(在图2中示出)。在一些实施例中,摄像机112至118可以各自附接到立在一个或多个静止的平台或水平面上的三脚架。此类平台或水平面可以彼此不同,但相对于地面是静止的。
在各种实施例中,摄像机112至118可以相对于彼此固定。例如,在一些实施例中,摄像机112至118可以全部附接到相同的单个刚性框架,诸如交叉支撑的框架、桁架等。照此,摄像机112至118相对于彼此保持固定。如果单个刚性框架在地面上或在静止的平台上,则该组参考摄像机可以保持是静止的。
在各种实施例中,如果单个刚性框架正在移动(例如,不在地面上或不在静止的平台上),则参考摄像机112至118可以附接到一起移动的刚性框架。例如,在一些情况中,摄像机112至118可以在漂浮在水(例如,海洋、湖泊)上的框架上,其中即使框架在水上漂浮时有所移动,摄像机112至118的位置和/或方位也相对于彼此保持已知。在一些情况中,摄像机112至118可以在空中携带的框架上(例如,通过靶标、靶标组等)。类似地,即使框架在空中盘旋时有所移动,摄像机112至118的位置和/或方位也相对于彼此保持已知。照此,附接到摄像机112至118的参考点是已知的参考点。
还示出了摄像机122和124。在各种实施例中,摄像机122和124是可移动的。照此,摄像机122和124也可以称为可移动摄像机或移动摄像机。照此,术语“可移动摄像机”和“移动摄像机”可以互换使用。在各种实施例中,摄像机122和124可以附接到相应的靶标126和128。在各种实施例中,摄像机122和124可以安装到远程控制的头部和/或万向接头,以便于跟随场景的动作。例如,摄像机122和124可以缩放、摇摄、倾斜等以跟随环境100中的主演。
如上面所指示,在各种实施例中,一个或多个参考点附接到环境100中的摄像机中的至少一些。例如,参考点132、134、136和138附接到相应的参考摄像机112、114、116和118。参考点132至138使参考摄像机112至118能够经由它们相应的附接的参考点132至138来彼此识别和定位。当在摄像机122和124的相应的视场中时,可移动摄像机122和124还可以经由所附接的参考点132至138来识别和定位摄像机112至118。
为了计算诸如摄像机112的给定的摄像机的位置,系统102可以将给定的摄像机的位置再现为与诸如附接到摄像机112的参考点132的位置参考点相同。该公共位置可以适用于任何摄像机-参考点配对或关联。
如下面更详细描述的,系统102从诸如摄像机112至118的多个摄像机接收包括图像的视频。在各种实施例中,系统102利用摄像机112至118来捕获实况动作场景中的已知的参考点的图像或图像集。摄像机112至118为系统102提供参考点数据以计算摄像机112至118的位置。在各种示例实施例中,参考点也可以称为参考标记。本文所述的实施例校准摄像机112至118,这提高了系统102定位和跟踪参考点的精度。
在各种实施例中,参考点140附接到人130。参考点140使参考摄像机112至118和可移动摄像机122和124中的任何一个能够在处于摄像机112至124的相应的视场中时经由所附接的参考点140来识别和定位人130。如本文更详细描述的,在各种实施例中,诸如参考点140的一些参考点可以连续地处于摄像机122和124的视场中,摄像机122和124被配置为跟随场景动作中的一个或多个参考点,这可能涉及人130。
在各种实施例中,参考点142和144附接到相应的可移动摄像机122和124。而且,参考点146和148附接到相应的靶标126和128。参考点122和124使可移动摄像机122和124能够在处于摄像机122和124的相应的视场中时基于其相应的所附接的参考点142和144来彼此识别和定位。
类似地,参考点146使可移动摄像机124能够在处于摄像机124的相应的视场中时基于参考点146来识别和定位靶标126。而且,参考点148使可移动摄像机122能够在处于摄像机122的相应的视场中时基于参考点148来识别和定位靶标128。
在各种实施例中,摄像机112至124可以被隐藏或伪装,使得这些和其他摄像机不捕获可视地示出这些摄像机的图像。照此,系统102基于附接到这些摄像机的参考点来定位和校准这些摄像机。
如本文所指示,在各种实施例中,摄像机112至118可以是静止的或固定的,这取决于特定的实施方式。摄像机112至118也在不同的方向上取向,并且具有广泛的重叠视场以捕获大部分环境100的视频或图像。摄像机112至118捕获其视场中的各种参考点,诸如结合图1描述的那些参考点。摄像机112至118之间的特定的距离及其集合的整体覆盖范围可能有所不同,并将取决于特定的实施方式。
图2是用于校准实况动作场景中的摄像机的图1的示例环境100的侧视图框图,可用于本文所述的实施例。在各种实施例中,环境100可以具有多个层级或层的摄像机,用于捕获环境100的不同方面。例如,在各种实施例中,参考摄像机112至118可在第一层级或层上操作。在此上下文中,在相同层级或层上操作的两个或多个摄像机可意指在相同高度(例如,在地面上方4英尺、在地面上方5英尺等)下操作,或在相同高度范围(例如,在地面上方1英尺到地面上方8英尺等之间)下操作。在各种实施例中,参考摄像机112至118的方位和/或位置相对于彼此是已知的,不管参考摄像机是保持是静止的还是作为单元一起移动。特定的层级、层和/或范围可能有所不同,这取决于特定的实施方式。
在各种实施例中,可移动的可移动摄像机122和124可各自在其自己的单独层级或层中操作,和/或在整个环境700中的共享层级或层中操作,这取决于任一摄像机122和124正在捕获的场景中的特定场景和动作。例如,在各种实施例中,可移动摄像机122和124可以在彼此相同的实质层或层级上操作,并且任一可移动摄像机122和124可以独立地移动到另一层或层级。在各种实施例中,可移动摄像机122和124中的任何一个或多个可以在与诸如摄像机112至118的其他摄像机相同的实质层上操作。
参考图1和图2两者,在各种实施例中,摄像机112至118可以捕获参考点的各种组合以用于校准目的。在各种实施例中,用于校准的参考点可以根据本文所述的与图6的参考点602、604和606的组600相关联的实施例来实施。
摄像机112至118还可捕获与相应的摄像机112至118相关联的参考点132至138的任何组合,还可包括环境100中的其他已知的参考点。为了便于说明,示出了一组4个参考摄像机112至118,环境100中可以存在任意数量的摄像机,并附有相应的参考点。照此,环境100中的任何一个或多个摄像机可以基于环境100中的已捕获的一组已知的参考点计算其自身在环境100中的位置。系统102然后可以基于在一个或多个图像中捕获的一个或多个摄像机的相应参考点来校准一个或多个摄像机。一旦被校准,每个摄像机准确地定位视场中的参考点的方位。
如本文所指示,在各种实施例中,给定的参考摄像机的视场一般较宽。视场也可以是可调节的且配置有更宽或更窄的视场。特定的视场可能有所不同,并将取决于特定的实施方式。虽然给定的可移动摄像机的视场通常比参考摄像机的视场窄,但是给定的可移动摄像机的视场也可调节,并且根据特定的实施方式配置有更宽或更窄的视场。如本文所指示,可移动摄像机被配置为跟随环境100中的动作,这可能涉及跟随一个或多个演员(主演等)。此外,诸如摄像机122和124的任何给定的摄像机可被分离以跟随不同的移动对象(例如,演员、主演、车辆、动物等)。
在各种实施例中,诸如摄像机122和124的两个或更多个可移动摄像机可以跟随诸如主演的给定的移动对象。虽然所有参考和可移动摄像机都能够变焦和摇摄,但是摄像机112和118通常在多个场景上保持恒定的配置,而摄像机122和124通常经常改变配置,包括变焦、摇摄等,以便紧密地跟随和捕获与诸如主演的目标移动对象相关联的细节、参考点等。
在各种实施例中,具有捕获更多参考点的更多摄像机优化摄像机112至118的位置和方位或取向的计算,因为更多数据可用于系统102。在各种实施例中,系统102基于摄像机112至118的相应的参考点132至138计算摄像机112至118的位置和方位或取向。在各种实施例中,给定的对象(例如,摄像机、参考标记等)的方位可包括其相对于环境中的其他对象的取向。
如本文所述的其他示例实施例中所描述的,摄像机112至118中的每个摄像机捕获已知的参考点集的至少一个图像。如上面所指示的以及下面更详细描述的,图6的棒600可用于实施此类参考点集。例如,在校准之前,人可以输入实况动作集并将该参考点集放置在摄像机112至118的视场中的位置中。在各种实施例中,在整个校准过程中,该参考点集保持在相对于参考摄像机的预定的或已知的方位中。摄像机112至118然后各自捕获参考点的视频或一个或多个图像。系统102然后通过计算每对参考点之间的纵横比来执行摄像机112至118的校准,并且基于纵横比计算摄像机112至118的位置和取向。所计算的方位包括摄像机112至118在实况动作场景或集合的物理空间中的绝对位置坐标。系统102计算空间中的正确位置、正确比例和正确对准。
在各种实施例中,摄像机112至118定位在环境100中的四个角落或方位处。在一些实施例中,给定的摄像机的坐标可以与给定的摄像机的镜头的光学中心相关联并被校准到该光学中心。与坐标相关联的给定的摄像机的实际部分可能有所不同,并将取决于特定的实施方式。可移动的摄像机122和124可以位于或可以重新定位到环境100中的任何特定的位置。此外,系统102在计算中使用的特定的坐标系(例如,笛卡尔、极坐标等)可能有所不同,并将取决于特定的实施方式。
在一些实施例中,系统102可以按特定的顺序校准摄像机。例如,系统102可以首先校准两个摄像机,诸如在其视场中具有良好角度和重叠的摄像机112和114。系统102可以计算摄像机从一个到另一个的相对位置和取向。系统102然后可以依次校准诸如摄像机116和118的其他摄像机。在一些实施例中,系统102可以以任何给定的对开始并继续逐对地校准摄像机。该技术是有益的,因为任何一个或多个摄像机都可以添加到实况动作集上的整组摄像机中。此类添加的摄像机随后可以基于现有摄像机的校准进行校准。
本文所述的实施例提供各种益处。例如,如果摄像机需要经常重新校准,系统102可以快速校准任何已经校准的摄像机或新添加或移动的摄像机,以基于现有校准的摄像机进行校准。这为在实况影片集或舞台上拍摄节省了宝贵的设置时间。
在各种实施例中,除了系统102基于特定的参考点集来校准摄像机112至118之外,系统102还可以基于附接到摄像机112至118的诸如参考点132至138的其他已知的参考点来校准摄像机112至118。例如,如果系统102已经计算了参考点136和138,以及环境100中的一个或多个其他已知的参考点的相对位置,则系统102可以使用相关联的纵横比基于由摄像机112和114捕获的那些参考点来校准摄像机112和114。
在一些实施例中,系统102还可以利用每个摄像机中的一个或多个惯性测量单元(IMU)传感器来估计每个摄像机的位置和取向以补充校准信息。IMU传感器可以包括磁力计、加速计等。相关联的IMU测量结合相关联的纵横比测量帮助系统102计算摄像机112至118的准确取向。
这些附加技术在优化摄像机112至118的校准方面是有益的。通过利用不同的校准技术,尽管参考点可能被遮挡,且照明条件不同,系统102仍能准确校准不同摄像机的位置和取向。
本文所述的实施例提供各种益处。例如,实施例使用于电影作品的舞台组能够使用更少的摄像机(例如,8个摄像机而不是60个摄像机),因为诸如可移动摄像机122和124的可移动摄像机能够在多个位置捕获包括图像的视频。可移动摄像机122和124能够跟随诸如主演的目标对象,同时避免遮挡。如本文更详细描述的,系统102基于参考摄像机112至118的位置计算可移动摄像机122和124的位置。照此,即使可移动摄像机122和124经常移动和改变位置,系统102也不断地计算摄像机122和124的位置和取向。照此,需要更少的摄像机。摄像机越少,摄制组就越小,这就大大降低了成本。摄像机越少,硬件装置也就越少,这大大降低了成本和设置时间。
图3是根据一些实施例的用于使用靶标校准实况动作场景中的摄像机的示例流程图。参照图1、图2和图3,在方框302处启动方法,其中诸如系统102的系统配置诸如摄像机112至118的多个参考摄像机以观察图1的诸如环境100的实况动作场景的至少一部分。在各种实施例中,每个参考摄像机观察实况动作场景的一个或多个部分,其中每个参考摄像机捕获并存储实况动作场景的图像、图像系列和/或视频,包括捕获并存储此类图像和/或视频中的参考标记。如本文更详细描述的,在各种实施例中,参考摄像机112至118经配置以观察位于实况动作场景中的至少三个已知的参考点,并且观察与具有无约束运动的一个或多个可移动摄像机相关联的一个或多个参考点。如本文所指示,在各种实施例中,参考摄像机集112至118中的每个参考摄像机位于相对于实况动作场景中的一个或多个其他参考摄像机的已知的位置和方位处。此外,在各种实施例中,每个参考摄像机112至118安装在一个或多个刚性结构上,诸如三脚架。如本文所指示,摄像机112至118位于具有宽视场的环境100的各个点处,以便捕获环境100的各种不同的视角。
在方框304,系统102配置诸如可移动摄像机122和124的一个或多个移动摄像机或可移动摄像机以观察参考摄像机112至118中的一个或多个也观察的实况动作场景的一个或多个部分中的一个或多个可移动对象或移动对象。在各种实施例中,每个可移动摄像机观察实况动作场景的一个或多个部分,其中每个可移动摄像机捕获并存储实况动作场景的图像、图像系列和/或视频,包括捕获并存储此类图像和/或视频中的参考标记。在各种实施例中,可移动摄像机122和124具有无约束运动,并被配置为观察实况动作场景中的一个或多个移动对象,并观察与参考摄像机相关联的至少三个已知的参考点。在各种实施例中,可移动对象是移动对象,其中它们可以从实况动作场景中的一个位置移动到实况动作场景中的另一位置。例如,给定的移动对象可以是主演、运送主演的车辆等,在实况动作场景中可以从一个位置到另一个位置。如本文所指示,在各种实施例中,每个可移动摄像机是可移动的,其中每个可移动摄像机跟随实况动作场景中的动作。在各种实施例中,给定的可移动摄像机可以与可移动设备相关联并安装在其上。例如,在各种实施例中,每个可移动摄像机可以与诸如靶标的可移动车辆相关联并安装其上,如图1和图2所示,其中可移动摄像机122和124附接到相应的靶标126和128。可移动设备的特定的类型可能有所不同,这取决于特定的实施方式。例如,在各种实施例中,可移动摄像机122和124和/或其他可移动摄像机可以附接到轨道或轮子上的移动平台。在各种实施例中,每个可移动摄像机可以与诸如汽车、轨道上的火车车厢等的可移动车辆相关联并安装在其上。在各种实施例中,每个可移动摄像机可以与摄像机稳定器支架、吊杆等相关联并安装在其上,并且可以手提。特定的移动方式可能有所不同,并将取决于特定的实施方式。
如本文所指示,在各种实施例中,实况动作场景中的移动对象的至少一个移动对象是诸如图1和图2中所示的人130的人,例如可以是主演。在各种实施例中,可移动摄像机122和124被配置为捕获环境100中的对象,诸如人120。可移动摄像机122和124被配置为捕获人130的细节,包括诸如参考点140的任何一个或多个参考点。可移动摄像机122和124被配置为包括变焦、摇摄等的自调节,以便捕获此类细节。
在方框306,系统102获得或接收与诸如可移动摄像机122和124的一个或多个可移动摄像机相关联的参考点数据。在各种实施例中,参考点数据可以与诸如参考摄像机112至118的一个或多个参考摄像机相关联。在各种实施例中,参考点数据基于位于实况动作场景中的一个或多个参考点,其中该一个或多个参考点由可移动摄像机捕获。在各种实施例中,参考点数据可以基于联接到一个或多个参考摄像机的参考点。在各种实施例中,参考点数据基于实况动作场景中的至少三个已知的参考点,以及与一个或多个可移动摄像机相关联的一个或多个参考点。例如,在各种实施例中,参考点数据可以基于联接到可移动摄像机122和124的参考点。如上文所指示,在各种实施例中,诸如参考点132至138的一个或多个已知的参考点中的至少部分或一些联接到一个或多个参考摄像机112至118的至少部分。
在各种实施例中,参考点数据基于至少三个已知的参考点。此类三个已知的参考点可包括例如附接到图1的相应的参考摄像机112至118的参考点132至138中的一个或多个,位于实况动作场景中的任何一个或多个其他已知的参考点(诸如图6的棒600的任何一个或多个参考点602、604和606)及其任何组合。在各种实施例中,系统102基于参考点数据或其组合计算至少摄像机902和/或904的位置和取向。此外,在各种实施例中,实况动作场景中的参考点的至少部分(例如,子集)联接到一个或多个移动对象,诸如人130。本文详细描述了涉及参考点数据的进一步的示例实施例。
在方框308,系统102基于参考点数据中的一个或多个和参考摄像机112至118中的一个或多个的位置计算每个可移动摄像机的位置和取向。在各种实施例中,当可移动摄像机正在捕获实况动作场景的镜头时,系统102实时地计算可移动摄像机的位置和取向。如本文更详细描述的,应注意一旦系统102计算参考摄像机112至118中的一个或多个的位置和取向,系统102就可以基于由可移动摄像机122和124捕获的已知的参考点计算可移动摄像机122和124的位置。如本文更详细描述的,系统102以与计算参考摄像机112至118的位置和取向类似的方式计算可移动摄像机122和124的位置和取向。在各种实施例中,参考点数据可以包括一个或多个参考点132至138中的一个或多个的位置。在各种实施例中,系统102基于参考点数据和/或一个或多个参考摄像机112至118的一个或多个位置计算每个可移动摄像机的位置和取向。
虽然步骤、操作或计算可以以特定的顺序呈现,但是在特定的实施方式中可以改变顺序。也可能有其他的步骤的排序,这取决于特定的实施方式。在一些特定的实施方式中,本说明书中按顺序示出的多个步骤可以同时执行。此外,一些实施方式可以不具有所示出的所有步骤,和/或可以具有代替或除本文示出的那些步骤之外的其他步骤。
在特定的示例实施例中,系统102基于与参考摄像机112至118相关联的参考点数据并基于本文所述的任何一个或多个技术计算参考摄像机112至118中的任何一个或多个的位置和取向。系统102然后基于与相应的可移动摄像机122和/或可移动摄像机124相关联的参考点数据并基于参考摄像机112至118中的一个或多个的位置计算可移动摄像机122和/或可移动摄像机124的位置。换言之,系统102基于一个或多个参考摄像机112至118的位置计算可移动摄像机122和124中的一个或多个的位置。
在一些情况中,具有摄像机的一个或多个靶标的位置可能在某个时间点上是已知的。然而,在随后的时间点,给定的靶标可能飞往新位置,在那里靶标的位置变得未知或不确定。例如,如果靶标飞入新的区域(例如,从洞穴的外部飞到内部、室内区域、新的室内区域等),就可能发生这种情况。因此,靶标相对于一个或多个相关联的已知的参考点(例如,在洞穴外)的位置变得未知或不确定。在这种情况下,在各种实施例中,附接到靶标的摄像机可以捕获新区域(例如,洞穴中)中的新的已知的参考点。在各种实施例中,摄像机观察/捕获与新的已知的参考点相关联的至少三个已知的参考点。系统102然后可以基于由摄像机捕获的那些新的已知的参考点处理新的参考点数据。在各种实施例中,参考点数据基于至少三个已知的参考点。系统102处理参考点数据以重新校准,包括根据本文所述的实施例(例如,基于参考点数据和已知的参考点的位置)计算靶标上的摄像机相对于新关联的参考点的位置和取向。
图4是根据一些实施例的用于校准实况动作场景中的摄像机的示例环境400的框图。示出了系统102,摄像机402、404、406和408,以及参考点410。摄像机402至408中的任何一个或多个可用于表示本文所述的实施例中的摄像机112至118中的任何一个或多个。
如下面更详细描述的,系统102从诸如摄像机402至408的多个摄像机接收包括图像的视频。如本文更详细描述的,系统102利用摄像机402至408定位和跟踪诸如实况动作场景或集合上的参考标记的参考点。在各种示例实施例中,参考点也可以称为参考标记。本文所述的实施例校准摄像机402至408,这提高了系统102定位和跟踪参考点的精度。
摄像机402至408中的每一个具有使每个摄像机能够捕获实况动作场景中的对象的视频和/或图像的视场(由虚线指示)。在各种实施例中,摄像机402至408在其校准点处是静止的,直到它们需要为随后的场景改变而移动。摄像机402至408可附接到三脚架或其他摄像机稳定装备。在各种实施例中,摄像机402至408的方位和取向可能有所不同,并将取决于特定的实施方式。
在各种实施例中,如果移动特定的摄像机(例如,在该集合的另一位置中使用、在另一集合中使用等),则该摄像机然后可重新捕获参考点410和/或捕获并收集其他参考点。系统102然后可以重新计算摄像机的新方位。
摄像机402至408可以是任何合适的摄像机,包括专用于跟踪参考点(例如,有源参考标记、无源参考标记等)的摄像机。此类摄像机还可以包括红外摄像机和其他数字摄像机。在参考点是有源参考标记的一些实施例中,参考标记发射红外光。至少一些摄像机可以具有窄通滤波器以检测和捕获红外光,系统102分析该红外光以计算有源参考标记的位置。此类有源参考标记可以用来实施本文所述的任何一个或多个参考点。
在各种实施例中,对象可包括场景道具和演员,并且这些对象可具有附接到其的诸如参考点112的参考点,用于跟踪实况动作跟踪目的。在各种实施例中,参考点可以是系统102使用任何合适的方法和技术识别的任何类型的参考或方位。此类技术可能有所不同,并且所使用的特定的技术将取决于特定的实施方式。例如,系统102可以使用涉及图像识别、模式识别、参考标记、射频识别(RFID)、无线信标等的技术。
如本文更详细描述的,系统102致使摄像机402至408将相应的射线412、414、416和418投射到空间中并穿过参考点410。为了便于说明,如上面所指示,示出了一个参考点410,用于校准摄像机104至110。可以存在用于校准摄像机104至110的任意数量的参考点。给定的实况动作场景中的参考点的特定的数量可能有所不同,并将取决于实施方式。例如,在给定的实况动作场景上可能有数十或数百个参考点。在一些实施例中,系统102可以致使摄像机402至408还将其他相应的射线投射到空间中并穿过其他参考点。
在各种实施例中,参考点数据基于实况动作场景中的至少三个参考点。在各种实施例中,三个参考点相对于彼此是已知的。在一些实施例中,三个参考点可以是静止的。在各种实施例中,三个参考点以预定的模式布置。下面结合图6和图7描述涉及使用以预定的模式布置的多个参考点校准摄像机的示例实施例。
在各种实施例中,系统102将给定的图像中的每个参考点与来自不同的摄像机集中的每个摄像机的射线相关联,不同的摄像机捕获其相应的图像中的此类参考点。系统102搜索并识别射线412至418的交叉点以识别特定的参考点。在各种实施例中,系统102分析与每个交叉点相关联的信息以识别相应的参考点、与参考点相交的相应的射线,以及与此类射线相关联的相应的摄像机。
射线412至418也可以称为核线412至418。每个核线412至418是核平面中的直线交叉点,其中每个核线412至418表示相应的摄像机的不同视点。在各种情况中,可能有捕获数十或数百个参考点的数十个摄像机。在各种情况中,系统102可以执行数千或数百万个计算以分析与实况动作场景中的不同的参考点相关联的不同的交叉点。
当系统102基于核线412至418定位诸如参考点410的不同的参考点时,系统102计算或求解摄像机402至408中的每一个的3D坐标和取向。此类对极几何描述了不同的摄像机104至110之间的关系,包括它们相应的视点。
为了便于说明,示出了一个系统102和四个摄像机402至408。系统102可以表示多个系统,并且摄像机402至408可以表示任意数量的摄像机。在其他实施方式中,环境100可以不具有所示出的所有部件,和/或可以具有包括代替或除本文示出的其他类型的元件之外的其他元件。
虽然系统102执行本文所述的实施例,但是在其他实施例中,与系统102相关联的任何合适的部件或部件的组合,或者与系统102相关联的任何合适的一个或多个处理器可以便于执行本文所述的实施例。本文更详细地描述了涉及用于校准摄像机402至408的环境100的各种示例实施例。
在各种实施例中,图像由摄像机在预定的时间帧内拍摄。例如,在一些实施例中,预定的时间帧可以是预定的小时数(例如,1小时、10小时、24小时等)或预定的天数(例如,1天、7天、365天等)。在一些实施例中,预定的时间帧可以基于预定的条件。例如,条件可以是正被校准的摄像机自校准过程开始以来没有移动(例如,改变位置和取向)。例如,只要摄像机没有移动,摄像机就可以继续拍摄用于校准的图像。如果并且当给定的摄像机移动时,摄像机可继续捕获图像,但系统102将基于摄像机的新方位或当前方位在新校准中使用此类图像。
在一些实施例中,系统102实时地执行本文所述的实施例。在一些实施例中,系统102不需要在捕获图像的同时执行与本文所述的实施例相关联的一些步骤。这是因为在校准完成之前,处理和工作流程步骤可能有一些延迟。
图5是根据一些实施例的包括由实况动作场景中的摄像机捕获的参考点的示例情况500的框图。示出了摄像机402、404、406和408,每个摄像机捕获参考点410的相应的图像502、504、506和508。虽然示出了一个参考点410,但是由给定的摄像机捕获的参考点的数量可能有所不同,并且该数量将取决于特定的实施方式。
如图所示,图像502至508示出了不同的图像帧中的不同的位置中的参考点410,这取决于参考点410相对于物理实况动作场景中的相应的摄像机的位置。在各种实施例中,系统102将图像502至508发送到性能捕获系统,该性能捕获系统可以远离系统102或与系统102集成。
在各种实施例中,摄像机402至408具有用于将图像中的三维(3D)中的参考点映射到二维(2D)点的已知的投影矩阵。在各种实施例中,系统102从实况动作场景中的3D中识别图像帧中的2D中的参考点410。然后,系统102致使每个摄像机将射线投射到空间中,并穿过参考点410和/或图像中的其他参考点。照此,所有摄像机在其相应的2D图像帧中的不同的位置看到相同的参考点410。如图所示,摄像机402至408看到相同的参考点410,但是在其相应的图像帧中处于不同的方位。由不同的摄像机402至408投射的光线在3D空间中的参考点410处相交,并且系统102计算这些交叉点。
如上面所指示,虽然本文在单个参考点的上下文中描述了一些实施例,但是这些实施例和其他实施例也适用于多个参考点。例如,在各种实施例中,每个摄像机可以捕获附接到棒的三个参考点。系统102可以将每个参考点单独分析,也可以将它们作为一组一起分析,包括它们彼此之间的相对位置。本文更详细地描述此类实施例的其他实例。
图6是根据一些实施例的实况动作场景中的参考点602、604和606的组600的框图,其中参考点602、604和606布置在直线中。如图所示,组600包括参考点602、604和606。在各种实施例中,参考点602、604和606形成直线。
在各种实施例中,参考点602、604和606附接到刚性形式。例如,在所示的示例实施例中,参考点602、604和606附接到相应的刚性臂608和610,这些刚性臂形成棒的直线。照此,参考点的组600也可以称为棒600。虽然示出了三个参考点602、604和606,但是棒600上的参考点的数量可能有所不同,并且该数量将取决于特定的实施方式。例如,可以有附接到棒600的四个参考点或五个参考点等。
在各种实施例中,棒600的参考点602、604和606是已知的或预定的,并且它们彼此之间的距离是不变的或预定的/已知的和/或不改变的。换言之,棒600的绝对长度是已知的,包括距离D1和D2。在所示的实例中,在各种实施例中,棒600的参考点602、604和606是等距的,其中参考点602和参考点604之间的距离D1基本上等于参考点604和参考点606之间的距离D2。在各种实施例中,参考点602、604和606之间的距离不必是等距的。例如,距离D1和距离D2可以是不同的,只要距离D1和D2之间的比率是已知的,或能够使用棒600的已知的长度来确定。
在一些实施例中,系统102从摄像机612和614收集数千帧,用于这些摄像机的一次校准。在一些实施例中,系统102可以在实况动作场景中的不同位置和取向处分析棒600的参考点,以便优化校准测量。在各种实施例中,不管相对于给定的摄像机的取向,系统102通过具有至少三个参考标记602至606准确地计算棒600的取向。
在各种实施例中,系统102基于参考点数据且基于诸如三角测量、三边测量等的一种或多种定位技术计算摄像机612和614的位置和取向。在系统应用三角测量技术的各种实施例中,系统102定位一个或多个图像中的参考点。系统102然后计算一个或多个图像中的多个参考点的纵横比。在系统102分析棒上的一组三个参考点的实施例中。下面结合图4描述涉及具有参考点的棒的示例实施例。在各种实施例中,系统102计算一个或多个图像中的三个参考点的纵横比。系统102然后基于该纵横比对每个摄像机进行三角测量。
图7是根据一些实施例的包括由实况动作场景中的摄像机捕获的图像中的参考点的示例情况700的框图。示出了摄像机612和614,每个摄像机捕获参考点602、604和606的相应的图像702和704。
在该示例实施例中,尽管距离D1和D2在3D空间中是等距的,但距离D1和D2形成2D图像中的纵横比,其中距离D1可能不同于2D图像中的距离D2,这取决于给定的摄像机的视点。例如,图像702和704示出了不同图像帧中的不同位置中的参考点602至606,这取决于参考602至606相对于物理实况动作场景中的相应的摄像机612或614的位置。如图所示,对比图像702和704,相比于在图像704中的相对位置,参考点602至606在图像702中彼此相距更远,在图像704中可能由于摄像机角度出现缩短。此外,该组参考点602至606的方位更多地定位在图像702的右边部分,并且更多地定位在图像704的中心部分。
在各种实施例中,系统102计算每一对参考点602至606之间的距离,包括所有组合。在一些实施例中,系统102生成每个参考点到棒600的每隔一个参考点之间的距离的曲线图。系统102计算或确定棒600的参考点中的每一个的位置以及棒600的参考点的取向。基于参考点602至606的位置和取向,系统102计算摄像机612和614以及捕获参考点602至606的图像的任何其他摄像机的位置和取向。
在各种实施例中,系统102将图像702和704发送到性能捕获系统,该性能捕获系统可以远离系统102或与系统102集成。在各种实施例中,系统102基于距离D1和D2的纵横比计算或确定每个摄像机(例如,摄像机612、摄像机614等)的位置和取向。
虽然组600的参考点被示为布置在直线上,但是参考点的特定的布置和相对方位可能有所不同,并将取决于特定的实施方式。例如,用于校准摄像机的给定的一组参考点可以形成参考点簇,其中参考点附接到具有三维形状的刚性形式。照此,参考点可以形成三维模式。
图8是根据一些实施方式的用于使用靶标校准实况动作场景中的摄像机的示例流程图。参照图1和图8,在方框802处启动方法,其中诸如系统102的系统配置多个参考摄像机以观察位于实况动作场景中的至少三个已知的参考点,并且观察与具有无约束运动的一个或多个移动摄像机相关联的一个或多个参考点。
在方框804,系统102配置一个或多个移动摄像机以观察实况动作场景中的一个或多个移动对象。
在方框806,系统102接收与参考摄像机中的一个或多个相关联的参考点数据。在各种实施例中,参考点数据基于位于实况动作场景中的至少三个已知的参考点,并且基于与一个或多个移动摄像机相关联的一个或多个参考点。
在方框808,系统102基于参考点数据中的一个或多个和参考摄像机中的一个或多个的一个或多个位置计算移动摄像机中的每一个的位置和取向。
在各种实施例中,参考摄像机可以可视地检测靶标上的参考点和/或安装在悬停在特定的位置的靶标上的摄像机上的参考点。根据本文所述的各种实施例,系统102计算实况动作场景中的参考摄像机的位置和取向或方位,以及它们相对于彼此的位置和取向。在各种实施例中,参考摄像机是立体的。基于相关联的参考点数据,系统102可以计算靶标上的可移动摄像机相对于参考摄像机的已知的位置的位置。系统102可以指导靶标去哪里以及何时去。因为系统102可以计算可移动摄像机的位置,所以可移动摄像机可以放大给定的对象而不用担心失去其他摄像机的跟踪。这是因为系统102继续使用参考摄像机跟踪可移动摄像机。
在一些实施例中,系统102可以计算给定的靶标的位置,或者基于先前已知的位置和来自该位置的后续移动(例如,行进的距离和方向等)估计靶标的位置。系统102还可以基于由靶标捕获的任何新的参考点获得任何新的参考点数据,并且使用此类参考点数据来改进靶标位置的估计。
虽然步骤、操作或计算可以以特定的顺序呈现,但是在特定的实施方式中可以改变顺序。也可能有其他的步骤的排序,这取决于特定的实施方式。在一些特定的实施方式中,本说明书中按顺序示出的多个步骤可以同时执行。此外,一些实施方式可以不具有所示出的所有步骤,和/或可以具有代替或除本文示出的那些步骤之外的其他步骤。
图9是根据一些实施例的示例组件900的框图,包括联接到诸如靶标906的可移动设备的摄像机902和904。示出了联接到摄像机902的参考点907、联接到摄像机904的参考点908,以及联接到靶标906的参考点909。虽然在诸如靶标906的靶标的上下文中描述了一些实施例,但这些实施例和其他实施例也适用于携带摄像机以跟随实况动作场景的动作的其他可移动设备(例如,车辆、靶标等)。设备或组件900适用于本文所述的其他实施例。
在各种实施例中,通过使至少两个可移动摄像机联接到单个靶标,诸如摄像机902的一个摄像机可以被配置为捕获附接到诸如主演的移动对象的一个或多个参考点。换言之,摄像机902被配置为跟随场景的动作,包括被配置为观察实况动作场景中的一个或多个移动对象(例如,演员、可移动车辆等)。摄像机902也可以称为捕获摄像机902。诸如摄像机904的另一摄像机可以被配置为观察位于实况动作场景中的至少三个已知的参考点。摄像机904也可以称为校准摄像机904。在各种实施例中,摄像机904可以被配置为捕获附接到另一摄像机的一个或多个参考点,诸如附接到图1和图2的摄像机中的任何一个或多个的参考点。此类摄像机可以包括附接到其他靶标的可移动摄像机和/或参考摄像机(例如,在地面上、在平台上等)。摄像机904可以被配置为也捕获实况动作场景中的其他参考点,诸如图6的棒600的参考点等。
在各种实施例中,每个摄像机902和904可以被独立配置,使得摄像机902和904彼此独立操作。在各种实施例中,摄像机902和904具有不同的视场。例如,摄像机902可以被配置为窄视场以聚焦在诸如人或主演的移动对象的细节上。此外,摄像机904可以被配置为宽视场以捕获更多的参考点,诸如与另一靶标上的另一可移动摄像机相关联的参考点,以及实况动作场景中的其他参考点。
图10是根据一些实施方式的用于使用靶标校准实况动作场景中的摄像机的示例流程图。参照图1、图9和图10,在方框1002处启动方法,其中诸如系统102的系统配置诸如捕获摄像机902的第一摄像机以观察实况动作场景中的一个或多个移动对象。
在方框1004,系统102配置诸如校准摄像机904的第二摄像机以观察位于实况动作场景中的至少三个已知的参考点。
在方框1006,系统102接收与第二摄像机相关联的参考点数据。在各种实施例中,参考点数据基于至少三个已知的参考点。例如,三个已知的参考点可以包括图6的棒600的一个或多个参考点602、604和606,附接到图1的相应的参考摄像机112、114、116和118的参考点132、134、136和138中的一个或多个,位于实况动作场景中的一个或多个其他已知的参考点,以及其任何组合。
在方框1008,系统102基于参考点数据计算第一摄像机和/或第二摄像机的位置和取向。
虽然步骤、操作或计算可以以特定的顺序呈现,但是在特定的实施方式中可以改变顺序。也可能有其他的步骤的排序,这取决于特定的实施方式。在一些特定的实施方式中,本说明书中按顺序示出的多个步骤可以同时执行。此外,一些实施方式可以不具有所示出的所有步骤,和/或可以具有代替或除本文示出的那些步骤之外的其他步骤。
图11是可用于本文所述的实施例的示例计算机系统1100的框图。计算机系统1100仅仅是说明性的,并不旨在限制权利要求的范围。本领域的普通技术人员可以识别其他变化、修改和替代方案。例如,计算机系统1100可以在具有与一个或多个服务器系统通信的一个或多个客户端装置的分布式客户端-服务器配置中实施。
在一个示例实施方式中,计算机系统1100包括显示装置(诸如监视器1110、计算机1120)、数据输入接口1130(诸如键盘、触摸装置等)、用户输入装置1140、网络通信接口1150等。用户输入装置1140通常被实现为计算机鼠标、跟踪球、跟踪板、无线遥控器、平板电脑、触摸屏等。此外,用户输入装置1140通常允许用户选择和操作例如出现在监视器1110上的对象、图标、文本、角色等。
网络接口1150通常包括以太网卡、调制解调器(电话、卫星、电缆、ISDN)、(异步)数字用户线(DSL)单元等。此外,网络接口1150可以物理地集成在计算机1120的主板上,可以是诸如软DSL等的软件程序。
计算机系统1100还可以包括能够通过诸如HTTP、TCP/IP、RTP/RTSP、协议、无线应用协议(WAP)、IEEE 902.11协议等的通信网络1152进行通信的软件。除了和/或替代地,也可以使用其他通信软件和传输协议,例如IPX、UDP等。通信网络1152可以包括局域网、广域网、无线网络、内联网、因特网、专用网络、公共网络、交换网络或任何其他合适的通信网络,例如云网络。通信网络1152可以包括许多互连的计算机系统和任何合适的通信链路,诸如硬线链路、光链路、卫星或其他无线通信链路,诸如BLUETOOTHTM、WIFI、波传播链路或用于信息通信的任何其他合适的机制。例如,通信网络1152可以经由诸如无线收发器1154的基站与诸如可移动电话、平板电脑等的一个或多个可移动无线装置1156A-N进行通信。
计算机1120通常包括常见的计算机部件(诸如处理器1160),以及存储器存储装置,诸如存储器1170(例如,随机存取存储器(RAM))、存储介质1180,以及互连上述部件的系统总线1190。在一个实施例中,计算机1120是具有多个微处理器、图形处理单元(GPU)等的PC兼容计算机。虽然示出了计算机,但是对于本领域的普通技术人员来说显而易见的是,许多其他硬件和软件配置适用于本发明。存储器1170和存储介质1180是用于存储数据、音频/视频文件、计算机程序等的有形非暂时性计算机可读介质的实例。其他类型的有形介质包括磁盘驱动器、固态驱动器、软盘、光存储介质和条形码,半导体存储器(诸如闪存驱动器、闪存存储器、随机存取或只读类型的存储器、电池支持的易失性存储器、联网存储装置、云存储等)。
图12是根据一些实施例的示例视觉内容生成系统1200的框图,该示例视觉内容生成系统1200可用于生成静止图像和/或图像的视频序列形式的影像。视觉内容生成系统1200可以生成实况动作场景、计算机生成的场景或其组合的影像。在实际的系统中,向用户提供了工具,允许他们在必要时以高层级和低层级指定进入该影像的内容。例如,用户可以是动画艺术家,并可以使用视觉内容生成系统1200来捕获在声音舞台上实况表演的两个人类演员之间的互动,并且用计算机生成的拟人化的非人类来替换人类演员中的一个,该计算机生成的拟人化的非人类以模仿所替换的人类演员的移动和情态主义的方式来表现,并且然后在计算机生成的第三计算机生成的角色和背景场景元素中添加,所有这些都是为了讲述所需的故事或生成所需的影像。
由视觉内容生成系统1200输出的静止图像可以在计算机存储器中表示为像素阵列,诸如像素颜色值的二维阵列,每个像素颜色值与具有二维图像阵列中的方位的像素相关联。像素颜色值可以由每像素的三个或更多个(或更少)颜色值来表示,诸如红色值、绿色值和蓝色值(例如,以RGB格式)。像素颜色值的此类二维阵列的尺寸可以对应于优选的和/或标准的显示方案,诸如1920像素列×1280像素行。图像可能以压缩格式存储,也可能不以压缩格式存储,但无论哪种方式,所需的图像都可以表示为像素颜色值的二维阵列。在另一变化中,图像由用于三维呈现的一对立体图像表示,并且在其他变化中,图像输出的一些或全部可以表示三维影像而不仅仅是二维视图。
所存储的视频序列可以包括诸如上述静止图像的多个图像,但是其中多个图像中的每个图像具有定时序列中的位置,并且所存储的视频序列被布置为使得当在由定时序列指示的时间按顺序显示每个图像时,显示器呈现看起来正在移动和/或改变的影像。在一个呈现中,多个图像中的每个图像是具有指定帧号的视频帧,该指定帧号对应于从视频序列开始播放时到该指定帧被显示所经过的时间量。可以使用帧速率来描述每单位时间显示所存储的视频序列的帧数。示例视频序列可以包括每秒24帧(24FPS)、50FPS、80FPS或其他帧速率。在一些实施例中,帧是交错的或以其他方式呈现以用于显示,但为了描述清楚,在一些实例中,假定视频帧具有一个指定的显示时间,并且应了解其他变化也是有可能的。
创建视频序列的一种方法是简单地使用视频摄像机来记录实况动作场景,即物理上发生并可由视频摄像机记录的事件。被记录的事件可以是被解释为被观看的事件(诸如看到两个人类演员互相交谈),和/或可以包括由于聪明的摄像机操作而不同解释的事件(诸如在舞台周围移动演员以使一个演员看起来大于另一个演员,尽管演员实际上具有相似的体型,或者将微型对象与其他微型对象一起使用以便被解释为包含生命大小的对象的场景)。
创建用于讲故事或其他目的的视频序列通常要求不能由现场演员创建的场景,诸如说话的树、拟人化的对象、太空战斗等。此类视频序列可以在计算上生成,而不是从实况场景捕获光。在一些情况下,如在计算机动画特写影片的情况下,可以在计算上生成整个视频序列。在一些视频序列中,希望具有一些计算机生成的影像和一些实况动作,或者将二者仔细合并。
虽然计算机生成的影像可以通过手动指定每个帧中每个像素的每个颜色值来创建,但是这可能太麻烦而不实用。因此,创建者使用各种工具来指定更高层级的影像。作为实例,艺术家可以指定场景空间中的方位,诸如三维坐标系,可以指定对象和/或照明的方位,以及摄像机视点和摄像机视图平面。将所有这些作为输入,再现引擎可以计算每个帧中的每个像素值。在另一实例中,艺术家指定具有某种指定纹理的铰接的对象的方位和移动,而不是指定表示每一帧中该铰接的对象的每一像素的颜色。
在特定的实例中,再现引擎可以执行光线跟踪,其中像素颜色值是通过计算哪些对象沿着场景空间中从摄像机视点穿过摄像机视图平面的点或部分所跟踪的光线来确定的,该光线对应于该像素。例如,摄像机视图平面可以被表示为具有场景空间中的方位的矩形,该方位被划分为对应于待生成的最终图像的像素的网格。在该实例中,由场景空间中的摄像机视点和该网格中的给定的像素定义的射线首先与实心、不透明、蓝色对象相交,并且给该给定的像素分配蓝色。当然,对于现代计算机生成的影像,确定像素颜色并由此生成影像可能更复杂,因为存在照明问题、反射、内插和其他考虑。
在各种实施例中,实况动作捕获系统1202捕获在舞台1204上播放的实况场景。本文更详细地描述了实况动作捕获系统1202,但是该实况动作捕获系统1202可以包括计算机处理能力、图像处理能力、一个或多个处理器、用于存储由一个或多个处理器执行的程序指令的程序代码存储,以及用户输入装置和用户输出装置,这些并未完全示出。
在特定的实况动作捕获系统中,摄像机1206(1)和1206(2)捕获场景,而在一些系统中,可能存在捕获来自实况场景的信息的其他传感器1208(例如,红外摄像机、红外传感器、运动捕获(“mo-cap”)检测器等)。在舞台1204上,可能存在人类演员、动物演员、无生命对象、背景对象,并且可能存在诸如绿光屏1210的对象,其被设计为以此类方式在实况场景记录中被捕获,使得其容易与计算机生成的影像重叠。舞台1204还可包含用作基准的对象,诸如基准1212(1)至(3),可在捕获后用于确定对象在捕获期间的位置。实况动作场景可以由一个或多个灯照亮,诸如顶灯1214。
在捕获实况动作场景期间或之后,实况动作捕获系统1202可以将实况动作镜头输出到实况动作镜头存储1220。实况动作处理系统1222可以处理实况动作镜头以生成关于该实况动作镜头的数据并将该数据存储到实况动作元数据存储1224中。实况动作处理系统1222可以包括计算机处理能力、图像处理能力、一个或多个处理器、用于存储由一个或多个处理器执行的程序指令的程序代码存储,以及用户输入装置和用户输出装置,这些并未完全示出。实况动作处理系统1222可处理实况动作镜头以确定一帧或多帧中的对象的边界,确定实况动作场景中的对象的位置、摄像机相对于某一动作的位置、移动对象与基准之间的距离等。在通过传感器或其他手段检测到元素的情况下,元数据可以包括头顶灯1214的位置、颜色和强度,这在后处理中可能有用,以匹配计算机生成并覆盖在实况动作镜头上的对象上的计算机生成的照明。实况动作处理系统1222可以自主地操作,可能基于预定的程序指令,以在接收和输入实况动作镜头时生成和输出实况动作元数据。实况动作镜头可以是摄像机捕获的数据以及来自其他传感器的数据。
动画创建系统1230是视觉内容生成系统1200的另一部分。动画创建系统1230可以包括计算机处理能力、图像处理能力、一个或多个处理器、用于存储由一个或多个处理器执行的程序指令的程序代码存储,以及用户输入装置和用户输出装置,这些并未完全示出。动画创建系统1230可由动画艺术家、管理者和其他人使用,以编程方式和/或互动方式指定要生成的影像的细节。根据用户输入和来自数据库或其他数据源(指示为数据储存1232)的数据,动画创建系统1230可以生成表示对象(例如,马、人、球、茶壶、云、光源、纹理等)的数据并将这些数据输出到对象存储1234,生成表示场景的数据并将这些数据输出到场景描述存储1236,和/或生成表示动画序列的数据并将这些数据输出到动画序列存储1238。
场景数据可以指示对象和其他可视元素的位置、它们的参数值、照明、摄像机位置、摄像机视图平面,以及再现引擎1250可以用来再现CGI影像的其他细节。例如,场景数据可以包括在二维空间、三维空间或其他维空间(诸如2.5维空间、四分之三维、伪3D空间等)中指定的数个铰接的角色、背景对象、照明等的位置,以及摄像机视点和观看位置的位置,其中从摄像机视点和观看位置再现影像。例如,场景数据可以指示在视频的右半部分中存在红色、模糊、说话的狗,并且在视频的左半部分中存在静止的树,所有这些都由在摄像机视点上方和后方的亮点光源照亮。在一些情况下,摄像机的视点并不明确,但可以从观看视椎体确定。在要被再现为矩形视图的影像的情况下,视椎体可能是截断的棱锥。所再现的视图的其他形状是可能的,并且摄像机视图平面对于不同的形状可以是不同的。
动画创建系统1230可以是互动式的,允许用户读取动画序列、场景描述、对象细节等并对其进行编辑,可能将它们返回到存储以更新或替换现有数据。作为实例,操作者可以将对象从对象存储读入到烘焙处理器中,烘焙处理器将这些对象转换成更简单的形式,并将其作为新的或不同的对象返回到对象存储1234。例如,操作者可以读入具有数十个指定参数(可移动关节、颜色选项、纹理等)的对象,为这些参数选择一些值,然后保存烘焙对象,该烘焙对象是现在具有这些参数的固定值的简化对象。
来自数据储存1232的数据可以用于驱动对象呈现,而不必指定场景的每个细节。例如,如果艺术家正在创建在地球表面上通过的宇宙飞船的动画,而不是手动绘制或指定海岸线,则艺术家可以指定动画创建系统1230要从包含地球海岸线坐标的文件中的数据储存1232读取数据,并使用该海岸线数据生成场景的背景元素。
动画序列数据可以是用于具有可控属性的对象的控制点的数据的时间序列的形式。例如,对象可以是人形角色,该人形角色的四肢和关节以类似于典型的人类移动的方式移动。艺术家可以在高层级指定动画序列,诸如“左手在时间T1到T2上从位置(X1,Y1,Z1)移动到(X2,Y2,Z2)”,在较低层级(例如,“每帧移动肘关节2.5度”)或者甚至在非常高的层级(例如,“角色A应当沿指定的路径从点P1移动到点P2,这与针对该场景给出的物理定律一致”)。
动画场景中的动画序列可以由实况动作场景中发生的事情来指定。动画驱动器生成器1244可以读入实况动作元数据,诸如表示实况动作场景期间实况演员的身体部分的移动和方位的数据,并且生成要存储在动画序列存储1238中的对应动画参数,以用于使CGI对象动画化。这在当佩戴移动帽基准(例如,演员衣服外部的高对比度标记,演员皮肤、面部上的高可见度涂料等)时捕获人类演员的实况动作场景并且这些基准的移动由实况动作处理系统1222确定的情况下是有用的。动画驱动器生成器1244可以将该移动数据转换成铰接的CGI角色的关节如何随时间移动的规范。
再现引擎1250可以读入动画序列、场景描述和对象细节,以及再现引擎控制输入,诸如分辨率选择和一组再现参数。分辨率选择对于操作者控制再现速度和细节清晰度之间的折衷可能是有用的,因为对于电影制作者来说,在测试特定的互动或方向时,速度可能比清晰度更重要,而对于电影制作者来说,在生成用于要分发的特征影片的最终打印的数据时,清晰度可能比速度更重要。再现引擎1250可以包括计算机处理能力、图像处理能力、一个或多个处理器、用于存储由一个或多个处理器执行的程序指令的程序代码存储,以及用户输入装置和用户输出装置,这些并未完全示出。
视觉内容生成系统1200还可以包括将实况镜头与动画内容合并的合并系统1260(标记为“实况+CGI合并系统”)。可以通过从实况动作镜头存储1220中读取以获得实况动作镜头,通过从实况动作元数据存储1224中读取以获得细节,诸如在所捕获的图像中将实况动作场景中的对象从其背景中分割出来的假定分割(可能得益于绿光屏1210是实况动作场景的一部分这一事实),以及通过从再现引擎1250中获得CGI影像来获得和输入实况动作镜头。
合并系统1260还可以从用于合并/组合存储的规则集1262中读取数据。规则集中的规则的非常简单的实例可以是“从实况镜头获得包括二维像素阵列的完整图像,从再现引擎1250获得包括二维像素阵列的完整图像,并且当实况镜头中的对应像素是特定颜色的绿色时,从再现引擎1250输出每个像素是对应像素的图像,否则从实况镜头中的对应像素输出像素值”。
合并系统1260可以包括计算机处理能力、图像处理能力、一个或多个处理器、用于存储由一个或多个处理器执行的程序指令的程序代码存储,以及用户输入装置和用户输出装置,这些并未完全示出。合并系统1260可以跟随编程指令自主地操作,或者可以具有用户接口或编程接口,操作者可以通过该用户接口或编程接口控制合并过程。在一些实施例中,操作者可以指定要在合并过程中使用的参数值和/或可以指定要对合并系统1260的输出进行的特定的调整,诸如修改分割对象的边界、插入模糊以消除缺陷或添加其他效果。基于其输入,合并系统1260可以输出要存储在静态图像存储1270中的图像和/或要存储在动画/组合视频存储1272中的视频形式的图像序列。
因此,如所描述的,视觉内容生成系统1200可以使用各种部件和工具来生成将实况动作与计算机生成的动画相结合的视频,其中一些部件和工具在本文中进行了更详细的描述。虽然视觉内容生成系统1200可能对此类组合有用,但通过适当的设置,它可以用于输出完全的实况动作镜头或完全的CGI序列。代码还可以由暂时性计算机可读介质提供和/或传送,例如,诸如以通过网络传输的信号的形式的传输介质。
根据一个实施例,本文所述的技术由一个或多个通用计算系统来实施,该一个或多个通用计算系统被编程为根据固件、存储器、其他存储或其组合中的程序指令来执行技术。可以使用专用计算装置,诸如台式计算机系统、便携式计算机系统、手持装置、联网装置或并入了硬连线和/或程序逻辑的任何其他装置来实施该技术。
图13是可用于本文所述的实施例的示例计算机系统1300的框图。计算机系统1300包括用于传送信息的总线1302或其他通信机制,以及与总线1302联接用于处理信息的处理器1304。在一些实施例中,处理器1304可以是通用微处理器。
计算机系统1300还包括主存储器1306,诸如随机存取存储器(RAM)或其他动态存储装置,其联接到总线1302,用于存储信息和要由处理器1304执行的指令。主存储器1306还可以用于在要由处理器1304执行的指令的执行期间存储临时变量或其他中间信息。此类指令,当存储在处理器1304可访问的非暂时性存储介质中时,使计算机系统1300进入专用机器,该专用机器被定制以执行指令中指定的操作。在各种实施例中,指令可以包括存储器存储的指令,这些指令在由一个或多个处理器执行时致使计算机系统执行本文所述的实施例。
计算机系统1300还包括联接到总线1302的只读存储器(ROM)1308或其他静态存储装置,用于存储处理器1304的静态信息和指令。诸如磁盘或光盘的存储装置1310被提供并联接到总线1302,用于存储信息和指令。
计算机系统1300可以经由总线1302联接到显示器1312,诸如计算机监视器,用于向计算机用户显示信息。包括字母数字键和其他键的输入装置1314联接到总线1302,用于向处理器1304传送信息和命令选择。另一类型的用户输入装置是光标控制1316,诸如鼠标、跟踪球或光标方向键,用于将方向信息和命令选择传送到处理器1304并用于控制显示器1312上的光标移动。该输入装置1314通常在两个轴(第一轴(例如,x)和第二轴(例如,y))上具有两个自由度,这允许输入装置1314指定平面中的方位。
计算机系统1300可以使用定制的硬连线逻辑/一个或多个ASIC或FPGA、固件和/或程序逻辑来实施本文所述的技术,这些与计算机系统相结合,致使计算机系统1300成为专用机器或对其进行编程。根据一个实施例,本文的技术由计算机系统1300执行,以响应于处理器1304执行包含在主存储器1306中的一个或多个指令的一个或多个序列。此类指令可以从诸如存储装置1310的另一存储介质读入主存储器1306。执行主存储器1306中包含的指令序列致使处理器1304执行本文所述的处理步骤。在替代的实施例中,可以使用硬连线电路来代替软件指令或与软件指令相结合。
如本文所用,术语“存储介质”是指存储致使机器以特定的方式操作的数据和/或指令的任何非暂时性介质。此类存储介质可以包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘或磁盘,诸如存储装置1310。易失性介质包括动态存储器,诸如主存储器1306。存储介质的常见形式包括例如软盘、柔性盘、硬盘、固态驱动器、磁带或任何其他磁性数据存储介质、CD-ROM、任何其他光学数据存储介质、具有孔图案的任何物理介质、RAM、PROM、EPROM、FLASH-EPROM、NVRAM、任何其他存储器芯片或盒。
存储介质不同于传输介质,但是可以与传输介质结合使用。传输介质参与存储介质之间的信息传输。例如,传输介质包括同轴电缆、铜线和光纤,包括包括总线1302的导线。传输介质还可以采用声波或光波的形式,诸如在无线电波和红外数据传送期间产生的声波或光波。
在将一个或多个指令的一个或多个序列传送到处理器1304以便执行时可以涉及各种形式的介质。例如,指令最初可以在远程计算机的磁盘或固态驱动器上进行。远程计算机可以将指令加载到其动态存储器中,并通过网络连接发送指令。计算机系统1300本地的调制解调器或网络接口可以接收数据。总线1302将数据传送到主存储器1306,处理器1304从主存储器1306检索并执行指令。由主存储器1306接收的指令可以可选地在由处理器1304执行之前或之后存储在存储装置1310上。
计算机系统1300还包括联接到总线1302的通信接口1318。通信接口1318提供联接到连接到本地网络1322的网络链路1320的双向数据通信。例如,通信接口1318可以是综合业务数字网(“ISDN”)卡、电缆调制解调器、卫星调制解调器或调制解调器,以提供到对应类型电话线的数据通信连接。也可以实施无线链路。在任何此类实施方式中,通信接口1318发送和接收传送表示各种类型的信息的数字数据流的电、电磁或光信号。
网络链路1320通常通过一个或多个网络向其他数据装置提供数据通信。例如,网络链路1320可以通过本地网络1322提供到主计算机1324或到由因特网服务提供商(“ISP”)1326操作的数据装备的连接。ISP 1326又通过现在通常称为“因特网”1328的全球分组数据通信网络提供数据通信服务。本地网络1322和因特网1328两者都使用传送数字数据流的电、电磁或光信号。通过各种网络的信号以及网络链路1320上和通过通信接口1318的信号是传输介质的示例形式,这些信号传送去往和来自计算机系统1300的数字数据。
计算机系统1300可以通过网络、网络链路1320和通信接口1318发送消息以及接收数据,包括程序代码。在因特网实例中,服务器1330可以通过因特网1328、ISP 1326、本地网络1322和通信接口1318传输应用程序的请求代码。所接收的代码可以在其被接收时由处理器1304执行,和/或被存储在存储装置1310或其他非易失性存储中以供以后执行。
本文所述的过程的操作可以以任何合适的顺序执行,除非本文另有说明或与上下文明显矛盾。本文所述的过程可以在配置有可执行指令的一个或多个计算机系统(例如,计算机系统1300)的控制下执行,并且可以被实施为代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用程序),由硬件或其组合在一个或多个处理器上共同执行。代码可以例如以计算机程序的形式存储在机器可读或计算机可读存储介质上,计算机程序包括可由计算机或机器的一个或多个处理器执行以执行本文所述的实施例的多个机器可读代码或指令。计算机可读存储介质可以是非暂时性的。该代码还可以由任何计算机可读载体介质传送,诸如瞬态介质或信号,例如通过通信网络传输的信号。
尽管已经针对其特定的实施例描述了本说明书,但是这些特定的实施例仅仅是说明性的,而不是限制性的。可以提供控制以允许在执行记录时修改合成的各种参数。例如,分辨率、帧数、深度方位的精度都可能受到人工操作者的改变或选择的影响。
可以使用任何合适的编程语言来实施特定的实施例的例程,包括C、C++、Java、汇编语言等。可以采用不同的编程技术,诸如面向过程的或面向对象的。例程可以在单个处理装置或多个处理器上执行。虽然步骤、操作或计算可以以特定的顺序呈现,但是在不同的特定的实施例中可以改变该顺序。在一些特定的实施例中,本说明书中按顺序示出的多个步骤可以同时执行。
一些实施例可以被实施为包括一个或多个处理器和在一个或多个非暂时性计算机可读存储介质中编码的用于由一个或多个处理器执行的逻辑的系统。该逻辑在执行时可操作以致使一个或多个处理器执行本文所述的实施例。
一些实施例可被实施为包括一个或多个处理器和存储处理器可读指令的非暂时性存储介质的系统。当由系统的一个或多个处理器执行时,处理器可读指令致使系统执行本文所述的实施例。
一些实施例可被实施为存储计算机可读代码的非暂时性计算机可读存储介质。当由计算机的一个或多个处理器执行时,计算机可读代码致使计算机执行本文所述的实施例。
一些实施例可被实施为其上存储有程序指令的非暂时性计算机可读存储介质。当由一个或多个处理器执行时,程序指令可操作以致使一个或多个处理器执行本文所述的实施例。
一些实施例可被实施为非暂时性计算机可读存储介质,供指令执行系统、设备、系统或装置使用或与之连接。具体的实施例可以以软件或硬件或两者的组合中的控制逻辑的形式来实施。当由一个或多个处理器执行时,控制逻辑可操作以执行在特定的实施例中描述的控制逻辑。
一些实施例可被实施为包括可由一个或多个数字处理器执行的指令的非暂时性处理器可读存储介质。当由一个或多个数字处理器执行时,这些指令执行本文所述的实施例。
一些实施例可以实施为传送计算机可读代码的载体介质。当由计算机的一个或多个处理器执行时,计算机可读代码致使计算机执行本文所述的实施例。
一些实施例可被实施为提供在计算机可读介质上的处理器可实施的代码。计算机可读介质可以包括诸如固态存储器、磁盘、光盘等的非瞬态存储介质,或者诸如通过计算机网络传输的信号的瞬态介质。当由计算机的一个或多个处理器执行时,处理器可实施的代码致使计算机执行本文所述的实施例。
具体的实施例可以通过使用编程的通用数字计算机,通过使用特定的集成电路、可编程逻辑器件、现场可编程门阵列来实施,可以使用光学、化学、生物、量子或纳米工程系统、部件和机制。通常,特定的实施例的功能可以通过本领域已知的任何手段来实现。可以使用分布式、联网的系统、部件和/或电路。数据的通信或传输可以是有线、无线或任何其他手段。
还应当理解,附图/图中所描绘的元素中的一个或多个还可以以更加分离或集成的方式实施,或者甚至可以在某些情况下移除或再现为不可操作的,这对于根据特定的应用程序是有用的。实施可存储在机器可读介质中以允许计算机执行上述任何方法的程序或代码也在本发明的原则和范围内。
除非上下文另有明确规定,否则如本文中的描述和所附权利要求中所使用,“一个(a)”、“一种(an)”和“所述(the)”包括复数指代。此外,如本文中的描述和所附权利要求中所使用,“在……中”的含义包括“在……中”和“在……上”,除非上下文另外清楚地指明。
因此,虽然本文已描述了特定的实施例,但在前述公开内容中修改、各种改变和替代的范围也可能存在。并且应当理解,在某些情况下,将采用特定的实施例的一些特征而不对应使用其他特征,此并不背离所陈述的范围和原则。因此,可以进行许多修改以使特定的情况或材料适应基本范围和原则。
Claims (15)
1.一种用于校准实况动作场景中的摄像机的计算机实施的方法,所述方法包括:
配置多个参考摄像机以观察所述实况动作场景的至少一部分;
配置具有无约束运动的一个或多个移动摄像机,以观察所述实况动作场景中的一个或多个移动对象,并观察与所述多个参考摄像机相关联的至少三个已知的参考点;
接收与所述一个或多个移动摄像机相关联的参考点数据,其中所述参考点数据基于所述至少三个已知的参考点;以及
基于所述参考点数据中的一个或多个和所述多个参考摄像机中的一个或多个参考摄像机的一个或多个位置计算所述一个或多个移动摄像机中的每个移动摄像机的位置和取向。
2.根据权利要求1所述的方法,其中所述多个参考摄像机中的每个参考摄像机相对于所述多个参考摄像机中的至少第二参考摄像机处于已知的位置。
3.根据权利要求1所述的方法,其中所述多个参考摄像机安装在一个或多个刚性结构上。
4.根据权利要求1所述的方法,其中每个移动摄像机安装在可移动设备上。
5.根据权利要求1所述的方法,还包括至少部分地基于全球定位系统数据、方位传感器数据和惯性引导传感器数据中的一个或多个计算所述一个或多个移动摄像机中的每个移动摄像机的位置。
6.根据权利要求1所述的方法,其中所述一个或多个已知的参考点的至少部分联接到所述多个参考摄像机中的一个或多个参考摄像机。
7.一种用于校准实况动作场景中的摄像机的系统,所述系统包括:
一个或多个处理器;以及
在一个或多个非暂时性计算机可读存储介质中编码的逻辑,所述逻辑用于由所述一个或多个处理器执行,并且在执行时可操作以致使所述一个或多个处理器执行操作,所述操作包括:
配置多个参考摄像机以观察所述实况动作场景的至少一部分;
配置具有无约束运动的一个或多个移动摄像机,以观察所述实况动作场景中的一个或多个移动对象,并观察与所述多个参考摄像机相关联的至少三个已知的参考点;
接收与所述一个或多个移动摄像机相关联的参考点数据,其中所述参考点数据基于所述至少三个已知的参考点;以及
基于所述参考点数据中的一个或多个和所述多个参考摄像机中的一个或多个参考摄像机的一个或多个位置计算所述一个或多个移动摄像机中的每个移动摄像机的位置和取向。
8.根据权利要求7所述的系统,其中所述多个参考摄像机中的每个参考摄像机相对于所述多个参考摄像机中的至少第二参考摄像机处于已知的位置。
9.根据权利要求7所述的系统,其中所述多个参考摄像机安装在一个或多个刚性结构上。
10.根据权利要求7所述的系统,其中所述逻辑在执行时还可操作以致使所述一个或多个处理器执行操作,所述操作包括至少部分地基于全球定位系统数据、方位传感器数据和惯性引导传感器数据中的一个或多个计算所述一个或多个移动摄像机中的每个移动摄像机的位置。
11.根据权利要求7所述的系统,其中所述一个或多个已知的参考点的至少部分联接到所述多个参考摄像机中的一个或多个参考摄像机。
12.一种其上存储有程序指令的非暂时性计算机可读存储介质,所述程序指令在由一个或多个处理器执行时可操作以致使所述一个或多个处理器执行操作,所述操作包括:
配置多个参考摄像机以观察所述实况动作场景的至少一部分;
配置具有无约束运动的一个或多个移动摄像机,以观察所述实况动作场景中的一个或多个移动对象,并观察与所述多个参考摄像机相关联的至少三个已知的参考点;
接收与所述一个或多个移动摄像机相关联的参考点数据,其中所述参考点数据基于所述至少三个已知的参考点;以及
基于所述参考点数据中的一个或多个和所述多个参考摄像机中的一个或多个参考摄像机的一个或多个位置计算所述一个或多个移动摄像机中的每个移动摄像机的位置和取向。
13.根据权利要求12所述的计算机可读存储介质,其中所述多个参考摄像机中的每个参考摄像机相对于所述多个参考摄像机中的至少第二参考摄像机处于已知的位置。
14.根据权利要求12所述的计算机可读存储介质,其中所述多个参考摄像机安装在一个或多个刚性结构上。
15.根据权利要求12所述的计算机可读存储介质,其中所述指令在执行时还可操作以致使所述一个或多个处理器执行操作,所述操作包括至少部分地基于全球定位系统数据、方位传感器数据和惯性引导传感器数据中的一个或多个计算所述一个或多个移动摄像机中的每个移动摄像机的位置。
Applications Claiming Priority (13)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063072088P | 2020-08-28 | 2020-08-28 | |
US202063072085P | 2020-08-28 | 2020-08-28 | |
US202063072092P | 2020-08-28 | 2020-08-28 | |
US63/072,088 | 2020-08-28 | ||
US63/072,085 | 2020-08-28 | ||
US63/072,092 | 2020-08-28 | ||
US17/120,031 US11636621B2 (en) | 2020-08-28 | 2020-12-11 | Motion capture calibration using cameras and drones |
US17/120,024 | 2020-12-11 | ||
US17/120,031 | 2020-12-11 | ||
US17/120,020 | 2020-12-11 | ||
US17/120,020 US20220067968A1 (en) | 2020-08-28 | 2020-12-11 | Motion capture calibration using drones with multiple cameras |
US17/120,024 US11600022B2 (en) | 2020-08-28 | 2020-12-11 | Motion capture calibration using drones |
PCT/NZ2021/050044 WO2022045898A1 (en) | 2020-08-28 | 2021-03-17 | Motion capture calibration using drones |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116368350A true CN116368350A (zh) | 2023-06-30 |
Family
ID=75426656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180065626.9A Pending CN116368350A (zh) | 2020-08-28 | 2021-03-17 | 使用靶标的运动捕获校准 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP4205377A1 (zh) |
CN (1) | CN116368350A (zh) |
CA (1) | CA3191221A1 (zh) |
WO (3) | WO2022045899A1 (zh) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4522140B2 (ja) * | 2004-05-14 | 2010-08-11 | キヤノン株式会社 | 指標配置情報推定方法および情報処理装置 |
US8659668B2 (en) * | 2005-10-07 | 2014-02-25 | Rearden, Llc | Apparatus and method for performing motion capture using a random pattern on capture surfaces |
US20100045701A1 (en) * | 2008-08-22 | 2010-02-25 | Cybernet Systems Corporation | Automatic mapping of augmented reality fiducials |
US20130063558A1 (en) * | 2011-09-14 | 2013-03-14 | Motion Analysis Corporation | Systems and Methods for Incorporating Two Dimensional Images Captured by a Moving Studio Camera with Actively Controlled Optics into a Virtual Three Dimensional Coordinate System |
FR2984057B1 (fr) * | 2011-12-13 | 2014-01-03 | Solidanim | Systeme de tournage de film video |
DE102012107153A1 (de) * | 2012-08-03 | 2014-02-27 | Hendrik Fehlis | Vorrichtung und Verfahren zur Bestimmung der Eigenlage einer bildaufnehmenden Kamera |
FR3062229A1 (fr) * | 2017-01-26 | 2018-07-27 | Parrot Air Support | Procede d'affichage sur un ecran d'au moins une representation d'un objet, programme d'ordinateur, dispositif et appareil electroniques d'affichage associes |
AU2019377829A1 (en) * | 2018-11-06 | 2021-05-27 | Lucasfilm Entertainment Company Ltd. | Immersive content production system |
-
2021
- 2021-03-17 WO PCT/NZ2021/050045 patent/WO2022045899A1/en active Application Filing
- 2021-03-17 CA CA3191221A patent/CA3191221A1/en active Pending
- 2021-03-17 WO PCT/NZ2021/050043 patent/WO2022045897A1/en active Application Filing
- 2021-03-17 WO PCT/NZ2021/050044 patent/WO2022045898A1/en unknown
- 2021-03-17 EP EP21717247.7A patent/EP4205377A1/en not_active Withdrawn
- 2021-03-17 CN CN202180065626.9A patent/CN116368350A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4205377A1 (en) | 2023-07-05 |
WO2022045897A1 (en) | 2022-03-03 |
CA3191221A1 (en) | 2022-03-03 |
WO2022045899A1 (en) | 2022-03-03 |
WO2022045898A1 (en) | 2022-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220067968A1 (en) | Motion capture calibration using drones with multiple cameras | |
US11514654B1 (en) | Calibrating focus/defocus operations of a virtual display based on camera settings | |
JP2006503379A (ja) | 拡張仮想環境 | |
US11232595B1 (en) | Three-dimensional assembly for motion capture calibration | |
US10845188B2 (en) | Motion capture from a mobile self-tracking device | |
US11328436B2 (en) | Using camera effect in the generation of custom synthetic data for use in training an artificial intelligence model to produce an image depth map | |
US11308644B2 (en) | Multi-presence detection for performance capture | |
JP2023546739A (ja) | シーンの3次元モデルを生成するための方法、装置、およびシステム | |
US11282233B1 (en) | Motion capture calibration | |
US10819952B2 (en) | Virtual reality telepresence | |
US11600022B2 (en) | Motion capture calibration using drones | |
US11636621B2 (en) | Motion capture calibration using cameras and drones | |
US11656578B2 (en) | Holographic imagery for on set eyeline reference | |
CN116368350A (zh) | 使用靶标的运动捕获校准 | |
US20220076452A1 (en) | Motion capture calibration using a wand | |
US20220076451A1 (en) | Motion capture calibration using a three-dimensional assembly | |
WO2022055371A1 (en) | Motion capture calibration using a wand | |
US11682175B2 (en) | Previsualization devices and systems for the film industry | |
WO2023026089A1 (en) | A three-dimensional assembly for motion capture calibration | |
CN114641980A (zh) | 使用任意捕获的输入对捕获图像的遮挡视图的重构 | |
WO2023275611A1 (en) | Multi-presence detection for performance capture | |
CN118302717A (zh) | 经由动态视角的相机跟踪 | |
Milne et al. | The ORIGAMI project: advanced tools for creating and mixing real and virtual content in film and TV production |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20230630 |