以下、図面を参照して、本発明の実施形態である情報処理装置について説明する。
(第1実施形態)
図1は、本発明の第1実施形態である情報処理装置を含む画像表示システムの概略構成を示す図である。図1において、第1実施形態の情報処理装置を含む画像表示システムSは、情報処理装置1、第1の撮像装置2、第2の撮像装置3及び画像表示装置4を備える。
情報処理装置1は、これら第1及び第2の撮像装置2、3により撮像された画像ファイルを取り込み、これら画像ファイルを複数の画像グループに分類して格納し、所定の規則に従って画像ファイルを表示する表示画面を生成するための表示画面生成用信号を生成する。情報処理装置1の詳細については後述する。第1の撮像装置2及び第2の撮像装置3は、被写体を撮像して画像ファイルを生成し、その際、画像ファイルの一部に撮像時刻データの一例である撮影日時データを付与する。第1の撮像装置2及び第2の撮像装置3は、例えばスマートフォンやデジタルスチルカメラである。
第1の撮像装置2によって撮像された画像ファイルは、無線LAN等の無線通信手段を介して情報処理装置1に取り込まれる。また、第2の撮像装置3によって撮像された画像ファイルは、一例として、データ転送ケーブルの一例であるUSB(Universal Serial Bus)ケーブル5により情報処理装置1に取り込まれる。あるいは、第1、第2の撮像装置2、3によって撮像された画像ファイルはメモリーカード6に格納され、このメモリーカード6が情報処理装置1に挿入されることにより情報処理装置1に取り込まれる。
画像表示装置4は、一例として、データ転送ケーブルの一例であるHDMI(High Definition Multimedia Interface:登録商標)ケーブル7により情報処理装置1に接続されている。情報処理装置1から出力される表示画面生成用信号はこのHDMIケーブル7を介して画像表示装置4に入力され、画像表示装置4は、入力された表示画面生成用信号に基づいてその表示画面4aに画像を表示する。あるいは、画像表示装置4は、コンポジット映像信号の送受信が可能なRCA端子を有するケーブル、S端子を有するケーブルにより情報処理装置1に接続されてもよく、さらには、画像表示装置4は、コンポーネント映像信号の送受信が可能なD端子を有するケーブルにより情報処理装置1に接続されてもよい。あるいは、画像表示装置4は、無線LAN等の無線通信手段を介して情報処理装置1に接続されてもよい。画像表示装置4は、例えばTV、モニタ、スマートフォンやタブレット端末である。
(第1実施形態の情報処理装置の構成)
図2は、本発明の第1実施形態である情報処理装置1の概略構成を示すブロック図である。図2において、本実施形態の情報処理装置1は、CPU(Central Processing Unit)10、ROM(Read Only Memory)11、RAM(Random Access Memory)12、入出力デバイス13、HDMIインタフェース(I/F)14、ネットワークインタフェース(I/F)15、HDD部(Hard Disk Drive)16及び無線LANインタフェース(I/F)17を備えており、これらはバスにより互いに接続されている。
CPU10は、後述するROM11内に格納されたファームウェア等のプログラムが実行されることにより、情報処理装置1全体の制御を行う。また、CPU10は、ROM11内に格納されたプログラムが実行されることにより、図3に示すような各機能部としても動作する。図3に示す各機能部の動作については後述する。ROM11には、上述したファームウェア等のプログラムが格納されている。RAM12は情報処理装置1のワークメモリとして機能し、CPU10を含めた情報処理装置1の動作時に一時的に使用されるプログラム、データ等が格納される。
入出力デバイス13は、入力インタフェース(I/F)13a、入力指示部13b、カードインタフェース(I/F)13c及びUSBインタフェース(I/F)13dを備える。入力インタフェース13aには入力指示部13b及び入力機器20が接続され、ユーザが入力指示部13bまたは入力機器20を操作することにより入力される入力信号を受信する。入力指示部13bとしては、例えば画像取り込み指示ボタン等が挙げられ、また、入力機器20としては、例えばリモコン、キーボード、マウス等が挙げられる。カードインタフェース13cはカードスロット(図略)を備え、このカードスロットに挿入されたメモリーカード6に対してデータの読み出し/書き込みを行う。メモリーカード6の形式に限定はなく、一例としてmini、microを含むSDメモリーカード、メモリースティック(登録商標)が好適に挙げられる。USBインタフェース13dはUSBコネクタ(図略)を備え、このUSBコネクタに直接、あるいはUSBケーブル5を介して接続されたUSB機器21に対してデータの読み出し/書き込みを行う。USB機器21としては、USBフラッシュメモリ、USBコネクタを備えた第1及び第2の撮像装置2、3が挙げられる。
HDMIインタフェース14はHDMIコネクタ(図略)を備え、このHDMIコネクタにHDMIケーブル(図略)を介して接続されたHDMI出力機器22に対してAVストリーム(映像信号及び音声信号)を出力する。HDMI出力機器22としては、例えば画像表示装置4が挙げられる。ネットワークインタフェース15はネットワークコネクタ(図略)を備え、このネットワークコネクタにネットワークケーブル(図略)を介してルータ23が接続され、このルータ23がインターネット等のWAN(Wide Area Network)24に接続されることで、外部ネットワークとの間でデータの送受信がされる。このネットワークインタフェース15は、例えばIEEE(The Institute of Electrical and Electronics Engineers)802.3規格に基づく有線通信を行うものである。
HDD部16は、HDD16bとHDDインタフェース(I/F)16aとを備える。HDD16bは、記録媒体であるディスクと、このディスクの回転を行う回転部と、ディスクに対してデータの読み出し/書き込みを行うヘッド部とを備える(いずれも不図示)。HDDインタフェース16aは、このHDD16bに対するデータの読み出し/書き込み指令があった場合に、HDD16b全体の制御を行うとともに、データの読み出し/書き込み制御を行い、読み出されたデータを出力する。また、このHDD16bには、第1及び第2の撮像装置2、3から取り込んだ画像ファイル50、アルバムテーブル51及び顔認識テーブル52が格納されている。本実施形態の画像ファイル50は、ユーザの指示等に基づいて複数のアルバムと呼ばれる画像グループに分類されてHDD16b内に格納されている。どの画像ファイル50がどの画像グループに属するかについての情報はアルバムテーブル51内に記述されている。
画像ファイル50をHDD16bに格納する手法は任意であるが、一例として、上述のように第1及び第2の撮像装置2、3が撮像して得られた画像ファイルをメモリーカード6内に格納し、このメモリーカード6をカードインタフェース13cのカードスロットに挿入して、入力指示部13bが操作されたことによりこのメモリーカード6内に格納された画像ファイルをHDD16b内に取り込む手法が挙げられる。また、画像ファイルを撮像した第2の撮像装置3に接続されたUSBケーブル5をUSBインタフェース13dのUSBコネクタに挿入して、入力指示部13bが操作されたことにより第2の撮像装置3内に格納された画像ファイルをHDD16b内に取り込んでもよい。また、第1の撮像装置2と情報処理装置1の無線LANインタフェース24との間で無線通信を確立して、第1の撮像装置2からの指示により第1の撮像装置2内に格納された画像ファイルを無線通信経由でHDD16b内に取り込んでもよい。さらに、WAN24に存在する画像ファイルをルータ23及びネットワークインタフェース15を介してHDD16b内に取り込んでもよい。画像ファイル50、アルバムテーブル51及び顔認識テーブル52の詳細な構成については後述する。なお、図2において画像ファイル50は1つのみ図示されているが、本実施例において画像ファイル50は複数個HDD16b内に格納されていてもよい。
無線LANインタフェース17は、例えばIEEE802.11規格に準拠して無線クライアント25と無線通信を行う。この無線LANインタフェース17は、情報処理装置1を無線LANアクセスポイントとして動作させることが可能である。無線クライアント25としては、例えば第1の撮像装置2が挙げられる。
(第1実施形態の情報処理装置の機能構成)
図3は、第1実施形態の情報処理装置1の機能構成を示す機能ブロック図である。図3において、本実施形態の情報処理装置1は、制御部30、記憶部31、入力部32及び出力部33を備える。
記憶部31には、画像ファイル50、アルバムテーブル51及び顔認識テーブル52が格納されている。画像ファイル50は画像データ50a及び撮像時刻データ50bを備える。画像ファイル50、アルバムテーブル51及び顔認識テーブル52の詳細については後述する。
制御部30は、配列部34、表示範囲決定部35、計数部36、表示画像データ決定部37、顔認識処理部38、特徴量算出部39、特徴量変化算出部40及び表示制御部41を備える。
配列部34は、画像データ50aに関連付けられた撮像時刻データ50bに基づいて、画像ファイル50を画像グループ毎に時間軸上に配列する。より詳細には、配列部34は、記憶部31に格納されている画像ファイル50を、アルバムテーブル51に記述された情報に基づいて画像グループに分類し、この画像グループ毎に、画像ファイル50の撮像時刻データ50bを参照してこの撮像時刻データ50b順に時間軸上に配列する。
配列部34による画像ファイル50の配列作業を行うタイミングは任意であり、後述する表示範囲決定部35により表示範囲が受け入れられた後に、この表示範囲内に撮像時刻データ50bが属する画像ファイル50について配列作業を行ってもよく、また、計数部36により表示範囲内に撮像時刻データ50bが属する画像ファイル50の数を計数した後に、この表示範囲内に撮像時刻データ50bが属する画像ファイル50について配列作業を行ってもよい。また、後述のように、情報処理装置1への取り込み日時に関するデータが画像ファイル50に記述されている場合は、配列部34は、取り込み日時データに基づいて画像ファイル50を画像グループ毎に時間軸上に配列してもよい。
表示範囲決定部35は、画像ファイル50を表示制御部41による表示対象とするための撮像時刻データ50bの表示範囲の決定を受け入れる。より詳細には、表示範囲決定部35は、ユーザに表示範囲の入力をさせるための入力画面を生成するための入力画面生成用信号を生成し、出力部33を介してこの入力画面生成用信号をHDMI出力機器22に出力する。HDMI出力機器22は、この入力画面生成用信号に基づいて入力画面を表示画面上に表示する。そして、ユーザはこの入力画面を見ながら、情報処理装置1による画像ファイル50の表示を希望する表示範囲を、入力機器20を用いて入力する。この表示範囲の入力は、一例として、個々の画像グループに属する画像ファイル50の撮像時刻データ50bのうち最も早い日時を始点とした期間(何ヶ月、何年など)である。表示範囲は、画像グループ毎に入力されてもよく、あるいは、複数の画像グループに共通の表示範囲が入力されてもよい。さらには、表示範囲決定部35は、撮像時刻データの表示範囲の決定を複数受け入れてもよい。情報処理装置1の表示範囲決定部35は、入力機器20を用いてユーザが入力して決定した表示範囲を入力部32を介して受け入れる。表示範囲決定部35が受け入れた表示範囲に関する情報は、記憶部31に一時的に格納される。
計数部36は、表示範囲決定部35により受け入れられた撮像時刻データ50bの表示範囲内に属する撮像時刻データ50bが関連付けられた画像ファイル50の数を、画像グループ毎に計数する。より詳細には、計数部36は、表示範囲決定部35により受け入れられた表示範囲に関するデータを参照し、この表示範囲内に撮像時刻データ50bが属する画像ファイル50を記憶部31から検索する。次いで、計数部36は、記憶部31から検索した、表示範囲内に撮像時刻データ50bが属する画像ファイル50の数を、画像グループ毎に計数する。計数部36が計数した、画像グループ毎の画像ファイル50の数は記憶部31に一時的に格納される。
表示画像データ決定部37は、表示範囲決定部35により受け入れられた撮像時刻データの表示範囲と計数部36により計数された画像グループ毎の画像データの数とに基づいて、表示制御部41による表示対象とすべき画像ファイル50を画像グループ毎に決定する。表示画像データ決定部37により決定される、表示制御部41による表示対象とすべき画像ファイル50の数は画像グループ毎に異なってもよいが、好ましくは、表示画像データ決定部37は、画像グループ毎に表示対象とすべき画像ファイル50の数がそれぞれ略同一数となるように、表示対象とすべき画像ファイル50を決定する。特に、表示範囲決定部35が撮像時刻データ50bの表示範囲の決定を複数受け入れる場合は、表示画像データ決定部37は、各々の撮像時刻データ50bの表示範囲において、画像グループ毎に表示対象とすべき画像ファイル50の数がそれぞれ略同一数となるように、表示対象とすべき画像データ50を決定する。当然、表示画像データ決定部37が決定する、表示制御部41による表示対象とすべき像ファイル50の数は、画像グループ毎にそれぞれ略同一数であることが必須ではなく、表示制御部41による画像ファイル50の表示の態様等に応じて決定されうる。
顔認識処理部38は、画像ファイル50の画像データ50aに対して顔認識処理を行う。より詳細には、顔認識処理部38は、記憶部31に格納されている画像ファイル50に対して、画像データ50aに撮像されている被写体の顔認識処理を行う。顔認識処理部38は、少なくとも人物の顔が撮像されている範囲を画像データ50aから抽出し、この抽出された範囲にある画像データ50aに基づいて、人物の顔の特徴を示す部分を検出し、この人物の顔の特徴を示す部分の相違に基づいて、画像データ50aに撮像されている被写体の顔を区分し、顔毎に一意の顔認識IDを付与する。加えて、顔認識処理部38は、顔認識テーブル52に記述されている、被写体の名前等被写体を識別するための被写体情報を参照し、区分された被写体の顔を示す顔認識IDと、被写体の名前等被写体を識別するための被写体情報とを紐付けする。これにより、顔認識処理部38は、画像ファイル50の画像データ50aに基づいて、この画像ファイル50と被写体を識別するための顔認識情報とを紐付けすることができる。顔認識処理部38による顔認識処理の具体的手法については公知のものが好適に採用可能であるので、ここではこれ以上の詳細な説明を省略する。なお、顔認識処理部38は、被写体情報と顔認識IDとの紐付けを行わずに、顔認識処理を行って、画像データ50aに撮像されている被写体の顔毎に一意の顔認識IDを付与するのみであってもよい。顔認識IDと被写体情報との紐付けは必須ではなく、顔認識IDのみで後述する各種処理を行ってもよいし、別途ユーザが被写体情報と顔認識IDとの紐付け処理を行ってもよい。
顔認識処理部38による画像ファイル50の画像データ50aに対して顔認識処理を行うタイミングも任意であり、後述する表示範囲決定部35により表示範囲が受け入れられた後に、この表示範囲内に撮像時刻データ50bが属する画像ファイル50の画像データ50aに対して顔認識処理を行ってもよく、また、計数部36により表示範囲内に撮像時刻データ50bが属する画像ファイル50の数を計数した後に、この表示範囲内に撮像時刻データ50bが属する画像ファイル50の画像データ50aに対して顔認識処理を行ってもよい。
そして、好ましくは、表示画像データ決定部37は、顔認識処理部38による顔認識処理結果に基づいて、被写体の顔が撮像された画像ファイル50を表示対象とすべき画像ファイル50として決定する。さらに好ましくは、表示画像データ決定部37は、顔認識処理部38による顔認識処理結果に基づいて、撮像された被写体の顔の構図が画像グループ間でそれぞれ類似する画像ファイル50を表示対象とすべき画像ファイル50として決定する。
特徴量算出部39は、画像ファイル50の画像データ50aの特徴量を算出する。特徴量算出部39が算出する、画像データ50aの特徴量とは、文字通り画像データ50aを特徴付けるための量であり、画像データ50a内に含まれる被写体(物体)認識に好適に用いられる。物体認識に用いられる特徴量は、例えば画像データ50aのグレースケールの勾配変化がある局所点(キーポイント)において算出可能であり、この局所点と関連付けられて特徴量が算出される。従って、一つの画像データ50a内に複数個の特徴量が算出されうる。特徴量算出部39による、画像データ50aの特徴量算出の具体的手法については公知のものが好適に採用可能であるので、ここではこれ以上の詳細な説明を省略する。
特徴量算出部39による画像ファイル50の画像データ50a特徴量算出処理を行うタイミングも任意であり、後述する表示範囲決定部35により表示範囲が受け入れられた後に、この表示範囲内に撮像時刻データ50bが属する画像ファイル50の画像データ50aに対して特徴量算出処理を行ってもよく、また、計数部36により表示範囲内に撮像時刻データ50bが属する画像ファイル50の数を計数した後に、この表示範囲内に撮像時刻データ50bが属する画像ファイル50の画像データ50aに対して特徴量算出処理を行ってもよい。また、特徴量算出部39が算出する特徴量は画像データ50a全体についてではなく、画像データ50aの一部についての特徴量であってもよい。さらに言えば、特徴量算出部39は、画像データ50aのうち、顔認識処理部38が抽出した、少なくとも人物の顔が撮像されている範囲について特徴量を算出してもよい。
特徴量変化量算出部40は、特徴量算出部39により算出された特徴量に基づいて、撮像時刻データの表示範囲内に属する画像ファイル50の画像データ50aの特徴量の変化量を算出する。上述のように、特徴量算出部39が算出する画像データ50aの特徴量は局所点毎に算出されうるものであり、しかも、局所点における特徴量が多次元のベクトル量であることもある。従って、特徴量変化量算出部40は、画像ファイル50単位での特徴量の変化量を算出するために、例えばベクトル量を無次元のスカラー量にし、さらに、一つの画像ファイル50に関連付けられた特徴量を全て加算するなどして、画像ファイル50単位での特徴量の変化量を算出することが好ましい。
そして、表示範囲決定部35が撮像時刻データ50bの表示範囲の決定を複数受け入れる場合は、好ましくは、表示画像データ決定部37は、特徴量変化算出部40により算出された特徴量変化量に基づいて、特徴量変化量が少ない撮像時刻データの表示範囲において表示対象とすべき画像ファイル50の数よりも、特徴量変化量が大きい撮像時刻データの表示範囲において表示対象とすべき画像ファイル50の数を多くするように、表示対象とすべき画像ファイル50を決定する。また好ましくは、表示範囲決定部37は、特徴量変化量算出部40により算出された特徴量変化量が略等しくなるように、特定の画像グループの画像ファイル50を表示対象とするための撮像時刻データの表示範囲の決定を受け入れる。
表示制御部41は、画像ファイル50の画像データ50aを表示する表示画面を生成するための表示画面生成用信号を生成する。このような表示画面としては、いわゆるスライドショー表示と呼ばれる表示画面が好適に挙げられる。しかし、表示制御部41が、画像ファイル50を表示させる表示画面の例としては、上述したスライドショー表示に限定されず、いわゆるフォトブックと呼ばれる、銀塩写真を貼付するためのアルバムに類似した表示をさせてもよい。
表示制御部41による表示の態様は任意であり、一例として、表示制御部41は、表示画像データ決定部37により決定された画像ファイル50の画像データ50aを、この画像ファイル50が分類される画像グループを示す情報とともに、配列部34により配列された順に表示する表示画面を生成するための表示画面生成用信号を生成する。あるいは、表示制御部41は、表示画像データ決定部37により決定された画像ファイル50の画像データ50aを、配列部34により配列された順に、画像グループ毎に同時に表示する表示画面を生成するための表示画面生成用信号を生成する。さらにあるいは、表示制御部41は、表示画像データ決定部37により決定された、表示対象とすべき画像ファイル50の枚数に基づいて、表示画面における画像ファイル50の画像データ50aの表示態様を異ならせる。
入力部32は、第1、第2の撮像装置2、3を含む外部入力機器から情報処理装置1に入力される各種データの入力を受け付け、入力された各種データを制御部30に入力し、あるいは記憶部31に格納する。出力部33は、表示画面生成用信号を含む、制御部30または記憶部31内の各種データを、画像表示装置4を含む外部出力機器に出力する。
以上の構成において、制御部30及び制御部30を構成する配列部34、表示範囲決定部35、計数部36、表示画像データ決定部37、顔認識処理部38、特徴量算出部39、特徴量変化算出部40及び表示制御部41は主にCPU10により構成され、記憶部31は主にメモリーカード6、ROM11、RAM12、HDD部16及びデータ記憶機能を有するUSB機器21により構成され、入力部32は主に入出力デバイス13、ネットワークインタフェース15及び無線LANインタフェース17により構成され、出力部33は主にHDMIインタフェース14、ネットワークインタフェース15及び無線LANインタフェース17により構成される。図3に示す情報処理装置1の各機能部の動作については後に詳述する。
(画像ファイルのデータ構造)
図4は、本実施形態の情報処理装置1のHDD16b内に格納されている画像ファイルのデータ構造の一例を示す図である。本実施形態の画像ファイル50はExif(Exchangeable image file format)規格で定められるファイルフォーマットを有し、そのヘッダ部分60にタグ情報が格納され、さらにサムネイル画像データが格納されたサムネイル画像領域61、及び画像データ50aが格納された画像データ領域62が設けられている。本実施形態の画像ファイル50では、ヘッダ部分60に格納されたタグ情報の少なくとも一部は、一例として被写体撮像時に撮像装置2、3により画像ファイル50のヘッダ部分60の所定領域に記述される。あるいは、ヘッダ部分60に格納されたタグ情報の少なくとも一部は、被写体撮像後に撮像装置2、3により記述されてもよく、さらには、情報処理装置1により記述されうる。
画像ファイル50のヘッダ部分60には、画像ファイル50を特定するための一意の値(ID)が記述されるID領域63、画像データ50aの画素数が記述される画素数領域64、画像ファイル50の撮影日時である撮像時刻データ50bが記述される撮影日時領域65、画像ファイル50の情報処理装置1への取り込み日時が記述される取り込み日時領域66、画像ファイル50が撮像された撮像装置2、3の機種名が記述される機種名領域67、画像ファイル50の画像データ50aが撮像された際の撮像装置2、3の各種情報、例えば絞り値、焦点距離が記述される撮影情報領域68、画像ファイル50が撮像されたときに撮像装置2、3が所在する位置をGPSシステムにより得た位置情報(例えば緯度、経度、高度情報)が記述されるGPS情報領域69、顔認識処理部38により行われた顔認識処理の結果である顔認識情報、より詳細には、後述する顔認識テーブル52の顔認識ID領域74に格納された顔認識IDのいずれかが記述される顔認識情報領域70、及び情報処理装置1のユーザが各種情報を任意に記述するためのユーザ定義領域71が設けられている。当然、これ以外の領域を画像ファイル50のヘッダ部分60に設けることは任意である。
ここで、ヘッダ部分60の各領域に記述される各種情報について一例を挙げて説明する。撮影日時領域65には、撮像装置2、3の内部時計を参考にして、画像ファイル50の画像データ50aが生成されたときの日時、つまり撮影日時を示す撮像時刻データ50bが、一例として“2013/06/01 10:15:24”、すなわち年月日及び秒単位までの時間として記述される。取り込み日時領域66には、情報処理装置1の図略の内部時計を参考にして、画像ファイル50の画像データ50aが情報処理装置1に取り込まれたときの日時、つまり取り込み日時が、一例として“2013/06/28 18:00:58”、すなわち年月日及び秒単位までの時間として記述される。機種名領域67には、撮像装置2、3の機種名が、撮像装置2、3の製造者が定めたデータで、一例として「XYZ−○」として記述される。撮影情報領域68には、画像ファイル50の画像データ50aが生成された際の撮像装置2、3の各種情報が、一例として「絞り値F=8、シャッタースピード1/125」として記述される。GPS情報領域69には、画像ファイル50が生成されたときに撮像装置2、3が所在する位置をGPSシステムを用いて得た位置情報を示すデータ、より詳細には撮像装置2、3が所在する位置の緯度情報、経度情報及び高度情報が、一例として“lat=+35.09.36.266, lon=+136.54.21.114,alt=50”として記述される。
(アルバムテーブルのデータ構造)
図5は、本実施形態の情報処理装置1のHDD16b内に格納されているアルバムテーブル51のデータ構造の一例を示す図である。本実施形態におけるアルバムテーブル51にはID領域72及びアルバムタグ領域73が設けられている。ID領域72には、画像ファイル50のID領域63に記述された画像ファイル50のIDが格納され、アルバムタグ領域73には、ID領域72で特定される画像ファイル50が属するアルバム(画像グループ)を示すアルバムタグが格納されている。本実施形態では、画像ファイル50は複数のアルバム(画像グループ)に分類され、また、一つの画像ファイル50が複数のアルバムに属する場合もある。従って、アルバムタグ領域73には複数のアルバムタグが格納されることもある。
(顔認識テーブルのデータ構造)
図6は、本実施形態の情報処理装置1のHDD16b内に格納されている顔認識テーブル52のデータ構造の一例を示す図である。本実施形態における顔認識テーブル52には顔認識ID領域74及び被写体情報領域75が設けられている。顔認識ID領域74には、顔認識処理部38による顔認識処理の結果である、画像データ50aに撮像されている被写体の顔を区分するための顔認識IDが格納されている。また、被写体情報領域75には、被写体の名前等被写体を識別するための被写体情報が格納されている。被写体情報領域75に格納される被写体情報は、例えばユーザにより特定の顔認識IDと紐付けられた状態で入力される。
(第1実施形態の情報処理装置の概略動作及び効果)
次に、図7〜図11を参照して、本実施形態の情報処理装置1の概略動作について説明する。
図7は、本実施形態の情報処理装置1の記憶部31内に格納されている画像ファイル50の一部を示す図である。本実施形態の情報処理装置1の記憶部31内には、複数の画像グループ(アルバム)に分類される画像ファイル50が格納されている。図7は、これら画像グループのうち、アルバムA及びアルバムBにそれぞれ分類されている画像ファイル50について、配列部34により撮像時刻データ50b順に配列された状態を示す図である。
図7に示すように、アルバムAには、このアルバムAに分類される画像ファイル50の中で最も早い撮像時刻データ50bである“2010/7/3”を有する画像ファイル50を始めとして、2012年に至るまで順次撮像された画像ファイル50が分類されている。一方、アルバムBには、このアルバムBに分類される画像ファイル50の中で最も早い撮像時刻データ50bである“2007/1/12”を有する画像ファイル50を始めとして、2010年に至るまで順次撮像された画像ファイル50が分類されている。なお、図7及び後述する図8では、説明の簡略化のために、撮像時刻データ50bについては日付部分のみ示している。
図7及び図8の説明においては、アルバムA及びアルバムBには、それぞれ異なる特定の人物についてその誕生日から撮像を開始した画像ファイル50が分類されているものとする。従って、アルバムAに分類される画像ファイル50の撮像時刻データ50bの中で最も早い撮像時刻データ50bである“2010/7/3”は、特定の人物の誕生日であり、また、アルバムBに分類される画像ファイル50の撮像時刻データ50bの中で最も早い撮像時刻データ50bである“2007/1/12”は、別の特定の人物の誕生日である。
図7に示すように、画像ファイル50を撮像時刻データ50b順に配列した状態で、一般的な情報処理装置によりスライドショー表示を行うための表示画面生成用信号を生成して、この表示画面生成用信号に基づいてHDMI出力機器22等により表示画面を表示した場合、アルバムBに含まれる画像ファイル50のうち最先の撮像時刻データ50bである“2007/1/12”のほうが、アルバムAに含まれる画像ファイル50のうちである“2010/7/3”よりも時間的に先行しているので、一般的な情報処理装置は、最先の撮像時刻データ50bである“2007/1/12”を有する、アルバムBに分類される画像ファイル50を先頭に、撮像時刻データ50bが2007年〜2009年である画像ファイル50を順に表示する可能性がある。そして、撮像時刻データ50bが2010年である画像ファイル50をスライドショー表示する段階になって、一般的な情報処理装置は初めてアルバムAに分類される画像ファイル50をスライドショー表示する可能性がある。上述のように、アルバムA及びアルバムBに、それぞれ異なる特定の人物をその誕生日から撮像を開始した画像ファイル50が分類されている場合、ユーザは人物の成長過程を交互に比較しながら閲覧したいという要望がある。しかしながら、一般的な情報処理装置では、このようなユーザの要望を満足させるスライドショー表示を行うことは困難である。
加えて、仮に一般的な情報処理装置が、撮像時刻データ50bが早い順にアルバムA及びアルバムBに分類される画像ファイル50を交互にスライドショー表示することができた場合を考える。しかしながら、画像ファイル50が撮像される頻度や時間間隔はアルバム毎に異なる可能性があり、また、同じアルバムに属する画像ファイル50であっても、時間軸を幾つかの区間に区切って考えた場合、画像ファイル50が撮像される頻度や時間間隔は区間毎に異なる可能性がある。従って、一般的な情報処理装置が、アルバムA及びアルバムBに分類される画像ファイル50を交互にスライドショー表示した場合でも、特定の区間内の撮像時刻データ50bを有する画像ファイル50について考えると、スライドショー表示される画像ファイル50の枚数は区間毎、さらにはアルバム毎に異なる可能性がある。従って、この場合でも、一般的な情報処理装置では、人物の成長過程を交互に比較しながら閲覧したいというユーザの要望を十分に満足させるスライドショー表示を行うことは困難である。
そこで、本実施形態の情報処理装置1では、表示画面による画像ファイル50の表示の際に、表示範囲決定部35により画像ファイル50を表示させるための撮像時刻データ50bの時間軸上の区間(表示範囲)を設定し、計数部36によりこの区間内の撮像時刻データ50bを有する画像ファイル50の数を計数し、表示画像データ決定部37が、撮像時刻データ50bの時間軸上の区間とこの区間内の撮像時刻データ50bを有する画像ファイル50の数とに基づいて、表示制御部41による表示対象とすべき画像ファイル50そのものとその全体数とを決定している。これにより、区間内の撮像時刻データ50bを有する画像ファイル50から、アルバム単位での比較対象が容易な画像ファイル50そのものとその全体数とを適切に設定することができ、人物の成長過程を交互に比較しながら閲覧したいというユーザの要望を満足させる表示を行うことが可能になる。すなわち、本実施形態の情報処理装置1によれば、個々の画像グループ(アルバム)に属する画像ファイルを容易に比較して閲覧することの可能な情報処理装置1を実現することが可能になる。
次に、図8を参照して、本実施形態の情報処理装置1による、表示制御部41による表示対象とすべき画像ファイル50そのものとその全体数との決定手順の一例について説明する。
ユーザは、情報処理装置1による画像ファイル50の表示を希望するアルバムA、Bについて、それぞれ表示対象とすべき表示範囲を決定して入力し、情報処理装置1の表示範囲決定部35は、ユーザによる表示範囲の決定を受け入れる。一例として、図8に示すように、ユーザにより3つの表示範囲(表示範囲1〜3)が決定されて入力され、表示範囲1は、アルバムA、Bに分類されている画像ファイル50に撮像されている被写体の誕生日から30日までの時間区間、表示範囲2は誕生日から30日〜60日の時間区間、表示範囲3は誕生日から60日〜90日の時間区間であったとする。
計数部36は、これら表示範囲1〜3内に属する撮像時刻データ50bを有する画像ファイル50の数をアルバムA、B毎に計数する。図8に示す例では、表示範囲1内に属する撮像時刻データ50bを有する画像ファイル50の数は、アルバムA、Bともに3枚、表示範囲2内に属する撮像時刻データ50bを有する画像ファイル50の数は、アルバムA、Bともに2枚、表示範囲3内に属する撮像時刻データ50bを有する画像ファイル50の数は、アルバムA、Bともに1枚である。
そして、表示画像データ決定部37は、表示範囲決定部34により受け入れられた表示範囲1〜3と、計数部36により計数された、これら表示範囲1〜3内に属する撮像時刻データ50bを有する画像ファイル50のアルバムA、B毎の数とに基づいて、表示制御部41による表示対象とすべき画像ファイル50とその枚数とを表示範囲1〜3毎に決定する。
図8に示す例では、表示範囲1内に属する撮像時刻データ50bを有する画像ファイル50の数は、アルバムA、Bともに3枚、表示範囲2内に属する撮像時刻データ50bを有する画像ファイル50の数は、アルバムA、Bともに2枚であったから、表示範囲1、2内に属する撮像時刻データ50bを有する画像ファイル50を全て表示制御部41による表示対象とすると、表示範囲1内に属する撮像時刻データ50bを有する画像ファイル50の表示時間が、表示範囲2内に属する撮像時刻データ50bを有する画像ファイル50の表示時間よりも長くなる可能性がある。ユーザによっては、誕生日付近の画像ファイル50を長く閲覧することを希望する可能性はあるが、誕生日からの時間経過、そして被写体たる人物の成長過程を全般的に把握したいユーザにとっては、表示範囲1に係る画像ファイル50の表示時間が表示範囲2に係る画像ファイル50の表示時間よりも長いことはあまり好ましくない可能性がある。
そこで、表示画像データ決定部37は、表示範囲1に係る画像ファイル50について、表示制御部41による表示対象とすべき画像ファイル50の枚数を、アルバムA、Bともに2枚にする一方、表示範囲2に係る画像ファイル50について、表示制御部41による表示対象とすべき画像ファイル50の枚数を、表示範囲2内に属する撮像時刻データ50bを有する画像ファイル50全て、すなわち2枚にし、これら表示範囲1、2においてアルバムA、B毎に表示対象とすべき画像ファイル50の枚数を同一にする。これにより、表示制御部41による、表示範囲1、2において表示対象となった画像ファイル50の表示時間を略同一にすることができる。
一方、表示範囲3内に属する撮像時刻データ50bを有する画像ファイル50の数は、アルバムA、Bともに1枚である。仮に、表示範囲1、2に係る画像ファイル50について、表示制御部41による表示対象とすべき画像ファイル50の枚数を表示範囲3に揃えるために、アルバムA、Bともに全て1枚にしてしまうと、表示範囲1〜3内において表示対象とすべき画像ファイル50がかなり少なくなってしまう。従って、表示画像データ決定部37は、上述のように、表示範囲1、2に係る画像ファイル50について、表示対象とすべき画像ファイル50の枚数をアルバムA、Bともに2枚にする一方、表示範囲3に係る画像ファイル50については、表示対象とすべき画像ファイル50の枚数をアルバムA、Bともに1枚とする。このように、全ての表示範囲1〜3において表示対象とすべき画像ファイル50の枚数を同一にする必要はなく、表示範囲1〜3内に属する撮像時刻データ50bを有する画像ファイル50とその枚数とに基づいて適宜決定すればよい。
なお、図8では複数の表示範囲(表示範囲1〜3)がユーザにより決定されていたが、各アルバムについて単一の表示範囲がユーザにより決定されてもよい。加えて、図8では全ての表示範囲1〜3が同一の期間(30日)になっていたが、複数の表示範囲においてその期間が異なるようにユーザにより決定されてもよい。この場合、表示画像データ決定部37は、表示範囲の時間区間の長さに基づいて、表示制御部41による表示対象とすべき画像ファイル50とその枚数とを決定することが好ましい。また、表示範囲がアルバム毎に異なるように表示範囲がユーザにより決定されてもよい。さらに、図8に示す例では、それぞれのアルバムA、Bに分類される画像ファイル50のうち、最先の撮像時刻データ50bを始点とした表示範囲がユーザにより決定されていたが、アルバムA、Bに分類される画像ファイル50のうち最も遅い(つまり一番最近の)撮像時刻データ50bを始点として、時間軸を遡るように表示範囲が決定されてもよい。さらに、最先または最も遅い撮像時刻データ50bを始点として複数の表示範囲が決定される場合、始点に近い表示範囲よりも始点から遠い表示範囲の区間が大きく、つまり時間的に長くなるように決定されてもよい。始点から遠い表示範囲については、この表示範囲内に属する撮像時刻データ50bを有する画像ファイル50の数が少なくなることが考えられるからである。
ここで、図8に示すように、計数部36により計数された画像ファイル50の枚数が、表示対象とすべき画像ファイル50の枚数よりも多い場合、どの画像ファイル50を表示対象とするかについて何らかの規則を設けることが好ましい。一例として、表示画像データ決定部37は、顔認識処理部38の顔認識処理結果に基づいて、被写体として人物の顔が撮像されている画像データ50aを有する画像ファイル50を優先的に表示対象に決定することが好ましい。加えて、表示画像データ決定部37は、顔認識処理部38の顔認識処理結果に基づいて、被写体として人物の顔が撮像されている画像データ50aにおいて、この被写体の顔の構図が画像グループ間で類似する画像ファイル50を優先的に表示対象に決定することが好ましい。顔認識処理部38の顔認識処理結果に基づいて、上述のように表示画像データ決定部37が表示対象とすべき画像ファイル50を決定することにより、表示対象として好ましい、すなわち、ユーザが閲覧を希望すると推測される画像ファイル50を優先して表示対象とすることができる。
あるいは、表示画像データ決定部37は、特徴量算出部39及び特徴量変化量算出部40により算出された特徴量の変化量に基づいて、表示対象とすべき画像ファイルを決定することが好ましい。より詳細には、表示画像データ決定部37は、表示範囲内において特徴量の変化量が大きい場合は、表示対象とすべき画像ファイル50の枚数を多くし、表示範囲内において特徴量の変化が少ない場合は、表示対象とすべき画像ファイル50の枚数を少なくすることが好ましい。特徴量の変化量が大きい場合、画像ファイル50に撮像されている被写体である人物の顔が大きく変化している、すなわち人物が成長期にあることが推測される。従って、特徴量の変化量に基づいて表示画像データ決定部37が表示対象とすべき画像ファイル50の枚数を決定することにより、成長期にある被写体が撮像された画像ファイル50を数多く表示対象とすることができ、この結果、表示対象として好ましい、すなわち、ユーザが閲覧を希望すると推測される画像ファイル50を優先して表示対象とすることができる。なお、表示範囲内において特定の画像ファイル50のみの特徴量の変化量が他の画像ファイル50の特徴の変化量より際立って大きいまたは小さい場合は、その特定の画像ファイル50に撮像された被写体の表情が大きく異なる(泣き顔である、など)ものと判断して、当該特定の画像ファイル50を表示対象から除外してもよい。
加えて、特徴量算出部39及び特徴量変化量算出部40により算出された特徴量の変化量に基づいて、撮像時刻データ50bの表示範囲を決定してもよい。例えば、配列部34により撮像時刻データ50b順に配列された画像ファイル50の特徴量が、図9に示すようなものであったとする。図9において横軸は撮像時刻データ50bの時間軸であり、縦軸は画像ファイル50の特徴量である。ここで、一定の特徴量の変化量Δcがあった時の時間軸の長さΔtを撮像時刻データ50bの表示範囲として決定し、表示範囲決定部35はこの表示範囲の決定を受け入れてもよい。特徴量は、画像ファイル50に撮像された被写体たる人物の成長に伴って変化すると考えることができるので、上述のように表示範囲を決定することで、人物の成長度合いに応じて表示範囲を決定することができる。特に、特徴量算出部39が、顔認識処理部38が抽出した、少なくとも人物の顔が撮像されている範囲の画像データ50aについて特徴量を算出している場合、人物の成長は顔において著しいので、さらに、人物の成長度合いに応じて表示範囲を決定することができる。
そして、表示制御部41は、表示画像データ決定部37により表示対象として決定された画像ファイル50を表示するための表示画面を生成する表示画面生成用信号を生成する。表示制御部41による画像ファイル50の表示態様の一例として、表示制御部41は、例えば図10に示すように、特定の表示範囲に属する画像ファイル50について、アルバムAに分類される画像ファイル50とアルバムBに分類される画像ファイル50とを一定時間毎に交互に表示するような表示画面を生成してもよい。この際、画像ファイル50の画像データ50aに、この画像ファイル50がどのアルバムに分類されるかを示す情報80を重畳して表示することが好ましい。あるいは、図11に示すように、特定の表示範囲に属する画像ファイル50について、アルバムAに分類される画像ファイル50とアルバムBに分類される画像ファイル50とを表示画面上で上下または左右に並べて一定時間毎に順に表示することで、アルバムA及びアルバムBに分類される画像ファイル50を同時に表示するような表示画面を生成してもよい。
当然、表示制御部41による画像ファイル50の表示態様は図10及び図11に示すものに限定されず、種々の態様が採用可能である。一例として、画像ファイル50のヘッダ部分60に、撮像時の撮像装置2、3の向き(オリエンテーション)に関する情報が記述されている場合、表示制御部41がこのローテーション情報を参考にして、横長で表示すべき画像ファイル50は表示画面上でも横長に、縦長で表示すべき画像ファイル50は表示画面上でも縦長に表示することが好ましい。この場合、表示制御部41は、横長の画像ファイル50については表示画面上で上下に並べて表示し、縦長の画像ファイル50については表示画面上で左右に並べて表示することがより好ましい。加えて、縦長の画像ファイル50と横長の画像ファイル50とを同一の表示画面上で表示する場合は、表示制御部41は、表示画面上で画像ファイル50以外の部分(余白)がより少なくなる態様で表示することが好ましい。
また、図10及び図11に示す表示態様において、表示制御部41がアルバムAに分類される画像ファイル50とアルバムBに分類される画像ファイル50とを同時に変更する必要はなく、交互に変更してもよい。さらに、表示制御部41が画像ファイル50の撮像時刻データ50bを参照して、この撮像時刻データ50bの間隔に比例した時間だけ画像ファイル50を表示してもよい。加えて、表示制御部41は、画像ファイル50の一部を重畳する、表示画面において上下方向または左右方向に画像ファイル50を移動しながら表示する等の表示態様により表示させてもよい。加えて、アルバムAに分類される画像ファイル50とアルバムBに分類される画像ファイル50がたまたま同一であった場合は、表示制御部41はアルバムAとアルバムBのいずれかの画像ファイル50を表示すれば足りる。
さらに、表示制御部41は、情報処理装置1に接続されたHDMI出力機器22のスペック等に基づいて、画像ファイル50の表示態様を決定することが好ましい。一例として、HDMI出力機器22がタブレット端末のように姿勢に応じて画面を回転させる機能を有する場合、HDMI出力機器22の姿勢に応じて表示画面が縦長あるいは横長になることがある。従って、表示制御部41は、タブレット端末等であるHDMI出力機器22からHDMI出力機器22の姿勢に関する情報をHDMIケーブル7経由で入手し、HDMI出力機器22の表示画面が縦長であるか、あるいは横長であるかを考慮して画像ファイル50の表示態様を決定することが好ましい。あるいは、情報処理装置1自身がタブレット端末のように表示画面を備えるとともに姿勢に応じて表示画面の向きを決定する機能を持つ場合は、情報処理装置1自身の姿勢に応じて画像ファイル50の表示態様を決定することが好ましい。同様に、表示制御部41は、HDMI出力機器22の解像度、表示画面の形状(画面の縦横比)等を考慮して画像ファイル50の表示態様を決定することが好ましい。
加えて、表示制御部41は、表示画像データ決定部37により表示対象として決定された画像ファイル50の枚数に基づいて、画像ファイル50の表示態様を異ならせてもよい。より詳細には、画像ファイル50の枚数が多い場合は、一つの画像ファイル50を表示する時間を短くする、次の画像ファイル50へ切り替える際に表示画面上で画像ファイル50を移動させる速度を速くする、など、画像ファイル50の枚数に応じてその表示態様を異ならせてもよい。
(第1実施形態の情報処理装置の動作)
次に、図12〜図16のフローチャートを参照して、本実施形態の情報処理装置1の動作について説明する。
図12は、本実施形態の情報処理装置1の動作の全体を説明するためのフローチャートである。図12のフローチャートに示すプログラムは、情報処理装置1による画像ファイルの取り込み時に開始される。
まず、ステップS1では、情報処理装置1の制御部30が第1及び第2の撮像装置2、3から画像ファイルを取り込み、記憶部31に一時的に格納する。次に、ステップS2では、取り込まれた画像ファイルに対してアルバム作成処理を行い、ステップS1で取り込まれた画像ファイルを所定のアルバム(画像グループ)に分類する。アルバム作成処理の詳細については後述する。ステップS3では、情報処理装置1の記憶部31に格納された画像ファイル50のうち、表示制御部41による表示対象となる画像ファイル50を抽出するファイル抽出作業を行う。ファイル抽出作業の詳細についても後述する。ステップS4では、表示制御部41が、ステップS3で抽出された、すなわち表示対象とされた画像ファイル50を表示する表示画面を表示するための表示画面生成用信号を生成する。そして、この表示画面生成用信号が出力部33を介して外部出力機器に出力され、この外部出力機器において表示画面生成用信号に基づいて表示画面が生成されることでスライドショー表示を行う。この後、図12に示すプログラムは終了する。
次に、図13は、本実施形態の情報処理装置のアルバム作成処理の動作の一例を説明するためのフローチャートである。
ステップS10では、図12のステップS1で情報処理装置1の記憶部31に取り込まれた画像ファイル50のうち、1つの画像ファイル50を選択する。ステップS11では、顔認識処理部38により、ステップS10で選択された画像ファイル50に対して顔認識処理が行われ、その結果、顔認識処理部38は、選択された画像ファイル50に対して顔認識IDを付与する。顔認識処理部38が付与した顔認識IDは、画像ファイル50の顔認識情報領域70に記述される。
ステップS12では、顔認識処理部38が、付与した顔認識IDを顔認識テーブル52の顔認識ID領域74で検索し、この顔認識IDに関連づけられた被写体情報を被写体情報領域75で検索する。そして、ステップS13では、顔認識処理部38は、ステップS12で検索された被写体情報に対して事前に関連付けられたアルバムタグを抽出する。次いで、顔認識処理部38は、選択された画像ファイル50のIDをID領域63から抽出し、抽出されたIDをアルバムテーブル51のID領域72で検索し、このIDに関連づけられたアルバムタグ領域73に、検索された被写体情報と事前に関連づけられたアルバムタグを記述する。なお、画像ファイル50のIDと被写体情報との関連づけに関する情報は、記憶部31に事前に格納されているものとする。
ステップS14では、図12のステップS1で取り込まれて記憶部31に格納された全ての画像ファイル50について、ステップS11〜ステップS13に示す処理が行われたか否かが判定され、全ての画像ファイル50についてステップS11〜ステップS13に示す処理が行われた(ステップS14においてYES)と判定された場合は図13に示すプログラムを終了し、ステップS11〜ステップS13に示す処理が行われていない画像ファイル50がまだ存在する(ステップS14においてNO)と判定された場合は、プログラムはステップS15に移行し、図12のステップS1で取り込まれた画像ファイル50のうち次の画像ファイル50を選択する。以降、ステップS11〜ステップS15に示す処理が繰り返される。
次に、図14及び図15は、本実施形態の情報処理装置のファイル抽出処理の動作を説明するためのフローチャートである。
まず、ステップS20では、入力機器20等を用いてユーザにより入力された、表示制御部41による表示対象とするための撮像時刻データ50bの表示範囲を表示範囲決定部35が受け入れる。加えて、入力機器20等を用いてユーザにより入力された、表示制御部41による表示対象となる複数の画像グループを表示範囲決定部35が受け入れる。
ステップS21では、ステップS20において表示範囲決定部35が受け入れた複数の画像グループに対応するアルバムタグがアルバムテーブル51のアルバムタグ領域73において検索され、このアルバムタグに対応するIDがID領域72から抽出される。次いで、アルバムテーブル51のID領域72から抽出されたIDを有する画像ファイル50のうち、表示範囲決定部35が受け入れた撮像時刻データ50bの表示範囲内の撮像時刻データ50bを有する画像ファイル50が、記憶部31において検索される。
ステップS22では、ステップS21において検索された画像ファイル50を、配列部34がアルバム単位で一定の法則に従って、一例として撮像時刻データ50b順に配列する。ステップS23では、計数部36がステップS21において検索された画像ファイル50の数をアルバム毎に計数する。ステップS24では、ステップS22において配列部34により配列された画像ファイル50のうち、特定のアルバムに属する画像ファイル50が選択される。
ステップS25では、ステップS24において選択された画像ファイル50の顔認識情報領域70に記述されている顔認識IDが参照され、次いで、参照された顔認識IDが顔認識テーブル52の顔認識ID領域74で検索され、この顔認識IDに関連づけられた被写体情報が被写体情報領域75で参照される。参照された被写体情報は一時的に記憶部31に格納される。次いで、ステップS26では、ステップS24において選択された画像ファイル50について、その画像データ50aに撮像されている被写体の顔の構図が算出される。構図に関する情報も記憶部31に一時的に格納される。次いで、ステップS27では、特徴量算出部39が、ステップS24において選択された画像ファイル50の特徴量を算出する。特徴量算出部39により算出された特徴量も記憶部31に一時的に格納される。
ステップS28では、ステップS21で検索され、ステップS24で選択された特定のアルバムに属する全ての画像ファイル50について、ステップS25〜ステップS27に示す処理が行われたか否かが判定され、全ての画像ファイル50についてステップS25〜ステップS27に示す処理が行われた(ステップS28においてYES)と判定された場合はプログラムはステップS30に移行し、ステップS25〜ステップS27に示す処理が行われていない画像ファイル50がまだ存在する(ステップS28においてNO)と判定された場合は、プログラムはステップS29に移行し、ステップS21で検索され、ステップS24で選択された特定のアルバムに属する画像ファイル50のうち次の画像ファイル50を選択する。以降、ステップS25〜ステップS29に示す処理が繰り返される。
ステップS30では、ステップS21で検索され、ステップS24で選択された全てのアルバムに属する画像ファイル50について、ステップS25〜ステップS29に示す処理が行われたか否かが判定され、全ての画像ファイル50についてステップS25〜ステップS29に示す処理が行われた(ステップS230おいてYES)と判定された場合はプログラムはステップS32に移行し、ステップS25〜ステップS29に示す処理が行われていない画像ファイル50がまだ存在する(ステップS30においてNO)と判定された場合は、プログラムはステップS31に移行し、次のアルバムに属する画像ファイル50を選択する。以降、ステップS25〜ステップS31に示す処理が繰り返される。
ステップS32では、表示画像データ決定部37が、ステップS25〜ステップS31で求められた情報に基づいて、表示制御部41による表示対象の候補となる画像ファイル50を仮に決定する。表示画像データ決定部37による画像ファイル50の仮決定の手法については既に説明したので、ここでの説明は省略する。
ステップS33では、表示画像データ決定部37が、表示範囲決定部35が受け入れた撮像時刻データ50bの表示範囲と、ステップS23で計数された画像ファイル50、すなわち、表示範囲決定部35が受け入れた撮像時刻データ50bの表示範囲内の撮像時刻データ50bを有する画像ファイル50の数とに基づいて、この表示範囲内において表示制御部41による表示対象とすべき画像ファイル50の数を決定する。
そして、ステップS34では、表示画像データ決定部37が、最終的に表示制御部41による表示対象とすべき画像ファイルを決定する。表示画像データ決定部37による、表示制御部41による表示対象とすべき画像ファイル及びその数の決定手法についても既に説明したので、ここでの説明は省略する。
次に、図16は、本実施形態の情報処理装置のスライドショー表示動作の一例を説明するためのフローチャートである。
まず、ステップS40では、ユーザが入力機器20等を用いて入力したスライドショー表示に関する各種設定を受け入れる。ユーザによるスライドショー表示の各種設定には、例えばスライドショー表示全体の表示時間、表示態様等が含まれる。
ステップS41では、表示制御部41が、図15のステップS34において表示画像データ決定部37が決定した、表示制御部41による表示対象とすべき画像ファイル50を記憶部31から検索し、配列部34が、記憶部31から検索した画像ファイル50をアルバム単位で一定の法則に従って、一例として撮像時刻データ50b順に配列する。ステップS42では、ステップS41において配列部34により配列された画像ファイル50のうち、一つの画像ファイル50が選択される。
ステップS43では、表示制御部41が、ステップS42で選択された画像ファイル50を一定時間表示する表示画面を生成するための表示画面生成用信号を生成する。生成された表示画面生成用信号は、出力部33を介して外部出力機器に出力され、この外部出力機器において表示画面生成用信号に基づいて表示画面が生成されることでスライドショー表示が行われる。ステップS43におけるスライドショー表示の具体的態様については既に説明したので、ここでの説明は省略する。
ステップS44では、図15のステップS34において表示画像データ決定部37が決定した全ての画像ファイル50についてスライドショー表示が行われたか否かが判定され、全ての画像ファイル50についてスライドショー表示が行われた(ステップS44においてYES)と判定された場合はプログラムは終了し、スライドショー表示が行われていない画像ファイル50がまだ存在する(ステップS44においてNO)と判定された場合は、プログラムはステップS45に移行し、図15のステップS34において表示画像データ決定部37が決定した画像ファイル50のうち次の画像ファイル50を選択する。以降、ステップS43〜ステップS45に示す処理が繰り返される。
(第2実施形態)
図17は、本発明の第2実施形態である画像表示システムSの概略構成を示す図である。本実施形態の画像表示システムSと上述の第1実施形態である画像表示システムとの相違点は、本実施形態の情報処理装置1はインターネット等のWAN8を介してサーバ装置9に接続されている点である。従って、第1実施形態と同様の構成要素については同一の符号を付し、その説明を簡略化する。
図18は、第2実施形態の画像表示システムSの機能構成を示す機能ブロック図である。図18において、本実施形態の情報処理装置1は、制御部30、記憶部31、第1の入力部32a及び第1の出力部33aを備え、また、本実施形態のサーバ装置9も制御部90、記憶部91、第2の入力部92及び第2の出力部93を備える。
本実施形態において、情報処理装置1の制御部30は、表示範囲決定部35及び表示制御部41を備える。表示範囲決定部35は、第1実施形態の表示範囲決定部35と同様の機能を備える。表示制御部41は、後述するサーバ装置9の制御部90の表示画像データ決定部97により決定された画像ファイル50に基づいて、この画像ファイル50を表示する表示画面を生成するための表示画面生成用信号を生成する。
記憶部31には、第1実施形態と同様のアルバムテーブル51が格納されている。第1の出力部33aは、第1実施形態の出力部33と同一の機能を有するとともに、表示範囲決定部35により受け入れられた画像ファイル50の撮像時刻データ50bの表示範囲をサーバ装置9に送信する。また、第1の入力部32aは、第1実施形態の入力部32と同一の機能を有するとともに、サーバ装置9の表示画像データ決定部97により決定された画像ファイル50の画像データ50aを受信する。
本実施形態において、サーバ装置9の制御部90は、配列部94、計数部96、表示画像データ決定部97、顔認識処理部98、特徴量算出部99及び特徴量変化算出部100を備える。配列部94、計数部96、表示画像データ決定部97、顔認識処理部98、特徴量算出部99、特徴量変化算出部100の機能は、第1実施形態の配列部34、計数部36、表示画像データ決定部37、顔認識処理部38、特徴量算出部39及び特徴量変化算出部40のそれと同一であるが、本実施形態の配列部94、計数部96、表示画像データ決定部97、顔認識処理部98、特徴量算出部99及び特徴量変化算出部100は、いずれもサーバ装置9の記憶部91に格納された画像ファイル50、顔認識テーブル52に基づいて各種動作を行う。
記憶部91には、第1実施形態の画像ファイル50及び顔認識テーブル52と同様の画像ファイル50及び顔認識テーブル52が格納されている。第2の入力部92は、情報処理装置1から送信された画像ファイル50の撮像時刻データ50bの表示範囲を受信し、第2の出力部93は、サーバ装置9の表示画像データ決定部97により決定された画像ファイル50の画像データ50aを情報処理装置に送信する。
そして、第1及び第2の入力部32a、92と第1及び第2の出力部33a、93とは通信回線101により接続されている。
従って、本実施形態によっても、上述した第1実施形態と同様の効果を得ることができる。
なお、本実施形態において、図17に示した例ではサーバ装置9に1台の情報処理装置1が接続されていたが、サーバ装置9との間でデータの送受信を行う情報処理装置1は1台に限定されず、複数台の情報処理装置1がサーバ装置9に接続されていてもよい。複数台の情報処理装置1をサーバ装置9に接続した場合、イベントに参加した人々が撮影した画像ファイル50が全て単一の情報処理装置1に集約されて取り込まれていない場合でも、これら画像ファイル50をサーバ装置9の記憶部91に集約して格納することで、イベントに参加した人々が撮影した全ての画像ファイル50についてスライドショー表示を行うことができる。一例として、花火大会のように多数の人々が参加するイベントについても、複数のアングルから撮像した画像ファイル50を容易に比較して閲覧することの可能なスライドショー表示を行うことができる。また、複数の情報処理装置1がWAN8を介して接続されている場合、いずれか1台の情報処理装置1がサーバ装置9として動作する構成も可能である。
(変形例)
なお、本発明の情報処理装置等は、その細部が上述した第1、第2実施形態に限定されず、種々の変形例が可能である。
一例として、第1実施形態においては、図13に示すように、顔認識処理部38による顔認識処理結果に基づいて情報処理装置1に取り込まれた画像ファイル50を特定のアルバムに分類していたが、画像ファイル50を特定のアルバムに分類する手法はこれに限らず、種々の手法が好適に適用可能である。一例として、情報処理装置1に取り込まれた画像ファイル50が特定のランドマークを被写体として撮像したものである場合、画像ファイル50のGPS情報領域69に記述された位置情報を参照して、この画像ファイル50の画像データ50aに撮像された被写体たるランドマークの名称を特定し、建築物毎に特定のアルバムに分類する手法が挙げられる。位置情報からランドマークの名称を特定する手法としては、位置情報を提供するとこの位置情報に対応するランドマークの情報を返す、インターネット上に存在する外部サーバが知られているので、この外部サーバを用いる手法が好適に挙げられる。あるいは、画像ファイル50のヘッダ部分60に、撮像装置2により画像ファイル50が撮像された際の姿勢(撮像装置2の方角、俯角など)が記述されている場合は、上述したGPS領域69に記述された位置情報、撮影情報領域68に記述された被写体距離等とともに、画像ファイル50がどの方向の被写体を撮像することを意図して撮像されたかを解析し、その方向に位置するランドマークの名称を特定することが可能である。従って、この手法によっても、画像ファイル50をランドマーク毎に特定のアルバムに分類することが可能である。
また、情報処理装置1に取り込まれた画像ファイル50に撮像された被写体の形状を認識し、認識された被写体の形状毎に異なる特定のアルバムに分類する手法も好適に挙げられる。さらに、親の子供時代の画像ファイル50及び子供の画像ファイル50のように、撮像時刻データ50bが明らかに離れている画像ファイル50が情報処理装置1に取り込まれた場合、撮像時刻データ50bに基づいて異なる特定のアルバムに分類する手法も好適に挙げられる。さらには、画像ファイル50を特定のアルバムに分類する作業を、ユーザの設定に委ねることも可能である。
また、表示画像データ決定部37により表示対象とすべき画像ファイル50そのものとその数を決定する手法も、上述の各実施形態における手法に限定されず、種々の手法が好適に適用可能である。一例として、顔認識処理部38による顔認識処理結果に基づいて、画像ファイル50の画像データ50aに撮像された被写体の顔の表情を検出し、表情が示す感情が強い、例えば笑顔、泣き顔が撮像されている画像ファイル50を優先的に抽出する手法も好適に適用可能である。あるいは、画像ファイル50のヘッダ部分60、特にユーザ定義領域71に、その画像ファイル50が撮像された際のイベントに関するタグが記述されている場合、特定イベント(例えば「誕生日」など)が記述された画像ファイル50を抽出する手法も採用可能である。
さらに、表示制御部41による画像ファイル50の表示の態様も上述の各実施形態における態様に限定されず、種々の態様が好適に適用可能である。一例として、表示画像データ決定部37により表示対象として決定された画像グループ毎の画像ファイル50を表示制御部41により表示させている動作において、特定のアルバムに分類される画像ファイル50の表示を行っている途中で、ユーザがアルバム単位での画像ファイル50の比較を行いたいとの要望に基づいて、このユーザからの入力指示に基づいて、別の特定のアルバムに分類される画像ファイル50の表示に切り替えてもよい。
また、上述の各実施形態における、表示制御部41による画像ファイル50の表示態様では、一例として図10及び図11に示すような、表示画面上において画像ファイル50を切り替えながら表示するものを例示したが、図7に示すように、個々の画像グループ毎に画像ファイル50を撮像時刻データ50b順に時間軸上に配列した状態で表示する態様も採用可能である。この場合、例えば図19に示すように、表示画面上で表示される画像ファイル50の時間軸を画像グループ毎に異ならせることも可能であるし、画像ファイル50の撮像時刻データ50bの始点及び終点を表示画面上において揃えて表示することも可能である。
なお、上述の各実施形態では、画像ファイル50の撮影日時領域65に記述された撮像時刻データ50bに基づいて動作が行われていたが、例えば銀塩写真をスキャナ等を用いてデジタルデータに変換した画像ファイルの場合、撮影日時領域65には撮像時刻データ50bが記述されていないこともあり得る。この場合、顔認識処理部38による顔認識処理結果を用いて、画像ファイル50の画像データ50aに撮像されている顔の年齢を推定し、被写体の誕生日等を参考にして撮像時刻データ50bを推定して入力してもよい。
そして、上述の各実施形態において、情報処理装置1を動作させるプログラムはROM11、HDD部16等に格納されて提供されていたが、不図示の光学ディスクドライブ、カードインタフェース13c、USBインタフェース13d等を用いて、プログラムが格納されたDVD(Digital Versatile Disc)、USBフラッシュメモリ装置、メモリーカード6等を接続し、このDVD等からプログラムを情報処理装置1に読み込んで動作させてもよい。また、WAN24上の装置内にプログラムを格納しておき、ネットワークインタフェース15を介してこのプログラムを情報処理装置1に読み込んで動作させてもよい。さらに、上述の各実施形態において、情報処理装置1は複数のハードウェア要素により構成されていたが、これらハードウェア要素の一部の動作をCPU10がプログラムの動作により実現することも可能である。加えて、上述の各実施形態ではHDD部16を用いていたが、HDD部16以外の記憶媒体、一例としてSSD(Solid State Drive)装置やメモリーカード等の周知の記憶媒体を用いることも可能である。