JP7427188B2 - 3D pose acquisition method and device - Google Patents

3D pose acquisition method and device Download PDF

Info

Publication number
JP7427188B2
JP7427188B2 JP2019237546A JP2019237546A JP7427188B2 JP 7427188 B2 JP7427188 B2 JP 7427188B2 JP 2019237546 A JP2019237546 A JP 2019237546A JP 2019237546 A JP2019237546 A JP 2019237546A JP 7427188 B2 JP7427188 B2 JP 7427188B2
Authority
JP
Japan
Prior art keywords
pose
frame
feature point
joint
bounding box
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.)
Active
Application number
JP2019237546A
Other languages
Japanese (ja)
Other versions
JP2021105887A (en
Inventor
仁彦 中村
洋介 池上
拓也 大橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
University of Tokyo NUC
Original Assignee
NTT Docomo Inc
University of Tokyo NUC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Docomo Inc, University of Tokyo NUC filed Critical NTT Docomo Inc
Priority to JP2019237546A priority Critical patent/JP7427188B2/en
Publication of JP2021105887A publication Critical patent/JP2021105887A/en
Application granted granted Critical
Publication of JP7427188B2 publication Critical patent/JP7427188B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Description

本発明は、モーションキャプチャ係り、詳しくは、3Dポーズ取得方法及び装置に関するものである。 The present invention relates to motion capture, and more particularly, to a 3D pose acquisition method and apparatus.

モ―ションキャプチャは人間の動作の取得や解析に不可欠な技術であり、スポーツ、医療、ロボティクス、コンピュータグラフィックス、コンピュータアニメーション等の分野で広く用いられている。モーションキャプチャの方式としては、光学式モーションキャプチャが良く知られている。光学式モーションキャプチャは、再帰性反射材が塗布された複数の光学式マーカを対象の身体に取り付け、赤外線カメラなどの複数のカメラで対象の動作を撮影することで、光学式マーカの移動軌跡から対象の動作を取得する。 Motion capture is an essential technology for capturing and analyzing human motion, and is widely used in fields such as sports, medicine, robotics, computer graphics, and computer animation. Optical motion capture is well known as a motion capture method. Optical motion capture involves attaching multiple optical markers coated with retroreflective material to the subject's body and photographing the subject's movements using multiple cameras such as infrared cameras. Get the target behavior.

他のモーションキャプチャ方式として、加速度センサやジャイロスコープ、地磁気センサなどのいわゆる慣性センサを対象の身体に装着して、対象のモーションデータを取得することも知られている。 Another known motion capture method is to attach a so-called inertial sensor such as an acceleration sensor, a gyroscope, or a geomagnetic sensor to the subject's body to obtain motion data of the subject.

上記光学方式や慣性センサを用いた方式は、高精度のモーションデータを取得することができるが、対象の身体に複数のマーカや複数のセンサを装着する必要があるため、動作計測の準備に時間や人手がかかる、対象の動きが制限されて、自然な動きを妨げるおそれがある、という欠点がある。また、システムやデバイスが高額であることから、広く一般に利用できる技術になっていないという課題がある。光学式モーションキャプチャでは計測場所が限定されてしまうため、屋外や広い空間における動作のモーションデータを取得することが困難である、という欠点がある。 The above optical methods and methods using inertial sensors can obtain highly accurate motion data, but since it is necessary to attach multiple markers and multiple sensors to the subject's body, it takes time to prepare for motion measurement. The disadvantages are that it is labor-intensive, and that the movement of the subject is restricted, potentially interfering with natural movement. Additionally, because the systems and devices are expensive, there is a problem that the technology is not widely available for general use. Optical motion capture has a drawback in that it is difficult to obtain motion data of movements outdoors or in large spaces because the measurement locations are limited.

光学式マーカやセンサを装着しない、いわゆるマーカレスモーションキャプチャも知られている。カメラと深度センサを用いたモーションキャプチャとして、非特許文献1~5を例示することができる。しかし、これらの手法は深度データを取得するレーザの時間・空間分解能性能が低いため、屋外や遠方、高速移動する対象の計測を行うことが困難である。 So-called markerless motion capture, which does not require optical markers or sensors, is also known. Examples of motion capture using a camera and a depth sensor include Non-Patent Documents 1 to 5. However, these methods have difficulty measuring objects that are outdoors, far away, or moving at high speed because the laser used to acquire depth data has low temporal and spatial resolution.

深層学習により画像認識の手法と精度が飛躍的に向上したことにより、1視点からのRGB画像を解析してモーションデータを取得するビデオモーションキャプチャも提案されている(非特許文献6~11)。この手法は、屋外・遠方といった条件下でも利用可能で、カメラの性能を選択することで比較的低コストで時間・空間分解能を高くすることができる。しかし、1視点の計測ではオクルージョンによって対象のポーズ推定が困難になる場合が多く、精度に関しては複数台のカメラを用いる光学式モーションキャプチャに及ばない。 As image recognition methods and accuracy have dramatically improved through deep learning, video motion capture has also been proposed, which analyzes RGB images from one viewpoint to obtain motion data (Non-Patent Documents 6 to 11). This method can be used outdoors and at long distances, and by selecting camera performance, it is possible to increase temporal and spatial resolution at a relatively low cost. However, when measuring from a single viewpoint, it is often difficult to estimate the pose of the target due to occlusion, and the accuracy is not as high as optical motion capture using multiple cameras.

深層学習によって、単一のビデオ画像から人間の姿を見つけ関節位置の確からしさの尤度の空間分布を表すヒートマップを生成する研究も行われている。1つの代表的な研究がOpenPose(非特許文献12)である。OpenPoseでは1枚のRGB 画像から手首や肩といった複数人の特徴点(keypoints)の推定をリアルタイムに行うことができる。これはWeiらによる、CNNを用いて1枚のRGB 画像から各関節のPart Confidence Maps(PCM)を生成して各関節の位置を推定する研究(非特許文献13)、CaoらによるPart Affinity Fields(PAF)という隣接する関節の方向を表すベクトル場を計算して、上記手法を複数人に対してもリアルタイムで関節位置の推定を行うように拡張を行った研究(非特許文献14)、に基づいて開発されたものである。また、各関節位置の確からしさを表す尤度の空間分布であるヒートマップ(OpenPoseにおけるPCM)を取得する手法としては様々な手法が提案されており、入力画像から人間の関節位置を推定する手法の精度を競うコンテストも開催されている(非特許文献15)。 Research is also being conducted to use deep learning to find a human figure from a single video image and generate a heat map that represents the spatial distribution of the likelihood of joint positions. One representative study is OpenPose (Non-Patent Document 12). OpenPose can estimate keypoints of multiple people, such as wrists and shoulders, in real time from a single RGB image. This is a study by Wei et al. that estimates the position of each joint by generating Part Confidence Maps (PCM) of each joint from a single RGB image using CNN (Non-Patent Document 13), and Part Affinity Fields by Cao et al. In a study (Non-Patent Document 14), the above method was extended to estimate joint positions in real time for multiple people by calculating a vector field called (PAF) that represents the direction of adjacent joints. It was developed based on In addition, various methods have been proposed to obtain a heat map (PCM in OpenPose), which is a spatial distribution of likelihood that represents the certainty of each joint position, and a method for estimating human joint positions from input images. A contest is also held to compete for accuracy (Non-Patent Document 15).

本発明者等は、ヒートマップ情報を用いて関節位置の3次元再構成を行う手法であって、光学式モーションキャプチャのように高い精度で動作計測を行うビデオモーションキャプチャ(非特許文献16)を提案している。ビデオモーションキャプチャは、複数台のRGBカメラの映像から完全非拘束でモーションキャプチャを行うもので、屋内空間から、屋外でのスポーツフィールドの広い空間まで、原理的には映像が取得できれば、動作計測が可能となる技術である。 The present inventors have proposed video motion capture (Non-Patent Document 16), which is a method for three-dimensional reconstruction of joint positions using heat map information, and which measures motion with high accuracy like optical motion capture. is suggesting. Video motion capture captures motion from images from multiple RGB cameras in a completely unrestricted manner.In principle, if images can be captured, motion can be measured from indoor spaces to large outdoor sports fields. This is a technology that makes it possible.

ここで、同じ空間で複数人が運動を行う場面はしばしばあり(典型的な例では、競技スポーツ)、モーションキャプチャにおいて、複数人の動作計測を行うことは重要である。複数人物が含まれる画像に基づいて各人物のポーズ推定を行う手法としては、2つの手法が知られている。1つは、ボトムアップ型であり、画像内の複数人物の関節位置をヒートマップ情報ないしPCMを用いて推定し、四肢の向きを表すベクトル場(例えば、PAF)等を用いて各人物のポーズを検出する。もう一つは、トップダウン型であり、画像内の各人物の領域を探索してバウンディングボックスを設定し、各バウンディングボックス内の各人物の関節位置をヒートマップ情報を用いて推定することで、各人物のポーズを検出する。バウンディングボックス内の画像情報からヒートマップ情報を取得するソフトウェアは幾つか存在している(非特許文献18~20)。バウンディングボックス内に複数人物が含まれていた場合であっても、最も相応しい単一人物(例えば、より画像の中心に近い人物、身体の全部位がバウンディングボックスに収まっている人物等)のヒートマップ情報ないしPCMを取得するように学習されている。 Here, there are often situations where multiple people exercise in the same space (a typical example is competitive sports), and it is important to measure the movements of multiple people in motion capture. There are two known methods for estimating the pose of each person based on an image that includes multiple people. One is the bottom-up type, which estimates the joint positions of multiple people in an image using heat map information or PCM, and calculates the pose of each person using a vector field representing the orientation of the limbs (for example, PAF). Detect. The other is a top-down type, which searches the area of each person in the image, sets a bounding box, and estimates the joint position of each person within each bounding box using heat map information. Detect the pose of each person. There are several software programs that acquire heat map information from image information within a bounding box (Non-Patent Documents 18 to 20). Even if multiple people are included in the bounding box, a heat map of the single most appropriate person (for example, a person closer to the center of the image, a person whose body parts are all within the bounding box, etc.) It is trained to obtain information or PCM.

しかしながら、入力画像における人物領域の検出が適切に行われないと、適切なバウンディングボックスを決定することができず(例えば、バウンディングボックスで囲んだ領域において手首や足首が切れてしまう)、人の関節位置の誤推定を招くことになる。また、入力画像が高解像度になるにつれ、入力画像において人領域の検出の計算時間が増大することになる。したがって、より小さい計算量で適切にバウンディングボックスを決定することが課題となっている。また、この課題は、複数人環境におけるポーズ推定に限定されるものではない。画像中の対象が一人であっても、バウンディングボックスに囲まれた限定された領域のピクセル情報に基づいてヒートマップ情報を計算することで、計算時間を短縮し得る。 However, if the detection of the human region in the input image is not performed properly, it will not be possible to determine an appropriate bounding box (for example, the wrist or ankle will be cut in the area surrounded by the bounding box), and the joints of the person will be This will lead to erroneous position estimation. Furthermore, as the resolution of the input image becomes higher, the calculation time for detecting a human region in the input image increases. Therefore, it is a challenge to appropriately determine a bounding box with a smaller amount of calculation. Furthermore, this problem is not limited to pose estimation in a multi-person environment. Even if there is only one object in an image, calculation time can be reduced by calculating heat map information based on pixel information in a limited area surrounded by a bounding box.

Z. Zhang. Microsoft kinect sensor and its effect. IEEE MultiMedia, 19(2):4-10, Feb 2012.Z. Zhang. Microsoft kinect sensor and its effect. IEEE MultiMedia, 19(2):4-10, Feb 2012. J. Shotton, A. Fitzgibbon, M. Cook, T. Sharp, M. Finocchio, R. Moore, A. Kipman, and A. Blake. Real-time human pose recognition in parts from single depth images. In Proceedings IEEE Conference on Computer Vision and Pattern Recognition. CVPR 2011, CVPR '11, pages 1297-1304, Washington, DC, USA, 2011. IEEE Computer Society.J. Shotton, A. Fitzgibbon, M. Cook, T. Sharp, M. Finocchio, R. Moore, A. Kipman, and A. Blake. Real-time human pose recognition in parts from single depth images. In Proceedings IEEE Conference on Computer Vision and Pattern Recognition. CVPR 2011, CVPR '11, pages 1297-1304, Washington, DC, USA, 2011. IEEE Computer Society. J. Tong, J. Zhou, L. Liu, Z. Pan, and H. Yan. Scanning 3d full human bodies using kinects. IEEE Transactions on Visualization and Computer Graphics, 18(4):643-650, April 2012.J. Tong, J. Zhou, L. Liu, Z. Pan, and H. Yan. Scanning 3d full human bodies using kinects. IEEE Transactions on Visualization and Computer Graphics, 18(4):643-650, April 2012. Luciano Spinello, Kai O. Arras, Rudolph Triebel, and Roland Siegwart. A layered approach to people detection in 3d range data.In Proceedings of the Twenty-Fourth AAAI Conference on ArtificialIntelligence, AAAI’10, pages 1625-1630. AAAI Press, 2010.Luciano Spinello, Kai O. Arras, Rudolph Triebel, and Roland Siegwart. A layered approach to people detection in 3d range data.In Proceedings of the Twenty-Fourth AAAI Conference on ArtificialIntelligence, AAAI'10, pages 1625-1630. AAAI Press, 2010. A. Dewan, T. Caselitz, G. D. Tipaldi, and W. Burgard. Motion-based detection and tracking in 3d lidar scans. In 2016 IEEE International Conference on Robotics and Automation (ICRA), pages 4508-4513,May 2016.A. Dewan, T. Caselitz, G. D. Tipaldi, and W. Burgard. Motion-based detection and tracking in 3d lidar scans. In 2016 IEEE International Conference on Robotics and Automation (ICRA), pages 4508-4513,May 2016. C. J. Taylor. Reconstruction of articulated objects from point correspondences in a single uncalibrated image. In Proceedings IEEE Conference on Computer Vision and Pattern Recognition. CVPR 2000, volume 1, pages 677-684 vol.1, 2000.C. J. Taylor. Reconstruction of articulated objects from point correspondences in a single uncalibrated image. In Proceedings IEEE Conference on Computer Vision and Pattern Recognition. CVPR 2000, volume 1, pages 677-684 vol.1, 2000. I. Akhter and M. J. Black. Pose-conditioned joint angle limits for 3d human pose reconstruction. In Proceedings IEEE Conference on Computer Vision and Pattern Recognition. CVPR 2015, pages 1446-1455, June 2015.I. Akhter and M. J. Black. Pose-conditioned joint angle limits for 3d human pose reconstruction. In Proceedings IEEE Conference on Computer Vision and Pattern Recognition. CVPR 2015, pages 1446-1455, June 2015. Dushyant Mehta, Helge Rhodin, Dan Casas, Oleksandr Sotnychenko, Weipeng Xu, and Christian Theobalt. Monocular 3d human pose estimation using transfer learning and improved CNN supervision. The Computing Research Repository, abs/1611.09813, 2016.Dushyant Mehta, Helge Rhodin, Dan Casas, Oleksandr Sotnychenko, Weipeng Xu, and Christian Theobalt. Monocular 3d human pose estimation using transfer learning and improved CNN supervision. The Computing Research Repository, abs/1611.09813, 2016. Dushyant Mehta, Srinath Sridhar, Oleksandr Sotnychenko, Helge Rhodin, Mohammad Shaei, Hans-Peter Seidel, Weipeng Xu, Dan Casas, and Christian Theobalt. Vnect: Real-time 3d human pose estimation with a single RGB camera.Dushyant Mehta, Srinath Sridhar, Oleksandr Sotnychenko, Helge Rhodin, Mohammad Shaei, Hans-Peter Seidel, Weipeng Xu, Dan Casas, and Christian Theobalt. Vnect: Real-time 3d human pose estimation with a single RGB camera. Angjoo Kanazawa, Michael J. Black, David W. Jacobs, and Jitendra Malik. End-to-end recovery of human shape and pose. arXiv:1712.06584, 2017.Angjoo Kanazawa, Michael J. Black, David W. Jacobs, and Jitendra Malik. End-to-end recovery of human shape and pose. arXiv:1712.06584, 2017. Xiao Sun, Jiaxiang Shang, Shuang Liang, and Yichen Wei. Compositional human pose regression. The Computing Research Repository, abs/1704.00159, 2017.Xiao Sun, Jiaxiang Shang, Shuang Liang, and Yichen Wei. Compositional human pose regression. The Computing Research Repository, abs/1704.00159, 2017. Openpose. https://github.com/CMU-Perceptual-Computing-Lab/openpose.Openpose. https://github.com/CMU-Perceptual-Computing-Lab/openpose. Shih-En Wei, Varun Ramakrishna, Takeo Kanade, and Yaser Sheikh. Convolutional pose machines. In Proceedings IEEE Conference on Computer Vision and Pattern Recognition. CVPR 2016, 2016.Shih-En Wei, Varun Ramakrishna, Takeo Kanade, and Yaser Sheikh. Convolutional pose machines. In Proceedings IEEE Conference on Computer Vision and Pattern Recognition. CVPR 2016, 2016. Zhe Cao, Tomas Simon, Shih-En Wei, and Yaser Sheikh. Realtime multi-person 2d pose estimation using part affinity fields. In Proceedings IEEE Conference on Computer Vision and Pattern Recognition. CVPR 2017, 2017.Zhe Cao, Tomas Simon, Shih-En Wei, and Yaser Sheikh. Realtime multi-person 2d pose estimation using part affinity fields. In Proceedings IEEE Conference on Computer Vision and Pattern Recognition. CVPR 2017, 2017. http://cocodataset.org/#keypoints-leaderboardhttp://cocodataset.org/#keypoints-leaderboard T. Ohashi, Y. Ikegami, K. Yamamoto, W. Takano and Y. Nakamura, Video Motion Capture from the Part Confidence Maps of Multi-Camera Images by Spatiotemporal Filtering Using the Human Skeletal Model, 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, 2018, pp. 4226-4231.T. Ohashi, Y. Ikegami, K. Yamamoto, W. Takano and Y. Nakamura, Video Motion Capture from the Part Confidence Maps of Multi-Camera Images by Spatiotemporal Filtering Using the Human Skeletal Model, 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, 2018, pp. 4226-4231. K. Ayusawa and Y. Nakamura. Fast inverse kinematics algorithm for large dof system with decomposed gradient computation based on recursive formulation of equilibrium. In 2012 IEEE/RSJ InternationalConference on Intelligent Robots and Systems, pages 3447-3452, Oct 2012.K. Ayusawa and Y. Nakamura. Fast inverse kinematics algorithm for large dof system with decomposed gradient computation based on recursive formulation of equilibrium. In 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, pages 3447-3452, Oct 2012. Y. Chen, Z.Wang, Y. Peng, Z. Zhang, G. Yu, and J. Sun. Cascaded Pyramid Network for Multi-Person Pose Estimation. In IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2018.Y. Chen, Z.Wang, Y. Peng, Z. Zhang, G. Yu, and J. Sun. Cascaded Pyramid Network for Multi-Person Pose Estimation. In IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2018. K. Sun, B. Xiao, D. Liu, and J. Wang. Deep High-Resolution Representation Learning for Human Pose Estimation. In IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2019.K. Sun, B. Xiao, D. Liu, and J. Wang. Deep High-Resolution Representation Learning for Human Pose Estimation. In IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2019. B. Xiao, H. Wu, and Y. Wei. Simple Baselines for HumanPose Estimation and Tracking. In European Conference on Computer Vision (ECCV), 2018.B. Xiao, H. Wu, and Y. Wei. Simple Baselines for HumanPose Estimation and Tracking. In European Conference on Computer Vision (ECCV), 2018.

本発明は、画像に複数の対象が含まれる場合であっても、精度の高いポーズ取得を行うことを目的とするものである。 An object of the present invention is to obtain a pose with high accuracy even when an image includes a plurality of objects.

本発明に係る3Dポーズ取得方法は、複数カメラを用いたモーションキャプチャにおける対象の3Dポーズ取得方法であって、
対象は、複数の関節を含む身体上の複数の特徴点を備え、対象の3Dポーズは、前記複数の特徴点の位置によって特定されており、
フレームt、および/あるいは、フレームtよりも前の1つあるいは複数のフレームにおける対象の1つあるいは複数の3Dポーズを用いて、フレームt+1における各カメラ画像上で前記対象を囲むバウンディングボックスを決定し、
フレームt+1の各カメラ画像において、前記バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、フレームt+1における各特徴点の位置を取得する。
A 3D pose acquisition method according to the present invention is a 3D pose acquisition method of a target in motion capture using multiple cameras, comprising:
The object has a plurality of feature points on its body including a plurality of joints, and the 3D pose of the object is specified by the positions of the plurality of feature points,
Determine a bounding box surrounding the object on each camera image at frame t+1 using one or more 3D poses of the object at frame t and/or one or more frames before frame t. ,
In each camera image of frame t+1, a spatial distribution of the likelihood of the certainty of the position of each feature point is obtained using the image information in the bounding box, and based on the spatial distribution of the likelihood, Obtain the position of each feature point.

1つの態様では、前記画像には複数の対象が含まれており、
選択された1対象についてバウンディングボックスを決定し、
前記バウンディングボックス内の画像情報を用いて、フレームt+1における前記1対象の各特徴点の位置を取得する。
1つの態様では、各フレームにおいて各対象の3Dポーズを並列で取得する。
画像に複数の対象が含まれることは、1つの態様であって、本発明を限定するものではない。本発明は、1対象のみを含む画像を用いたポーズ取得にも適用される。
In one aspect, the image includes a plurality of objects,
Determine the bounding box for the selected object,
The position of each feature point of the one target in frame t+1 is obtained using the image information within the bounding box.
In one aspect, the 3D pose of each object is acquired in parallel in each frame.
Including multiple objects in an image is one aspect and does not limit the invention. The present invention also applies to pose acquisition using images containing only one object.

1つの態様では、前記バウンディングボックスの決定は、
前記1つあるいは複数の3Dポーズを用いて、フレームt+1における3Dポーズを予測し、
予測した3Dポーズを各カメラ画像へ投影して、フレームt+1の各カメラ画像における2Dポーズを予測し、
予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、各カメラ画像におけるバウンディングボックスの位置及び大きさを決定する。
1つの態様では、前記バウンディングボックスの位置は、前記バウンディングボックスの中心によって決定される。
1つの態様では、各カメラ画像に対する前記バウンディングボックスの傾きを決定することを含む。
バウンディングボックスの傾きは、例えば、入力画像よりも以前のフレームにおける対象のポーズの正立ポーズに対する傾きを取得すること、あるいは、入力画像において予測される対象のポーズの正立ポーズに対する傾きを取得すること、によって決定することができる。
In one aspect, determining the bounding box comprises:
predicting a 3D pose at frame t+1 using the one or more 3D poses;
projecting the predicted 3D pose onto each camera image to predict a 2D pose in each camera image of frame t+1;
The position and size of the bounding box in each camera image are determined using position information of a plurality of feature points that specify the predicted 2D pose.
In one aspect, the location of the bounding box is determined by the center of the bounding box.
One aspect includes determining the slope of the bounding box for each camera image.
The slope of the bounding box can be obtained, for example, by obtaining the slope of the target pose with respect to the upright pose in a frame before the input image, or by obtaining the slope of the predicted target pose with respect to the upright pose in the input image. This can be determined by:

1つの態様では、前記対象において、隣接する関節間の距離が定数として得られており、
前記尤度の空間分布を用いて、各特徴点に対応する1つあるいは複数の特徴点の位置候補を取得し、
前記特徴点の位置候補と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得し、
前記関節角を用いて順運動学計算を行うことで、前記対象の関節を含む特徴点の位置を取得する。
In one aspect, in the subject, the distance between adjacent joints is obtained as a constant,
Using the spatial distribution of the likelihood, obtain position candidates for one or more feature points corresponding to each feature point,
Obtaining each joint angle of the target by performing optimization calculation based on inverse kinematics using the position candidates of the feature points and the multi-joint structure of the target,
By performing forward kinematic calculation using the joint angles, the positions of feature points including the target joints are obtained.

1つの態様では、前記特徴点の位置候補の取得は、1つあるいは複数のフレームで取得されている各特徴点を用いて特徴点位置候補の探索範囲を設定し、
フレームt+1で取得された尤度の空間分布を用いて、フレームt+1における各関節位置の1つあるいは複数の特徴点位置候補を取得するものである。
1つの態様では、前記探索範囲は、フレームt+1での各特徴点の予測位置の近傍空間である。
1つの態様では、前記探索範囲は、フレームtで取得されている各特徴点の位置の近傍空間である。
1つの態様では、前記特徴点の位置候補の取得における特徴点位置候補の探索範囲は、フレームtで取得されている各特徴点の位置に加えて、あるいは、代えて、フレームtよりも前の1つあるいは複数のフレーム、あるいは/および、フレームt+2以降の1つあるいは複数のフレームで取得されている特徴点の位置の近傍空間である。
1つの態様では、前記探索範囲は、前記特徴点の位置を中心として所定間隔で3次元状に分布する所定数の点群である。
1つの態様では、前記逆運動学に基づく最適化計算において、前記尤度の空間分布が用いられる。
In one aspect, the acquisition of the feature point position candidates involves setting a search range for the feature point position candidates using each feature point acquired in one or more frames;
One or more feature point position candidates for each joint position in frame t+1 are acquired using the spatial distribution of likelihoods acquired in frame t+1.
In one aspect, the search range is a space in the vicinity of the predicted position of each feature point in frame t+1.
In one aspect, the search range is a space in the vicinity of the position of each feature point acquired in frame t.
In one aspect, the search range for the feature point position candidates in acquiring the feature point position candidates is, in addition to or instead of the position of each feature point acquired in frame t, This is the neighborhood space of the position of the feature point acquired in one or more frames and/or one or more frames after frame t+2.
In one aspect, the search range is a predetermined number of points distributed three-dimensionally at predetermined intervals around the position of the feature point.
In one aspect, the spatial distribution of the likelihood is used in the optimization calculation based on the inverse kinematics.

1つの態様では、前記特徴点の位置を、他の複数のフレームで取得された複数の特徴点の位置を用いて時間方向に平滑化し、
平滑化された特徴点の位置と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得する。
1つの態様では、前記関節角を用いて順運動学計算を行うことで、前記対象の関節を含む特徴点の位置を取得する。
In one aspect, the position of the feature point is smoothed in the time direction using the positions of a plurality of feature points acquired in a plurality of other frames,
Each joint angle of the target is obtained by performing an optimization calculation based on inverse kinematics using the positions of the smoothed feature points and the multi-joint structure of the target.
In one aspect, the position of a feature point including the target joint is obtained by performing forward kinematics calculation using the joint angle.

本発明に係る3Dポーズ取得装置は、複数カメラを用いたモーションキャプチャにおける対象の3Dポーズ取得装置であって、
対象は、複数の関節を含む身体上の複数の特徴点を備え、各対象の3Dポーズは、前記複数の特徴点の位置によって特定されており、
前記装置は記憶部と処理部を備え、
前記記憶部には、計算された各対象の3Dポーズの時系列データが記憶されており、
前記処理部は、
フレームt、および/あるいは、フレームtよりも前の1つあるいは複数のフレームにおける1対象の1つあるいは複数の3Dポーズを用いて、フレームt+1における各カメラ画像において、前記1対象を囲むバウンディングボックスを決定し、
フレームt+1の各カメラ画像において、前記バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、フレームt+1における各特徴点の3D位置を取得する、ように構成されている。
3Dポーズ取得方法における上記の幾つかの態様は、3Dポーズ取得装置に適用される。
A 3D pose acquisition device according to the present invention is a 3D pose acquisition device for a target in motion capture using multiple cameras, and includes:
The object has a plurality of feature points on its body including a plurality of joints, and the 3D pose of each object is specified by the position of the plurality of feature points,
The device includes a storage unit and a processing unit,
The storage unit stores time-series data of calculated 3D poses of each object,
The processing unit includes:
Using one or more 3D poses of an object in frame t and/or one or more frames before frame t, create a bounding box surrounding the object in each camera image at frame t+1. decided,
In each camera image of frame t+1, a spatial distribution of the likelihood of the certainty of the position of each feature point is obtained using the image information in the bounding box, and based on the spatial distribution of the likelihood, The 3D position of each feature point is acquired.
Some of the above aspects of the 3D pose acquisition method are applied to a 3D pose acquisition device.

本発明は、また、コンピュータを、上記装置の記憶部、処理部として機能させるコンピュータプログラムまたは当該コンピュータプログラムを記憶したコンピュータ可読媒体、あるいは、コンピュータに上記方法を実行させるためのコンピュータプログラムまたは当該コンピュータプログラムを記憶したコンピュータ可読媒体として提供され得る。 The present invention also provides a computer program that causes a computer to function as a storage unit and a processing unit of the above device, or a computer readable medium storing the computer program, or a computer program or the computer program that causes a computer to execute the above method. may be provided as a computer-readable medium having the information stored thereon.

本発明は、また、
1つあるいは複数の取得されている3Dポーズを用いて、次フレームの対象の3Dポーズを予測し、
予測した3Dポーズをカメラの画像平面へ投影して、次フレームのカメラの画像平面における対象の2Dポーズを予測し、
予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、次フレームのカメラの画像におけるバウンディングボックスの位置及び大きさを決定する、
トップダウン型ポーズ推定におけるバウンディングボックスの決定方法、を開示するものである。
The present invention also includes:
predicting a 3D pose of the object in the next frame using one or more acquired 3D poses;
projecting the predicted 3D pose onto the image plane of the camera to predict the 2D pose of the object on the image plane of the camera in the next frame;
Determining the position and size of a bounding box in the camera image of the next frame using position information of a plurality of feature points that specify the predicted 2D pose;
A method for determining a bounding box in top-down pose estimation is disclosed.

本発明は、また、
複数のカメラと、
バウンディングボックス決定部と、
3Dポーズ取得部と、
を備えたモーションキャプチャシステムであって、
前記3Dポーズ取得部は、各カメラ画像において、バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、3Dポーズを取得し、
前記バウンディングボックス決定部は、
1つあるいは複数の取得されている3Dポーズを用いて、次フレームの対象の3Dポーズを予測し、
予測した3Dポーズをカメラの画像平面へ投影して、次フレームのカメラの画像平面における対象の2Dポーズを予測し、
予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、次フレームのカメラの画像におけるバウンディングボックスの位置及び大きさを決定する、
モーションキャプチャシステム、を開示するものである。
1つの態様では、前記モーションキャプチャシステムは、さらに、前記3Dポーズ取得部とは異なる3D位置取得部を備え、前記3D位置取得部は、バウンディングボックスを用いずに対象の3D位置を取得するものである。
1つの態様では、前記3D位置取得部は、3Dポーズ推定器である。
The present invention also includes:
multiple cameras and
a bounding box determination section;
3D pose acquisition unit,
A motion capture system equipped with
The 3D pose acquisition unit acquires a spatial distribution of the likelihood of the position of each feature point in each camera image using the image information in the bounding box, and based on the spatial distribution of the likelihood, Obtain a 3D pose,
The bounding box determining unit includes:
predicting a 3D pose of the object in the next frame using one or more acquired 3D poses;
projecting the predicted 3D pose onto the image plane of the camera to predict the 2D pose of the object on the image plane of the camera in the next frame;
Determining the position and size of a bounding box in the camera image of the next frame using position information of a plurality of feature points that specify the predicted 2D pose;
A motion capture system is disclosed.
In one aspect, the motion capture system further includes a 3D position acquisition unit different from the 3D pose acquisition unit, and the 3D position acquisition unit acquires the 3D position of the target without using a bounding box. be.
In one aspect, the 3D position acquisition unit is a 3D pose estimator.

本発明では、次フレームにおける対象の3Dポーズを予測し、予測した3Dポーズに対応するカメラの画像平面上の予測2Dポーズを含むように次フレームにおけるバウンディングボックスを決定することで、適切にバウンディングボックスを決定することができる。 In the present invention, the 3D pose of the target in the next frame is predicted, and the bounding box in the next frame is determined to include the predicted 2D pose on the image plane of the camera corresponding to the predicted 3D pose. can be determined.

モーションキャプチャシステムの全体図である。1 is an overall diagram of a motion capture system. 入力画像の処理工程を示すフローチャートである。3 is a flowchart showing a process of processing an input image. カメラキャリブレーション、骨格モデルの初期姿勢・関節間距離の取得の処理工程を示すフローチャートである。12 is a flowchart showing the processing steps of camera calibration and acquisition of the initial posture and inter-joint distance of the skeletal model. 左図は本実施形態に係る骨格モデルを示し、右図はOpenPoseの特徴点を示す。The left figure shows the skeletal model according to this embodiment, and the right figure shows the feature points of OpenPose. 関節位置候補取得部の処理工程を示すフローチャートである。7 is a flowchart showing the processing steps of a joint position candidate acquisition unit. 探索範囲である点群を例示する図である。FIG. 3 is a diagram illustrating a point group that is a search range. 関節位置取得部(異なる格子間隔を用いる場合)の処理の工程を示すフローチャートである。12 is a flowchart illustrating processing steps of a joint position acquisition unit (when using different grid intervals). 入力画像を回転させてPCMを取得する工程を示すフローチャートである。3 is a flowchart showing a process of rotating an input image to obtain a PCM. 本実施形態に係る複数人のビデオモーションキャプチャを示すフローチャートである。7 is a flowchart showing video motion capture of multiple people according to the present embodiment. 本実施形態に係る入力画像の処理工程を示すフローチャートである。3 is a flowchart illustrating an input image processing step according to the present embodiment. 本実施形態に係るバウンディングボックスの決定を示す図である。FIG. 3 is a diagram showing determination of a bounding box according to the present embodiment. 本実施形態に係る関節位置候補取得部の処理工程を示すフローチャートである。7 is a flowchart showing processing steps of a joint position candidate acquisition unit according to the present embodiment. オクル―ジョンが発生した場合の特徴点の検出の態様を説明する図である。FIG. 3 is a diagram illustrating how feature points are detected when occlusion occurs.

本発明の実施形態の説明は、以下の2つのチャプタからなる。
[I]モーションキャプチャシステム
[II]複数対象のモーションキャプチャ
チャプタIでは、ビデオモーションキャプチャシステムについて詳述し、チャプタIIでは、チャプタIに係る手法を複数対象のモーションキャプチャに適用した実施形態について説明する。チャプタIとチャプタIIの開示事項は互いに密接に関連しており、いずれか一方のチャプタに記載された事項を、他方のチャプタに適宜援用し得ることが当業者に理解される。なお、数式の番号は、チャプタIとチャプタIIで独立して付されている。
The description of embodiments of the invention consists of the following two chapters.
[I] Motion capture system [II] Motion capture for multiple targets In Chapter I, a video motion capture system will be described in detail, and in Chapter II, an embodiment in which the method according to Chapter I is applied to motion capture for multiple targets will be described. . Those skilled in the art will understand that the disclosures in Chapter I and Chapter II are closely related to each other, and that matters described in either chapter can be appropriately incorporated into the other chapter. Note that the formula numbers are assigned independently in Chapter I and Chapter II.

[I]モーションキャプチャシステム
[A]モーションキャプチャシステムの全体構成
モーションキャプチャシステムは、いわゆるビデオモーションキャプチャシステム(非特許文献16参照)であり、対象の複数のカメラの映像から深層学習を用いて推定した関節位置から3次元再構成を行うものであり、対象は、いかなるマーカやセンサを装着する必要がなく、計測空間も限定されない。複数台のRGBカメラの映像から完全非拘束でモーションキャプチャを行うもので、屋内空間から、屋外でのスポーツフィールドの広い空間まで、原理的には映像が取得できれば、動作計測が可能となる技術である。
[I] Motion capture system [A] Overall configuration of motion capture system The motion capture system is a so-called video motion capture system (see Non-Patent Document 16), and is estimated using deep learning from images of multiple target cameras. Three-dimensional reconstruction is performed from joint positions, and there is no need to attach any markers or sensors to the target, and the measurement space is not limited. This technology performs motion capture completely unrestricted from images from multiple RGB cameras, and in principle, if images can be captured, it is possible to measure motion from indoor spaces to large outdoor sports fields. be.

図1に示すように、本実施形態に係るモーションキャプチャシステムは、対象の動作を取得する動画取得部と、動画取得部で取得された画像に基づいて、関節位置を含む特徴点(Keypoints)の位置の確からしさの程度を色強度で表示するヒートマップ情報を取得するヒートマップ取得部と、ヒートマップ取得部で取得されたヒートマップ情報を用いて対象の関節位置を取得する関節位置取得部と、関節位置取得部で取得された関節位置を平滑化する平滑化処理部と、対象の身体の骨格構造、動画取得部で取得された画像の時系列データ、関節位置取得部で取得された関節位置の時系列データ等を記憶する記憶部と、動画取得部で取得された対象の画像や対象のポーズに対応する骨格構造等を表示するディスプレイと、を備えている。対象の身体上の特徴点は主として関節であるため、本明細書及び図面において、特徴点を代表して「関節」という文言を用いているが、「関節」と特徴点(Keypoints)は、後述するように、完全に対応しているわけではない点に留意されたい。 As shown in FIG. 1, the motion capture system according to the present embodiment includes a video acquisition unit that acquires the motion of a target, and keypoints including joint positions based on the images acquired by the video acquisition unit. a heat map acquisition unit that acquires heat map information that displays the degree of certainty of a position in color intensity; and a joint position acquisition unit that acquires target joint positions using the heat map information acquired by the heat map acquisition unit. , a smoothing processing unit that smoothes the joint positions acquired by the joint position acquisition unit, the skeletal structure of the target body, time series data of images acquired by the video acquisition unit, and joints acquired by the joint position acquisition unit. It includes a storage unit that stores time-series position data, etc., and a display that displays an image of the target acquired by the video acquisition unit, a skeletal structure corresponding to the pose of the target, etc. Since the characteristic points on the subject's body are mainly joints, the word "joint" is used to represent the characteristic points in this specification and drawings, but "joints" and key points will be explained later. Please note that this is not a complete correspondence.

本実施形態に係るモーションキャプチャシステムのハードウェアは、前記動画取得部を構成する複数のカメラと、カメラ画像を取得する1つあるいは複数のローカルコンピュータと、それらとネットワークで繋がった1つあるいは複数のコンピュータと、1つあるいは複数のディスプレイとからなる。各コンピュータは、入力部、処理部、記憶部(RAM、ROM)、出力部を備えている。1つの実施形態では、1つのカメラに1つのローカルコンピュータを対応させてカメラ画像を取得し、同時にヒートマップ取得部を構成し、その後、前記関節位置取得部、前記平滑化処理部、前記記憶部をネットワークで繋がった1つあるいは複数のコンピュータで構成する。また、別の実施形態では、カメラと繋がったローカルコンピュータが画像を必要に応じて圧縮して、ネットワークで送信し、繋がったコンピュータで、ヒートマップ取得部、前記関節位置取得部、前記平滑化処理部、前記記憶部を構成する。 The hardware of the motion capture system according to this embodiment includes a plurality of cameras constituting the video acquisition unit, one or more local computers that acquire camera images, and one or more local computers connected to them via a network. Consists of a computer and one or more displays. Each computer includes an input section, a processing section, a storage section (RAM, ROM), and an output section. In one embodiment, one camera is associated with one local computer to acquire camera images, and a heat map acquisition section is configured at the same time, and then the joint position acquisition section, the smoothing processing section, and the storage section are configured. consists of one or more computers connected via a network. In another embodiment, a local computer connected to the camera compresses the image as necessary and transmits it over a network, and the connected computer performs the heat map acquisition section, the joint position acquisition section, and the smoothing process. section, which constitutes the storage section.

各カメラは同期しており、同時刻で取得された各カメラ画像は対応するヒートマップ取得部に送信され、ヒートマップ取得部によってヒートマップが生成される。
ヒートマップは、身体上の特徴点の位置の確からしさの尤度の空間分布を表す。生成されたヒートマップ情報は関節位置取得部に送信され、関節位置取得部によって関節位置が取得される。取得された関節位置データは、関節位置の時系列データとして記憶部に格納される。取得された関節位置データは、平滑化処理部に送信され、平滑化関節位置、関節角が取得される。平滑化された関節位置ないし関節角、及び、対象の身体の骨格構造によって対象のポーズが決定され、ポーズの時系列データからなる対象の動作をディスプレイに表示する。
Each camera is synchronized, and each camera image acquired at the same time is transmitted to a corresponding heat map acquisition section, and a heat map is generated by the heat map acquisition section.
The heat map represents the spatial distribution of the likelihood of the location of feature points on the body. The generated heat map information is transmitted to the joint position acquisition section, and the joint position is acquired by the joint position acquisition section. The acquired joint position data is stored in the storage unit as time series data of joint positions. The acquired joint position data is transmitted to the smoothing processing section, and smoothed joint positions and joint angles are acquired. The pose of the target is determined based on the smoothed joint positions or joint angles and the skeletal structure of the target's body, and the motion of the target consisting of time-series data of the pose is displayed on a display.

動画取得部は、複数のカメラからなり、例えば、外部同期信号発生器を用いて同期されている。なお、複数のカメラ画像を同期させる手法は限定されない。複数のカメラは対象を囲むように配置され、全部あるいは一部のカメラによって同時に対象を撮影することで対象の複視点動画を取得する。各カメラからは、例えば、60fps、1024×768のRGB画像が取得され、RGB画像がヒートマップ取得部にリアルタイム、あるいは、非リアルタイムで送信される。 The video acquisition unit includes a plurality of cameras, which are synchronized using, for example, an external synchronization signal generator. Note that the method of synchronizing multiple camera images is not limited. A plurality of cameras are arranged to surround the object, and a multi-view video of the object is obtained by simultaneously photographing the object with all or some of the cameras. For example, a 60fps, 1024×768 RGB image is acquired from each camera, and the RGB image is transmitted to the heat map acquisition unit in real time or non-real time.

本実施形態では、動画取得部は複数のカメラから構成され、同時刻で取得された複数枚のカメラ画像がヒートマップ取得部に送信される。ヒートマップ取得部は、動画取得部から入力された画像に基づいてヒートマップを生成する。本モーションキャプチャシステムにおいて、1枚の画像に含まれる対象の数は限定されない。複数対象についてのモーションキャプチャについては、次チャプタで説明する。 In this embodiment, the video acquisition unit is composed of a plurality of cameras, and a plurality of camera images acquired at the same time are transmitted to the heat map acquisition unit. The heat map acquisition unit generates a heat map based on the image input from the video acquisition unit. In this motion capture system, the number of objects included in one image is not limited. Motion capture for multiple objects will be explained in the next chapter.

モーションキャプチャシステムによる動作取得において、対象はリンク構造ないし多関節構造を備えている。典型的には対象は人間であり、前記多関節構造は身体の骨格構造である。なお、ヒートマップ取得部で用いる学習データを対象に合わせて用意できれば、人間以外の対象(例えば、人間以外の動物やロボット)にも適用し得る。 In motion capture using a motion capture system, the object has a linked structure or an articulated structure. Typically, the subject is a human being, and the multi-jointed structure is a skeletal structure of the body. Note that if the learning data used by the heat map acquisition unit can be prepared according to the target, it can also be applied to targets other than humans (for example, non-human animals and robots).

記憶部には、計測データや処理データが格納される。例えば、動画取得部によって取得された画像の時系列データ、関節位置取得部によって取得された関節位置データ、関節角度データが格納される。記憶部には、さらに、平滑化処理部によって取得された平滑化関節位置データ、平滑化関節角度データ、ヒートマップ取得部により生成されたヒートマップデータ、その他処理過程で生成されたデータを格納してもよい。 The storage unit stores measurement data and processing data. For example, time series data of images acquired by the moving image acquisition section, joint position data and joint angle data acquired by the joint position acquisition section are stored. The storage unit further stores smoothed joint position data, smoothed joint angle data acquired by the smoothing processing unit, heat map data generated by the heat map acquisition unit, and other data generated in the processing process. It's okay.

記憶部には、さらに、対象の身体の骨格構造を決定するデータが格納されている。このデータには、身体の骨格モデルを規定するファイル、対象の隣接する関節間距離データが含まれる。多関節体である骨格モデルの各関節の位置から、関節角度や対象のポーズが決定される。本実施形態で用いた骨格モデルを図4左図に示す。図4左図に示す骨格モデルは40自由度であるが、この骨格モデルは例示である。後述するように、対象の隣接する関節間の距離を表す定数は、モーションキャプチャの初期設定時に取得することができる。対象の各関節間距離は他の手法で予め取得してもよく、あるいは、既に取得されている関節間距離を用いてもよい。本実施形態では、対象の身体の骨格構造データを用いることで、関節位置の算出において、隣接する関節間距離が時間的に不変という骨格構造特有の拘束条件を与えることができる。 The storage unit further stores data for determining the skeletal structure of the subject's body. This data includes a file that defines a skeletal model of the body and distance data between adjacent joints of the object. The joint angles and pose of the object are determined from the position of each joint of the skeletal model, which is a multi-jointed body. The skeletal model used in this embodiment is shown in the left diagram of FIG. The skeletal model shown in the left diagram of FIG. 4 has 40 degrees of freedom, but this skeletal model is just an example. As described below, a constant representing the distance between adjacent joints of a target can be obtained during initial setup of motion capture. The distance between each joint of the target may be obtained in advance using another method, or the distance between the joints that has already been obtained may be used. In the present embodiment, by using the skeletal structure data of the target body, it is possible to provide a constraint unique to the skeletal structure in which the distance between adjacent joints remains unchanged over time in calculating joint positions.

ディスプレイには、動画取得部によって取得された対象の動画、モーションキャプチャによって取得された対象のポーズを表す時系列骨格画像などが表示される。例えば、コンピュータの処理部において、対象固有の骨格構造、算出された関節角及び関節位置の時系列データを用いて、フレーム毎に骨格画像(対象のポーズ)データが生成され、骨格画像データを所定のフレームレートで出力して動画としてディスプレイに表示する。 The display displays a video of the target acquired by the video acquisition unit, a time-series skeletal image representing the pose of the target acquired by motion capture, and the like. For example, in the processing unit of a computer, skeletal image data (pose of the object) is generated for each frame using time series data of the object-specific skeletal structure, calculated joint angles, and joint positions, and the skeletal image data is output at a frame rate of , and display it on the display as a video.

[B]ヒートマップ取得部
ヒートマップ取得部は、入力画像に基づいて、各関節位置を含む身体上の特徴点(keypoints)の位置の確からしさの尤度の2次元あるいは3次元の空間分布を生成し、前記尤度の空間分布をヒートマップ形式で表示する。ヒートマップは、空間に広がって変化する値を温度分布のように色強度で空間上に表示すものであり、尤度の可視化を可能とする。尤度の値は例えば0~1であるが、尤度の値のスケールは任意である。本実施形態において、ヒートマップ取得部は、各関節を含む身体上の特徴点の位置の確からしさの尤度の空間分布、すなわち、ヒートマップ情報(画像の各ピクセルが尤度を表す値を保持している)が取得されていればよく、必ずしも、ヒートマップを表示することを要しない。
[B] Heat map acquisition unit The heat map acquisition unit obtains a two-dimensional or three-dimensional spatial distribution of the likelihood of the position of key points on the body, including the positions of each joint, based on the input image. and display the spatial distribution of the likelihood in a heat map format. A heat map is a spatial display of values that spread and change in color intensity, like a temperature distribution, and allows visualization of likelihood. The likelihood value is, for example, 0 to 1, but the scale of the likelihood value is arbitrary. In this embodiment, the heat map acquisition unit stores the spatial distribution of the likelihood of the position of feature points on the body including each joint, that is, heat map information (each pixel of the image holds a value representing the likelihood). It is only necessary that the heat map has been obtained, and it is not necessarily necessary to display the heat map.

ヒートマップ取得部は、典型的には、畳み込みニューラルネットワーク(CNN)を用いて、入力された単一の画像から対象の身体上の特徴点の位置(典型的には関節位置)を、ヒートマップとして推定する。畳み込みニューラルネットワーク(CNN)は入力層、中間層(隠れ層)、出力層を備え、中間層は、特徴点の画像上への2次元写像の存在位置の教師データを用いた深層学習によって構築されている。 The heat map acquisition unit typically uses a convolutional neural network (CNN) to extract the positions of feature points on the subject's body (typically joint positions) from a single input image into a heat map. Estimated as. A convolutional neural network (CNN) has an input layer, a hidden layer, and an output layer.The middle layer is constructed by deep learning using training data of the locations of two-dimensional mappings of feature points onto images. ing.

本実施形態では、ヒートマップ取得部で取得された尤度は、2次元の画像上の各ピクセルに与えられており、複数視点からのヒートマップ情報を総合して特徴点の3次元的な存在位置の確からしさの情報を得ることができる。 In this embodiment, the likelihood acquired by the heat map acquisition unit is given to each pixel on a two-dimensional image, and the three-dimensional existence of the feature point is determined by integrating heat map information from multiple viewpoints. Information on the certainty of location can be obtained.

ヒートマップ取得部として、オープンソフトウェアであるOpenPose(非特許文献12)を例示することができる。OpenPoseでは、身体上の18個の特徴点(keypoints)が設定されている(図3右図参照)。具体的には、18個の特徴点は、13個の関節と、鼻、左右の目、左右の耳からなる。OpenPoseは、訓練された畳み込みニューラルネットワーク(CNN)を用いることで、同期する複数のカメラで取得した各RGB画像から18個の身体上の各特徴点(keypoints)のPart Confidence Maps(PCM)をオフラインあるいはリアルタイムで生成し、ヒートマップ形式で表示する。本明細書において、身体上の特徴点の位置の確からしさの尤度の空間分布ないしヒートマップについて、PCMという文言を用いる場合があるが、各関節位置を含む身体上の特徴点の位置の確からしさの尤度の空間分布を表す指標をPCMに限定することを意図するものではない点に留意されたい。 As the heat map acquisition unit, OpenPose (Non-Patent Document 12), which is open software, can be exemplified. In OpenPose, 18 keypoints are set on the body (see the right diagram in Figure 3). Specifically, the 18 feature points consist of 13 joints, a nose, left and right eyes, and left and right ears. OpenPose uses a trained convolutional neural network (CNN) to generate Part Confidence Maps (PCM) of 18 key points on the body from each RGB image captured by multiple synchronized cameras. Or generate it in real time and display it in heatmap format. In this specification, the term PCM may be used to refer to the spatial distribution or heat map of the likelihood of the location of feature points on the body, but the Please note that this is not intended to limit the index representing the spatial distribution of likelihood to PCM.

ヒートマップ取得部には、OpenPose以外の他の手法を用いることができる。対象の身体上の特徴点の位置の確からしさを表すヒートマップを取得する手法としては様々な手法が提案されている。例えば、COCO Keypoints challenge(非特許文献15)で上位入賞した手法を採用することもできる。また、独自にヒートマップ取得部のための学習器を作成して、畳み込みニューラルネットワーク(CNN)を構築してもよい。 Other methods than OpenPose can be used in the heat map acquisition section. Various methods have been proposed to obtain a heat map that represents the certainty of the location of feature points on a target's body. For example, it is also possible to adopt a method that won a high rank in the COCO Keypoints challenge (Non-Patent Document 15). Alternatively, a convolutional neural network (CNN) may be constructed by creating a unique learning device for the heat map acquisition section.

[C]本実施形態に係るモーションキャプチャシステムの初期設定
図3を参照しつつ、本実施形態に係るモーションキャプチャシステムにおける、カメラのキャリブレーション、骨格モデルの初期姿勢の取得、対象の関節間距離の取得について説明する。
[C] Initial settings of the motion capture system according to the present embodiment With reference to FIG. Explain acquisition.

[C-1]カメラキャリブレーション
複数のカメラを用いたモーションキャプチャにおいては、複数のカメラ画像を3次元再構成するためのカメラパラメータを取得する必要がある。3次元空間上の任意の点をカメラiの画像面に投影するための行列Miは、以下のように表される。

Figure 0007427188000001
ここで、Kiは焦点距離や光学的中心等の内部パラメータであり、Ri、tiは、それぞれ、カメラの姿勢・位置を表す外部パラメータである。カメラキャリブレーションは、既知の形状や寸法のキャリブレーション器具(チェッカーボードやキャリブレーションワンド等)を複数台のカメラで撮影することで行うことが可能である。歪みパラメータは、内部パラメータと同時に取得され得る。カメラの撮影空間が広域空間の場合には、上記キャリブレーション器具に代えて、例えば、計測領域全体に亘って球体を移動させながら複数台のカメラで撮影し、各カメラ画像中の球体の中心座標を検出するようにしてもよい。各カメラ画像中の球体の中心座標を用いて、バンドル調整によって、カメラの姿勢及び位置を最適化することで外部パラメータを取得する。なお、内部パラメータは、キャリブレーション器具等を用いることで事前に取得できるが、内部パラメータの一部あるいは全部を、最適化計算によって、外部パラメータと同時に取得してもよい。 [C-1] Camera Calibration In motion capture using multiple cameras, it is necessary to obtain camera parameters for three-dimensional reconstruction of multiple camera images. A matrix M i for projecting an arbitrary point on the three-dimensional space onto the image plane of camera i is expressed as follows.
Figure 0007427188000001
Here, K i is an internal parameter such as focal length and optical center, and R i and t i are external parameters representing the attitude and position of the camera, respectively. Camera calibration can be performed by photographing a calibration instrument (checkerboard, calibration wand, etc.) with a known shape and dimensions using a plurality of cameras. The distortion parameters may be obtained simultaneously with the intrinsic parameters. If the shooting space of the camera is a wide area, instead of using the above-mentioned calibration equipment, for example, the center coordinate of the sphere in each camera image is taken by multiple cameras while moving the sphere over the entire measurement area. may be detected. Using the center coordinates of the sphere in each camera image, the external parameters are obtained by optimizing the posture and position of the camera through bundle adjustment. Note that the internal parameters can be obtained in advance by using a calibration instrument or the like, but some or all of the internal parameters may be obtained simultaneously with the external parameters by optimization calculation.

各カメラについて投影行列Miが得られると、3次元空間の点Xが各カメラ画像面に投影された時のピクセル位置は、以下のように表される。

Figure 0007427188000002
3次元状の任意の点をカメラiの撮影面のピクセル位置に変換する関数(行列)μi は記憶部に格納される。 When the projection matrix M i is obtained for each camera, the pixel position when a point X in the three-dimensional space is projected onto each camera image plane is expressed as follows.
Figure 0007427188000002
A function (matrix) μ i that converts a three-dimensional arbitrary point into a pixel position on the imaging plane of camera i is stored in the storage unit.

[C-2]骨格モデルとヒートマップが生成される身体上の特徴点との対応
骨格モデルの各関節(図4左図)と、ヒートマップ取得部における身体の特徴点(図4右図、a,o,p,q,rを除く)とを対応させる。対応関係を表1に示す。

Figure 0007427188000003
本実施形態に係る骨格モデルの関節と、OpenPoseにおける18個の特徴点は完全に一致してはいない。例えば、骨格モデルのpelvis(base body)、 waist、 chest、 right clavicle、left clavicle、Headに対応する特徴点は、OpenPoseには存在しない。なお、本実施形態に係る骨格モデルにおける関節、OpenPoseにおける18個の特徴点は、共に、身体上の特徴点の代表的な特徴点であって、可能性のある全ての特徴点を網羅しているものではない。例えば、さらに詳細な特徴点を設定してもよい。あるいは、全ての身体上の特徴点が関節であってもよい。OpenPoseの18個の特徴点だけでは決まらない関節角度については、可動範囲などの制約を考慮した最適化の結果として決定される。なお、骨格モデルの関節と、尤度の空間分布が取得される特徴点と、が初めから対応している場合には、この対応づけは不要である。 [C-2] Correspondence between the skeletal model and the feature points on the body for which a heat map is generated (excluding a, o, p, q, r). The correspondence relationship is shown in Table 1.
Figure 0007427188000003
The joints of the skeletal model according to this embodiment and the 18 feature points in OpenPose do not completely match. For example, feature points corresponding to the pelvis (base body), waist, chest, right clavicle, left clavicle, and head of the skeleton model do not exist in OpenPose. Note that the joints in the skeletal model according to this embodiment and the 18 feature points in OpenPose are representative feature points on the body, and cover all possible feature points. It's not something that exists. For example, more detailed feature points may be set. Alternatively, all the feature points on the body may be joints. Joint angles that cannot be determined using only OpenPose's 18 feature points are determined as a result of optimization that takes into account constraints such as range of motion. Note that if the joints of the skeletal model and the feature points from which the spatial distribution of likelihood is obtained correspond from the beginning, this correspondence is not necessary.

[C-3]骨格モデルの初期姿勢・関節間距離の取得
対象の動作計測の始点となる初期姿勢を取得する。本実施形態では、関節間距離・初期姿勢の推定を、歪曲収差補正後画像に対し、OpenPoseを適用することで算出された特徴点のピクセル位置から求める。先ず、各カメラで取得された初期画像に基づいて、初期ヒートマップが取得される。本実施形態では、カメラの光学中心と、OpenPoseから算出した各特徴点の初期ヒートマップの重心のピクセル位置とを結ぶ光線を各カメラから考え、2台のカメラの光線の共通垂線の長さが最小になる2台を決定し、その共通垂線の長さが所定の閾値(例えば20mm)以下のとき、その共通垂線の2つの足の中点を3次元上の特徴点の位置とするよう求め、これを用いて骨格モデルの関節間距離・初期姿勢の取得を行う。
[C-3] Obtain the initial posture and distance between joints of the skeletal model. Obtain the initial posture that is the starting point for motion measurement of the target. In this embodiment, the inter-joint distance and initial posture are estimated from the pixel positions of feature points calculated by applying OpenPose to the distortion aberration corrected image. First, an initial heat map is obtained based on the initial images obtained by each camera. In this embodiment, we consider a ray from each camera that connects the optical center of the camera and the pixel position of the center of gravity of the initial heat map of each feature point calculated from OpenPose, and calculate the length of the common perpendicular line of the rays of the two cameras. Determine the minimum two units, and when the length of the common perpendicular line is less than a predetermined threshold (for example, 20 mm), determine the midpoint of the two legs of the common perpendicular line to be the position of the three-dimensional feature point. This is used to obtain the inter-joint distance and initial posture of the skeletal model.

特徴点の初期位置の推定手法については、当業者において様々な手法が採り得る。例えば、各カメラ画像上の対応する点の位置と、カメラパラメータを用いて、DLT(Direct Linear Transformation)法により、3次元空間上の特徴点の初期位置を推定することができる。DLT法を用いた三次元再構成は当業者に知られているので、詳細な説明は省略する。 Those skilled in the art can use various methods for estimating the initial positions of feature points. For example, by using the position of a corresponding point on each camera image and camera parameters, the initial position of a feature point in a three-dimensional space can be estimated by a DLT (Direct Linear Transformation) method. Since three-dimensional reconstruction using the DLT method is known to those skilled in the art, detailed explanation will be omitted.

逆運動学に基づく最適化計算には隣接する特徴点間の距離(関節間距離)の定数、すなわちリンク長が必要となるが、リンク長は対象毎に異なるため、対象毎に骨格モデルのリンク長を算出する。本実施形態に係るモーションキャプチャの精度を向上させるためには、対象毎にスケーリングを行うことが望ましい。骨格モデルは、人間の標準的な骨格構造のモデルであり、これを全身で、あるいは部位ごとにスケーリングして、対象の体型に適合した骨格モデルを生成する。 Optimization calculations based on inverse kinematics require constant distances between adjacent feature points (interjoint distances), that is, link lengths, but since link lengths differ for each target, the link length of the skeletal model is determined for each target. Calculate the length. In order to improve the precision of motion capture according to this embodiment, it is desirable to perform scaling for each object. The skeletal model is a model of the standard human skeletal structure, and is scaled for the whole body or for each part to generate a skeletal model that fits the body shape of the subject.

本実施形態では、得られた初期姿勢を基にして骨格モデルの各リンク長の更新を行う。骨格モデルの初期リンク長に対し、リンク長更新に用いるスケーリングパラメータを各特徴点の位置より、図4、表1の対応を基にして算出する。図4の左図におけるリンク長のうち、1-2、2-3、3-4、3-6、3-10、6-7、10-11、のそれぞれのリンク長については、対応する特徴点が存在しないためスケールパラメータが同様の方法では決まらない。このため、その他のリンク長のスケールパラメータを用いて長さを決定する。なお、本実施形態では、人体骨格は基本的に左右対称な長さとなるため、各スケーリングパラメータは左右均等になるよう左右の平均から求めており、また骨格モデルの初期リンク長は左右均等である。Neck-Head 間のスケーリングパラメータの算出については、両耳の特徴点位置の中点を頭関節の存在する場所としてスケーリングパラメータの算出を行う。取得したスケーリングパラメータを用いて、骨格モデルの各リンク長の更新を行う。鼻・目・耳の位置を算出については、表2に示すような対応関係をもとにして各仮想関節(鼻、目、耳)の位置を算出する。

Figure 0007427188000004
なお、リンク長は他の手法で取得してもよいし、予め取得したものを用いてもよい。あるいは、対象者に固有の骨格モデルが得られている場合には、それを用いてもよい。 In this embodiment, each link length of the skeletal model is updated based on the obtained initial posture. With respect to the initial link length of the skeletal model, a scaling parameter used for updating the link length is calculated from the position of each feature point based on the correspondence shown in FIG. 4 and Table 1. Among the link lengths in the left diagram of FIG. Since there are no points, the scale parameters cannot be determined in the same way. Therefore, the length is determined using other link length scale parameters. In this embodiment, since the human skeleton basically has a symmetrical length, each scaling parameter is calculated from the average of the left and right sides so that they are equal, and the initial link lengths of the skeletal model are equal on the left and right sides. . Regarding the calculation of the scaling parameter between Neck and Head, the scaling parameter is calculated using the midpoint of the feature point positions of both ears as the location where the head joint exists. Each link length of the skeletal model is updated using the obtained scaling parameters. Regarding calculation of the positions of the nose, eyes, and ears, the positions of each virtual joint (nose, eyes, ears) are calculated based on the correspondence shown in Table 2.
Figure 0007427188000004
Note that the link length may be obtained using another method, or may be obtained in advance. Alternatively, if a skeletal model unique to the subject is available, that may be used.

[D]関節位置取得部
関節位置取得部は、ヒートマップ取得部から取得されたヒートマップ情報(各特徴点の位置の確からしさの尤度の空間分布)を用いて関節位置候補を推定し、当該関節位置候補を用いて逆運動学に基づく最適化計算を実行することで骨格モデルの関節角、関節位置を更新する点に特徴を備えている。関節位置取得部は、ヒートマップデータに基づいて関節位置候補を推定する関節位置候補取得部と、関節位置候補を用いて逆運動学に基づく最適化計算を実行して関節角を算出する逆運動学計算部と、算出された関節角を用いて順運動学計算を実行して関節位置を算出する順運動学計算部と、を備えている。
[D] Joint position acquisition unit The joint position acquisition unit estimates joint position candidates using the heat map information (the spatial distribution of the likelihood of the certainty of the position of each feature point) acquired from the heat map acquisition unit, The feature is that the joint angles and joint positions of the skeletal model are updated by performing optimization calculations based on inverse kinematics using the joint position candidates. The joint position acquisition unit includes a joint position candidate acquisition unit that estimates joint position candidates based on heat map data, and an inverse kinematics unit that calculates joint angles by performing optimization calculations based on inverse kinematics using the joint position candidates. and a forward kinematics calculation section that calculates joint positions by performing forward kinematics calculations using the calculated joint angles.

本実施形態に係る関節位置取得部は、1つあるいは複数のフレームで取得されている関節位置を用いて各関節位置候補の探索範囲を設定することで、フレームt+1で取得された尤度の空間分布を用いて、フレームt+1における関節位置候補を取得する。探索範囲としては、フレームtで取得されている関節位置の近傍空間、あるいは、フレームt+1で予測される関節位置の予測位置の近傍空間を例示することができる。対象の移動速度が速い場合には、後者が有利である。本チャプタでは前者の探索範囲について説明し、後者の探索範囲については、次チャプタで説明する。 The joint position acquisition unit according to the present embodiment sets the search range of each joint position candidate using the joint positions acquired in one or more frames, and thereby calculates the likelihood acquired in frame t+1. A joint position candidate in frame t+1 is obtained using the spatial distribution of . Examples of the search range include a space in the vicinity of the joint position acquired in frame t, or a space in the vicinity of the predicted position of the joint position predicted in frame t+1. The latter is advantageous when the target is moving quickly. This chapter explains the former search range, and the latter search range will be explained in the next chapter.

本実施形態に係る関節位置候補取得部では、前フレーム(フレームt)の関節位置データを用いて現フレーム(フレームt+1)の関節位置、関節角の計算を行う。フレームtの関節位置からフレームt+1の関節角・位置を取得するという処理をt=Tとなるまで繰り返すことで全Tフレームのビデオモーションキャプチャを行う。1フレームにおける関節位置の変化は微小であるため、フレームtにおける関節nの関節位置の3次元座標をt P n、フレームt+1における関節位置をt+1 P nとすると、t+1 P nt P n近傍に存在すると考えられる。そこで、t P nを中心に広がった間隔sの(2k+1)3個の格子点(kは正の整数)を考え、その集合(格子空間)を

Figure 0007427188000005
と表す。例えば、t P nを中心とした図6のような間隔sの11×11×11(k=5)の格子状の点を考える。格子点の距離sは画像ピクセルの大きさとは無関係である。 The joint position candidate acquisition unit according to the present embodiment calculates joint positions and joint angles of the current frame (frame t+1) using joint position data of the previous frame (frame t). Video motion capture of all T frames is performed by repeating the process of obtaining the joint angles and positions of frame t+1 from the joint positions of frame t until t=T. Since the change in joint position in one frame is minute, if the three-dimensional coordinates of the joint position of joint n in frame t are t P n and the joint position in frame t+1 is t+1 P n , then t+1 P n is considered to exist near t P n . Therefore, consider three (2k+1) grid points (k is a positive integer) with an interval s spread around t P n , and define the set (grid space) as
Figure 0007427188000005
Expressed as For example, consider an 11×11×11 (k=5) grid of points with spacing s as shown in FIG. 6 centered at t P n . The grid point distance s is independent of the size of the image pixel.

フレームtにおける関節位置t P nに基づく探索範囲は、例えば、関節位置t P nの近傍空間内の点群であり、近傍空間内の総点数(2k+1)3及び点の間隔sによって決定される。探索範囲の決め方において、図6では立方体を示したが、探索範囲の形状は限定されず、例えば、球状の範囲で探索を行ってもよい。あるいは、過去フレームの関節位置変化に基づいて、探索範囲を狭めた直方体状や長球としたり、探索範囲の中心点をt P nから別の点としたりして探索を行ってもよい。 The search range based on the joint position t P n in frame t is, for example, a group of points in the neighborhood space of the joint position t P n , and is determined by the total number of points (2k+1) 3 in the neighborhood space and the interval s between the points. be done. In determining the search range, although a cube is shown in FIG. 6, the shape of the search range is not limited, and the search may be performed in a spherical range, for example. Alternatively, the search may be performed by narrowing the search range to a rectangular parallelepiped shape or a long sphere, or by setting the center point of the search range to a different point from t P n based on changes in joint positions in past frames.

探索範囲(例えば、中心点、パラメータkや、探索幅s)は、当業者において適宜設定され得る。対象の運動の種類に応じて探索範囲を変化させてもよい。また、対象の運動の速度および加速度(例えば、対象のポーズの変化速度)に応じて、探索範囲を変化させてもよい。また、撮影するカメラのフレームレートに応じて探索範囲を変化させてもよい。また、関節の部位ごとに探索範囲を変化させてもよい。 The search range (for example, center point, parameter k, and search width s) can be appropriately set by those skilled in the art. The search range may be changed depending on the type of movement of the target. Furthermore, the search range may be changed depending on the speed and acceleration of the object's movement (for example, the speed at which the object's pose changes). Furthermore, the search range may be changed depending on the frame rate of the camera that takes the image. Furthermore, the search range may be changed for each joint part.

