JP6918648B2 - 画像処理装置、画像処理方法及びプログラム - Google Patents

画像処理装置、画像処理方法及びプログラム Download PDF

Info

Publication number
JP6918648B2
JP6918648B2 JP2017167232A JP2017167232A JP6918648B2 JP 6918648 B2 JP6918648 B2 JP 6918648B2 JP 2017167232 A JP2017167232 A JP 2017167232A JP 2017167232 A JP2017167232 A JP 2017167232A JP 6918648 B2 JP6918648 B2 JP 6918648B2
Authority
JP
Japan
Prior art keywords
virtual light
image processing
operation mode
processing apparatus
image 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.)
Active
Application number
JP2017167232A
Other languages
English (en)
Other versions
JP2019046055A (ja
JP2019046055A5 (ja
Inventor
千晶 金子
千晶 金子
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2017167232A priority Critical patent/JP6918648B2/ja
Priority to US16/113,354 priority patent/US20190066734A1/en
Publication of JP2019046055A publication Critical patent/JP2019046055A/ja
Publication of JP2019046055A5 publication Critical patent/JP2019046055A5/ja
Application granted granted Critical
Publication of JP6918648B2 publication Critical patent/JP6918648B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/036Insert-editing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/74Circuits for processing colour signals for obtaining special effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Description

本発明は、撮像画像に対して仮想的な照明効果を加えるための仮想ライティング処理に関する。
従来から、動画像に仮想的な照明効果を加える仮想ライティング処理に関する技術として、画像の3次元空間情報を用いたハイライト生成技術が知られている(特許文献1参照)。特許文献1には、画像(動画)中の2つ以上のキーフレームに対して、ユーザが加えたいハイライトの位置や形状を画像上で指定し、画像の3次元空間情報に基づいて画像中の被写体表面上にハイライトを生成する方法が記載されている。
特開2005−11100号公報
特許文献1に記載された方法は、被写体を追従して照らす仮想ライトの位置姿勢を補間により求めるものである。しかし、被写体の動きと無関係に移動するような仮想ライトにより生じるハイライトに関しては、その位置や形状を補間により求めることはできない。被写体の動きと無関係に移動するような仮想ライトとは、例えば、画像を撮像したカメラに追従して移動するライトや、画像に写っているシーン中の特定の位置に存在するライトである。したがって、特許文献1に記載された方法では、仮想ライトの動き方によっては、該仮想ライトにより生じるハイライトの位置や形状をユーザが推測してフレーム毎に指定しなければならず、非常に手間がかかるという課題があった。
そこで本発明は、仮想ライトの動き方を複数パターンから選択可能とし、且つ動作モードに応じて移動する仮想ライトの位置姿勢を簡便に設定することを可能とすることを目的とする。
本発明による画像処理装置は、入力動画像データに含まれる複数フレームのうち少なくとも1つのフレームに対して、仮想ライトの動きを規定する第1の動作モードと、前記第1の動作モードとは異なる前記仮想ライトの動きを規定する第2の動作モードとを少なくとも含む複数の動作モードのうち、1つの動作モードを選択する設定手段と、前記設定手段により設定された動作モードに基づいて、前記複数フレームに設定する前記仮想ライトのパラメータを導出する導出手段と、前記導出手段により導出された前記仮想ライトのパラメータに基づいて、前記複数フレームそれぞれに対して前記仮想ライトによる照明効果を加えるライティング処理を実行する実行手段と、を備えることを特徴とする。
本発明により、仮想ライトの動き方を複数パターンから選択でき、且つ動作モードに応じて移動する仮想ライトの位置姿勢を簡便に設定することができる。
第1実施形態に係る画像処理装置のハードウェア構成を示す図。 第1実施形態に係る画像処理装置の内部構成を示す機能ブロック図。 第1実施形態に係る出力動画像データ生成処理を示すフローチャート。 第1実施形態に係る、仮想ライトの設定を行うためのUI画面の例を示す図。 動作モードに応じた仮想ライトの動作の例を示す図。 第2実施形態に係る画像処理装置の内部構成を示す機能ブロック図。 カメラの設置状態及び取得可能な位置姿勢情報と動作モードの選択肢との関係の例を示す図。 カメラの設置状態や各種センサにより取得した位置姿勢情報を利用する設定を行うためのUI画面の例を示す図。 選択肢情報の例を示す図。 第2実施形態に係る出力動画像データ生成処理を示すフローチャート。 第2実施形態に係る、仮想ライトの設定を行うためのUI画面の例を示す図。 第3実施形態に係る、仮想ライトの設定を行うためのUI画面の例を示す図。
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を必ずしも限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成については、同じ符号を付して説明する。
[実施形態1]
本実施形態では、動画像中の編集対象とするフレームの範囲(編集範囲と呼ぶ)の先頭フレームに対して設定された仮想ライトの位置姿勢を示す情報を、仮想ライトの動きを規定する動作モードに応じた座標空間において編集範囲内の各フレームに伝搬する。それにより、動作モードごとにふるまいの異なる仮想ライトを設定可能とする。本実施形態では、カメラ基準モード、被写体基準モード、及びシーン基準モードの3種から仮想ライトの動作モードを選択することができる。それぞれの動作モードについては、後述する。
図1は、本実施形態における画像処理装置のハードウェア構成例を示す図である。画像処理装置100は、CPU101、RAM102、ROM103、HDD104、HDD I/F105、入力I/F106、出力I/F107、及びシステムバス108で構成される。
CPU101は、RAM102をワークメモリとして、ROM103及びハードディスクドライブ(HDD)104に格納されたプログラムを実行し、システムバス108を介して後述する各部を制御する。HDDインタフェイス(I/F)105は、HDD104や光ディスクドライブなどの二次記憶装置を接続する、例えばシリアルATA(SATA)等のインタフェイスである。CPU101は、HDDI/F105を介して、HDD104からのデータ読み出し、及びHDD104へのデータ書き込みが可能である。さらにCPU101は、HDD104に格納されたデータをRAM102に展開し、同様に、RAM102に展開されたデータをHDD104に保存することが可能である。そしてCPU101は、RAM102に展開したデータ(プログラム等)を実行することができる。入力I/F106は、入力装置109を接続する。入力装置109は、マウスやキーボード等の入力デバイスであり、入力I/F106は、例えばUSB等のシリアルバスインタフェイスである。CPU101は、入力I/F106を介して入力装置109から各種信号を受け取ることが可能である。出力I/F107は、ディスプレイ110等の表示デバイスを接続する、例えばDVI等の映像出力インタフェイスである。CPU101は、出力I/F107を介してディスプレイ110にデータを送り、表示を実行させることができる。なお、USBやIEEE1394等の双方向通信インタフェイスを利用すれば、入力I/F106と出力I/F107とを一つにまとめることができる。
図2は、第1実施形態に係る画像処理装置100の内部構成を示す機能ブロック図である。画像データ取得部201は、HDD104等の記憶装置から、複数のフレームの各々に対応する画像データ(フレーム画像データ)と各画像データに対応する被写体の3次元情報とを含む動画像データを取得する。被写体の3次元情報とは、3次元空間中における被写体の位置と形状とを表す情報である。本実施形態では、被写体の表面形状を表すポリゴンデータを被写体の3次元情報として用いる。なお、被写体の3次元情報は、フレーム画像(フレーム画像データによって示される画像)における被写体の位置と形状とを特定できるものであればよく、例えば、NURBS曲面などで表現されるパラメトリックモデルでもよい。取得された動画像データは、入力動画像データとしてパラメータ設定部202に送られる。
パラメータ設定部202は、ユーザの指示に基づき入力動画像データに含まれる複数フレームのうち編集の対象とする編集範囲を設定する。さらに、編集範囲内のフレームを代表するキーフレームに対して仮想ライトの動きを規定する動作モードとライティングパラメータを設定する。詳細は後述する。設定された編集範囲及び仮想ライトの動作モードとライティングパラメータは、入力動画像データと対応付けられて画像データ生成部203に送られる。
画像データ生成部203は、キーフレームに対して設定された仮想ライトの動作モードとライティングパラメータに基づき、入力動画像データ中の編集範囲内の各フレームに対して仮想ライトを設定する。また、画像データ生成部203は、各フレームに対して設定した仮想ライトと、各フレームの画像データと、各画像データに対応する被写体の3次元情報とを用いて、仮想ライトによるライティングを加えた出力フレーム画像データを生成する。そして、入力動画像データ中の編集範囲内の画像データ(入力フレーム画像データ)を出力フレーム画像データで置き換え、これを出力動画像データとする。各フレームに対する仮想ライトの設定方法、及び、出力フレーム画像データの生成方法についての詳細は後述する。生成された出力動画像データは、HDD104等の記憶装置に送られて記憶されるとともに、ディスプレイ110に送られて表示される。
図3は、第1実施形態に係る出力動画像データ生成処理を示すフローチャートである。図3に示す手順を記述した、コンピュータで実行可能なプログラムを、ROM103あるいはHDD104からRAM102上に読み込んだ後に、CPU101によって該プログラムを実行することによって、出力動画像データ生成処理が実現される。
ステップS301において、画像データ取得部201は、HDD104等の記憶装置から入力動画像データを取得し、取得した入力動画像データをパラメータ設定部202に渡す。
ステップS302において、パラメータ設定部202は、画像データ取得部201から受け取った入力動画像データに対して編集範囲を設定する。本実施形態では、編集範囲を先頭フレームの時刻t0と、時刻t0からの経過時間dtとで表す。図4には、入力動画像データに対して仮想ライトの設定を行うためのユーザインタフェイス(UI)画面400が示されている。時間軸411は、入力動画像データの全フレームに対する時間軸であり、時間軸上の「0」は先頭フレームの時刻を表し、「xxxx」は最終フレームの時刻を表す。マーカ412,413はそれぞれ、編集範囲の先頭フレームと末尾フレームの位置を表す。先頭フレーム入力欄421と範囲入力欄422はそれぞれ、先頭フレームと編集範囲とを指定するための入力欄である。パラメータ設定部202は、図4(a)に示すUI画面400をディスプレイ110に表示し、先頭フレーム入力欄421、範囲入力欄422に入力された値をそれぞれ、時刻t0、時刻dtとして設定する。なお、時刻t0に替えて個々のフレームを識別するフレームIDを用いて編集範囲の先頭フレームを設定してもよいし、経過時間dtに替えて編集範囲内に含めるフレーム数を設定してもよい。また、編集範囲内のいずれかの1フレームと、該フレームを起点として前後に連続するフレームの個数とを編集範囲として設定してもよい。
ステップS303において、パラメータ設定部202は、ステップS302で設定された編集範囲の先頭フレーム(すなわち、時刻t0のフレーム)をキーフレームとし、該キーフレームの画像データをディスプレイ110に出力する。すると、UI画面400上の画像表示欄414にキーフレームの画像が表示される。ユーザは、入力装置109を介してUI画面400を操作することで、以降で説明する仮想ライトの設定を行うことができる。
ステップS304において、パラメータ設定部202は、UI画面400上の仮想ライト選択リスト431においてユーザにより選択された仮想ライトを、以降で説明する動作モード及びライティングパラメータの設定対象に決定する。仮想ライト選択リスト431では、プルダウンボタン(図4(a)に示す黒色の逆三角形のボタン)が押下されると、設定対象として選択可能な仮想ライトの一覧がリスト表示され、ユーザはその中から1つを選択することができる。ここで、設定対象として選択可能な仮想ライトとは、例えば、新規仮想ライトや、画像表示欄414に表示中のキーフレームに対して既に設定されている仮想ライトである。なお、上述したリストから仮想ライトを選択する以外に、ラジオボタンやチェックボックスを用いて仮想ライトを選択したり、個々の仮想ライトを識別する仮想ライトIDを入力して仮想ライトを選択したりしてもよい。また、設定対象とする仮想ライトを特定できれば他のUI画面を介して仮想ライトを選択するようにしてもよい。また、複数の仮想ライトが同時に選択可能であってもよい。
ステップS305において、パラメータ設定部202は、図4(a)に示すUI画面上の動作モード選択リスト432においてユーザにより選択された動作モードを、ステップS304で選択した仮想ライトの動作モードとして設定する。本実施形態では、上述したように、カメラ基準モード、被写体基準モード、及びシーン基準モードの3種から動作モードを選択可能である。図5(a)〜(c)に、各モードにおける仮想ライトの動作の例を示す。図5(a)に示すカメラ基準モードは、仮想ライト501がカメラに追従して動くモードである。つまりカメラの位置に応じて仮想ライト501の位置が決定されるモードである。図5(a)において、カメラ502,503,504はそれぞれ、時刻t0,t,t0+dtのフレーム画像を撮像したカメラを示している。また、図5(a)における矢印は、カメラに追従して仮想ライト501が移動する様子を示している。図5(b)に示す被写体基準モードは、仮想ライト501が被写体に追従して動くモードである。つまり被写体の位置に応じて仮想ライト501の位置が決定されるモードである。図5(b)において、被写体505,506,507はそれぞれ、時刻t0,t,t0+dtにおける被写体の様子を示している。図5(b)における矢印は、被写体に追従して仮想ライト501が移動する様子を示している。図5(c)に示すシーン基準モードは、仮想ライト501がシーン(撮影現場)中に独立して存在し、その動きがカメラや被写体の動きに依存しないモードである。つまりカメラや被写体以外に指定される位置に応じて仮想ライト501の位置が決定されるモードである。これらの動作モードは、動作モード選択リスト432のプルダウンボタンが押下された際にリスト表示され、ユーザはその中から1つを選択することができる。図4(b)に、動作モード選択リスト432のプルダウンボタンが押下された際の表示例を示す。なお、動作モードは1つに特定できれば良く、プルダウンリストから動作モードを選択する以外に、ラジオボタン等を用いて動作モードを選択するようにしてもよい。
選択された仮想ライトの動作モードが被写体基準モードである場合には、基準とする被写体を併せて設定する。例えば、画像表示欄414に表示されているキーフレーム画像上において、基準としたい被写体(以下、基準被写体と呼ぶ)に相当する領域をユーザがマウスなどの入力デバイスを用いて選択し、該領域の画像データを基準被写体情報として記憶する。基準被写体情報はフレーム画像上で被写体の位置姿勢を特定できる情報であればよく、上記以外の方法を用いて設定されてもよい。
ステップS306において、パラメータ設定部202は、キーフレームに対して、ステップS304で選択した仮想ライトに関するライティングパラメータを設定する。ここで、ライティングパラメータとは、位置姿勢(3次元空間中での位置と向き)及び発光特性(色、明るさ、配光特性、照射範囲など)を表すパラメータである。本実施形態では、時刻tにおける仮想ライトの位置姿勢を示す情報(以下、位置姿勢情報と呼ぶ)として、時刻tにおけるカメラ座標系で表された位置座標p(t)及び方向ベクトルv(t)を用いる。ここで、カメラ座標系とは、フレーム画像を撮像したカメラの位置姿勢に基づく座標系である。図5(a)を例に用いると、時刻t0,t,t0+dtにおけるカメラの位置Ocを原点とし、カメラの水平右向き方向、垂直上向き方向、正面方向をそれぞれ、Xc軸、Yc軸、Zc軸とする座標系が、各時刻におけるカメラ座標系を表している。
UI画面400の位置姿勢入力欄433には、キーフレームに対する仮想ライトの位置姿勢情報p(t0)、v(t0)を設定するための項目が配置されている。図4(a)に示す例では、位置姿勢情報として、仮想ライトの時刻t0における位置座標(xyz値)と向き(xyz値)とが設定可能である。また、UI画面400の発光特性設定欄434には、仮想ライトの発光特性を設定するための項目が配置されている。図4(a)に示す例では、発光特性として、配光の種類(点光源、平行光源)、ビーム角度、明るさ、及び色温度が設定可能である。表示欄441には、仮想ライトのxz座標系における設定状態を示すイメージが表示され、表示欄442には、仮想ライトのxy座標系における設定状態を示すイメージが表示される。
ステップS307において、画像データ生成部203は、ステップS302で設定した編集範囲内の各フレームに対して、ステップS304で選択した仮想ライトに関するライティングパラメータを設定する。このとき、画像データ生成部203は、ステップS305で設定した動作モードとステップS306でキーフレームに対して設定したライティングパラメータとに基づき、各フレームに対してライティングパラメータを設定する。本実施形態では、仮想ライトの動作モード及び発光特性は編集範囲内で一定であるものとする。よって、編集範囲内の全フレームに対して、ステップS305で設定した動作モードと同一の動作モードと、ステップS306で設定した発光特性と同一の発光特性とが設定されるものとする。また、仮想ライトの位置姿勢情報は、ステップS305で設定した動作モードに応じて、ステップS306でキーフレームに対して設定した位置姿勢情報に基づき設定する。以下、編集範囲内の各フレームに対する位置姿勢情報の設定について、仮想ライトの動作モードごとに説明する。
[カメラ基準モード]
動作モードがカメラ基準モードである仮想ライトについては、編集範囲内においてフレーム画像を撮像したカメラに対する相対位置関係が保たれるように、各フレームにおける位置姿勢情報が設定される。あるフレーム画像を撮像した際のカメラ座標系で表されたライトの位置座標pや方向ベクトルvは、そのフレーム画像を撮像したカメラに対する相対的な位置座標及び向きを表している。したがって、ステップS305でカメラ基準モードが選択された場合には、ステップS306でキーフレームに対して設定された仮想ライトの位置座標p(t0)及び方向ベクトルv(t0)と同一の値が、編集範囲内の各フレームに対して設定される。具体的には、位置座標p(t0)及び方向ベクトルv(t0)と同一の値が、各フレームにおける仮想ライトの位置座標p(t)及び方向ベクトルv(t)として設定される。
[被写体基準モード]
動作モードが被写体基準モードである仮想ライトについては、編集範囲内において基準被写体に対する相対位置関係が保たれるように、各フレームにおける位置姿勢情報が設定される。
まず、ステップS306においてキーフレームに対して設定された(キーフレームカメラ座標系で表された)仮想ライトの位置座標p(t0)と方向ベクトルv(t0)が、被写体座標系での値po(t0)、vo(t0)に変換される。これにより、ステップS305で設定した動作モードに基づく、位置座標p(t0)と方向ベクトルv(t0)とが取得される。被写体座標系とは、基準被写体の位置姿勢に基づく座標系である。図5(b)に示される被写体505,506,507はそれぞれ、時刻t0,t,t0+dtにおける基準被写体である。そして、各時刻における被写体座標系は、各時刻における基準被写体の位置Ooを原点とし、基準被写体の水平右向き方向、垂直上向き方向、正面方向をそれぞれ、Xo軸、Yo軸、Zo軸とする座標系である。
被写体座標系で表された位置座標や方向ベクトルは、基準被写体に対する相対的な位置座標及び向きを表している。そのため、編集範囲内の各フレームにおいて、それぞれのフレームにおける被写体座標系で仮想ライトの位置座標及び向きを表す際は、それらの値がキーフレームにおける値と同一となるように設定すればよい。それにより、キーフレーム以外のフレームにおいても、基準被写体に対する仮想ライトの相対位置関係が保たれることとなる。従って、キーフレームにおける被写体座標系で表された位置座標po(t0)及び方向ベクトルvo(t0)と同一の値が、編集範囲内の各フレームにおける被写体座標系で表された仮想ライトの位置座標po(t)及び方向ベクトルvo(t)に設定される。そして、これらの位置姿勢情報po(t)(=po(t0))、vo(t)(=vo(t0))を各フレームにおけるカメラ座標系に変換して導出された値が、各フレームにおける仮想ライトの位置座標p(t)及び方向ベクトルv(t)として設定される。
一般に、ある座標系(XYZ座標系)で表された座標(x,y,z)から他の座標系(X´Y´Z´座標系)で表された座標(x´,y´,z´)への座標変換は、次式で表される。
Figure 0006918648
ここで、(O´x,O´y,O´z)、(X´x,X´y,X´z)、(Y´x,Y´y,Y´z)、(Z´x,Z´y,Z´z)はそれぞれ、XYZ座標系で表されたX´Y´Z´座標系の原点O´の座標及びX´、Y´、Z´軸方向の単位ベクトルである。式1を用いることで、キーフレームカメラ座標系での位置座標p(t0)及び方向ベクトルv(t0)を被写体座標系に変換した、位置座標po(t0)及び方向ベクトルvo(t0)が得られる。その際、キーフレーム(すなわち時刻t0)における被写体座標系の原点Oo及び座標軸Xo,Yo,ZoをO´,X´,Y´,Z´として式1を用いればよい。また、各フレームにおける被写体座標系からカメラ座標系への変換は、各フレームのカメラ座標系で表された被写体座標系の原点Oo及び座標軸Xo,Yo,Zo方向の単位ベクトルを用いて、式1の逆変換により求められる。
なお、キーフレームを含む各フレームにおける、カメラ座標系での基準被写体の位置座標と向き(すなわち、カメラ座標系で表された被写体座標系の原点座標及び座標軸方向)は、いずれの方法を用いて取得してもよい。例えば、ステップS305において記憶した基準被写体情報を用いたテンプレートマッチングや、その他の動体追跡技術を用いて取得してもよい。被写体の位置姿勢取得については本発明の主眼ではないため、詳細な説明を省略する。
[シーン基準モード]
動作モードがシーン基準モードである仮想ライトについては、編集範囲内においてシーン中に設定した基準位置との相対位置関係が保たれるように、各フレームにおける位置姿勢情報が設定される。本実施形態では、キーフレームカメラの位置をシーンの基準位置Osとし、キーフレームカメラ座標系をシーンの基準座標系(以後、シーン座標系と呼ぶ)として用いる。基準位置に対する仮想ライトの相対位置関係を保つには、先述した被写体基準モード時における被写体座標系をシーン座標系に置き換えて考えればよい。ただし、キーフレームカメラ座標系をシーン座標系として用いる場合、キーフレームカメラ座標系からシーン座標系への位置姿勢情報の変換は不要となる。その理由は、ステップS306でキーフレームに対して設定された仮想ライトの位置座標p(t0)と方向ベクトルv(t0)の値がそのままシーン座標系での仮想ライトの位置座標ps(t0)及び方向ベクトルvs(t0)となるからである。そして、位置姿勢情報ps(t0)、vs(t0)を各フレームにおけるカメラ座標系に変換した値を、各フレームにおける仮想ライトの位置座標p(t)及び方向ベクトルv(t)として設定する。シーン座標系(すなわちキーフレームカメラ座標系)から各フレームにおけるカメラ座標系への変換は、キーフレームカメラ座標系で表された各フレームにおけるカメラ座標系の原点Oc及び座標軸Xc,Yc,Zc方向の単位ベクトルを用いて式1で求められる。各フレームにおけるキーフレームカメラ座標系でのカメラの位置座標と向きは、公知のカメラ位置姿勢推定技術を用いて取得することができる。カメラ位置姿勢推定技術については本発明の主眼ではないため、詳細な説明を省略する。
ステップS308において、画像データ生成部203は、ステップS302で設定した編集範囲内の各フレームについて、出力フレーム画像データを生成する。このとき、ステップS301で取得した入力動画像データと、仮想ライトのライティングパラメータとから、仮想的なライティングを加えた出力フレーム画像データが生成される。そして、入力動画像データ中の編集範囲内の画像データを出力フレーム画像データで置き換え、置き換え後の入力動画像データを出力動画像データとする。以下、仮想ライトが設定された入力フレーム画像データから、仮想ライトの照明効果を加えた出力フレーム画像データを生成する方法について説明する。
まず、被写体の3次元情報と仮想ライトのライティングパラメータとに基づき、被写体を構成するポリゴンに関して、m番目の仮想ライトに照らされた際の明るさ(仮想反射強度と呼ぶ)を画素値として記録した画像Gmを生成する。ここで、m=0,1,・・・,M−1である。Mはフレームに設定されている仮想ライトの個数を表す。以下、上記画像Gmを仮想反射強度画像Gmと呼ぶ。本実施形態では、一般的な投影変換式である式2を用いて3次元空間中におけるポリゴンの頂点座標(x,y,z)を2次元画像上での画素位置(i,j)に変換する。さらに、この頂点に対応する仮想反射強度Iを以下の式3〜式7で表わされるフォンの鏡面反射モデルを用いて算出し、仮想反射強度画像Gmの画素位置(i,j)における画素値Gm(i,j)として格納する。ポリゴン内部に相当する画素については、ポリゴンを構成する各頂点に対応する仮想反射強度Iから補間した値を格納する。
Figure 0006918648
仮想反射強度I = ID + IA + IS ・・・式3
拡散反射光成分ID = Id * kd * ( N・L ) ・・・式4
環境光成分IA = Ia * ka ・・・式5
鏡面反射光成分IS = Is * ks * ( L・R )^n ・・・式6
反射ベクトルR = −E + 2( N・E )N ・・・式7
式2において、MsとMpはそれぞれ、入力フレーム画像の解像度や入力フレーム画像を撮像したカメラの画角から定まるスクリーン変換行列と射影変換行列である。また、dは画素位置(i,j)における被写体までの奥行き方向の距離に相当する。式3〜式7において、Id,Ia,Isはそれぞれ、拡散反射、環境光、鏡面反射に関する入射光の強さである。N,L,Eはそれぞれ、法線ベクトル、ライトベクトル(頂点から光源へ向かうベクトル)、視線ベクトル(頂点からカメラへ向かうベクトル)を表す。本実施形態では、ライティングパラメータ中の明るさをId,Ia,Isとして用い、ライトの向きvの逆ベクトルをLとして用いる。ただし、頂点がライティングパラメータで示される照明範囲外である場合には、Id,Ia,Isの値をゼロとする。また、式3〜式7の拡散反射係数kd、環境光の反射係数ka、鏡面反射係数ks及び鏡面反射指数nは、被写体に応じて予め対応付けられた値を設定してもよいし、ユーザによって指示された値を設定してもよい。なお、以上で説明した仮想反射強度画像Gmの生成には、コンピュータグラフィクスにおける一般的なレンダリング処理を利用可能である。また、上記の反射モデル以外の反射モデルを用いてもよい。レンダリング処理については本発明の主眼ではないため、詳細な説明を省略する。
次に、入力フレーム画像の画素位置(i,j)における画素値F(i,j)と、仮想反射強度画像の画素値Gm(i,j)(m=0,1,・・・,M−1)を用い、出力フレーム画像の画素値F´(i,j)を次式に従い算出する。
F’(I,j)=F(i,j)+G0(i,j) +G1(i,j) +・・・+GM-1(i,j) ・・・式8
このようにして出力フレーム画像データが生成される。この時、出力フレーム画像は、仮想ライトの位置姿勢と被写体の形状とに応じて入力フレーム画像の明るさが変更された画像となる。
なお、出力フレーム画像データの生成方法は上記に限らず、他の公知の手法を用いて生成してもよい。例えば、被写体の形状を表すポリゴンデータに入力フレーム画像をテクスチャとしてマッピングし、このテクスチャ付きのポリゴンをライティングパラメータに基づいて照らした状態をレンダリングしてもよい。
ステップS309において、画像データ生成部203は、出力動画像データをディスプレイ110へ出力して表示する。ステップS310において、パラメータ設定部202は、入力デバイスを介して編集完了の指示を受け付けると、一連の処理を終了する。編集完了の指示がない場合には、パラメータ設定部202は、ステップS302の処理に戻ってライトの設定を続行する。
以上説明した処理制御を行うことで、仮想ライトの動き方を複数パターン(複数の動作モード)から選択可能となる。また、選択した動作モードに応じて移動する仮想ライトの位置姿勢を簡便に設定することができる。また、キーフレーム以外の各フレームに対する仮想ライトの位置姿勢の設定をユーザが指定する必要がないので、ユーザに作業負荷をかけることがない。
なお、ステップS303において、キーフレームに対して既に設定されている仮想ライトが存在する場合は、該仮想ライトの各種パラメータとキーフレームの画像データとが画像データ生成部203に送られるようにしてもよい。そして、画像データ生成部203が、ライティング変更後の画像を生成してディスプレイ110に表示してもよい。
また、ステップS308において、入力動画像データ及び設定された仮想ライトの動作特性やライティングパラメータを、編集履歴データとして出力動画像データに対応付けて記憶してもよい。そのような形態によれば、出力動画像データに対する仮想ライトの再編集が容易となる。
[実施形態2]
第1実施形態では、動作モードをユーザが任意に選択する方法について説明した。しかし、入力動画像データを撮像した際の撮影機材や被写体の条件によっては、被写体やカメラの位置姿勢情報を常に取得できるとは限らない。これらの位置姿勢情報が得られないフレームでは、被写体基準モードやシーン基準モードでの仮想ライトの位置を算出することが困難となる。一方で、ユーザは出力動画像データが表示されるまで仮想ライティング処理が成功するか否かを知ることができず、処理に必要な位置姿勢情報が欠けていた場合には作業の手戻りが発生する。そこで、本実施形態においては、予め動画像データを解析し、各フレームにおいて選択可能な動作モードを限定する例について説明する。なお、本実施形態においても第1実施形態と同様に、カメラ基準モード、被写体基準モード、及びシーン基準モードの3種から動作モードが選択可能であるとする。
図6は、第2実施形態における画像処理装置100の内部構成を示す機能ブロック図である。画像データ生成部604は、第1実施形態における画像データ生成部203と同様であるため説明を省略する、以下では、第1実施形態と異なる部分を中心に説明する。
選択肢情報生成部601は、HDD104等の記憶装置から入力動画像データを取得し、当該入力動画像データを解析して選択肢情報を生成する。選択肢情報とは、動画像中の各フレームにおいて選択可能な動作モードを示す情報である。キーフレームに設定された仮想ライトの位置姿勢を編集範囲内の各フレームに伝搬する際、カメラ基準モードにおいては、被写体やカメラの位置姿勢情報を必要としない。一方、被写体基準モードまたはシーン基準モードにおいては、編集範囲内の各フレームにおける被写体またはカメラの位置姿勢情報が必要となる。つまり、カメラ基準モードは、全フレームについて設定可能であるが、被写体基準モード及びシーン基準モードは、必要な位置姿勢情報を取得できるフレームについてのみ設定可能である。したがって、本実施形態では、カメラ基準モードは、常に動作モードの選択肢に追加され、被写体基準モード及びシーン基準モードは、必要な位置姿勢情報を取得できる場合にのみ動作モードの選択肢に追加される。以下、動作モードの選択肢を、単に選択肢と表現する場合がある。なお、必要な位置姿勢情報とは、仮想ライトを点光源とする場合には被写体またはカメラの3次元位置座標と向きである。ただし、仮想ライトを平行光源とする場合には、位置姿勢情報として向きのみが取得できればよい。
被写体の位置姿勢情報が取得できるか否かは、入力動画像データの全フレームに対して予め用意した所望の被写体のテンプレート画像を用いたテンプレートマッチングや、公知の主被写体抽出技術や動体追跡技術を適用することにより判断可能である。例えばテンプレートマッチングを用いる場合には、テンプレート画像とフレーム画像との類似度が予め定めた閾値よりも小さい場合に、当該フレームにおいて被写体の位置姿勢情報を取得できないと判断することができる。
また、カメラの位置姿勢情報が取得できるか否かは、入力動画像データの全フレームに対して公知のカメラ位置姿勢推定技術を適用することにより判断可能である。例えば、推定したカメラ位置姿勢と被写体の3次元情報とを用いてフレーム画像に対する再投影誤差を算出し、この誤差が予め定めた閾値よりも大きい場合に、当該フレーム画像においてカメラの位置姿勢情報を取得できないと判断することができる。
なお、位置姿勢情報の一部または全部として、被写体やカメラに取り付けた加速度センサや位置センサの出力値を用いてもよい。その場合には、常に位置姿勢情報が取得できると判断してもよいし、各種センサが出力する検出成功または検出失敗の信号に基づいて位置姿勢情報の取得の可否を判断してもよい。
また、カメラの設置状態に基づき選択肢を生成してもよい。例えば、カメラが三脚に設置されている場合には、位置及び向き共に時間軸方向に変化せず、シーン座標系(すなわちキーフレームカメラ座標系)から各フレームにおけるカメラ座標系への変換が不要となる。したがって、選択肢情報生成部601は、常にシーン基準モードを選択肢に追加する。また例えば、カメラが自由雲台に設置されている場合には、カメラの位置は変化しないので、位置姿勢情報として向きが取得できればシーン座標系からカメラ座標系への変換が可能となる。したがって、その場合には、選択肢情報生成部601は、カメラの向きを取得できるか否かに応じてシーン基準モードを選択肢に追加する。また例えば、カメラが直線ドリーレール上に設置されていて向きが変化しない場合は、選択肢情報生成部601は、位置が取得できるか否かに応じてシーン基準モードを選択肢に追加する。図7に、カメラの設置状態及び取得可能な位置姿勢情報と動作モードの選択肢との関係の例を示す。
カメラの設置状態や各種センサにより取得した位置姿勢情報を利用する際の設定は、例えば図8に示すUI画面800を介してユーザが行う。UI画面800における入力欄801は、選択肢情報を生成したい動画像データのファイルを指定する欄である。入力欄802は、被写体の位置姿勢情報の取得方法を設定する欄である。入力欄801で指定された動画像データを解析して被写体の位置姿勢情報を取得する場合には、入力欄802において「画像から解析(ラジオボタン803)」を選択する。また、各種センサの出力値を記録した外部ファイルを参照して被写体の位置姿勢情報を取得する場合には、入力欄802において「フィルから読み込み(ラジオボタン804)」をチェックする。そして、参照する情報の種別(「位置」、「向き」、または「位置・向き」)と外部ファイルとを指定する。入力欄805は、カメラの位置姿勢情報の取得方法を設定する欄である。入力欄801で指定された動画像データを解析してカメラの位置姿勢情報を取得する場合には、ユーザは、入力欄805において、「画像から解析(ラジオボタン806)」を選択する。カメラの設置状態からカメラの位置姿勢情報を取得する場合には、ユーザは、「三脚使用」、「雲台使用」、及び「ドリー」のいずれかをラジオボタン807で選択する。また、各種センサの出力値を記録した外部ファイルを参照してカメラの位置姿勢情報を取得する場合には、ユーザは、入力欄805において「フィルから読み込み(ラジオボタン808)」を選択する。そして、ユーザは、参照する情報の種別(「位置」、「向き」、または「位置・向き」)と外部ファイルとを指定する。ラジオボタン809の生成開始ボタンが押下されると、入力欄802及び入力欄805の設定内容に応じて、画像解析、または外部ファイルからのデータの読み込みが行われ、入力欄801で指定された動画像データに対する選択肢情報が生成される。
生成される選択肢情報の例を図9(a)〜(e)に示す。図9(a)〜(e)に示す例では、各フレームに対する動作モードの選択肢が、1(選択可能)と0(選択不可)からなる3桁の数値で表されている。3桁の数値のうち3桁目、2桁目、1桁目がそれぞれ、カメラ基準モード、被写体基準モード、シーン基準モードの選択可否を示している。また、カメラや被写体の位置姿勢を取得できるか否か、あるいは、位置姿勢が変化しないかを併せて記録している。カメラや被写体の位置姿勢が取得できる場合には1が記録され、取得できない場合には0が記録され、位置姿勢が変化しない場合には2が記録される。図9(a)には、図8に示すUI画面800において、被写体位置姿勢及びカメラ位置姿勢の両方に関して「画像から解析」が選択された場合の例が示されている。また、図9(b)〜(e)には、被写体位置姿勢に関して「画像から解析」が選択され、カメラ位置姿勢に関して「三脚使用」、「雲台使用」、「ドリー」、「ファイルから読み込み(位置・向き)」の各々が選択された場合の例が示されている。生成された選択肢情報は、動画像データと対応付けられてHDD104等の記憶装置に記憶される。
画像データ取得部602は、第1実施形態の画像データ取得部201と同様に、被写体の3次元情報を含む入力動画像データを取得する。ただし、画像データ取得部602は、入力動画像データとともに、入力動画像データに対応付けられた選択肢情報を併せて取得する。取得された各種データは、パラメータ設定部603に送られる。
パラメータ設定部603は、第1実施形態のパラメータ設定部202と同様に、ユーザの指示に基づき入力動画像データに対して編集範囲を設定する。そして、パラメータ設定部603は、編集範囲内のフレームを代表するキーフレームに対して仮想ライトの動作モードとライティングパラメータを設定する。ただし、パラメータ設定部603は、入力動画像データと対応付けられた選択肢情報により示される選択肢の中から動作モードを選択して設定する。設定された編集範囲、及び仮想ライトの動作モードとライティングパラメータは、入力動画像データと対応付けられて画像データ生成部604に送られる。
以下、図10に示すフローチャートを用いて、本実施形態に係る画像処理装置100における編集処理の動作手順を説明する。
ステップS1001において、画像データ取得部602は、HDD104等の記憶装置から入力動画像データと選択肢情報とを取得する。なお、選択肢情報は予め選択肢情報生成部601により生成されているものとする。ステップS1002〜S1004の処理は、ステップS302〜S304の処理と同様であるため説明を省略する。
ステップS1005において、パラメータ設定部603は、ステップS1001で取得した選択肢情報に基づき、キーフレームに対応する選択肢を、図11(a)に示すUI画面1100上の動作モード選択リスト1102を介してユーザに提示する。そして、動作モード選択リスト1102を介してユーザにより選択された動作モードを、ステップS1004で選択した仮想ライトの動作モードとして設定する。図11(a)には、キーフレームとして図9(d)におけるNo.0104のフレームが設定された場合の表示例が示されている。このとき、ユーザにより選択された動作モードが編集範囲内のいずれかのフレームにおいて選択肢に含まれない場合には、パラメータ設定部603は、動作モードの再設定または編集範囲の再設定をユーザに促す。編集範囲の再設定を促す場合には、ユーザにより選択された動作モードが選択不可となるフレームを参考情報としてユーザに報知してもよい。例えば、フレームIDや当該フレームに相当する時刻を表示して知らせてもよいし、図11(a)に示すカーソル1101を用いて時間軸上での当該フレームの位置を知らせてもよい。その場合、所望の動作モードを設定できるフレームの範囲をユーザが把握しやすくなり、編集範囲の再設定が容易となる。
また、ユーザにより被写体基準モードまたはシーン基準モードが選択された場合において、カメラの位置姿勢情報として向きのみが取得されている場合には、仮想ライトの発光特性として「点光源」を選択不可とする。図11(a)においてシーン基準が選択された場合の例を同図(b)に示す。図11(a)(b)には上述したとおり、キーフレームとして図9(d)におけるNo.0104のフレームが設定された場合の表示例が示されていて、当該フレームは図9(d)に示されるように、カメラの位置座標が取得できないフレームである。そのため、図11(b)に示す発光特性設定欄1103では、「点光源」のラジオボタンを非表示(選択不可)としている。
なお、動作モードの選択肢をユーザに提示する際に、キーフレームに対応する選択肢ではなく、ステップS1002で設定した編集範囲内の全フレームにおいて設定可能である動作モードを選択肢として提示してもよい。ステップS1006〜S1010の処理は、ステップS306〜S310の処理と同様であるため説明を省略する。
以上説明した処理制御を行うことで、第1実施形態と同様の効果を得ることができるとともに、被写体やカメラの位置姿勢情報を常に取得できるとは限らない場合において生じる可能性がある、編集作業の手戻りを抑制することができる。
なお、選択肢情報の生成は、ステップS1002において設定される編集範囲に応じて動的に行ってもよい。その場合、カメラの設置状態や各種センサにより取得した位置姿勢情報を利用する際の設定は、例えば図11(c)に示すUI上の位置姿勢情報設定欄1104を介してユーザが行う。位置姿勢情報設定欄1104における設定項目は、入力欄802及び入力欄805における設定項目と同様である。
[実施形態3]
第1及び第2実施形態では、編集範囲として先頭フレームの時刻と、その時刻からの経過時間とを設定する方法について説明した。本実施形態では、編集範囲の先頭フレームと末尾フレームとをキーフレームとして指定し、両フレーム間で仮想ライトの位置姿勢情報を補間する。それにより、編集範囲内の各フレームに対するライティングパラメータを設定する。
画像処理装置100の本実施形態における内部構成は、図2に示す第1実施形態における内部構成と同様である。また、画像処理装置100の本実施形態における動作は、図3に示す第1実施形態における動作と同様である。ただし、ステップS302,S303,S306,S307の処理が異なる。以下では、それらの処理について中心に説明する。
ステップS302において、パラメータ設定部202は、ステップS301で取得した入力動画像データに対する編集範囲を設定する。本実施形態では、編集範囲の先頭フレームの時刻t0と、編集範囲の末尾フレームの時刻teとを指定して、編集範囲を設定する。図12には、入力動画像データに対してパラメータ設定を行うための、本実施形態におけるUI画面1200が示されている。UI画面1200は、図4に示す範囲入力欄422の代わりに、末尾フレーム入力欄1222を有する。末尾フレーム入力欄1222は、編集範囲における末尾フレームを指定するための入力欄である。なお、図12に示す時間軸1211、マーカ1212,1213、及び先頭フレーム入力欄1221は、図4に示す時間軸411、マーカ412,413、及び先頭フレーム入力欄421と同様である。パラメータ設定部202は、図12に示すUI画面1200をディスプレイ110に表示し、先頭フレーム入力欄1221、末尾フレーム入力欄1222に入力された値をそれぞれ、時刻t0、時刻teとして設定する。
ステップS303において、パラメータ設定部202は、ステップS302で設定された編集範囲の先頭フレームと末尾フレームとをキーフレームとし、両フレームの画像データをディスプレイ110に出力する。図12に示すように、UI画面1200は、図4に示す画像表示欄414の代わりに、画像表示欄1214,1215を有する。画像表示欄1214,1215には、先頭フレームの画像と末尾フレームの画像とがそれぞれ表示される。なお、先頭フレームまたは末尾フレームのいずれか片方の画像を1つの表示欄に表示するようにしてもよいし、両フレームの画像を重畳して1つの表示欄に表示するようにしてもよい。
ステップS306において、パラメータ設定部202は、ステップS304で選択した仮想ライトに関するライティングパラメータを設定する。図12に示すように、UI画面1200は、先頭フレームに対応する位置姿勢入力欄1234及び発光特性設定欄1235と、末尾フレームに対応する位置姿勢入力欄1236及び発光特性設定欄1237とを有する。なお、仮想ライト選択リスト1231、動作モード選択リスト1232及び配光特性選択ラジオボタン1233は、先頭フレーム及び末尾フレームについて共通に設けられている。パラメータ設定部202は、ライティングパラメータとして、配光特性選択ラジオボタン1233、位置姿勢入力欄1234,1236、及び発光特性設定欄1235,1237に入力された値を、編集範囲の先頭フレームと末尾フレームとに対して設定する。
ステップS307において、画像データ生成部203は、仮想ライト選択リスト1231において選択された仮想ライトについて、ステップS302で設定した編集範囲内の各フレームに対してライティングパラメータを設定する。このとき、ステップS305で設定された動作モードと、ステップS306で2つのキーフレームに対して設定されたライティングパラメータとに基づき、編集範囲内の各フレームに対してライティングパラメータが設定される。具体的には、発光特性及び位置姿勢情報として設定された値を、各々キーフレーム間で線形補間して設定する。ただし、位置姿勢情報に関しては、画像データ生成部203は、動作モードごとに異なる基準座標系において位置座標及び方向ベクトルの補間値を求める。各動作モードにおける基準座標系は、カメラ基準モードではカメラ座標系、被写体基準モードでは被写体座標系、シーン基準モードではシーン座標系である。以下、編集範囲内の各フレームに対する位置姿勢情報の設定について、仮想ライトの動作モードごとに説明する。
<カメラ基準モード>
画像データ生成部203は、ステップS306で2つのキーフレームに対して設定された仮想ライトの位置座標p(t0),p(te)及び方向ベクトルv(t0),v(te)の値をそれぞれ、以下の式9及び式10に従い線形補間する。これにより、編集範囲内の各フレームにおける当該仮想ライトの位置座標p(t)及び方向ベクトルv(t)が得られる。
p(t) = p(t0)*(te-t)/(te-t0)+p(te)*( t-t0) /(te-t0) ・・・式9
v(t) = v(t0)*(te-t)/(te-t0)+v(te)*( t-t0) /(te-t0) ・・・式10
<被写体基準モード>
まず、画像データ生成部203は、ステップS306で2つのキーフレームに対して設定された仮想ライトの位置座標p(t0),p(te)と方向ベクトルv(t0),v(te)とを、各時刻における被写体座標系での値に変換する。仮想ライトの位置座標の変換後の値を、po(t0),po(te)とする。また、仮想ライトの方向ベクトルの変換後の値を、vo(t0),vo(te)とする。
次いで、画像データ生成部203は、これらの変換後の値をそれぞれ線形補間し、編集範囲内の各フレームにおける当該仮想ライトの位置座標po(t)及び方向ベクトルvo(t)を得る。最後に、po(t),vo(t)の値を各フレームにおけるカメラ座標系に変換し、各フレームにおける仮想ライトの位置座標p(t)及び方向ベクトルv(t)として設定する。
<シーン基準モード>
先述した被写体基準モード時の処理における被写体座標系を、シーン座標系に置き換えて考えればよい。なお、本実施形態でも第1実施形態と同じく時刻t0におけるカメラ座標系をシーン座標系として用いる。
以上説明した処理制御を行うことで、仮想ライトの動き方をより柔軟に設定することができる。なお、ステップS302において、編集範囲を設定する際の参考情報として、動作モードの選択肢が変化するフレームをユーザに提示してもよい。そのような形態によれば、所望の動作モードを設定できるフレームの範囲をユーザが把握しやすくなり、編集範囲や動作モードを再設定する手戻りを抑制することができる。
(その他の実施例)
本発明は、上述の実施例の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
画像データ取得部201
パラメータ設定部202
画像データ生成部203

Claims (20)

  1. 入力動画像データに含まれる複数フレームのうち少なくとも1つのフレームに対して、仮想ライトの動きを規定する第1の動作モードと、前記第1の動作モードとは異なる前記仮想ライトの動きを規定する第2の動作モードとを少なくとも含む複数の動作モードのうち、1つの動作モードを選択する設定手段と、
    前記設定手段により設定された動作モードに基づいて、前記複数フレームに設定する前記仮想ライトのパラメータを導出する導出手段と、
    前記導出手段により導出された前記仮想ライトのパラメータに基づいて、前記複数フレームそれぞれに対して前記仮想ライトによる照明効果を加えるライティング処理を実行する実行手段と、を備える
    ことを特徴とする画像処理装置。
  2. 前記入力動画像データに含まれる前記複数フレームそれぞれを、前記導出手段により前記導出された前記仮想ライトのパラメータに基づき前記ライティング処理が施された前記複数フレームそれぞれに置き換えて得られる、出力動画像データを出力する出力手段をさらに備える
    ことを特徴とする請求項1に記載の画像処理装置。
  3. 前記導出手段は、
    前記仮想ライトの位置または方向が前記動作モードに従って時間軸上で変化するように、前記複数フレームそれぞれに設定する前記仮想ライトのパラメータを導出する
    ことを特徴とする請求項1または請求項2に記載の画像処理装置。
  4. 前記動作モードには少なくとも、前記仮想ライトをカメラに追従させるカメラ基準モードと、前記仮想ライトを被写体に追従させる被写体基準モードと、前記仮想ライトの動作がカメラや被写体の動作に依存しないシーン基準モードと、が含まれる
    ことを特徴とする請求項1から請求項3のうちのいずれか1項に記載の画像処理装置。
  5. 前記入力動画像データを解析して該入力動画像データについて設定可能な前記動作モードを決定し、前記設定可能な前記動作モードを示す選択肢情報を生成する生成手段をさらに備え、
    前記設定手段は、
    前記選択肢情報により示される前記動作モードの中から、1つの動作モードを選択する
    ことを特徴とする請求項1から請求項4のうちのいずれか1項に記載の画像処理装置。
  6. 前記生成手段は、
    前記入力動画像データを撮像により取得したカメラの設置状態に応じて、該入力動画像データについて設定可能な前記動作モードを決定する
    ことを特徴とする請求項5に記載の画像処理装置。
  7. 前記生成手段は、
    前記入力動画像データから被写体の位置姿勢を示す情報が取得できるか否かに応じて、該入力動画像データについて設定可能な前記動作モードを決定する
    ことを特徴とする請求項5または請求項6に記載の画像処理装置。
  8. 前記生成手段は、
    前記入力動画像データから、該入力動画像データを撮像により取得したカメラの位置姿勢を示す情報が取得できるか否かに応じて、該入力動画像データについて設定可能な前記動作モードを決定する
    ことを特徴とする請求項5に記載の画像処理装置。
  9. ユーザの指示に基づき、前記入力動画像データに含まれる前記複数フレームのうち少なくとも1つのフレームに対して、前記仮想ライトのパラメータを設定するパラメータ設定手段をさらに備え、
    前記導出手段は、
    前記設定手段により設定された動作モードに基づいて、前記パラメータ設定手段によって設定された前記仮想ライトのパラメータを座標変換し、前記座標変換された前記仮想ライトのパラメータに基づいて前記複数フレームに設定する前記仮想ライトのパラメータを導出する
    ことを特徴とする請求項1から請求項8のうちのいずれか1項に記載の画像処理装置。
  10. 時間軸上で連続する複数フレームが、前記ライティング処理の対象とされ、
    前記ライティング処理の対象とされる前記複数フレームを、ユーザの指示に基づき指定する指定手段をさらに備える
    ことを特徴とする請求項1から請求項9のうちのいずれか1項に記載の画像処理装置。
  11. 前記複数の動作モードの中からいずれかの動作モードを指定させるための第1のユーザインタフェイスと、前記仮想ライトのパラメータとして前記仮想ライトの位置姿勢と発光特性を表すパラメータを指定させるための第2のユーザインタフェイスと、を少なくとも表示装置に表示させる表示制御手段をさらに備え、
    前記設定手段は、
    前記第1のユーザインタフェイスを介してユーザが指定した動作モードを選択し、
    前記導出手段は、
    前記第2のユーザインタフェイスを介してユーザが指定した前記仮想ライトのパラメータを、前記設定手段により設定された動作モードに基づいて座標変換し、前記座標変換された前記仮想ライトのパラメータに基づいて前記複数フレームに設定する前記仮想ライトのパラメータを導出する
    ことを特徴とする請求項1から請求項10のうちのいずれか1項に記載の画像処理装置。
  12. 前記導出手段は、
    前記仮想ライトのパラメータを、前記入力動画像データを撮像により取得したカメラの位置姿勢に基づく座標系で表された値から、前記設定手段により設定された動作モードに対応する座標系で表した値に変換する
    ことを特徴とする請求項11に記載の画像処理装置。
  13. 前記導出手段は、
    前記仮想ライトを被写体に追従させる被写体基準モードが前記設定手段により設定された場合には、前記仮想ライトのパラメータを、前記仮想ライトを追従させる被写体の位置姿勢に基づく座標系で表した値に変換する
    ことを特徴とする請求項12に記載の画像処理装置。
  14. 前記導出手段は、
    前記仮想ライトの動作が前記カメラや被写体の動作に依存しないシーン基準モードが前記設定手段により設定された場合には、前記仮想ライトのパラメータを、シーン中に設定された基準位置に基づく座標系で表した値に変換する
    ことを特徴とする請求項12に記載の画像処理装置。
  15. 前記導出手段は、
    前記仮想ライトを前記カメラに追従させるカメラ基準モードが前記設定手段により設定された場合には、前記座標変換を行わない
    ことを特徴とする請求項12に記載の画像処理装置。
  16. 前記表示制御手段は、
    前記第1のユーザインタフェイスを介してユーザが指定した動作モードと、前記入力動画像データから取得可能なカメラまたは被写体の位置姿勢を示す情報とから、前記仮想ライトのパラメータとして設定不可であると判断された発光特性を、前記第2のユーザインタフェイスにおいて指定できないようにする
    ことを特徴とする請求項11に記載の画像処理装置。
  17. 時間軸上で連続する複数フレームが、前記ライティング処理の対象とされ、
    前記表示制御手段は、
    前記ライティング処理の対象とされる前記複数フレームの先頭フレームの時刻と、該時刻からの経過時間とをユーザに指定させるための第3のユーザインタフェイスを前記表示装置に表示させる
    ことを特徴とする請求項11に記載の画像処理装置。
  18. 時間軸上で連続する複数フレームが、前記ライティング処理の対象とされ、
    前記表示制御手段は、
    前記ライティング処理の対象とされる前記複数フレームの先頭フレーム及び末尾フレームの時間軸上における位置をユーザに指定させるための第4のユーザインタフェイスを前記表示装置に表示させる
    ことを特徴とする請求項11に記載の画像処理装置。
  19. 入力動画像データに含まれる複数フレームのうち少なくとも1つのフレームに対して、仮想ライトの動きを規定する第1の動作モードと、前記第1の動作モードとは異なる前記仮想ライトの動きを規定する第2の動作モードとを少なくとも含む複数の動作モードのうち、1つの動作モードを選択する設定ステップと、
    前記設定ステップにより設定された動作モードに基づいて、前記複数フレームに設定する前記仮想ライトのパラメータを導出する導出ステップと、
    前記導出ステップにより導出された前記仮想ライトのパラメータに基づいて、前記複数フレームそれぞれに対して前記仮想ライトによる照明効果を加えるライティング処理を実行する実行ステップと、を含む
    ことを特徴とする画像処理方法。
  20. コンピュータを、請求項1から18のいずれか1項に記載された画像処理装置の各手段として機能させるためのプログラム。
JP2017167232A 2017-08-31 2017-08-31 画像処理装置、画像処理方法及びプログラム Active JP6918648B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017167232A JP6918648B2 (ja) 2017-08-31 2017-08-31 画像処理装置、画像処理方法及びプログラム
US16/113,354 US20190066734A1 (en) 2017-08-31 2018-08-27 Image processing apparatus, image processing method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017167232A JP6918648B2 (ja) 2017-08-31 2017-08-31 画像処理装置、画像処理方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2019046055A JP2019046055A (ja) 2019-03-22
JP2019046055A5 JP2019046055A5 (ja) 2020-10-08
JP6918648B2 true JP6918648B2 (ja) 2021-08-11

Family

ID=65437700

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017167232A Active JP6918648B2 (ja) 2017-08-31 2017-08-31 画像処理装置、画像処理方法及びプログラム

Country Status (2)

Country Link
US (1) US20190066734A1 (ja)
JP (1) JP6918648B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10777018B2 (en) * 2017-05-17 2020-09-15 Bespoke, Inc. Systems and methods for determining the scale of human anatomy from images
US20210279967A1 (en) * 2020-03-06 2021-09-09 Apple Inc. Object centric scanning
CN112116695A (zh) * 2020-09-24 2020-12-22 广州博冠信息科技有限公司 虚拟灯光控制方法及装置、存储介质及电子设备
CN113286163B (zh) * 2021-05-21 2022-07-08 成都威爱新经济技术研究院有限公司 一种用于虚拟拍摄直播的时间戳误差标定方法及系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001014488A (ja) * 1999-07-02 2001-01-19 Matsushita Electric Ind Co Ltd 仮想追跡カメラ装置と仮想追跡光源
US20070126864A1 (en) * 2005-12-05 2007-06-07 Kiran Bhat Synthesizing three-dimensional surround visual field
JP4266233B2 (ja) * 2007-03-28 2009-05-20 株式会社東芝 テクスチャ処理装置
JP5088220B2 (ja) * 2008-04-24 2012-12-05 カシオ計算機株式会社 画像生成装置、及びプログラム
WO2012007795A1 (en) * 2010-07-16 2012-01-19 Sony Ericsson Mobile Communications Ab Three dimensional face modeling and sharing based on two dimensional images
ES2581554T3 (es) * 2012-09-10 2016-09-06 Philips Lighting Holding B.V. Sistema y método de detección de luz
US9001226B1 (en) * 2012-12-04 2015-04-07 Lytro, Inc. Capturing and relighting images using multiple devices
US9261755B2 (en) * 2013-04-11 2016-02-16 Satellite Lab, LLC System and method for producing virtual light source movement in motion pictures and other media
JP2015056143A (ja) * 2013-09-13 2015-03-23 ソニー株式会社 情報処理装置および情報処理方法
CN105468171A (zh) * 2014-09-10 2016-04-06 中强光电股份有限公司 显示系统及显示系统的显示方法
US9922452B2 (en) * 2015-09-17 2018-03-20 Samsung Electronics Co., Ltd. Apparatus and method for adjusting brightness of image
JP6910130B2 (ja) * 2015-11-06 2021-07-28 三星電子株式会社Samsung Electronics Co.,Ltd. 3dレンダリング方法及び3dレンダリング装置
JP6700840B2 (ja) * 2016-02-18 2020-05-27 キヤノン株式会社 画像処理装置、撮像装置、制御方法及びプログラム
US9942970B2 (en) * 2016-02-29 2018-04-10 Symmetric Labs, Inc. Method for automatically mapping light elements in an assembly of light structures

Also Published As

Publication number Publication date
US20190066734A1 (en) 2019-02-28
JP2019046055A (ja) 2019-03-22

Similar Documents

Publication Publication Date Title
US10964108B2 (en) Augmentation of captured 3D scenes with contextual information
KR102524422B1 (ko) 객체 모델링 및 움직임 방법 및 장치, 그리고 기기
CN108780586B (zh) 图像处理方法、显示设备和检查系统
JP6918648B2 (ja) 画像処理装置、画像処理方法及びプログラム
KR102197732B1 (ko) 실내공간의 3차원 지도 생성 방법 및 장치
JP6493395B2 (ja) 画像処理装置と画像処理方法
CN110419061B (zh) 混合现实系统及使用该系统生成虚拟内容的方法
US8929628B2 (en) Measuring device and measuring method
US20200265634A1 (en) Information processing apparatus, information processing method, and non-transitory computer-readable storage medium
JP7208549B2 (ja) 仮想空間制御装置、その制御方法、及びプログラム
KR102279300B1 (ko) 가상 물체 표시 제어 장치, 가상 물체 표시 시스템, 가상 물체 표시 제어 방법, 및 가상 물체 표시 제어 프로그램
WO2018213702A1 (en) Augmented reality system
US9218688B2 (en) Animatable graphics lighting analysis reporting
US20190243461A1 (en) Cable movable region display device, cable movable region display method, and cable movable region display program
JP5611875B2 (ja) 情報表示装置、情報表示方法、及びプログラム
JP2006107093A (ja) 画像処理装置、およびプログラム
JP2019185776A (ja) 室内空間の3次元地図生成方法及び装置
JP2013092888A (ja) データ処理装置
KR20160143936A (ko) 선택적 3d 렌더링 방법 및 이를 위한 시스템
US8704890B2 (en) Inspection apparatus and measuring method
JP6564259B2 (ja) 画像処理装置、画像処理方法
BARON et al. APPLICATION OF AUGMENTED REALITY TOOLS TO THE DESIGN PREPARATION OF PRODUCTION.
US9495796B2 (en) Animatable graphics lighting analysis reporting
JP2020013390A (ja) 情報処理装置、情報処理プログラム及び情報処理方法
US20150286384A1 (en) Method Of Establishing Multi-Sensor Measuring Machine Routines

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200827

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200827

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210528

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: 20210622

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210721

R151 Written notification of patent or utility model registration

Ref document number: 6918648

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151