以下、この発明による撮影機能を有する電子機器の実施形態を、図を参照しながら説明する。ここで、撮影機能を有する電子機器としては、デジタルカメラ、デジタル一眼カメラなどの撮影専用の電子機器のみのではなく、カメラ部を備える携帯電話端末などの携帯機器からなる電子機器であってもよい。以下に説明する実施形態は、電子機器が高機能のカメラ部を備える携帯電話端末である場合である。
図1は、この発明の実施形態である携帯電話端末からなる電子機器1のハードウエア構成例を示すブロック図である。この実施形態の電子機器1は、例えばマイクロコンピュータを備える制御部10により、後述する各部が制御される構成を備える。
制御部10には、操作入力部11と、無線通信部12と、電話回路部13と、メモリ部14と、現在位置検出部15と、メディアドライブ16と、時計部17と、端末向き検出部18、表示制御部19とが接続されている。表示制御部19には、例えばLCD(Liquid Crystal Display)からなる表示部20が接続されている。
操作入力部11は、ボタン操作部と、表示部20の表示画面、この例ではLCD画面に重ねて配設されているタッチパネルとを含む。制御部10は、ボタン操作部におけるボタン操作を検出する機能と、タッチパネルを通じたタッチ操作を検出する機能とを備える。制御部10の、それらの操作を検出する機能を実行するためのソフトウエアプログラムは、メモリ部14に格納されている。
無線通信部12は、携帯電話基地局との間での無線通信を行なうためのものである。この例では、制御部10は、無線通信部12を用いて、携帯電話基地局を介してインターネットにも接続することが可能なように構成されている。そして、インターネットを通じた情報を表示部20の表示画面に表示するためのブラウザ機能のソフトウエアプログラムがメモリ部14に格納されている。
電話回路部13は、携帯電話通信を行うためのもので、図示は省略するが、マイクロホンやスピーカを含む。
メモリ部14は、この実施形態の電子機器1の各種の機能を実行するためのソフトウエアプログラムを格納すると共に、撮影機能を用いて撮影した撮影画像を記憶したり、インターネットを通じて取得した情報を蓄積したりするためにも用いられる。
現在位置検出部15は、電子機器1の現在位置をGPS(Global Positioning System)衛星からの電波や、携帯電話基地局からの情報などから検出する。制御部10は、この実施形態では、この現在位置検出部15で検出した電子機器1の現在位置を、撮影場所を判断するための情報として用いるようにする。
メディアドライブ16は、外部のメモリ媒体、この例では、カード型メモリが装填可能とされており、制御部10が、装填されたカード型メモリに撮影画像を保存したり、また、カード型メモリに格納されている後述する合成用オブジェクトのデータを読み込んだりするために用いられる。
時計部17は、時刻の情報と、年、月、日の情報とからなる日時情報を提供する。この実施形態では、後述するように制御部10は、時計部17からの日時情報を、撮影日時の情報として、撮影画像と共に記録したり、撮影シーンを判断したりする際に利用したりする。
端末向き検出部18は、例えば地磁気センサを用いて、端末の向きを検出する。
表示制御部19は、制御部10からの表示データに基づく表示画像を、制御部10の表示制御に基づいて、表示部20の表示画面に表示する。制御部10からの表示データとしては、メニュー画面や待ち受け画面、あるいはインターネットに接続した際のブラウザ画面の表示データが例として挙げられる。また、この実施形態の電子機器1では、表示制御部19は、撮影機能が起動されたときには、後述するように、制御部10の制御に基づいて、カメラ部で撮影された撮影画像、あるいは、その撮影画像に合成用オブジェクトが合成された合成画像を、表示部20の表示画面に表示する。
そして、この実施形態の電子機器1は、撮影機能を実現するためにカメラ部21と、このカメラ部21からの撮影画像信号に、合成用オブジェクトのデータを合成するための信号処理部とを備える。以下の説明においては、撮影画像に合成用オブジェクトのデータによる画像を合成することをAR合成と称し、また、AR合成されて得られた合成画像をAR合成画像と称することとする。
カメラ部21は、例えばCCD(Charge Coupled Device)イメージセンサやCMOS(Complementary Metal Oxide Semiconductor)イメージセンサからなる撮像素子211と、撮像レンズ系212と、この撮像レンズ系212を制御してオートフォーカス(AFと略称する)を行うためのAFモータ213と、AF制御部214とを備えて構成されている。AF制御部214は、制御部10の制御にしたがって、AFモータ213の制御信号を供給する。
この例では、撮像レンズ系212は、光学ズーム機能を備えていない。そして、AF制御部214は、AFモータ213への制御信号に対応するカメラ部21からの被写体までの距離(撮影者から被写体までの距離に相当)の情報を制御部10に供給するようにする。制御部10は、後述するように、オートフォーカスのための評価値(AF評価値)から被写体にピントが合っているか否かを判断し、その判断結果とAF制御部214からのカメラ部21から被写体までの距離情報とに応じてAF制御部214へのAF制御信号を生成する。そして、制御部10は、生成したAF制御信号をAF制御部214に供給して、オートフォーカスを行うように制御する。なお、AF制御方式としては、位相差方式、コントラスト方式、AF画素方式などがあり、そのいずれを用いるようにしても良い。
カメラ部21の撮像素子211の出力信号は、撮影画像信号処理部22に供給される。撮影画像信号処理部22は、撮像素子211の出力信号から撮影画像信号を生成する出力する処理を行う。そして、この撮影画像信号処理部22からの撮影画像信号は、AR合成部23に供給される。
AR合成部23は、制御部10から合成用オブジェクトの合成制御指示を受けていないときには、撮影画像信号処理部22からの撮影画像信号を、そのまま表示制御部19に供給すると共に、記録部24に供給する。また、後述するように、制御部10から合成用オブジェクトの合成制御指示を受けているときには、AR合成部23は、撮影画像信号処理部22からの撮影画像信号に、合成用データ作成部26からの合成用データを合成し、その合成信号を、表示制御部19に供給すると共に、記録部24に供給する。
したがって、表示部20の表示画面には、撮影画像信号処理部22からの撮影画像信号による撮影画像または撮影画像に合成用データによる合成用オブジェクトの合成用画像がAR合成された画像が表示される。つまり、カメラ部21で取り込まれた撮影画像が、表示部20の表示画面でそのままモニター表示される、あるいは、カメラ部21で取り込まれた撮影画像に合成用オブジェクトの合成用画像がAR合成された画像がモニター表示される。
撮影者は、この表示部20に表示された画像により、カメラ部21で取り込んで撮影しようとしている被写体画像や、AR合成画像を確認するようにする。そして、その確認の結果、撮影を実行することを決断した撮影者は、操作入力部11を通じて、撮影実行操作をする。すると、制御部10の制御指示により、記録部24は、AR合成部23からの画像信号を、記録画像信号に変換し、制御部10に送る。制御部10は、この記録画像信号を、操作入力部11を通じた撮影者の指示に応じて、メモリ部14またはメディアドライブ16に保存する。
この実施形態の電子機器1は、合成用オブジェクトデータ格納部25を備える。したがって、この実施形態では、合成用オブジェクトデータの取得手段は、合成用オブジェクトデータ格納部25と制御部10からなる合成用オブジェクトの読み出し手段とからなる。
合成用オブジェクトデータ格納部25には、カメラ部21で撮影された被写体の撮影画像にAR合成することが想定される合成用オブジェクトのデータが格納される。ここで、合成用オブジェクトとしては、例えば撮影者自身、欠席予定者などの人のみならず、ペットや、他の動植物、石、車、建物など、合成用オブジェクトのデータにより、その画像を表すことができるものであれば何でも構わない。
この実施形態では、合成用オブジェクトのデータは、複数個のポリゴンと、各ポリゴンに貼付するテクスチャとからなる。この合成用オブジェクトのデータは、例えば、予め、パソコンなどで作成して、カード型メモリに保存したものを、メディアドライブ16を通じて取り込み、合成用オブジェクトデータ格納部25に格納することができる。
例えば、合成用オブジェクトのデータを作成するアプリケーションプログラムを予めパソコンに用意しておく。そして、例えば合成用オブジェクトが3次元オブジェクトであって、かつ、人である場合には、デジタルカメラで、対象となる人を、その正面方向、斜め方向、横方向、背面方向など、その人を中心にした複数の角度方向から撮影し、パソコンに合成用オブジェクトとしての3次元オブジェクトのデータ作成用として読み込む。そして、パソコンの合成用オブジェクトのデータ作成用アプリケーションプログラムを起動し、その複数の角度方向の撮影画像信号から、ポリゴンとテクスチャからなる、対象となる人の3次元オブジェクトのデータを作成し、その作成した3次元オブジェクトのデータをカード型メモリに格納する。そして、その作成した3次元オブジェクトのデータを格納したカード型メモリを、電子機器1のメディアドライブ16に装填する。
電子機器1の制御部10は、その装填されたカード型メモリから合成用オブジェクトのデータを読み出し、合成用オブジェクトデータ格納部25に格納する。この際に、当該合成用オブジェクトの元々の大きさの情報を合わせて格納しておくようにする。以上の動作を、AR合成を想定する対象物のそれぞれについて行い、各合成用オブジェクトのデータを合成用オブジェクトデータ格納部25に格納する。
図2に、合成用オブジェクトデータ格納部25の格納データの例を示す。すなわち、この例においては、合成用オブジェクトのそれぞれを後に読み出す際のインデックスとするために、各合成用オブジェクト名を付与しておく。そして、各合成用オブジェクト名に対応付けて、その合成用オブジェクトのデータ(ポリゴンデータとテクスチャデータ)を格納する。
また、この場合に、合成用オブジェクト名に対応付けて、その合成用オブジェクトとして登録する対象物(人や動植物、石、建物など)の大きさを示す情報を合成用オブジェクトデータ格納部25に格納する。合成用オブジェクトが人である場合には、その伸長、肩幅などが、大きさを示す情報として格納される。また、犬や猫などのペットの動物の場合には、その体高及び体長が大きさを示す情報として格納される。その他も、同様に、それぞれの対象物の大きさを特定するための属性の情報が大きさの情報として格納される。この大きさを示す情報は、後述するように、撮影画像に合成する際の合成用オブジェクトの画像の大きさを定めるために用いられる。
また、この実施形態では、合成用オブジェクトとして登録する対象物が、人の場合には、合成用オブジェクトのデータの作成時に、撮影画像から、表情筋の特徴点を取得して、各オブジェクト名に対応付けて合成用オブジェクトデータ格納部25に記憶しておくようにする。この表情筋の特徴点の情報は、合成用オブジェクトとしての人を撮影画像に合成する際に、笑顔やすまし顔などに、顔の表情を制御するための情報として用いられる。
なお、電子機器1に、合成用オブジェクトのデータを作成するアプリケーションプログラムを用意すると共に、カメラ部21を用いて上述と同様に、合成用オブジェクトを複数の角度方向から撮影した撮影画像を取り込むことにより、電子機器1自身で、合成用オブジェクトのデータを作成して、合成用オブジェクトデータ格納部25に格納するようにすることもできる。
制御部10は、この合成用オブジェクトデータ格納部25に格納されているオブジェクト名の情報から、AR合成する合成用オブジェクトの一覧リストを生成して、AR合成する合成用オブジェクトの選択用として、表示部20の表示画面に呈示するようにする。撮影者などの使用者は、この合成用オブジェクトの一覧リストから、操作入力部11を通じて、AR合成を希望する合成用オブジェクトの選択操作をすることができる。制御部10は、撮影者などの使用者からAR合成を希望する合成用オブジェクトの選択操作情報を受け取ると、その選択操作情報を合成用オブジェクトデータ格納部25に送る。合成用オブジェクトデータ格納部25は、受け取った選択操作情報で指定される合成用オブジェクトのデータ、大きさ属性及び顔認識結果(存在する場合のみ)を、合成用データ作成部26に送る。
合成用データ作成部26は、制御部10からの調整制御情報を受ける。そして、合成用データ作成部26は、合成用オブジェクトデータ格納部25から受けた合成用オブジェクトのデータ、大きさ属性及び顔認識結果と、制御部10から受けた調整制御情報とを用いて、撮影画像データに合成する合成用データを作成する。この場合に、この例では、合成用データ作成部26は、一旦、合成用オブジェクトについての合成用の3次元オブジェクトのデータを作成し、その作成した合成用の3次元オブジェクトのデータを、撮影画像データに合成可能な合成用データに変換して、AR合成部23に供給する。
制御部10は、撮影者などの使用者に対して、表示部20の表示画面に調整制御情報の入力を促す画面を呈示し、これを受けた撮影者などの使用者からの指示入力を、操作入力部11を通じて受けて、調整制御情報を生成し、生成した調整制御情報を合成用データ作成部26に送る。
この場合の使用者からの指示入力には、合成用オブジェクトの撮影画像への挿入位置の情報が含まれる。この挿入位置の情報には、撮影画像の画枠内位置と、合成用オブジェクトのカメラ部21からの仮想的な距離の情報が含まれる。合成用データ作成部26は、この挿入位置の情報に含まれる合成用オブジェクトのカメラ部21からの仮想的な距離の情報と、合成用オブジェクトデータ格納部25から取得して大きさに関する属性情報とから、撮影画像に合成する合成用オブジェクトの画像の大きさを判定して、その判定した大きさの合成用画像を作成する。
また、この実施形態では、合成用オブジェクトの対象物が人である場合には、使用者からの指示入力には、その人の表情、例えば笑顔やすまし顔などに関する表情指定情報を挿入可能としている。合成用データ作成部26は、調整制御情報に表情指定情報が含まれている場合には、合成用オブジェクトデータ格納部25から取得した顔認識結果の表情筋の特徴点の情報を用いて、合成用オブジェクトである人の顔の表情を、表情指定情報で指定された笑顔やすまし顔となるように制御する。
また、この実施形態では、撮影時のシーンに合わせて、合成用オブジェクトの画像の修飾をしたり、持ち物などを追加したりすることができるように構成されている。撮影時のシーンは、使用者から、旅行、ビジネス、結婚式、葬儀などの場合や目的の選択入力を受け付けると、その選択入力された場合や目的の情報と、現在位置検出部15で検出された現在地(場所)の情報と、時計部17から得られる日時情報とから、自動的に判断できる。すなわち、撮影時のシーンは、T(時間)、P(場所)、O(場合)から自動的に判断できる。
そこで、この実施形態では、制御部10は、使用者から、操作入力部11を通じて前記場合や目的の選択入力を受けるようにする。そして、制御部10は、それぞれの撮影時において、予め受け付けている場合や目的の情報と、現在地検出部15からの現在地(場所)の情報と、時計部17からの日時情報とからシーンを判断する。そして、制御部10は、合成用データ作成部26に対して、そのシーンに応じた装飾を合成用オブジェクトの画像に対して施すと共に、必要に応じて持ち物などを追加する依頼を、調整制御情報に含めて送るようにする。
以上のような合成用オブジェクトの装飾や付加物の追加の処理のために、この実施形態では、メモリ部14には、シーンに応じた人の服装や装飾品、持ち物のデータが、合成用オブジェクトの画像に合成可能なように登録されて格納されている。これらの服装や装飾品、持ち物のデータは、使用者が作成して登録するようにしてもよいし、無線通信部12を通じて、インターネットの所定のサイトから予め取得して登録しておくようにしてもよい。制御部10は、調整制御情報に、シーンに応じた人の服装や装飾品、持ち物のデータを含めて、合成用データ作成部26に、合成用オブジェクトについての装飾依頼、持ち物の追加依頼をするようにする。
なお、以上のようにして、制御部10により自動的にシーンが判別されて、その判別したシーンに応じた服装や装飾品、持ち物などが自動的に選択されるが、その後、使用者の選択操作に応じて、その自動選択された服装や持ち物などを変更することもできる。そのため、制御部10は、使用者から合成用オブジェクトに対する服装などの変更要求を受けたときには、シーンに対応して格納されている服装や装飾品、持ち物の一覧リストを、使用者に提示して、その選択指定を受け付けるようにする。シーンに応じて自動的に、合成用オブジェクトの装飾や付加物の選定をするのではなく、最初から、使用者が、合成用オブジェクトの装飾や付加物の選定を行うようにしても勿論良い。
合成用データ作成部26は、制御部10から受けた調整制御情報に応じて、合成用の3次元オブジェクトのテクスチャを変更し、また、持ち物の画像を追加合成する処理を行う。
また、この実施形態の合成用オブジェクトのデータは、この例では、3次元オブジェクトのデータであるので、使用者は、合成しようとする合成用オブジェクトの向きを操作入力部11から入力して、調整制御情報に含めるようにすることができる。合成用データ作成部26は、制御部10から受けた調整制御情報に含まれる合成用オブジェクトの向きの情報に応じて、合成用オブジェクトの向きを定めた合成用画像を作成するようにする。
また、この実施形態では、制御部10は、撮影者により指定された絞り、シャッタースピード、フィルタ、エフェクタ(特殊効果)などの撮影条件や、撮影時の太陽の向きを検出するための現在位置検出部15から検出した現在位置と端末向き検出部18で検出した携帯電話端末の向きの情報と時計部17の日時情報も、調整制御情報に含めて合成用データ作成部26に供給するようにする。
合成用データ作成部26は、調整制御情報に含まれる現在位置と、携帯電話端末の向きと、時計部17からの日時情報とから、撮影時の太陽の向きを検出する。このとき、合成用データ作成部26は、インターネットを通じて当該撮影時点における現在位置の天候の情報をも取得しておく。そして、合成用データ作成部26は、調整制御情報に含まれる撮影条件と、検出した撮影時の太陽の位置と撮影時点における現在位置の天候の情報とに合わせるように、合成用オブジェクトの合成用画像の色調、てかり、影などを制御するようにする。
合成用データ作成部26は、以上のようにして、合成用オブジェクトデータ格納部25からの選択指定された合成用オブジェクトに対して、調整制御情報に基づいて修飾や追加処理を施して、合成用画像のデータを先ず作成する。そして、この作成した合成用画像のデータを、AR合成部23に供給して撮影画像と合成するために、画素単位の合成用画像データに変換するようにする。
この場合に、制御部1には、合成用データ作成部26から、画枠FLにおいて合成用画像が占める領域の大きさに関する情報が送られる。制御部10は、後述するように、撮影者などの使用者により指定された撮影画像の画枠FL内の挿入位置と、合成用データ作成部26からの合成用画像が占める領域の大きさに関する情報とから、合成用画像を、画枠FL内において挿入する画像領域を特定する。そして、制御部10は、その特定された画像領域において、合成用画像データをAR合成部23に出力するように制御する出力制御情報を生成して、合成用データ作成部26に供給する。
また、AR合成部23は、制御部10からの合成制御情報に基づいて、撮影画像信号処理部22からの撮影画像データと、合成用データ作成部26からの合成用データとを合成して、撮影画像に合成用オブジェクトの画像とを合成したAR合成データを生成する。この場合、制御部10からの合成制御情報は、画枠FL内において、合成用画像を挿入する画像領域では、合成用データ作成部26からの合成用データをAR合成部23から出力し、その他の領域では、撮影画像信号処理部22からの撮影画像データをAR合成部23から出力するように制御する情報である。
そして、制御部10は、使用者により指定された合成用オブジェクトの挿入位置において、撮影画像の現実の被写体との重なりを考慮して、合成制御情報を生成する。
すなわち、制御部10は、以下に説明するように、カメラ部21の位置(撮影者の位置)に対する現実の被写体と合成用オブジェクトの合成位置との前後関係を検出し、撮影画像の現実の被写体が合成用オブジェクトと重なる場合には、その重なり部分では、カメラ部21に対してより近い方のみをAR合成画像に残すように、合成制御情報を生成する。もしも、現実の被写体と合成用オブジェクトのカメラ部21に対する距離が同じとなっている場合には、制御部10は、撮影者に対して、いずれを優先するかの問い合わせをして、その前後関係を、撮影者に特定させるようにする。
この実施形態では、撮影画像に含まれる現実の被写体(以下、被写体オブジェクトという)のそれぞれと、カメラ部21との距離を特定することができるように、以下のような構成を備える。
すなわち、撮影画像信号処理部22からの撮影画像信号は、AF評価値算出部27に供給される。この実施形態のAF評価値算出部27は、前述した3種のAF制御方式のうちの例えばコントラスト検出方式によりAF評価値を算出する。
この実施形態のAF評価値算出部27は、例えば図3(A)に示すような撮影画像の画枠FLを、図3(B)に示すように、例えば縦×横=8×8の領域に分割し、各分割領域BKの撮影画像信号の高周波成分と、隣接画像間での輝度の差を、各分割領域BKのコントラストとして算出する。そして、AF評価値算出部27は、各分割領域BKのコントラストの算出値を、制御部10に供給する。
制御部10は、各分割領域BKのコントラストを合計して平均し、撮影画像全体についてのAF評価値とする。そして、制御部10は、AF制御部214を駆動して、フォーカス位置を無限遠から最短撮影距離まで変更させてサーチし、各フォーカス位置におけるAF評価値を求め、AF評価値が最大になるフォーカス位置を合焦位置とする。そして、制御部10は、AF制御部214を合焦位置とするように制御して、撮影画像全体についてのオートフォーカスを実行する。
この実施形態では、制御部10は、上記のような撮影画像全体についての合焦位置を求めるオートフォーカス機能に加えて、各分割領域BKについても合焦位置を検出し、その合焦位置に対応するカメラ部からの距離(以下、被写体距離という)を算出して一時保持するようにする。
また、この実施形態では、撮影画像に含まれる被写体オブジェクトのそれぞれを分離することができるようにしている。すなわち、撮影画像信号処理部22からの撮影画像信号は、被写体オブジェクト分析部28に供給される。この被写体オブジェクト分析部28には、また、画像パターン記憶部29に予め格納されている画像パターンのデータが供給される。
画像パターン記憶部29には、撮影画像の被写体オブジェクトとなり得る人物、犬、猫、その他の動物、植物、車、建物などの画像パターンデータが、それぞれについて、その多種多様な変形も含めて登録されて記憶されている。この画像パターン記憶部29の格納情報も、予め、無線通信部12を通じてインターネットにアクセスし、所定のサイトから取得しておくようにする。
そして、被写体オブジェクト分析部28では、撮影画像信号処理部22からの撮影画像信号による撮影画像と、画像パターン記憶部29からの登録されている画像パターンとのパターンマッチングを行って、撮影画像に含まれる被写体オブジェクトのそれぞれを分離する。なお、所定の被写体距離よりも遠くにあるものは、背景として、この例では、この被写体オブジェクト分析部28での分析対象から排除するものである。
この被写体オブジェクト分析部28での分析の結果のデータは、撮影画像から分離された被写体オブジェクトの画像部分が画枠FL内で占める領域データとされ、これが制御部10に供給される。制御部10は、AF評価値算出部27から得た各分割領域BKの被写体距離うち、被写体オブジェクトの各画像部分が画枠FL内に占める領域が含む分割領域BKの被写体距離の平均値を算出して、それぞれの被写体オブジェクトの被写体距離とする。
例えば図3(A)の撮影画像の例の場合には、被写体オブジェクト分析部28において、人物の被写体オブジェクトPA及びPC、看板の被写体オブジェクトPB、岩の被写体オブジェクトPD、建物の被写体オブジェクトPEのそれぞれが、図4(A)〜(E)に示すように、分離される。そして、被写体オブジェクト分析部28は、各被写体オブジェクトPA〜PEの画枠FL内の領域データARA〜AREを、制御部10に供給する。
そして、制御部10は、分離された各被写体オブジェクトPA〜PEの画像が占める領域内の分割領域BKの被写体距離の平均値を算出し、それぞれの被写体オブジェクトの被写体距離DA〜DEを算出する。そして、制御部10は、算出した被写体距離DA〜DEを、図5に示すように、各被写体オブジェクトPA〜PEの領域データARA〜AREと対応付けて保持する。
制御部10は、この被写体オブジェクトPA〜PEについての被写体距離DA〜DEと、領域データARA〜AREと、合成用オブジェクトの挿入位置とから、AR合成部23で、撮影画像信号処理部22からの撮影画像信号を出力するか、合成用オブジェクトの合成用データを出力するかを制御する合成制御情報を生成する。
例えば図3(A)の撮影画像に合成する合成用オブジェクトとして、図6(A)に示すような人物の合成用オブジェクトParが、操作入力部11を通じて選択指定された場合を一例として、上述の合成処理を説明する。
制御部10は、この例の場合には、現在位置の情報と、時間の情報と、使用者から入力された目的が「登山」とされたことに基づいて、撮影された画像は、登山での記念撮影シーンであると判断し、図6(B)に示すように、合成用オブジェクトParに対して、登山用の帽子CPを被せ、登山用の服装CLを着用させ、付加物としてリュックサックRSを背負うように、修飾及び追加物処理を行う。また、図6(B)の例では、合成用オブジェクトParの人物が右横を向くように、回転させる指示を使用者がした場合である。
このようにして作成された合成用オブジェクトParの合成用画像PARの挿入位置として、撮影者により、例えば図7に示すように、人物の被写体オブジェクトPCの横であって、岩の被写体オブジェクトPDと、建物の被写体オブジェクトPEとの間の位置が指定されたとする。
この場合、制御部10は、合成用オブジェクトの合成用画像PARの挿入位置の情報から、指定された仮想被写体距離(カメラ部21から合成用オブジェクトまでの距離)を算出し、その算出した仮想被写体距離の情報を合成用データ作成部26に供給する。
合成用データ作成部26は、受け取った仮想被写体距離の情報と、合成用オブジェクト格納部25からの合成用オブジェクトParの大きさについての属性情報とから、合成用画像PARの大きさを判断し、その大きさとなるように、合成用オブジェクトParから合成用画像のCGデータを生成する。そして、合成用データ作成部26は、制御部10からの服装や装飾品、追加物の指示、回転指示を伴う調整制御情報に基づいて、図6(B)に示すような合成用画像PARの3次元オブジェクトのデータを作成する。さらに、合成用データ作成部26は、作成された合成用画像PARが占める領域の大きさに関する情報を制御部10に供給するようにする。
制御部10は、操作入力部11を通じて入力された合成用オブジェクトの挿入位置の情報と、合成用データ作成部26から受け取った合成用画像PARが占める領域の大きさに関する情報とから、合成用データ作成部26に供給する出力制御情報と、AR合成部23に供給する合成制御情報とを生成する。この場合、制御部10は、合成制御情報は、合成用画像PARと重なる、岩の被写体オブジェクトPD及び建物の被写体オブジェクトPEとについて、いずれの画像の画素を選択するかの制御情報である。
すなわち、合成用画像PARと、岩の被写体オブジェクトPDとが重なる領域では、岩の被写体オブジェクトPDが、合成用画像PARよりもカメラ部21に近いので、岩の被写体オブジェクトPDの画素データを出力するように、AR合成部23を制御する。また、合成用画像PARと、建物の被写体オブジェクトPEとが重なる領域では、建物の被写体オブジェクトPEが、合成用画像PARよりもカメラ部21から遠いので、合成用画像PARの画素データを出力するように、AR合成部23を制御する。
以上のようなAR合成部23での合成制御処理により、表示部20の表示画面には、図7に示すように、カメラ部21による撮影画像に、合成用画像PARが指定された挿入位置に重ねて表示されたAR合成画像が表示される。したがって、撮影者は、AR合成しようとする合成用画像PARの挿入位置や挿入状態、また、合成用画像PARの画像内容について、表示部20の表示画面において確認することができる。
そして、撮影者は、表示部20の表示画面に表示されているAR合成画像を確認後に、シャッター操作などの撮影実行指示操作を、操作入力部11を通じて行う。すると、表示部20にモニター表示されている通りのAR合成画像が、記録部24で撮影画像として記録される。そして、制御部10は、撮影者の指示操作に従い、そのAR合成画像を、メモリ部14やカード型メモリに保存する。
次に、制御部10の処理を中心としたAR合成画像の撮影処理の流れの一例を、図8及び図9を参照して説明する。
制御部10は、先ず、操作入力部11を通じて撮影モードを指定する操作があったか否か判別し(ステップS101)、撮影モードを指定する操作がなかったと判別したときには、その他の処理を実行し(ステップS102)、その後、ステップS101に処理を戻す。
ステップS101で、撮影モードを指定する操作がなされたと判別したときには、制御部10は、使用者により操作入力部11を通じてAR合成指示操作がなされたか否か判別し(ステップS103)、AR合成指示操作はなされていないと判別したときには、通常の撮影処理ルーチンを実行するようにする(ステップS104)。
また、ステップS103で、AR合成指示操作がなされたと判別したときには、制御部10は、合成用オブジェクトデータ格納部25に格納されている合成用オブジェクトの一覧リストを生成し、使用者による合成用オブジェクトの選択を促すようにする画面を表示部20の表示画面に表示する(ステップS105)。
そして、制御部10は、使用者からの操作入力部11を通じた選択入力操作が完了したか否か監視し(ステップS106)、選択入力操作が完了したと判別したときには、カメラ部21で撮影された撮影画像を取り込んで、表示部20の表示画面にモニター表示するようにする(ステップS107)。
このステップS107の処理と並行して、制御部10は、AF評価値算出部27からの分割領域BK毎のコントラストの情報を取得して、各分割領域毎の被写体距離を算出し保持する(ステップS108)。また、制御部10は、被写体オブジェクト分析部28からの解析結果を取得し、撮影画像の各被写体オブジェクトの被写体距離及び画枠FL内での占有領域を検出して保持する(ステップS109)。
次に、制御部10は、使用者に対して、合成用オブジェクトの撮影画像への挿入位置など、合成用オブジェクトの調整制御情報の入力を促す画面を、表示部20の表示画面に表示する(ステップS110)。
次に、制御部10は、使用者からの調整制御情報の入力を受け付けたか監視し(図9のステップS111)、調整制御情報の入力を受け付けたと判別したときには、合成用データ作成部26に調整制御情報を送って、合成用オブジェクトに対して修飾及び追加処理を行った合成用画像を作成させるように制御する(ステップS112)。
次に、制御部10は、合成用データ作成部26に出力制御情報を送ると共に、AR合成部23に合成制御情報を送って、撮影画像の画像データと合成用画像の合成用データとをAR合成させるように制御する(ステップS113)。この結果、表示部20の表示画面にはAR合成画像がモニター表示される(ステップS114)。
次に、制御部10は、撮影者により操作入力部11を通じた撮影実行指示を受け付けたか否か判別する(ステップS115)。そして、このステップS115で、撮影実行指示を受け付けてはいないと判別したときには、制御部10は、調整制御情報が変更されたか否か判別し(ステップS116)、調整制御情報が変更されてはいないと判別したときには、処理をステップS114に戻す。また、ステップS116で、調整制御情報が変更されたと判別したときには、制御部10は、処理をステップS112に戻し、このステップS112以降の処理を繰り返す。
また、ステップS115で、撮影実行指示を受け付けたと判別したときには、制御部10は、AR合成画像の記録処理を実行し、また、指示に応じて保存処理を実行する(ステップS117)。そして、制御部10は、操作入力部11を通じて使用者から、撮影モードの終了指示を受け付けたか否か判別し(ステップS118)、終了指示を受け付けてはいないと判別したときには、処理をステップS103に戻し、このステップS103以降の処理を繰り返す。また、ステップS118で終了指示を受け付けたと判別したときには、制御部10は、撮影モードを終了して、携帯電話端末の待ち受けモードに変更し(ステップS119)、その後、ステップS101に処理を戻す。
以上説明したように、上述の実施形態によれば、撮影者は、予め登録してある合成用オブジェクトを読み出して、撮影画像にAR合成し、そのAR合成画像を、1回の撮影実行指示により、記録することができる。したがって、例えば、撮影者は、自分の画像を合成用オブジェクトとして登録しておくことにより、風景に撮影者自身をAR合成した撮影画像を記録することが可能となる。また、旅行に参加できなった人の3次元オブジェクトのデータを合成用オブジェクトとして登録しておくことにより、当該不参加者をAR合成した記念写真を記録することも可能となる。
そして、上述の実施形態によれば、撮影画像にAR合成する合成用オブジェクトは、調整制御情報に基づいて、撮影シーンに合致するように修飾したり、追加の画像部分を付加したりすることができるので、自然な感じで撮影画像に合成用オブジェクトをAR合成した合成画像が得られるという効果がある。
また、上述の実施形態によれば、撮影画像にAR合成する合成用オブジェクトと、撮影画像の被写体オブジェクトとが重なる場合においては、被写体オブジェクトの被写体距離と、合成用オブジェクトを挿入する仮想の被写体距離とに基づいて、前後関係を把握して、カメラ部に近い方のみをAR合成画像とするようにしたので、この点でも自然な感じで撮影画像に合成用オブジェクトをAR合成した合成画像が得られるという効果がある。
[他の実施形態または変形例]
上述の実施形態では、合成用オブジェクトデータ格納部25を電子機器が備えるようにしたが、インターネットの所定のサイトに合成用オブジェクトデータ格納部25と同等の合成用オブジェクトデータ格納部を設けておき、電子機器から、そのサイトにアクセスして、必要な合成用オブジェクトを取得するようにしても良い。
以上の実施形態の説明では、合成用オブジェクトは、3次元オブジェクトのデータとしたが、2次元オブジェクトのデータであってもよい。また、撮影画像は、静止画に限らず、動画であっても良い。
また、以上の実施形態では、電子機器は、携帯電話端末の場合を例にとって説明したが、この発明の電子機器は、前述もしたように、デジタルカメラなどの撮影装置であっても勿論良い。要は、この発明の電子機器は、撮影機能を有する電子機器であれば、どのような電子機器であっても良い。