格子空間tnにおける全ての点は、関数μiを用いて任意のカメラの投影面のピクセル座標に変換することができることに着目する。tnにおける1点tn a,b,cを、カメラiの画像平面のピクセル位置に変換する関数をμi、そのピクセル位置からフレームt+1におけるPCM 値を取得する関数をt+1n とすると、nc個のカメラから算出したPCM 値の和の最大点が、フレームt+1において関節nの最も確からしい存在位置であるとみなすことができ、t+1 P n key

Figure 0007427188000006
によって求められる。この計算をnj個(OpenPoseの場合は18個)の関節全てにおいて実行する。 Note that all points in the grid space t L n can be transformed to pixel coordinates in the projection plane of any camera using the function μ i . Let μ i be the function that converts one point t L n a, b, c at t L n into a pixel position on the image plane of camera i , and let t + be the function that obtains the PCM value at frame t+1 from that pixel position. 1 S n i , the maximum point of the sum of PCM values calculated from n c cameras can be considered to be the most probable position of joint n in frame t+1, and t+1 P n The key is
Figure 0007427188000006
It is determined by This calculation is executed for all n j (18 in the case of OpenPose) joints.

そして、フレームt+1の各関節位置t+1 P nは、関節角t+1Qの関数であることに着目し、式(3)に示すように、逆運動学に基づく最適化計算により関節角t+1Qを算出し、順運動学計算により関節位置t+1 P nを算出する。

