CN117836819A - 用于生成用于关键点检测的训练数据集的方法和系统以及用于预测无标记对象上的虚拟标记的3d位置的方法和系统 - Google Patents
用于生成用于关键点检测的训练数据集的方法和系统以及用于预测无标记对象上的虚拟标记的3d位置的方法和系统 Download PDFInfo
- Publication number
- CN117836819A CN117836819A CN202280053894.3A CN202280053894A CN117836819A CN 117836819 A CN117836819 A CN 117836819A CN 202280053894 A CN202280053894 A CN 202280053894A CN 117836819 A CN117836819 A CN 117836819A
- Authority
- CN
- China
- Prior art keywords
- marker
- image
- color video
- images
- camera
- 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
- 239000003550 marker Substances 0.000 title claims abstract description 173
- 238000000034 method Methods 0.000 title claims abstract description 165
- 238000012549 training Methods 0.000 title claims abstract description 69
- 238000001514 detection method Methods 0.000 title claims abstract description 27
- 230000033001 locomotion Effects 0.000 claims abstract description 87
- 230000003287 optical effect Effects 0.000 claims abstract description 33
- 238000013528 artificial neural network Methods 0.000 claims abstract description 25
- 238000005096 rolling process Methods 0.000 claims description 76
- 241001465754 Metazoa Species 0.000 claims description 57
- 238000004422 calculation algorithm Methods 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 12
- 230000009466 transformation Effects 0.000 claims description 11
- 230000004807 localization Effects 0.000 claims description 8
- 238000005457 optimization Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 7
- 239000011159 matrix material Substances 0.000 claims description 5
- 238000000844 transformation Methods 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 14
- 230000008901 benefit Effects 0.000 description 13
- 238000013480 data collection Methods 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 7
- 210000000707 wrist Anatomy 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 239000002243 precursor Substances 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 210000001513 elbow Anatomy 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 241000282412 Homo Species 0.000 description 3
- 210000000988 bone and bone Anatomy 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 210000002832 shoulder Anatomy 0.000 description 3
- 238000012897 Levenberg–Marquardt algorithm Methods 0.000 description 2
- 102100028928 Methionyl-tRNA formyltransferase, mitochondrial Human genes 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000011068 loading method Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- ATRSAWXXYCBXLI-UHFFFAOYSA-N 1-(3-bromophenyl)propan-2-amine Chemical compound CC(N)CC1=CC=CC(Br)=C1 ATRSAWXXYCBXLI-UHFFFAOYSA-N 0.000 description 1
- 101000742346 Crotalus durissus collilineatus Zinc metalloproteinase/disintegrin Proteins 0.000 description 1
- 101000872559 Hediste diversicolor Hemerythrin Proteins 0.000 description 1
- 101001059353 Homo sapiens Methionyl-tRNA formyltransferase, mitochondrial Proteins 0.000 description 1
- 241000534944 Thia Species 0.000 description 1
- 238000002679 ablation Methods 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 210000003423 ankle Anatomy 0.000 description 1
- 230000008485 antagonism Effects 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 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
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000011049 filling Methods 0.000 description 1
- 210000000245 forearm Anatomy 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 210000001624 hip Anatomy 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007794 irritation Effects 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 210000003141 lower extremity Anatomy 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000004197 pelvis Anatomy 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 210000001364 upper extremity Anatomy 0.000 description 1
- 238000001429 visible spectrum Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/77—Retouching; Inpainting; Scratch removal
-
- 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/20—Analysis of motion
- G06T7/292—Multi-camera tracking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- 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
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/25—Determination of region of interest [ROI] or a volume of interest [VOI]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/60—Extraction of image or video features relating to illumination properties, e.g. using a reflectance or lighting model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
- G06V20/647—Three-dimensional objects by matching two-dimensional images to three-dimensional objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/18—Extraction of features or characteristics of the image
- G06V30/18143—Extracting features based on salient regional features, e.g. scale invariant feature transform [SIFT] keypoints
-
- 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/20—Movements or behaviour, e.g. gesture recognition
- G06V40/23—Recognition of whole body movements, e.g. for sport training
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0475—Generative networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/094—Adversarial learning
-
- 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/10016—Video; Image sequence
-
- 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/10024—Color image
-
- 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/20—Special algorithmic details
- G06T2207/20016—Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
-
- 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/20—Special algorithmic details
- G06T2207/20036—Morphological image processing
- G06T2207/20044—Skeletonization; Medial axis transform
-
- 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/20—Special algorithmic details
- G06T2207/20076—Probabilistic image processing
-
- 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/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- 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/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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/30196—Human being; Person
-
- 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/30241—Trajectory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
根据本发明的实施方式,提供了一种用于生成用于关键点检测的训练数据集的方法和系统。该系统包括:基于光学标记的运动捕获系统,该基于光学标记的运动捕获系统用于将标记捕获为3D轨迹;以及相机,该相机用于同时捕获2D图像序列。每个标记被布置在对象的骨骼标志或关键点上。由系统中的计算机执行的该方法包括:将每个轨迹投影到每个图像,以确定每个标记的2D位置;根据2D位置对3D位置进行插值;生成在对象周围的边界框;以及生成训练数据集,该训练数据集包括至少一个图像、以及所确定的每个标记在所述至少一个图像中的2D位置和边界框。根据另外的实施方式,还提供了用于使用由生成的训练数据集训练的神经网络来预测无标记对象上的虚拟标记的3D位置的方法和系统。
Description
相关申请的交叉引用
本申请要求于2021年6月14日提交的新加坡专利申请号10202106342T的优先权的权益,其内容在此通过引用整体并入以用于所有目的。
技术领域
各种实施方式涉及用于生成用于关键点检测的训练数据集的方法和系统以及使用由生成的训练数据集训练的神经网络来预测无标记对象(例如,人类、动物或物体)上的虚拟标记的3D位置的方法和系统。
背景技术
对人体移动的运动学进行感知和数字化的能力开启了在许多领域诸如运动科学中的移动分析、康复中的异常诊断、电影行业中的角色动画的研究和应用,或者它可以服务于视频游戏、互动艺术或不同类型的计算机应用中的人机交互目的。提供这种能力的技术可以有多种形式。迄今为止仍广泛使用的一项早期现成技术是基于多相机标记的运动捕获形式。在这项技术中,对象的骨骼标志附有通过具有主动红外光源的红外相机看到的逆反射标记。当一个标记被不止一个红外相机看到时,考虑到这些红外相机已经过校准和同步,根据三角测量计算该标记的3维(3D)位置。然后,这些3D位置的序列将在后续应用中使用。
自从2012年引入深度卷积神经网络(AlexNet)用于图像分类以来,此后在数据驱动范式下以类似的方式解决了许多更复杂的计算机视觉问题。遇到的挑战之一是人体姿势估计或人体关键点检测。由于以模型为中心的方法的流行,该领域的神经网络模型在过去十年中迅速发展。科学家通常会下载可用的公共数据集,并提出可以相比于现有模型提高测试准确性的一种新的神经网络架构或新的训练方法。虽然这种趋势为模型带来了许多显著的贡献,但对数据集和数据质量的贡献却并不多。在人体关键点检测领域,两个最大的数据收集工作来自分别具有118K和40K图像的COCO和MPII数据集。这些数据集包含数据集中每个人的手工注释的二维(2D)关节位置。例如,在COCO数据集中,所有关键点都是通过众包手工注释的。据发明人所知,所有最先进的数据驱动的人体关键点检测模型都依赖于这些手工注释的数据集进行学习,而不管注释的准确性如何。
由于各种可能的问题,人类很难准确地执行在高分辨率图像上选取像素来表示关节中心的任务。主要原因是注释工作者之间对于每个关节中心相对于实际人体骨骼标志的确切位置没有明确的限定。即使提供了限定,仍然很难找到,因为2D图像可能无法提供有关这些骨骼标志的足够线索。因此,注释的位置更像是模糊的2D区域,而不是像素级别的精确位置。使用这些数据集肯定会限制训练模型可以有的准确性。这种质量水平可能对于娱乐目的是足够的,诸如视频游戏控制或互动艺术。然而,对于如运动科学、生物力学分析或康复分析等更具争议性的应用,这种质量水平往往不合适或不够。
在另一种现有方法中,Kinect骨骼跟踪系统与深度图像一起工作。可以以3D形式创建具有随机姿势的人体模型。随机森林回归用于预测每个单个像素以确定每个人体部位。然而,这种合成模型的准确性并不令人印象深刻,因为所使用的约束可能不是真实的。
因此,需要一种方法和/或系统来至少解决上述问题,更具体地,其中该系统涉及使用多个RGB相机并且该系统和/或方法产生3D标记位置输出,但在对象的身体上没有布置任何标记或传感器。无标记的一个明显好处是减少了对象准备的时间和人力,这使得运动捕获(mocap)工作流程对于诸如医疗诊断等不可预见的应用更加实用。该方法和/或系统也不涉及过度限制的约束。
此外,该方法和/或系统不是继续以模型为中心的趋势,而是可以涉及如本领域的参与者所承认的最佳的最先进的关键点检测模型,以及涉及产生具有尽可能最高质量的注释的数据集的以数据为中心的方面。此类注释不得来自人类决策,而是来自准确的传感器,诸如来自基于标记的运动捕获系统的标记位置。如果标记正确布置在骨骼标志上,并且基于标记的运动捕获系统可以准确检索该标记的3D轨迹,进而可以将其投影到视频帧以获得像素准确的2D地面实况以用于关键点检测的训练。数据收集基础设施也是从头开始设计的,以确保所有校准和同步工作在相对较小的预算下进行。此外,这可以很好地避免或至少减少在获得类似类型的现有数据集时使用的相机校准参数和时间同步性的不一致质量,该不一致质量可能在投影后不期望地导致显著大的误差。例如,基于MoVi数据集中带有2D标记投影的裁剪图像,发现由于相机校准和同步性方面的不良,投影与标记未对准。
发明内容
根据实施方式,提供了一种生成用于关键点检测的训练数据集的方法。所述方法可以根据由基于光学标记的运动捕获系统捕获多个标记,每个标记均被捕获为3D轨迹,其中,每个标记被布置在人类或动物对象的骨骼标志或者物体的关键点上;以及由多个彩色视频相机将所述人类或动物对象或所述物体在一段时间内基本上同时捕获为2D图像序列。所述方法可以包括:将针对每个标记的3D轨迹投影到2D图像中的每个2D图像,以确定在每个2D图像中的2D位置;基于所述2D图像序列中的相应2D位置和所述多个彩色视频相机的曝光相关时间,针对所述2D图像中的每个2D图像,对针对每个标记的3D位置进行插值;基于所插值的所述多个标记的相应3D位置以及从所述标记中彼此具有解剖学或功能关系的两个或更多个标记得出的扩展体积,针对每个2D图像生成在所述人类或动物对象或所述物体周围的2D边界框;以及生成训练数据集,所述训练数据集包括从所述2D图像序列中选择的至少一个2D图像、所确定的每个标记在所选择的至少一个2D图像中的2D位置、以及针对所选择的至少一个2D图像生成的2D边界框。
根据实施方式,提供了一种用于预测无标记人类或动物对象或无标记物体上的虚拟标记的3D位置的方法。所述方法可以包括根据由多个彩色视频相机将无标记人类或动物对象或无标记物体捕获为2D图像序列,使用经训练的神经网络来针对由每个彩色视频相机捕获的每个2D图像预测2D边界框;通过所述经训练的神经网络针对每个2D图像生成具有置信度分数的多个热图;针对每个热图选择具有最高置信度分数的像素,并且将所选择的像素与虚拟标记相关联,从而确定所述虚拟标记的2D位置;以及基于由所述多个彩色视频相机捕获的所述2D图像序列,对所确定的相应2D位置进行三角测量以预测所述虚拟标记的3D位置序列。每个热图用于无标记人类或动物对象或无标记物体的虚拟标记的2D定位,并且对于每个热图的置信度分数指示在预测的2D边界框中的不同2D位置具有相关联的虚拟标记的概率。根据上述实施方式,所述经训练的神经网络是至少使用由用于生成用于关键点检测的训练数据集的方法生成的训练数据集训练的。
根据实施方式,提供了一种适于执行根据上述各种实施方式的用于生成用于关键点检测的训练数据集的方法以及/或者用于预测无标记人类或动物对象或无标记物体上的虚拟标记的3D位置的方法的计算机程序。
根据实施方式,提供了一种非暂态计算机可读介质,所述非暂态计算机可读介质包括指令,所述指令当在计算机上执行时,使所述计算机执行根据上述各种实施方式的用于生成用于关键点检测的训练数据集的方法以及/或者用于预测无标记人类或动物对象或无标记物体上的虚拟标记的3D位置的方法。
根据实施方式,提供了一种数据处理设备,所述数据处理设备包括:用于执行根据上述各种实施方式的用于生成用于关键点检测的训练数据集的方法以及/或者用于预测无标记人类或动物对象或无标记物体上的虚拟标记的3D位置的方法的装置。
根据实施方式,提供了一种用于生成用于关键点检测的训练数据集的系统。所述系统可以包括:基于光学标记的运动捕获系统,所述基于光学标记的运动捕获系统被配置成在一段时间内捕获多个标记,其中,每个标记被布置在人类或动物对象的骨骼标志或者物体的关键点上,并且每个标记被捕获为3D轨迹;多个彩色视频相机,所述多个彩色视频相机被配置成将所述人类或动物对象或所述物体在所述一段时间内捕获为2D图像序列;以及计算机。所述计算机可以被配置成:对由所述多个彩色视频相机捕获的所述2D图像序列以及由所述基于光学标记的运动捕获系统捕获的相应3D轨迹进行接收;将针对每个标记的所述3D轨迹投影到2D图像中的每个2D图像,以确定在每个2D图像中的2D位置;基于所述2D图像序列中的相应2D位置和所述多个彩色视频相机的曝光相关时间,针对所述2D图像中的每个2D图像,对针对每个标记的3D位置进行插值;基于所插值的多个标记的相应3D位置以及从所述标记中彼此具有解剖学或功能关系的两个或更多个标记得出的扩展体积,针对每个2D图像生成在人类或动物对象或者物体周围的2D边界框;以及生成训练数据集,所述训练数据集包括从所述2D图像序列中选择的至少一个2D图像、所确定的每个标记在所选择的至少一个2D图像中的2D位置、以及针对所选择的至少一个2D图像生成的2D边界框。
根据实施方式,提供了一种用于预测无标记人类或动物对象或无标记物体上的虚拟标记的3D位置的系统。所述系统可以包括:多个彩色视频相机,所述多个彩色视频相机被配置成将无标记人类或动物对象或无标记物体捕获为2D图像序列;以及计算机。所述计算机可以被配置成:对由所述多个彩色视频相机捕获的所述2D图像序列进行接收;使用经训练的神经网络来针对由每个彩色视频相机捕获的每个2D图像预测2D边界框;使用经训练的神经网络针对每个2D图像生成具有置信度分数的多个热图;针对每个热图选择具有最高置信度分数的像素,并且将所选择的像素与虚拟标记相关联,从而确定虚拟标记的2D位置;以及基于由所述多个彩色视频相机捕获的所述2D图像序列,对所确定的相应2D位置进行三角测量以预测所述虚拟标记的3D位置序列。每个热图用于无标记人类或动物对象或无标记物体的虚拟标记的2D定位,并且对于每个热图的置信度分数指示在预测的2D边界框中的不同2D位置具有相关联的虚拟标记的概率。根据上述各种实施方式,所述经训练的神经网络是至少使用由用于生成用于关键点检测的训练数据集的系统和/或方法生成的训练数据集训练的。
附图说明
在附图中,相同的附图标记在不同的视图中通常指代相同的部分。附图不一定按比例绘制,而是通常将重点放在说明本发明的原理上。在下面的描述中,参考以下附图描述本发明的各个实施方式,其中:
图1A示出了说明根据各种实施方式的用于生成用于关键点检测的训练数据集的方法的流程图。
图1B示出了说明根据各种实施方式的用于预测无标记人类或动物对象或无标记物体上的虚拟标记的3D位置的方法的流程图。
图1C示出了根据各种实施方式的用于生成用于关键点检测的训练数据集的系统的示意图。
图1D示出了根据各种实施方式的用于预测无标记人类或动物对象或无标记物体上的虚拟标记的3D位置的系统的示意图。
图2示出了图1C的系统的示例性设置。
图3示出了图1D的系统的示例性设置。
图4示出了根据各种示例的说明来自不同工具的12个关节的总体准确度曲线的图。
图5示出了根据一个实施方式的具有仅在校准过程中使用的三个可见LED的相机原型的示意性立体图。
图6示出了根据一个实施方式的卷帘快门模型的图形表示。
图7示出了图6的卷帘快门模型的图形表示,说明了在触发时间处的2D标记轨迹的插值。
图8示出了根据一个实施方式的从基于标记的运动捕获系统投影到相机的3D标记轨迹的图形表示。
图9示出了根据一个实施方式的包括用于校准图1D的系统的检查板的装备的照片。
具体实施方式
以下详细描述参考了以图示的方式示出了可以实践本发明的具体细节和实施方式的附图。这些实施方式被足够详细地描述以使本领域技术人员能够实践本发明。在不脱离本发明的范围的情况下,可以利用其他实施方式并且可以进行结构、逻辑和电气改变。各个实施方式不一定是相互排斥的,因为一些实施方式可以与一个或更多个其他实施方式组合以形成新的实施方式。
在方法或装置之一的上下文中描述的实施方式对于其他方法或装置类似地有效。类似地,在方法的上下文中描述的实施方式对于装置同样有效,反之亦然,在装置的上下文中描述的实施方式对于方法同样有效。
在实施方式的上下文中描述的特征可以相应地适用于其他实施方式中的相同或相似的特征。在实施方式的上下文中描述的特征可以相应地适用于其他实施方式,即使没有在这些其他实施方式中明确地描述。此外,针对实施方式的上下文中的特征所描述的添加和/或组合和/或替代可以相应地适用于其他实施方式中的相同或相似的特征。
在各个实施方式的上下文中,关于特征或元件使用的冠词“一”、“一个”和“该”包括对一个或更多个特征或元件的引用。
在各个实施方式的上下文中,短语“至少基本上”可以包括“精确地”和合理的变化。
在各个实施方式的上下文中,应用于数值的术语“约”或“大约”涵盖精确值和合理的方差。
如本文所使用的,术语“和/或”包括一个或更多个相关列出项的任何和所有组合。
如本文所使用的,“A或B中的至少一者”形式的短语可以包括A、或者B、或者A和B两者。相应地,“A或B或C中的至少一者”形式或者包括另外列出的项目的短语可以包括一个或更多个相关列出项目的任何和所有组合。
如本文所使用的,表述“被配置成”可以意指“被构造成”或“被布置成”。
各种实施方式可以提供数据驱动的无标记多相机人体运动捕获系统。为了使此类系统成为数据驱动的,使用合适且准确的训练数据集非常重要。
图1A示出了说明根据各种实施方式的用于生成用于关键点检测的训练数据集的方法的流程图100。在前驱步骤102处,由基于光学标记的运动捕获系统捕获多个标记,每个标记被捕获为3D轨迹。每个标记可以被布置在人类或动物对象的骨骼标志或者物体的关键点上。由多个彩色视频相机将人类或动物对象或物体在一段时间内基本上同时捕获为2D图像序列。该时间段可以根据捕获对象的移动需要多长时间而变化。物体可以是移动物体,例如可以被跟踪的运动器材,诸如使用时的网球拍。方法100包括以下主动步骤。在步骤104处,将针对每个标记的3D轨迹投影到每个2D图像,以确定每个2D图像中的2D位置。在步骤106处,基于2D图像序列中的相应2D位置和多个彩色视频相机的曝光相关时间,针对所述2D图像中的每个2D图像,对针对每个标记的3D位置进行插值。在步骤108处,基于所插值的多个标记的相应3D位置以及从所述标记中彼此具有解剖学或功能关系的两个或更多个标记得出的扩展体积,针对每个2D图像生成在人类或动物对象或者物体周围的2D边界框。在步骤110处,生成训练数据集,其中,训练数据集包括从2D图像序列中选择的至少一个2D图像、所确定的每个标记在所选择的至少一个2D图像中的2D位置、以及针对所选择的至少一个2D图像生成的2D边界框。例如,在人类或动物对象的情况下,用于得出扩展体积的两个或更多个标记可以彼此具有解剖关系或功能关系中的至少一种。在物体的另一示例情况中,用于得出扩展体积的两个或更多个标记可以彼此具有功能(和/或结构)关系。
换句话说,方法100集中于从标记数据而不是手工注释数据进行学习。通过从基于标记的运动捕获系统收集的训练数据,数据收集的准确性和效率显著提高。在位置准确性方面,手动注释通常可能会错过关节中心几厘米,但标记位置准确性在几毫米范围内。就数据生成效率而言,手动注释(例如使用现有技术进行的注释)每个图像可能至少需要20秒。另一方面,方法100可以以每秒80个图像的平均速率(包括手动数据清理时间)生成并注释数据。这有利地允许数据收集有效地扩展到数百万个图像。更准确的训练数据和更大的数据集提高了任何适合此任务的机器学习模型的准确性。
在各种实施方式中,可以使用由基于光学标记的运动捕获系统传送到多个彩色视频相机的同步信号来对下述进行协调:在前驱步骤102处的将上述多个标记中的每个标记均捕获为3D轨迹;以及将人类或动物对象或物体在所述一段时间内基本上同时捕获为2D图像序列。在各种实施方式的上下文中,阶段“前驱步骤”指的是该步骤是先例或提前完成的。前驱步骤可以是该方法的非主动步骤。
方法100还可以包括,在步骤104处对3D轨迹进行投影的步骤之前,用代表布置有标记的骨骼标志或关键点的标签来对捕获的3D轨迹进行识别。对于每个标记的标签可以被布置成与确定的每个2D位置一起传播,使得在生成的训练数据集中,每个标记的所确定的每个2D位置均包含对应的标签。
方法100还可以包括,在步骤104处将3D轨迹投影到2D图像中的每个2D图像以确定在每个2D图像中的2D位置的步骤之后,根据彩色视频相机(其捕获该特定(每个)2D图像)与标记之间的具有预定义余量的距离,在每个2D图像中并且针对每个标记在所确定的2D位置上绘制2D半径以形成包围区域,以及对包围区域应用基于学习的上下文感知图像修复技术以从2D位置去除标记斑点。例如,基于学习的上下文感知图像修复技术可以包括基于生成对抗网络(GAN)的上下文感知图像修复技术。
在各种实施方式中,多个彩色视频相机(或RGB相机)可以包括多个全局快门相机。曝光相关时间可以是用于使用每个全局快门相机捕获每个2D图像的曝光时间的中间值,该中间值处于曝光时段的中间。每个全局快门相机可以包括至少一个可见发光二极管(LED),所述至少一个可见发光二极管可操作以促进耦接到棒的逆反射标记被感知为可检测的亮点。例如,可见LED可以包括白色LED。
在各种实施方式的上下文中,术语“棒”指的是长形物体,逆反射标记可耦接到该长形物体,从而促进逆反射标记的挥动运动。
可以如下对多个全局快门相机进行预校准。基于在棒连续挥动的情况下由基于光学标记的运动捕获系统将逆反射标记捕获为覆盖目标捕获体积(或目标运动捕获体积)的3D轨迹,以及由每个全局快门相机将逆反射标记在一段时间内基本上同时捕获为2D校准图像序列,可以通过遍及整个2D校准图像进行扫描以搜索亮像素并识别亮像素的2D位置来针对每个2D校准图像提取逆反射标记的2D校准位置。预校准中的捕获时间段可以小于两分钟,或者可以是足以使轨迹覆盖捕获体积的量。可以在搜索到的亮像素的2D位置处应用迭代算法,以使2D位置收敛于亮像素簇的质心。此外,基于每个2D校准图像中的曝光时间的中间值(可互换地称为曝光时段的中间时间或中间曝光定时)和覆盖目标捕获体积的3D轨迹,可以在曝光时间的中间值对从2D校准图像中的每个2D校准图像的3D校准位置进行线性插值。可以针对多个2D校准图像的至少部分2D校准图像形成多个2D-3D对应对。每个2D-3D对应对可以包括针对多个2D校准图像的至少部分2D校准图像中的每个2D校准图像的所收敛的2D位置和所插值的3D校准位置。可以对多个2D-3D对应对应用相机校准函数以对外部相机参数进行确定并且对多个全局快门相机的内部相机参数进行微调。
市场上现有的运动捕获系统实际上总是要求相机系统使用全局快门传感器(或全局快门相机),因为这减少了计算的复杂性。
在其他实施方式中,多个彩色视频相机可以为多个卷帘快门相机。用卷帘快门相机替换全局快门相机不是即插即用的过程,因为可能会产生与卷帘快门伪影相关的附加错误。使卷帘快门相机与方法100中使用的某种运动捕获系统兼容需要对相机定时、同步和校准进行仔细建模,以使来自卷帘快门效应的误差最小化。然而,这种兼容性的好处是降低了系统成本,因为卷帘快门相机比全局快门相机便宜得多。
在这些其他实施方式中,在步骤104处将3D轨迹投影到2D图像中的每个2D图像的步骤还可以包括:针对每个卷帘快门相机捕获的每个2D图像,对来自连接一段时间内的投影3D轨迹的第一条线与表示用于捕获2D图像的每个像素行的曝光时间的移动中间值的第二条线之间的交点的相交时间进行确定;基于相交时间,针对由每个卷帘快门相机捕获的每个2D图像,对3D中间位置进行插值,以从2D图像序列中获得3D插值的轨迹;以及将针对每个标记的3D插值的轨迹投影到2D图像中的每个2D图像,以确定在每个2D图像中的2D位置。使用多个卷帘快门相机时的曝光相关时间是相交时间。
与涉及全局快门相机的实施方式类似,这里的每个卷帘快门相机可以包括至少一个可见发光二极管,该至少一个可见发光二极管可操作以促进耦接到棒的逆反射标记被感知为可检测的亮点。
可以如下对多个卷帘快门相机进行预校准。基于在棒连续挥动的情况下由基于光学标记的运动捕获系统将逆反射标记捕获为覆盖目标捕获体积的3D轨迹,以及由每个卷帘快门相机将逆反射标记在一段时间内基本上同时捕获为2D校准图像序列。可以通过遍及整个2D校准图像进行扫描以搜索亮像素并识别亮像素的2D位置,来针对每个2D校准图像提取逆反射标记的2D校准位置。可以在搜索到的亮像素的2D位置处应用迭代算法,以使2D位置收敛于亮像素簇的质心。此外,基于来自多个卷帘快门相机的2D质心的观察时间,可以从覆盖目标捕获体积的3D轨迹对3D校准位置进行插值。来自每个2D校准图像中的每个亮像素簇的每个2D质心的观察时间计算如下:
Ti+b–e/2+dv, -式1
其中Ti是2D校准图像的触发时间,
b是卷帘快门相机的触发到读出延迟,
e是针对卷帘快门相机设置的曝光时间,
d是卷帘快门相机的线延迟,以及
v是亮像素簇的2D质心的像素行。
可以针对多个2D校准图像的至少部分2D校准图像形成多个2D-3D对应对。每个2D-3D对应对可以包括针对多个2D校准图像的至少部分2D校准图像中的每个2D校准图像的所收敛的位置和所插值的3D校准位置。可以对多个2D-3D对应对应用相机校准函数以对外在相机参数进行确定并且对多个卷帘快门相机的内在相机参数进行微调。
在对多个彩色视频相机进行预校准时,迭代算法可以是均值平移算法。可以使用由基于光学标记的运动捕获系统传送到多个彩色视频相机的同步信号来对下述进行协调:由基于光学标记的运动捕获系统将逆反射标记捕获为覆盖目标捕获体积的3D轨迹;以及将逆反射标记基本上同时捕获为2D校准图像序列。
一般来说,运动捕获系统的硬件层要求相机使用全局快门传感器,以避免卷帘快门相机所经历的顶部像素行和底部像素行之间的感测延迟的影响。然而,全局快门相机的实现需要更复杂的电子电路来执行所有像素的曝光的同时开始和停止。这使得全局快门相机在相同分辨率下比卷帘快门相机贵得多。由于人体移动不够快,不会因卷帘快门效应而过度扭曲,因此可以通过使用卷帘快门相机并对卷帘快门效应进行仔细建模来补偿误差,从而降低系统成本。这种卷帘快门模型可以集成到整个工作流程中,从相机校准和数据收集开始,一直到3D关键点的三角测量,这将在下面进一步讨论。因此,有利地在相机的选择上提供了更大的灵活性。
在各种实施方式中,关于方法100提及的标记包括逆反射标记。
图1B示出了说明根据各种实施方式的用于预测无标记人类或动物对象或无标记物体上的虚拟标记的3D位置的方法的流程图120。在前驱步骤122处,由多个彩色视频相机将无标记人类或动物对象或无标记物体捕获为2D图像序列。方法120包括以下主动步骤。在步骤125处,使用经训练的神经网络来针对由每个彩色视频相机捕获的每个2D图像预测2D边界框。在步骤124处,通过经训练的神经网络针对每个2D图像生成具有置信度分数的多个热图。每个热图用于无标记人类或动物对象或无标记物体的虚拟标记的2D定位。在各种实施方式的上下文中,2D定位是指识别虚拟标记的2D位置或2D方位的过程,并且因此,每个热图与一个虚拟标记相关联。经训练的神经网络可以至少使用由方法100生成的训练数据集来训练。在步骤126处,针对每个热图选择或挑选具有最高置信度分数的像素,并且将所选择的像素与虚拟标记相关联,从而确定虚拟标记的2D位置。对于每个热图的置信度分数指示在预测的2D边界框中的不同2D位置具有相关联的虚拟标记的概率。在步骤128处,基于由多个彩色视频相机捕获的2D图像序列,对所确定的相应2D位置进行三角测量以预测虚拟标记的3D位置序列。可选地,步骤128处的三角测量步骤可以包括:基于作为用于三角测量的权重的相应置信度分数,对虚拟标记的相应2D位置进行加权的三角测量。例如,加权的三角测量可以包括使用下式得出虚拟标记的每个预测3D位置:(∑iwiQi)-1(∑iwiQiCi),其中,给定i为1、2、......、N(N是彩色视频相机的总数),wi是用于三角测量的权重或来自第i个彩色视频相机的第i条射线的置信度分数,Ci是与第i条射线相关联的第i个彩色视频相机的3D位置,Ui是表示与第i条射线相关联的反投影方向的3D单位向量,I3是3×3恒等矩阵。三角测量是根据3D空间中的点在两个或更多图像上的投影来确定该点的过程。三角测量也可以称为重建或交叉。
换句话说,方法120输出虚拟标记位置而不是关节中心。因为通用生物力学分析工作流程从3D标记位置开始计算,所以将标记位置(更具体地,虚拟标记位置)保留在方法120的输出中以确保方法120与现有工作流程兼容是很重要的。与从关节中心的手动注释中学习的现有系统不同,进行学习以预测标记位置不仅会产生可计算的关节位置,还会产生身体节段的取向。这些身体节段的取向无法从每个姿势的关节中心集中恢复。例如,当肩部、肘部和腕部大致对准时,该手臂姿势的奇异性使得无法恢复上臂和前臂节段的取向。然而,这些取向可以根据肩部、肘部和腕部标记来计算。因此,在更有争议的应用中,必须允许机器学习模型预测标记位置(更具体地说,虚拟标记位置)而不是关节中心位置。直接线性变换(DLT)是一种行之有效的方法,用于执行三角测量,以从两个或更多个相机观察到的多个2D位置获取3D位置。对于此应用,得出了新的三角测量式,以通过利用置信度分数(scoreof confidence)(或可互换地称为置信度分数(confidence score))来提高三角测量准确性,该置信度分数是神经网络模型为每个预测的2D位置提供的附加信息。对于每条射线(例如,表示一个图像上的2D位置),置信度分数可以作为权重包含在这个新的三角测量公式中。与DLT方法相比,方法120可以显著提高三角测量准确性。
在各种实施方式中,多个彩色视频相机可以包括多个全局快门相机。
在其他实施方式中,多个彩色视频相机可以是多个卷帘快门相机。在这些其他实施方式中,方法120还可以包括:在步骤128处对相应2D位置进行三角测量以预测虚拟标记的3D位置序列的步骤之前,基于两个连续2D图像中所确定的2D位置,对每个卷帘快门相机的观察时间进行确定。观察时间可以利用式1来计算,其中在这种情况下,Ti是指两个连续的2D图像中的每个2D图像的触发时间,以及v是两个连续的2D图像中的每个2D图像中的2D位置的像素行。基于观察时间,对虚拟标记在触发时间处的2D位置进行插值。在步骤128处对相应2D位置进行三角测量的步骤可以包括:对从多个卷帘快门相机得出的所插值的相应2D位置进行三角测量。
在一个实施方式中,多个彩色视频相机可以如下进行外在校准。基于由多个彩色视频相机同时捕获的一个或更多个棋盘状格(checkerboard),针对多个彩色视频相机中的每两个彩色视频相机,对两个彩色视频相机之间的相对变换进行计算。当多个彩色视频相机具有计算出相应的相对变换时,即一旦将所有现有相机通过相对变换连接起来,就应用优化算法来对多个彩色视频相机的外在相机参数进行微调。更具体地说,优化算法是Levenberg-Marquardt算法及其cv2函数,该函数应用于2D棋盘状格观察和初始相对变换。一个或更多个棋盘状格可以包括独特的标记。
在另一实施方式中,多个彩色视频相机可以替代性地如下进行外在校准。每个彩色视频相机可以包括至少一个可见发光二极管(LED),所述至少一个可见发光二极管可操作以促进耦接到棒的多个逆反射标记被感知为可检测的亮点。基于:在棒连续挥动的情况下由多个彩色视频相机将逆反射标记捕获为2D校准图像序列,对所捕获的2D校准图像应用优化函数,以对多个彩色视频相机的外在相机参数进行微调。优化算法可以是Levenberg-Marquardt算法及其cv2函数,如上所述。
虽然上述方法被图示和描述为一系列步骤或事件,但是应当理解,此类步骤或事件的任何顺序不应被解释为限制性的。例如,一些步骤可以以不同的顺序发生和/或与除本文所示和/或描述的那些之外的其他步骤或事件同时发生。另外,并非所有示出的步骤都是实现本文描述的一个或更多个方面或实施方式所必需的。此外,本文所描绘的一个或更多个步骤可以在一个或更多个单独的动作和/或阶段中执行。
各种实施方式还可以提供适合于执行根据各种实施方式的方法100和/或方法120的计算机程序。
各种实施方式还可以提供一种非暂态计算机可读介质,所述非暂态计算机可读介质包括指令,所述指令当在计算机上执行时,使计算机执行根据各种实施方式的方法100和/或方法120。
各种实施方式还可以提供一种数据处理设备,所述数据处理设备包括用于执行根据各种实施方式的方法100和/或方法120的装置。
图1C示出了根据各种实施方式的用于生成用于关键点检测的训练数据集的系统140的示意图。系统140可以包括:基于光学标记的运动捕获系统142,基于光学标记的运动捕获系统142被配置成在一段时间内捕获多个标记;以及多个彩色视频相机144,多个彩色视频相机144被配置成在一段时间内将人类或动物对象或者物体捕获为2D图像序列。每个标记可以被布置在人类或动物对象的骨骼标志或者物体的关键点上,并且可以被捕获为3D轨迹。系统140还可以包括计算机146,计算机146被配置成:对由多个彩色视频相机144捕获的2D图像序列以及由基于光学标记的运动捕获系统142捕获的相应3D轨迹进行接收,如虚线152、150所示。该时间段可以根据捕获对象或物体的移动需要多长时间而变化。计算机146还可以被配置成:将针对每个标记的3D轨迹投影到2D图像中的每个2D图像,以确定在每个2D图像中的2D位置;基于2D图像序列中的相应2D位置和多个彩色视频相机144的曝光相关时间,针对所述2D图像中的每个2D图像,对针对每个标记的3D位置进行插值;基于所插值的多个标记的相应3D位置以及从所述标记中彼此具有解剖学或功能关系的两个或更多个标记得出的扩展体积,针对每个2D图像生成在人类或动物对象或者物体周围的2D边界框;以及生成训练数据集,该训练数据集包括从2D图像序列中选择的至少一个2D图像、所确定的每个标记在所选择的至少一个2D图像中的2D位置、以及针对所选择的至少一个2D图像生成的2D边界框。在实施方式中,计算机146可以是与多个彩色视频相机144和基于光学标记的运动捕获系统142通信以记录相应数据的同一计算机。在不同的实施方式中,计算机146可以是与同多个彩色视频相机144和基于光学标记的运动捕获系统142通信以记录相应数据的计算机分开的处理计算机。
系统140还可以包括同步脉冲发生器,所述同步脉冲发生器与基于光学标记的运动捕获系统142和多个彩色视频相机144通信,其中,同步脉冲发生器可以被配置成:从基于光学标记的运动捕获系统142接收同步信号,用以对由多个彩色视频相机144将人类或动物对象或物体基本上同时捕获进行协调,如线148所示。例如,多个彩色视频相机144可以包括至少两个彩色视频相机,优选地八个彩色视频相机。
在各种实施方式中,光学运动捕获系统142可以包括多个红外相机。例如,可以存在至少两个彼此间隔布置的红外相机,以从不同的视图捕获对象。
多个彩色视频相机144和多个红外相机被布置成彼此间隔开并且至少沿着人类或动物对象或物体所采取的路径,或者至少基本上围绕人类或动物对象或物体的捕获体积。
3D轨迹可以通过代表布置有标记的骨骼标志或关键点的标签来识别。对于每个标记的标签可以被布置成与确定的每个2D位置一起传播,使得在生成的训练数据集中,每个标记的所确定的每个2D位置均包含对应的标签。
在一些示例中,计算机146还可以被配置成:根据彩色视频相机144(其捕获该特定(每个)2D图像)与标记之间的具有预定义余量的距离,在每个2D图像中在针对每个标记的所确定的2D位置上绘制2D半径以形成包围区域,以及对包围区域应用基于学习的上下文感知图像修复技术以从2D位置去除标记斑点。例如,基于学习的上下文感知图像修复技术可以包括基于生成对抗网络(GAN)的上下文感知图像修复技术。
在各种实施方式中,多个彩色视频相机144可以是多个全局快门相机。
在其他实施方式中,多个彩色视频相机144可以是多个卷帘快门相机。在这些其他实施方式中,计算机146还可以被配置成:针对由每个卷帘快门相机捕获的每个2D图像,对来自连接一段时间内的投影3D轨迹的第一条线与表示用于捕获2D图像的每个像素行的曝光时间的移动中间值的第二条线之间的交点的相交时间进行确定;基于相交时间,针对由每个卷帘快门相机捕获的每个2D图像,对3D中间位置进行插值,以从2D图像序列中获得3D插值的轨迹;以及将针对每个标记的3D插值的轨迹投影到所述2D图像中的每个2D图像,以确定在每个2D图像中的2D位置。
系统140可以用于促进方法100的执行。因此,系统140可以包括与图1A的方法100的元件或部件相同或相似的元件或部件,并且因此,相似的元件可以如在图1A的方法100的上下文中所描述的,并且因此此处可以省略相应的描述。
图2中示意性地示出了系统140的示例性设置200。如图2中所见,多个彩色(RGB)相机144和红外(IR)相机203被布置在具有放置在骨骼标志或关键点上的逆反射标记的对象205周围。不同的布置(图2中未示出)也是可能的。当对象205移动时,逆反射标记也在捕获体积中移动。同步脉冲发生器201可以通过同步信号211与光学运动捕获系统142进行通信,经由同步通道207与彩色视频相机144进行通信,以及与计算机146进行通信。计算机146和彩色视频相机144可以使用数据通道209进行通信。
图1D示出了根据各种实施方式的用于预测无标记人类或动物对象或无标记物体上的虚拟标记的3D位置的系统160的示意图。系统160可以包括:多个彩色视频相机164,多个彩色视频相机164被配置成将无标记人类或动物对象或无标记物体捕获为2D图像序列;以及计算机166,计算机166被配置成:对由多个彩色视频相机164捕获的2D图像序列进行接收,如虚线168所示。计算机166还可以被配置成:使用经训练的神经网络来针对由每个彩色视频相机164捕获的每个2D图像预测2D边界框;使用经训练的神经网络针对每个2D图像生成具有置信度分数的多个热图;针对每个热图选择具有最高置信度分数的像素,并且将所选择的像素与虚拟标记相关联,从而确定虚拟标记的2D位置;以及基于由多个彩色视频相机164捕获的2D图像序列,对所确定的相应2D位置进行三角测量以预测虚拟标记的3D位置序列。每个热图可以用于无标记人类或动物对象或无标记物体的虚拟标记的2D定位。对于每个热图的置信度分数指示在预测的2D边界框中的不同2D位置具有相关联的虚拟标记的概率。经训练的神经网络可以至少使用由方法100生成的训练数据集来训练。在实施方式中,计算机166可以是与多个彩色视频相机164通信以记录数据的同一计算机。在不同的实施方式中,计算机166可以是与同多个彩色视频相机164通信以记录数据的计算机分开的处理计算机。
可选地,可以基于作为用于三角测量的权重的相应置信度分数,对虚拟标记的相应2D位置进行三角测量。例如,三角测量可以包括使用下式得出虚拟标记的每个预测3D位置:(∑iwiQi)-1(∑iwiQiCi)其中给定i是1、2、......、N(N是彩色视频相机的总数),wi是用于三角测量的权重或来自第i个彩色视频相机的第i条射线的置信度分数,Ci是与第i条射线相关联的第i个彩色视频相机的3D位置,Ui是表示与第i条射线相关联的反投影方向的3D单位向量,I3是3×恒等矩阵。
在各种实施方式中,多个彩色视频相机164可以是多个全局快门相机。
在其他实施方式中,多个彩色视频相机164可以是多个卷帘快门相机。在这些其他实施方式中,计算机166还可以被配置成:基于两个连续的2D图像中所确定的2D位置来对每个卷帘快门相机的观察时间进行确定,以及基于观察时间,对虚拟标记在触发时间处的2D位置进行插值。观察时间可以利用式1来计算,其中,Ti是两个连续的2D图像中的每个2D图像的触发时间,以及v是两个连续的2D图像中的每个2D图像中的2D位置的像素行。可以对从多个卷帘快门相机得出的所插值的相应2D位置进行三角测量,以预测虚拟标记的3D位置序列。
从图3中示意性示出的系统160的示例性设置300可见,多个彩色视频相机164可以彼此间隔开地布置并且可沿着到执业医生的房间的走道或捕获体积313(其可以是诊所/医院的走廊的一部分)的至少一部分操作,使得当无标记人类或动物对象(例如患者305)沿着走道或捕获体积313行走,如箭头315所示,并进入执业医生的房间中时,可以由系统160处理由多个彩色视频相机164捕获的2D图像序列以预测无标记人类或动物对象上的虚拟标记的3D位置。换句话说,在患者305经由走道或捕获体积313走进执业医生的房间以查看执业医生之后,系统160将对患者305上的虚拟标记的3D位置进行预测,并且这些3D位置可以用于促进信息,比如示出患者305的移动的动画(以数字化形式)。计算机166可以位于执业医生的房间中或靠近多个彩色视频相机164的其他地方。对于计算机166位于靠近多个彩色视频相机164的其他地方的情况,经预测/处理的信息可以被远程传输到位于执业医生房间中的计算设备或显示设备以进行处理/显示,或者传输到移动设备以进行处理/显示。点D、E仅表示一些彩色视频相机164(参见图3的右侧)与计算机166(参见图3的左侧)的电耦接。彩色视频相机164的其他布置也是可能的。例如,多个彩色视频相机164可以全部沿着走道313的一侧布置。
系统160可以用于促进方法120的执行。因此,系统160可以包括与图1B的方法120的元件或部件相同或相似的元件或部件,并且因此,相似的元件可以如在图1B的方法120的上下文中所描述的,并且因此相应的描述可以此处省略。系统160还可以包括与图1C的系统140的元件或部件相同或相似的元件或部件中的一些,并且因此,分配相同的结束数字并且相似的元件可以如在图1C的系统140的上下文中所描述的,并且因此相应的描述可以此处省略。例如,在各种实施方式的上下文中,多个彩色视频相机164与图1C的多个彩色视频相机144相同。
下面将更详细地描述方法100、120和系统140、160的示例。
i.优点和改进
与现有方法/系统相比,根据各种实施方式的方法100、120和系统140、160的几个优点和改进值得赞赏。
相对于非光学运动捕获系统的优点
非光学运动捕获系统可以有多种形式。市场上最流行的一种是使用惯性测量单元(IMU)套件来测量加速度、角速度和环境磁场,以对传感器的取向、位置和轨迹进行近似。还可以集成超宽带技术以实现更好的定位。另一种现有的跟踪技术可以是使用电磁发射器来跟踪66cm的小半径的球形捕获体积内的传感器。此类系统的一个常见缺点是传感器对对象身体的妨碍。将传感器附着在对象上不仅需要对象准备时间,而且还可能导致不自然的移动和/或阻碍移动。利用本申请中所描述的无标记运动捕获系统(例如系统160),在对象身体上不需要附加的项目,并且这使得运动捕获工作流程更加顺畅,并且在该过程中人类参与/干预更少。
相对于基于商业标记的系统的优点
熟练人员仔细放置标记以进行全身运动捕获通常需要至少30分钟。如果将标记从工作流程中去除,则可以从工作流程中去除一个人(熟练人员),并且可以为每个新对象节省至少30分钟。记录后,现有的基于标记的运动捕获系统仅提供未贴标签的标记的轨迹,在通过标记贴标签和间隙填充对数据进行后处理之前,这些轨迹无法用于任何分析。此过程通常以半自动方式完成,该半自动方式仅处理1分钟的记录时间就需要大约1个手工小时。对于无标记运动捕获系统(例如系统160),手动后处理步骤不再适用,因为系统160固有地输出带有标签的虚拟标记位置。由于所有虚拟标记处理都是完全自动化的,因此可以节省每分钟记录1个手工小时并替换为每分钟记录时间约20机器分钟,甚至通过更多的计算能力更快。从成本角度来看,基于商业标记的系统范围在SGD 100,000到500,000之间,然而,无标记系统160中的所有材料的成本可能仅为约SGD 10,000,其为低端基于标记的系统的约10%。数据驱动的无标记系统(例如系统160)相对于基于标记的系统所具有的一项技术优点是无标记系统避免遮挡的方式。据发明人所知,在基于标记的系统中避免遮挡的唯一方式是添加更多相机以确保至少2个相机始终同时看到一个标记。然而,无标记系统(例如系统160)可以推断遮挡区域中的虚拟标记,因此,它不需要那么多相机并且它在标记轨迹中产生小得多的间隙。此外,使用标记可能会导致不自然的移动、记录期间标记掉落,有时甚至会刺激皮肤。去除标记的使用至少刚好简单地去除了上述这些问题。
相对于单一深度相机系统的优点
深度相机是在每个像素中给出深度值而不是颜色值的相机。因此,只有一台相机从一侧看到对象的3D表面。该信息可以用于估计人体姿势以用于运动捕获目的。然而,与彩色相机相比,现成的深度相机的分辨率相对较低,并且深度值通常有噪声。这使得单个深度相机的运动捕获结果相对不准确,并且存在遮挡带来的额外问题。例如,即使没有遮挡,Kinect SDK和Kinect 2.0的腕部位置误差通常也在3cm至7cm之间。无标记系统(例如系统160)以低于2cm的平均误差产生更准确的结果。
相对于免费可用的开源人体跟踪软件的优点
有许多开源项目免费共享2D人体关键点检测软件,例如Google的MediaPipe、Intel的OpenVINO和Facebook的Detectron2等。这些项目也以数据驱动的方式工作,但它们依赖人工注释的数据集作为训练数据。为了证明使用(例如,如在方法100和/或系统140中使用的)基于标记的注释M-BA相对于手动注释的优点,已经产生了一组初步结果用于在下面的表I中以及图4中进行比较。
表I——可用项目之间的平均3D关节预测误差的比较
图4示出了来自不同工具(即M-BA 402、Thia Markerless 404、Facebook的Detectron2 406、OpenVINO 408和MediaPipe 410)的12个关节(例如肩部、肘部、腕部、臀部、膝盖和脚踝)的总体准确性曲线图的绘图。如图4中所指出的,用作方法100、120的基础的M-BA402在整个距离阈值上产生最高的准确性。
为了获得表I和图4中的结果,8相机系统(在与用于预测无标记人类或动物对象160上的虚拟标记的3D位置的系统类似的上下文中描述的,以及多个彩色视频相机164)从执行随机动作列表的一名男性测试对象和一名女性测试对象获取超过50,000个帧(每帧包含8个视点)。同时,基于标记的运动捕获系统(Qualisys)(在与基于光学标记的运动捕获系统142类似的上下文中描述)用于记录地面真实位置以用于准确性比较。对于系统(例如160),数据准备、训练、推理和三角测量方法在下面的ii.技术描述部分中描述。本实验中使用的训练数据包含来自27个对象的约216万个图像,其中两个测试对象不包含在训练数据中。对于MediaPipe、OpenVINO和Detectron2,对从这些工具输出的2D关节位置进行三角测量,并且以与系统(例如,160)执行的方式相同的方式将其与基于标记的运动捕获系统的黄金标准测量结果进行比较。在MediaPipe的情况下,由于当对象大小相对于图像大小较小时,它的效果不佳,因此在推断2D关节位置之前,会使用地面实况对象边界框来对图像进行裁剪。实验结果表明,该方法(例如,120)在所有六个关节中产生的平均误差均低于那些开源工具。重要的是要知道Detectron2和方法(例如,120)使用完全相同的神经网络架构。这意味着这里的重点是设计直接将平均误差减少约28%的更好的训练数据。
相对于商业无标记运动捕获系统的优点
与之比较的一种现有商业无标记运动捕获系统是Theia Markerless。TheiaMarkerless是严格支持仅来自两个相机系统的视频的软件系统:Qualisys Miqus视频和索尼RX0M2。这两个相机系统的硬件层成本已分别为约SGD 63,000或SGD 28,000(对于8个相机加计算机而言),另加SGD 28,000的软件成本。相比之下,系统160的整个硬件层的材料成本仅花费约SGD 10,000。为了评估准确性,也在Theia Markerless上进行了类似的测试。值得注意的是,用于Theia Markerless评估的视频是由昂贵的Miqus Video全局快门相机系统(所有8个相机与多个彩色视频相机164并排放置)记录的。所有跟踪和三角测量算法都在可执行的软件中完成,并且不会透露。尽管Theia Markerless使用了更昂贵的硬件,但系统160在评估中在每个关节中都表现优异(参见表I和图4)。Theia Markerless的缺点之一是关节提取中存在数据间隙。当软件不确定特定帧中的特定关节时,它决定不给出该关节的答案。这种相对较高的间隙百分比(0.6%至2.4%)很容易在后续分析中引起更多问题。另一方面,根据各种实施方式,系统160总是预测结果。
ii.技术描述
本部分描述了使系统(在与系统140、160类似的上下文中描述的)工作的重要部件、技术和想法。由于消融研究尚未完成,目前还不清楚每个想法对最终准确性的贡献有多大。然而,给出了设计每个部分的原因。
感测硬件和相机配置
为了收集训练数据(在与用于生成关键点检测的训练数据集的方法100类似的上下文中描述的),需要一个基于标记的运动捕获系统(例如,142)和多个彩色视频相机(例如,144)。运动捕获系统142能够产生同步信号,并且视频相机144能够在接收到同步脉冲时进行拍摄。硬件时钟乘法器和除法器可以用于允许以两种不同帧速率同步,因为普通视频相机通常以比运动捕获系统低得多的帧速率运行。
所有视频相机均设置在地面之上约170cm并且面向中央捕获区域。重要的是,从基本上相同的高度拍摄训练图像,以使训练和系统部署期间可控的数据的变化最小化。另外,170cm可能是一般三脚架无需搭建框架来安装相机即可达到的高度。
为了支持精确校准或预校准,每个视频相机(例如,144)配备有至少一个可见(白色)LED 500,类似于图5中所示的示例,其中可以提供三个这样的LED。这些LED 500允许仅感知可见光谱中的光的普通视频相机将圆形逆反射标记视为所拍摄(捕获的)图像上的可检测的亮点。当基于标记的运动捕获系统142在3D空间中看到该标记并且视频相机144同时也在图像上的2D中看到该标记时,它们形成2D-3D对应对。在整个捕获体积中充分收集这些对应对可以用于计算准确的相机姿势(外在参数)并对内在相机参数进行微调。一项重要的相机设置是曝光时间。曝光需要足够短,以使运动模糊最小化。在视频记录期间,目标对象是人类。因此,曝光时间选择为2-8秒或约3.9ms。此时,快速移动期间人影边缘依然清晰。在校准期间,目标物体是可能比人体移动更快的逆反射标记。因此,曝光时间选择为2-10秒或约1ms。在此曝光下,捕获环境非常暗,但来自标记的反射仍然足够明亮,足以被检测到。视频相机144可以使用全局快门传感器或卷帘快门传感器两者。由于全局快门类型通常用于此类应用,因此以下解释更多地集中于卷帘快门相机在此应用中的集成,因为它需要附加的建模和计算。
卷帘快门相机模型
本部分描述了针对e-conSystem的FSCAM_CU135相机开发的卷帘快门模型。然而,该模型可能适用于大多数卷帘快门相机,因为它们的操作方式类似。在FSCAM的硬件触发模式下,上升沿脉冲用于触发图像捕获。接收到触发脉冲后,相机传感器在开始读出之前会经历b秒的延迟。然后,它从顶部开始逐行读取像素,每行延迟d秒,直到到达最后一行。基于相对于前一触发的预定定时,自动开始下一帧的曝光。下一个图像的读出以相同的方式从下一个上升沿脉冲开始。触发到读出延迟(b)和线延迟(d)取决于相机型号和配置。在FSCAM以1920×1440分辨率运行的情况下,b和d分别为约5.76×10-4秒和1.07×10-5秒。图6示出了针对FSCAM_CU135相机开发的该卷帘快门模型600。在该模型600中,假设同一行中的所有像素总是同时操作。根据图6,曝光区域的中心线(中间曝光线)表示像素行与时间之间的线性关系。这意味着,如果在特定视频帧的特定像素行观察到物体,则可以计算针对该对象捕获的确切时间(t)。该关系可以用类似于式1来表示:
t=Ti+b–e/2+dv, -式1
其中Ti是视频帧(i)的触发时间,
e是曝光时间,以及
v是像素行。
如图6所见,灰色区域是像素行曝光的时间。请注意,图像的第一行从顶行开始。该模型600可以以下方式使用。
对在触发时间处的2D标记轨迹进行插值:当多个卷帘快门相机观察同一物体(诸如标记)时,这些观察的时间通常不匹配,因为该物体不会投影到所有相机的同一像素行。当该过程需要多个相机观察时,这种时间不匹配会导致很大的误差。例如,对来自多个相机的2D观测的三角测量假设这些观测来自同一时刻,否则,可能会产生很大的误差,尤其是当物体快速移动时。为了增强结果三角测量期间的过程,可以使用卷帘快门模型来对观察到的标记或物体在触发时间处的2D位置进行近似,以便可以获得在所有相机上完全相同的时间发生的观察。来自卷帘快门模型600的计算在图7的图形表示700中示出。在图7中,每个黑点表示一个视频帧上的观察点。根据卷帘快门模型600,这些点始终停留在中间曝光线上。对于一个特定帧中的每个观察,可以使用已知的像素行(v)根据式1求解出观察时间(t)。当两个连续视频帧中的观察时间(t1和t2)已知时,可以轻松完成其间触发时的2D位置的线性插值。换句话说,为了对在触发时间(Tm)处观察到的2D轨迹的位置进行近似,首先根据观察的行(v1和v2)计算观察时间(t1和t2)。利用t1和t2,可以对Tm处的2D位置进行插值。被插值的值用于三角测量,就好像它来自全局快门相机一样。
将3D标记轨迹投影到2D图像:在训练数据生成中,一个关键步骤是在每个视频帧上生成40个身体标记的2D位置。如果相机使用全局快门传感器,则可以确切地知道整个图像的观察时间。该时间可以用于从标记轨迹对3D位置进行插值并将其直接投影到视频相机。相比之下,卷帘快门的观察时间取决于直到投影完成后才知道的投影结果(行)。因此,开发了图8所示的新的投影方法800。
首先,来自基于标记的运动捕获系统(例如,光学运动捕获系统142)的目标3D轨迹被逐个样本地直接投影到目标相机(例如,多个彩色视频相机144中的每一个)。换句话说,当来自基于标记的运动捕获系统的3D标记轨迹被投影到相机时,可以如图8所示绘制它,其中每个点代表一个样本。对于每个样本,投影给出像素行(v),并且该样本的时间也是已知的。在基于标记的运动捕获系统的采样频率相对较高的情况下,如果投影点在如图8的绘图中连接,则存在与中间曝光线相交的一些线或相邻对(来自式1)。由于任何两个连续的样本都可以形成线性式子(连接两个点的线),如果该式子与式1中的任何中间曝光线在其自己的时间段内相交,则这两个线性式子的解告诉了插值的确切时间。使用该相交时间根据轨迹对3D位置进行插值。然后,所插值的3D位置可以被投影到相机(或图像)以获得与观察一致并且可以在训练中使用的精确投影。
视频相机校准
对相机内在参数的初始化:对于每个相机,使用OpenCV库的标准流程来对相机内在参数进行近似。具有35mm块的10x7棋盘状格在相机前以30个不同的姿势保持静止,以拍摄30个不同的图像。然后,使用cv2.findChessboardCorners在每个图像上查找2D棋盘状格角。然后,使用cv2.calibrateCamera来获得内在矩阵和畸变系数的近似。在校准的下一阶段对这些值进行微调。
用于训练数据收集的相机校准:该校准,更具体地,预校准过程假设基于标记的运动捕获系统(例如,光学运动捕获系统142)已经被校准,因为来自以下校准的外在参数解位于基于标记的运动捕获参考系中。该校准是通过在整个捕获体积内挥动具有一个逆反射标记的棒约2-3分钟来完成的。该标记由基于标记的运动捕获系统和具有白色LED开启的相机(例如,多个彩色视频相机144)捕获。从基于标记的运动捕获系统的角度来看,它记录了标记的3D轨迹。从视频相机的角度来看,它看到一系列具有亮点的暗图像,可以将该亮点提取为每个图像上的2D位置。
为了提取这个2D位置,该算法遍及整个图像进行扫描以搜索亮像素,并在该位置应用均值平移算法,使该位置收敛于亮像素簇的质心。
如果相机使用全局快门传感器,则通过使用视频相机帧的曝光间隔中间的时间从3D标记轨迹对3D位置进行线性插值来简单地收集2D-3D对应对。然后,对该组对应对应用cv2.calibrateCamera函数给出外在相机参数,并且对内在相机参数进行微调。
然而,这不能直接在卷帘快门相机上完成,因为所有像素行不是同时捕获的。视频帧上观察到的2D标记的时间根据看到的像素行而变化。式1用于对2D标记观察的时间进行计算,并且该时间用于从3D标记轨迹对3D位置进行线性插值,以形成一对2D-3D对应(correspondent)(或对应性(correspondence))对。然后,对该组对应对应用cv2.calibrateCamera函数给出外在相机参数,并且对内在相机参数进行微调。
如果相机视野中没有其他明亮或反射项目,则所解释的方法效果很好。然而,这种假设不太实用,因为运动捕获环境通常包含大量光源、计算机屏幕和来自对面视频相机的LED。因此,需要额外的程序来处理这些噪声。
例如,在挥动棒步骤之前完成5秒的视频记录,以找到图像中的亮像素,并在每一帧中将它们屏蔽掉,然后再在挥动棒的记录中搜索标记。这消除了相机视野中的静态明亮区域,但来自移动闪亮物体诸如手表或眼镜的动态噪声包括在2D-3D对应池中。为了从2D-3D对应的池中去除这些动态噪声,开发了一种基于随机样本一致(RANSAC)想法的方法,以拒绝模型拟合中的异常值。该方法假设所有2D-3D对应对样本中出现的噪声小于5%,以便大多数人可以正确形成共识。
该方法描述如下。
(a)从池中随机采样100个2D-3D对应对。
(b)使用这100个对应对通过cv2.calibrateCamera对相机参数进行计算。
(c)使用计算出的相机参数来对池中所有对的所有3D点进行投影,以观察投影和2D观察之间的欧几里得误差。误差小于10个像素的对被归类为良好对。
(d)最近一轮分类中的所有良好对都用于通过cv2.calibrateCamera再次对相机参数进行计算。
(e)重复步骤(c)和(d),直到良好点集在后续迭代即模型收敛中保持相同。
如果前100个样本包含大量噪声对,则计算出的相机参数将不准确,并且与池中的许多对应对不一致。在这种情况下,模型会利用少量的良好对进行收敛。
另一方面,如果前100个样本仅包含有效对,则计算出的相机参数将相当准确,并且与池中的大量有效对一致。在这种情况下,良好对的数量会扩展以覆盖所有有效点,同时将噪声对排除在外,因为它们与有效共识不一致。
为了使后一种情况发生,将过程(a)-(e)重复200次,以选择具有最大数量的良好对的最终模型。从评估来看,这种噪声去除方法可以将平均投影误差降低到亚像素级别,这对数据收集是理想的。
用于系统部署的外在相机校准:在系统(例如,系统160)的实际部署中,不存在基于标记的运动捕获系统来提供标记轨迹的3D信息来收集用于相机校准的2D-3D对应性。因此,可以使用替代性外在校准方法。如果相机没有配备LED,则可以通过两个相机同时捕获棋盘状格,以使用cv2.StereoCalibrate方法计算它们之间的相对变换。当系统中所有相机之间的相对变换已知时,通过Leven-berg-Marquardt优化再次对这些外在参数进行微调以获得最终结果。为了促进该校准过程(在与在用于预测无标记人类或动物对象120上的虚拟标记的3D位置的方法中对彩色视频相机进行外在校准类似的上下文中描述),通过将独特的Aruco标记添加到棋盘状格900中,可以在同一环境中使用多个棋盘状格,如图9中的Charuco板所示。可以使用cv2.aruco.estimatePoseCharucoBoard函数检测这些Charuco板及其板身份。
如果相机配备了LED,则可以使用具有反射标记的棒和束调整优化技术来扩展校准,使其在更大的体积中更加准确。
训练数据收集和预处理
该部分可以在与用于生成用于关键点检测的训练数据集的方法100类似的上下文中进行描述,并且对在训练之前如何收集数据集和对数据集进行预处理进行讨论。训练数据(或训练数据集)包含3个关键元素:来自视频相机的图像、每个图像上2D关键点的位置、以及目标对象的边界框。
标记集:从RRIS的能力数据协议中的标记集中选择一组40个标记(参考P.Liang等人,“An asian-centric human movement database capturing activities of dailyliving”,Scientific Data,第7卷,第1期,第1-13页,2020年)。所有簇都被去除,因为它们的放置在多个对象中不一致,并且它们的大尺寸导致稍后的修复步骤困难。头部上有4个标记(RTEMP、RHEAD、LHEAD、LTEMP),躯干上有4个标记(STER、XPRO、C7、T10),骨盆上有4个标记(RASIS、LASIS、LPSIS、RPSIS),每个上肢上有7个标记(ACR、HLE、HME、RSP、USP、CAP、HMC2),每个下肢上有7个标记(FLE、FME、TAM、FAL、FCC、FMT1、FMT5)。标记放置任务根据骨骼标志进行标准化,并且最优选地由经过训练的人员来完成。
针对卷帘快门相机的标记投影:使用解释了在卷帘快门相机模型下将3D标记轨迹投影到2D图像的上一部分中描述的投影方法将所有3D标记轨迹都投影到每个视频相机。2D投影的结果是用于训练的2D关键点。例如,参考方法100的步骤104。
标记去除:从视频相机拍摄的图像始终包含可见的标记斑点,这可能会在推断期间给学习模型带来问题。当模型看到关键点的预期位置始终落在可见标记的灰色斑点上的模式时,模型会记住该模式并始终寻找灰色斑点作为定位标记本身的关键特征。当身体上不再有标记时,这种过度拟合可能会降低实际无标记使用中的性能。因此,视频数据被准备成好像对象上没有标记一样。这可以通过使用图像修复技术来完成,该图像修复技术使用生成对抗网络(GAN),因为它通过了解周围的上下文来替换目标区域中的像素颜色。在这种情况下,使用DeepFillv2来去除标记。为了去除标记,列出被标记占用的像素。这可以通过采用2D投影(例如方法100的步骤104)并根据相机与标记之间的距离绘制2D半径来自动完成,其中具有一些附加余量以覆盖标记的底部和阴影。
非对象去除:由于多个视频相机在各个方向观察,因此很难避免视野中的非对象人类。由于这些非对象人类没有佩戴标记,因此他们不会被贴标签,并在训练过程中被解释为背景,这可能会导致模型混乱。因此,Detectron2的默认人类检测会自动检测到那些非对象人类,并使平滑边缘变得模糊。
边界框制定:训练过程需要的一条重要信息是每个人类对象周围的2D边界框。这个简单矩形形式的2D边界框不仅覆盖了所有投影的标记位置,还覆盖了所有身体部位的完整轮廓。因此,通过将每个标记的覆盖范围扩大不同的量来开发该制定,直至其覆盖相邻的身体部位。例如,手指上没有标记;因此,使用肘部、腕部和手部标记来对手指到达的可能体积进行近似。然后,该体积的表面上的那些3D点被投影到每个相机以对边界框进行近似。例如,参考方法100的步骤108。
神经网络架构和训练框架
采用特征金字塔网络(FPN)作为特征提取主干的Mask-RCNN的关键点检测版本作为神经网络架构。由于网络已经在Detectron2项目存储库上使用PyTorch实现,因此可以进行修改,以将关键点集从关节中心更改为40个标记集(如上面训练数据收集和预处理部分中所述,并且还参考了方法120的步骤125和124)并允许从视频文件加载训练图像。数据加载模块也被修改为在所有工作进程中使用共享内存,以减少内存利用率的冗余,并允许训练数据的大小更大。
策略性三角测量
训练完成后,该模型能够从无标记对象的图像中预测所有40个标记的2D位置。例如,参考方法120的步骤126。在一些特定情况下,诸如对象被相机视野半裁剪,一些标记可能无法提供位置输出,因为置信度水平太低。对于卷帘快门相机,用于三角测量的2D位置是两个连续帧之间的插值结果,以获得触发时间处的位置,如上面解释了卷帘快门相机模型下对触发时间处的2D标记轨迹的插值部分所述。如果相邻帧之一的标记不可用于插值,则该相机将被视为对该帧中的该标记不可用。
在理想情况下,当所有可用相机的预测输出都相当准确时,可以使用直接线性变换来完成所有相机结果的三角测量。来自一台相机的图像上的一个2D位置可以由从相机原点指向的3D射线表示。直接线性变换直接对3D点进行计算,该3D点是所有这些射线的虚拟交点。在这种理想情况下,3D点和每条射线之间的距离不会很大(即小于10cm),并且解决方案可能很容易被接受。
但实际上,少数相机的预测可能是错误的。有时,一些相机可能无法看到腕部的确切位置,例如,由于躯干被阻挡。有时,一些相机可能会混淆身体的左侧和右侧。为了使三角测量更加稳健,方法是拒绝那些与共识不一致的相机的贡献。
对一个特定帧中的一个标记进行三角测量的方法可以如下完成。
(a)列出所有可用的相机(能够提供目标标记的2D位置的相机)。
(b)对所有可用相机进行三角测量以获得3D位置。三角测量可以用常用的DLT方法来完成。可选地,如果给出每个2D标记预测的置信度分数,则可以使用下面有关新的加权的三角测量部分中描述的加权的三角测量公式(参见式2)显著增强三角测量方法。
(c)在可用列表中的相机中,对给出经三角测量的3D点与来自该相机的射线之间最大距离的相机进行识别。如果最大距离小于10cm,则接受三角测量。否则,将该相机从可用相机列表中删除。
(d)重复步骤(b)和(c),直到解决方案被接受。如果列表中的相机数量低于两个,则该帧中的该标记将没有解决方案。
使用此方法,每帧每个标记执行的三角测量的最大数量仅为n-1,其中,n是相机的数量。这种n-1次计算比尝试需要2n-n-1次计算的所有可能的三角测量组合要快得多。
新的加权的三角测量
对于执行2D关键点定位的神经网络来说,通常还会产生与每个2D位置输出相关联的置信度分数。例如,Mask-RCNN的关键点检测版本会针对每个关键点产生在边界框内的置信度热图。然后,选择热图中具有最高置信度的2D位置作为答案。在这种情况下,峰值处的置信度分数是该2D关键点预测的相关联分数。在正常的三角测量中,置信度分数通常被忽略。然而,如下所述,加权的三角测量公式允许利用分数作为三角测量权重来提高三角测量准确性。
加权的三角测量公式:经三角测量的3D位置(P)可以得出为:
P=(∑iwiQi)-1(∑iwiQiCi) -式2
其中,
给定:
wi是权重或来自第i个相机的第i条射线的置信度分数,
Ci是与第i条射线相关联的3D相机位置,
Ui是表示与第i条射线相关联的反投影方向的3D单位向量,
I3是3×3恒等矩阵。
每条反投影射线的方向矢量(Ui)计算如下:-
1)使用cv2.undistortPointsIter将2D观测反扭曲为归一化坐标
2)在相机参考系[x_undistorted,y_undistorted,1]T中形成3D方向矢量
3)使用相机取向的当前估计将方向旋转到全局参考系
4)对向量进行归一化以获得单位向量(Ui)。
由于该公式是通过使三角测量点与所有射线之间的距离的加权平方和最小化得出的,因此置信度较低的预测对三角测量的影响较小,并且允许三角测量点更接近预测置信度较高的射线,从而得到更好的整体准确性。
iii.商业应用
本发明的潜在客户是任何想要非实时无标记人体运动捕获系统的人。他们可能是想要研究人体移动的科学家,想要根据人体移动创建动画的动画师,或者想要根据患者的移动产生客观诊断的医院/诊所。
减少用于执行运动捕获系统的时间和人力的优点为临床医生提供了采用该技术对患者移动进行客观诊断/分析的机会,因为患者可以执行简短的运动捕获并去看医生,在同一小时或更短的时间内得出分析结果。
虽然已经参考具体实施方式具体示出和描述了本发明,但是本领域技术人员应该理解,在不脱离由附加权利要求限定的本发明的精神和范围的情况下,可以在形式和细节上进行各种改变。因此,本发明的范围由所附权利要求来指示,并且因此旨在涵盖落入权利要求的等同物的含义和范围内的所有改变。
Claims (40)
1.一种用于生成用于关键点检测的训练数据集的方法,所述方法包括:
根据由基于光学标记的运动捕获系统捕获多个标记,每个标记均被捕获为3D轨迹,其中,每个标记被布置在人类或动物对象的骨骼标志或者物体的关键点上;以及由多个彩色视频相机将所述人类或动物对象或所述物体在一段时间内基本上同时捕获为2D图像序列,
将针对每个标记的3D轨迹投影到2D图像中的每个2D图像,以确定在每个2D图像中的2D位置;
基于所述2D图像序列中的相应2D位置和所述多个彩色视频相机的曝光相关时间,针对所述2D图像中的每个2D图像,对针对每个标记的3D位置进行插值;
基于所插值的所述多个标记的相应3D位置以及从所述标记中彼此具有解剖学或功能关系的两个或更多个标记得出的扩展体积,针对每个2D图像生成在所述人类或动物对象或所述物体周围的2D边界框;以及
以及生成训练数据集,所述训练数据集包括从所述2D图像序列中选择的至少一个2D图像、所确定的每个标记在所选择的至少一个2D图像中的2D位置、以及针对所选择的至少一个2D图像生成的2D边界框。
2.根据权利要求1所述的方法,其中,使用由所述基于光学标记的运动捕获系统传送到所述多个彩色视频相机的同步信号来对下述进行协调:将所述多个标记中的每个标记均捕获为所述3D轨迹;以及将所述人类或动物对象或所述物体在所述一段时间内基本上同时捕获为所述2D图像序列。
3.根据权利要求1或2所述的方法,所述方法还包括:在对所述3D轨迹进行投影的步骤之前,用代表布置有所述标记的所述骨骼标志或关键点的标签来对捕获的3D轨迹进行识别,其中,对于每个标记的所述标签被布置成与确定的每个2D位置一起传播,使得在生成的训练数据集中,每个标记的所确定的每个2D位置均包含对应的标签。
4.根据权利要求1至3中任一项所述的方法,所述方法还包括:在将所述3D轨迹投影到所述2D图像中的每个2D图像以确定在每个2D图像中的2D位置的步骤之后,
根据所述彩色视频相机与所述标记之间的具有预定义余量的距离,在每个2D图像中并且针对每个标记在所确定的2D位置上绘制2D半径以形成包围区域,以及对所述包围区域应用基于学习的上下文感知图像修复技术以从所述2D位置去除标记斑点。
5.根据权利要求4所述的方法,其中,所述基于学习的上下文感知图像修复技术包括基于生成对抗网络的上下文感知图像修复技术。
6.根据权利要求1至5中任一项所述的方法,其中,所述多个彩色视频相机为多个全局快门相机。
7.根据权利要求6所述的方法,其中,所述曝光相关时间是用于使用每个全局快门相机捕获每个2D图像的曝光时间的中间值。
8.根据权利要求7所述的方法,其中,每个全局快门相机包括至少一个可见发光二极管,所述至少一个可见发光二极管能够操作以促进耦接到棒的逆反射标记被感知为可检测的亮点,并且所述多个全局快门相机通过以下方式进行预校准:
基于在所述棒连续挥动的情况下由所述基于光学标记的运动捕获系统将所述逆反射标记捕获为覆盖目标捕获体积的3D轨迹,以及由每个全局快门相机将所述逆反射标记在一段时间内基本上同时捕获为2D校准图像序列,
通过遍及整个2D校准图像进行扫描以搜索亮像素并识别所述亮像素的2D位置来针对每个2D校准图像提取所述逆反射标记的2D校准位置,并且在搜索到的亮像素的2D位置处应用迭代算法,以使所述2D位置收敛于亮像素簇的质心;
基于每个2D校准图像中的曝光时间的中间值和所述3D轨迹,对针对所述2D校准图像中的每个2D校准图像的3D校准位置进行线性插值;
针对所述多个2D校准图像的至少部分2D校准图像形成多个2D-3D对应对,其中,每个2D-3D对应对包括针对所述多个2D校准图像的至少部分2D校准图像中的每个2D校准图像的所收敛的2D位置和所插值的3D校准位置;以及
对所述多个2D-3D对应对应用相机校准函数以对外在相机参数进行确定并且对所述多个全局快门相机的内在相机参数进行微调。
9.根据权利要求1至5中任一项所述的方法,其中,所述多个彩色视频相机为多个卷帘快门相机,并且将所述3D轨迹投影到所述2D图像中的每个2D图像的步骤还包括:
针对由每个卷帘快门相机捕获的每个2D图像,对来自连接所述一段时间内的投影3D轨迹的第一条线与表示用于捕获所述2D图像的每个像素行的曝光时间的移动中间值的第二条线之间的交点的相交时间进行确定;
基于所述相交时间,针对由每个卷帘快门相机捕获的每个2D图像对3D中间位置进行插值,以从所述2D图像序列中获得3D插值的轨迹;以及
将针对每个标记的所述3D插值的轨迹投影到所述2D图像中的每个2D图像,以确定在每个2D图像中的2D位置。
10.根据权利要求9所述的方法,其中,所述曝光相关时间是所述相交时间。
11.根据权利要求9或10所述的方法,其中,每个卷帘快门相机包括至少一个可见发光二极管,所述至少一个可见发光二极管能够操作以促进耦接到棒的逆反射标记被感知为可检测的亮点,并且所述多个卷帘快门相机通过以下方式进行预校准:
基于在所述棒连续挥动的情况下由所述基于光学标记的运动捕获系统将所述逆反射标记捕获为覆盖目标捕获体积的3D轨迹,以及由每个卷帘快门相机将所述逆反射标记在一段时间内基本上同时捕获为2D校准图像序列,
通过遍及整个2D校准图像进行扫描以搜索亮像素并识别所述亮像素的2D位置,来针对每个2D校准图像提取所述逆反射标记的2D校准位置,并且在搜索到的亮像素的2D位置处应用迭代算法,以使所述2D位置收敛于亮像素簇的2D质心;
基于来自所述多个卷帘快门相机的2D质心的观察时间,从覆盖所述目标体积的所述3D轨迹对3D校准位置进行插值,其中,来自每个2D校准图像i的每个亮像素簇的每个2D质心的观察时间通过下式计算:
Ti+b–e/2+dv,
其中Ti是第i个2D校准图像的触发时间,
b是所述卷帘快门相机经历的触发到读出延迟,
e是针对所述卷帘快门相机设置的曝光时间,
d是所述卷帘快门相机经历的线延迟,以及
v是所述亮像素簇的2D质心的像素行;
针对所述多个2D校准图像的至少部分2D校准图像形成多个2D-3D对应对,其中,每个2D-3D对应对包括针对所述多个2D校准图像的至少部分2D校准图像中的每个2D校准图像的所收敛的2D位置和所插值的3D校准位置;以及
对所述多个2D-3D对应对应用相机校准函数以对外在相机参数进行确定并且对所述多个卷帘快门相机的内在相机参数进行微调。
12.根据权利要求8或11所述的方法,其中,所述迭代算法是均值平移算法。
13.根据权利要求8或11所述的方法,其中,使用由所述基于光学标记的运动捕获系统传送到所述多个彩色视频相机的同步信号来对下述进行协调:将所述逆反射标记捕获为覆盖所述目标捕获体积的所述3D轨迹;以及将所述逆反射标记基本上同时捕获为所述2D校准图像序列。
14.根据权利要求1至13中任一项所述的方法,其中,所述标记包括逆反射标记。
15.一种用于预测无标记人类或动物对象或无标记物体上的虚拟标记的3D位置的方法,所述方法包括:
根据由多个彩色视频相机将所述无标记人类或动物对象或所述无标记物体捕获为2D图像序列,
使用经训练的神经网络来针对由每个彩色视频相机捕获的每个2D图像预测2D边界框;
通过所述经训练的神经网络针对每个2D图像生成具有置信度分数的多个热图,
其中,每个热图用于所述无标记人类或动物对象或所述无标记物体的虚拟标记的2D定位,
所述经训练的神经网络是使用至少通过根据权利要求1至14中任一项所述的方法生成的训练数据集训练的;
针对每个热图选择具有最高置信度分数的像素,并且将所选择的像素与所述虚拟标记相关联,从而确定所述虚拟标记的2D位置,其中,对于每个热图的所述置信度分数指示在预测的2D边界框中的不同2D位置具有相关联的虚拟标记的概率;以及
基于由所述多个彩色视频相机捕获的所述2D图像序列,对所确定的相应2D位置进行三角测量以预测所述虚拟标记的3D位置序列。
16.根据权利要求15所述的方法,其中,三角测量的步骤包括:基于作为用于三角测量的权重的相应置信度分数,对所述虚拟标记的相应2D位置进行加权的三角测量。
17.根据权利要求16所述的方法,其中,所述加权的三角测量包括使用下式得出所述虚拟标记的每个预测3D位置:
(∑iwiQi)-1(∑iwiQiCi)
其中,
给定:
i是1、2、......、N,
N是彩色视频相机的总数,
wi是用于三角测量的权重或来自第i个彩色视频相机的第i条射线的置信度分数,
Ci是与所述第i条射线相关联的所述第i个彩色视频相机的3D位置,
Ui是表示与所述第i条射线相关联的反投影方向的3D单位向量,I3是3×3恒等矩阵。
18.根据权利要求15至17中任一项所述的方法,其中,所述多个彩色视频相机为多个全局快门相机。
19.根据权利要求15至17中任一项所述的方法,其中,所述多个彩色视频相机是多个卷帘快门相机,并且所述方法还包括:在对相应2D位置进行三角测量以预测所述虚拟标记的3D位置序列的步骤之前,
基于两个连续的2D图像中所确定的2D位置,对每个卷帘快门相机的观察时间进行确定,其中,所述观察时间通过下式计算:
Ti+b–e/2+dv,
其中Ti是所述两个连续2D图像中每个2D图像的触发时间,
b是所述卷帘快门相机的触发到读出延迟,
e是针对所述卷帘快门相机设置的曝光时间,
d是所述卷帘快门相机的线延迟,以及
v是所述两个连续2D图像中每个2D图像中所述2D位置的像素行;以及
基于所述观察时间,对所述虚拟标记在所述触发时间处的2D位置进行插值,其中,对相应2D位置进行三角测量的步骤包括:对从所述多个卷帘快门相机得出的所插值的相应2D位置进行三角测量。
20.根据权利要求15至19中任一项所述的方法,所述方法还包括通过以下方式对所述多个彩色视频相机进行外在校准:
基于由所述多个彩色视频相机同时捕获的一个或更多个棋盘状格,
针对所述多个彩色视频相机中的每两个彩色视频相机,对所述两个彩色视频相机之间的相对变换进行计算;以及
当所述多个彩色视频相机具有计算出相应的相对变换时,应用优化函数来对所述多个彩色视频相机的外在相机参数进行微调。
21.根据权利要求20所述的方法,其中,所述一个或更多个棋盘状格包括独特的标记。
22.根据权利要求15至19中任一项所述的方法,其中,每个彩色视频相机包括至少一个可见发光二极管,所述至少一个可见发光二极管能够操作以促进耦接到棒的逆反射标记被感知为可检测的亮点,并且所述方法还包括通过以下方式对所述多个彩色视频相机进行外在校准:
基于:在所述棒连续挥动的情况下由所述多个彩色视频相机将所述逆反射标记捕获为2D校准图像序列,
对所捕获的2D校准图像应用优化函数,以对所述多个彩色视频相机的外在相机参数进行微调。
23.一种计算机程序,所述计算机程序适于执行根据权利要求1至22中任一项所述的方法。
24.一种非暂态计算机可读介质,所述非暂态计算机可读介质包括指令,所述指令当在计算机上执行时,使所述计算机执行根据权利要求1至22中任一项所述的方法。
25.一种数据处理设备,所述数据处理设备包括用于执行根据权利要求1至22中任一项所述的方法的装置。
26.一种用于生成用于关键点检测的训练数据集的系统,所述系统包括:
基于光学标记的运动捕获系统,所述基于光学标记的运动捕获系统被配置成在一段时间内捕获多个标记,其中,每个标记被布置在人类或动物对象的骨骼标志或者物体的关键点上,并且每个标记被捕获为3D轨迹;
多个彩色视频相机,所述多个彩色视频相机被配置成将所述人类或动物对象或所述物体在所述一段时间内捕获为2D图像序列;以及
计算机,所述计算机被配置成:
对由所述多个彩色视频相机捕获的所述2D图像序列以及由所述基于光学标记的运动捕获系统捕获的相应3D轨迹进行接收;
将针对每个标记的所述3D轨迹投影到2D图像中的每个2D图像,以确定在每个2D图像中的2D位置;
基于所述2D图像序列中的相应2D位置和所述多个彩色视频相机的曝光相关时间,针对所述2D图像中的每个2D图像,对针对每个标记的3D位置进行插值;
基于所插值的所述多个标记的相应3D位置以及从所述标记中彼此具有解剖学关系或功能关系的两个或更多个标记得出的扩展体积,针对每个2D图像生成在所述人类或动物对象或所述物体周围的2D边界框;以及
生成训练数据集,所述训练数据集包括从所述2D图像序列中选择的至少一个2D图像、所确定的每个标记在所选择的至少一个2D图像中的2D位置、以及针对所选择的至少一个2D图像生成的2D边界框。
27.根据权利要求26所述的系统,所述系统还包括同步脉冲发生器,所述同步脉冲发生器与所述基于光学标记的运动捕获系统和所述多个彩色视频相机通信,其中,所述同步脉冲发生器被配置成:从所述基于光学标记的运动捕获系统接收同步信号,用以对由所述多个彩色视频相机将所述人类或动物对象或所述物体基本上同时捕获进行协调。
28.根据权利要求26或27所述的系统,其中,所述基于光学标记的运动捕获系统包括多个红外相机。
29.根据权利要求28所述的系统,其中,所述多个彩色视频相机和所述多个红外相机被布置成彼此间隔开并且至少沿着所述人类或动物对象或所述物体所采取的路径,或者至少基本上围绕所述人类或动物对象或所述物体的捕获体积。
30.根据权利要求26至29中任一项所述的系统,其中,所述3D轨迹能够通过代表布置有所述标记的所述骨骼标志或关键点的标签来识别;并且其中,对于每个标记的所述标签可以被布置成与确定的每个2D位置一起传播,使得在生成的训练数据集中,每个标记的所确定的每个2D位置均包含对应的标签。
31.根据权利要求26至30中任一项所述的系统,其中,所述计算机还被配置成:根据所述彩色视频相机与所述标记之间的具有预定义余量的距离,在每个2D图像中在针对每个标记的所确定的2D位置上绘制2D半径以形成包围区域,以及对所述包围区域应用基于学习的上下文感知图像修复技术以从该2D位置去除标记斑点。
32.根据权利要求31所述的系统,其中,所述基于学习的上下文感知图像修复技术包括基于生成对抗网络的上下文感知图像修复技术。
33.根据权利要求26至32中任一项所述的系统,其中,所述多个彩色视频相机为多个全局快门相机。
34.根据权利要求26至32中任一项所述的系统,其中,所述多个彩色视频相机为多个卷帘快门相机,并且所述计算机还被配置成:
针对由每个卷帘快门相机捕获的每个2D图像,对来自连接一段时间内的投影3D轨迹的第一条线与表示用于捕获2D图像的每个像素行的曝光时间的移动中间值的第二条线之间的交点的相交时间进行确定;
基于所述相交时间,针对由每个卷帘快门相机捕获的每个2D图像对3D中间位置进行插值,以从所述2D图像序列中获得3D插值的轨迹;以及
将针对每个标记的所述3D插值的轨迹投影到所述2D图像中的每个2D图像,以确定在每个2D图像中的2D位置。
35.一种用于预测无标记人类或动物对象或无标记物体上的虚拟标记的3D位置的系统,所述系统包括:
多个彩色视频相机,所述多个彩色视频相机被配置成将所述无标记人类或动物对象或无标记物体捕获为2D图像序列;以及
计算机,所述计算机被配置成:
对由所述多个彩色视频相机捕获的所述2D图像序列进行接收;
使用经训练的神经网络来针对由每个彩色视频相机捕获的每个2D图像预测2D边界框;
使用所述经训练的神经网络针对每个2D图像生成具有置信度分数的多个热图;
其中,每个热图用于所述无标记人类或动物对象或所述无标记物体的虚拟标记的2D定位,
所述经训练的神经网络是使用至少通过根据权利要求1至14中任一项所述的方法生成的训练数据集训练的;
针对每个热图选择具有最高置信度分数的像素,并且将所选择的像素与所述虚拟标记相关联,从而确定所述虚拟标记的2D位置,其中,对于每个热图的所述置信度分数指示在预测的2D边界框中的不同2D位置具有相关联的虚拟标记的概率;以及
基于由所述多个彩色视频相机捕获的所述2D图像序列,对所确定的相应2D位置进行三角测量以预测所述虚拟标记的3D位置序列。
36.根据权利要求35所述的系统,其中,基于作为用于三角测量的权重的相应置信度分数,对所述虚拟标记的相应2D位置进行三角测量。
37.根据权利要求36所述的系统,其中,所述三角测量包括使用下式得出所述虚拟标记的每个预测3D位置:
(∑iwiQi)-1(∑iwiQiCi)
其中,
给定:
i是1、2、......、N,
N是彩色视频相机的总数,
wi是用于三角测量的权重或来自第i个彩色视频相机的第i条射线的置信度分数,
Ci是与所述第i条射线相关联的所述第i个彩色视频相机的3D位置,
Ui是表示与所述第i条射线相关联的反投影方向的3D单位向量,
I3是3×3恒等矩阵。
38.根据权利要求35至37中任一项所述的系统,其中,所述多个彩色视频相机为多个全局快门相机。
39.根据权利要求35至37中任一项所述的系统,其中,所述多个彩色视频相机为多个卷帘快门相机,并且所述计算机还被配置成:
基于两个连续的2D图像中所确定的2D位置来对每个卷帘快门相机的观察时间进行确定,其中,所述观察时间通过下式计算:
Ti+b–e/2+dv,
其中Ti是所述两个连续2D图像中每个2D图像的触发时间,
b是所述卷帘快门相机的触发到读出延迟,
e是针对所述卷帘快门相机设置的曝光时间,
d是所述卷帘快门相机的线延迟,以及
v是所述两个连续2D图像中每个2D图像中所述2D位置的像素行;以及
基于所述观察时间,对所述虚拟标记在所述触发时间处的2D位置进行插值,其中,对从所述多个卷帘快门相机得出的所插值的相应的2D位置进行三角测量,以预测所述虚拟标记的3D位置序列。
40.根据权利要求35至39中任一项所述的系统,其中,所述多个彩色视频相机彼此间隔开地布置并且能够沿着到执业医生的房间的走道的至少一部分操作,使得当所述无标记人类或动物对象沿着所述走道行走并进入所述执业医生的房间中时,由所述系统处理由所述多个彩色视频相机捕获的所述2D图像序列,以预测所述无标记人类或动物对象上的虚拟标记的3D位置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SG10202106342T | 2021-06-14 | ||
SG10202106342T | 2021-06-14 | ||
PCT/SG2022/050398 WO2022265575A2 (en) | 2021-06-14 | 2022-06-10 | Method and system for generating a training dataset for keypoint detection, and method and system for predicting 3d locations of virtual markers on a marker-less subject |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117836819A true CN117836819A (zh) | 2024-04-05 |
Family
ID=84527674
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280053894.3A Pending CN117836819A (zh) | 2021-06-14 | 2022-06-10 | 用于生成用于关键点检测的训练数据集的方法和系统以及用于预测无标记对象上的虚拟标记的3d位置的方法和系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240169560A1 (zh) |
EP (1) | EP4356354A2 (zh) |
CN (1) | CN117836819A (zh) |
WO (1) | WO2022265575A2 (zh) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110096929A (zh) * | 2018-01-30 | 2019-08-06 | 微软技术许可有限责任公司 | 基于神经网络的目标检测 |
US10445930B1 (en) * | 2018-05-17 | 2019-10-15 | Southwest Research Institute | Markerless motion capture using machine learning and training with biomechanical data |
JP7209333B2 (ja) * | 2018-09-10 | 2023-01-20 | 国立大学法人 東京大学 | 関節位置の取得方法及び装置、動作の取得方法及び装置 |
US10936902B1 (en) * | 2018-11-27 | 2021-03-02 | Zoox, Inc. | Training bounding box selection |
CN110020611B (zh) * | 2019-03-17 | 2020-12-08 | 浙江大学 | 一种基于三维假设空间聚类的多人动作捕捉方法 |
JP7427188B2 (ja) * | 2019-12-26 | 2024-02-05 | 国立大学法人 東京大学 | 3dポーズ取得方法及び装置 |
CN111476883B (zh) * | 2020-03-30 | 2023-04-07 | 清华大学 | 多视角无标记动物的三维姿态轨迹重建方法及装置 |
US11475577B2 (en) * | 2020-11-01 | 2022-10-18 | Southwest Research Institute | Markerless motion capture of animate subject with prediction of future motion |
JP7468871B2 (ja) * | 2021-03-08 | 2024-04-16 | 国立大学法人 東京大学 | 3d位置取得方法及び装置 |
-
2022
- 2022-06-10 EP EP22825439.7A patent/EP4356354A2/en active Pending
- 2022-06-10 CN CN202280053894.3A patent/CN117836819A/zh active Pending
- 2022-06-10 WO PCT/SG2022/050398 patent/WO2022265575A2/en active Application Filing
- 2022-06-10 US US18/569,891 patent/US20240169560A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4356354A2 (en) | 2024-04-24 |
US20240169560A1 (en) | 2024-05-23 |
WO2022265575A3 (en) | 2023-03-02 |
WO2022265575A2 (en) | 2022-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9002099B2 (en) | Learning-based estimation of hand and finger pose | |
EP2973417B1 (en) | A method and system for three-dimensional imaging | |
CN108926355A (zh) | 用于站立对象的x射线系统和方法 | |
Klein | Visual tracking for augmented reality | |
JP7427188B2 (ja) | 3dポーズ取得方法及び装置 | |
Van der Aa et al. | Umpm benchmark: A multi-person dataset with synchronized video and motion capture data for evaluation of articulated human motion and interaction | |
CN106846372B (zh) | 人体运动质量视觉分析与评价系统及其方法 | |
US11790652B2 (en) | Detection of contacts among event participants | |
JP2021060868A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP2003061936A (ja) | 動立体モデル生成装置及び方法 | |
WO2022191140A1 (ja) | 3d位置取得方法及び装置 | |
JP7318814B2 (ja) | データ生成方法、データ生成プログラムおよび情報処理装置 | |
JP7498404B2 (ja) | 被写体の3次元姿勢推定装置、3次元姿勢推定方法、及びプログラム | |
CN113196283A (zh) | 使用射频信号的姿态估计 | |
CN114730454A (zh) | 场景感知系统和方法 | |
El-Sallam et al. | A low cost 3D markerless system for the reconstruction of athletic techniques | |
US20240169560A1 (en) | Method and system for generating a training dataset for keypoint detection, and method and system for predicting 3d locations of virtual markers on a marker-less subject | |
JP2002008043A (ja) | 動作解析装置及び動作解析方法 | |
JP2024525148A (ja) | キーポイント検出のためのトレーニング・データセットを生成するための方法及びシステム、並びにマーカーなし対象上の仮想マーカーの3dロケーションを予測するための方法及びシステム | |
WO2005125210A1 (en) | Methods and apparatus for motion capture | |
Ahmad et al. | 3D reconstruction of gastrointestinal regions using shape-from-focus | |
JP7499345B2 (ja) | 複数の姿勢推定エンジンを用いた手のマーカレス運動捕捉 | |
Van Der Aa et al. | Utrecht multi-person motion (UMPM) benchmark | |
Wong et al. | Multi-person vision-based head detector for markerless human motion capture | |
Dinesh et al. | A survey on human motion capturing (HMC) system based on distributed computing technology with flexible architecture |
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 |