IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 沖電気工業株式会社の特許一覧

特開2024-16449映像符号化装置、映像符号化方法、及び映像符号化システム
<>
  • 特開-映像符号化装置、映像符号化方法、及び映像符号化システム 図1
  • 特開-映像符号化装置、映像符号化方法、及び映像符号化システム 図2
  • 特開-映像符号化装置、映像符号化方法、及び映像符号化システム 図3
  • 特開-映像符号化装置、映像符号化方法、及び映像符号化システム 図4
  • 特開-映像符号化装置、映像符号化方法、及び映像符号化システム 図5
  • 特開-映像符号化装置、映像符号化方法、及び映像符号化システム 図6
  • 特開-映像符号化装置、映像符号化方法、及び映像符号化システム 図7
  • 特開-映像符号化装置、映像符号化方法、及び映像符号化システム 図8
  • 特開-映像符号化装置、映像符号化方法、及び映像符号化システム 図9
  • 特開-映像符号化装置、映像符号化方法、及び映像符号化システム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024016449
(43)【公開日】2024-02-07
(54)【発明の名称】映像符号化装置、映像符号化方法、及び映像符号化システム
(51)【国際特許分類】
   H04N 19/56 20140101AFI20240131BHJP
   H04N 19/54 20140101ALI20240131BHJP
   H04N 19/597 20140101ALI20240131BHJP
【FI】
H04N19/56
H04N19/54
H04N19/597
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2022118581
(22)【出願日】2022-07-26
(71)【出願人】
【識別番号】000000295
【氏名又は名称】沖電気工業株式会社
(74)【代理人】
【識別番号】100140958
【弁理士】
【氏名又は名称】伊藤 学
(74)【代理人】
【識別番号】100137888
【弁理士】
【氏名又は名称】大山 夏子
(74)【代理人】
【識別番号】100190942
【弁理士】
【氏名又は名称】風間 竜司
(72)【発明者】
【氏名】畠中 貴明
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159LA02
5C159LC09
5C159MA04
5C159MA05
5C159NN05
5C159NN32
5C159NN41
5C159PP03
5C159PP13
5C159RC11
5C159UA02
5C159UA05
(57)【要約】
【課題】映像の符号化速度および符号化効率を向上する。
【解決手段】被写体を撮影した映像を取得する映像取得部と、前記被写体の関節の三次元座標を推定する骨格推定部と、前記骨格推定部によって推定された前記三次元座標に基づき、前記映像における前記被写体の関節の二次元座標を特定する特定部と、動き探索を行って、前記映像取得部によって取得された前記映像を符号化する符号化部と、を備え、前記符号化部は、前記特定部によって特定された前記二次元座標の、前記映像のフレーム間での変化に基づき、前記動き探索の開始位置を算出する処理である開始位置算出処理を行う、映像符号化装置。
【選択図】図1