Figure 0007427188000007
なお、逆運動学に基づく最適化計算における各関節の重みt+1nには
Figure 0007427188000008
と規定されるように、各関節の予測位置におけるPCM値の和を用いる。
関節位置取得部でリアルタイムあるいは非リアルタイムで取得された各関節位置は、関節位置の時系列データとして記憶部に格納される。本実施形態では、関節位置取得部でリアルタイムあるいは非リアルタイムで取得された各関節位置は平滑化処理部によって平滑化処理されて、平滑化関節位置が生成される。 Then, focusing on the fact that each joint position t+1 P n of frame t+1 is a function of joint angle t+1 Q, as shown in equation (3), an optimization calculation based on inverse kinematics is performed. The joint angle t+1 Q is calculated, and the joint position t+1 P n is calculated by forward kinematics calculation.
Figure 0007427188000007
In addition, the weight t+1 W n of each joint in the optimization calculation based on inverse kinematics is
Figure 0007427188000008
The sum of the PCM values at the predicted position of each joint is used as defined below.
Each joint position acquired by the joint position acquisition unit in real time or non-real time is stored in the storage unit as time series data of joint positions. In this embodiment, each joint position acquired by the joint position acquisition unit in real time or non-real time is smoothed by the smoothing processing unit to generate a smoothed joint position.

