JP2021105887A - 3dポーズ取得方法及び装置 - Google Patents

3dポーズ取得方法及び装置 Download PDF

Info

Publication number
JP2021105887A
JP2021105887A JP2019237546A JP2019237546A JP2021105887A JP 2021105887 A JP2021105887 A JP 2021105887A JP 2019237546 A JP2019237546 A JP 2019237546A JP 2019237546 A JP2019237546 A JP 2019237546A JP 2021105887 A JP2021105887 A JP 2021105887A
Authority
JP
Japan
Prior art keywords
pose
frame
target
bounding box
feature point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019237546A
Other languages
English (en)
Other versions
JP7427188B2 (ja
Inventor
中村 仁彦
Yoshihiko Nakamura
仁彦 中村
洋介 池上
Yosuke Ikegami
洋介 池上
拓也 大橋
Takuya Ohashi
拓也 大橋
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/ja
Publication of JP2021105887A publication Critical patent/JP2021105887A/ja
Application granted granted Critical
Publication of JP7427188B2 publication Critical patent/JP7427188B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

【課題】画像に複数対象が含まれる場合であっても、精度の高いポーズ取得を行う。【解決手段】フレームt、および/あるいは、フレームtよりも前の1つあるいは複数のフレームにおける1対象の1つあるいは複数の3Dポーズを用いて、フレームt+1における各カメラ画像において、前記1対象を囲むバウンディングボックスを決定し、フレームt+1の各カメラ画像において、前記バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、フレームt+1における各特徴点の位置を取得する。【選択図】図11

Description

本発明は、モーションキャプチャ係り、詳しくは、3Dポーズ取得方法及び装置に関するものである。
モ―ションキャプチャは人間の動作の取得や解析に不可欠な技術であり、スポーツ、医療、ロボティクス、コンピュータグラフィックス、コンピュータアニメーション等の分野で広く用いられている。モーションキャプチャの方式としては、光学式モーションキャプチャが良く知られている。光学式モーションキャプチャは、再帰性反射材が塗布された複数の光学式マーカを対象の身体に取り付け、赤外線カメラなどの複数のカメラで対象の動作を撮影することで、光学式マーカの移動軌跡から対象の動作を取得する。
他のモーションキャプチャ方式として、加速度センサやジャイロスコープ、地磁気センサなどのいわゆる慣性センサを対象の身体に装着して、対象のモーションデータを取得することも知られている。
上記光学方式や慣性センサを用いた方式は、高精度のモーションデータを取得することができるが、対象の身体に複数のマーカや複数のセンサを装着する必要があるため、動作計測の準備に時間や人手がかかる、対象の動きが制限されて、自然な動きを妨げるおそれがある、という欠点がある。また、システムやデバイスが高額であることから、広く一般に利用できる技術になっていないという課題がある。光学式モーションキャプチャでは計測場所が限定されてしまうため、屋外や広い空間における動作のモーションデータを取得することが困難である、という欠点がある。
光学式マーカやセンサを装着しない、いわゆるマーカレスモーションキャプチャも知られている。カメラと深度センサを用いたモーションキャプチャとして、非特許文献1〜5を例示することができる。しかし、これらの手法は深度データを取得するレーザの時間・空間分解能性能が低いため、屋外や遠方、高速移動する対象の計測を行うことが困難である。
深層学習により画像認識の手法と精度が飛躍的に向上したことにより、1視点からのRGB画像を解析してモーションデータを取得するビデオモーションキャプチャも提案されている(非特許文献6〜11)。この手法は、屋外・遠方といった条件下でも利用可能で、カメラの性能を選択することで比較的低コストで時間・空間分解能を高くすることができる。しかし、1視点の計測ではオクルージョンによって対象のポーズ推定が困難になる場合が多く、精度に関しては複数台のカメラを用いる光学式モーションキャプチャに及ばない。
深層学習によって、単一のビデオ画像から人間の姿を見つけ関節位置の確からしさの尤度の空間分布を表すヒートマップを生成する研究も行われている。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)。
本発明者等は、ヒートマップ情報を用いて関節位置の3次元再構成を行う手法であって、光学式モーションキャプチャのように高い精度で動作計測を行うビデオモーションキャプチャ(非特許文献16)を提案している。ビデオモーションキャプチャは、複数台のRGBカメラの映像から完全非拘束でモーションキャプチャを行うもので、屋内空間から、屋外でのスポーツフィールドの広い空間まで、原理的には映像が取得できれば、動作計測が可能となる技術である。
ここで、同じ空間で複数人が運動を行う場面はしばしばあり(典型的な例では、競技スポーツ)、モーションキャプチャにおいて、複数人の動作計測を行うことは重要である。複数人物が含まれる画像に基づいて各人物のポーズ推定を行う手法としては、2つの手法が知られている。1つは、ボトムアップ型であり、画像内の複数人物の関節位置をヒートマップ情報ないしPCMを用いて推定し、四肢の向きを表すベクトル場(例えば、PAF)等を用いて各人物のポーズを検出する。もう一つは、トップダウン型であり、画像内の各人物の領域を探索してバウンディングボックスを設定し、各バウンディングボックス内の各人物の関節位置をヒートマップ情報を用いて推定することで、各人物のポーズを検出する。バウンディングボックス内の画像情報からヒートマップ情報を取得するソフトウェアは幾つか存在している(非特許文献18〜20)。バウンディングボックス内に複数人物が含まれていた場合であっても、最も相応しい単一人物(例えば、より画像の中心に近い人物、身体の全部位がバウンディングボックスに収まっている人物等)のヒートマップ情報ないしPCMを取得するように学習されている。
しかしながら、入力画像における人物領域の検出が適切に行われないと、適切なバウンディングボックスを決定することができず(例えば、バウンディングボックスで囲んだ領域において手首や足首が切れてしまう)、人の関節位置の誤推定を招くことになる。また、入力画像が高解像度になるにつれ、入力画像において人領域の検出の計算時間が増大することになる。したがって、より小さい計算量で適切にバウンディングボックスを決定することが課題となっている。また、この課題は、複数人環境におけるポーズ推定に限定されるものではない。画像中の対象が一人であっても、バウンディングボックスに囲まれた限定された領域のピクセル情報に基づいてヒートマップ情報を計算することで、計算時間を短縮し得る。
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. 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. 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. 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, 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. 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. 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. http://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. 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. 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. B. Xiao, H. Wu, and Y. Wei. Simple Baselines for HumanPose Estimation and Tracking. In European Conference on Computer Vision (ECCV), 2018.
本発明は、画像に複数の対象が含まれる場合であっても、精度の高いポーズ取得を行うことを目的とするものである。
本発明に係る3Dポーズ取得方法は、複数カメラを用いたモーションキャプチャにおける対象の3Dポーズ取得方法であって、
対象は、複数の関節を含む身体上の複数の特徴点を備え、対象の3Dポーズは、前記複数の特徴点の位置によって特定されており、
フレームt、および/あるいは、フレームtよりも前の1つあるいは複数のフレームにおける対象の1つあるいは複数の3Dポーズを用いて、フレームt+1における各カメラ画像上で前記対象を囲むバウンディングボックスを決定し、
フレームt+1の各カメラ画像において、前記バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、フレームt+1における各特徴点の位置を取得する。
1つの態様では、前記画像には複数の対象が含まれており、
選択された1対象についてバウンディングボックスを決定し、
前記バウンディングボックス内の画像情報を用いて、フレームt+1における前記1対象の各特徴点の位置を取得する。
1つの態様では、各フレームにおいて各対象の3Dポーズを並列で取得する。
画像に複数の対象が含まれることは、1つの態様であって、本発明を限定するものではない。本発明は、1対象のみを含む画像を用いたポーズ取得にも適用される。
1つの態様では、前記バウンディングボックスの決定は、
前記1つあるいは複数の3Dポーズを用いて、フレームt+1における3Dポーズを予測し、
予測した3Dポーズを各カメラ画像へ投影して、フレームt+1の各カメラ画像における2Dポーズを予測し、
予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、各カメラ画像におけるバウンディングボックスの位置及び大きさを決定する。
1つの態様では、前記バウンディングボックスの位置は、前記バウンディングボックスの中心によって決定される。
1つの態様では、各カメラ画像に対する前記バウンディングボックスの傾きを決定することを含む。
バウンディングボックスの傾きは、例えば、入力画像よりも以前のフレームにおける対象のポーズの正立ポーズに対する傾きを取得すること、あるいは、入力画像において予測される対象のポーズの正立ポーズに対する傾きを取得すること、によって決定することができる。
1つの態様では、前記対象において、隣接する関節間の距離が定数として得られており、
前記尤度の空間分布を用いて、各特徴点に対応する1つあるいは複数の特徴点の位置候補を取得し、
前記特徴点の位置候補と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得し、
前記関節角を用いて順運動学計算を行うことで、前記対象の関節を含む特徴点の位置を取得する。
1つの態様では、前記特徴点の位置候補の取得は、1つあるいは複数のフレームで取得されている各特徴点を用いて特徴点位置候補の探索範囲を設定し、
フレームt+1で取得された尤度の空間分布を用いて、フレームt+1における各関節位置の1つあるいは複数の特徴点位置候補を取得するものである。
1つの態様では、前記探索範囲は、フレームt+1での各特徴点の予測位置の近傍空間である。
1つの態様では、前記探索範囲は、フレームtで取得されている各特徴点の位置の近傍空間である。
1つの態様では、前記特徴点の位置候補の取得における特徴点位置候補の探索範囲は、フレームtで取得されている各特徴点の位置に加えて、あるいは、代えて、フレームtよりも前の1つあるいは複数のフレーム、あるいは/および、フレームt+2以降の1つあるいは複数のフレームで取得されている特徴点の位置の近傍空間である。
1つの態様では、前記探索範囲は、前記特徴点の位置を中心として所定間隔で3次元状に分布する所定数の点群である。
1つの態様では、前記逆運動学に基づく最適化計算において、前記尤度の空間分布が用いられる。
1つの態様では、前記特徴点の位置を、他の複数のフレームで取得された複数の特徴点の位置を用いて時間方向に平滑化し、
平滑化された特徴点の位置と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得する。
1つの態様では、前記関節角を用いて順運動学計算を行うことで、前記対象の関節を含む特徴点の位置を取得する。
本発明に係る3Dポーズ取得装置は、複数カメラを用いたモーションキャプチャにおける対象の3Dポーズ取得装置であって、
対象は、複数の関節を含む身体上の複数の特徴点を備え、各対象の3Dポーズは、前記複数の特徴点の位置によって特定されており、
前記装置は記憶部と処理部を備え、
前記記憶部には、計算された各対象の3Dポーズの時系列データが記憶されており、
前記処理部は、
フレームt、および/あるいは、フレームtよりも前の1つあるいは複数のフレームにおける1対象の1つあるいは複数の3Dポーズを用いて、フレームt+1における各カメラ画像において、前記1対象を囲むバウンディングボックスを決定し、
フレームt+1の各カメラ画像において、前記バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、フレームt+1における各特徴点の3D位置を取得する、ように構成されている。
3Dポーズ取得方法における上記の幾つかの態様は、3Dポーズ取得装置に適用される。
本発明は、また、コンピュータを、上記装置の記憶部、処理部として機能させるコンピュータプログラムまたは当該コンピュータプログラムを記憶したコンピュータ可読媒体、あるいは、コンピュータに上記方法を実行させるためのコンピュータプログラムまたは当該コンピュータプログラムを記憶したコンピュータ可読媒体として提供され得る。
本発明は、また、
1つあるいは複数の取得されている3Dポーズを用いて、次フレームの対象の3Dポーズを予測し、
予測した3Dポーズをカメラの画像平面へ投影して、次フレームのカメラの画像平面における対象の2Dポーズを予測し、
予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、次フレームのカメラの画像におけるバウンディングボックスの位置及び大きさを決定する、
トップダウン型ポーズ推定におけるバウンディングボックスの決定方法、を開示するものである。
本発明は、また、
複数のカメラと、
バウンディングボックス決定部と、
3Dポーズ取得部と、
を備えたモーションキャプチャシステムであって、
前記3Dポーズ取得部は、各カメラ画像において、バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、3Dポーズを取得し、
前記バウンディングボックス決定部は、
1つあるいは複数の取得されている3Dポーズを用いて、次フレームの対象の3Dポーズを予測し、
予測した3Dポーズをカメラの画像平面へ投影して、次フレームのカメラの画像平面における対象の2Dポーズを予測し、
予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、次フレームのカメラの画像におけるバウンディングボックスの位置及び大きさを決定する、
モーションキャプチャシステム、を開示するものである。
1つの態様では、前記モーションキャプチャシステムは、さらに、前記3Dポーズ取得部とは異なる3D位置取得部を備え、前記3D位置取得部は、バウンディングボックスを用いずに対象の3D位置を取得するものである。
1つの態様では、前記3D位置取得部は、3Dポーズ推定器である。
本発明では、次フレームにおける対象の3Dポーズを予測し、予測した3Dポーズに対応するカメラの画像平面上の予測2Dポーズを含むように次フレームにおけるバウンディングボックスを決定することで、適切にバウンディングボックスを決定することができる。
モーションキャプチャシステムの全体図である。 入力画像の処理工程を示すフローチャートである。 カメラキャリブレーション、骨格モデルの初期姿勢・関節間距離の取得の処理工程を示すフローチャートである。 左図は本実施形態に係る骨格モデルを示し、右図はOpenPoseの特徴点を示す。 関節位置候補取得部の処理工程を示すフローチャートである。 探索範囲である点群を例示する図である。 関節位置取得部(異なる格子間隔を用いる場合)の処理の工程を示すフローチャートである。 入力画像を回転させてPCMを取得する工程を示すフローチャートである。 本実施形態に係る複数人のビデオモーションキャプチャを示すフローチャートである。 本実施形態に係る入力画像の処理工程を示すフローチャートである。 本実施形態に係るバウンディングボックスの決定を示す図である。 本実施形態に係る関節位置候補取得部の処理工程を示すフローチャートである。 オクル―ジョンが発生した場合の特徴点の検出の態様を説明する図である。
本発明の実施形態の説明は、以下の2つのチャプタからなる。
[I]モーションキャプチャシステム
[II]複数対象のモーションキャプチャ
チャプタIでは、ビデオモーションキャプチャシステムについて詳述し、チャプタIIでは、チャプタIに係る手法を複数対象のモーションキャプチャに適用した実施形態について説明する。チャプタIとチャプタIIの開示事項は互いに密接に関連しており、いずれか一方のチャプタに記載された事項を、他方のチャプタに適宜援用し得ることが当業者に理解される。なお、数式の番号は、チャプタIとチャプタIIで独立して付されている。
[I]モーションキャプチャシステム
[A]モーションキャプチャシステムの全体構成
モーションキャプチャシステムは、いわゆるビデオモーションキャプチャシステム(非特許文献16参照)であり、対象の複数のカメラの映像から深層学習を用いて推定した関節位置から3次元再構成を行うものであり、対象は、いかなるマーカやセンサを装着する必要がなく、計測空間も限定されない。複数台のRGBカメラの映像から完全非拘束でモーションキャプチャを行うもので、屋内空間から、屋外でのスポーツフィールドの広い空間まで、原理的には映像が取得できれば、動作計測が可能となる技術である。
図1に示すように、本実施形態に係るモーションキャプチャシステムは、対象の動作を取得する動画取得部と、動画取得部で取得された画像に基づいて、関節位置を含む特徴点(Keypoints)の位置の確からしさの程度を色強度で表示するヒートマップ情報を取得するヒートマップ取得部と、ヒートマップ取得部で取得されたヒートマップ情報を用いて対象の関節位置を取得する関節位置取得部と、関節位置取得部で取得された関節位置を平滑化する平滑化処理部と、対象の身体の骨格構造、動画取得部で取得された画像の時系列データ、関節位置取得部で取得された関節位置の時系列データ等を記憶する記憶部と、動画取得部で取得された対象の画像や対象のポーズに対応する骨格構造等を表示するディスプレイと、を備えている。対象の身体上の特徴点は主として関節であるため、本明細書及び図面において、特徴点を代表して「関節」という文言を用いているが、「関節」と特徴点(Keypoints)は、後述するように、完全に対応しているわけではない点に留意されたい。
本実施形態に係るモーションキャプチャシステムのハードウェアは、前記動画取得部を構成する複数のカメラと、カメラ画像を取得する1つあるいは複数のローカルコンピュータと、それらとネットワークで繋がった1つあるいは複数のコンピュータと、1つあるいは複数のディスプレイとからなる。各コンピュータは、入力部、処理部、記憶部(RAM、ROM)、出力部を備えている。1つの実施形態では、1つのカメラに1つのローカルコンピュータを対応させてカメラ画像を取得し、同時にヒートマップ取得部を構成し、その後、前記関節位置取得部、前記平滑化処理部、前記記憶部をネットワークで繋がった1つあるいは複数のコンピュータで構成する。また、別の実施形態では、カメラと繋がったローカルコンピュータが画像を必要に応じて圧縮して、ネットワークで送信し、繋がったコンピュータで、ヒートマップ取得部、前記関節位置取得部、前記平滑化処理部、前記記憶部を構成する。
各カメラは同期しており、同時刻で取得された各カメラ画像は対応するヒートマップ取得部に送信され、ヒートマップ取得部によってヒートマップが生成される。
ヒートマップは、身体上の特徴点の位置の確からしさの尤度の空間分布を表す。生成されたヒートマップ情報は関節位置取得部に送信され、関節位置取得部によって関節位置が取得される。取得された関節位置データは、関節位置の時系列データとして記憶部に格納される。取得された関節位置データは、平滑化処理部に送信され、平滑化関節位置、関節角が取得される。平滑化された関節位置ないし関節角、及び、対象の身体の骨格構造によって対象のポーズが決定され、ポーズの時系列データからなる対象の動作をディスプレイに表示する。
動画取得部は、複数のカメラからなり、例えば、外部同期信号発生器を用いて同期されている。なお、複数のカメラ画像を同期させる手法は限定されない。複数のカメラは対象を囲むように配置され、全部あるいは一部のカメラによって同時に対象を撮影することで対象の複視点動画を取得する。各カメラからは、例えば、60fps、1024×768のRGB画像が取得され、RGB画像がヒートマップ取得部にリアルタイム、あるいは、非リアルタイムで送信される。
本実施形態では、動画取得部は複数のカメラから構成され、同時刻で取得された複数枚のカメラ画像がヒートマップ取得部に送信される。ヒートマップ取得部は、動画取得部から入力された画像に基づいてヒートマップを生成する。本モーションキャプチャシステムにおいて、1枚の画像に含まれる対象の数は限定されない。複数対象についてのモーションキャプチャについては、次チャプタで説明する。
モーションキャプチャシステムによる動作取得において、対象はリンク構造ないし多関節構造を備えている。典型的には対象は人間であり、前記多関節構造は身体の骨格構造である。なお、ヒートマップ取得部で用いる学習データを対象に合わせて用意できれば、人間以外の対象(例えば、人間以外の動物やロボット)にも適用し得る。
記憶部には、計測データや処理データが格納される。例えば、動画取得部によって取得された画像の時系列データ、関節位置取得部によって取得された関節位置データ、関節角度データが格納される。記憶部には、さらに、平滑化処理部によって取得された平滑化関節位置データ、平滑化関節角度データ、ヒートマップ取得部により生成されたヒートマップデータ、その他処理過程で生成されたデータを格納してもよい。
記憶部には、さらに、対象の身体の骨格構造を決定するデータが格納されている。このデータには、身体の骨格モデルを規定するファイル、対象の隣接する関節間距離データが含まれる。多関節体である骨格モデルの各関節の位置から、関節角度や対象のポーズが決定される。本実施形態で用いた骨格モデルを図4左図に示す。図4左図に示す骨格モデルは40自由度であるが、この骨格モデルは例示である。後述するように、対象の隣接する関節間の距離を表す定数は、モーションキャプチャの初期設定時に取得することができる。対象の各関節間距離は他の手法で予め取得してもよく、あるいは、既に取得されている関節間距離を用いてもよい。本実施形態では、対象の身体の骨格構造データを用いることで、関節位置の算出において、隣接する関節間距離が時間的に不変という骨格構造特有の拘束条件を与えることができる。
ディスプレイには、動画取得部によって取得された対象の動画、モーションキャプチャによって取得された対象のポーズを表す時系列骨格画像などが表示される。例えば、コンピュータの処理部において、対象固有の骨格構造、算出された関節角及び関節位置の時系列データを用いて、フレーム毎に骨格画像(対象のポーズ)データが生成され、骨格画像データを所定のフレームレートで出力して動画としてディスプレイに表示する。
[B]ヒートマップ取得部
ヒートマップ取得部は、入力画像に基づいて、各関節位置を含む身体上の特徴点(keypoints)の位置の確からしさの尤度の2次元あるいは3次元の空間分布を生成し、前記尤度の空間分布をヒートマップ形式で表示する。ヒートマップは、空間に広がって変化する値を温度分布のように色強度で空間上に表示すものであり、尤度の可視化を可能とする。尤度の値は例えば0〜1であるが、尤度の値のスケールは任意である。本実施形態において、ヒートマップ取得部は、各関節を含む身体上の特徴点の位置の確からしさの尤度の空間分布、すなわち、ヒートマップ情報(画像の各ピクセルが尤度を表す値を保持している)が取得されていればよく、必ずしも、ヒートマップを表示することを要しない。
ヒートマップ取得部は、典型的には、畳み込みニューラルネットワーク(CNN)を用いて、入力された単一の画像から対象の身体上の特徴点の位置(典型的には関節位置)を、ヒートマップとして推定する。畳み込みニューラルネットワーク(CNN)は入力層、中間層(隠れ層)、出力層を備え、中間層は、特徴点の画像上への2次元写像の存在位置の教師データを用いた深層学習によって構築されている。
本実施形態では、ヒートマップ取得部で取得された尤度は、2次元の画像上の各ピクセルに与えられており、複数視点からのヒートマップ情報を総合して特徴点の3次元的な存在位置の確からしさの情報を得ることができる。
ヒートマップ取得部として、オープンソフトウェアであるOpenPose(非特許文献12)を例示することができる。OpenPoseでは、身体上の18個の特徴点(keypoints)が設定されている(図3右図参照)。具体的には、18個の特徴点は、13個の関節と、鼻、左右の目、左右の耳からなる。OpenPoseは、訓練された畳み込みニューラルネットワーク(CNN)を用いることで、同期する複数のカメラで取得した各RGB画像から18個の身体上の各特徴点(keypoints)のPart Confidence Maps(PCM)をオフラインあるいはリアルタイムで生成し、ヒートマップ形式で表示する。本明細書において、身体上の特徴点の位置の確からしさの尤度の空間分布ないしヒートマップについて、PCMという文言を用いる場合があるが、各関節位置を含む身体上の特徴点の位置の確からしさの尤度の空間分布を表す指標をPCMに限定することを意図するものではない点に留意されたい。
ヒートマップ取得部には、OpenPose以外の他の手法を用いることができる。対象の身体上の特徴点の位置の確からしさを表すヒートマップを取得する手法としては様々な手法が提案されている。例えば、COCO Keypoints challenge(非特許文献15)で上位入賞した手法を採用することもできる。また、独自にヒートマップ取得部のための学習器を作成して、畳み込みニューラルネットワーク(CNN)を構築してもよい。
[C]本実施形態に係るモーションキャプチャシステムの初期設定
図3を参照しつつ、本実施形態に係るモーションキャプチャシステムにおける、カメラのキャリブレーション、骨格モデルの初期姿勢の取得、対象の関節間距離の取得について説明する。
[C−1]カメラキャリブレーション
複数のカメラを用いたモーションキャプチャにおいては、複数のカメラ画像を3次元再構成するためのカメラパラメータを取得する必要がある。3次元空間上の任意の点をカメラiの画像面に投影するための行列Miは、以下のように表される。
Figure 2021105887
ここで、Kiは焦点距離や光学的中心等の内部パラメータであり、Ri、tiは、それぞれ、カメラの姿勢・位置を表す外部パラメータである。カメラキャリブレーションは、既知の形状や寸法のキャリブレーション器具(チェッカーボードやキャリブレーションワンド等)を複数台のカメラで撮影することで行うことが可能である。歪みパラメータは、内部パラメータと同時に取得され得る。カメラの撮影空間が広域空間の場合には、上記キャリブレーション器具に代えて、例えば、計測領域全体に亘って球体を移動させながら複数台のカメラで撮影し、各カメラ画像中の球体の中心座標を検出するようにしてもよい。各カメラ画像中の球体の中心座標を用いて、バンドル調整によって、カメラの姿勢及び位置を最適化することで外部パラメータを取得する。なお、内部パラメータは、キャリブレーション器具等を用いることで事前に取得できるが、内部パラメータの一部あるいは全部を、最適化計算によって、外部パラメータと同時に取得してもよい。
各カメラについて投影行列Miが得られると、3次元空間の点Xが各カメラ画像面に投影された時のピクセル位置は、以下のように表される。
Figure 2021105887
3次元状の任意の点をカメラiの撮影面のピクセル位置に変換する関数(行列)μi は記憶部に格納される。
[C−2]骨格モデルとヒートマップが生成される身体上の特徴点との対応
骨格モデルの各関節(図4左図)と、ヒートマップ取得部における身体の特徴点(図4右図、a,o,p,q,rを除く)とを対応させる。対応関係を表1に示す。
Figure 2021105887
本実施形態に係る骨格モデルの関節と、OpenPoseにおける18個の特徴点は完全に一致してはいない。例えば、骨格モデルのpelvis(base body)、 waist、 chest、 right clavicle、left clavicle、Headに対応する特徴点は、OpenPoseには存在しない。なお、本実施形態に係る骨格モデルにおける関節、OpenPoseにおける18個の特徴点は、共に、身体上の特徴点の代表的な特徴点であって、可能性のある全ての特徴点を網羅しているものではない。例えば、さらに詳細な特徴点を設定してもよい。あるいは、全ての身体上の特徴点が関節であってもよい。OpenPoseの18個の特徴点だけでは決まらない関節角度については、可動範囲などの制約を考慮した最適化の結果として決定される。なお、骨格モデルの関節と、尤度の空間分布が取得される特徴点と、が初めから対応している場合には、この対応づけは不要である。
[C−3]骨格モデルの初期姿勢・関節間距離の取得
対象の動作計測の始点となる初期姿勢を取得する。本実施形態では、関節間距離・初期姿勢の推定を、歪曲収差補正後画像に対し、OpenPoseを適用することで算出された特徴点のピクセル位置から求める。先ず、各カメラで取得された初期画像に基づいて、初期ヒートマップが取得される。本実施形態では、カメラの光学中心と、OpenPoseから算出した各特徴点の初期ヒートマップの重心のピクセル位置とを結ぶ光線を各カメラから考え、2台のカメラの光線の共通垂線の長さが最小になる2台を決定し、その共通垂線の長さが所定の閾値(例えば20mm)以下のとき、その共通垂線の2つの足の中点を3次元上の特徴点の位置とするよう求め、これを用いて骨格モデルの関節間距離・初期姿勢の取得を行う。
特徴点の初期位置の推定手法については、当業者において様々な手法が採り得る。例えば、各カメラ画像上の対応する点の位置と、カメラパラメータを用いて、DLT(Direct Linear Transformation)法により、3次元空間上の特徴点の初期位置を推定することができる。DLT法を用いた三次元再構成は当業者に知られているので、詳細な説明は省略する。
逆運動学に基づく最適化計算には隣接する特徴点間の距離(関節間距離)の定数、すなわちリンク長が必要となるが、リンク長は対象毎に異なるため、対象毎に骨格モデルのリンク長を算出する。本実施形態に係るモーションキャプチャの精度を向上させるためには、対象毎にスケーリングを行うことが望ましい。骨格モデルは、人間の標準的な骨格構造のモデルであり、これを全身で、あるいは部位ごとにスケーリングして、対象の体型に適合した骨格モデルを生成する。
本実施形態では、得られた初期姿勢を基にして骨格モデルの各リンク長の更新を行う。骨格モデルの初期リンク長に対し、リンク長更新に用いるスケーリングパラメータを各特徴点の位置より、図4、表1の対応を基にして算出する。図4の左図におけるリンク長のうち、1−2、2−3、3−4、3−6、3−10、6−7、10−11、のそれぞれのリンク長については、対応する特徴点が存在しないためスケールパラメータが同様の方法では決まらない。このため、その他のリンク長のスケールパラメータを用いて長さを決定する。なお、本実施形態では、人体骨格は基本的に左右対称な長さとなるため、各スケーリングパラメータは左右均等になるよう左右の平均から求めており、また骨格モデルの初期リンク長は左右均等である。Neck-Head 間のスケーリングパラメータの算出については、両耳の特徴点位置の中点を頭関節の存在する場所としてスケーリングパラメータの算出を行う。取得したスケーリングパラメータを用いて、骨格モデルの各リンク長の更新を行う。鼻・目・耳の位置を算出については、表2に示すような対応関係をもとにして各仮想関節(鼻、目、耳)の位置を算出する。
Figure 2021105887
なお、リンク長は他の手法で取得してもよいし、予め取得したものを用いてもよい。あるいは、対象者に固有の骨格モデルが得られている場合には、それを用いてもよい。
[D]関節位置取得部
関節位置取得部は、ヒートマップ取得部から取得されたヒートマップ情報(各特徴点の位置の確からしさの尤度の空間分布)を用いて関節位置候補を推定し、当該関節位置候補を用いて逆運動学に基づく最適化計算を実行することで骨格モデルの関節角、関節位置を更新する点に特徴を備えている。関節位置取得部は、ヒートマップデータに基づいて関節位置候補を推定する関節位置候補取得部と、関節位置候補を用いて逆運動学に基づく最適化計算を実行して関節角を算出する逆運動学計算部と、算出された関節角を用いて順運動学計算を実行して関節位置を算出する順運動学計算部と、を備えている。
本実施形態に係る関節位置取得部は、1つあるいは複数のフレームで取得されている関節位置を用いて各関節位置候補の探索範囲を設定することで、フレームt+1で取得された尤度の空間分布を用いて、フレームt+1における関節位置候補を取得する。探索範囲としては、フレームtで取得されている関節位置の近傍空間、あるいは、フレームt+1で予測される関節位置の予測位置の近傍空間を例示することができる。対象の移動速度が速い場合には、後者が有利である。本チャプタでは前者の探索範囲について説明し、後者の探索範囲については、次チャプタで説明する。
本実施形態に係る関節位置候補取得部では、前フレーム(フレーム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 2021105887
と表す。例えば、t P nを中心とした図6のような間隔sの11×11×11(k=5)の格子状の点を考える。格子点の距離sは画像ピクセルの大きさとは無関係である。
フレームtにおける関節位置t P nに基づく探索範囲は、例えば、関節位置t P nの近傍空間内の点群であり、近傍空間内の総点数(2k+1)3及び点の間隔sによって決定される。探索範囲の決め方において、図6では立方体を示したが、探索範囲の形状は限定されず、例えば、球状の範囲で探索を行ってもよい。あるいは、過去フレームの関節位置変化に基づいて、探索範囲を狭めた直方体状や長球としたり、探索範囲の中心点をt P nから別の点としたりして探索を行ってもよい。
探索範囲(例えば、中心点、パラメータkや、探索幅s)は、当業者において適宜設定され得る。対象の運動の種類に応じて探索範囲を変化させてもよい。また、対象の運動の速度および加速度(例えば、対象のポーズの変化速度)に応じて、探索範囲を変化させてもよい。また、撮影するカメラのフレームレートに応じて探索範囲を変化させてもよい。また、関節の部位ごとに探索範囲を変化させてもよい。
格子空間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 2021105887
によって求められる。この計算をnj個(OpenPoseの場合は18個)の関節全てにおいて実行する。
そして、フレームt+1の各関節位置t+1 P nは、関節角t+1Qの関数であることに着目し、式(3)に示すように、逆運動学に基づく最適化計算により関節角t+1Qを算出し、順運動学計算により関節位置t+1 P nを算出する。
Figure 2021105887
なお、逆運動学に基づく最適化計算における各関節の重みt+1nには
Figure 2021105887
と規定されるように、各関節の予測位置におけるPCM値の和を用いる。
関節位置取得部でリアルタイムあるいは非リアルタイムで取得された各関節位置は、関節位置の時系列データとして記憶部に格納される。本実施形態では、関節位置取得部でリアルタイムあるいは非リアルタイムで取得された各関節位置は平滑化処理部によって平滑化処理されて、平滑化関節位置が生成される。
逆運動学に基づく最適化計算については、例えば、非特許文献17に記載されたアルゴリズムを用いることができる。逆運動学に基づく最適化計算の手法としては幾つかの方法が当業者に知られており、具体的な最適化計算手法は限定されない。1つの好ましい例として、勾配法による数値解法を挙げることができる。また、逆運動学に基づく最適化計算における各関節の重みを規定する式(4)は好ましい1つの態様であり、例示である。例えば、本実施形態では、平滑化処理部において、平滑化後関節位置の重みについては全関節の重みを均一とし、逆運動学に基づく最適化計算を解いている。また、逆運動学に基づく最適化計算を行うにあたり、当業者において適宜拘束条件を与えてもよいことが理解される。
上記探索手法では、探索範囲が格子間隔sに依存するため、各格子点と格子点の間に最も高いPCMスコアを持つ点が存在した場合、その点を発見することができない。本実施形態では、式(2)にて最大値となる格子点のみを求めるのではなく、全格子点の中の複数の点を関節位置点群としてPCMスコアが高くなる場所を探索することによって、逆運動学に基づく最適化計算を実行してもよい。前記関節位置点群は、例えば、7点である。7という数値は、式(2)で求める最大点の前後上下左右にも同様に尤度が高い点が存在するという予想から定めた値である。
異なる格子間隔sを用いて関節位置を取得してもよい。本実施形態の1つでは、関節位置候補の探索と逆運動学に基づく最適化計算をsの値をs1、s2(s1>s2)と変えることで2回実行し、フレームtの関節位置からフレームt+1の関節角・位置を取得するという処理をt=Tとなるまで繰り返すことで全Tフレームのビデオモーションキャプチャを行う。これにより、探索速度と探索精度を両立させることが可能となる。図7に、異なる格子間隔を用いた関節位置取得工程を示す。
先ず、フレームtにおける関節位置t P nに基づく第1探索範囲(関節位置t P nの近傍空間内の点の間隔s1)におけるフレームt+1における関節位置候補の探索を行う。この工程において、フレームt+1における関節位置第1候補を取得する。関節位置第1候補を用いて逆運動学に基づく最適化計算、順運動学計算を実行して、フレームt+1における関節位置第2候補を取得する。
次いで、フレームt+1における関節位置第2候補に基づく第2探索範囲(関節位置第2候補の近傍空間内の点の間隔s2、s2<s1)におけるフレームt+1における関節位置候補の探索を行う。この工程において、フレームt+1における関節位置第3候補を取得する。関節位置第3候補を用いて、逆運動学に基づく最適化計算、順運動学計算を実行して、フレームt+1における関節角、関節位置を取得する。
本実施形態では、直前フレームtで取得されている関節位置に基づいて探索範囲を決定しているが、直前フレームtで取得されている関節位置に加えて、あるいは、代えて、フレームtよりも前の1つあるいは複数のフレーム、あるいはフレームt+2以降の1つあるいは複数のフレームで取得されている関節位置を用いてもよい。例えば、関節位置をリアルタイムで取得する場合に、フレームt-1やフレームt-2などの2フレーム以上前のフレームにおける関節位置に基づいて探索範囲を設定してもよい。また、偶数フレームと奇数フレームにおいて並列計算で、別個に特徴点位置探索を行い、交互に出される特徴点位置候補に、平滑化処理を実行してもよい。
式(2)の計算において、評価する尤度についてはモーションキャプチャの精度の高さの指標となる。この尤度について閾値を設定し、尤度が閾値よりも低い場合には、対象のポーズのトラッキングに失敗したものとみなし、関節位置候補の探索範囲を広げて探索を行ってもよい。これは、全身のポーズのうちの一部の部位に対して行ってもよく、あるいは、全身に対して行ってもよい。また、オクル―ジョンなどによって特徴点を一時的に見失った場合には、オフラインの解析では時間を先に進めて同一対象のヒートマップを決定し、そこから動作の連続性を利用して時間を遡ることでオクルージョンによりトラッキングに失敗した部分の関節位置の軌道を回復するようにしてもよい。これによって、オクル―ジョンによる見失いを最小にすることができる。
このように、本実施形態では、PCMスコアが最大となる3次元空間上の点を探索する方法として、3次元空間上の点群を2次元平面に投影し、そのピクセル座標のPCM値を取得し、その和(PCMスコア)を求め、点群のうちPCMスコアが最も高かった点を、PCMスコアが最大となる3次元空間上の点として関節位置候補とする。3次元上の点を各カメラ平面に投影し、そのPCMのスコアを算出する計算は軽い。本実施形態に係る関節位置候補の探索は、前フレームの情報を用いた探索範囲の限定、及び、探索範囲内の格子点の3次元位置の2次元画像(PCM)への再投影によって計算量の低減、および外れ値の除外を実現している。
[E]平滑化関節位置取得部
関節位置取得部で用いたPCMの取得、逆運動学に基づく最適化計算は時系列的な関係を考慮していないため、出力される関節位置が時間的に滑らかである保証は無い。平滑化処理部の平滑化関節位置取得部では、関節の時系列情報を用いて、時間的な連続性を考慮した平滑化処理を行う。例えば、フレームt+1で取得された関節位置を平滑化する場合には、典型的には、フレームt+1で取得された関節位置、フレームtで取得された関節位置、フレームt-1で取得された関節位置が用いられる。フレームtで取得された関節位置、フレームt-1で取得された関節位置については、平滑化前の関節位置が用いられるが、平滑化後の関節位置を用いることもできる。非リアルタイムで平滑化処理を実行する場合には、後の時刻で取得された関節位置、例えば、フレームt+2以降のフレームの関節位置を用いてもよい。また、平滑化関節位置取得部では、必ずしも連続するフレームを用いなくてもよい。計算を単純にするために、先ず、身体構造情報を用いずに平滑化を行う。このため隣接する関節の距離であるリンク長は保存されない。次いで、平滑化後の関節位置を用いて、再度、対象の骨格構造を使った逆運動学に基づく最適化計算を行って、前記対象の各関節角を取得することで、リンク長を保存した平滑化を行う。
平滑化関節位置取得部は、ローパスフィルタによる関節位置の時間的平滑化を行う。関節位置取得部によって取得した関節位置にローパスフィルタによる平滑化処理を適用し、平滑化関節位置を各関節の目標位置とし、逆運動学に基づく最適化計算を行う。これにより、関節位置の時間変化の滑らかさを、各関節間距離が不変であるという骨格条件の下で生かすことが可能となる。
平滑化処理部について、より具体的に説明する。本実施形態では、表3に示すIIRローパスフィルタを設計し、関節位置にローパスフィルタによる平滑化処理を行う。なお、カットオフ周波数の値は、当業者において適宜設定できる値であり、例えば、経験的には表3の値を用いることができる。計測する運動の種類や撮影するカメラのフレームレートに応じて平滑化フィルタのパラメータの調整を行ってもよい。
Figure 2021105887
ローパスフィルタの特性上、ローパスフィルタに通した関節位置の取得はフィルタ次数の半分にあたる3フレームの遅延が生じ、かつ、関節角更新開始から3フレームはローパスフィルタを適応することができないという問題がある。本実施形態では、フィルタに適応前に、第1フレームの関節位置を第−2フレーム、第−1フレーム、第0フレームとおくことで、2フレーム分計算時間の遅れは生じるものの、空間的な誤差の少ない全フレームの関節位置の平滑処理を行う。
上記フィルタによって求めた各関節位置をビデオモーションキャプチャの出力とすると、各関節の時間的な滑らかさは得られるが、隣接する関節間距離が定数という条件が崩れることがある。本実施形態では、このローパスフィルタ適応後の関節位置をあらためて各関節の目標関節位置と置き、再度逆運動学に基づく最適化計算を行った。逆運動学に基づく最適化計算には式(3)を用いることができるが、全関節の重みを均一(これには限定されないが)として逆運動学に基づく最適化計算を実行する。これにより、ローパスフィルタに適応した関節位置の時間変化の滑らかさを、各関節間距離が不変であるという骨格条件の下で生かすことができる。なお、関節角の可動域を逆運動学計算の制約条件として加えてもよい。
平滑化処理部の出力には、例えば、関節角情報と骨格構造、およびその2つから一意に算出できる関節位置情報が含まれる。例えば、CG描画時に、関節角情報と、身体の骨格構造ファイルを用いて順運動学計算で身体の運動を描画する。平滑化処理部の出力に含まれる情報を記憶部に格納してもよい。
[F]前処理部
[F−1]入力画像の回転
ヒートマップの計算では、画像の中で人が正立する画像に対して、人が横臥の姿勢や倒立に近い姿勢でいる画像に対して精度が下がることがある。これは、ヒートマップ取得部で用いる学習データの中に正立に近い画像が多いというデータの偏りによって、対象の逆立ちや側転といった倒立運動では下半身の推定誤差が大きくなるためである。この場合、前フレームでの対象の体の傾きに応じて画像を回転させ、できるだけ対象が正立に近い姿勢で画像に現れるようにする。本実施形態では下半身のPCMを回転画像から取得した。
一般化すると、対象が所定の第1ポーズセット(例えば、横臥や倒立)の時にヒートマップ情報の精度が大きく劣化し、対象が所定のある第2ポーズセット(例えば、正立)の時にヒートマップ情報の精度が高いことが既知の場合に、入力画像における対象の身体の傾きから対象のポーズが第1ポーズセットに含まれるか否かを判定し、入力画像を対象のポーズが第2ポーズセットに含まれるポーズ(正立)となるように入力画像を回転させてヒートマップ情報を取得する。特にリアルタイムでヒートマップ情報を取得する場合には、対象の傾きの判定は、前のフレームにおける入力画像に基づいて実行される。入力画像を回転させてヒートマップ情報を取得するという考えは、本実施形態にかかるモーションキャプチャとは独立して、ヒートマップ取得部に一般に適用し得る技術である。なお、学習データの蓄積および畳み込みニューラルネットワーク(CNN)の改良によって、入力画像の回転を必要としない場合もあり得る。また、可動カメラを用いる場合において、対象の動きに合わせてカメラ自体を物理的に回転させて、フレーム毎に関数μiを取得することで、入力画像の回転を必要としない場合もあり得る。
図8を参照しつつ、入力画像を回転させてPCMを取得する工程について説明する。フレームtの入力画像において、対象の身体の傾き(1つの態様では、trunkの傾き)を検出する。例えば、対象の腰と首を結ぶベクトルを算出する。具体的には、図4左図の骨格モデルのPelvis関節とNeck関節の3次元座標位置を算出する。3次元上の点をカメラiの画像平面のピクセル位置に変換する関数μiを用いてフレームtにおけるカメラi での対象の身体の傾き(腰と首を結ぶベクトルを各カメラ方向に正射影した際の角度)を求める。
対象の身体の傾きに基づいて画像回転処理の要否を判定する。本実施形態では、得られた身体の傾き(正射影ベクトルの角度)に応じて、フレームt+1の画像を、正射影ベクトルが鉛直上向きに向くように回転させる。例えば、予め複数の回転角度のセット(例えば、30度刻みに、0度、30度、60度、90度、...330度)、及び、各回転角度に対応する角度範囲(例えば、15度〜45度を30度に対応させる)を設定しておき、入力画像の回転判定用のテーブルとして記憶部に格納しておく。このテーブルを参照して、前フレームにおける対象の身体の傾き(正射影ベクトルの角度)がどの角度範囲に該当するかを判定し、判定された角度範囲に対応する角度だけ入力画像を回転させてPCMを取得する。オフラインでヒートマップを取得する場合には、回転角度毎にPCMを取得して記憶部に格納しておき、正射影ベクトルの角度に応じてPCMを選択してもよい。回転画像において、OpenPoseのネットワークへの入力を容易にするため、背景(四隅)を黒で埋める処理を行う。回転画像にOpenPoseを適用し、対象の下半身のPCMの算出を行う。回転画像をPCMと共に元の画像の姿勢に戻す。そして、関節位置候補の探索を行う。入力画像の回転の判定に用いる前フレームは、フレームtのみならず、フレームt-1以前のフレームであってもよい。
[F−2]他の前処理
前処理は、対象の身体の傾きに応じて入力画像を回転させる処理に限定されない。前フレームにおける1人あるいは複数人の対象の3次元位置情報を用いて実行される前処理としては、トリミングあるいは/および縮小、マスク処理、カメラ選択、スティッチングを例示することができる。
トリミングは、前フレームにおける対象の画像上の位置を参考に、画像のトリミングを行い、トリミングした部分のみPCM計算を行うことである。トリミングによって、PCMの計算時間を短縮することは、対象の動作のリアルタイム取得において有利である。次チャプタで詳述するバウンディングボックスは、トリミングとして機能する。また、入力画像が十分大きい場合、画像の縮小を行ってもOpenPoseのPCM作成精度がほぼ変化しないことがあるので、画像の縮小によってPCMの計算時間を短縮できる場合がある。
前処理としてのマスク処理は、入力画像に対象以外の人物等が含まれている場合に、対象以外の人物等にマスク処理を適用して、対象のPCM計算を行う処理である。マスク処理を行うことで、複数の対象のPCMの混合を防止することができる。なお、マスク処理を、PCM計算後、関節位置取得部において実行してもよい。
カメラ選択は、動画取得部が複数のカメラを含む場合に、カメラを選択することで、対象の動作取得や動作解析に用いる入力画像を選択することである。例えば、広範囲のフィールドで多数のカメラを用いてモーションキャプチャを行う時に、使用する全てのカメラからの情報を用いて動作取得や動作解析を行うのではなく、前処理において対象が映っていると予想されるカメラを選択し、選択したカメラからの入力画像を用いてモーションキャプチャを行うことである。また、前処理として、入力画像のスティッチングを行ってもよい。スティッチングは、各カメラがそれぞれの画角においてオーバーラップする領域があった際に、取得済みのカメラパラメータを用いて各カメラ画像をつなぎ合わせ、シームレスな1つの画像に合成することを指す。これにより、入力画像の端部に対象が部分的に現れているような場合であっても、PCMの推定を良好に行うことができる。
[G]入力画像から対象の特徴点の位置を取得するまでの流れ
本実施形態に係る入力画像から関節角度、特徴点の位置を取得するまでの工程を、図2を参照しつつ説明する。複数の同期したカメラによって対象者の動作が撮影され、各カメラから所定のフレームレートでRGB画像が出力される。処理部は、入力画像を受信すると、前処理の要否を判定する。前処理は、例えば、画像の回転の要否である。所定の判定基準によって画像の回転が必要だと判定された場合には、入力画像を回転した状態でヒートマップが取得される。画像の回転が不要だと判定された場合には、入力画像に基づいてヒートマップが取得される。
身体上の全特徴点において、身体上の特徴点の位置の確からしさの尤度の空間分布(ヒートマップ)が生成され、処理部に送信される。処理部では、特徴点の位置候補の探索が行われる。1つの態様では、フレームt+1の入力画像から生成したヒートマップを受信すると、フレームtの特徴点の位置を基に探索範囲が設定され、特徴点の位置候補の探索が行われる。そして全関節において同じ処理を実行し、全関節の関節位置候補を取得する。
全特徴点の位置候補に対して逆運動学に基づく最適化計算を実行する。特徴点の位置候補と骨格モデルの関節(特徴点)が対応付けられており、骨格モデルは、対象者固有の骨格モデルに適合されている。特徴点の位置候補と重みを基に、逆運動学に基づく最適化計算、順運動学計算を実行して関節角、特徴点の位置を取得する。
取得された特徴点の位置に対して、過去のフレームにおける関節位置を用いて、平滑化処理を実行することで、関節位置の時間的な動きを滑らかにする。平滑化された特徴点の位置を用いて再度逆運動学に基づく最適化計算を実行して、対象の関節角を取得し、取得した関節角を用いて順運動学計算を実行して、対象の関節位置を取得する。
本実施形態では、PCMスコアが最大となる点を現在のフレームにおいて最も相応しいポーズであると考えて、関節位置候補の取得を実行する一方、PCMスコアが下がることを許容しつつ、その後の処理で、逆運動学に基づく最適化計算、ローパスフィルタによるスムージングを行う。対象の骨格構造、特徴点の位置の時間的な連続性を考慮して、逆運動学に基づく最適化計算を実行することで、特徴点の位置の推定誤差を小さくすることを可能とした。
本実施形態に係るモーションキャプチャは、複数のカメラの映像から深層学習を用いて推定した関節位置から、人間の骨格の構造と運動の連続性を考慮して3次元再構成を行うことで、従来の光学式モーションキャプチャに匹敵する滑らかな運動計測を取得する。本実施形態における関節位置候補取得部において、式(1)〜(4)で示すアルゴリズムを採用することには以下の利点がある。ヒートマップとして空間的な広がりをもった、あいまいな関節位置を、人間の骨格形状を参考にすること(逆運動学に基づく最適化計算)で最適化する。関節位置候補の探索においては、各カメラからの入力画像から取得した、空間的な広がりを持った複数のヒートマップ情報をそのまま用い、その後は、対象の骨格構造を考慮することで、関節位置候補を用いて逆運動学に基づく最適化計算により関節位置を求める。
骨格構造において、ヒートマップ情報を用いて取得した特徴点の位置だけでは決定できない骨格の自由度の変位の決定が必要な場合には、事前知識を条件に含めた最適化によって決定してもよい。例えば、手や足先については それぞれ手首、足首の先に存在するという事前知識を用いて初期角度を与える。手や足先の情報が取得される場合には、初期角度をフレーム毎に変化させ、手や足先の情報が取得されない場合には、手や足先の角度は前フレームの角度から変化せず固定される。また、肘や膝の可動域に応じて手首・足首の各自由度に重み・制限を持たせ、手首、足首の反転を防ぐ、身体は地面を貫通しないという制限を与える、といった事前知識を用いることで逆運動学に基づく最適化計算を行ってもよい。
[II]複数人のモーションキャプチャシステム
[A]モーションキャプチャシステムの概要
本実施形態に係る複数人ビデオモーションキャプチャは、トップダウン型のポーズ推定を用いるものである。図9に、本実施形態に係る複数人ビデオモーションキャプチャのフローチャートを示す。複数のカメラで撮影された複数視点画像が入力画像として用いられる。入力画像には、複数人が含まれているが、各人をバウンディングボックスで囲むことで、各人について独立してビデオモーションキャプチャが実行される。各視点において複数のカメラが配置されている場合には、各視点において1つのカメラが選択され、選択されたカメラ画像において、対象となる人物を囲むバウンディングボックスが決定される。バウンディングボックス内の画像情報に基づいて特徴点(keypoint)のヒットマップ情報が取得される。本実施形態では、各特徴点のヒートマップは、トップダウンポーズ推定器の1つであるHRNet(https://github.com/HRNet)を用いて推定される。初期設定において、各人に特有の骨格モデルが設定されており、各カメラ画像から得られた各特徴点のヒートマップ情報と骨格パラメータを用いて特徴点の3次元再構成が実行される。各人に特有の骨格パラメータについては、チャプタIの記載を参照することができる。各時刻において特徴点の3D位置及び関節角を取得することで、特徴点の3D位置及び関節角の時系列情報(3Dポーズの時系列情報)から、当該対象のモーションキャプチャが行われる。各時刻における特徴点の3D位置及び関節角の取得は、複数人について並列で実行され、複数人のモーションキャプチャが行われる。1つの態様では、各人の特徴点の3D位置及び関節角の時系列情報(3Dポーズの時系列情報)に対応する骨格構造を同時にディスプレイに表示される。
図10に、本実施形態に係る入力画像の処理工程を示すフローチャートを示す。前チャプタで開示したモーションキャプチャシステムと大きく異なる点は、各特徴点のヒートマップを取得する前に、バウンディングボックスを決定する工程を備えている点である。すなわち、入力画像(RGB画像)上で1対象を囲むバウンディングボックスを決定し、ヒートマップ取得部において、バウンディングボックス内の画像情報に基づいて1対象のヒートマップが取得される。ヒートマップ情報(特徴点の位置の確からしさの尤度の空間分布)と骨格モデルを用いてポーズ推定を行う。各特徴点の位置の取得については、基本的には、前チャプタで開示した手法を用いることができる。
本実施形態に係る3次元動作再構成は、np人の対象の周りに配置されたnc台のカメラを用いて実行される。各カメラは同期され、キャリブレーションされている。カメラによる撮影空間が広域空間の場合には、対象がカメラから見切れてしまうという問題を避けるため、1つの視点に視野の異なる複数のカメラを隣り合わせて配置してもよい。この場合、視点の数をnvとし、視点vに配置したカメラセットをCv、vにおけるカメラ数をnCvとすると、カメラ数は、
Figure 2021105887
となる。各視点vにおいて、nCv台のカメラから1つのカメラを選択して、選択したカメラの画像を用いて特徴点の2D位置の推定を行う。より具体的には、選択したカメラの画像上に所定のバウンディングボックスを設定し、バウンディングボックス内のピクセル情報を用いて特徴点のヒートマップを取得する。上記カメラシステムは例示であって、複数視点のそれぞれに1台のカメラを配置してカメラシステムを構成してもよい。
[B]初期設定
複数台のカメラで対象を撮影する。各画像内における対象人物の領域を探索し、バウンディングボックスを作成する。初期設定時の人物領域の探索には、Yolov3に代表される人検出器や、OpenPoseのような複数人対応の姿勢推定器、カメラパラメータを利用したエピポーラ拘束、顔認識や服装認識等を用いた個人特定器等を利用して求めることができる。あるいは、各人の領域を人手で与えてもよい。バウンディングボックス内には複数人数が含まれていてもよい。
トップダウン型の姿勢推定器(例えば、HRNet)を用いて、バウンディングボックス内の1対象の各特徴点のヒートマップを計算し、特徴点の位置を検出する。例えば、ヒートマップの中心座標を特徴点の2D位置と推定する。複数視点から特徴点の2D位置を検出することで、1つの特徴点の複数の2D位置を用いて、特徴点の3D位置の3次元再構成を行い、1対象の初期3Dポーズと骨格パラメータ(3次元空間における関節間距離)を求める。骨格パラメータは単一時刻の複数のカメラの画像から算出してもよいし、誤差の影響を低減するため複数時刻のカメラ画像から算出してもよい。また、骨格パラメータについては、事前に計測しておいてもよい。また、骨格パラメータには、各関節角の可動域を含めてもよい。
初期化(初期3D姿勢と骨格パラメータの推定)に失敗したと判断された場合には、異なる撮影時間で上記ステップを行う。判断の指標としては、3次元再構成された特徴点の位置を画像平面に投影した際のヒートマップの値や、特徴点の3D位置を画像平面に再投影した時の座標値と最初に特徴点の2D位置として推定された座標値との誤差、各骨格パラメータの係数などを用い得る。
初期設定時には、各特徴点のヒートマップ情報から直接取得される特徴点の2D位置を用いて特徴点の3次元再構成が行われるが、その後は、前チャプタの手法と同様に、ヒートマップ情報(特徴点の位置の確からしさの尤度の空間分布)を用いて3Dポーズ推定を行う。
[C]入力画像におけるバウンディングボックスの決定
本実施形態に係るモーションキャプチャシステムは、トップダウン型のポーズ推定を用いるものであり、各特徴点のヒートマップの計算に先立って、バウンディングボックスを決定する。本実施形態では、他フレームで取得されている特徴点の3D位置情報を用いて、適切なバウンディングボックスの寸法・位置を予測する。本実施形態に係るビデオモーションキャプチャは、光学式モーションキャプチャと同等の高精度のモーションキャプチャを実行することができる。フレームレートが十分に高ければ、対象の現在の3Dポーズは、計算された直前の3Dポーズ、あるいは、直前の複数の3Dポーズ(過去の3D動作)から予測することができる。適切なバウンディングボックスの寸法・位置は、対象の3Dポーズの予測位置に基づいて、透視投影変換(行列μiを用いる)を用いて計算可能である。
バウンディングボックスの決定について、図11を参照しつつ説明する。フレームt−2、フレームt−1、フレームtにおける対象の3Dポーズ(各特徴点の3D位置)が取得されており、フレームt+1の対象の3Dポーズを取得しようとしているとする。バウンディングボックス決定は、フレームt+1での各特徴点の3D位置を予測すること、予測した各特徴点の3D位置を用いて、フレームt+1での各カメラの画像平面上での各特徴点の2D位置を予測すること、予測した各特徴点の2D位置(座標)を用いて、フレームt+1での各カメラの画像平面上でのバウンディングボックスの寸法・位置を決定すること、を含む。すなわち、バウンディングボックス決定部は、次フレームでの各特徴点の3D位置予測部と、次フレームでの各特徴点の2D位置予測部と、次フレームでのバウンディングボックス寸法・位置決定部と、を備えている。
特徴点の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ポーズを用いて取得される。
特徴点の2D位置予測部は、フレームt+1での各特徴点の3D予測位置を透視投影変換を用いて各カメラ画像へ投影することで、フレームt+1の各カメラの画像平面上における各特徴点の2D予測位置(座標)を取得する。この透視投影変換は、3次元状の任意の点をカメラiの撮影面のピクセル位置に変換する関数(行列)μi を用いて実行される。関数(行列)μi は、各カメラのキャリブレーションにおいて取得されている。
バウンディングボックス寸法・位置決定部は、各カメラ画像において、全ての特徴点の2D予測位置を含むようにバウンディングボックスの寸法及び位置を決定する。バウンディングボックスの位置は、例えば、方形のボックスの中心座標によって決定される。バウンディングボックス決定部が実行する上記計算は軽い点に留意されたい。そして、フレームt+1の画像において、バウンディングボックスで囲まれた領域の画像情報に基づいて、フレームt+1での対象の3Dポーズ(各特徴点の3D位置)が得られる。フレームt+1での各特徴点の3D位置は記憶部に格納され、フレームt+2の画像におけるバウンディングボックスの決定に用いられる。
1つの態様では、バウンディングボックスは以下のような計算によって決定することができる。
Figure 2021105887
ここで、t+1 lBiは、時刻t+1における人lのカメラiの画像上で予測された中心位置及び寸法を表している。t lP、t-1 lP、t-2 lPは、時刻t、t-1、t-2における人lの全ての関節の3D位置である。mは、対象の全身がちょうど含まれると想定されるバウンディングボックスの寸法を決定するための正の定数値である。
式(3)は、フレームt+1における各関節の予測3D位置を計算するための式である。式(3)は例示であり、係数や用いられるフレームは式(3)に示すものに限定されない。対象の運動が等加速度運動であることを仮定して、位置予測のための式を設定してもよく、あるいは、等速運動を仮定して、式を設計してもよい。フレームt-3以前のフレームの3D位置を用いてもよく、あるいは、フレームt+2以降のフレームの3D位置を用いることも排除されない。複数のフレームにおける関節の3D位置を用いる際に、各フレームの値に適宜重みを設定してもよい。また、対象や運動の種類によって式を変えてもよい。
式(2)は、バウンディングボックスの寸法・位置を決定するための式であり、例示である。式(2)では、各カメラの画像平面において、全特徴点の座標から最大のx座標値、最小のx座標値、最大のy座標値、最小のy座標値を取得し、これらの座標値からバウンディングボックスの寸法と基準となる縦横寸法を決定し、これらの座標値の中心の座標をバウンディングボックスの位置とする。上記縦横寸法と定数mからバウンディングボックスの寸法を決定する。mの範囲は限定されないが、m>0でありその値は当業者によって適宜設定し得ることが理解される。mの値が小さいと、特に、特徴点の3D予測位置が誤推定されている場合に、身体の一部がバウンディングボックスに含まれないおそれがある。また、特徴点(keypoint)の箇所が目や手首までしかない場合には、mを小さい値とすると頭や指先がバウンディングボックスに含まれないおそれがある。一方、mの値が大きいと、バウンディングボックスを用いる利点が減殺されてしまうおそれがある。例えば、他の対象がバウンディングボックスに含まれる可能性が高くなる。
[D]3Dポーズ取得部
[D−1]特徴点のヒートマップの取得
本実施形態では、COCOデータセットで学習したHRNetのモデルを用いて、特徴点のヒートマップを取得する。本実施形態では、入力画像は、用いるトップダウン型のポーズ推定器に応じて、所定の寸法W´×H´×3(RGB)にリサイズされ得る。例えば、HRNetのポーズ推定器では、W´×H´=288×384である。特徴点の数は、nk=17であり、12個の関節(肩、肘、手首、腰、ひざ、足首)と5個の特徴点(目、耳、鼻)からなる。特徴点に対応するヒートマップを生成するトップダウン型のポーズ推定器自体は公知であり、本実施形態に用い得るポーズ推定器は、HRNetのモデルに限定されない。
[D−2]バウンディングボックスの回転ないし傾きの決定
本実施形態で用いたHRNetは、身体が過度に傾いていないことを前提として学習されている。したがって、垂直方向に対して身体が大きく傾いている場合(例えば、倒立や側転)には、ポーズ推定が失敗するおそれがある。本実施形態では、バウンディングボックスを回転させることで、特徴点のヒートマップをより正確に推定する。バウンディングボックスの回転角は、胴と首を結ぶ予測ベクトルの傾きから導出する。
Figure 2021105887
この式において、nは人体骨格モデルの関節位置を表している。数字は、図4左図で数字で示す位置に対応している。1つの態様では、11個の特徴点(肩、肘、手首、目、耳、鼻)のヒートマップが、回転されたバウンディングボックスに囲まれた領域の画像情報を用いて計算される。バウンディングボックスの回転は、画像に対する相対的な回転でもよく、回転させた入力画像上にバウンディングボックスを設定してもよい。入力画像の回転については、前チャプタの入力画像の回転を参照することができる。
[D−3]カメラの選択
本実施形態では、1つの視点において、視野の異なる複数のカメラを備えているので、対象となる人物が最も適切に撮影されているカメラを、特徴点の2D位置推定を用いて選択する。カメラの選択は、例えば、予測された各関節位置を用いて以下の式で実行される。
Figure 2021105887
Iは、カメラ画像の解像度を表している。
[D−4]関節位置の取得
3Dポーズ推定では、一般に、各カメラから検出された特徴点の2D位置を3次元再構成することで特徴点(keypoint)の3D位置を取得している。より具体的には、例えば、各カメラ画像において、特徴点のヒートマップの中心座標を当該特徴点の2D位置と推定して、これらの2D位置を用いて特徴点の3D位置を取得する。しかしながら、このようなシンプルな手法では、例えば、シビアなオクルージョン環境では、特徴点の誤検出によって、3Dポーズ推定に失敗するであろう(図13参照)。ここで着目すべき点は、ヒートマップから検出した特徴点の2D位置(ヒートマップの中心座標)が誤検出であった場合であっても、ヒートマップは、特徴点の位置の確からしさの尤度の空間分布であり、特徴点の正しい位置についての尤度を示しているであろうということである。
そこで、前チャプタにおける手法と同様に、特徴点の位置候補(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 2021105887
透視投影変換を用いることで、任意の3D座標の点のカメラiの画像上の座標に投影することができ、該座標に対応する尤度(PCMスコア)を取得することができる。t+1 lPn predが正確に予測されていると仮定すると、最も可能性の高い特徴点の3D位置は、尤度(PCMスコア)の合計が最大となる格子上の点となる。関節位置候補取得部の処理工程を図12に示す。
複数人のモーションキャプチャでは、オクル―ジョンが生じる可能性がある(図13参照)。本実施形態では、オクル―ジョン環境では、尤度(PCMスコア)の信頼性が低減すると仮定する。ヒートマップ情報から得られた尤度(PCMスコア)に対して定数からなる重みを割り当てる。最も可能性の高い特徴点の位置は以下のように獲得される。
Figure 2021105887
ここで、t+1 lSn i(X)は、時刻t+1でカメラiにおいて、人物lの関節nの尤度(PCMスコア)を取得するための関数である。gは、0〜1の間の定数であり、当業者により適宜設定される。なお、gの最適な値は、例えば、オクルージョンの状況や、関節の部位、視点の数等によって変わり得る。
計算された特徴点の位置を参照することで、骨格モデルの関節位置を計算する。本実施形態では、骨格モデルの関節角は、図4に示す対応を参照することで、特徴点の位置を目標位置とする逆運動学計算を用いることによって最適化できる。
Figure 2021105887
ここで、t+1 lQは、時刻t+1における人物lの関節角を表し、lJはヤコビアン行列を表す。
最適化計算によって関節位置が計算されるが、これらの位置は、動作の時間的連続性を考慮していない。滑らかな動作を取得するために、関節位置を、関節位置の時系列データからなるローバスフィルタFを用いて滑らかにする。
Figure 2021105887
しかしながら、平滑化処理が実行されると、骨格モデルが壊れて、空間連続性が失われる。さらに、上記逆運動学計算では、リング長のみが考慮されているので、各関節角は可動域を考慮していない。そこで、目標位置として滑らかにされた関節位置を用いて、再度、逆運動学計算によって骨格モデルを最適化する。
Figure 2021105887
ここで、Q、Qは、RoM(Range of Motion)の最小値及び最大値を表す。この計算により、より適切な関節位置及び角度(3Dポーズ)が取得される。
上記プロセス(各フレームにおける3Dポーズの取得)を繰り返すことで、単一の対象のモーションキャプチャが実行される。複数の対象について並行して同じ処理を実行することで、複数人のビデオモーションキャプチャが実現できる。複数人のモーションキャプチャは、例えば、チームスポーツ(サッカー、フットサル、ラグビー、野球、バレーボール、ハンドボール等)の試合の動画を取得し、試合中の各選手のモーションキャプチャを行うことに適用し得る。なお、本実施形態で説明したバウンディングボックスの決定は、複数人のモーションキャプチャのみならず、単一対象を含む画像を入力画像として用いるポーズ推定にも適用することができる。
[E]モーションキャプチャフローの補完
本実施形態に係る3Dポーズ推定器は、バウンディングボックスを用いた対象の判別に性能を依存している。したがって、例えば、
(i)対象の3Dポーズの過度の誤推定が生じた場合(典型的には、複数の対象が極度に密接した場合)、
(ii)対象がキャプチャボリューム外に移動した場合、
(iii)新たな対象がキャプチャボリューム内に登場した場合、
に如何に対処するかも重要である。本セクションでは、上述の事象の生起を検知することで、モーションキャプチャフローを補完する機構について説明する。
補完機構は、バウンディングボックスを用いずに対象の3Dポーズを推定する第2の3Dポーズ推定器ないし推定プログラムを備えている。1つの態様では、前記第2の3Dポーズ推定器はボトムアップタイプである。第2の3Dポーズ推定器は、本実施形態に係るバウンディングボックスを用いた3Dポーズ推定器(第1の3Dポーズ推定器)と並行して動作する。第2の3Dポーズ推定器は、各フレームにおいて、あるいは、周期的に、対象の3Dポーズ推定を行う。すなわち、モーションキャプチャシステムは、バウンディングボックスを用いる第1の3Dポーズ推定器に加えて、バウンディングボックスを用いない第2の3Dポーズ推定器を備えている。
第2の3Dポーズ推定器について説明する。各カメラごとに人物検出器(Yolo v3など)や、複数人対応のポーズ推定器(OpenPoseなど)を用いて、バウンディングボックス情報を用いずに、各画像上での人物位置を推定する。次いで、エピポーラ拘束や、顔認識・服装認識などを用いた個人特定器などを活用して、推定した人物を複数カメラ間でマッチングさせ、推定した人物の3次元位置を計算して3Dポーズを推定する。なお、対象の3Dポーズを取得することに代えて、3次元上で対象が占めるおおまかな空間(例えば、直方体形状や円柱形状)の位置を取得してもよい。その意味において、第2の3Dポーズ推定器は、3D位置推定器と一般化することができる。
補完機構は、例えば、上記(i)の事象が生起した場合に、第1の3Dポーズ推定器によるポーズ推定を補完する。(ii)の事象が生起したことは、例えば、第1の3Dポーズ推定器によって推定された第1の3DポーズのPCMスコア(画像平面に投影した2DポーズのPCMスコアであり、例えば、チャプタIの(4)式で求まるPCMスコアの和)を計算して、閾値と比較し、第1の3DポーズのPCMスコアが閾値に満たなければ、誤推定されていると判断する。この時、第2の3Dポーズ推定器によって推定された第2の3Dポーズを、例えば、第2の3DポーズのPCMスコアが閾値を超えていることを条件として、採用する。
バウンディングボックスを用いた第1の3Dポーズ推定器により推定された対象の第1の3Dポーズと、第2の3Dポーズ推定器により推定された対象の第2の3Dポーズとを比較して、第1の3Dポーズが誤推定であるか否かを判定する比較判定器を備えていてもよい。比較判定器による比較・判定は、各フレームにおいて実行しても、あるいは、周期的(例えば、1秒間に1回、1秒間に2回)に実行してもよい。
比較方法としては、第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ポーズ推定が誤推定であるか否かを判定する。
第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)に対処する。
補完機構は、(ii)の事象が生起したことを判定する。第2の3D位置推定器が対象を認識できない場合には、対象がキャプチャボリューム外に移動した(すなわち、事象(ii)が生起した)と判定し、第1の3Dポーズ推定器を用いた対象のモーションキャプチャ計算を停止する。なお、予めキャプチャボリュームの大きさを定めておき、そこから3Dポーズが逸脱した場合には事象(ii)が生起したと判定して、第1の3Dポーズ推定器を用いた対象のモーションキャプチャ計算を停止するようにしてもよい。
補完機構は、(iii)の事象が生起したことを判定する。第2の3D位置推定器が新たな対象を認識した場合には、新たな対象がキャプチャボリュームに入ってきている(すなわち、事象(iii)が生起した)と判定し、第1の3Dポーズ推定器において、新たな対象についてシステムの初期化を行い、モーションキャプチャの処理に加える。初期化については、既述の記載を参照することができる。
一旦キャプチャボリュームの外に出た対象が再度キャプチャボリューム内に入ってきた場合には、事象(iii)の生起として処理することができる。この場合、新たに認識された対象と、事象(ii)の生起に従って3Dポーズ推定を停止した対象が同一であることが認識できれば、第1の3Dポーズ推定器による新たに認識された対象のポーズ推定において、既に取得されている骨格情報を利用することができる。
本モーションキャプチャシステムは、スポーツ(運動解析、コーチング、戦術提案、競技の自動採点、トレーニングの詳細ログ)、スマートライフ(一般の健康生活、高齢者の見守り、不審行動の発見)、エンターテイメント(ライブパフォーマンス、CG作成、仮想現実ゲームや拡張現実ゲーム)、介護、医療等の多岐にわたる分野において利用可能である。

Claims (20)

  1. 複数カメラを用いたモーションキャプチャにおける対象の3Dポーズ取得方法であって、
    対象は、複数の関節を含む身体上の複数の特徴点を備え、対象の3Dポーズは、前記複数の特徴点の位置によって特定されており、
    フレームt、および/あるいは、フレームtよりも前の1つあるいは複数のフレームにおける対象の1つあるいは複数の3Dポーズを用いて、フレームt+1における各カメラ画像上で前記対象を囲むバウンディングボックスを決定し、
    フレームt+1の各カメラ画像において、前記バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、フレームt+1における各特徴点の3D位置を取得する、
    3Dポーズ取得方法。
  2. 前記画像には複数の対象が含まれており、
    選択された1対象についてバウンディングボックスを決定し、
    前記バウンディングボックス内の画像情報を用いて、フレームt+1における前記1対象の各特徴点の3D位置を取得する、
    請求項1に記載の3Dポーズ取得方法。
  3. 各フレームにおいて各対象の3Dポーズを並列で取得する、
    請求項2に記載の3Dポーズ取得方法。
  4. 前記バウンディングボックスの決定は、
    前記1つあるいは複数の3Dポーズを用いて、フレームt+1における3Dポーズを予測し、
    予測した3Dポーズを各カメラ画像へ投影して、フレームt+1の各カメラ画像における2Dポーズを予測し、
    予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、各カメラ画像におけるバウンディングボックスの位置及び大きさを決定する、
    請求項1〜3いずれか1項に記載の3Dポーズ取得方法。
  5. 前記バウンディングボックスの位置は、前記バウンディングボックスの中心によって決定される、
    請求項4に記載の3Dポーズ取得方法。
  6. 各カメラ画像に対する前記バウンディングボックスの傾きを決定することを含む、
    請求項4、5いずれか1項に記載の3Dポーズ取得方法。
  7. 前記対象において、隣接する関節間の距離が定数として得られており、
    前記尤度の空間分布を用いて、各特徴点に対応する1つあるいは複数の特徴点の位置候補を取得し、
    前記特徴点の位置候補と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得し、
    前記関節角を用いて順運動学計算を行うことで、前記対象の関節を含む特徴点の位置を取得する、
    請求項1〜4いずれか1項に記載の3Dポーズ取得方法。
  8. 前記特徴点の位置候補の取得は、1つあるいは複数のフレームで取得されている各特徴点の3D位置を用いて特徴点位置候補の探索範囲を設定し、
    前記探索範囲内の点の全部あるいは一部を各カメラ画像平面のピクセル位置へ変換し、
    フレームt+1で取得された尤度の空間分布を用いて、フレームt+1における各関節位置の1つあるいは複数の特徴点位置候補を取得するものである、請求項7に記載の3Dポーズ取得方法。
  9. 前記探索範囲は、フレームt+1での各特徴点の予測3D位置の近傍空間である、請求項8に記載の3Dポーズ取得方法。
  10. 前記探索範囲は、フレームtで取得されている各特徴点の3D位置の近傍空間である、請求項8に記載の3Dポーズ取得方法。
  11. 前記逆運動学に基づく最適化計算において、前記尤度の空間分布が用いられる、請求項7〜10いずれか1項に記載の3Dポーズ取得方法。
  12. 前記特徴点の位置を、他の複数のフレームで取得された複数の特徴点の位置を用いて時間方向に平滑化し、
    平滑化された特徴点の位置と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得する、
    請求項7〜11いずれか1項に記載の3Dポーズ取得方法。
  13. 複数カメラを用いたモーションキャプチャにおける対象の3Dポーズ取得装置であって、
    対象は、複数の関節を含む身体上の複数の特徴点を備え、各対象の3Dポーズは、前記複数の特徴点の位置によって特定されており、
    前記装置は記憶部と処理部を備え、
    前記記憶部には、計算された各対象の3Dポーズの時系列データが記憶されており、
    前記処理部は、
    フレームt、および/あるいは、フレームtよりも前の1つあるいは複数のフレームにおける1対象の1つあるいは複数の3Dポーズを用いて、フレームt+1における各カメラ画像において、前記1対象を囲むバウンディングボックスを決定し、
    フレームt+1の各カメラ画像において、前記バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、フレームt+1における各特徴点の3D位置を取得する、
    ように構成されている、3Dポーズ取得装置。
  14. 前記バウンディングボックスの決定は、
    前記1つあるいは複数の3Dポーズを用いて、フレームt+1における3Dポーズを予測し、
    予測した3Dポーズを各カメラ画像へ投影して、フレームt+1の各カメラ画像における2Dポーズを予測し、
    予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、各カメラ画像におけるバウンディングボックスの位置及び大きさを決定する、
    請求項13に記載の3Dポーズ取得装置。
  15. 前記記憶部には、前記1対象について、隣接する関節間の距離が定数として格納されており、
    前記処理部は、
    前記尤度の空間分布を用いて、各特徴点に対応する1つあるいは複数の特徴点の位置候補を取得し、
    前記特徴点の位置候補と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得し、
    前記関節角を用いて順運動学計算を行うことで、前記対象の関節を含む特徴点の位置を取得する、
    請求項13、14いずれか1項に記載の3Dポーズ取得装置。
  16. 前記処理部は、1つあるいは複数のフレームで取得されている各特徴点を用いて特徴点位置候補の探索範囲を設定し、フレームt+1で取得された尤度の空間分布を用いて、フレームt+1における各関節位置の1つあるいは複数の特徴点位置候補を取得する、請求項15に記載の3Dポーズ取得方法。
  17. 前記処理部は、
    前記特徴点の位置を、他の複数のフレームで取得された複数の特徴点の位置を用いて時間方向に平滑化し、
    平滑化された特徴点の位置と前記対象の多関節構造を用いた逆運動学に基づく最適化計算を行うことで、前記対象の各関節角を取得する、
    ように構成されている、
    請求項15、16いずれか1項に記載の3Dポーズ取得装置。
  18. 1つあるいは複数の取得されている3Dポーズを用いて、次フレームの対象の3Dポーズを予測し、
    予測した3Dポーズをカメラの画像平面へ投影して、次フレームのカメラの画像平面における対象の2Dポーズを予測し、
    予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、次フレームのカメラの画像におけるバウンディングボックスの位置及び大きさを決定する、
    トップダウン型ポーズ推定におけるバウンディングボックスの決定方法。
  19. 複数のカメラと、
    バウンディングボックス決定部と、
    3Dポーズ取得部と、
    を備えたモーションキャプチャシステムであって、
    前記3Dポーズ取得部は、各カメラ画像において、バウンディングボックス内の画像情報を用いて、各特徴点の位置の確からしさの尤度の空間分布を取得し、前記尤度の空間分布に基づいて、3Dポーズを取得し、
    前記バウンディングボックス決定部は、
    1つあるいは複数の取得されている3Dポーズを用いて、次フレームの対象の3Dポーズを予測し、
    予測した3Dポーズをカメラの画像平面へ投影して、次フレームのカメラの画像平面における対象の2Dポーズを予測し、
    予測した2Dポーズを特定する複数の特徴点の位置情報を用いて、次フレームのカメラの画像におけるバウンディングボックスの位置及び大きさを決定する、
    モーションキャプチャシステム。
  20. さらに、前記3Dポーズ取得部とは異なる3D位置取得部を備え、前記3D位置取得部は、バウンディングボックスを用いずに対象の3D位置を取得するものである、
    請求項19に記載のモーションキャプチャシステム。
JP2019237546A 2019-12-26 2019-12-26 3dポーズ取得方法及び装置 Active JP7427188B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019237546A JP7427188B2 (ja) 2019-12-26 2019-12-26 3dポーズ取得方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019237546A JP7427188B2 (ja) 2019-12-26 2019-12-26 3dポーズ取得方法及び装置

Publications (2)

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

Family

ID=76918857

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019237546A Active JP7427188B2 (ja) 2019-12-26 2019-12-26 3dポーズ取得方法及び装置

Country Status (1)

Country Link
JP (1) JP7427188B2 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113869217A (zh) * 2021-09-29 2021-12-31 北京复数健康科技有限公司 一种用于获取图像识别数据的方法和系统
CN114419842A (zh) * 2021-12-31 2022-04-29 浙江大学台州研究院 一种基于人工智能的辅助用户至智能马桶的跌倒报警方法及装置
CN115019338A (zh) * 2022-04-27 2022-09-06 淮阴工学院 一种基于GAMHR-Net的多人姿态估计方法及系统
CN115578513A (zh) * 2022-09-30 2023-01-06 中国科学院半导体研究所 三维人体重建方法、装置、电子设备及存储介质
WO2022265575A3 (en) * 2021-06-14 2023-03-02 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
WO2023188216A1 (ja) * 2022-03-30 2023-10-05 富士通株式会社 情報処理プログラム、情報処理方法、および情報処理装置
WO2023188217A1 (ja) * 2022-03-30 2023-10-05 富士通株式会社 情報処理プログラム、情報処理方法、および情報処理装置
JP7491878B2 (ja) 2021-08-12 2024-05-28 Kddi株式会社 骨格推定装置及びプログラム
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 (ja) * 2003-12-26 2005-08-04 Nippon Hoso Kyokai <Nhk> オフサイドライン検出装置及びそのプログラム、並びに、選手位置検出装置
JP2006285569A (ja) * 2005-03-31 2006-10-19 Victor Co Of Japan Ltd 人物検出装置
JP2014211404A (ja) * 2013-04-22 2014-11-13 株式会社ノビテック モーションキャプチャー方法
JP2017158169A (ja) * 2016-02-29 2017-09-07 株式会社リコー 画像表示システム、表示装置、プログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005209148A (ja) * 2003-12-26 2005-08-04 Nippon Hoso Kyokai <Nhk> オフサイドライン検出装置及びそのプログラム、並びに、選手位置検出装置
JP2006285569A (ja) * 2005-03-31 2006-10-19 Victor Co Of Japan Ltd 人物検出装置
JP2014211404A (ja) * 2013-04-22 2014-11-13 株式会社ノビテック モーションキャプチャー方法
JP2017158169A (ja) * 2016-02-29 2017-09-07 株式会社リコー 画像表示システム、表示装置、プログラム

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), JPN6023043378, 2019, US, pages 405 - 414, XP033653359, ISSN: 0005228629, DOI: 10.1109/3DV.2019.00052 *
TAKUYA OHASHI, ET AL: "Video Motion Capture from the Part Confidence Maps of Multi-Camera Images by Spatiotemporal Filterin", 2018 IEEE/RSJ INTERNATIONAL CONFERENCE ON INTELLIGENT ROBOTS AND SYSTEMS (IROS), JPN6023043377, 6 January 2019 (2019-01-06), US, pages 4226 - 4231, ISSN: 0005228628 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022265575A3 (en) * 2021-06-14 2023-03-02 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 (ja) 2021-08-12 2024-05-28 Kddi株式会社 骨格推定装置及びプログラム
CN113869217A (zh) * 2021-09-29 2021-12-31 北京复数健康科技有限公司 一种用于获取图像识别数据的方法和系统
CN114419842A (zh) * 2021-12-31 2022-04-29 浙江大学台州研究院 一种基于人工智能的辅助用户至智能马桶的跌倒报警方法及装置
CN114419842B (zh) * 2021-12-31 2024-05-10 浙江大学台州研究院 基于人工智能的辅助用户至马桶的跌倒报警方法及装置
WO2023188216A1 (ja) * 2022-03-30 2023-10-05 富士通株式会社 情報処理プログラム、情報処理方法、および情報処理装置
WO2023188217A1 (ja) * 2022-03-30 2023-10-05 富士通株式会社 情報処理プログラム、情報処理方法、および情報処理装置
CN115019338A (zh) * 2022-04-27 2022-09-06 淮阴工学院 一种基于GAMHR-Net的多人姿态估计方法及系统
CN115019338B (zh) * 2022-04-27 2023-09-22 淮阴工学院 一种基于GAMHR-Net的多人姿态估计方法及系统
CN115578513A (zh) * 2022-09-30 2023-01-06 中国科学院半导体研究所 三维人体重建方法、装置、电子设备及存储介质
CN115578513B (zh) * 2022-09-30 2023-06-23 中国科学院半导体研究所 三维人体重建方法、装置、电子设备及存储介质
WO2024118233A1 (en) * 2022-11-30 2024-06-06 Qualcomm Incorporated Dynamic camera selection and switching for multi-camera pose estimation

Also Published As

Publication number Publication date
JP7427188B2 (ja) 2024-02-05

Similar Documents

Publication Publication Date Title
JP7209333B2 (ja) 関節位置の取得方法及び装置、動作の取得方法及び装置
JP7427188B2 (ja) 3dポーズ取得方法及び装置
US8824781B2 (en) Learning-based pose estimation from depth maps
US9330307B2 (en) Learning based estimation of hand and finger pose
JP5111210B2 (ja) 画像処理装置、画像処理方法
JP6116784B1 (ja) 3次元モデル生成システム、3次元モデル生成方法、及びプログラム
US20230008567A1 (en) Real-time system for generating 4d spatio-temporal model of a real world environment
US7457439B1 (en) System and method for motion capture
US9317741B2 (en) Three-dimensional object modeling fitting and tracking
TW201234278A (en) Mobile camera localization using depth maps
WO2007102537A1 (ja) 姿勢推定装置および方法
CN110136202A (zh) 一种基于ssd与双摄像头的多目标识别与定位方法
WO2022191140A1 (ja) 3d位置取得方法及び装置
JP2019096113A (ja) キーポイントデータに関する加工装置、方法及びプログラム
Ohashi et al. Synergetic reconstruction from 2D pose and 3D motion for wide-space multi-person video motion capture in the wild
CN109613974A (zh) 一种大场景下的ar家居体验方法
Bachmann et al. Motion capture from pan-tilt cameras with unknown orientation
Phan et al. Towards 3D human posture estimation using multiple kinects despite self-contacts
Shere et al. Temporally consistent 3D human pose estimation using dual 360deg cameras
Chen et al. A real-time photogrammetric system for acquisition and monitoring of three-dimensional human body kinematics
JP2019197278A (ja) 画像処理装置、画像処理装置の制御方法およびプログラム
TWI775637B (zh) 高爾夫揮桿解析系統、高爾夫揮桿解析方法及資訊記憶媒體
Barrón et al. Monocular human motion tracking
ShangGuan et al. 3D video-based motion capture using Convolutional Neural Networks
Wang Hybrid panoramic visual SLAM and point cloud color mapping

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