【特許請求の範囲】
【請求項1】
被写体を撮影した映像を取得する映像取得部と、
前記被写体の関節の三次元座標を推定する骨格推定部と、
前記骨格推定部によって推定された前記三次元座標に基づき、前記映像における前記被写体の関節の二次元座標を特定する特定部と、
動き探索を行って、前記映像取得部によって取得された前記映像を符号化する符号化部と、
を備え、
前記符号化部は、前記特定部によって特定された前記二次元座標の、前記映像のフレーム間での変化に基づき、前記動き探索の開始位置を算出する処理である開始位置算出処理を行う、
映像符号化装置。
【請求項2】
前記符号化部は、前記映像の、前記符号化の対象となる対象フレームを複数のブロックに分割し、
前記開始位置算出処理は、
前記対象フレームにおける前記関節の二次元座標である現在関節座標と、時間的に前記対象フレームに先行するフレームである先行フレームにおける前記関節の二次元座標である先行関節座標との間での変化に基づき、前記現在関節座標を含む第1ブロックについて、前記先行フレーム内で前記動き探索の開始ブロックとなる第2ブロックの位置を算出する処理であり、
前記第2ブロックに対する前記先行関節座標の相対位置が、前記第1ブロックに対する前記現在関節座標の相対位置と等しくなるように、前記第2ブロックの位置を算出する処理である、
請求項1に記載の映像符号化装置。
【請求項3】
前記骨格推定部は、複数の関節の三次元座標を推定し、
前記特定部は、前記複数の関節の三次元座標に基づき、前記複数の関節の各々の二次元座標を特定し、
前記符号化部は、前記複数の関節の各々について前記開始位置算出処理を行う、
請求項2に記載の映像符号化装置。
【請求項4】
前記映像取得部は、カメラによって撮影された映像を取得し、
前記特定部は、前記骨格推定部によって推定された前記三次元座標と前記カメラとの距離を特定し、
前記符号化部は、前記特定部によって特定された前記現在関節座標に対応する前記三次元座標と前記カメラとの距離である現在関節奥行に基づいて、算出済の前記第2ブロックの位置を更新するか否かを判断する、
請求項2または3に記載の映像符号化装置。
【請求項5】
前記符号化部は、
前記第2ブロックの位置を算出すると、前記現在関節奥行を、前記第1ブロックの関節奥行として保存し、
前記開始位置算出処理の際、前記第1ブロックについて、前記現在関節奥行よりも大きい前記関節奥行が保存されている場合、前記第1ブロックについての動き探索の開始位置を、算出済の前記第2ブロックの位置から、前記第1ブロックと前記現在関節座標との相対位置に基づき新たに算出された第2ブロックの位置に更新する、
請求項4に記載の映像符号化装置。
【請求項6】
前記符号化部は、前記現在関節奥行が所定の閾値より小さい場合、前記第1ブロックの近傍に存在するブロックである近傍ブロックの各々に対して、前記動き探索の開始位置を算出する処理である追加処理を行い、
前記追加処理は、前記近傍ブロックについての前記動き探索の開始ブロックとなる第3ブロックに対する前記近傍ブロックの相対位置が、前記第1ブロックに対する前記第2ブロックの相対位置と等しくなるように、前記第3ブロックの位置を算出する処理である、
請求項5に記載の映像符号化装置。
【請求項7】
前記符号化部は、
前記近傍ブロックについて前記第3ブロックの位置を算出すると、前記現在関節奥行を、前記近傍ブロックについての関節奥行として保存し、
前記追加処理の際、前記近傍ブロックについて、前記現在関節奥行よりも大きい関節奥行が保存されている場合、前記近傍ブロックについての前記動き探索の開始位置を、算出済の前記第3ブロックの位置から、前記第1ブロックと前記第2ブロックとの相対位置に基づき新たに算出された第3ブロックの位置に更新する、
請求項6に記載の映像符号化装置。
【請求項8】
前記ブロックは、矩形であり、
前記近傍ブロックは、前記第1ブロックを囲う8つのブロックである、
請求項6または7に記載の映像符号化装置。
【請求項9】
前記骨格推定部は、深度センサで検出した深度画像または赤外線センサで検出した赤外線画像に基づいて前記三次元座標を推定する、
請求項4に記載の映像符号化装置。
【請求項10】
被写体を撮影した映像を取得することと、
前記被写体の関節の三次元座標を推定することと、
推定された前記三次元座標に基づき、前記映像における前記被写体の関節の二次元座標を特定することと、
動き探索を行って、取得された前記映像を符号化することと、
を含み、
前記映像を符号化することは、特定された前記二次元座標の、前記映像のフレーム間での変化に基づき、前記動き探索の開始位置を決定する処理である開始位置決定処理を行うことを含む、コンピュータによって実行される映像符号化方法。
【請求項11】
被写体を撮影した映像を取得する映像取得部と、
前記被写体の関節の三次元座標を推定する骨格推定部と、
前記骨格推定部によって推定された前記三次元座標に基づき、前記映像における前記被写体の関節の二次元座標を特定する特定部と、
動き探索を行って、前記映像取得部によって取得された前記映像を符号化する符号化部と、
を備え、
前記符号化部は、前記特定部によって特定された前記二次元座標の、前記映像のフレーム間での変化に基づき、前記動き探索の開始位置を決定する処理である開始位置決定処理を行う、
映像符号化システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像符号化装置、映像符号化方法、及び映像符号化システムに関する。
【背景技術】
【0002】
近年、熟練技術者の技術を伝承するために、熟練技術者による作業の映像および熟練技術者の作業中の関節の動きの情報である骨格情報を、記録することが行われている。またリハビリテーションの現場では、リハビリテーションを行う療法士によるリハビリテーションの映像および療法士のリハビリテーション中の骨格情報を分析する重要性が高まっている。
【0003】
このような映像の符号化において、映像の符号化速度および符号化効率の向上のために、様々な技術が開発されている。例えば、特許文献1には、映像における色相の情報を用いて符号化を行うことで、映像の符号化速度および符号化効率を向上する映像符号化装置が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2018-50256号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載の映像符号化装置によって映像を符号化する場合には、映像に映る被写体の骨格の推定と映像の符号化とが別に行われる。しかし、映像に映る被写体の骨格の推定と映像の符号化とが別に行われることにより、映像の符号化速度および符号化効率が、通常の符号化方式の性能と同等になってしまうという課題があった。
【0006】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、映像の符号化速度および符号化効率を向上することが可能な、新規かつ改良された映像符号化装置、映像符号化方法、及び映像符号化システムを提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明のある観点によれば、被写体を撮影した映像を取得する映像取得部と、前記被写体の関節の三次元座標を推定する骨格推定部と、前記骨格推定部によって推定された前記三次元座標に基づき、前記映像における前記被写体の関節の二次元座標を特定する特定部と、動き探索を行って、前記映像取得部によって取得された前記映像を符号化する符号化部と、を備え、前記符号化部は、前記特定部によって特定された前記二次元座標の、前記映像のフレーム間での変化に基づき、前記動き探索の開始位置を算出する処理である開始位置算出処理を行う、映像符号化装置が提供される。
【0008】
前記符号化部は、前記映像の、前記符号化の対象となる対象フレームを複数のブロックに分割し、前記開始位置算出処理は、前記対象フレームにおける前記関節の二次元座標である現在関節座標と、時間的に前記対象フレームに先行するフレームである先行フレームにおける前記関節の二次元座標である先行関節座標との間での変化に基づき、前記現在関節座標を含む第1ブロックについて、前記先行フレーム内で前記動き探索の開始ブロックとなる第2ブロックの位置を算出する処理であり、前記第2ブロックに対する前記先行関節座標の相対位置が、前記第1ブロックに対する前記現在関節座標の相対位置と等しくなるように、前記第2ブロックの位置を算出する処理であってもよい。
【0009】
前記骨格推定部は、複数の関節の三次元座標を推定し、前記特定部は、前記複数の関節の三次元座標に基づき、前記複数の関節の各々の二次元座標を特定し、前記符号化部は、前記複数の関節の各々について前記開始位置算出処理を行ってもよい。
【0010】
前記映像取得部は、カメラによって撮影された映像を取得し、前記特定部は、前記骨格推定部によって推定された前記三次元座標と前記カメラとの距離を特定し、前記符号化部は、前記特定部によって特定された前記現在関節座標に対応する前記三次元座標と前記カメラとの距離である現在関節奥行に基づいて、算出済の前記第2ブロックの位置を更新するか否かを判断してもよい。
【0011】
前記符号化部は、前記第2ブロックの位置を算出すると、前記現在関節奥行を、前記第1ブロックの関節奥行として保存し、前記開始位置算出処理の際、前記第1ブロックについて、前記現在関節奥行よりも大きい前記関節奥行が保存されている場合、前記第1ブロックについての動き探索の開始位置を、算出済の前記第2ブロックの位置から、前記第1ブロックと前記現在関節座標との相対位置に基づき新たに算出された第2ブロックの位置に更新してもよい。
【0012】
前記符号化部は、前記現在関節奥行が所定の閾値より小さい場合、前記第1ブロックの近傍に存在するブロックである近傍ブロックの各々に対して、前記動き探索の開始位置を算出する処理である追加処理を行い、前記追加処理は、前記近傍ブロックについての前記動き探索の開始ブロックとなる第3ブロックに対する前記近傍ブロックの相対位置が、前記第1ブロックに対する前記第2ブロックの相対位置と等しくなるように、前記第3ブロックの位置を算出する処理であってもよい。
【0013】
前記符号化部は、前記近傍ブロックについて前記第3ブロックの位置を算出すると、前記現在関節奥行を、前記近傍ブロックについての関節奥行として保存し、前記追加処理の際、前記近傍ブロックについて、前記現在関節奥行よりも大きい関節奥行が保存されている場合、前記近傍ブロックについての前記動き探索の開始位置を、算出済の前記第3ブロックの位置から、前記第1ブロックと前記第2ブロックとの相対位置に基づき新たに算出された第3ブロックの位置に更新してもよい。
【0014】
前記ブロックは、矩形であり、前記近傍ブロックは、前記第1ブロックを囲う8つのブロックであってもよい。
【0015】
前記骨格推定部は、深度センサで検出した深度画像または赤外線センサで検出した赤外線画像に基づいて前記三次元座標を推定してもよい。
【0016】
また、上記課題を解決するために本発明の別の観点によれば、被写体を撮影した映像を取得することと、前記被写体の関節の三次元座標を推定することと、推定された前記三次元座標に基づき、前記映像における前記被写体の関節の二次元座標を特定することと、動き探索を行って、取得された前記映像を符号化することと、を含み、前記映像を符号化することは、特定された前記二次元座標の、前記映像のフレーム間での変化に基づき、前記動き探索の開始位置を決定する処理である開始位置決定処理を行うことを含む、コンピュータによって実行される映像符号化方法が提供される。
【0017】
また、上記課題を解決するために本発明の別の観点によれば、被写体を撮影した映像を取得する映像取得部と、前記被写体の関節の三次元座標を推定する骨格推定部と、前記骨格推定部によって推定された前記三次元座標に基づき、前記映像における前記被写体の関節の二次元座標を特定する特定部と、動き探索を行って、前記映像取得部によって取得された前記映像を符号化する符号化部と、を備え、前記符号化部は、前記特定部によって特定された前記二次元座標の、前記映像のフレーム間での変化に基づき、前記動き探索の開始位置を決定する処理である開始位置決定処理を行う、映像符号化システムが提供される。
【発明の効果】
【0018】
以上説明したように本発明によれば、映像符号化の速度および符号化効率を向上することが可能である。
【図面の簡単な説明】
【0019】
図1】映像符号化装置10の機能構成例を示すブロック図である。
図2】対象フレームの例を示す図である。
図3】直前フレームの例を示す図である。
図4】現在関節座標Cを含むブロックBLcと動き探索の開始ブロックの位置関係を説明するための説明図である。
図5】現在関節座標Cを含むブロックBLcについての近傍ブロックの例を示す図である。
図6】現在関節座標Cを含むブロックBLcの動き探索の開始ブロックBLsと、近傍ブロックについての動き探索の開始ブロックBLNsの位置関係を説明するための説明図である。
図7】本実施形態による映像符号化装置10の動作例を示すフローチャートである。
図8】本実施形態による映像符号化装置10による開始算出決定処理の動作例を示すフローチャートである。
図9】本実施形態による映像符号化装置10による追加処理の動作例を示すフローチャートである。
図10】本発明の実施形態に係る映像符号化装置10の例としての情報処理装置900のハードウェア構成を示す図である。
【発明を実施するための形態】
【0020】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0021】
<1.映像符号化装置の構成>
図1を参照しながら、本発明の実施形態による映像符号化装置10の構成の一例について説明する。図1は、映像符号化装置10の機能構成例を示すブロック図である。映像符号化装置10は、被写体を撮影した映像を取得し、当該映像を符号化する。また、映像符号化装置10は、当該被写体の関節の三次元座標を推定し、当該三次元座標に基づき、映像を符号化することで、映像の符号化速度および符号化効率の向上を実現する。
【0022】
図1に示されるように、本発明の実施形態に係る映像符号化装置10は、映像取得部110と、センサ情報取得部120と、記憶部140と、制御部150と、を備える。
【0023】
(映像取得部110)
映像取得部110は、被写体を撮影した映像を取得する。映像は、時系列に沿って連続的に撮像される複数のフレームからなる。映像取得部110は、例えば、RGBカメラ等のカメラによって被写体が存在する空間を撮像された映像を取得してもよい。映像取得部110が取得する映像は、被写体の全体が撮影されてもよいし、一部が撮影されてもよい。また、被写体は、人間または動物であってもよいし、アクチュエータを有するロボットであってもよい。なお、被写体がロボットである場合には、後述の骨格推定部151は、関節の位置としてアクチュエータの位置を特定する。本実施例においては、被写体が人間である場合の例を説明する。
【0024】
(センサ情報取得部120)
センサ情報取得部120は、被写体を含む空間の、深度センサで検出した深度画像または赤外線センサで検出した赤外線画像を取得する。映像取得部110によって取得される映像を撮影するカメラと、深度センサまたは赤外線センサは、同時に、被写体を含む空間を撮像する。なお、映像取得部110によって取得される映像を撮影するカメラと、深度センサまたは赤外線センサは、同一地点から被写体を含む空間を撮像することが好ましい。
【0025】
(記憶部140)
記憶部140は、制御部150を動作させるためのプログラムおよびデータを記憶することが可能なメモリである。また、記憶部140は、制御部150の動作の過程で必要となる各種データを一時的に記憶することもできる。例えば、記憶部140は、不揮発性メモリであってよい。記憶部140は、例えば、映像取得部110によって取得された映像およびセンサ情報取得部120によって取得された深度画像または赤外線画像を記憶する。
【0026】
(制御部150)
制御部150は、各種の演算処理を行う。例えば、制御部150は、CPU(Central Processing Unit)などの演算装置を含み、ROM(Read Only Memory)により記憶されているプログラムが演算装置によりRAMに展開されて実行されることにより、その機能が実現され得る。このとき、当該プログラムを記録した、コンピュータに読み取り可能な記録媒体も提供され得る。あるいは、これらのブロックは、専用のハードウェアにより構成されていてもよいし、複数のハードウェアの組み合わせにより構成されてもよい。
【0027】
また、制御部150は、骨格推定部151、特定部152、および符号化部153としても機能する。
【0028】
(骨格推定部151)
骨格推定部151は、センサ情報取得部120によって取得された深度画像または赤外線画像に基づいて、肩および肘等の、被写体の関節の三次元座標を推定する。骨格推定部151は、複数の関節の三次元座標を推定してもよい。骨格推定部151により三次元座標が推定される関節の種類は、特に限定されない。また、骨格推定部151は、例えば、頭部または関節と関節の中間位置等の、関節以外の三次元座標を推定してもよい。なお、骨格推定部151による関節の三次元座標の推定方法は深度画像または赤外線画像に基づく推定に限定されない。骨格推定部151は、例えば、映像取得部110によって取得された映像に基づき、被写体の関節の三次元座標を推定してもよい。
【0029】
(特定部152)
特定部152は、骨格推定部151によって推定された被写体の関節の三次元座標に基づき、映像取得部110によって取得された映像における被写体の関節の二次元座標を特定する。例えば、特定部152は、被写体の関節の三次元座標の、映像取得部110によって取得された映像における射影二次元座標を算出することで、当該映像における被写体の関節の二次元座標を特定する。なお、深度センサまたは赤外線センサの座標系がカメラの座標系と予めキャリブレーションされることで、特定部152は、深度センサまたは赤外線センサの座標系での三次元座標を、映像における射影二次元座標に変換してもよい。
【0030】
特定部152は、被写体の関節の三次元座標が複数ある場合は、複数の関節の各々の二次元座標を特定する。特定部152は、特定した被写体の関節の二次元座標を記憶部140に記憶させる。
【0031】
また、特定部152は、被写体の関節の三次元座標とカメラとの距離を特定する。
【0032】
(符号化部153)
符号化部153は、動き探索を行って、映像取得部110によって取得された映像を符号化する。符号化部153は、例えば、H.264符号化方式に従って符号化を行う。なお、符号化部153による符号化の符号化方式は、動き探索を行う符号化方式であればH.264符号化方式に限られず、例えば、H.265符号化方式であってもよい。
【0033】
符号化部153は、映像の、符号化の対象となる対象フレームを複数のブロックに分割し、ブロック単位で符号化を実行する。符号化部153は、符号化として、イントラ予測符号化またはインター予測符号化を行う。イントラ予測符号化とは、フレーム内での他のブロックの画素情報に基づいて、符号化対象である対象ブロックの予測画像を生成し、当該対象ブロックとの残差を符号化する処理である。
【0034】
インター予測符号化とは、対象フレームと異なるフレームを参照フレームとして指定し、参照フレーム内の画素情報に基づいて、対象ブロックの予測画像を生成し、対象ブロックとの残差を符号化する処理である。例えば、インター予測符号化において、符号化部153は、対象フレーム内の符号化対象ブロックについて、時間的に当該対象フレームに先行する先行フレームを指定し、当該先行フレーム内で動き探索の開始ブロックとなるブロックの位置を算出する。先行フレームは、例えば、時間的に当該対象フレームの直前のフレームである直前フレームである。符号化部153は、算出された開始ブロックから動き探索を開始し、上記予測画像となるブロックを決定する。
【0035】
符号化部153は、動き探索において、予測画像となるブロックの候補である候補ブロックの画素値と、対象ブロックの画素値との画素値のSAD(Sum of Absolute Difference、絶対値誤差和)またはSATD(Sum of Absolute Transform Difference、アダマール変換絶対値誤差和)等のマッチングコストを算出し、マッチングコストが小さいブロックを予測画像となるブロックに決定する。
【0036】
符号化部153は、例えば、開始ブロックをまず候補ブロックとして決定し、当該開始ブロックから螺旋状に、直前に決定された候補ブロックと位置が1ピクセル異なる候補ブロックを順次決定し、対象ブロックと各候補ブロックとのマッチングコストを算出する。符号化部153は、所定の探索対象範囲に含まれる全ての候補ブロックのマッチングコストを算出して、マッチングコストが最小の候補ブロックを予測画像となるブロックとして決定してもよい。符号化部153は、動き探索中に所定の閾値よりマッチングコストが小さい候補ブロックを発見した場合に動き探索を打ち切り、当該候補ブロックを予測画像となるブロックとして決定してもよい。なお、候補ブロックの決定方法は螺旋状に候補ブロックを決定する方法に限られず、ダイヤモンドサーチ等の他のアルゴリズムを用いてもよい。
【0037】
ここで、異なるフレームにおいて、関節との相対的な位置関係が同一であるブロック同士は、マッチングコストが小さい可能性が高い。そのため、符号化部153は、対象ブロックに対する関節の相対位置を特定し、当該相対位置に基づき直前フレームにおける開始ブロックを特定する。開始ブロックに対する関節の相対位置は、対象フレームにおける対象ブロックに対する関節の相対位置に等しい。かかる構成により、マッチングコストが小さいブロックを開始ブロックとして発見でき、対象ブロックの予測画像と対象ブロックとの残差を少なくすることが可能である。つまり、対象ブロックと、関節との相対的な位置関係が同一であるブロックを動き探索の開始ブロックに決定することで、符号化の効率を向上することが可能である。
【0038】
また、マッチングコストに基づいて動き探索を行う場合には、動き探索の開始位置をマッチングコストが小さいブロックに決定できれば、探索対象範囲を小さくしても、対象ブロックの予測画像と対象ブロックとの残差を少なくすることが可能である。つまり、動き探索の開始位置をマッチングコストが小さいブロックに決定できれば、動き探索の高速化が実現でき、ひいては符号化の高速化が実現できる。
【0039】
そこで、本実施形態における符号化部153は、特定部152によって特定された映像における被写体の関節の二次元座標に基づいて動き探索の開始位置を算出することで、マッチングコストが小さいと予想されるブロックを動き探索の開始位置に決定する。
【0040】
(開始位置算出処理)
符号化部153は、特定部152によって特定された映像における被写体の関節の二次元座標の、当該映像のフレーム間での変化に基づき、動き探索の開始位置を算出する処理である開始位置算出処理を行う。ここでは、符号化部153による開始位置算出処理について図2~4を用いて詳しく説明する。
【0041】
開始位置算出処理は、対象フレームにおける前記関節の二次元座標である現在関節座標と、先行フレームにおける関節の二次元座標である先行関節座標との間での変化に基づき、動き探索の開始ブロックの位置を算出する処理である。本実施形態においては、先行フレームが直前フレームで、先行関節座標が直前フレームにおける関節の二次元座標である直前関節座標である場合の例について説明する。
【0042】
図2は、対象フレームの例を示す図である。図2には、被写体Uを撮影した映像における対象フレームFcと、特定部152によって特定された、対象フレームFcにおける被写体Uの各関節の二次元座標が示されている。符号化部153は、開始位置算出処理の前に、対象フレームFcを、固定サイズのブロック(例えば16×16ピクセルの矩形)に分割する。図2には、符号化部153が対象フレームFcを縦に6分割し、横に8分割することにより生じた、合計48個のブロックが示されている。なお、ブロックのサイズ及び形状は特に限定されない。
【0043】
符号化部153は、例えば、フレームを左上から順に右方向へ、16×16ピクセルごとに分割し、右端まで到達すると下に移動し、フレーム内の未分割の部分を左上から順に右方向へ、16×16ピクセルごとに分割する。この処理を繰り返すことで、符号化部153は、フレームを16×16ピクセルのブロックに分割する。なお、符号化部153は、16×16ピクセルのブロックに分割できない部分が生じた場合は、16×16ピクセルになるよう画素を補うことで、フレームを16×16ピクセルのブロックに分割してもよい。
【0044】
符号化部153は、対象フレームFc内の各ブロックの状態を保存する。開始位置算出処理の開始前に、対象フレームFc内の全てのブロックの状態を、通常探索状態として保存する。符号化部153は、ブロックについての動き探索の開始ブロックの位置を算出すると、当該ブロックの状態を補正探索状態として保存する。なお、処理の対象となる関節と異なる他の関節についての開始位置算出処理が既に行われている場合には、符号化部153は、当該他の関節についての開始位置算出処理中に保存されたブロックの状態を引き継いで開始位置算出処理を行う。
【0045】
符号化部153は、対象フレームFcを複数のブロックに分割すると、複数の関節の各々について開始位置算出処理を行う。図2においては、開始位置算出処理の対象となる関節が、被写体Uの、原点に対してより遠い方に位置する方の手首の関節である例を示している。なお、複数の関節について、開始位置算出処理を行う順番は特に限定されない。符号化部153は、左上に存在する関節から順に右下に向かって順に開始位置算出処理を行ってもよい。また、符号化部153は、被写体の関節の三次元座標とカメラとの距離が短い関節から順に処理を行ってもよい。
【0046】
符号化部153は、まず、開始位置算出処理の対象となる関節である対象関節を決定する。続いて、符号化部153は、当該対象関節の現在関節座標Cを含むブロックBLcを特定する。現在関節座標Cを含むブロックBLcを、第1ブロックとも呼ぶ。符号化部153は、対象フレームFcが現在関節座標を含まない場合には、対象関節についての開始位置算出処理を終了する。
【0047】
続いて、符号化部153は、直前関節座標を特定する。図3は、直前フレームの例を示す図である。図3において、符号化部153は、直前フレームFpにおける直前関節座標Pを特定する。直前フレームFpが直前関節座標Pを含まない場合には、対象関節についての開始位置算出処理を終了する。また、直前フレームが存在しない場合、符号化部153は、開始位置算出処理を終了する。
【0048】
そして、符号化部153は、直前関節座標Pに基づいて、現在関節座標Cを含むブロックBLcの動き探索の開始ブロックの位置を算出する。図4は、現在関節座標Cを含むブロックBLcと動き探索の開始ブロックの位置関係を説明するための説明図である。図4に示すように、符号化部153は、動き探索の開始ブロックに対する直前関節座標Pの相対位置が、現在関節座標Cを含むブロックBLcに対する現在関節座標Cの相対位置と等しくなるように、動き探索の開始ブロックBLsの位置を算出する。動き探索の開始ブロックBLsを、第2ブロックとも呼ぶ。
【0049】
具体的には、動き探索の開始ブロックBLsの位置は、動き探索の開始ブロックBLsが含む点のうち、最も原点に近い点である開始ブロック座標S(SX,SY)を算出することで特定可能である。開始ブロック座標S(SX,SY)は、現在関節座標C(CX,CY)、直前関節座標P(PX,PY)、および現在関節座標Cを含むブロックBLcが含む点のうち、最も原点に近い点である対象関節ブロック座標B(BX,BY)を用いて、下記の式(1)および(2)に示すように算出し得る。
【0050】
SX:=PX-(CX-BX) ・・・(1)
SY:=PY-(CY-BY) ・・・(2)
【0051】
上記のように処理を行うことで、現在関節座標を含むブロックと同一位置に関節位置が存在するブロックを、動き探索の開始ブロックとして算出できる。前述の通り、現在関節座標を含むブロックにおける、関節位置およびその周辺の画素は、直前フレームにおける、当該関節位置およびその周辺の画素と差が小さいと考えられる。そのため、このように算出を行うことにより、現在関節座標を含むブロックとのマッチングコストが小さいブロックを動き探索の開始ブロックに決定でき、当該開始ブロックから動き探索を行うことで、映像の符号化効率および符号化速度の向上が実現できる。
【0052】
ここで、符号化部153は、特定部152によって特定された現在関節座標Cに対応する三次元座標とカメラとの距離である現在関節奥行に基づいて、算出済の動き探索の開始ブロックの位置を更新するか否かを判断してもよい。
【0053】
例えば、符号化部153は、動き探索の開始ブロックの位置を算出すると、現在関節奥行を、現在関節座標を含むブロックの関節奥行として保存する。そして、符号化部153は、開始位置算出処理の際、現在関節座標Cを含むブロックBLcについて、現在関節奥行DC(図示せず)よりも大きい関節奥行DP(図示せず)が保存されている場合、算出済の動き探索の開始ブロックの位置を更新する。より具体的には、符号化部153は、現在関節座標Cを含むブロックBLcについての動き探索の開始位置を、算出済の動き探索の開始ブロックの位置から、当該ブロックBLcと現在関節座標Cとの相対位置に基づき新たに算出された動き探索の開始ブロックBLsの位置に更新する。
【0054】
算出済の動き探索の開始ブロックの位置を更新するか否かの判断のための条件式は、下記の式(3)のように示し得る。
【0055】
DC>DP ・・・(3)
【0056】
符号化部153は、現在関節奥行DCが式(3)を満たさない場合に、算出済の動き探索の開始ブロックの位置を更新する。符号化部153は、現在関節奥行DCが式(3)を満たす場合には、対象関節についての開始位置算出処理を終了する。
【0057】
上記のような条件に基づいて算出済の動き探索の開始ブロックの位置を更新するか否かを判断することにより、他の関節によって隠蔽されていない関節の二次元座標に基づいて動き探索の開始ブロックの位置を算出することが可能である。同一のブロックに複数の関節が存在する場合には、カメラからみて遠い位置に存在する関節は、カメラからみてより近い位置に存在する関節によって隠蔽されている可能性が高い。そのような場合に、カメラからみてより近い位置に存在する関節の二次元座標に基づいて動き探索の開始ブロックの位置を算出することにより、現在関節座標を含むブロックに含まれる画素との差がより小さいブロックを動き探索の開始ブロックとして算出できる。当該開始ブロックから動き探索を行うことで、映像の符号化効率および符号化速度の向上が実現できる。
【0058】
(追加処理)
符号化部153は、開始位置算出処理において、現在関節座標を含むブロックの近傍に存在するブロックである近傍ブロックの各々に対して、動き探索の開始ブロックの位置を算出する処理である追加処理を行ってもよい。ここでは、符号化部153による追加処理について図5および図6を用いて詳しく説明する。
【0059】
符号化部153は、動き探索の開始ブロックの位置を算出した後に、追加処理を行う。符号化部153は、まず、現在関節座標Cを含むブロックBLcについての近傍ブロックを決定する。図5は、現在関節座標Cを含むブロックBLcについての近傍ブロックの例を示す図である。図5には、現在関節座標Cを含むブロックBLcを囲う8つのブロックが近傍ブロックBLN1~BLN8として決定された例が示されている。例えば、符号化部153は、現在関節座標Cを含むブロックBLcの左上に位置するブロックを、近傍ブロックBLN1として決定する。なお、近傍ブロックの数は特に限定されず、例えば、現在関節座標Cを含むブロックBLcと接する4ブロックであってもよい。
【0060】
符号化部153は、決定された近傍ブロックの各々について順次動き探索の開始ブロックの位置を算出する。なお、複数の近傍ブロックの、動き探索の開始ブロックの位置を算出する順番は特に限定されない。
【0061】
符号化部153は、現在関節座標を含むブロックについての動き探索の開始ブロックの位置に基づいて、近傍ブロックについての動き探索の開始ブロックの位置を算出する。図6は、現在関節座標Cを含むブロックBLcの動き探索の開始ブロックBLsと、近傍ブロックについての動き探索の開始ブロックBLNsの位置関係を説明するための説明図である。図6では、現在関節座標Cを含むブロックBLcの右に位置する近傍ブロックBLN5についての動き探索の開始ブロックBLNsである、動き探索の開始ブロックBLNs5の位置を算出する例を示している。
【0062】
図6に示すように、符号化部153は、近傍ブロックBLN5の動き探索の開始ブロックBLNs5に対する近傍ブロックBLN5の相対位置が、現在関節座標Cを含むブロックBLcに対する動き探索の開始ブロックBLsの相対位置と等しくなるように、動き探索の開始ブロックBLN5sの位置を算出する。近傍ブロックの動き探索の開始ブロックを、第3ブロックとも呼ぶ。
【0063】
具体的には、近傍ブロックBLNの動き探索の開始ブロックBLNsの位置は、動き探索の開始ブロックBLNsが含む点のうち、最も原点に近い点の座標SN(SNX,SNY)を算出することで特定可能である。動き探索の開始ブロックBLNsが含む点のうち最も原点に近い点の座標SN(SNX,SNY)は、現在関節座標C(CX,CY)、直前関節座標P(PX,PY)、対象関節ブロック座標B(BX,BY)、開始ブロック座標S(SX,SY)および近傍ブロックBLNが含む点のうち、最も原点に近い点である近傍ブロック座標BN(BNX,BNY)を用いて、下記の式(4)および(5)に示すように算出し得る。
【0064】
SNX:=PX-(CX-BX)+(BNX-BX) ・・・(4)
SNY:=PY-(CY-BY)+(BNY-BY) ・・・(5)
【0065】
現在関節座標を含むブロックの近傍に存在するブロック内の画素は、現在関節座標を含むブロック内の画素と略同一の動きを行っている可能性が高い。ここで、符号化部153は、近傍ブロックの動き探索の開始ブロックに対する近傍ブロックの相対位置が、現在関節座標を含むブロックに対する動き探索の開始ブロックの相対位置と等しくなるように、動き探索の開始ブロックの位置を算出する。当該処理により、近傍ブロックとのマッチングコストが小さいブロックを動き探索の開始ブロックに決定でき、当該開始ブロックから動き探索を行うことで、映像の符号化効率および符号化速度がより向上される。
【0066】
ここで、符号化部153は、現在関節座標Cに対応する三次元座標とカメラとの距離である現在関節奥行に基づいて、近傍ブロックについての、算出済の動き探索の開始ブロックの位置を更新するか否かを判断してもよい。
【0067】
符号化部153は、開始位置算出処理の際、近傍ブロックBLNについて、現在関節奥行DCよりも大きい関節奥行DPが保存されている場合、算出済の動き探索の開始ブロックの位置を更新する。より具体的には、符号化部153は、近傍ブロックBLNについての動き探索の開始位置を、算出済の動き探索の開始ブロックの位置から、現在関節座標Cを含むブロックBLcと動き探索の開始ブロックBLsとの相対位置に基づき新たに算出された動き探索の開始ブロックBLNsの位置に更新する。
【0068】
符号化部153は、近傍ブロックBLNについての動き探索の開始ブロックBLNsを算出すると、現在関節奥行DCを、近傍ブロックBLNについての関節奥行として保存する。
【0069】
符号化部153は、近傍ブロックBLNについて、現在関節奥行DCより小さい関節奥行DPが保存されている場合には、近傍ブロックBLNについての、動き探索の開始ブロックの位置の算出の処理を終了する。
【0070】
近傍ブロックBLNについての算出済の動き探索の開始ブロックの位置を更新するか否かの判断のための条件式は、前述の式(3)のように示し得る。符号化部153は、現在関節奥行DCが式(3)を満たさない場合に、近傍ブロックBLNについての、算出済の動き探索の開始ブロックの位置を更新する。符号化部153は、現在関節奥行DCが式(3)を満たす場合には、近傍ブロックBLNについての、動き探索の開始ブロックの位置の算出の処理を終了する。
【0071】
なお、ここまで説明した追加処理が行われるか否かは、現在関節奥行DCと所定の閾値との関係に基づいて決定されてもよい。例えば、現在関節奥行DCが所定の閾値Thrより小さい場合にのみ追加処理が行われてもよい。また、閾値が複数設定され、現在関節奥行DCと複数の閾値との関係に応じて追加処理が行われるブロックの個数を決定してもよい。例えば、追加処理が行われるか否かの条件として、第1の閾値および第2の閾値が設定されてもよい。例えば、第1の閾値より現在関節奥行DCが大きい場合に、現在関節座標Cを含むブロックBLcを囲う8つのブロックに対する追加処理を行ってもよい。また、現在関節奥行が第2の閾値より大きく、第1の閾値以下である場合に、現在関節座標Cを含むブロックBLcと接する4ブロックに対する追加処理を行ってもよい。
【0072】
追加処理を行うか否かの判断のための条件式は、下記の式(6)のように示し得る。
【0073】
Thr>DC ・・・(6)
【0074】
符号化部153は、現在関節奥行DCが式(6)を満たさない場合に、符号化部153は、追加処理を行う。符号化部153は、現在関節奥行DCが式(6)を満たす場合には、追加処理を行わない。
【0075】
現在関節座標を含むブロックの近傍に存在するブロック内の画素は、対象関節がカメラから遠い場合には、現在関節座標を含むブロック内の画素と異なる動きを行っている可能性が高い。一方、対象関節がカメラから近い場合には、関節を表す画素が対象ブロックからはみ出して近傍ブロックにまで及んでいる可能性が高い。つまり、この場合、現在関節座標を含むブロックの近傍に存在するブロック内の画素は、現在関節座標を含むブロック内の画素と略同一の動きを行っている可能性が高い。
【0076】
そのため、符号化部153は、現在関節奥行DCが閾値Thrより小さい場合にのみ追加処理を行う。当該条件によって追加処理を行うか否かを判断することにより、現在関節座標を含むブロックの近傍に存在するブロック内の画素が、現在関節座標を含むブロック内の画素と略同一の動きを行っている可能性が高いときにのみ、追加処理を行うことが可能である。かかる処理により、映像の符号化効率がより向上できる。
【0077】
なお、閾値Thrは、被写体の関節の三次元座標とカメラとの距離と、当該関節を表す画素がフレーム内を占める大きさとの関係に基づいて設定されてもよい。例えば、関節がフレーム内を占める大きさが9ブロック分になる、被写体の関節の三次元座標とカメラとの距離を、閾値Thrとして設定してもよい。なお、閾値Thrは、関節の種類によって異なる値が設置されてもよい。
【0078】
ここまで、開始位置算出処理および追加処理について説明した。符号化部153は、特定部152によって二次元座標が特定された全ての関節について開始位置算出処理を終了すると、算出された開始位置から動き探索を行い、映像を符号化する。なお、開始位置算出処理によって開始位置が算出されなかったブロックについては、直前フレームのうち、対象フレームにおける当該ブロックの位置と同一の位置のブロックの位置を算出して、当該ブロックを開始位置として動き探索を行ってもよい。
【0079】
符号化部153は、映像を符号化すると、符号化した映像を記憶部140に記憶させてもよい。また、符号化部153は、当該符号化した映像を、ネットワークを介して外部に送信してもよい。
【0080】
<2.動作処理例>
(映像符号化装置10の動作例)
続いて、本実施形態による映像符号化装置10の動作例を説明する。図7は、本実施形態による映像符号化装置10の動作例を示すフローチャートである。まず、骨格推定部151は、映像取得部110によって取得された映像に映る被写体の関節の三次元座標を推定する(S104)。
【0081】
続いて、特定部152は、映像取得部110によって取得された映像における被写体の関節の二次元座標を特定する(S108)。
【0082】
続いて、符号化部153は、開始位置算出処理の対象となる関節である対象関節を決定する(S112)。そして、符号化部153は、対象関節について開始位置決定処理を行う(S116)。
【0083】
制御部150は、特定部152によって二次元座標が特定された被写体の全関節について開始位置算出処理が終了したか否かを判定する(S120)。全関節について開始位置算出処理が終了していない場合には(S120/No)、符号化部153は、全関節について開始位置算出処理が終了するまでS112およびS116の処理を繰り返す。
【0084】
全関節について開始位置算出処理が終了した場合には(S120/Yes)、符号化部153は、開始位置算出処理によって算出された開始位置から動き探索し、映像取得部110によって取得された映像を符号化する(S200)。
【0085】
(開始位置決定処理の動作例)
ここで、図8を参照して、S116にて行われる開始位置算出処理の動作を詳しく説明する。図8は、本実施形態による映像符号化装置10による開始算出決定処理の動作例を示すフローチャートである。
【0086】
まず、符号化部153は、対象フレームが対象関節を含むか否かを判断する(S122)。対象フレームが対象関節を含まない場合(S122/No)、符号化部153は開始位置算出処理を終了する。
【0087】
対象フレームが対象関節を含む場合(S122/Yes)、符号化部153は、対象関節を含むブロックを特定する(S124)。続いて、符号化部153は、直前フレームが存在するか否かを判断する(S128)。直前フレームが存在しない場合(S128/No)、符号化部153は開始位置算出処理を終了する。
【0088】
直前フレームが存在する場合(S128/Yes)、符号化部153は、直前フレームが対象関節を含むか否かを判断する(S132)。直前フレームが対象関節を含まない場合(S132/No)、符号化部153は開始位置算出処理を終了する。
【0089】
直前フレームが対象関節を含む場合(S132/Yes)、特定部152は対象関節の三次元座標とカメラの距離を特定する(S136)。
【0090】
続いて、符号化部153は、対象関節を含むブロックが補正探索状態か否かを判断する(S140)。対象関節を含むブロックが補正探索状態の場合(S140/Yes)、符号化部153は、対象関節を含むブロックについての関節奥行より、対象関節の三次元座標とカメラの距離が小さいか否かを判断する(S144)。
【0091】
対象関節の三次元座標とカメラの距離が、対象関節を含むブロックについての関節奥行以上である場合(S144/No)、符号化部153は開始位置算出処理を終了する。対象関節を含むブロックについての関節奥行より対象関節の三次元座標とカメラの距離が小さい場合(S144/Yes)、符号化部153は、動き探索の開始ブロックの位置を算出し、算出済の動き探索の開始ブロックの位置を更新する(S148)。
【0092】
対象関節を含むブロックが通常状態の場合(S140/No)、符号化部153は、動き探索の開始ブロックの位置を算出する(S148)。
【0093】
符号化部153は、動き探索の開始ブロックの位置を算出すると、対象関節を含むブロックの状態を補正探索状態として保存する(S152)。続いて、符号化部153は、対象関節の三次元座標とカメラの距離を関節奥行として保存する(S156)。
【0094】
続いて、符号化部153は、閾値Thrより関節奥行が小さいか否かを判断する(S160)。閾値Thrより関節奥行が小さい場合(S160/Yes)、符号化部153は近傍ブロックについて追加処理を行い、開始位置算出処理を終了する(S164)。関節奥行が閾値Thr以上の場合(S160/No)、符号化部153は開始位置算出処理を終了する。
【0095】
(追加処理の動作例)
ここで、図9を参照して、S164にて行われる追加処理の動作を詳しく説明する。図9は、本実施形態による映像符号化装置10による追加処理の動作例を示すフローチャートである。
【0096】
まず、符号化部153は、対象関節を含むブロックについての近傍ブロックを決定する(S168)。符号化部153は、決定された近傍ブロックが映像範囲内か否かを判断する(S172)。
【0097】
決定された近傍ブロックが映像範囲外の場合(S172/No)、符号化部153は処理をS196に進める。
【0098】
決定された近傍ブロックが映像範囲内の場合(S172/Yes)、符号化部153は、近傍ブロックが補正探索状態か否かを判断する(S176)。近傍ブロックが補正探索状態の場合(S176/Yes)、符号化部153は、近傍ブロックの決定済奥行より、対象関節を含むブロックについての関節奥行が小さいか否かを判断する(S180)。
【0099】
対象関節を含むブロックについての関節奥行が、近傍ブロックの決定済奥行以上である場合(S180/No)、符号化部153は処理をS196に進める。近傍ブロックの決定済奥行より、対象関節を含むブロックについての関節奥行が小さい場合(S180/Yes)、符号化部153は、近傍ブロックについての動き探索の開始ブロックの位置を算出し、算出済の動き探索の開始ブロックの位置を更新する(S184)。
【0100】
近傍ブロックが通常状態の場合(S176/No)、符号化部153は、動き探索の開始ブロックの位置を算出する(S184)。
【0101】
符号化部153は、動き探索の開始ブロックの位置を算出すると、近傍ブロックの状態を補正探索状態として保存する(S188)。続いて、符号化部153は、対象関節を含むブロックについての関節奥行を近傍ブロックの関節奥行として保存する(S192)。
【0102】
符号化部153は、全近傍ブロックについて処理が行われていない場合には(S196/No)、全近傍ブロックについて処理が終了するまでS168~S192の処理を繰り返す。全近傍ブロックについて処理が行われた場合には(S196/Yes)、符号化部153は追加処理を終了する。
【0103】
<3.ハードウェア構成例>
続いて、本発明の実施形態に係る映像符号化装置10のハードウェア構成例について説明する。以上説明した情報処理は、ソフトウェアと以下に説明する映像符号化装置10のハードウェアとの協働により実現される。
【0104】
以下では、本発明の実施形態に係る映像符号化装置10のハードウェア構成例として、情報処理装置900のハードウェア構成例について説明する。なお、以下に説明する情報処理装置900のハードウェア構成例は、映像符号化装置10のハードウェア構成の一例に過ぎない。したがって、映像符号化装置10のハードウェア構成は、以下に説明する情報処理装置900のハードウェア構成から不要な構成が削除されてもよいし、新たな構成が追加されてもよい。
【0105】
図10は、本発明の実施形態に係る映像符号化装置10の例としての情報処理装置900のハードウェア構成を示す図である。情報処理装置900は、CPU(Central Processing Unit)901と、ROM(Read Only Memory)902と、RAM(Random Access Memory)903と、ホストバス904と、ブリッジ905と、外部バス906と、インタフェース907と、入力装置908と、出力装置909と、ストレージ装置910と、通信装置911と、を備える。
【0106】
CPU901は、演算処理装置および制御装置として機能し、各種プログラムに従って情報処理装置900内の動作全般を制御する。また、CPU901は、マイクロプロセッサであってもよい。ROM902は、CPU901が使用するプログラムや演算パラメータ等を記憶する。RAM903は、CPU901の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を一時記憶する。これらはCPUバス等から構成されるホストバス904により相互に接続されている。
【0107】
ホストバス904は、ブリッジ905を介して、PCI(Peripheral Component Interconnect/Interface)バス等の外部バス906に接続されている。なお、必ずしもホストバス904、ブリッジ905および外部バス906を分離構成する必要はなく、1つのバスにこれらの機能を実装してもよい。
【0108】
入力装置908は、マウス、キーボード、タッチパネル、ボタン、マイクロフォン、スイッチおよびレバー等ユーザが情報を入力するための入力手段と、ユーザによる入力に基づいて入力信号を生成し、CPU901に出力する入力制御回路等から構成されている。情報処理装置900を操作するユーザは、この入力装置908を操作することにより、情報処理装置900に対して各種のデータを入力したり処理動作を指示したりすることができる。
【0109】
出力装置909は、例えば、CRT(Cathode Ray Tube)ディスプレイ装置、液晶ディスプレイ(LCD)装置、OLED(Organic Light Emitting Diode)装置、ランプ等の表示装置およびスピーカ等の音声出力装置を含む。
【0110】
ストレージ装置910は、データ格納用の装置である。ストレージ装置910は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置等を含んでもよい。ストレージ装置910は、例えば、HDD(Hard Disk Drive)で構成される。このストレージ装置910は、ハードディスクを駆動し、CPU901が実行するプログラムや各種データを格納する。
【0111】
通信装置911は、例えば、ネットワークに接続するための通信デバイス等で構成された通信インタフェースである。また、通信装置911は、無線通信または有線通信のどちらに対応してもよい。
【0112】
<4.補足>
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【0113】
例えば、上記では、センサ情報取得部120によって取得された情報に基づいて、骨格推定部151が被写体の骨格を推定する例について説明したが、被写体の骨格は、Kinect(登録商標)等によって取得された情報に基づいて推定されてもよい。
【0114】
また、上記では、特定部152が被写体の関節の三次元座標とカメラとの距離を特定する例について説明した。しかし、深度センサまたは赤外線センサの座標系がカメラの座標系と予めキャリブレーションされることで、特定部152は、被写体の関節の、カメラの座標系での三次元座標とカメラとの距離を特定してもよい。
【符号の説明】
【0115】
10 映像符号化装置
110 映像取得部
120 センサ情報取得部
140 記憶部
150 制御部
151 骨格推定部
152 特定部
153 符号化部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10