逆運動学に基づく最適化計算については、例えば、非特許文献17に記載されたアルゴリズムを用いることができる。逆運動学に基づく最適化計算の手法としては幾つかの方法が当業者に知られており、具体的な最適化計算手法は限定されない。1つの好ましい例として、勾配法による数値解法を挙げることができる。また、逆運動学に基づく最適化計算における各関節の重みを規定する式(4)は好ましい1つの態様であり、例示である。例えば、本実施形態では、平滑化処理部において、平滑化後関節位置の重みについては全関節の重みを均一とし、逆運動学に基づく最適化計算を解いている。また、逆運動学に基づく最適化計算を行うにあたり、当業者において適宜拘束条件を与えてもよいことが理解される。 For the optimization calculation based on inverse kinematics, for example, the algorithm described in Non-Patent Document 17 can be used. Several methods of optimization calculation based on inverse kinematics are known to those skilled in the art, and the specific optimization calculation method is not limited. One preferable example is a numerical solution method using a gradient method. Further, equation (4) that defines the weight of each joint in the optimization calculation based on inverse kinematics is one preferable aspect and is an example. For example, in the present embodiment, the smoothing processing unit makes the weights of all joints uniform after smoothing, and solves the optimization calculation based on inverse kinematics. Furthermore, it is understood that those skilled in the art may appropriately impose constraints when performing optimization calculations based on inverse kinematics.

上記探索手法では、探索範囲が格子間隔sに依存するため、各格子点と格子点の間に最も高いPCMスコアを持つ点が存在した場合、その点を発見することができない。本実施形態では、式(2)にて最大値となる格子点のみを求めるのではなく、全格子点の中の複数の点を関節位置点群としてPCMスコアが高くなる場所を探索することによって、逆運動学に基づく最適化計算を実行してもよい。前記関節位置点群は、例えば、7点である。7という数値は、式(2)で求める最大点の前後上下左右にも同様に尤度が高い点が存在するという予想から定めた値である。 In the above search method, since the search range depends on the grid interval s, if a point with the highest PCM score exists between each grid point, that point cannot be found. In this embodiment, instead of finding only the lattice point that has the maximum value in equation (2), multiple points among all lattice points are used as a joint position point group to search for a location where the PCM score is high. , an optimization calculation based on inverse kinematics may be performed. The joint position point group includes, for example, seven points. The numerical value of 7 was determined based on the expectation that there are similarly high-likelihood points in the front, back, top, bottom, left and right of the maximum point determined by equation (2).

異なる格子間隔sを用いて関節位置を取得してもよい。本実施形態の1つでは、関節位置候補の探索と逆運動学に基づく最適化計算をsの値をs1、s2(s1>s2)と変えることで2回実行し、フレームtの関節位置からフレームt+1の関節角・位置を取得するという処理をt=Tとなるまで繰り返すことで全Tフレームのビデオモーションキャプチャを行う。これにより、探索速度と探索精度を両立させることが可能となる。図7に、異なる格子間隔を用いた関節位置取得工程を示す。 Joint positions may be obtained using different grid spacings s. In one of the embodiments, the search for joint position candidates and the optimization calculation based on inverse kinematics are performed twice by changing the values of s to s1 and s2 (s1>s2), and from the joint position of frame t. Video motion capture of all T frames is performed by repeating the process of acquiring the joint angle and position of frame t+1 until t=T. This makes it possible to achieve both search speed and search accuracy. FIG. 7 shows the joint position acquisition process using different grid spacings.

先ず、フレームtにおける関節位置t P nに基づく第1探索範囲(関節位置t P nの近傍空間内の点の間隔s1)におけるフレームt+1における関節位置候補の探索を行う。この工程において、フレームt+1における関節位置第1候補を取得する。関節位置第1候補を用いて逆運動学に基づく最適化計算、順運動学計算を実行して、フレームt+1における関節位置第2候補を取得する。 First, a search is performed for joint position candidates in frame t +1 in a first search range (interval s1 of points in the neighborhood space of joint position t P n ) based on joint position t P n in frame t. In this step, a first joint position candidate in frame t+1 is obtained. Optimization calculations based on inverse kinematics and forward kinematics calculations are performed using the first joint position candidates to obtain the second joint position candidates at frame t+1.

次いで、フレームt+1における関節位置第2候補に基づく第2探索範囲(関節位置第2候補の近傍空間内の点の間隔s2、s2<s1)におけるフレームt+1における関節位置候補の探索を行う。この工程において、フレームt+1における関節位置第3候補を取得する。関節位置第3候補を用いて、逆運動学に基づく最適化計算、順運動学計算を実行して、フレームt+1における関節角、関節位置を取得する。 Next, search for a joint position candidate in frame t+1 in a second search range (interval s2 of points in the neighborhood space of the second joint position candidate, s2 < s1) based on the second joint position candidate in frame t+1. conduct. In this step, a third joint position candidate in frame t+1 is obtained. Using the third joint position candidate, optimization calculations based on inverse kinematics and forward kinematics calculations are performed to obtain joint angles and joint positions at frame t+1.

本実施形態では、直前フレームtで取得されている関節位置に基づいて探索範囲を決定しているが、直前フレームtで取得されている関節位置に加えて、あるいは、代えて、フレームtよりも前の1つあるいは複数のフレーム、あるいはフレームt+2以降の1つあるいは複数のフレームで取得されている関節位置を用いてもよい。例えば、関節位置をリアルタイムで取得する場合に、フレームt-1やフレームt-2などの2フレーム以上前のフレームにおける関節位置に基づいて探索範囲を設定してもよい。また、偶数フレームと奇数フレームにおいて並列計算で、別個に特徴点位置探索を行い、交互に出される特徴点位置候補に、平滑化処理を実行してもよい。 In this embodiment, the search range is determined based on the joint positions acquired in the immediately preceding frame t, but in addition to or in place of the joint positions acquired in the immediately preceding frame t, Joint positions obtained in one or more previous frames or in one or more frames after frame t+2 may be used. For example, when acquiring joint positions in real time, the search range may be set based on joint positions in frames two or more frames before, such as frame t-1 and frame t-2. Alternatively, feature point position searches may be performed separately in parallel calculations for even frames and odd frames, and smoothing processing may be performed on feature point position candidates that are alternately generated.

式(2)の計算において、評価する尤度についてはモーションキャプチャの精度の高さの指標となる。この尤度について閾値を設定し、尤度が閾値よりも低い場合には、対象のポーズのトラッキングに失敗したものとみなし、関節位置候補の探索範囲を広げて探索を行ってもよい。これは、全身のポーズのうちの一部の部位に対して行ってもよく、あるいは、全身に対して行ってもよい。また、オクル―ジョンなどによって特徴点を一時的に見失った場合には、オフラインの解析では時間を先に進めて同一対象のヒートマップを決定し、そこから動作の連続性を利用して時間を遡ることでオクルージョンによりトラッキングに失敗した部分の関節位置の軌道を回復するようにしてもよい。これによって、オクル―ジョンによる見失いを最小にすることができる。 In the calculation of equation (2), the likelihood to be evaluated is an index of the high precision of motion capture. A threshold value may be set for this likelihood, and if the likelihood is lower than the threshold value, it may be assumed that tracking of the target pose has failed, and the search range for joint position candidates may be expanded and searched. This may be done for some parts of the whole body pose, or it may be done for the whole body. In addition, if a feature point is temporarily lost due to occlusion, etc., offline analysis advances in time to determine a heat map of the same object, and then uses the continuity of motion to determine the time. By going back, the trajectory of the joint position of the portion where tracking failed due to occlusion may be recovered. This can minimize loss of sight due to occlusion.

このように、本実施形態では、PCMスコアが最大となる3次元空間上の点を探索する方法として、3次元空間上の点群を2次元平面に投影し、そのピクセル座標のPCM値を取得し、その和(PCMスコア)を求め、点群のうちPCMスコアが最も高かった点を、PCMスコアが最大となる3次元空間上の点として関節位置候補とする。3次元上の点を各カメラ平面に投影し、そのPCMのスコアを算出する計算は軽い。本実施形態に係る関節位置候補の探索は、前フレームの情報を用いた探索範囲の限定、及び、探索範囲内の格子点の3次元位置の2次元画像(PCM)への再投影によって計算量の低減、および外れ値の除外を実現している。 In this way, in this embodiment, as a method of searching for a point in three-dimensional space where the PCM score is maximum, a group of points in three-dimensional space is projected onto a two-dimensional plane, and the PCM value of the pixel coordinates is obtained. Then, the sum (PCM score) is calculated, and the point with the highest PCM score among the point group is selected as the joint position candidate as the point in the three-dimensional space where the PCM score is the maximum. The calculation of projecting three-dimensional points onto each camera plane and calculating the PCM score is light. The search for joint position candidates according to this embodiment requires a large amount of calculation by limiting the search range using information of the previous frame and reprojecting the three-dimensional positions of grid points within the search range onto a two-dimensional image (PCM). , and eliminates outliers.

[E]平滑化関節位置取得部
関節位置取得部で用いたPCMの取得、逆運動学に基づく最適化計算は時系列的な関係を考慮していないため、出力される関節位置が時間的に滑らかである保証は無い。平滑化処理部の平滑化関節位置取得部では、関節の時系列情報を用いて、時間的な連続性を考慮した平滑化処理を行う。例えば、フレームt+1で取得された関節位置を平滑化する場合には、典型的には、フレームt+1で取得された関節位置、フレームtで取得された関節位置、フレームt-1で取得された関節位置が用いられる。フレームtで取得された関節位置、フレームt-1で取得された関節位置については、平滑化前の関節位置が用いられるが、平滑化後の関節位置を用いることもできる。非リアルタイムで平滑化処理を実行する場合には、後の時刻で取得された関節位置、例えば、フレームt+2以降のフレームの関節位置を用いてもよい。また、平滑化関節位置取得部では、必ずしも連続するフレームを用いなくてもよい。計算を単純にするために、先ず、身体構造情報を用いずに平滑化を行う。このため隣接する関節の距離であるリンク長は保存されない。次いで、平滑化後の関節位置を用いて、再度、対象の骨格構造を使った逆運動学に基づく最適化計算を行って、前記対象の各関節角を取得することで、リンク長を保存した平滑化を行う。
[E] Smoothed joint position acquisition unit The PCM acquisition and optimization calculations based on inverse kinematics used in the joint position acquisition unit do not take time-series relationships into account, so the output joint positions may vary in time. There is no guarantee that it will be smooth. The smoothed joint position acquisition section of the smoothing processing section uses the time series information of the joints to perform smoothing processing that takes temporal continuity into consideration. For example, when smoothing the joint positions obtained at frame t+1, typically the joint positions obtained at frame t+1, the joint positions obtained at frame t, and the joint positions obtained at frame t-1 are smoothed. The acquired joint positions are used. For the joint positions acquired in frame t and the joint positions acquired in frame t-1, the joint positions before smoothing are used, but the joint positions after smoothing can also be used. When performing the smoothing process in non-real time, joint positions acquired at a later time, for example, joint positions of frames after frame t+2, may be used. Furthermore, the smoothed joint position acquisition unit does not necessarily need to use consecutive frames. To simplify the calculation, first smoothing is performed without using body structure information. Therefore, the link length, which is the distance between adjacent joints, is not preserved. Next, using the smoothed joint positions, optimization calculations based on inverse kinematics using the target skeletal structure were performed again to obtain each joint angle of the target, thereby preserving the link length. Perform smoothing.

平滑化関節位置取得部は、ローパスフィルタによる関節位置の時間的平滑化を行う。関節位置取得部によって取得した関節位置にローパスフィルタによる平滑化処理を適用し、平滑化関節位置を各関節の目標位置とし、逆運動学に基づく最適化計算を行う。これにより、関節位置の時間変化の滑らかさを、各関節間距離が不変であるという骨格条件の下で生かすことが可能となる。 The smoothing joint position acquisition unit performs temporal smoothing of joint positions using a low-pass filter. Smoothing processing using a low-pass filter is applied to the joint positions acquired by the joint position acquisition unit, the smoothed joint positions are used as target positions of each joint, and optimization calculations based on inverse kinematics are performed. This makes it possible to take advantage of the smooth temporal changes in joint positions under the skeletal condition that the distance between each joint remains unchanged.

平滑化処理部について、より具体的に説明する。本実施形態では、表3に示すIIRローパスフィルタを設計し、関節位置にローパスフィルタによる平滑化処理を行う。なお、カットオフ周波数の値は、当業者において適宜設定できる値であり、例えば、経験的には表3の値を用いることができる。計測する運動の種類や撮影するカメラのフレームレートに応じて平滑化フィルタのパラメータの調整を行ってもよい。

