JP2024073130A - 画像処理装置、画像処理方法及びプログラム - Google Patents
画像処理装置、画像処理方法及びプログラム Download PDFInfo
- Publication number
- JP2024073130A JP2024073130A JP2022184165A JP2022184165A JP2024073130A JP 2024073130 A JP2024073130 A JP 2024073130A JP 2022184165 A JP2022184165 A JP 2022184165A JP 2022184165 A JP2022184165 A JP 2022184165A JP 2024073130 A JP2024073130 A JP 2024073130A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- track
- image processing
- time
- shape data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 114
- 238000003672 processing method Methods 0.000 title claims description 4
- 238000000034 method Methods 0.000 claims abstract description 91
- 230000008569 process Effects 0.000 claims description 75
- 230000010354 integration Effects 0.000 claims description 7
- 238000000926 separation method Methods 0.000 claims description 5
- 238000012856 packing Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 30
- 238000004891 communication Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 238000009826 distribution Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000007423 decrease Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000013523 data management Methods 0.000 description 2
- 238000013144 data compression Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
【課題】多数のオブジェクトに対する高速なトラッキング処理を実現する。【解決手段】各フレームに複数のオブジェクトそれぞれの三次元形状を表す3Dモデルを含んだフレーム群から成る時系列形状データを取得する。そして、取得した時系列形状データに含まれる対応関係情報に基づいて、オブジェクト毎にトラッキング処理を行う。【選択図】図3
Description
本開示は、オブジェクトの三次元形状データのトラッキング技術に関する。
近年、映像作成の分野では、オブジェクト(被写体)の三次元形状を表すデータ(一般に「3Dモデル」と呼ばれる。)を三次元空間内に再構成し、CGによる演出を加えて自由な視点から映像化するボリュメトリックビデオ技術が一般的になりつつある。ここで、生成した3Dモデルのデータをボリュメトリックビデオの生成装置等に転送する際のデータ圧縮の前処理として、3Dモデルのトラッキング処理が行われている。このトラッキング処理は、動画を構成する一連のフレーム群において、3Dモデルが表す三次元形状の各構成要素をフレーム間で対応付ける技術である。
例えばメッシュ形式の3Dモデルに対するトラッキング処理の場合、トラッキング範囲で共通のトポロジを維持した状態になる。ここで、トラッキング処理の対象となるオブジェクトの数が増えるに連れてポリゴンの頂点数が増えて演算量が指数的に増大するところ、オブジェクトの数が多くなると望ましい時間内にトラッキング処理を完了することが困難であった。
本開示は上述した課題を解決するためになされたものであり、多数のオブジェクトに対する高速なトラッキング処理を実現することを目的とする。
本開示に係る画像処理装置は、各フレームに複数のオブジェクトそれぞれの三次元形状を表す3Dモデルを含んだフレーム群から成る時系列形状データを取得する取得手段と、前記時系列形状データに含まれる対応関係情報に基づいて、前記時系列形状データに対しオブジェクト毎にトラッキング処理を行うトラッキング手段と、前記トラッキング手段によって処理されたトラッキング済み時系列形状データにメタデータを付して出力する出力手段と、を有し、前記対応関係情報は、各フレームにおいて3Dモデルに紐づくオブジェクトを特定可能な識別情報であり、前記メタデータは、前記トラッキング済み時系列形状データにおいて前記3Dモデルの構成要素がフレーム間で追跡されているフレーム区間を示すトラックと前記オブジェクトの識別情報とを対応付けたデータである、ことを特徴とする。
本開示によれば、多数のオブジェクトに対してトラッキング処理を高速に行うことが可能となる。
以下、添付の図面を参照して、本開示の実施の形態について詳細に説明する。なお、以下の実施の形態に示す構成は一例に過ぎず、本開示の範囲をその構成のみに限定するものではない。
(課題の確認)
実施形態の説明に入る前に、本開示の課題について確認しておく。前述のとおり例えばメッシュ形式の3Dモデルに対するトラッキング処理の場合、トラッキング範囲(ポリゴンの頂点がフレーム間で追跡されているフレーム区間。一般に「トラック」と呼ばれる。)で共通のトポロジを維持した状態になる。例えば頂点数Nbのベースメッシュを頂点数Ntのターゲットメッシュに対してトラッキング処理を行う場合を考える。この場合、頂点間の非剛体位置合わせをICP法(Iterative Closest Point法)で行うと、最近傍点探索とコスト関数の最小化処理を繰り返す必要がある。最近傍探索は全探索の場合はO(NbNt)の演算が必要になり、コスト関数の最小化処理については3Nb×3Nbの行列の連立方一次程式を解く必要がありLU分解法を利用した場合はO(Nb 2)/2の演算が必要になる。このように頂点数が増えるほど多くの演算が必要になることから、トラッキング処理の対象オブジェクトの数が増えるほど演算量が指数的に増大して処理が追い付かなくなる、ということが本開示の課題である。
実施形態の説明に入る前に、本開示の課題について確認しておく。前述のとおり例えばメッシュ形式の3Dモデルに対するトラッキング処理の場合、トラッキング範囲(ポリゴンの頂点がフレーム間で追跡されているフレーム区間。一般に「トラック」と呼ばれる。)で共通のトポロジを維持した状態になる。例えば頂点数Nbのベースメッシュを頂点数Ntのターゲットメッシュに対してトラッキング処理を行う場合を考える。この場合、頂点間の非剛体位置合わせをICP法(Iterative Closest Point法)で行うと、最近傍点探索とコスト関数の最小化処理を繰り返す必要がある。最近傍探索は全探索の場合はO(NbNt)の演算が必要になり、コスト関数の最小化処理については3Nb×3Nbの行列の連立方一次程式を解く必要がありLU分解法を利用した場合はO(Nb 2)/2の演算が必要になる。このように頂点数が増えるほど多くの演算が必要になることから、トラッキング処理の対象オブジェクトの数が増えるほど演算量が指数的に増大して処理が追い付かなくなる、ということが本開示の課題である。
(用語の定義)
本明細書において「オブジェクト」とは、人物等の三次元物体を意味する。また、「点」とは、三次元空間において1個の座標により示される、オブジェクトの三次元形状を表す際の要素を意味し、「点群形式」はオブジェクトの表面位置を1個以上の点の集合で表現する3Dモデルのデータ形式を指す。また「ポリゴン」とは、3個以上の点を頂点とした多角形面を意味し、「メッシュ形式」はオブジェクトの表面形状をポリゴンの集合で表現する3Dモデルのデータ形式を指す。
本明細書において「オブジェクト」とは、人物等の三次元物体を意味する。また、「点」とは、三次元空間において1個の座標により示される、オブジェクトの三次元形状を表す際の要素を意味し、「点群形式」はオブジェクトの表面位置を1個以上の点の集合で表現する3Dモデルのデータ形式を指す。また「ポリゴン」とは、3個以上の点を頂点とした多角形面を意味し、「メッシュ形式」はオブジェクトの表面形状をポリゴンの集合で表現する3Dモデルのデータ形式を指す。
[実施形態1]
本実施形態では、時系列に並んだ各フレームに複数のオブジェクトそれぞれの三次元形状を示す複数の3Dモデルを含んだフレーム群のデータを取得し、当該データをオブジェクト毎に分割した上でトラッキング処理を行う態様を説明する。なお、各フレームが複数のオブジェクトそれぞれに対応する3Dモデルを含んだフレーム群から成るデータを、以下では「時系列形状データ」と呼び、その中でも3Dモデルがメッシュ形式で表現されているものを「時系列メッシュデータ」と呼ぶこととする。すなわち、時系列メッシュデータは、オブジェクトを経時的に計測して取得された、当該オブジェクトの三次元形状を表すメッシュ形式の3Dモデルが、フレーム単位で時系列に並んだ集合データである。
本実施形態では、時系列に並んだ各フレームに複数のオブジェクトそれぞれの三次元形状を示す複数の3Dモデルを含んだフレーム群のデータを取得し、当該データをオブジェクト毎に分割した上でトラッキング処理を行う態様を説明する。なお、各フレームが複数のオブジェクトそれぞれに対応する3Dモデルを含んだフレーム群から成るデータを、以下では「時系列形状データ」と呼び、その中でも3Dモデルがメッシュ形式で表現されているものを「時系列メッシュデータ」と呼ぶこととする。すなわち、時系列メッシュデータは、オブジェクトを経時的に計測して取得された、当該オブジェクトの三次元形状を表すメッシュ形式の3Dモデルが、フレーム単位で時系列に並んだ集合データである。
<画像処理装置の論理構成>
図1は、本実施形態に係る画像処理装置の論理構成(ソフトウェア構成)を示す機能ブロック図である。画像処理装置100は、データ取得部101、トラッキング部102、及びデータ出力部103を有する。以下、各機能部について説明する。
図1は、本実施形態に係る画像処理装置の論理構成(ソフトウェア構成)を示す機能ブロック図である。画像処理装置100は、データ取得部101、トラッキング部102、及びデータ出力部103を有する。以下、各機能部について説明する。
データ取得部101は、時系列メッシュデータ、及び当該時系列メッシュデータにおいてオブジェクトを識別可能な対応関係情報を取得する。ここで、対応関係情報は、各フレームに含まれるメッシュ形式の3Dモデル(以下、「メッシュモデル」と表記)に対応するオブジェクトを特定可能な、個々のメッシュモデルに付与される識別情報(オブジェクトID)である。この対応関係情報は、例えば特許文献1に示されている方法で取得できる。
トラッキング部102は、データ取得部101が取得した時系列メッシュデータに対して、オブジェクト毎にトラッキング処理を行う。メッシュモデルをフレーム間でトラッキングする場合、メッシュの構成要素であるポリゴンの頂点をフレーム間で追跡して、頂点のインデックス(頂点ID)をフレーム間で共通化するという方法(特許文献2を参照)が採られる。メッシュのインデックス情報をフレーム間で共通化することで、テクスチャ付きメッシュデータを「キーフレーム+差分」の形式で表現することができる
データ出力部103は、トラッキング部102によるトラッキング処理の結果である(オブジェクト毎のトラッキング済みの時系列メッシュデータとトラック情報を出力する。ここで、トラック情報は、トラッキング処理においてオブジェクト毎に形成されるトラックの詳細を示す情報であり、トラッキング済みの時系列メッシュデータのメタデータとしての役割を持つ。
データ出力部103は、トラッキング部102によるトラッキング処理の結果である(オブジェクト毎のトラッキング済みの時系列メッシュデータとトラック情報を出力する。ここで、トラック情報は、トラッキング処理においてオブジェクト毎に形成されるトラックの詳細を示す情報であり、トラッキング済みの時系列メッシュデータのメタデータとしての役割を持つ。
上述した各機能部は、画像処理装置100が備える後述のハードウェアによって実現される。
<画像処理装置のハードウェア構成>
図2は、本実施形態に係る画像処理装置のハードウェア構成を示すブロック図である。画像処理装置100は、一般的なコンピュータが備えるハードウェアとして、図2に一例として示すようにCPU201、ROM202、RAM203、補助記憶装置204、表示部205、操作部206、通信部207、及びバス208を有している。
図2は、本実施形態に係る画像処理装置のハードウェア構成を示すブロック図である。画像処理装置100は、一般的なコンピュータが備えるハードウェアとして、図2に一例として示すようにCPU201、ROM202、RAM203、補助記憶装置204、表示部205、操作部206、通信部207、及びバス208を有している。
CPU201は、ROM202又はRAM203に格納されているプログラム又はデータを用いて、図1に示す画像処理装置100が備える各機能部を実現する。なお、画像処理装置100は、CPU201とは異なる1つ又は複数の専用のハードウェアを有し、CPU201による処理の少なくとも一部を専用のハードウェアが実行してもよい。専用のハードウェアの例としては、ASIC、FPGA、及びDSP(デジタルシグナルプロセッサ)等がある。ROM202は、変更を必要としないプログラム等を格納する。RAM203は、補助記憶装置204から供給されるプログラム若しくはデータ、又は通信部207を介して外部から供給されるデータ等を一時記憶する。補助記憶装置204は、例えばハードディスクドライブ等で構成され、画像データ又は音声データ等の種々のデータを記憶する。
表示部205は、例えば液晶ディスプレイ又はLED等により構成され、ユーザが画像処理装置100を操作又は必要な情報を閲覧するためのGUI(Graphical User Interface)等を表示する。操作部206は、例えばキーボード、マウス、又はタッチパネル等により構成され、ユーザによる操作を受けて各種の指示をCPU201に入力する。CPU201は、表示部205を制御する表示制御部、及び操作部206を制御する操作制御部としても動作する。通信部207は、画像処理装置100の外部の装置との通信に用いられる。例えば、画像処理装置100が外部の装置と有線接続される場合には、通信用のケーブルが通信部207に接続される。画像処理装置100が外部の装置と無線通信する機能を有する場合には、通信部207はアンテナを備える。バス208は、画像処理装置100が備える各部を繋いで情報を伝達する。
本実施形態では、表示部205及び操作部206は、画像処理装置100の内部に存在するものとして説明するが、表示部205及び操作部206の少なくとも一方は、画像処理装置100の外部に別の装置として存在していてもよい。
<画像処理装置100の動作>
図3は、本実施形態に係るトラッキング処理の流れを示すフローチャートである。図4の(a)及び(b)は、本実施形態のトラッキング処理を説明する図である。以下、図面3及び図4を参照して、本実施形態に係る画像処理装置100の動作について説明する。なお、以下の説明において記号「S」はステップを意味する。
図3は、本実施形態に係るトラッキング処理の流れを示すフローチャートである。図4の(a)及び(b)は、本実施形態のトラッキング処理を説明する図である。以下、図面3及び図4を参照して、本実施形態に係る画像処理装置100の動作について説明する。なお、以下の説明において記号「S」はステップを意味する。
S301にて、データ取得部101は、まず、処理対象となる時系列メッシュデータ及びその対応関係情報を取得する。図4(a)は、入力された時系列メッシュデータの模式図である。図4(a)において、横長の矩形400、410、420はそれぞれ、“Obj.0”、“Obj.1”、“Obj.2”の3種類のオブジェクトに対応する、時系列に連続するメッシュモデルの集合(以下、「連続メッシュモデル」と呼ぶ。)を表している。
S302にて、トラッキング部102は、S301にて時系列メッシュデータとともに取得された対応関係情報に含まれるオブジェクトIDに基づいて、各オブジェクトに対応する連続メッシュモデルに対してトラッキング処理を行う。これにより、図4(b)に示すような、トラッキング済みの時系列メッシュデータとこれに対応するトラック情報が生成される。図4(b)の例ではトラッキング処理によって“Obj.0”に関しては、連続メッシュモデル400をフレーム位置bにてTrack0-1とTrack0-2の2つのトラックに分かれた、トラッキング済みの連続メッシュモデル401が得られている。同様に、“Obj.1”に関しては、連続メッシュモデル410をフレーム位置dにてTrack1-1とTrack1-2の2つのトラックに分かれた、トラッキング済みの連続メッシュモデル411が得られている。同様に、“Obj.2”に関しては、連続メッシュモデル420をフレーム位置aとcにてTrack2-1、Track2-2、Track2-3の3つのトラックに分かれた、トラッキング済みの連続メッシュモデル421が得られている。よって、“Obj.0”、“Obj.1”、“Obj.2”それぞれと各トラックとの関係を規定するトラック情報が生成されることになる。本ステップにおける、オブジェクト単位で実行されるトラッキング処理の詳細については後述する。
S303にて、データ出力部103は、S302にて生成されたトラッキング済みの時系列メッシュデータとトラック情報を出力する。すなわち、前述の図4(b)に示すような、オブジェクト毎のトラッキング済み連続メッシュモデルから成る時系列メッシュデータと、各トラッキング済み連続メッシュモデルにおけるトラックの構成を示すトラック情報が出力されることになる。
以上が、本実施形態に係るトラッキング処理の概要である。
<トラッキング処理の詳細>
図5は、トラッキング部102によるオブジェクト毎のトラッキング処理の詳細を示すフローチャートである。また、図6は、あるオブジェクトの連続メッシュモデルに対してトラッキング処理が適用される様子を表した模式図である。なお、図6においては便宜上、メッシュモデルを単に「メッシュ」と表記している。以下、図5のフローチャート及び図6の模式図を参照して説明する。
図5は、トラッキング部102によるオブジェクト毎のトラッキング処理の詳細を示すフローチャートである。また、図6は、あるオブジェクトの連続メッシュモデルに対してトラッキング処理が適用される様子を表した模式図である。なお、図6においては便宜上、メッシュモデルを単に「メッシュ」と表記している。以下、図5のフローチャート及び図6の模式図を参照して説明する。
S501では、S301で取得した時系列メッシュデータにおける各フレームのキーフレームスコアが算出される。ここで、キーフレームスコアとは、個々のフレームにおけるキーフレームとしての利用のしやすさを表す指標であり、例としてフレームに含まれるメッシュモデルのトポロジの種数やメッシュモデルの表面積を用いることができる。例えば、メッシュモデルのトポロジの種数Gは、以下の式(1)で求めることができる。
上記式(1)において、Eはメッシュモデルのエッジ数、Vはメッシュモデルの頂点数、Fはメッシュモデルのポリゴン数を表す。また、メッシュモデルの表面積Aは、以下の式(2)で求めることができる。
上記式(2)において、PSiはポリゴンiの面積、mはメッシュモデルのポリゴン数を表す。
S502では、S501で算出したキーフレームスコアが最大値のフレームが、キーフレームに設定される。いま、図6の例では、フレーム2がキーフレームに設定されたものとする。
S503では、S502にて設定されたキーフレームに含まれるメッシュモデルがトラッキングの基準となるベースメッシュモデルにまず設定される。さらに、キーフレームの前後のフレームに含まれるメッシュモデルがトラッキングのターゲットとなるターゲットメッシュモデルにそれぞれ設定される。いま、図6の例では、フレーム2がキーフレームなので、フレーム2に含まれるメッシュモデル602がベースメッシュモデルに、その両隣のフレーム1及びフレーム3に含まれるメッシュモデル601及び603がターゲットモデルに設定されることになる。
S504では、ベースメッシュモデルを、ターゲットメッシュモデルの表面構造と差が少なくなるように変形するフィッティング処理が行われる。これにより、フィッティングメッシュモデルが生成される。変形には、例えばICP(Iterative Closest Point)法を利用できる。このフィッティング処理により、図6の例では、フレーム2内のメッシュモデル602を、隣接するフレーム1とフレーム3のメッシュモデル601及び603それぞれに形状を近似させたフィッティングメッシュモデル601’及び603’が生成される。ここでは前後フレームの両方向にトラッキング処理を行っているが、前フレームまたは後フレームへの片方向のトラッキング処理でもよい。
S505では、ターゲットメッシュモデルとフィッティングメッシュモデルとの間の形状の誤差が算出される。ここでの誤差は、例えば、両モデル間の頂点のハウスドルフ距離を利用することができる。図6の例では、メッシュモデル601とフィッティングメッシュモデル601’との誤差及びメッシュモデル603とフィッティングメッシュモデル603’との誤差がそれぞれ算出されることになる。
S506では、S505にて算出された誤差が閾値以下であるか否かが判定され、判定結果に従って次に実行する処理が振り分けられる。誤差が閾値以下であった場合はS507の処理が実行され、誤差が閾値を越えていた場合はS508の処理が実行される。
S507では、ベースメッシュモデル及びターゲットメッシュモデルが更新される。具体的には、現ターゲットメッシュモデルを新たなベースメッシュモデルに設定し、現ターゲットメッシュモデルを包含するフレームに隣接するフレームに含まれるメッシュモデルを新たなターゲットメッシュモデルに設定する処理が行われる。更新後はS504に戻り、同様の処理が繰り返される。
S508では、ここまでの処理において誤差が閾値以下であったフレームの範囲が、1つのトラックとして決定される。図6の例では、まずフレーム1と3にて、ターゲットメッシュモデルとフィッティングメッシュモデルとの間の形状の誤差が算出される。この誤差は閾値以下であるため、さらに隣接するフレーム4と5のメッシュモデルに対してトラッキング処理が行われる。このときのフィッティング処理には以下の2つの手法が考えられ、いずれの手法を適用してもよい。
≪手法1≫
フレーム4については、フレーム4内のメッシュモデルと差がなくなるようにフレーム3について生成されたフィッティングメッシュモデルを変形する。フレーム5については、フレーム5内のメッシュモデルと差がなくなるようにフレーム4について生成されたフィッティングメッシュモデルを変形する。
フレーム4については、フレーム4内のメッシュモデルと差がなくなるようにフレーム3について生成されたフィッティングメッシュモデルを変形する。フレーム5については、フレーム5内のメッシュモデルと差がなくなるようにフレーム4について生成されたフィッティングメッシュモデルを変形する。
≪手法2≫
フレーム4については、フレーム4内のメッシュモデルと差がなくなるようにベースメッシュモデル(フレーム2内のメッシュモデル)を変形する。フレーム5については、フレーム5内のメッシュモデルと差がなくなるようにベースメッシュモデル(フレーム2内のメッシュモデル)を変形する。
フレーム4については、フレーム4内のメッシュモデルと差がなくなるようにベースメッシュモデル(フレーム2内のメッシュモデル)を変形する。フレーム5については、フレーム5内のメッシュモデルと差がなくなるようにベースメッシュモデル(フレーム2内のメッシュモデル)を変形する。
そして、図6の例では、フレーム5のときに誤差が閾値を上回るため、フレーム1から4までの範囲が1つのトラックとして決定されることになる。こうして、フレーム1~4をトラック幅(トラック1)とするトラッキング済みの時系列メッシュデータが得られることになる。
S509では、S301で取得した時系列メッシュデータの全てのフレームがいずれかのトラックに属しているか否かが判定される。全てのフレームがいずれかのトラックに属している場合は、S511が実行される。一方、まだどのトラックにも属していないフレームがある場合は続いてS510が実行される。
S510では、既に決定したトラックに属するフレームのキーフレームスコアが最小値に設定される。設定後は、S502に戻り、どのフレームにも属していない残りのフレームのうちキーフレームスコアが最大のフレームが新たなキーフレームに設定されて、同様の処理が繰り返される。これにより新しく設定されたキーフレームを基に、新しいトラックと、当該新しいトラックに対応するトラッキング済みのメッシュデータを取得する。図6の例では、既に「トラック1」に属しているフレーム1~4のキーフレームスコアを最小値“0”に設定することで、残りのフレーム5~7の中からフレーム6が新しいキーフレームに設定されている。そして、フレーム6内のメッシュモデルをベースメッシュモデルとし、その前後フレーム5と7のメッシュモデルをターゲットメッシュモデルとしてトラッキング処理が行われる。その結果、フレーム5~7をトラック幅(トラック2)とするトラッキング済みのメッシュデータが得られている。
S511では、ここまでの処理で得られたトラッキング済みの時系列メッシュデータとそのトラック情報が出力される。図7は、トラック情報としてのテーブルの一例である。図7に示すトラック情報は、各フレームに3つのオブジェクトのメッシュモデルが含まれる、全部で150個のフレームから成る時系列メッシュデータに対するトラッキング処理によって得られたトラックの詳細を示している。図7のテーブルは、トラックID“0~8”によって特定されるトラック毎の開始フレームと終了フレームを、オブジェクト毎に規定(オブジェクトID“0~2”)している。なお、開始フレームや終了フレームを自動でキーフレームとするように設定しておくことで、キーフレームの情報を管理する必要がなくなる。ただし、必要に応じて各トラックにキーフレームの情報を付与してもよい。
以上が本実施形態に係る、オブジェクト毎のトラッキング処理の詳細である。このようなオブジェクト毎のトラッキング処理を並列に行うことで、時系列形状データに対するより高速なトラッキング処理が可能となる。
[実施形態2]
実施形態1の方法で得られるトラッキング済みの時系列メッシュデータでは、オブジェクト毎にトラック長が異なり得る為、オブジェクト間でトラックの開始フレームの位置が揃わないということが生じる(前述の図4(b)を参照)。そのため、データを転送するためにある程度のトラック幅で該当フレームのデータをパッキングする、例えばMPEG-DASHのようなフォーマットに対応できないという課題が残る。そこで、オブジェクト間でトラックの開始フレームの位置が揃ったトラッキング済みの時系列メッシュデータを得る方法を実施形態2として説明する。なお、画像処理装置100の基本的な構成は実施形態1と共通であるため、以下では実施形態1との差異点であるトラッキング処理の内容を中心に説明することとする。
実施形態1の方法で得られるトラッキング済みの時系列メッシュデータでは、オブジェクト毎にトラック長が異なり得る為、オブジェクト間でトラックの開始フレームの位置が揃わないということが生じる(前述の図4(b)を参照)。そのため、データを転送するためにある程度のトラック幅で該当フレームのデータをパッキングする、例えばMPEG-DASHのようなフォーマットに対応できないという課題が残る。そこで、オブジェクト間でトラックの開始フレームの位置が揃ったトラッキング済みの時系列メッシュデータを得る方法を実施形態2として説明する。なお、画像処理装置100の基本的な構成は実施形態1と共通であるため、以下では実施形態1との差異点であるトラッキング処理の内容を中心に説明することとする。
<画像処理装置の論理構成>
図8は、本実施形態に係る画像処理装置の論理構成(ソフトウェア構成)を示す機能ブロック図である。実施形態1に係る画像処理装置100にはない、トラック分割部801が追加されている。
図8は、本実施形態に係る画像処理装置の論理構成(ソフトウェア構成)を示す機能ブロック図である。実施形態1に係る画像処理装置100にはない、トラック分割部801が追加されている。
<画像処理装置100の動作>
図9は、本実施形態に係るトラッキング処理の流れを示すフローチャートである。図10の(a)~(c)は、本実施形態のトラッキング処理を説明する図である。以下、図9及び図10(a)~(c)を参照して、本実施形態に係る画像処理装置100の動作について説明する。なお、以下の説明において記号「S」はステップを意味する。
図9は、本実施形態に係るトラッキング処理の流れを示すフローチャートである。図10の(a)~(c)は、本実施形態のトラッキング処理を説明する図である。以下、図9及び図10(a)~(c)を参照して、本実施形態に係る画像処理装置100の動作について説明する。なお、以下の説明において記号「S」はステップを意味する。
S901は実施形態1の図3のフローにおけるS301に相当する。すなわち、データ取得部101が、まず、処理対象となる時系列メッシュデータ及びその対応関係情報を取得する。図10(a)は、入力された時系列メッシュデータの模式図である。図10(a)において、横長の矩形1000、1010、1020はそれぞれ、“Obj.0”、“Obj.1”、“Obj.2”の3種類のオブジェクトに対応する連続メッシュモデルを表している。
S902は実施形態1の図3のフローにおけるS302に相当する。すなわち、トラッキング部102は、S901にて時系列メッシュデータとともに取得された対応関係情報に含まれるオブジェクトIDに基づいて、各オブジェクトに対応する連続メッシュモデルに対してトラッキング処理を行う。これにより、図10(b)に示すような、トラッキング済みの時系列メッシュデータが生成される。図10(b)の例ではトラッキング処理によって“Obj.0”に関しては、連続メッシュモデル1000をフレーム位置bにてTrack0-1とTrack0-2の2つのトラックに分かれた、トラッキング済みの連続メッシュモデル1001が得られている。同様に、“Obj.1”に関しては、連続メッシュモデル1010をフレーム位置dにてTrack1-1とTrack1-2の2つのトラックに分かれた、トラッキング済みの連続メッシュモデル1011が得られている。同様に、“Obj.2”に関しては、連続メッシュモデル1020をフレーム位置aとcにてTrack2-1、Track2-2、Track2-3の3つのトラックに分かれた、トラッキング済みの連続メッシュモデル1021が得られている。
S903では、トラック分割部801が、S902にて得られたトラッキング済みの時系列メッシュデータに対し、所定のフレーム間隔でトラックを分割する処理を行う。これにより、トラックの開始フレームがオブジェクト間で共通化された、新たなトラッキング済みの時系列メッシュデータが生成される。ここで、所定のフレーム間隔は任意に設定可能である。例えばトラッキング済みの時系列データをMPEG-DASH等のフォーマットで配信等する場合には当該所定フォーマットにおけるパッキング単位(MPEG-DASHの場合は2秒~10秒)に相当するフレーム間隔で分割すればよい。これにより、転送・配信時の所定フォーマットに整合的なトラッキング済みの時系列データとそのトラック情報を得ることができる。図10(c)は、図10(b)に示すオブジェクト毎の連続メッシュモデル1001、1011、1021におけるトラックを所定フレーム間隔1030で分割した場合の結果を示している。図10(c)の例ではトラック分割によって“Obj.0”のトラッキング後連続メッシュモデル1001におけるTrack0-2が、“Track0-2a”と“Track0-2b”とに分割されている。同様に、“Obj.1”のトラッキング後連続メッシュモデル1011におけるTrack1-1が、“Track1-1a”と“Track1-1b”とに分割されている。同様に、“Obj.2”のトラッキング後連続メッシュモデル1021におけるTrack2-2が、“Track2-2a”と“Track2-2b”とに分割されている。図11は、前述の図7に示すトラック情報の各トラックを30フレーム間隔で分割したときのトラック情報におけるGOF(Group of Frame)とトラックとの関係を示す図である。図11においてテーブル1100によって示すGOFは、所定のフレーム間隔毎にトラック情報を整理するためのグループである。ここでは「GOF0」~「GOF4」の5つのグループに分割されている。いま、“Obj.0”、“Obj.1”、“Obj.2”の各オブジェクトについて、分割後は図11におけるテーブル1101~1105に示すような5つのGOFから成る構成に変化している。すなわち、トラック分割によって、“Obj.0”は2トラック構成からGOFを介した6トラック構成に変化している。同様に“Obj.1”は9トラック構成からGOFを介した11トラック構成に変化している。同様に“Obj.2”は、6トラック構成からGOFを介した10トラック構成に変化している。図11に示すトラック情報の例から明らかなように、各GOFにおける先頭トラックの開始フレームがすべてのオブジェクト間で揃っているのが分かる。なお、分割されたトラックに対してはキーフレームが再設定される。分割されるトラックには既にトラッキング処理が適用されている。したがって、開始フレームや終了フレームをキーフレームに設定してもよいし、分割前に設定されていたキーフレームを含んでいるトラックはそのフレームをキーフレームとして再設定してもよい。
S904では、データ出力部103が、S903にて得られたトラック分割後のトラッキング済みの時系列メッシュデータとそのトラック情報を出力する。この場合のトラック情報は、図11に示すような、所定フレーム間隔で分割された各GOFの中で少なくとも1つ以上のトラックの開始フレームがオブジェクト間で一致したデータ構造となる。このように本実施形態で得られるトラッキング済みの時系列メッシュデータの場合、オブジェクト間でトラックの開始フレームが少なくとも一つ以上共通化されており、開始フレームが共通する部分ではトラックの遷移タイミングがオブジェクト間で一致する。そのため、例えば画像処理装置100のデータ出力部103が配信サーバとして機能する場合、MPEG-DASHなどの細かくデータをパッキングするフォーマットに従った配信用データを作りやすくなる。
以上が、本実施形態に係るトラッキング処理の内容である。
<変形例>
トラックの分割処理はトラッキング処理の前に行ってもよい。図12の(a)~(c)は、本変形例のトラッキング処理を説明する図である。図12(a)は、前述の図10(a)に対応する図であり、入力された時系列メッシュデータの模式図である。本変形例では、処理対象の時系列メッシュデータを構成するオブジェクト毎の連続メッシュモデルを、トラッキング処理に先立って所定のフレーム間隔で分割し、新たなオブジェクトIDを割り当てる。図12(b)は、図12(a)に示す時系列メッシュデータをフレーム間隔1230で分割し、オブジェクトIDが振り直されたオブジェクト毎の連続メッシュモデルを示している。こうして得られた新たなオブジェクト毎の連続メッシュモデルに対しトラッキング処理を行うことで、図12(c)に示すような、トラッキング後の時系列メッシュデータを得ることができる。このように、先にトラックを分割した上でトラッキング処理を行って、トラッキング済みの時系列メッシュデータとトラック情報とを生成しても構わない。
トラックの分割処理はトラッキング処理の前に行ってもよい。図12の(a)~(c)は、本変形例のトラッキング処理を説明する図である。図12(a)は、前述の図10(a)に対応する図であり、入力された時系列メッシュデータの模式図である。本変形例では、処理対象の時系列メッシュデータを構成するオブジェクト毎の連続メッシュモデルを、トラッキング処理に先立って所定のフレーム間隔で分割し、新たなオブジェクトIDを割り当てる。図12(b)は、図12(a)に示す時系列メッシュデータをフレーム間隔1230で分割し、オブジェクトIDが振り直されたオブジェクト毎の連続メッシュモデルを示している。こうして得られた新たなオブジェクト毎の連続メッシュモデルに対しトラッキング処理を行うことで、図12(c)に示すような、トラッキング後の時系列メッシュデータを得ることができる。このように、先にトラックを分割した上でトラッキング処理を行って、トラッキング済みの時系列メッシュデータとトラック情報とを生成しても構わない。
以上のとおり本実施形態によれば、オブジェクト間でトラックの開始フレームが揃ったトラッキング済みの時系列メッシュデータを得ることができる。これにより、ボリュメトリックビデオ用のトラッキング済みの時系列形状データを一般的な動画コンテンツのストリームに乗せて配信することも容易になる。
[実施形態3]
実施形態2によって得られるGOFを利用したトラック情報の場合、GOF内の先頭トラック以外のトラックの開始フレームがオブジェクト間で必ずしも揃わないことから、その分だけデータ管理を困難にする。そこで、例えば図13に示すように、すべてのトラックの開始フレームがオブジェクト間で揃ったデータ構造を持つトラック情報を得る態様を、実施形態3として説明する。なお、以下では実施形態1及び2と共通する内容については省略し、差異点を中心に説明することとする。
実施形態2によって得られるGOFを利用したトラック情報の場合、GOF内の先頭トラック以外のトラックの開始フレームがオブジェクト間で必ずしも揃わないことから、その分だけデータ管理を困難にする。そこで、例えば図13に示すように、すべてのトラックの開始フレームがオブジェクト間で揃ったデータ構造を持つトラック情報を得る態様を、実施形態3として説明する。なお、以下では実施形態1及び2と共通する内容については省略し、差異点を中心に説明することとする。
<画像処理装置の論理構成>
実施形態2と同様、本実施形態の画像処理装置100もトラック分割部801を有する。本実施形態のトラック分割部801は、トラッキング処理後の時系列メッシュデータにおける全オブジェクトの全トラックにおける開始フレームを分割候補フレームとする。そして、隣り合う2つの分割候補フレーム同士の間隔が所定のフレーム数以下の場合は当該隣り合う2つの分割候補フレームを1つに統合する。そうして残った分割候補クレームを分割クレームに決定して、トラックを分割する。このような処理によって分割後のトラック幅が狭くなりすぎることが抑制され圧縮効率を改善できる。
実施形態2と同様、本実施形態の画像処理装置100もトラック分割部801を有する。本実施形態のトラック分割部801は、トラッキング処理後の時系列メッシュデータにおける全オブジェクトの全トラックにおける開始フレームを分割候補フレームとする。そして、隣り合う2つの分割候補フレーム同士の間隔が所定のフレーム数以下の場合は当該隣り合う2つの分割候補フレームを1つに統合する。そうして残った分割候補クレームを分割クレームに決定して、トラックを分割する。このような処理によって分割後のトラック幅が狭くなりすぎることが抑制され圧縮効率を改善できる。
<画像処理装置100の動作>
図14は、本実施形態に係るトラッキング処理の流れを示すフローチャートである。図15の(a)~(e)は、本実施形態のトラッキング処理を説明する図である。以下、図14及び図15(a)~(e) を参照して、本実施形態に係る画像処理装置100の動作について説明する。なお、以下の説明において記号「S」はステップを意味する。
図14は、本実施形態に係るトラッキング処理の流れを示すフローチャートである。図15の(a)~(e)は、本実施形態のトラッキング処理を説明する図である。以下、図14及び図15(a)~(e) を参照して、本実施形態に係る画像処理装置100の動作について説明する。なお、以下の説明において記号「S」はステップを意味する。
S1401は実施形態1の図3のフローにおけるS301に相当する。すなわち、データ取得部101が、まず、処理対象となる時系列メッシュデータ及びその対応関係情報を取得する。図15(a)は、入力された時系列メッシュデータの模式図である。図15(a)において、横長の矩形1500、1510、1520はそれぞれ、“Obj.0”、“Obj.1”、“Obj.2”の3種類のオブジェクトに対応する連続メッシュモデルを表している。
S1402は実施形態1の図3のフローにおけるS302に相当する。すなわち、トラッキング部102は、S1401にて時系列メッシュデータとともに取得された対応関係情報に含まれるオブジェクトIDに基づいて、各オブジェクトに対応する連続メッシュモデルに対してトラッキング処理を行う。これにより、図15(b)に示すような、トラッキング済みの時系列メッシュデータが生成される。図15(b)の例ではトラッキング処理によって“Obj.0”に関しては、連続メッシュモデル1500をフレーム位置bにてTrack0-1とTrack0-2の2つのトラックに分かれた、トラッキング済みの連続メッシュモデル1501が得られている。同様に、“Obj.1”に関しては、連続メッシュモデル1510をフレーム位置dにてTrack1-1とTrack1-2の2つのトラックに分かれた、トラッキング済みの連続メッシュモデル1511が得られている。同様に、“Obj.2”に関しては、連続メッシュモデル1520をフレーム位置aとcにてTrack2-1、Track2-2、Track2-3の3つのトラックに分かれた、トラッキング済みの連続メッシュモデル1521が得られている。
次に、S1403にて、トラック分割部801が、S1402にて得られたトラッキング処理の結果に基づいて、各オブジェクトのトラックを分割する処理を行う。トラック分割処理の詳細については後述する。
S1404では、データ出力部103が、S1403にて得られたオブジェクト間で全てのトラックが共通化されたトラッキング済みの時系列メッシュデータとそのトラック情報を出力する。
以上が、本実施形態に係るトラッキング処理の概要である。
<トラック分割処理の詳細>
図16は、本実施形態に係る、トラック分割部801によるトラック分割処理の詳細を示すフローチャートである。以下、図16のフローチャート及び前述の図15(a)~(e)の説明図を適宜参照して説明する。
図16は、本実施形態に係る、トラック分割部801によるトラック分割処理の詳細を示すフローチャートである。以下、図16のフローチャート及び前述の図15(a)~(e)の説明図を適宜参照して説明する。
S1601では、全オブジェクトの各トラックにおける開始フレームが、分割候補フレームとして取得される。図15(c)の例では6つの分割候補フレームa~fが取得されることになる。
S1602では、S1601にて取得された複数の分割候補フレームに基づいて、隣り合う2つの分割候補フレーム(分割候補ペア)の間のフレーム数が算出される。ここで算出されるフレーム数は、算出対象の分割候補ペアに対応する仮トラックにおける想定トラック幅と同義である。
S1603では、S1602にて算出された分割候補ペア毎のフレーム数(想定トラック幅)の中に、閾値未満のものがあるか否かが判定される。ここでの閾値は、最小トラック幅を規定する所定のフレーム数としてROM202又はRAM203に格納されている値である。フレーム数が閾値未満の分割候補位置ペアが検出された場合は、続いてS1604の処理が実行される。一方、フレーム数が閾値未満の分割候補ペアが検出されなかった場合は、続いてS1605の処理が実行される。
S1604では、S1603にて検出された分割候補ペアに係る2つの分割候補フレームを1つに統合し、新たな分割候補フレームが決定される。分割候補フレームの統合は、フレーム数が閾値未満であった2つの分割候補フレームの間にあるフレームの中から特定フレームを選択し、当該2つの分割候補フレームと置き換える処理と言い換えることができる。図15(d)は、特定フレームの選択を説明する図である。ここでは、“Obj.0”と“Obj.2”の2つのオブジェクトに関わる統合処理における特定フレームを、“Obj.0”のTrack0-2と“Obj.2”のTrack2-1のメッシュモデルに基づいて選択している。具体的には、Track0-2とTrack2-1それぞれのメッシュモデルに対して再度トラッキングを行い、トラッキング時の変形誤差を算出し、両トラックの変形誤差の合計値が最小となるフレーム位置を選択している(図17(a)を参照)。同様に、“Obj.1”のTrack1-2と“Obj.2”のTrack2-3それぞれのメッシュモデルに対しても再度トラッキングを行う。そして、トラッキング時の変形誤差を算出し、両トラックの変形誤差の合計値が最小となるフレーム位置を選択している(図17(b)を参照)。この際の変形誤差には、例えばハウスドルフ距離などを利用することができる。こうして、フレーム数が閾値未満であった2つの分割候補フレームを統合して新たな分割候補フレームを決定することで、トラック分割後において、トラック幅が最小トラック幅に満たないトラックが生じるのを防ぐことができる。そして、分割候補フレームの統合により分割候補フレームの数が減ることで、分割後のトラック総数が減るので、データ圧縮時の圧縮効率を向上させることができる。なお、先頭フレームと終了フレームの位置にそれぞれ対応する分割候補フレーム(図15(c)の例では分割候補フレームaとf)は、特殊な分割候補フレームであり、隣接する分割候補フレームとの間のフレーム数が閾値未満であっても統合対象外となる。
S1605では、ここまでの処理で残った分割候補フレームを分割フレームとして、全てのオブジェクトの全てのトラックが分割される。図15(e)は、図15(d)に示す統合後に残った分割候補フレームに従ってトラックが分割された後のトラッキング済み時系列メッシュデータを示している。こうして得られたトラッキング済み時系列メッシュデータにおいては、全オブジェクト共通のトラックを持つことになる(図15(e)におけるTrack0~Track3を参照)。この時、分割候補フレームの統合によって生まれたトラックについては、矢印1530で示した範囲のメッシュモデルをS1604における再トラッキングで取得したフィッティングメッシュモデルに置き換える。これにより、当該トラックのフレーム内のメッシュモデルのトポロジが共通化される。なお、図15(e)の例では、“Obj.1”の連続メッシュモデルについてはトラック分割が行われず、元のトラックであるTrack1-1とTrack1-2のまま変化しない(トラック間の区切り位置が変わらない)ことになる。
以上が、本実施形態に係るトラック分割処理の詳細である。
<変形例>
トラック幅があるフレーム数以上になるとデータ転送・配信のフォーマットに適さない場合がある。そこで、トラック幅の上限を事前設定した上でトラック分割を行うようにしてもよい。すなわち、統合後に残った分割候補フレームのうち隣り合う2つの分割候補フレーム同士の間隔がトラック幅の上限を超える場合には当該分割候補フレームでは分割を行わないようにする。これにより、データ転送・配信のフォーマットに適したトラッキング済みの時系列形状データとそのトラック情報を得ることができる。
トラック幅があるフレーム数以上になるとデータ転送・配信のフォーマットに適さない場合がある。そこで、トラック幅の上限を事前設定した上でトラック分割を行うようにしてもよい。すなわち、統合後に残った分割候補フレームのうち隣り合う2つの分割候補フレーム同士の間隔がトラック幅の上限を超える場合には当該分割候補フレームでは分割を行わないようにする。これにより、データ転送・配信のフォーマットに適したトラッキング済みの時系列形状データとそのトラック情報を得ることができる。
以上のように、本実施形態によれば、トラッキング済みの時系列メッシュデータについて、GOFを持たないトラックのみで構成されたトラック情報を取得でき、データ管理がより容易となる。また、本実施形態では、トラック分割時にトラック幅が狭いトラックが生成されないように制御するので、最終的な成果物であるトラッキング済み時系列メッシュデータに対する圧縮効率を向上させることができる。
[実施形態4]
実施形態2及び3では、トラッキング処理とトラック分割処理とを分けて行っていた。次に、トラッキング処理の中で全てのオブジェクト共通のトラックを生成する態様を、実施形態4として説明する。なお、以下では先に述べた各実施形態と共通する内容については省略し、差異点を中心に説明することとする。
実施形態2及び3では、トラッキング処理とトラック分割処理とを分けて行っていた。次に、トラッキング処理の中で全てのオブジェクト共通のトラックを生成する態様を、実施形態4として説明する。なお、以下では先に述べた各実施形態と共通する内容については省略し、差異点を中心に説明することとする。
<画像処理装置の論理構成>
本実施形態に係る画像処理装置の論理構成(ソフトウェア構成)は、実施形態1に係る画像処理装置100と同じであり、データ取得部101、トラッキング部102、及びデータ出力部103から成る。すなわち、本実施形態の場合、トラッキング部102がトラック分割部801の役割も兼ねることになる。
本実施形態に係る画像処理装置の論理構成(ソフトウェア構成)は、実施形態1に係る画像処理装置100と同じであり、データ取得部101、トラッキング部102、及びデータ出力部103から成る。すなわち、本実施形態の場合、トラッキング部102がトラック分割部801の役割も兼ねることになる。
<画像処理装置100の動作>
図18は、本実施形態に係るトラッキング処理の流れを示すフローチャートである。図19の(a)及び(b)は、本実施形態のトラッキング処理を説明する図である。以下、図18及び図19の(a)及び(b)を参照して、本実施形態に係る画像処理装置100の動作について説明する。なお、以下の説明において記号「S」はステップを意味する。
図18は、本実施形態に係るトラッキング処理の流れを示すフローチャートである。図19の(a)及び(b)は、本実施形態のトラッキング処理を説明する図である。以下、図18及び図19の(a)及び(b)を参照して、本実施形態に係る画像処理装置100の動作について説明する。なお、以下の説明において記号「S」はステップを意味する。
S1801は実施形態1の図3のフローにおけるS301に相当する。すなわち、データ取得部101が、まず、処理対象となる時系列メッシュデータ及びその対応関係情報を取得する。
S1802では、トラッキング部102が、全てのオブジェクトで共通のキーフレームを設定した上で、当該キーフレームの周辺フレームに対するトラッキング処理を行う。図19(a)は、全オブジェクト共通のキーフレームとして、各オブジェクトのキーフレームスコアの合計値が最大となるフレームを選択する様子を示している。このようにして選択したフレームを共通キーフレームに設定して、入力された時系列メッシュデータに対するトラッキング処理が行われる。全オブジェクト共通のキーフレームからトラッキングを始めるため、オブジェクト毎に異なるキーフレームからトラッキングする場合に比べて広いトラック幅を持つことが期待できる。
S1803では、トラッキング部102が、S1802にて行ったトラッキング処理の結果に基づき、全オブジェクトでの変形誤差が閾値以下となるフレーム区間をトラックに決定する。図19(b)は、トラックを決定する様子を説明する図である。図19(b)に示すように、各オブジェクトでトラックできたフレーム区間のうち重複する範囲が、トラックとして決定されることになる。
S1804では、いずれのトラックにも属していないフレームが存在するか否かが判定される。いずれのトラックにも属していないフレームが残っている場合は続いてS1805が実行され、残っていない場合はS1806が実行される。
S1805では、トラッキング部102が、共通キーフレームを更新する。具体的には、どのトラックにもまだ属していないフレーム群の中から、各オブジェクトのキーフレームスコアの合計値が最大となるフレームを検索して新しい共通キーフレームとして設定する。共通キーフレームの更新が完了すると、S1802に戻って同様の処理が繰り返される。
S1806では、データ出力部103が、ここまでの処理で得られたオブジェクト間で全てのトラックが共通化されたトラッキング済みの時系列メッシュデータとそのトラック情報を出力する。
以上が、本実施形態に係るトラッキング処理の内容である。これにより、実施形態3と同様のトラッキング結果を得ることができる。
[その他の実施形態]
実施形態1~4では、入出力の対象をメッシュ形式の時系列形状データとしたが、点群形式など他の表現形式でも同様に適用可能である。例えば時系列点群データを入出力の対象とする場合には、キーフレームスコアの算出において、各表面点群の総頂点数などを利用すればよい。なお、時系列点群データを構成するオブジェクト毎の点群モデルの各頂点は、法線情報、色情報、透明度情報、またはそれらを2つ以上組み合わせた情報を持つ場合がある。
実施形態1~4では、入出力の対象をメッシュ形式の時系列形状データとしたが、点群形式など他の表現形式でも同様に適用可能である。例えば時系列点群データを入出力の対象とする場合には、キーフレームスコアの算出において、各表面点群の総頂点数などを利用すればよい。なお、時系列点群データを構成するオブジェクト毎の点群モデルの各頂点は、法線情報、色情報、透明度情報、またはそれらを2つ以上組み合わせた情報を持つ場合がある。
また、入力される時系列形状データに含まれるオブジェクト毎の連続メッシュモデルにおいてメッシュ数が増減する場合であっても、実施形態1~4の手法は適用可能である。メッシュ数の増減は、オブジェクト同士の接触・分離によって生じる。以下、図20(a)~(c)を参照して、メッシュ数の増減がある場合の処理について説明する。いま、図20(a)に示すように3つのオブジェクト(Obj.0、Obj.1、Obj.2)が存在し、Obj.0とObj.1とがフレームf2で接触し、フレームf3で分離する場合を考える。まず、トラッキング部102は、接触・分離が起きたオブジェクトに対して、図20(b)に示すように別のオブジェクトIDを再設定する。これにより、トラッキング処理においてオブジェクト数の変化の影響を考慮せずに処理することができる。そして、トラッキング部102は、オブジェクト毎にトラッキング処理を行い、図20(c)に示すようなトラッキング済みの時系列メッシュデータとそのトラック情報を生成する。そして、トラック情報の生成の際、オブジェクトの接触・分離が起きたフレームf2とf3においてトラック及びGOFを分割することで、トラック内でオブジェクト数の変化が起きない単純なデータ構造を維持することができる。
本開示は、上述の実施形態の1つ以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステムまたは装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1つ以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
また、本実施形態の開示は、以下の構成及び方法を含む。
(構成1)
各フレームに複数のオブジェクトそれぞれの三次元形状を表す3Dモデルを含んだフレーム群から成る時系列形状データを取得する取得手段と、
前記時系列形状データに含まれる対応関係情報に基づいて、前記時系列形状データに対しオブジェクト毎にトラッキング処理を行うトラッキング手段と、
前記トラッキング手段によって処理されたトラッキング済み時系列形状データにメタデータを付して出力する出力手段と、
を有し、
前記対応関係情報は、各フレームにおいて3Dモデルに紐づくオブジェクトを特定可能な識別情報であり、
前記メタデータは、前記トラッキング済み時系列形状データにおいて前記3Dモデルの構成要素がフレーム間で追跡されているフレーム区間を示すトラックと前記オブジェクトの識別情報とを対応付けたデータである、
ことを特徴とする画像処理装置。
各フレームに複数のオブジェクトそれぞれの三次元形状を表す3Dモデルを含んだフレーム群から成る時系列形状データを取得する取得手段と、
前記時系列形状データに含まれる対応関係情報に基づいて、前記時系列形状データに対しオブジェクト毎にトラッキング処理を行うトラッキング手段と、
前記トラッキング手段によって処理されたトラッキング済み時系列形状データにメタデータを付して出力する出力手段と、
を有し、
前記対応関係情報は、各フレームにおいて3Dモデルに紐づくオブジェクトを特定可能な識別情報であり、
前記メタデータは、前記トラッキング済み時系列形状データにおいて前記3Dモデルの構成要素がフレーム間で追跡されているフレーム区間を示すトラックと前記オブジェクトの識別情報とを対応付けたデータである、
ことを特徴とする画像処理装置。
(構成2)
前記トラッキング済み時系列形状データは、前記トラックの開始フレームがオブジェクト間で共通化されている、ことを特徴とする構成1に記載の画像処理装置。
前記トラッキング済み時系列形状データは、前記トラックの開始フレームがオブジェクト間で共通化されている、ことを特徴とする構成1に記載の画像処理装置。
(構成3)
前記トラックの開始フレームがオブジェクト間で共通化されている前記トラッキング済み時系列形状データは、オブジェクト毎のトラッキング処理によって得られたトラックを所定のフレーム間隔で分割することによって生成される、ことを特徴とする構成2に記載の画像処理装置。
前記トラックの開始フレームがオブジェクト間で共通化されている前記トラッキング済み時系列形状データは、オブジェクト毎のトラッキング処理によって得られたトラックを所定のフレーム間隔で分割することによって生成される、ことを特徴とする構成2に記載の画像処理装置。
(構成4)
前記トラッキング手段は、前記取得手段によって取得された前記時系列形状データを所定のフレーム間隔で分割し、分割された前記時系列形状データに対して新たな前記識別情報を割り当て、新たな前記識別情報が割り当てられた前記時系列形状データに対して、オブジェクト毎にトラッキング処理を行うことによって、前記トラックの開始フレームをオブジェクト間で共通化させる、ことを特徴とする構成2に記載の画像処理装置。
前記トラッキング手段は、前記取得手段によって取得された前記時系列形状データを所定のフレーム間隔で分割し、分割された前記時系列形状データに対して新たな前記識別情報を割り当て、新たな前記識別情報が割り当てられた前記時系列形状データに対して、オブジェクト毎にトラッキング処理を行うことによって、前記トラックの開始フレームをオブジェクト間で共通化させる、ことを特徴とする構成2に記載の画像処理装置。
(構成5)
前記所定のフレーム間隔は、ユーザが任意に設定可能である、ことを特徴とする構成3又は4に記載の画像処理装置。
前記所定のフレーム間隔は、ユーザが任意に設定可能である、ことを特徴とする構成3又は4に記載の画像処理装置。
(構成6)
前記所定のフレーム間隔は、前記トラッキング済み時系列形状データを配信する際のフォーマットにおけるパッキング単位に相当するフレーム間隔である、ことを特徴とする構成3乃至5のいずれか一項に記載の画像処理装置。
前記所定のフレーム間隔は、前記トラッキング済み時系列形状データを配信する際のフォーマットにおけるパッキング単位に相当するフレーム間隔である、ことを特徴とする構成3乃至5のいずれか一項に記載の画像処理装置。
(構成7)
前記トラッキング済み時系列形状データは、オブジェクト毎のトラッキング処理によって得られたすべてのトラックの開始フレームがオブジェクト間で共通化されている、ことを特徴とする構成1に記載の画像処理装置。
前記トラッキング済み時系列形状データは、オブジェクト毎のトラッキング処理によって得られたすべてのトラックの開始フレームがオブジェクト間で共通化されている、ことを特徴とする構成1に記載の画像処理装置。
(構成8)
オブジェクト毎のトラッキング処理によって得られたすべてのトラックにおける開始フレームを、全オブジェクト共通のトラックにおける開始フレームの候補とし、隣り合う2つの候補の間隔が所定のフレーム数以下の場合、当該隣り合う2つの候補を1つに統合し、統合後に残った候補のフレーム位置で前記すべてのトラックを分割することにより、すべてのトラックの開始フレームがオブジェクト間で共通化されているトラッキング済み時系列形状データを生成する分割手段をさらに有する、ことを特徴とする構成7に記載の画像処理装置。
オブジェクト毎のトラッキング処理によって得られたすべてのトラックにおける開始フレームを、全オブジェクト共通のトラックにおける開始フレームの候補とし、隣り合う2つの候補の間隔が所定のフレーム数以下の場合、当該隣り合う2つの候補を1つに統合し、統合後に残った候補のフレーム位置で前記すべてのトラックを分割することにより、すべてのトラックの開始フレームがオブジェクト間で共通化されているトラッキング済み時系列形状データを生成する分割手段をさらに有する、ことを特徴とする構成7に記載の画像処理装置。
(構成9)
前記分割手段は、前記隣り合う2つの候補がそれぞれ属する2つのトラックに含まれるフレーム群の3Dモデルに対して再びトラッキング処理を行い、当該トラッキング処理における変形誤差の合計値が最小となるフレーム位置に決定して前記統合を行う、ことを特徴とする構成8に記載の画像処理装置。
前記分割手段は、前記隣り合う2つの候補がそれぞれ属する2つのトラックに含まれるフレーム群の3Dモデルに対して再びトラッキング処理を行い、当該トラッキング処理における変形誤差の合計値が最小となるフレーム位置に決定して前記統合を行う、ことを特徴とする構成8に記載の画像処理装置。
(構成10)
前記分割手段は、前記統合の後に残った候補のうち隣り合う2つの候補の間隔がトラック幅の上限を超える場合、当該2つの候補のフレーム位置では前記トラックを分割しない、ことを特徴とする構成8又は9に記載の画像処理装置。
前記分割手段は、前記統合の後に残った候補のうち隣り合う2つの候補の間隔がトラック幅の上限を超える場合、当該2つの候補のフレーム位置では前記トラックを分割しない、ことを特徴とする構成8又は9に記載の画像処理装置。
(構成11)
前記トラッキング手段は、すべてのオブジェクトで共通のキーフレームを設定し、当該キーフレームの周辺フレームを対象としてオブジェクト毎にトラッキング処理を行って、各オブジェクトで共通化されたトラックを生成する、ことを特徴とする構成1に記載の画像処理装置。
前記トラッキング手段は、すべてのオブジェクトで共通のキーフレームを設定し、当該キーフレームの周辺フレームを対象としてオブジェクト毎にトラッキング処理を行って、各オブジェクトで共通化されたトラックを生成する、ことを特徴とする構成1に記載の画像処理装置。
(構成12)
前記トラッキング手段は、オブジェクト毎にトラッキング処理を行って得られたトラックに、オブジェクト同士の接触及び分離が生じているフレームが含まれる場合、当該フレームの位置ですべてのオブジェクトについてのトラックを分割する、ことを特徴とする構成3に記載の画像処理装置。
前記トラッキング手段は、オブジェクト毎にトラッキング処理を行って得られたトラックに、オブジェクト同士の接触及び分離が生じているフレームが含まれる場合、当該フレームの位置ですべてのオブジェクトについてのトラックを分割する、ことを特徴とする構成3に記載の画像処理装置。
(構成13)
前記3Dモデルは、メッシュ形式または点群形式のいずれかである、ことを特徴とする構成1乃至12のいずれか一項に記載の画像処理装置。
前記3Dモデルは、メッシュ形式または点群形式のいずれかである、ことを特徴とする構成1乃至12のいずれか一項に記載の画像処理装置。
(方法1)
各フレームに複数のオブジェクトそれぞれの三次元形状を表す3Dモデルを含んだフレーム群から成る時系列形状データを取得するステップと、
前記時系列形状データに含まれる対応関係情報に基づいて、前記時系列形状データに対しオブジェクト毎にトラッキング処理を行うステップと、
前記トラッキング処理されたトラッキング済み時系列形状データにメタデータを付して出力するステップと、
を有し、
前記対応関係情報は、各フレームにおいて3Dモデルに紐づくオブジェクトを特定可能な識別情報であり、
前記メタデータは、前記トラッキング済み時系列形状データにおいて前記3Dモデルの構成要素がフレーム間で追跡されているフレーム区間を示すトラックと前記オブジェクトの識別情報とを対応付けたデータである、
ことを特徴とする画像処理方法。
各フレームに複数のオブジェクトそれぞれの三次元形状を表す3Dモデルを含んだフレーム群から成る時系列形状データを取得するステップと、
前記時系列形状データに含まれる対応関係情報に基づいて、前記時系列形状データに対しオブジェクト毎にトラッキング処理を行うステップと、
前記トラッキング処理されたトラッキング済み時系列形状データにメタデータを付して出力するステップと、
を有し、
前記対応関係情報は、各フレームにおいて3Dモデルに紐づくオブジェクトを特定可能な識別情報であり、
前記メタデータは、前記トラッキング済み時系列形状データにおいて前記3Dモデルの構成要素がフレーム間で追跡されているフレーム区間を示すトラックと前記オブジェクトの識別情報とを対応付けたデータである、
ことを特徴とする画像処理方法。
(構成14)
コンピュータを、構成1乃至13のいずれか一項に記載の画像処理装置として機能させるためのプログラム。
コンピュータを、構成1乃至13のいずれか一項に記載の画像処理装置として機能させるためのプログラム。
Claims (15)
- 各フレームに複数のオブジェクトそれぞれの三次元形状を表す3Dモデルを含んだフレーム群から成る時系列形状データを取得する取得手段と、
前記時系列形状データに含まれる対応関係情報に基づいて、前記時系列形状データに対しオブジェクト毎にトラッキング処理を行うトラッキング手段と、
前記トラッキング手段によって処理されたトラッキング済み時系列形状データにメタデータを付して出力する出力手段と、
を有し、
前記対応関係情報は、各フレームにおいて3Dモデルに紐づくオブジェクトを特定可能な識別情報であり、
前記メタデータは、前記トラッキング済み時系列形状データにおいて前記3Dモデルの構成要素がフレーム間で追跡されているフレーム区間を示すトラックと前記オブジェクトの識別情報とを対応付けたデータである、
ことを特徴とする画像処理装置。 - 前記トラッキング済み時系列形状データは、前記トラックの開始フレームがオブジェクト間で共通化されている、ことを特徴とする請求項1に記載の画像処理装置。
- 前記トラックの開始フレームがオブジェクト間で共通化されている前記トラッキング済み時系列形状データは、オブジェクト毎のトラッキング処理によって得られたトラックを所定のフレーム間隔で分割することによって生成される、ことを特徴とする請求項2に記載の画像処理装置。
- 前記トラッキング手段は、前記取得手段によって取得された前記時系列形状データを所定のフレーム間隔で分割し、分割された前記時系列形状データに対して新たな前記識別情報を割り当て、新たな前記識別情報が割り当てられた前記時系列形状データに対して、オブジェクト毎にトラッキング処理を行うことによって、前記トラックの開始フレームをオブジェクト間で共通化させる、ことを特徴とする請求項2に記載の画像処理装置。
- 前記所定のフレーム間隔は、ユーザが任意に設定可能である、ことを特徴とする請求項3又は4に記載の画像処理装置。
- 前記所定のフレーム間隔は、前記トラッキング済み時系列形状データを配信する際のフォーマットにおけるパッキング単位に相当するフレーム間隔である、ことを特徴とする請求項3又は4に記載の画像処理装置。
- 前記トラッキング済み時系列形状データは、オブジェクト毎のトラッキング処理によって得られたすべてのトラックの開始フレームがオブジェクト間で共通化されている、ことを特徴とする請求項1に記載の画像処理装置。
- オブジェクト毎のトラッキング処理によって得られたすべてのトラックにおける開始フレームを、全オブジェクト共通のトラックにおける開始フレームの候補とし、隣り合う2つの候補の間隔が所定のフレーム数以下の場合、当該隣り合う2つの候補を1つに統合し、統合後に残った候補のフレーム位置で前記すべてのトラックを分割することにより、すべてのトラックの開始フレームがオブジェクト間で共通化されているトラッキング済み時系列形状データを生成する分割手段をさらに有する、ことを特徴とする請求項7に記載の画像処理装置。
- 前記分割手段は、前記隣り合う2つの候補がそれぞれ属する2つのトラックに含まれるフレーム群の3Dモデルに対して再びトラッキング処理を行い、当該トラッキング処理における変形誤差の合計値が最小となるフレーム位置に決定して前記統合を行う、ことを特徴とする請求項8に記載の画像処理装置。
- 前記分割手段は、前記統合の後に残った候補のうち隣り合う2つの候補の間隔がトラック幅の上限を超える場合、当該2つの候補のフレーム位置では前記トラックを分割しない、ことを特徴とする請求項8又は9に記載の画像処理装置。
- 前記トラッキング手段は、すべてのオブジェクトで共通のキーフレームを設定し、当該キーフレームの周辺フレームを対象としてオブジェクト毎にトラッキング処理を行って、各オブジェクトで共通化されたトラックを生成する、ことを特徴とする請求項1に記載の画像処理装置。
- 前記トラッキング手段は、オブジェクト毎にトラッキング処理を行って得られたトラックに、オブジェクト同士の接触及び分離が生じているフレームが含まれる場合、当該フレームの位置ですべてのオブジェクトについてのトラックを分割する、ことを特徴とする請求項3に記載の画像処理装置。
- 前記3Dモデルは、メッシュ形式または点群形式のいずれかである、ことを特徴とする請求項1に記載の画像処理装置。
- 各フレームに複数のオブジェクトそれぞれの三次元形状を表す3Dモデルを含んだフレーム群から成る時系列形状データを取得するステップと、
前記時系列形状データに含まれる対応関係情報に基づいて、前記時系列形状データに対しオブジェクト毎にトラッキング処理を行うステップと、
前記トラッキング処理されたトラッキング済み時系列形状データにメタデータを付して出力するステップと、
を有し、
前記対応関係情報は、各フレームにおいて3Dモデルに紐づくオブジェクトを特定可能な識別情報であり、
前記メタデータは、前記トラッキング済み時系列形状データにおいて前記3Dモデルの構成要素がフレーム間で追跡されているフレーム区間を示すトラックと前記オブジェクトの識別情報とを対応付けたデータである、
ことを特徴とする画像処理方法。 - コンピュータに、請求項14に記載の画像処理方法を実行させるためのプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022184165A JP2024073130A (ja) | 2022-11-17 | 2022-11-17 | 画像処理装置、画像処理方法及びプログラム |
PCT/JP2023/034987 WO2024106017A1 (ja) | 2022-11-17 | 2023-09-26 | 画像処理装置、画像処理方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022184165A JP2024073130A (ja) | 2022-11-17 | 2022-11-17 | 画像処理装置、画像処理方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024073130A true JP2024073130A (ja) | 2024-05-29 |
Family
ID=91084435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022184165A Pending JP2024073130A (ja) | 2022-11-17 | 2022-11-17 | 画像処理装置、画像処理方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2024073130A (ja) |
WO (1) | WO2024106017A1 (ja) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6425847B1 (ja) * | 2017-08-14 | 2018-11-21 | キヤノン株式会社 | 画像処理装置、画像処理方法およびプログラム |
JP2021072545A (ja) * | 2019-10-30 | 2021-05-06 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法、およびプログラム |
-
2022
- 2022-11-17 JP JP2022184165A patent/JP2024073130A/ja active Pending
-
2023
- 2023-09-26 WO PCT/JP2023/034987 patent/WO2024106017A1/ja unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024106017A1 (ja) | 2024-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105052155B (zh) | 内插视频标签 | |
US8174523B2 (en) | Display controlling apparatus and display controlling method | |
CN110166757B (zh) | 用计算机实现的压缩数据的方法、系统、存储介质 | |
KR20160025519A (ko) | 속성 그룹을 이용한 시각적 엘리먼트의 선택 및 편집 기법 | |
KR20140024361A (ko) | 클라이언트 애플리케이션들에서 전이들의 애니메이션을 위한 메시 파일들의 이용 | |
CN102663800A (zh) | 一种顾及城市意象的城市建筑综合与渲染的方法 | |
CA2827940A1 (en) | Methods and systems for browsing heterogeneous map data | |
US9789650B2 (en) | Conversion of stereolithographic model into logical subcomponents | |
CN111199064B (zh) | 一种地铁轨道面三维中心线生成方法 | |
US11776215B1 (en) | Pre-labeling data with cuboid annotations | |
WO2019128742A1 (zh) | 图像处理方法、装置、终端及存储介质 | |
US9870647B2 (en) | System and method for processing color of three-dimensional object | |
CN114079801A (zh) | 按需将元数据叠加到视频流上以进行智能视频分析 | |
KR101283759B1 (ko) | 스마트 tv 환경의 개인화된 대화형 비디오에서 움직이는 이동 객체의 의미적 어노테이션의 표현 및 그 증강 방법 | |
CN110765565A (zh) | 一种布料仿真碰撞的方法及装置 | |
US20170337259A1 (en) | Visualizing device, visualizing method and visualizing program | |
JP2015064715A (ja) | 入力支援装置、入力支援方法及び入力支援プログラム | |
Kraus et al. | Toward mass video data analysis: Interactive and immersive 4D scene reconstruction | |
CN109863746B (zh) | 用于数据探索的沉浸式环境系统和视频投影模块 | |
WO2024106017A1 (ja) | 画像処理装置、画像処理方法及びプログラム | |
Chen et al. | Semantic-aware room-level indoor modeling from point clouds | |
KR102191667B1 (ko) | 다지점 투영 및 엣지 추출을 이용한 포인트 클라우드의 다운사이징 변환객체 생성방법 | |
Mazroob Semnani et al. | Towards an intelligent platform for big 3d geospatial data management | |
JP2010039932A (ja) | 画像処理装置、画像処理方法及びプログラム | |
US11288311B2 (en) | Interactive image cloud visualization of videos |