Figure 0007427188000009
ローパスフィルタの特性上、ローパスフィルタに通した関節位置の取得はフィルタ次数の半分にあたる3フレームの遅延が生じ、かつ、関節角更新開始から3フレームはローパスフィルタを適応することができないという問題がある。本実施形態では、フィルタに適応前に、第1フレームの関節位置を第-2フレーム、第-1フレーム、第0フレームとおくことで、2フレーム分計算時間の遅れは生じるものの、空間的な誤差の少ない全フレームの関節位置の平滑処理を行う。 The smoothing processing unit will be explained in more detail. In this embodiment, an IIR low-pass filter shown in Table 3 is designed, and smoothing processing by the low-pass filter is performed on joint positions. Note that the value of the cutoff frequency is a value that can be appropriately set by a person skilled in the art, and for example, the values in Table 3 can be used empirically. The parameters of the smoothing filter may be adjusted depending on the type of movement to be measured and the frame rate of the camera to be photographed.
Figure 0007427188000009
Due to the characteristics of the low-pass filter, there is a problem that there is a delay of 3 frames, which is half the order of the filter, when acquiring the joint position through the low-pass filter, and the low-pass filter cannot be applied for 3 frames after the joint angle update starts. . In this embodiment, by setting the joint positions of the first frame as -2nd frame, -1st frame, and 0th frame before applying the filter, although the calculation time is delayed by 2 frames, the spatial Smoothing the joint positions of all frames with few errors is performed.

上記フィルタによって求めた各関節位置をビデオモーションキャプチャの出力とすると、各関節の時間的な滑らかさは得られるが、隣接する関節間距離が定数という条件が崩れることがある。本実施形態では、このローパスフィルタ適応後の関節位置をあらためて各関節の目標関節位置と置き、再度逆運動学に基づく最適化計算を行った。逆運動学に基づく最適化計算には式(3)を用いることができるが、全関節の重みを均一(これには限定されないが)として逆運動学に基づく最適化計算を実行する。これにより、ローパスフィルタに適応した関節位置の時間変化の滑らかさを、各関節間距離が不変であるという骨格条件の下で生かすことができる。なお、関節角の可動域を逆運動学計算の制約条件として加えてもよい。 If each joint position determined by the above filter is output from video motion capture, temporal smoothness of each joint can be obtained, but the condition that the distance between adjacent joints is a constant may be broken. In this embodiment, the joint positions after applying this low-pass filter are set as the target joint positions of each joint, and optimization calculations based on inverse kinematics are performed again. Equation (3) can be used for optimization calculations based on inverse kinematics, but optimization calculations based on inverse kinematics are performed with uniform weights for all joints (though not limited to this). This makes it possible to take advantage of the smoothness of temporal changes in joint positions adapted to the low-pass filter under the skeletal condition that the distance between each joint remains unchanged. Note that the range of motion of the joint angle may be added as a constraint condition for the inverse kinematics calculation.

平滑化処理部の出力には、例えば、関節角情報と骨格構造、およびその2つから一意に算出できる関節位置情報が含まれる。例えば、CG描画時に、関節角情報と、身体の骨格構造ファイルを用いて順運動学計算で身体の運動を描画する。平滑化処理部の出力に含まれる情報を記憶部に格納してもよい。 The output of the smoothing processing unit includes, for example, joint angle information, skeletal structure, and joint position information that can be uniquely calculated from the two. For example, when drawing CG, the motion of the body is drawn using forward kinematics calculations using joint angle information and the body's skeletal structure file. Information included in the output of the smoothing processing section may be stored in the storage section.

[F]前処理部
[F-1]入力画像の回転
ヒートマップの計算では、画像の中で人が正立する画像に対して、人が横臥の姿勢や倒立に近い姿勢でいる画像に対して精度が下がることがある。これは、ヒートマップ取得部で用いる学習データの中に正立に近い画像が多いというデータの偏りによって、対象の逆立ちや側転といった倒立運動では下半身の推定誤差が大きくなるためである。この場合、前フレームでの対象の体の傾きに応じて画像を回転させ、できるだけ対象が正立に近い姿勢で画像に現れるようにする。本実施形態では下半身のPCMを回転画像から取得した。
[F] Preprocessing unit [F-1] In the calculation of the rotation heat map of the input image, for images in which a person is standing upright, for images in which a person is lying down or in an inverted position, accuracy may decrease. This is because the learning data used by the heat map acquisition unit is biased in that there are many images that are close to upright, which increases the estimation error of the lower body when the subject performs an inverted movement such as a handstand or cartwheel. In this case, the image is rotated according to the inclination of the subject's body in the previous frame, so that the subject appears in the image in a posture as close to erect as possible. In this embodiment, the PCM of the lower body was acquired from a rotated image.

一般化すると、対象が所定の第1ポーズセット(例えば、横臥や倒立)の時にヒートマップ情報の精度が大きく劣化し、対象が所定のある第2ポーズセット(例えば、正立)の時にヒートマップ情報の精度が高いことが既知の場合に、入力画像における対象の身体の傾きから対象のポーズが第1ポーズセットに含まれるか否かを判定し、入力画像を対象のポーズが第2ポーズセットに含まれるポーズ(正立)となるように入力画像を回転させてヒートマップ情報を取得する。特にリアルタイムでヒートマップ情報を取得する場合には、対象の傾きの判定は、前のフレームにおける入力画像に基づいて実行される。入力画像を回転させてヒートマップ情報を取得するという考えは、本実施形態にかかるモーションキャプチャとは独立して、ヒートマップ取得部に一般に適用し得る技術である。なお、学習データの蓄積および畳み込みニューラルネットワーク(CNN)の改良によって、入力画像の回転を必要としない場合もあり得る。また、可動カメラを用いる場合において、対象の動きに合わせてカメラ自体を物理的に回転させて、フレーム毎に関数μiを取得することで、入力画像の回転を必要としない場合もあり得る。 Generalizing, the accuracy of heat map information is greatly degraded when the subject is in a predetermined first pose set (e.g., lying down or inverted), and when the subject is in a predetermined second pose set (e.g., standing upright). When it is known that the accuracy of the information is high, it is determined whether the target pose is included in the first pose set from the inclination of the target's body in the input image, and the target pose is included in the second pose set. The input image is rotated so that the pose (erect) included in is obtained, and heat map information is obtained. Particularly when acquiring heat map information in real time, the determination of the tilt of the object is performed based on the input image in the previous frame. The idea of acquiring heat map information by rotating an input image is a technique that can be generally applied to heat map acquisition units, independent of the motion capture according to this embodiment. Note that, with the accumulation of learning data and improvements in convolutional neural networks (CNN), it may not be necessary to rotate the input image. Furthermore, when a movable camera is used, rotation of the input image may not be necessary by physically rotating the camera itself in accordance with the movement of the object and obtaining the function μ i for each frame.

図8を参照しつつ、入力画像を回転させてPCMを取得する工程について説明する。フレームtの入力画像において、対象の身体の傾き(1つの態様では、trunkの傾き)を検出する。例えば、対象の腰と首を結ぶベクトルを算出する。具体的には、図4左図の骨格モデルのPelvis関節とNeck関節の3次元座標位置を算出する。3次元上の点をカメラiの画像平面のピクセル位置に変換する関数μiを用いてフレームtにおけるカメラi での対象の身体の傾き(腰と首を結ぶベクトルを各カメラ方向に正射影した際の角度)を求める。 The process of rotating an input image to obtain a PCM will be described with reference to FIG. 8. In the input image of frame t, the inclination of the subject's body (in one embodiment, the inclination of the trunk) is detected. For example, a vector connecting the target's waist and neck is calculated. Specifically, the three-dimensional coordinate positions of the Pelvis joint and Neck joint of the skeletal model shown in the left diagram of FIG. 4 are calculated. Using the function μ i that converts a three-dimensional point to a pixel position on the image plane of camera i, we calculate the inclination of the subject's body at camera i at frame t (the vector connecting the waist and neck is orthogonally projected in each camera direction). Find the actual angle).

対象の身体の傾きに基づいて画像回転処理の要否を判定する。本実施形態では、得られた身体の傾き(正射影ベクトルの角度)に応じて、フレームt+1の画像を、正射影ベクトルが鉛直上向きに向くように回転させる。例えば、予め複数の回転角度のセット(例えば、30度刻みに、0度、30度、60度、90度、...330度)、及び、各回転角度に対応する角度範囲(例えば、15度~45度を30度に対応させる)を設定しておき、入力画像の回転判定用のテーブルとして記憶部に格納しておく。このテーブルを参照して、前フレームにおける対象の身体の傾き(正射影ベクトルの角度)がどの角度範囲に該当するかを判定し、判定された角度範囲に対応する角度だけ入力画像を回転させてPCMを取得する。オフラインでヒートマップを取得する場合には、回転角度毎にPCMを取得して記憶部に格納しておき、正射影ベクトルの角度に応じてPCMを選択してもよい。回転画像において、OpenPoseのネットワークへの入力を容易にするため、背景(四隅)を黒で埋める処理を行う。回転画像にOpenPoseを適用し、対象の下半身のPCMの算出を行う。回転画像をPCMと共に元の画像の姿勢に戻す。そして、関節位置候補の探索を行う。入力画像の回転の判定に用いる前フレームは、フレームtのみならず、フレームt-1以前のフレームであってもよい。 The necessity of image rotation processing is determined based on the inclination of the subject's body. In this embodiment, the image of frame t+1 is rotated according to the obtained body inclination (angle of the orthogonal projection vector) so that the orthogonal projection vector faces vertically upward. For example, a set of multiple rotation angles (for example, 0 degrees, 30 degrees, 60 degrees, 90 degrees, ... 330 degrees in 30 degree increments) and an angular range corresponding to each rotation angle (for example, 15 degree to 45 degrees corresponds to 30 degrees) and is stored in the storage unit as a table for determining the rotation of the input image. Referring to this table, determine which angular range the subject's body inclination (orthogonal projection vector angle) in the previous frame corresponds to, and rotate the input image by the angle corresponding to the determined angular range. Get PCM. When acquiring a heat map off-line, a PCM may be acquired for each rotation angle and stored in the storage unit, and the PCM may be selected according to the angle of the orthogonal projection vector. In rotated images, the background (four corners) is filled with black to facilitate input to the OpenPose network. Apply OpenPose to the rotated image and calculate the PCM of the target's lower body. Return the rotated image to the original image posture along with PCM. Then, a search for joint position candidates is performed. The previous frame used to determine the rotation of the input image is not only frame t, but may also be a frame before frame t-1.

[F-2]他の前処理
前処理は、対象の身体の傾きに応じて入力画像を回転させる処理に限定されない。前フレームにおける1人あるいは複数人の対象の3次元位置情報を用いて実行される前処理としては、トリミングあるいは/および縮小、マスク処理、カメラ選択、スティッチングを例示することができる。
[F-2] Other preprocessing The preprocessing is not limited to the process of rotating the input image according to the inclination of the subject's body. Examples of preprocessing performed using three-dimensional position information of one or more subjects in the previous frame include trimming and/or reduction, mask processing, camera selection, and stitching.

トリミングは、前フレームにおける対象の画像上の位置を参考に、画像のトリミングを行い、トリミングした部分のみPCM計算を行うことである。トリミングによって、PCMの計算時間を短縮することは、対象の動作のリアルタイム取得において有利である。次チャプタで詳述するバウンディングボックスは、トリミングとして機能する。また、入力画像が十分大きい場合、画像の縮小を行ってもOpenPoseのPCM作成精度がほぼ変化しないことがあるので、画像の縮小によってPCMの計算時間を短縮できる場合がある。 Trimming refers to trimming an image with reference to the position of the target on the image in the previous frame, and performing PCM calculation only on the trimmed portion. Reducing the computation time of PCM by trimming is advantageous in real-time acquisition of target motion. The bounding box, detailed in the next chapter, functions as a trim. Furthermore, if the input image is sufficiently large, the PCM creation accuracy of OpenPose may remain almost unchanged even if the image is reduced, so reducing the image may reduce the PCM calculation time.

前処理としてのマスク処理は、入力画像に対象以外の人物等が含まれている場合に、対象以外の人物等にマスク処理を適用して、対象のPCM計算を行う処理である。マスク処理を行うことで、複数の対象のPCMの混合を防止することができる。なお、マスク処理を、PCM計算後、関節位置取得部において実行してもよい。 Mask processing as preprocessing is a process in which, when an input image includes a person other than the target, mask processing is applied to the person other than the target to perform PCM calculation for the target. By performing mask processing, mixing of PCMs of multiple targets can be prevented. Note that the masking process may be executed in the joint position acquisition unit after PCM calculation.

カメラ選択は、動画取得部が複数のカメラを含む場合に、カメラを選択することで、対象の動作取得や動作解析に用いる入力画像を選択することである。例えば、広範囲のフィールドで多数のカメラを用いてモーションキャプチャを行う時に、使用する全てのカメラからの情報を用いて動作取得や動作解析を行うのではなく、前処理において対象が映っていると予想されるカメラを選択し、選択したカメラからの入力画像を用いてモーションキャプチャを行うことである。また、前処理として、入力画像のスティッチングを行ってもよい。スティッチングは、各カメラがそれぞれの画角においてオーバーラップする領域があった際に、取得済みのカメラパラメータを用いて各カメラ画像をつなぎ合わせ、シームレスな1つの画像に合成することを指す。これにより、入力画像の端部に対象が部分的に現れているような場合であっても、PCMの推定を良好に行うことができる。 Camera selection is to select an input image to be used for object motion acquisition and motion analysis by selecting a camera when the video acquisition unit includes a plurality of cameras. For example, when performing motion capture using a large number of cameras in a wide field, rather than performing motion capture and motion analysis using information from all cameras used, it is assumed that the target will be captured during preprocessing. The process is to select a camera that will be used in a video game and perform motion capture using the input image from the selected camera. Further, as pre-processing, stitching of input images may be performed. Stitching refers to stitching together camera images using acquired camera parameters and compositing them into one seamless image when each camera has an overlapping area at each angle of view. Thereby, even if the object partially appears at the edge of the input image, the PCM can be estimated favorably.

[G]入力画像から対象の特徴点の位置を取得するまでの流れ
本実施形態に係る入力画像から関節角度、特徴点の位置を取得するまでの工程を、図2を参照しつつ説明する。複数の同期したカメラによって対象者の動作が撮影され、各カメラから所定のフレームレートでRGB画像が出力される。処理部は、入力画像を受信すると、前処理の要否を判定する。前処理は、例えば、画像の回転の要否である。所定の判定基準によって画像の回転が必要だと判定された場合には、入力画像を回転した状態でヒートマップが取得される。画像の回転が不要だと判定された場合には、入力画像に基づいてヒートマップが取得される。
[G] Flow of obtaining the position of the target feature point from the input image The process of obtaining the joint angle and the position of the feature point from the input image according to this embodiment will be described with reference to FIG. The subject's movements are captured by multiple synchronized cameras, and each camera outputs an RGB image at a predetermined frame rate. Upon receiving the input image, the processing unit determines whether pre-processing is necessary. The preprocessing is, for example, whether or not image rotation is necessary. If it is determined that the image needs to be rotated according to a predetermined criterion, a heat map is obtained with the input image rotated. If it is determined that image rotation is not necessary, a heat map is obtained based on the input image.

身体上の全特徴点において、身体上の特徴点の位置の確からしさの尤度の空間分布(ヒートマップ)が生成され、処理部に送信される。処理部では、特徴点の位置候補の探索が行われる。1つの態様では、フレームt+1の入力画像から生成したヒートマップを受信すると、フレームtの特徴点の位置を基に探索範囲が設定され、特徴点の位置候補の探索が行われる。そして全関節において同じ処理を実行し、全関節の関節位置候補を取得する。 For all the feature points on the body, a spatial distribution (heat map) of the likelihood of the position of the feature points on the body is generated and sent to the processing unit. The processing unit searches for position candidates for feature points. In one embodiment, when a heat map generated from the input image of frame t+1 is received, a search range is set based on the position of the feature point of frame t, and a search for a candidate position of the feature point is performed. The same process is then executed for all joints to obtain joint position candidates for all joints.

全特徴点の位置候補に対して逆運動学に基づく最適化計算を実行する。特徴点の位置候補と骨格モデルの関節(特徴点)が対応付けられており、骨格モデルは、対象者固有の骨格モデルに適合されている。特徴点の位置候補と重みを基に、逆運動学に基づく最適化計算、順運動学計算を実行して関節角、特徴点の位置を取得する。 Optimization calculations based on inverse kinematics are performed for all feature point position candidates. Position candidates for feature points are associated with joints (feature points) of the skeletal model, and the skeletal model is adapted to the skeletal model unique to the subject. Based on the feature point position candidates and weights, optimization calculations based on inverse kinematics and forward kinematics calculations are performed to obtain joint angles and feature point positions.

取得された特徴点の位置に対して、過去のフレームにおける関節位置を用いて、平滑化処理を実行することで、関節位置の時間的な動きを滑らかにする。平滑化された特徴点の位置を用いて再度逆運動学に基づく最適化計算を実行して、対象の関節角を取得し、取得した関節角を用いて順運動学計算を実行して、対象の関節位置を取得する。 By performing smoothing processing on the positions of the acquired feature points using joint positions in past frames, the temporal movement of the joint positions is smoothed. Optimization calculations based on inverse kinematics are performed again using the smoothed feature point positions to obtain the joint angles of the target, and forward kinematics calculations are performed using the obtained joint angles to determine the target joint angles. Get the joint positions of.

本実施形態では、PCMスコアが最大となる点を現在のフレームにおいて最も相応しいポーズであると考えて、関節位置候補の取得を実行する一方、PCMスコアが下がることを許容しつつ、その後の処理で、逆運動学に基づく最適化計算、ローパスフィルタによるスムージングを行う。対象の骨格構造、特徴点の位置の時間的な連続性を考慮して、逆運動学に基づく最適化計算を実行することで、特徴点の位置の推定誤差を小さくすることを可能とした。 In this embodiment, the point where the PCM score is maximum is considered to be the most suitable pose in the current frame, and joint position candidates are acquired, while allowing the PCM score to decrease and performing subsequent processing. , optimization calculations based on inverse kinematics, and smoothing using a low-pass filter. By performing optimization calculations based on inverse kinematics, taking into account the skeletal structure of the target and the temporal continuity of the positions of the feature points, it was possible to reduce the estimation error of the positions of the feature points.

本実施形態に係るモーションキャプチャは、複数のカメラの映像から深層学習を用いて推定した関節位置から、人間の骨格の構造と運動の連続性を考慮して3次元再構成を行うことで、従来の光学式モーションキャプチャに匹敵する滑らかな運動計測を取得する。本実施形態における関節位置候補取得部において、式(1)~(4)で示すアルゴリズムを採用することには以下の利点がある。ヒートマップとして空間的な広がりをもった、あいまいな関節位置を、人間の骨格形状を参考にすること(逆運動学に基づく最適化計算)で最適化する。関節位置候補の探索においては、各カメラからの入力画像から取得した、空間的な広がりを持った複数のヒートマップ情報をそのまま用い、その後は、対象の骨格構造を考慮することで、関節位置候補を用いて逆運動学に基づく最適化計算により関節位置を求める。 The motion capture according to this embodiment performs three-dimensional reconstruction from joint positions estimated using deep learning from images from multiple cameras, taking into account the structure of the human skeleton and the continuity of motion. Obtain smooth motion measurements comparable to optical motion capture. Adopting the algorithms shown in equations (1) to (4) in the joint position candidate acquisition unit in this embodiment has the following advantages. The vague joint positions, which have a spatial extent as a heat map, are optimized by referring to the human skeletal shape (optimization calculation based on inverse kinematics). In searching for joint position candidates, we use multiple spatially spread heat map information obtained from input images from each camera as is, and then consider the skeletal structure of the target to search for joint position candidates. The joint positions are determined using optimization calculations based on inverse kinematics.

骨格構造において、ヒートマップ情報を用いて取得した特徴点の位置だけでは決定できない骨格の自由度の変位の決定が必要な場合には、事前知識を条件に含めた最適化によって決定してもよい。例えば、手や足先については それぞれ手首、足首の先に存在するという事前知識を用いて初期角度を与える。手や足先の情報が取得される場合には、初期角度をフレーム毎に変化させ、手や足先の情報が取得されない場合には、手や足先の角度は前フレームの角度から変化せず固定される。また、肘や膝の可動域に応じて手首・足首の各自由度に重み・制限を持たせ、手首、足首の反転を防ぐ、身体は地面を貫通しないという制限を与える、といった事前知識を用いることで逆運動学に基づく最適化計算を行ってもよい。 In a skeletal structure, if it is necessary to determine the displacement of the degree of freedom of the skeletal structure that cannot be determined only by the positions of feature points obtained using heat map information, it may be determined by optimization that includes prior knowledge as a condition. . For example, for the hands and feet, the initial angle is determined using prior knowledge that the wrists and ankles exist, respectively. When hand and toe information is acquired, the initial angle is changed for each frame, and when hand and toe information is not acquired, the hand and toe angle is not changed from the angle of the previous frame. Fixed. In addition, prior knowledge is used to give weights and restrictions to each degree of freedom of the wrists and ankles according to the range of motion of the elbows and knees, to prevent the wrists and ankles from flipping, and to restrict the body from penetrating the ground. In this way, optimization calculations based on inverse kinematics may be performed.

[II]複数人のモーションキャプチャシステム
[A]モーションキャプチャシステムの概要
本実施形態に係る複数人ビデオモーションキャプチャは、トップダウン型のポーズ推定を用いるものである。図9に、本実施形態に係る複数人ビデオモーションキャプチャのフローチャートを示す。複数のカメラで撮影された複数視点画像が入力画像として用いられる。入力画像には、複数人が含まれているが、各人をバウンディングボックスで囲むことで、各人について独立してビデオモーションキャプチャが実行される。各視点において複数のカメラが配置されている場合には、各視点において1つのカメラが選択され、選択されたカメラ画像において、対象となる人物を囲むバウンディングボックスが決定される。バウンディングボックス内の画像情報に基づいて特徴点(keypoint)のヒットマップ情報が取得される。本実施形態では、各特徴点のヒートマップは、トップダウンポーズ推定器の1つであるHRNet(https://github.com/HRNet)を用いて推定される。初期設定において、各人に特有の骨格モデルが設定されており、各カメラ画像から得られた各特徴点のヒートマップ情報と骨格パラメータを用いて特徴点の3次元再構成が実行される。各人に特有の骨格パラメータについては、チャプタIの記載を参照することができる。各時刻において特徴点の3D位置及び関節角を取得することで、特徴点の3D位置及び関節角の時系列情報(3Dポーズの時系列情報)から、当該対象のモーションキャプチャが行われる。各時刻における特徴点の3D位置及び関節角の取得は、複数人について並列で実行され、複数人のモーションキャプチャが行われる。1つの態様では、各人の特徴点の3D位置及び関節角の時系列情報(3Dポーズの時系列情報)に対応する骨格構造を同時にディスプレイに表示される。
[II] Motion capture system for multiple people [A] Overview of motion capture system The video motion capture for multiple people according to this embodiment uses top-down pose estimation. FIG. 9 shows a flowchart of multi-person video motion capture according to this embodiment. Multi-viewpoint images captured by multiple cameras are used as input images. The input image includes multiple people, but by surrounding each person with a bounding box, video motion capture is performed independently for each person. If a plurality of cameras are arranged at each viewpoint, one camera is selected at each viewpoint, and a bounding box surrounding the target person is determined in the selected camera image. Hit map information of feature points (keypoints) is obtained based on image information within the bounding box. In this embodiment, the heat map of each feature point is estimated using HRNet (https://github.com/HRNet), which is one of the top-down pose estimators. In the initial settings, a skeletal model unique to each person is set, and three-dimensional reconstruction of the feature points is performed using heat map information and skeletal parameters of each feature point obtained from each camera image. Regarding skeletal parameters specific to each person, reference may be made to the description in Chapter I. By acquiring the 3D position and joint angle of the feature point at each time, motion capture of the target is performed from time series information of the 3D position and joint angle of the feature point (time series information of 3D pose). Acquisition of the 3D positions and joint angles of feature points at each time is performed in parallel for multiple people, and motion capture for multiple people is performed. In one aspect, the skeletal structure corresponding to the 3D positions of feature points of each person and the time series information of joint angles (time series information of 3D poses) is simultaneously displayed on the display.

図10に、本実施形態に係る入力画像の処理工程を示すフローチャートを示す。前チャプタで開示したモーションキャプチャシステムと大きく異なる点は、各特徴点のヒートマップを取得する前に、バウンディングボックスを決定する工程を備えている点である。すなわち、入力画像(RGB画像)上で1対象を囲むバウンディングボックスを決定し、ヒートマップ取得部において、バウンディングボックス内の画像情報に基づいて1対象のヒートマップが取得される。ヒートマップ情報(特徴点の位置の確からしさの尤度の空間分布)と骨格モデルを用いてポーズ推定を行う。各特徴点の位置の取得については、基本的には、前チャプタで開示した手法を用いることができる。 FIG. 10 shows a flowchart showing the input image processing steps according to this embodiment. A major difference from the motion capture system disclosed in the previous chapter is that the method includes a step of determining a bounding box before acquiring a heat map of each feature point. That is, a bounding box surrounding one object is determined on the input image (RGB image), and a heat map of one object is acquired in the heat map acquisition unit based on the image information within the bounding box. Pose estimation is performed using heat map information (spatial distribution of the likelihood of the location of feature points) and a skeletal model. Basically, the method disclosed in the previous chapter can be used to obtain the position of each feature point.

本実施形態に係る3次元動作再構成は、np人の対象の周りに配置されたnc台のカメラを用いて実行される。各カメラは同期され、キャリブレーションされている。カメラによる撮影空間が広域空間の場合には、対象がカメラから見切れてしまうという問題を避けるため、1つの視点に視野の異なる複数のカメラを隣り合わせて配置してもよい。この場合、視点の数をnvとし、視点vに配置したカメラセットをCv、vにおけるカメラ数をnCvとすると、カメラ数は、

Figure 0007427188000010
となる。各視点vにおいて、nCv台のカメラから1つのカメラを選択して、選択したカメラの画像を用いて特徴点の2D位置の推定を行う。より具体的には、選択したカメラの画像上に所定のバウンディングボックスを設定し、バウンディングボックス内のピクセル情報を用いて特徴点のヒートマップを取得する。上記カメラシステムは例示であって、複数視点のそれぞれに1台のカメラを配置してカメラシステムを構成してもよい。 The three-dimensional motion reconstruction according to this embodiment is performed using n c cameras arranged around n p objects. Each camera is synchronized and calibrated. When the space photographed by the camera is a wide space, a plurality of cameras with different fields of view may be placed adjacent to each other at one viewpoint in order to avoid the problem that the object is not visible to the camera. In this case, if the number of viewpoints is nv , the camera set placed at viewpoint v is Cv , and the number of cameras at v is nCv , then the number of cameras is
Figure 0007427188000010
becomes. At each viewpoint v, one camera is selected from n Cv cameras, and the 2D position of the feature point is estimated using the image of the selected camera. More specifically, a predetermined bounding box is set on the image of the selected camera, and a heat map of feature points is obtained using pixel information within the bounding box. The camera system described above is an example, and the camera system may be configured by arranging one camera at each of a plurality of viewpoints.

[B]初期設定
複数台のカメラで対象を撮影する。各画像内における対象人物の領域を探索し、バウンディングボックスを作成する。初期設定時の人物領域の探索には、Yolov3に代表される人検出器や、OpenPoseのような複数人対応の姿勢推定器、カメラパラメータを利用したエピポーラ拘束、顔認識や服装認識等を用いた個人特定器等を利用して求めることができる。あるいは、各人の領域を人手で与えてもよい。バウンディングボックス内には複数人数が含まれていてもよい。
[B] Initial setting Photograph the target using multiple cameras. Search the area of the target person in each image and create a bounding box. To search for human areas during initial setup, we use human detectors such as Yolov3, pose estimators that support multiple people such as OpenPose, epipolar constraints using camera parameters, face recognition, clothing recognition, etc. It can be determined using a personal identification device, etc. Alternatively, each person's area may be assigned manually. A plurality of people may be included in the bounding box.

トップダウン型の姿勢推定器(例えば、HRNet)を用いて、バウンディングボックス内の1対象の各特徴点のヒートマップを計算し、特徴点の位置を検出する。例えば、ヒートマップの中心座標を特徴点の2D位置と推定する。複数視点から特徴点の2D位置を検出することで、1つの特徴点の複数の2D位置を用いて、特徴点の3D位置の3次元再構成を行い、1対象の初期3Dポーズと骨格パラメータ(3次元空間における関節間距離)を求める。骨格パラメータは単一時刻の複数のカメラの画像から算出してもよいし、誤差の影響を低減するため複数時刻のカメラ画像から算出してもよい。また、骨格パラメータについては、事前に計測しておいてもよい。また、骨格パラメータには、各関節角の可動域を含めてもよい。 Using a top-down pose estimator (for example, HRNet), a heat map of each feature point of one object within the bounding box is calculated, and the position of the feature point is detected. For example, the center coordinates of the heat map are estimated as the 2D positions of the feature points. By detecting the 2D position of the feature point from multiple viewpoints, we perform 3D reconstruction of the 3D position of the feature point using the multiple 2D positions of one feature point, and calculate the initial 3D pose and skeletal parameters ( (distance between joints in three-dimensional space). Skeletal parameters may be calculated from images taken by multiple cameras at a single time, or may be calculated from camera images taken at multiple times to reduce the influence of errors. Further, the skeletal parameters may be measured in advance. Further, the skeletal parameters may include the range of motion of each joint angle.

初期化(初期3D姿勢と骨格パラメータの推定)に失敗したと判断された場合には、異なる撮影時間で上記ステップを行う。判断の指標としては、3次元再構成された特徴点の位置を画像平面に投影した際のヒートマップの値や、特徴点の3D位置を画像平面に再投影した時の座標値と最初に特徴点の2D位置として推定された座標値との誤差、各骨格パラメータの係数などを用い得る。 If it is determined that the initialization (estimation of the initial 3D posture and skeletal parameters) has failed, the above steps are performed at a different imaging time. Judgment indicators include heat map values when the 3D reconstructed feature point positions are projected onto the image plane, coordinate values when the 3D positions of the feature points are reprojected onto the image plane, and the initial feature An error with the coordinate value estimated as the 2D position of the point, a coefficient of each skeleton parameter, etc. can be used.

初期設定時には、各特徴点のヒートマップ情報から直接取得される特徴点の2D位置を用いて特徴点の3次元再構成が行われるが、その後は、前チャプタの手法と同様に、ヒートマップ情報(特徴点の位置の確からしさの尤度の空間分布)を用いて3Dポーズ推定を行う。 At the time of initial setting, 3D reconstruction of feature points is performed using the 2D positions of the feature points directly obtained from the heat map information of each feature point, but after that, similar to the method in the previous chapter, heat map information is used to reconstruct the feature points. 3D pose estimation is performed using (the spatial distribution of the likelihood of the certainty of the position of the feature point).

[C]入力画像におけるバウンディングボックスの決定
本実施形態に係るモーションキャプチャシステムは、トップダウン型のポーズ推定を用いるものであり、各特徴点のヒートマップの計算に先立って、バウンディングボックスを決定する。本実施形態では、他フレームで取得されている特徴点の3D位置情報を用いて、適切なバウンディングボックスの寸法・位置を予測する。本実施形態に係るビデオモーションキャプチャは、光学式モーションキャプチャと同等の高精度のモーションキャプチャを実行することができる。フレームレートが十分に高ければ、対象の現在の3Dポーズは、計算された直前の3Dポーズ、あるいは、直前の複数の3Dポーズ(過去の3D動作)から予測することができる。適切なバウンディングボックスの寸法・位置は、対象の3Dポーズの予測位置に基づいて、透視投影変換(行列μiを用いる)を用いて計算可能である。
[C] Determination of bounding box in input image The motion capture system according to this embodiment uses top-down pose estimation, and determines the bounding box before calculating the heat map of each feature point. In this embodiment, appropriate dimensions and positions of bounding boxes are predicted using 3D position information of feature points acquired in other frames. The video motion capture according to this embodiment can perform motion capture with high precision equivalent to optical motion capture. If the frame rate is high enough, the current 3D pose of the object can be predicted from the previous calculated 3D pose or previous 3D poses (past 3D motion). The dimensions and location of the appropriate bounding box can be calculated using a perspective transformation (using the matrix μ i ) based on the predicted location of the 3D pose of the object.

バウンディングボックスの決定について、図11を参照しつつ説明する。フレームt-2、フレームt-1、フレームtにおける対象の3Dポーズ(各特徴点の3D位置)が取得されており、フレームt+1の対象の3Dポーズを取得しようとしているとする。バウンディングボックス決定は、フレームt+1での各特徴点の3D位置を予測すること、予測した各特徴点の3D位置を用いて、フレームt+1での各カメラの画像平面上での各特徴点の2D位置を予測すること、予測した各特徴点の2D位置(座標)を用いて、フレームt+1での各カメラの画像平面上でのバウンディングボックスの寸法・位置を決定すること、を含む。すなわち、バウンディングボックス決定部は、次フレームでの各特徴点の3D位置予測部と、次フレームでの各特徴点の2D位置予測部と、次フレームでのバウンディングボックス寸法・位置決定部と、を備えている。 Determination of the bounding box will be explained with reference to FIG. 11. Assume that the 3D poses (3D positions of each feature point) of the object in frame t-2, frame t-1, and frame t have been obtained, and that the 3D pose of the object in frame t+1 is to be obtained. Bounding box determination involves predicting the 3D position of each feature point at frame t+1, and using the predicted 3D position of each feature point to determine the 2D position of each feature point on the image plane of each camera at frame t+1. and using the predicted 2D position (coordinates) of each feature point to determine the size and position of the bounding box on the image plane of each camera at frame t+1. That is, the bounding box determination unit includes a 3D position prediction unit for each feature point in the next frame, a 2D position prediction unit for each feature point in the next frame, and a bounding box size/position determination unit for the next frame. We are prepared.

特徴点の3D位置予測部は、例えば、フレームt-2、フレームt-1、フレームtにおける各特徴点の3D位置を用いて、フレームt+1での各特徴点の3D予測位置を求める。図11に示すフレームt-2、フレームt-1、フレームtは例示であって、次フレームt+1の特徴点の3D位置の予測に用いるフレームは、フレームt-2、フレームt-1、フレームtに限定されない。例えば、フレームt-1、フレームtの特徴点の3D位置を用いてもよく、また、フレームt-2より前のフレームの特徴点の3D位置を用いてもよい。なお、初期設定の次のフレーム1、フレーム2、フレーム3における特徴点の3D予測位置は、例えば、それぞれ、初期3Dポーズ、初期3Dポーズ及びフレーム1の3Dポーズ、初期3Dポーズ、フレーム1の3Dポーズ、フレーム2の3Dポーズを用いて取得される。 The feature point 3D position prediction unit calculates the predicted 3D position of each feature point in frame t+1, for example, using the 3D positions of each feature point in frame t-2, frame t-1, and frame t. Frame t-2, frame t-1, and frame t shown in FIG. but not limited to. For example, the 3D positions of feature points in frames t-1 and t may be used, or the 3D positions of feature points in frames before frame t-2 may be used. Note that the 3D predicted positions of feature points in the initial settings of next frame 1, frame 2, and frame 3 are, for example, initial 3D pose, initial 3D pose, and 3D pose of frame 1, initial 3D pose, and 3D of frame 1, respectively. Pose, obtained using the 3D pose of frame 2.

特徴点の2D位置予測部は、フレームt+1での各特徴点の3D予測位置を透視投影変換を用いて各カメラ画像へ投影することで、フレームt+1の各カメラの画像平面上における各特徴点の2D予測位置(座標)を取得する。この透視投影変換は、3次元状の任意の点をカメラiの撮影面のピクセル位置に変換する関数(行列)μi を用いて実行される。関数(行列)μi は、各カメラのキャリブレーションにおいて取得されている。 The feature point 2D position prediction unit projects the 3D predicted position of each feature point in frame t+1 onto each camera image using perspective projection transformation, thereby predicting each feature point on the image plane of each camera in frame t+1. Obtain the 2D predicted position (coordinates). This perspective projection transformation is performed using a function (matrix) μ i that transforms a three-dimensional arbitrary point into a pixel position on the imaging plane of camera i. The function (matrix) μ i is obtained during calibration of each camera.

バウンディングボックス寸法・位置決定部は、各カメラ画像において、全ての特徴点の2D予測位置を含むようにバウンディングボックスの寸法及び位置を決定する。バウンディングボックスの位置は、例えば、方形のボックスの中心座標によって決定される。バウンディングボックス決定部が実行する上記計算は軽い点に留意されたい。そして、フレームt+1の画像において、バウンディングボックスで囲まれた領域の画像情報に基づいて、フレームt+1での対象の3Dポーズ(各特徴点の3D位置)が得られる。フレームt+1での各特徴点の3D位置は記憶部に格納され、フレームt+2の画像におけるバウンディングボックスの決定に用いられる。 The bounding box size and position determination unit determines the size and position of the bounding box in each camera image so as to include the 2D predicted positions of all feature points. The position of the bounding box is determined, for example, by the center coordinates of the rectangular box. Note that the above calculations performed by the bounding box determiner are lightweight. Then, in the image of frame t+1, the 3D pose (3D position of each feature point) of the target at frame t+1 is obtained based on the image information of the area surrounded by the bounding box. The 3D position of each feature point in frame t+1 is stored in the storage unit and used to determine the bounding box in the image of frame t+2.

1つの態様では、バウンディングボックスは以下のような計算によって決定することができる。

Figure 0007427188000011
ここで、t+1 lBiは、時刻t+1における人lのカメラiの画像上で予測された中心位置及び寸法を表している。t lP、t-1 lP、t-2 lPは、時刻t、t-1、t-2における人lの全ての関節の3D位置である。mは、対象の全身がちょうど含まれると想定されるバウンディングボックスの寸法を決定するための正の定数値である。 In one aspect, the bounding box can be determined by calculations such as the following.
Figure 0007427188000011
Here, t+1 l B i represents the predicted center position and size on the image of camera i of person l at time t+1. t l P, t-1 l P, t-2 l P are the 3D positions of all joints of person l at time t, t-1, t-2. m is a positive constant value to determine the dimensions of the bounding box that is assumed to exactly contain the whole body of the subject.

式(3)は、フレームt+1における各関節の予測3D位置を計算するための式である。式(3)は例示であり、係数や用いられるフレームは式(3)に示すものに限定されない。対象の運動が等加速度運動であることを仮定して、位置予測のための式を設定してもよく、あるいは、等速運動を仮定して、式を設計してもよい。フレームt-3以前のフレームの3D位置を用いてもよく、あるいは、フレームt+2以降のフレームの3D位置を用いることも排除されない。複数のフレームにおける関節の3D位置を用いる際に、各フレームの値に適宜重みを設定してもよい。また、対象や運動の種類によって式を変えてもよい。 Equation (3) is an equation for calculating the predicted 3D position of each joint at frame t+1. Equation (3) is an example, and the coefficients and frames used are not limited to those shown in Equation (3). An equation for position prediction may be set on the assumption that the motion of the object is uniform acceleration motion, or an equation may be designed on the assumption of uniform velocity motion. The 3D positions of frames before frame t-3 may be used, or it is not excluded that the 3D positions of frames after frame t+2 are used. When using 3D positions of joints in a plurality of frames, appropriate weights may be set for the values of each frame. Furthermore, the formula may be changed depending on the object or type of movement.

式(2)は、バウンディングボックスの寸法・位置を決定するための式であり、例示である。式(2)では、各カメラの画像平面において、全特徴点の座標から最大のx座標値、最小のx座標値、最大のy座標値、最小のy座標値を取得し、これらの座標値からバウンディングボックスの寸法と基準となる縦横寸法を決定し、これらの座標値の中心の座標をバウンディングボックスの位置とする。上記縦横寸法と定数mからバウンディングボックスの寸法を決定する。mの範囲は限定されないが、m>0でありその値は当業者によって適宜設定し得ることが理解される。mの値が小さいと、特に、特徴点の3D予測位置が誤推定されている場合に、身体の一部がバウンディングボックスに含まれないおそれがある。また、特徴点(keypoint)の箇所が目や手首までしかない場合には、mを小さい値とすると頭や指先がバウンディングボックスに含まれないおそれがある。一方、mの値が大きいと、バウンディングボックスを用いる利点が減殺されてしまうおそれがある。例えば、他の対象がバウンディングボックスに含まれる可能性が高くなる。 Equation (2) is an equation for determining the dimensions and position of the bounding box, and is an example. In equation (2), the maximum x-coordinate value, minimum x-coordinate value, maximum y-coordinate value, and minimum y-coordinate value are obtained from the coordinates of all feature points in the image plane of each camera, and these coordinate values are The dimensions of the bounding box and the reference vertical and horizontal dimensions are determined from the above, and the coordinates of the center of these coordinate values are determined as the position of the bounding box. Determine the dimensions of the bounding box from the above vertical and horizontal dimensions and the constant m. Although the range of m is not limited, it is understood that m>0 and its value can be appropriately set by those skilled in the art. If the value of m is small, a part of the body may not be included in the bounding box, especially if the 3D predicted position of the feature point is incorrectly estimated. Furthermore, if the keypoints are only up to the eyes or wrists, if m is set to a small value, there is a risk that the head and fingertips will not be included in the bounding box. On the other hand, if the value of m is large, the advantage of using a bounding box may be diminished. For example, there is a higher possibility that other objects will be included in the bounding box.

[D]3Dポーズ取得部
[D-1]特徴点のヒートマップの取得
本実施形態では、COCOデータセットで学習したHRNetのモデルを用いて、特徴点のヒートマップを取得する。本実施形態では、入力画像は、用いるトップダウン型のポーズ推定器に応じて、所定の寸法W´×H´×3(RGB)にリサイズされ得る。例えば、HRNetのポーズ推定器では、W´×H´=288×384である。特徴点の数は、nk=17であり、12個の関節(肩、肘、手首、腰、ひざ、足首)と5個の特徴点(目、耳、鼻)からなる。特徴点に対応するヒートマップを生成するトップダウン型のポーズ推定器自体は公知であり、本実施形態に用い得るポーズ推定器は、HRNetのモデルに限定されない。
[D] 3D Pose Acquisition Unit [D-1] Acquisition of Heat Map of Feature Points In this embodiment, a heat map of feature points is acquired using the HRNet model learned with the COCO dataset. In this embodiment, the input image can be resized to predetermined dimensions W'×H'×3 (RGB) depending on the top-down pose estimator used. For example, in the HRNet pose estimator, W′×H′=288×384. The number of feature points is n k =17, consisting of 12 joints (shoulders, elbows, wrists, hips, knees, ankles) and 5 feature points (eyes, ears, nose). A top-down pose estimator that generates a heat map corresponding to feature points is well known, and the pose estimator that can be used in this embodiment is not limited to the HRNet model.

[D-2]バウンディングボックスの回転ないし傾きの決定
本実施形態で用いたHRNetは、身体が過度に傾いていないことを前提として学習されている。したがって、垂直方向に対して身体が大きく傾いている場合(例えば、倒立や側転)には、ポーズ推定が失敗するおそれがある。本実施形態では、バウンディングボックスを回転させることで、特徴点のヒートマップをより正確に推定する。バウンディングボックスの回転角は、胴と首を結ぶ予測ベクトルの傾きから導出する。

Figure 0007427188000012
この式において、nは人体骨格モデルの関節位置を表している。数字は、図4左図で数字で示す位置に対応している。1つの態様では、11個の特徴点(肩、肘、手首、目、耳、鼻)のヒートマップが、回転されたバウンディングボックスに囲まれた領域の画像情報を用いて計算される。バウンディングボックスの回転は、画像に対する相対的な回転でもよく、回転させた入力画像上にバウンディングボックスを設定してもよい。入力画像の回転については、前チャプタの入力画像の回転を参照することができる。 [D-2] Determination of rotation or tilt of bounding box The HRNet used in this embodiment is trained on the assumption that the body is not excessively tilted. Therefore, if the body is significantly tilted in the vertical direction (for example, in a headstand or cartwheel), pose estimation may fail. In this embodiment, the heat map of feature points is estimated more accurately by rotating the bounding box. The rotation angle of the bounding box is derived from the slope of the predicted vector connecting the torso and neck.
Figure 0007427188000012
In this equation, n represents the joint position of the human skeleton model. The numbers correspond to the positions indicated by the numbers in the left diagram of FIG. In one aspect, a heat map of 11 feature points (shoulder, elbow, wrist, eye, ear, nose) is computed using image information of the region surrounded by the rotated bounding box. The bounding box may be rotated relative to the image, or the bounding box may be set on the rotated input image. Regarding the rotation of the input image, you can refer to the rotation of the input image in the previous chapter.

[D-3]カメラの選択
本実施形態では、1つの視点において、視野の異なる複数のカメラを備えているので、対象となる人物が最も適切に撮影されているカメラを、特徴点の2D位置推定を用いて選択する。カメラの選択は、例えば、予測された各関節位置を用いて以下の式で実行される。

Figure 0007427188000013
Iは、カメラ画像の解像度を表している。 [D-3] Camera Selection In this embodiment, one viewpoint is equipped with a plurality of cameras with different fields of view, so the camera that most appropriately photographs the target person is selected at the 2D position of the feature point. Select using estimates. Camera selection is performed using, for example, the following equation using each predicted joint position.
Figure 0007427188000013
I represents the resolution of the camera image.

[D-4]関節位置の取得
3Dポーズ推定では、一般に、各カメラから検出された特徴点の2D位置を3次元再構成することで特徴点(keypoint)の3D位置を取得している。より具体的には、例えば、各カメラ画像において、特徴点のヒートマップの中心座標を当該特徴点の2D位置と推定して、これらの2D位置を用いて特徴点の3D位置を取得する。しかしながら、このようなシンプルな手法では、例えば、シビアなオクルージョン環境では、特徴点の誤検出によって、3Dポーズ推定に失敗するであろう(図13参照)。ここで着目すべき点は、ヒートマップから検出した特徴点の2D位置(ヒートマップの中心座標)が誤検出であった場合であっても、ヒートマップは、特徴点の位置の確からしさの尤度の空間分布であり、特徴点の正しい位置についての尤度を示しているであろうということである。
[D-4] Obtaining Joint Positions In 3D pose estimation, the 3D positions of keypoints are generally obtained by three-dimensionally reconstructing the 2D positions of the feature points detected from each camera. More specifically, for example, in each camera image, the central coordinates of the heat map of the feature point are estimated as the 2D position of the feature point, and these 2D positions are used to obtain the 3D position of the feature point. However, with such a simple method, for example, in a severe occlusion environment, 3D pose estimation will fail due to erroneous detection of feature points (see FIG. 13). The important point to note here is that even if the 2D position of the feature point detected from the heat map (center coordinates of the heat map) is a false detection, the heat map can still be used to determine the likelihood of the location of the feature point. This means that it is a spatial distribution of degrees and may indicate the likelihood of the correct location of the feature point.

そこで、前チャプタにおける手法と同様に、特徴点の位置候補(1つあるいは複数)を取得するための探索領域を設定する。前チャプタでは、フレームtで取得されている特徴点の近傍空間を探索範囲としているのに対して、本実施形態では、フレームt+1において予測される特徴点の予測位置の近傍空間を探索範囲とする。具体的には、フレームt+1での各特徴点の3D予測位置t+1 lPn predを中心とした格子空間を設定し(図6において、t P nt+1 lPn predに置き換えたもの)、t+1 lLn a,b,cを格子空間の1点とする。

Figure 0007427188000014
透視投影変換を用いることで、任意の3D座標の点のカメラiの画像上の座標に投影することができ、該座標に対応する尤度(PCMスコア)を取得することができる。t+1 lPn predが正確に予測されていると仮定すると、最も可能性の高い特徴点の3D位置は、尤度(PCMスコア)の合計が最大となる格子上の点となる。関節位置候補取得部の処理工程を図12に示す。 Therefore, similarly to the method in the previous chapter, a search area is set to obtain position candidates (one or more) of feature points. In the previous chapter, the search range is the space near the feature point acquired in frame t, whereas in this embodiment, the search range is the space near the predicted position of the feature point predicted in frame t+1. shall be. Specifically, a grid space centered at the 3D predicted position t+1 l P n pred of each feature point in frame t+1 is set (in Figure 6, t P n is replaced with t+1 l P n pred ). ), t+1 l L n Let a,b,c be one point in the grid space.
Figure 0007427188000014
By using perspective projection transformation, it is possible to project an arbitrary 3D coordinate point onto the coordinates on the image of camera i, and obtain the likelihood (PCM score) corresponding to the coordinate. Assuming that t+1 l P n pred is accurately predicted, the most likely 3D location of the minutiae will be the point on the grid where the sum of the likelihoods (PCM scores) is maximum. FIG. 12 shows the processing steps of the joint position candidate acquisition unit.

複数人のモーションキャプチャでは、オクル―ジョンが生じる可能性がある(図13参照)。本実施形態では、オクル―ジョン環境では、尤度(PCMスコア)の信頼性が低減すると仮定する。ヒートマップ情報から得られた尤度(PCMスコア)に対して定数からなる重みを割り当てる。最も可能性の高い特徴点の位置は以下のように獲得される。

Figure 0007427188000015
ここで、t+1 lSn i(X)は、時刻t+1でカメラiにおいて、人物lの関節nの尤度(PCMスコア)を取得するための関数である。gは、0~1の間の定数であり、当業者により適宜設定される。なお、gの最適な値は、例えば、オクルージョンの状況や、関節の部位、視点の数等によって変わり得る。 In motion capture of multiple people, occlusion may occur (see Figure 13). In this embodiment, it is assumed that the reliability of the likelihood (PCM score) decreases in an occlusion environment. A weight consisting of a constant is assigned to the likelihood (PCM score) obtained from the heat map information. The most likely minutiae locations are obtained as follows.
Figure 0007427188000015
Here, t+1 l S n i (X) is a function for obtaining the likelihood (PCM score) of joint n of person l at camera i at time t+1. g is a constant between 0 and 1, and is appropriately set by a person skilled in the art. Note that the optimal value of g may change depending on, for example, the occlusion situation, the location of the joint, the number of viewpoints, etc.

計算された特徴点の位置を参照することで、骨格モデルの関節位置を計算する。本実施形態では、骨格モデルの関節角は、図4に示す対応を参照することで、特徴点の位置を目標位置とする逆運動学計算を用いることによって最適化できる。

Figure 0007427188000016
ここで、t+1 lQは、時刻t+1における人物lの関節角を表し、lJはヤコビアン行列を表す。 The joint positions of the skeletal model are calculated by referring to the positions of the calculated feature points. In this embodiment, the joint angles of the skeletal model can be optimized by referring to the correspondence shown in FIG. 4 and using inverse kinematic calculations using the positions of feature points as target positions.
Figure 0007427188000016
Here, t+1 l Q represents the joint angle of person l at time t+1, and l J represents the Jacobian matrix.

最適化計算によって関節位置が計算されるが、これらの位置は、動作の時間的連続性を考慮していない。滑らかな動作を取得するために、関節位置を、関節位置の時系列データからなるローバスフィルタFを用いて滑らかにする。

Figure 0007427188000017
しかしながら、平滑化処理が実行されると、骨格モデルが壊れて、空間連続性が失われる。さらに、上記逆運動学計算では、リング長のみが考慮されているので、各関節角は可動域を考慮していない。そこで、目標位置として滑らかにされた関節位置を用いて、再度、逆運動学計算によって骨格モデルを最適化する。
Figure 0007427188000018
ここで、Q、Qは、RoM(Range of Motion)の最小値及び最大値を表す。この計算により、より適切な関節位置及び角度(3Dポーズ)が取得される。 Joint positions are calculated through optimization calculations, but these positions do not take into account temporal continuity of motion. In order to obtain smooth motion, joint positions are smoothed using a low-pass filter F consisting of time-series data of joint positions.
Figure 0007427188000017
However, when the smoothing process is performed, the skeletal model is broken and spatial continuity is lost. Furthermore, in the above inverse kinematics calculation, only the ring length is taken into consideration, so the range of motion of each joint angle is not taken into account. Therefore, the skeletal model is optimized again by inverse kinematic calculation using the smoothed joint positions as target positions.
Figure 0007427188000018
Here, Q and Q + represent the minimum and maximum values of RoM (Range of Motion). Through this calculation, more appropriate joint positions and angles (3D poses) are obtained.

上記プロセス(各フレームにおける3Dポーズの取得)を繰り返すことで、単一の対象のモーションキャプチャが実行される。複数の対象について並行して同じ処理を実行することで、複数人のビデオモーションキャプチャが実現できる。複数人のモーションキャプチャは、例えば、チームスポーツ(サッカー、フットサル、ラグビー、野球、バレーボール、ハンドボール等)の試合の動画を取得し、試合中の各選手のモーションキャプチャを行うことに適用し得る。なお、本実施形態で説明したバウンディングボックスの決定は、複数人のモーションキャプチャのみならず、単一対象を含む画像を入力画像として用いるポーズ推定にも適用することができる。 Motion capture of a single object is performed by repeating the above process (obtaining a 3D pose in each frame). Video motion capture of multiple people can be achieved by performing the same processing on multiple targets in parallel. Motion capture of multiple players can be applied, for example, to acquiring a video of a match of a team sport (soccer, futsal, rugby, baseball, volleyball, handball, etc.) and performing motion capture of each player during the match. Note that the bounding box determination described in this embodiment can be applied not only to motion capture of multiple people but also to pose estimation using an image including a single object as an input image.

[E]モーションキャプチャフローの補完
本実施形態に係る3Dポーズ推定器は、バウンディングボックスを用いた対象の判別に性能を依存している。したがって、例えば、
(i)対象の3Dポーズの過度の誤推定が生じた場合(典型的には、複数の対象が極度に密接した場合)、
(ii)対象がキャプチャボリューム外に移動した場合、
(iii)新たな対象がキャプチャボリューム内に登場した場合、
に如何に対処するかも重要である。本セクションでは、上述の事象の生起を検知することで、モーションキャプチャフローを補完する機構について説明する。
[E] Complementation of Motion Capture Flow The 3D pose estimator according to this embodiment relies on object discrimination using bounding boxes for performance. Therefore, for example,
(i) If excessive misestimation of the 3D pose of the object occurs (typically when multiple objects are extremely close together);
(ii) if the subject moves outside the capture volume;
(iii) if a new subject appears within the capture volume;
How to deal with this is also important. This section describes a mechanism that complements the motion capture flow by detecting the occurrence of the above events.

補完機構は、バウンディングボックスを用いずに対象の3Dポーズを推定する第2の3Dポーズ推定器ないし推定プログラムを備えている。1つの態様では、前記第2の3Dポーズ推定器はボトムアップタイプである。第2の3Dポーズ推定器は、本実施形態に係るバウンディングボックスを用いた3Dポーズ推定器(第1の3Dポーズ推定器)と並行して動作する。第2の3Dポーズ推定器は、各フレームにおいて、あるいは、周期的に、対象の3Dポーズ推定を行う。すなわち、モーションキャプチャシステムは、バウンディングボックスを用いる第1の3Dポーズ推定器に加えて、バウンディングボックスを用いない第2の3Dポーズ推定器を備えている。 The interpolation mechanism includes a second 3D pose estimator or estimation program that estimates the 3D pose of the object without using a bounding box. In one aspect, the second 3D pose estimator is of the bottom-up type. The second 3D pose estimator operates in parallel with the 3D pose estimator (first 3D pose estimator) using a bounding box according to this embodiment. The second 3D pose estimator performs a 3D pose estimation of the object in each frame or periodically. That is, the motion capture system includes a first 3D pose estimator that uses a bounding box and a second 3D pose estimator that does not use a bounding box.

第2の3Dポーズ推定器について説明する。各カメラごとに人物検出器(Yolo v3など)や、複数人対応のポーズ推定器(OpenPoseなど)を用いて、バウンディングボックス情報を用いずに、各画像上での人物位置を推定する。次いで、エピポーラ拘束や、顔認識・服装認識などを用いた個人特定器などを活用して、推定した人物を複数カメラ間でマッチングさせ、推定した人物の3次元位置を計算して3Dポーズを推定する。なお、対象の3Dポーズを取得することに代えて、3次元上で対象が占めるおおまかな空間(例えば、直方体形状や円柱形状)の位置を取得してもよい。その意味において、第2の3Dポーズ推定器は、3D位置推定器と一般化することができる。 The second 3D pose estimator will be explained. Using a person detector (such as Yolo v3) or a pose estimator that supports multiple people (such as OpenPose) for each camera, the person's position on each image is estimated without using bounding box information. Next, the estimated person is matched between multiple cameras using epipolar restraint, facial recognition, clothing recognition, etc., and the 3D position of the estimated person is calculated to estimate the 3D pose. do. Note that instead of acquiring the 3D pose of the target, the approximate position of the three-dimensional space occupied by the target (for example, a rectangular parallelepiped shape or a cylindrical shape) may be acquired. In that sense, the second 3D pose estimator can be generalized as a 3D position estimator.

補完機構は、例えば、上記(i)の事象が生起した場合に、第1の3Dポーズ推定器によるポーズ推定を補完する。(ii)の事象が生起したことは、例えば、第1の3Dポーズ推定器によって推定された第1の3DポーズのPCMスコア(画像平面に投影した2DポーズのPCMスコアであり、例えば、チャプタIの(4)式で求まるPCMスコアの和)を計算して、閾値と比較し、第1の3DポーズのPCMスコアが閾値に満たなければ、誤推定されていると判断する。この時、第2の3Dポーズ推定器によって推定された第2の3Dポーズを、例えば、第2の3DポーズのPCMスコアが閾値を超えていることを条件として、採用する。 The complementation mechanism complements the pose estimation by the first 3D pose estimator, for example, when the event (i) above occurs. The occurrence of the event (ii) means, for example, the PCM score of the first 3D pose estimated by the first 3D pose estimator (the PCM score of the 2D pose projected onto the image plane, for example, (4) is calculated and compared with a threshold value. If the PCM score of the first 3D pose is less than the threshold value, it is determined that the PCM score of the first 3D pose is incorrectly estimated. At this time, the second 3D pose estimated by the second 3D pose estimator is adopted, for example, on the condition that the PCM score of the second 3D pose exceeds the threshold.

バウンディングボックスを用いた第1の3Dポーズ推定器により推定された対象の第1の3Dポーズと、第2の3Dポーズ推定器により推定された対象の第2の3Dポーズとを比較して、第1の3Dポーズが誤推定であるか否かを判定する比較判定器を備えていてもよい。比較判定器による比較・判定は、各フレームにおいて実行しても、あるいは、周期的(例えば、1秒間に1回、1秒間に2回)に実行してもよい。 A first 3D pose of the object estimated by a first 3D pose estimator using a bounding box and a second 3D pose of the object estimated by a second 3D pose estimator are compared, The image forming apparatus may include a comparison/determination device that determines whether or not the 3D pose of No. 1 is incorrectly estimated. The comparison/determination by the comparison/determination device may be performed in each frame or periodically (for example, once per second or twice per second).

比較方法としては、第1の3Dポーズと第2の3DポーズのPCMスコア(画像平面に投影した2DポーズのPCMスコアであり、例えば、チャプタIの(4)式で求まるPCMスコアの和)の比較、第1の3Dポーズと第2の3Dポーズのとの3次元上でのノルム誤差、第1の3Dポーズを2次元画像平面に投影した位置と、第2の3Dポーズ(3D位置)を2次元画像平面に投影した位置との一致度を例示することができる。比較結果に基づいて、設定した判別値を用いて、第1の3Dポーズ推定器による対象の3Dポーズ推定が誤推定であるか否かを判定する。 As a comparison method, the PCM score of the first 3D pose and the second 3D pose (the PCM score of the 2D pose projected on the image plane, for example, the sum of the PCM scores calculated by equation (4) in Chapter I) Comparison, norm error in three dimensions between the first 3D pose and the second 3D pose, the position where the first 3D pose is projected onto the two-dimensional image plane, and the second 3D pose (3D position). The degree of coincidence with the position projected onto the two-dimensional image plane can be exemplified. Based on the comparison result and using the set discriminant value, it is determined whether the 3D pose estimation of the target by the first 3D pose estimator is incorrect estimation.

第1の3Dポーズ推定器による対象の3Dポーズ推定が誤推定であると判定された場合には、第2の3Dポーズ推定器によって推定された3Dポーズ(3D位置)に基づいて対象の2Dポーズを推定するためのバウンディングボックスを補正する。第2の3Dポーズを基準に補正を行う場合には、所定の条件を課してもよい。例えば、第2の3Dポーズの画像平面への再投影と、第2の3Dポーズの推定に用いられた2Dポーズとの差異が判別値以内であること条件としてもよい。第1の3Dポーズ推定器は、補正されたバウンディングボックスを用いて、対象の3Dポーズを取得する。例えば、フレームtで誤推定判定された場合に、フレームtのバウンディングボックスが補正されて、第1の3Dポーズ推定器は、補正後のバウンディングボックスでフレームtの3Dポーズを再計算する。あるいは、フレームtで誤推定判定された場合に、第1の3Dポーズ推定器は、フレームt+1から、補正したバウンディングボックスを用いてフレームt+1の3Dポーズを計算する。このようにして、事象(i)に対処する。 If it is determined that the 3D pose estimation of the target by the first 3D pose estimator is incorrect, the 2D pose of the target is determined based on the 3D pose (3D position) estimated by the second 3D pose estimator. Correct the bounding box for estimating. When performing correction based on the second 3D pose, predetermined conditions may be imposed. For example, the condition may be that the difference between the reprojection of the second 3D pose onto the image plane and the 2D pose used to estimate the second 3D pose is within a discriminant value. A first 3D pose estimator uses the corrected bounding box to obtain a 3D pose of the object. For example, when an incorrect estimation is determined for frame t, the bounding box of frame t is corrected, and the first 3D pose estimator recalculates the 3D pose of frame t using the corrected bounding box. Alternatively, when an incorrect estimation is determined for frame t, the first 3D pose estimator calculates the 3D pose of frame t+1 using the corrected bounding box from frame t+1. In this way, event (i) is dealt with.

補完機構は、(ii)の事象が生起したことを判定する。第2の3D位置推定器が対象を認識できない場合には、対象がキャプチャボリューム外に移動した(すなわち、事象(ii)が生起した)と判定し、第1の3Dポーズ推定器を用いた対象のモーションキャプチャ計算を停止する。なお、予めキャプチャボリュームの大きさを定めておき、そこから3Dポーズが逸脱した場合には事象(ii)が生起したと判定して、第1の3Dポーズ推定器を用いた対象のモーションキャプチャ計算を停止するようにしてもよい。 The complementation mechanism determines that the event (ii) has occurred. If the second 3D position estimator cannot recognize the object, it is determined that the object has moved outside the capture volume (i.e., event (ii) has occurred), and the object is detected using the first 3D pose estimator. Stop motion capture calculation. Note that the size of the capture volume is determined in advance, and if the 3D pose deviates from it, it is determined that event (ii) has occurred, and the motion capture calculation of the target using the first 3D pose estimator is performed. may be stopped.

補完機構は、(iii)の事象が生起したことを判定する。第2の3D位置推定器が新たな対象を認識した場合には、新たな対象がキャプチャボリュームに入ってきている(すなわち、事象(iii)が生起した)と判定し、第1の3Dポーズ推定器において、新たな対象についてシステムの初期化を行い、モーションキャプチャの処理に加える。初期化については、既述の記載を参照することができる。 The complementation mechanism determines that the event (iii) has occurred. If the second 3D position estimator recognizes a new object, it determines that the new object has entered the capture volume (i.e., event (iii) has occurred) and performs the first 3D pose estimation. In the device, the system is initialized for the new target and added to the motion capture process. Regarding initialization, the above description can be referred to.

一旦キャプチャボリュームの外に出た対象が再度キャプチャボリューム内に入ってきた場合には、事象(iii)の生起として処理することができる。この場合、新たに認識された対象と、事象(ii)の生起に従って3Dポーズ推定を停止した対象が同一であることが認識できれば、第1の3Dポーズ推定器による新たに認識された対象のポーズ推定において、既に取得されている骨格情報を利用することができる。 If an object that has once moved out of the capture volume reenters the capture volume, it can be treated as an occurrence of event (iii). In this case, if it is recognized that the newly recognized object is the same as the object for which 3D pose estimation was stopped in accordance with the occurrence of event (ii), the pose of the newly recognized object by the first 3D pose estimator is In estimation, already acquired skeletal information can be used.

本モーションキャプチャシステムは、スポーツ(運動解析、コーチング、戦術提案、競技の自動採点、トレーニングの詳細ログ)、スマートライフ(一般の健康生活、高齢者の見守り、不審行動の発見)、エンターテイメント(ライブパフォーマンス、CG作成、仮想現実ゲームや拡張現実ゲーム)、介護、医療等の多岐にわたる分野において利用可能である。

This motion capture system is suitable for sports (motion analysis, coaching, tactical suggestions, automatic scoring of competitions, detailed training logs), smart life (general healthy living, monitoring of the elderly, detection of suspicious behavior), and entertainment (live performance). It can be used in a wide variety of fields such as , CG creation, virtual reality games and augmented reality games), nursing care, and medical care.

Claims (20)

複数カメラを用いたモーションキャプチャにおける対象の3Dポーズ取得方法であって、
対象は、複数の関節を含む身体上の複数の特徴点を備え、対象の3Dポーズは、前記複数の特徴点の位置によって特定されており、
フレームt、および/あるいは、フレームtよりも前の1つあるいは複数のフレームにおける対象の1つあるいは複数の3Dポーズを用いて、フレームt+1における各カメラ画像上で前記対象を囲むバウンディングボックスを決定し、
フレームt+1の各カメラ画像において、前記バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、フレームt+1における各特徴点の3D位置を取得する、
3Dポーズ取得方法。
A method for acquiring a 3D pose of a target in motion capture using multiple cameras, the method comprising:
The object has a plurality of feature points on its body including a plurality of joints, and the 3D pose of the object is specified by the positions of the plurality of feature points,
Determine a bounding box surrounding the object on each camera image at frame t+1 using one or more 3D poses of the object at frame t and/or one or more frames before frame t. ,
In each camera image of frame t+1, a spatial distribution of the likelihood of the certainty of the position of each feature point is obtained using the image information in the bounding box, and based on the spatial distribution of the likelihood, Obtain the 3D position of each feature point,
How to obtain 3D pose.
前記画像には複数の対象が含まれており、
選択された1対象についてバウンディングボックスを決定し、
前記バウンディングボックス内の画像情報を用いて、フレームt+1における前記1対象の各特徴点の3D位置を取得する、
請求項1に記載の3Dポーズ取得方法。
The image includes multiple objects,
Determine the bounding box for the selected object,
obtaining a 3D position of each feature point of the one object in frame t+1 using image information within the bounding box;
The 3D pose acquisition method according to claim 1.
各フレームにおいて各対象の3Dポーズを並列で取得する、
請求項2に記載の3Dポーズ取得方法。
Acquire the 3D pose of each object in parallel in each frame,
The 3D pose acquisition method according to claim 2.
前記バウンディングボックスの決定は、
前記1つあるいは複数の3Dポーズを用いて、フレームt+1における3Dポーズを予測し、
予測した3Dポーズを各カメラ画像へ投影して、フレームt+1の各カメラ画像における2Dポーズを予測し、
予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、各カメラ画像におけるバウンディングボックスの位置及び大きさを決定する、
請求項1~3いずれか1項に記載の3Dポーズ取得方法。
The determination of the bounding box is
predicting a 3D pose at frame t+1 using the one or more 3D poses;
projecting the predicted 3D pose onto each camera image to predict a 2D pose in each camera image of frame t+1;
determining the position and size of a bounding box in each camera image using position information of a plurality of feature points that specify the predicted 2D pose;
The 3D pose acquisition method according to any one of claims 1 to 3.
前記バウンディングボックスの位置は、前記バウンディングボックスの中心によって決定される、
請求項4に記載の3Dポーズ取得方法。
the position of the bounding box is determined by the center of the bounding box;
The 3D pose acquisition method according to claim 4.
各カメラ画像に対する前記バウンディングボックスの傾きを決定することを含む、
請求項4、5いずれか1項に記載の3Dポーズ取得方法。
determining a slope of the bounding box for each camera image;
The 3D pose acquisition method according to claim 4 or 5.
前記対象において、隣接する関節間の距離が定数として得られており、
前記尤度の空間分布を用いて、各特徴点に対応する1つあるいは複数の特徴点の位置候補を取得し、
前記特徴点の位置候補と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得し、
前記関節角を用いて順運動学計算を行うことで、前記対象の関節を含む特徴点の位置を取得する、
請求項1~4いずれか1項に記載の3Dポーズ取得方法。
In the object, the distance between adjacent joints is obtained as a constant,
Using the spatial distribution of the likelihood, obtain position candidates for one or more feature points corresponding to each feature point,
Obtaining each joint angle of the target by performing optimization calculation based on inverse kinematics using the position candidates of the feature points and the multi-joint structure of the target,
obtaining the position of a feature point including the target joint by performing forward kinematics calculation using the joint angle;
The 3D pose acquisition method according to any one of claims 1 to 4.
前記特徴点の位置候補の取得は、1つあるいは複数のフレームで取得されている各特徴点の3D位置を用いて特徴点位置候補の探索範囲を設定し、
前記探索範囲内の点の全部あるいは一部を各カメラ画像平面のピクセル位置へ変換し、
フレームt+1で取得された尤度の空間分布を用いて、フレームt+1における各関節位置の1つあるいは複数の特徴点位置候補を取得するものである、請求項7に記載の3Dポーズ取得方法。
The acquisition of the feature point position candidates involves setting a search range for the feature point position candidates using the 3D position of each feature point acquired in one or more frames;
converting all or some of the points within the search range into pixel positions on each camera image plane;
8. The 3D pose according to claim 7, wherein one or more feature point position candidates for each joint position in frame t+1 are obtained using the spatial distribution of likelihoods obtained in frame t+1. Acquisition method.
前記探索範囲は、フレームt+1での各特徴点の予測3D位置の近傍空間である、請求項8に記載の3Dポーズ取得方法。 9. The 3D pose acquisition method according to claim 8, wherein the search range is a space in the vicinity of the predicted 3D position of each feature point at frame t+1. 前記探索範囲は、フレームtで取得されている各特徴点の3D位置の近傍空間である、請求項8に記載の3Dポーズ取得方法。 9. The 3D pose acquisition method according to claim 8, wherein the search range is a space in the vicinity of the 3D position of each feature point acquired in frame t. 前記逆運動学に基づく最適化計算において、前記尤度の空間分布が用いられる、請求項7~10いずれか1項に記載の3Dポーズ取得方法。 11. The 3D pose acquisition method according to claim 7, wherein the spatial distribution of the likelihood is used in the optimization calculation based on inverse kinematics. 前記特徴点の位置を、他の複数のフレームで取得された複数の特徴点の位置を用いて時間方向に平滑化し、
平滑化された特徴点の位置と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得する、
請求項7~11いずれか1項に記載の3Dポーズ取得方法。
smoothing the position of the feature point in the time direction using the positions of a plurality of feature points acquired in a plurality of other frames;
obtaining each joint angle of the target by performing an optimization calculation based on inverse kinematics using the smoothed feature point positions and the multi-joint structure of the target;
The 3D pose acquisition method according to any one of claims 7 to 11.
複数カメラを用いたモーションキャプチャにおける対象の3Dポーズ取得装置であって、
対象は、複数の関節を含む身体上の複数の特徴点を備え、各対象の3Dポーズは、前記複数の特徴点の位置によって特定されており、
前記装置は記憶部と処理部を備え、
前記記憶部には、計算された各対象の3Dポーズの時系列データが記憶されており、
前記処理部は、
フレームt、および/あるいは、フレームtよりも前の1つあるいは複数のフレームにおける1対象の1つあるいは複数の3Dポーズを用いて、フレームt+1における各カメラ画像において、前記1対象を囲むバウンディングボックスを決定し、
フレームt+1の各カメラ画像において、前記バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、フレームt+1における各特徴点の3D位置を取得する、
ように構成されている、3Dポーズ取得装置。
A 3D pose acquisition device for a target in motion capture using multiple cameras,
The object has a plurality of feature points on its body including a plurality of joints, and the 3D pose of each object is specified by the position of the plurality of feature points,
The device includes a storage unit and a processing unit,
The storage unit stores time-series data of calculated 3D poses of each object,
The processing unit includes:
Using one or more 3D poses of an object in frame t and/or one or more frames before frame t, create a bounding box surrounding the object in each camera image at frame t+1. decided,
In each camera image of frame t+1, a spatial distribution of the likelihood of the certainty of the position of each feature point is obtained using the image information in the bounding box, and based on the spatial distribution of the likelihood, Obtain the 3D position of each feature point,
A 3D pose acquisition device configured as follows.
前記バウンディングボックスの決定は、
前記1つあるいは複数の3Dポーズを用いて、フレームt+1における3Dポーズを予測し、
予測した3Dポーズを各カメラ画像へ投影して、フレームt+1の各カメラ画像における2Dポーズを予測し、
予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、各カメラ画像におけるバウンディングボックスの位置及び大きさを決定する、
請求項13に記載の3Dポーズ取得装置。
The determination of the bounding box is
predicting a 3D pose at frame t+1 using the one or more 3D poses;
projecting the predicted 3D pose onto each camera image to predict a 2D pose in each camera image of frame t+1;
determining the position and size of a bounding box in each camera image using position information of a plurality of feature points that specify the predicted 2D pose;
The 3D pose acquisition device according to claim 13.
前記記憶部には、前記1対象について、隣接する関節間の距離が定数として格納されており、
前記処理部は、
前記尤度の空間分布を用いて、各特徴点に対応する1つあるいは複数の特徴点の位置候補を取得し、
前記特徴点の位置候補と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得し、
前記関節角を用いて順運動学計算を行うことで、前記対象の関節を含む特徴点の位置を取得する、
請求項13、14いずれか1項に記載の3Dポーズ取得装置。
The storage unit stores a distance between adjacent joints as a constant for the one object,
The processing unit includes:
Using the spatial distribution of the likelihood, obtain position candidates for one or more feature points corresponding to each feature point,
Obtaining each joint angle of the target by performing optimization calculation based on inverse kinematics using the position candidates of the feature points and the multi-joint structure of the target,
obtaining the position of a feature point including the target joint by performing forward kinematics calculation using the joint angle;
The 3D pose acquisition device according to claim 13 or 14.
前記処理部は、1つあるいは複数のフレームで取得されている各特徴点を用いて特徴点位置候補の探索範囲を設定し、フレームt+1で取得された尤度の空間分布を用いて、フレームt+1における各関節位置の1つあるいは複数の特徴点位置候補を取得する、請求項15に記載の3Dポーズ取得装置 The processing unit sets a search range for feature point position candidates using each feature point acquired in one or more frames, and uses the spatial distribution of the likelihood acquired in frame t+1, The 3D pose acquisition device according to claim 15, which acquires one or more feature point position candidates for each joint position in frame t+1. 前記処理部は、
前記特徴点の位置を、他の複数のフレームで取得された複数の特徴点の位置を用いて時間方向に平滑化し、
平滑化された特徴点の位置と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得する、
ように構成されている、
請求項15、16いずれか1項に記載の3Dポーズ取得装置。
The processing unit includes:
smoothing the position of the feature point in the time direction using the positions of a plurality of feature points acquired in a plurality of other frames;
obtaining each joint angle of the target by performing an optimization calculation based on inverse kinematics using the smoothed feature point positions and the multi-joint structure of the target;
It is configured as follows.
The 3D pose acquisition device according to claim 15 or 16.
1つあるいは複数の取得されている3Dポーズを用いて、次フレームの対象の3Dポーズを予測し、
予測した3Dポーズをカメラの画像平面へ投影して、次フレームのカメラの画像平面における対象の2Dポーズを予測し、
予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、次フレームのカメラの画像におけるバウンディングボックスの位置及び大きさを決定する、
トップダウン型ポーズ推定におけるバウンディングボックスの決定方法。
predicting a 3D pose of the object in the next frame using one or more acquired 3D poses;
projecting the predicted 3D pose onto the image plane of the camera to predict the 2D pose of the object on the image plane of the camera in the next frame;
Determining the position and size of a bounding box in the camera image of the next frame using position information of a plurality of feature points that specify the predicted 2D pose;
A method for determining bounding boxes in top-down pose estimation.
複数のカメラと、
バウンディングボックス決定部と、
3Dポーズ取得部と、
を備えたモーションキャプチャシステムであって、
前記3Dポーズ取得部は、各カメラ画像において、バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、3Dポーズを取得し、
前記バウンディングボックス決定部は、
1つあるいは複数の取得されている3Dポーズを用いて、次フレームの対象の3Dポーズを予測し、
予測した3Dポーズをカメラの画像平面へ投影して、次フレームのカメラの画像平面における対象の2Dポーズを予測し、
予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、次フレームのカメラの画像におけるバウンディングボックスの位置及び大きさを決定する、
モーションキャプチャシステム。
multiple cameras and
a bounding box determination section;
3D pose acquisition unit,
A motion capture system equipped with
The 3D pose acquisition unit acquires a spatial distribution of the likelihood of the position of each feature point in each camera image using the image information in the bounding box, and based on the spatial distribution of the likelihood, Obtain a 3D pose,
The bounding box determining unit includes:
predicting a 3D pose of the object in the next frame using one or more acquired 3D poses;
projecting the predicted 3D pose onto the image plane of the camera to predict the 2D pose of the object on the image plane of the camera in the next frame;
Determining the position and size of a bounding box in the camera image of the next frame using position information of a plurality of feature points that specify the predicted 2D pose;
motion capture system.
さらに、前記3Dポーズ取得部とは異なる3D位置取得部を備え、前記3D位置取得部は、バウンディングボックスを用いずに対象の3D位置を取得するものである、
請求項19に記載のモーションキャプチャシステム。
Furthermore, a 3D position acquisition section different from the 3D pose acquisition section is provided, and the 3D position acquisition section acquires the 3D position of the target without using a bounding box.
The motion capture system according to claim 19.
JP2019237546A 2019-12-26 2019-12-26 3D pose acquisition method and device Active JP7427188B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019237546A JP7427188B2 (en) 2019-12-26 2019-12-26 3D pose acquisition method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019237546A JP7427188B2 (en) 2019-12-26 2019-12-26 3D pose acquisition method and device

Publications (2)

Publication Number Publication Date
JP2021105887A JP2021105887A (en) 2021-07-26
JP7427188B2 true JP7427188B2 (en) 2024-02-05

Family

ID=76918857

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019237546A Active JP7427188B2 (en) 2019-12-26 2019-12-26 3D pose acquisition method and device

Country Status (1)

Country Link
JP (1) JP7427188B2 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4356354A2 (en) * 2021-06-14 2024-04-24 Nanyang Technological University 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
JP7491878B2 (en) 2021-08-12 2024-05-28 Kddi株式会社 Skeleton estimation device and program
CN113869217A (en) * 2021-09-29 2021-12-31 北京复数健康科技有限公司 Method and system for acquiring image identification data
CN114419842B (en) * 2021-12-31 2024-05-10 浙江大学台州研究院 Fall alarm method and device for assisting user to fall to closestool based on artificial intelligence
WO2023188217A1 (en) * 2022-03-30 2023-10-05 富士通株式会社 Information processing program, information processing method, and information processing device
WO2023188216A1 (en) * 2022-03-30 2023-10-05 富士通株式会社 Information processing program, information processing method, and information processing device
CN115019338B (en) * 2022-04-27 2023-09-22 淮阴工学院 Multi-person gesture estimation method and system based on GAMHR-Net
CN115578513B (en) * 2022-09-30 2023-06-23 中国科学院半导体研究所 Three-dimensional human body reconstruction method, three-dimensional human body reconstruction device, electronic equipment and storage medium
WO2024118233A1 (en) * 2022-11-30 2024-06-06 Qualcomm Incorporated Dynamic camera selection and switching for multi-camera pose estimation

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005209148A (en) 2003-12-26 2005-08-04 Nippon Hoso Kyokai <Nhk> Offside line detector, program therefor, and player location detector
JP2006285569A (en) 2005-03-31 2006-10-19 Victor Co Of Japan Ltd Person detecting apparatus
JP2014211404A (en) 2013-04-22 2014-11-13 株式会社ノビテック Motion capture method
JP2017158169A (en) 2016-02-29 2017-09-07 株式会社リコー Image display system, display device, and program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005209148A (en) 2003-12-26 2005-08-04 Nippon Hoso Kyokai <Nhk> Offside line detector, program therefor, and player location detector
JP2006285569A (en) 2005-03-31 2006-10-19 Victor Co Of Japan Ltd Person detecting apparatus
JP2014211404A (en) 2013-04-22 2014-11-13 株式会社ノビテック Motion capture method
JP2017158169A (en) 2016-02-29 2017-09-07 株式会社リコー Image display system, display device, and program

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Rishabh Dabral, et al,Multi-Person 3D Human Pose Estimation from Monocular Images,2019 International Conference on 3D Vision (3DV),米国,IEEE,2019年,p.405-p.414,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8886035
Takuya Ohashi, et al,Video Motion Capture from the Part Confidence Maps of Multi-Camera Images by Spatiotemporal Filtering Using the Human Skeletal Model,2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS),米国,IEEE,2019年01月06日,p.4226-p.4231,https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8593867

Also Published As

Publication number Publication date
JP2021105887A (en) 2021-07-26

Similar Documents

Publication Publication Date Title
JP7427188B2 (en) 3D pose acquisition method and device
JP7209333B2 (en) Joint position acquisition method and device, movement acquisition method and device
JP5111210B2 (en) Image processing apparatus and image processing method
CN104813340B (en) The system and method that accurate body sizes measurement is exported from 2D image sequences
US8824781B2 (en) Learning-based pose estimation from depth maps
US20230008567A1 (en) Real-time system for generating 4d spatio-temporal model of a real world environment
US7457439B1 (en) System and method for motion capture
JP4789745B2 (en) Image processing apparatus and method
CN110544301A (en) Three-dimensional human body action reconstruction system, method and action training system
TW201234278A (en) Mobile camera localization using depth maps
JP2019096113A (en) Processing device, method and program relating to keypoint data
WO2007102537A1 (en) Posture estimating device and method
CN110544302A (en) Human body action reconstruction system and method based on multi-view vision and action training system
Ohashi et al. Synergetic reconstruction from 2D pose and 3D motion for wide-space multi-person video motion capture in the wild
JP2008176509A (en) Information processing device and method
WO2022191140A1 (en) 3d position acquisition method and device
CN112515661B (en) Posture capturing method and device, electronic equipment and storage medium
CN109613974A (en) A kind of AR household experiential method under large scene
Bachmann et al. Motion capture from pan-tilt cameras with unknown orientation
Shere et al. 3D Human Pose Estimation From Multi Person Stereo 360 Scenes.
Phan et al. Towards 3D human posture estimation using multiple kinects despite self-contacts
US11922576B2 (en) System and method for mapping the skin
Cheng et al. Capturing human motion in natural environments
Garau et al. Unsupervised continuous camera network pose estimation through human mesh recovery
Chen et al. A real-time photogrammetric system for acquisition and monitoring of three-dimensional human body kinematics

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20200122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20200122

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230926

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231025

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231208

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231227

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240116

R150 Certificate of patent or registration of utility model

Ref document number: 7427188

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150