画像表示装置、画像表示方法及びプログラム
【課題】スライドショーで表示される画像の中から所望の画像を効率良く選別できるようにする。
【解決手段】スライドショー形式で複数の画像を表示部に表示する画像表示方法であって、ユーザにより前記スライドショー形式で表示される画像が指定されると、前記指定された画像を前記スライドショー形式で表示される領域とは異なる領域に連続的に表示する。そして、前記連続的に表示される指定済みの画像と類似する画像が前記スライドショー形式で表示された場合に、前記連続的に表示される指定済み画像を拡大して表示する。
【解決手段】スライドショー形式で複数の画像を表示部に表示する画像表示方法であって、ユーザにより前記スライドショー形式で表示される画像が指定されると、前記指定された画像を前記スライドショー形式で表示される領域とは異なる領域に連続的に表示する。そして、前記連続的に表示される指定済みの画像と類似する画像が前記スライドショー形式で表示された場合に、前記連続的に表示される指定済み画像を拡大して表示する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は画像表示装置、画像表示方法及びプログラムに関し、特に、画像をスライドショー表示するために用いて好適な技術に関する。
【背景技術】
【0002】
従来、大量な画像の中から必要な画像を選別する方法としては、スライドショー等を利用して画面上に画像を一枚ずつ表示していく方法がある。その際に、希望の画像を後から検索する手間を省くために、表示中の画像にしおり情報を付与する手段を備えた技術が開示されている(例えば、特許文献1参照)。
【0003】
また、事前に設定されたメタデータより画像の価値を判断し、価値が高いほどスライドショーにおける表示時間が長くなるように、スライドショー形式の画像データを生成する技術も開示されている(例えば、特許文献2参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−187413号公報
【特許文献2】特開2005−328516号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来の技術ではスライドショーで表示される大量の画像中から希望の画像を効率良く選別するのは困難であった。
【0006】
本発明は前述の問題点に鑑み、スライドショーで表示される画像の中から所望の画像を効率良く選別できるようにすることを目的としている。
【課題を解決するための手段】
【0007】
本発明の画像表示装置は、スライドショー形式で複数の画像を表示部に表示する画像表示装置であって、前記スライドショー形式で表示される画像に対して指定する指定手段と、前記指定手段によって指定された画像を前記スライドショー形式で表示される領域とは異なる領域に連続的に表示する表示制御手段とを備え、前記表示制御手段は、前記連続的に表示される画像と関連性のある画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする。
【発明の効果】
【0008】
本発明によれば、画像をスライドショー形式で表示しながら、大量の画像の中から所望の画像を効率良く選別することができる。
【図面の簡単な説明】
【0009】
【図1】第1〜第3の実施形態に係る画像表示装置の構成例を示すブロック図である。
【図2】第1の実施形態において、スライドショーを表示する処理手順の一例を示すフローチャートである。
【図3】第1の実施形態における画像情報テーブルの一例を示す図である。
【図4】第1の実施形態において、ディスプレイに表示されるスライドショーの画面の一例を示す図である。
【図5】第1の実施形態において、スライドショーのオプション設定画面の一例を示す図である。
【図6】第1の実施形態において、類似画像の設定がなされている場合のスライドショーの画面の一例を示す図である。
【図7】第2の実施形態において、お気に入りのスライドショーを表示する処理手順の一例を示すフローチャートである。
【図8】第2の実施形態におけるプレイリストの構成例を示す図である。
【図9】第2の実施形態におけるスライドショー表示リストの一例を示す図である。
【図10】第2の実施形態において、ディスプレイに表示されるスライドショーの画面の一例を示す図である。
【図11】図7のS716で行われるプレイリストの更新処理手順の一例を示すフローチャートである。
【図12】第2の実施形態において、表示順を決定する処理手順の一例を示すフローチャートである。
【図13】画像番号と表示頻度との関係の一例を示す図である。
【図14】第2の実施形態において、表示順を決定する過程の一例を示す図である。
【図15】図12のS1203で行われるスライドショー1周の画像表示数を取得する処理手順の一例を示すフローチャートである。
【図16】図12のS1205で行われる表示順の値を取得する処理手順の一例を示すフローチャートである。
【図17】図12のS1215で行われる表示順のシフト処理の手順の一例を示すフローチャートである。
【図18】第2の実施形態において、プレイリストの設定画面の一例を示す図である。
【図19】第3の実施形態において、制御部により実行される画像表示アプリケーションプログラムのモジュール構成の一例を示すブロック図である。
【図20】第3の実施形態において、複数の画像をスライドショー表示する処理手順の一例を示すフローチャートである。
【図21】第3の実施形態において、同時に表示する枚数の対応表の一例を示す図である。
【図22】第3の実施形態において、複数の画像ファイルを撮影日によってグループ分けした結果の一例を示す図である。
【図23】第3の実施形態において、画像が配置された画面の一例を示す図である。
【図24】第3の実施形態において、表示数が変化した場合の画面の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、図面を参照しながら本発明の実施形態について説明する。
(第1の実施形態)
図1は、本実施形態に係る画像表示装置100のハードウェア構成例を示すブロック図である。
本実施形態において、画像表示装置100は、利用者の操作に応答して画面上にスライドショーを表示する。画像表示装置100は、例えば、パーソナルコンピュータ(PC)、デジタルフォトフレーム、携帯電話器、デジタルカメラなどにより実現される。
【0011】
図1において、制御部101は、画像表示装置100全体を制御するためのものであり、例えばCentral Processing Unit(CPU)である。Read Only Memory(ROM)102は、変更を必要としないプログラムやパラメータを格納するメモリである。Random Access Memory(RAM)103は、外部装置などから供給されるプログラムやデータを一時記憶するメモリである。
【0012】
外部記憶装置104は、例えば、画像表示装置100に固定して設置されたハードディスク、あるいは着脱可能なフレキシブルディスク(FD)やCompact Disk(CD)等の光ディスク、磁気や光カード、ICカード、メモリカードなどである。本実施形態では、スライドショー形式で表示するための画像データを複数記憶している。操作入力I/F105は、利用者の操作を受けてデータを入力するポインティングデバイス109やキーボード114などの入力デバイスと接続するインターフェイスである。
【0013】
表示I/F106は、画像表示装置100の保持するデータや供給されたデータを表示するディスプレイ110と接続するインターフェイスである。ネットワークI/F107は、ネットワーク111に接続するためのインターフェイスである。画像入力I/F108は、デジタルカメラやスキャナなどの画像入力デバイス112と接続するインターフェイスである。また、システムバス113は、制御部101〜画像入力I/F108の各ユニットを接続するためのバスである。
【0014】
図2は、本実施形態において、スライドショーを表示する処理手順の一例を示すフローチャートである。図2に示す各処理は、制御部101がOSや画像表示アプリケーションプログラムをROM102やRAM103、外部記憶装置104から読み出し、これらのプログラムを起動することにより制御部101によって実行される。
【0015】
まず、制御部101は、利用者からポインティングデバイス109またはキーボード114を介してスライドショーのリクエストを入力するまで待機する(S201)。そして、スライドショーのリクエストを入力すると、画像情報テーブルを作成する(S202)。
【0016】
図3は、画像情報テーブル300の一例を示す図である。
図3に示すように、画像情報テーブル300は、画像ID301、画像のファイル名302、しおりID303、類似フラグ304、撮影日時305、輝度値306及び撮影人数307の情報を備えている。しおりID303には、指定済み画像の表示順を示す値が格納される。また、類似フラグ304には、類似画像である場合に「1」が格納される。
【0017】
撮影日時305、輝度値306及び撮影人数307は、類似画像であるか否かを判定する際に利用され、スライドショーのリクエストがあった後に各々の値が算出され、その算出された値が格納される。撮影日時305は、画像情報(Exif情報)より値が取得される。輝度値306は、画像の輝度の平均値として取得される。撮影人数307は、画像上の形や色等から人物が判定され、その人数として取得される。
【0018】
図2の説明に戻り、次に、スライドショーを表示部であるディスプレイ110に表示する(S203)。具体的には、S202で作成した画像情報テーブル300に基づいて、該当する画像ファイルを外部記憶装置104などから読み出し、スライドショーの画面を形成する画像を作成してディスプレイ110に表示する。
【0019】
図4は、ディスプレイ110に表示されるスライドショーの画面400の一例を示す図である。
図4において、スライド画像表示領域401は、スライドショーにて一定時間毎に1枚または複数枚の画像が切り替わる領域である。指定済み画像表示領域402は、スライド画像表示領域401にて指定された画像を連続的に表示する領域である。オプション設定ボタン403は、スライドショーに対してオプションを設定する際に利用されるボタンである。
【0020】
図2の説明に戻り、次に、利用者からポインティングデバイス109またはキーボード114を介して画像を指定するリクエストを入力したか否かを判定する(S204)。この判定の結果、画像を指定するリクエストを入力した場合は、スライドショーに現在表示されている画像のしおりIDに、現時点でのしおりID303の最大値に1を加えた値を追加する(S205)。
【0021】
一方、S204の判定の結果、画像を指定するリクエストを入力していない場合は、利用者から同様に指定済み画像を削除するリクエストを入力したか否かを判定する(S206)。この判定の結果、指定済み画像を削除するリクエストを入力した場合は、画像情報テーブル300から、指定された画像のしおりIDを削除する(S207)。そして、指定された画像を、指定済み画像表示領域402から削除する(S208)。
【0022】
一方、S206の判定の結果、指定済み画像を削除するリクエストを入力していない場合は、利用者から同様に画像を入れ替えるリクエストを入力したか否かを判定する(S209)。この判定の結果、画像を入れ替えるリクエストを入力した場合は、スライドショーに現在表示されている画像のしおりIDに、画像を入れ替えるリクエストにより指定された画像のしおりIDの値を代入する(S210)。そして、画像情報テーブル300から、画像を入れ替えるリクエストにより指定された画像のしおりIDを削除する(S211)。
【0023】
一方、S209の判定の結果、画像を入れ替えるリクエストを入力していない場合は、利用者から同様に類似画像の設定を変更するリクエストを入力したか否かを判定する(S212)。この判定の結果、設定を変更するリクエストを入力していない場合はS220に進む。一方、類似画像の設定を変更するリクエストを入力した場合は、現在、類似画像の設定がなされているか否かを判定する(S213)。
【0024】
図5は、スライドショーのオプション設定画面500の一例を示す図である。図5に示すスライドショーのオプション設定画面500は、図4に示したオプション設定ボタン403が押下されると表示される。
図5において、領域501は、類似画像に関する設定を行うための領域であり、類似画像である場合に他の画像よりサイズを変更して表示するか否かを選択することができる。また、類似画像の設定を行う場合には、類似条件も設定することができる。類似条件の例としては、撮影時間が近いもの、画像の平均輝度値が近いもの、撮影されている人物の数が同じものなど、関連性があるものである。また、それぞれの類似条件の範囲としては、設定画面内にて利用者に設定させる方法と、画像表示装置100で予め設定しておく方法とがある。
【0025】
S213の判定の結果、類似画像の設定がなされている場合は、画像情報テーブル300のしおりID303に値が格納されている画像に対して、類似条件を元に類似画像であるか否かを判定する。そして、類似画像である場合は類似フラグ304に「1」を代入し、そうでない場合は類似フラグ304を削除する(S214)。そして、類似フラグ304が「1」である画像の数と、類似フラグ304に値がない画像の数とを各々計算し、指定済み画像表示領域402上に指定済み画像が全て表示されるような各々の画像サイズを計算する(S215)。
【0026】
一方、S213の判定の結果、類似画像の設定がなされていない場合は、画像情報テーブル300の類似フラグ304を全て削除する(S216)。そして、画像情報テーブル300でしおりID303に値が格納されている画像の数を計算し、指定済み画像表示領域402上に指定済み画像が全て表示されるような一枚あたりの画像サイズを計算する(S217)。
【0027】
次に、指定済み画像のサイズを、S215またはS217で計算したサイズに変更する(S218)。そして、画像情報テーブル300のしおりID303順に並ぶように、指定済み画像表示領域402上に指定済み画像を表示する(S219)。
【0028】
図6は、類似画像の設定がなされている場合のスライドショーの画面600の一例を示す図である。
図6に示すように、指定済み画像表示領域402に表示されている画像のうち、スライド画像表示領域401の画像と類似する画像601が大きく表示される。なお、本実施形態では、画像拡大しているが、その他の表示態様によって区別できるようにしてもよい。
【0029】
図2の説明に戻り、その後、指定された時間が経過したか否かを判定する(S220)。この判定の結果、指定された時間が経過していない場合はS204に戻り、指定された時間が経過するまでS204以降の処理を繰り返す。
【0030】
一方、S220の判定の結果、指定された時間が経過した場合は、画像枚数分のスライドショーが終了したか否かを判定する(S221)。この判定の結果、画像枚数分のスライドショーが終了した場合は、図2のスライドショーを表示する処理を終了する。
【0031】
一方、S221の判定の結果、画像枚数分のスライドショーが終了していない場合は、類似画像の設定がなされているか否かを判定する(S222)。この判定の結果、類似画像の設定がなされている場合はS223に進み、類似画像の設定がなされていない場合はS225に進む。なお、図2に示すS223〜S228の処理はそれぞれ、前述したS214〜S219までの処理と同様である。そして、S228の処理を終えると、スライド画像表示領域401に表示する画像を切り替える(S229)。そして、S204に戻る。全ての画像が終了するまでステップS204以降の処理を繰り返す。
【0032】
以上のように本実施形態によれば、スライドショーが表示されているときに、利用者から画像が指定されると、指定された画像を画面の上部に指定済み画像として表示する。そして、スライドショーで表示された画像が、指定済み画像と類似した画像である場合には、その指定済み画像を拡大する。これにより、利用者は大量の画像の中から所望の画像を効率良く選別することができる。
【0033】
(第2の実施形態)
本実施形態では、スライドショーにおいて、画像によって表示時間や回数を異なるようにする例について説明する。なお、本実施形態に係る画像再生装置のハードウェア構成は図1と同様であるため、説明は省略する。
図7は、本実施形態において、お気に入りのスライドショーを表示する処理手順の一例を示すフローチャートである。なお、図7に示す各処理は、制御部101がOSや画像表示アプリケーションプログラムをROM102やRAM103、外部記憶装置104から読み出し、これらのプログラムを起動することにより制御部101によって実行される。
【0034】
まず、利用者からポインティングデバイス109またはキーボード114を介してスライドショーを選択する指示または新規にスライドショーを作成する指示を入力すると、処理を開始する。そして、制御部101は入力された指示を解析し、新規のスライドショーを作成するか否かを判定する(S701)。この判定の結果、新規のスライドショーを作成する場合は、利用者がポインティングデバイス109またはキーボード114を操作したことに応じて、スライドショーを行う画像を選択する(S702)。
【0035】
次に、利用者がポインティングデバイス109またはキーボード114を操作したことに応じて、制御部101はスライドショー名の情報を入力する(S703)。そして、S702で選択された画像に基づいてプレイリストを作成し、プレイリストの初期化処理を行う(S704)。
【0036】
図8(a)は、本実施形態におけるプレイリスト800の構成例を示す図である。
図8(a)に示すように、プレイリスト800は、画像毎に画像番号801、プレイリストモード802、プレイリストカウンタ803、及びプレイモード804の属性を備えている。
【0037】
プレイリストモード802は、後述するプラス方向及びマイナス方向のどちらに強調するかを示す属性である。プレイリストモード802の設定値は、「設定なし」、「ポジティブ」、及び「ネガティブ」の3つの値がある。なお、初期状態では、「設定なし」に設定される。「ポジティブ」は、スライドショーを表示する時に画像をプラス方向に強調する(目立つようにする)モードである。一方、「ネガティブ」は、スライドショーを表示する時に画像をマイナス方向に強調する(目立たなくする)モードである。
【0038】
プレイリストカウンタ803は、強調された回数を表すものであり、「ポジティブ」の場合はプラス方向にカウントされ、「ネガティブ」の場合はマイナス方向にカウントされる。プレイモード804は、スライドショーを表示する時にどのような方法で強調するかを示す属性である。プレイモード804の設定値は、「設定なし」、「頻繁に」、「大きく」、「長く」、「非表示」、「小さく」、及び「短く」の7つの値がある。なお、初期状態では、「設定なし」に設定される。プレイリストモード802がポジティブの場合は、「頻繁に」、「大きく」、「長く」の3つの値から選ばれ、プレイリストモード802がネガティブの場合は、「非表示」、「小さく」、「短く」の3つの値から選ばれる。そして、それぞれスライドショーを表示する時に設定された値に応じた強調が行われる。なお、プレイリスト800の変更処理については後述する。
【0039】
S704のプレイリストの初期化処理では、制御部101はS702で選択された全ての画像に画像番号を割り当て、全ての画像のプレイリストモード802を「設定なし」に設定する。そして、プレイリストカウンタ803を「0」に設定し、さらにプレイモード804を「設定なし」に設定する。
【0040】
プレイリストの初期化処理が完了すると、制御部101はスライドショー表示リストの初期化処理を行う(S705)。
【0041】
図9は、本実施形態におけるスライドショー表示リスト900の一例を示す図である。なお、図9(a)は、スライドショー表示リストの初期状態を示し、図9(b)は、プレイリストのデータ属性が図8(a)に示した例のように設定された場合のスライドショー表示リストの一例を示している。
【0042】
図9(b)に示すように、1番目の画像は表示頻度、表示サイズ、表示時間とも変更されずに表示される。一方、2番目の画像は、表示時間が5秒から7秒に変更され、通常より長く表示される。また、5番目の画像は、表示サイズが100%から120%に変更され、通常より大きく表示される。このようなスライドショー表示リストに基づいてスライドショーが開始されると、利用者からスライドショー終了の指示があるまで繰り返しスライドショーが表示される。
【0043】
スライドショー表示リストの初期化処理では、表示順901には選択した画像数までの番号を設定し、画像番号902には、S702で選択された画像の画像番号を順に割り当てる。そして、全ての画像の表示頻度903、表示サイズ904、及び表示時間905には、図8(b)に示すプレイモード804及びプレイリストカウンタ803から実際の表示頻度、表示サイズ、表示時間を換算し、設定する。なお、図8(b)に示される表示頻度、表示サイズ、表示時間の換算値は一例であり、状況に応じて最適な値に調整することが可能である。図8(b)に示す例では、プレイリストカウンタ803が最小値−4から最大値4まで変化するが、最小値及び最大値に達した場合はそれ以上表示頻度、表示サイズ、表示時間は変化しない。
【0044】
スライドショー表示リストの初期化処理が完了すると、1回のスライドショーで表示する画像数を表すカウンタNにS703で選択した画像数をセットする(S706)。なお、図9(a)に示した例の場合は、N=10をセットする。
【0045】
一方、S701の判定の結果、新規のスライドショーを作成しない場合は、既存のスライドショーを利用することになる。そこで、利用者がポインティングデバイス109またはキーボード114を操作したことに応じて、既存のスライドショーのリストの中から表示するスライドショーを選択する(S707)。そして、選択したスライドショーに対応するプレイリストを取得する(S708)。プレイリストの取得処理では、制御部101は選択されたスライドショーに対応するプレイリストを外部記憶装置104などから読み出す。
【0046】
プレイリストの取得処理が完了すると、選択したスライドショーのスライドショー表示リストを取得する(S709)。スライドショー表示リストの取得処理では、制御部101は選択されたスライドショーに対応するスライドショー表示リストを外部記憶装置104などから読み出す。
【0047】
スライドショー表示リストの取得処理が完了すると、1回のスライドショーで表示する画像数を表すカウンタNにスライドショー表示リストに記録されている表示画像数(同じ画像が複数回表示される場合は重複してカウントする)をセットする(S710)。
【0048】
S706またはS710の処理が完了すると、制御部101は表示順を表すカウンタJに1をセットし、カウンタKに0をセットする(S711)。そして、J≦Nという条件を満たしているか否かを判定する(S712)。この判定の結果、条件を満たしている場合は、表示順がJ番目となる画像のスライドショー表示リストを取得する(S713)。そして、取得したスライドショー表示リストに従い、J番目の画像データを外部記憶装置104から読み出し、ディスプレイ110のスライドショーの画面にその画像を表示する(S714)。
【0049】
図10は、ディスプレイ110に表示されるスライドショーの画面の一例を示す図である。図10では、スライドショーの表示中にスライドショー画面1000とプレイリストメニュー1001とが表示された状態を示している。なお、スライドショー画面1000の下部には、プレイリスト設定ボタン1002と表示終了ボタン1003とが表示される。
【0050】
次に、J番目の画像が表示されている時に、利用者からポインティングデバイス109またはキーボード114を介してその画像が指定されたか否かを判定する(S715)。具体的には、利用者により図10に示すようなプレイリスト設定ボタン1002が押下された場合に、制御部101はその画像が指定されたと判定する。この場合、制御部101は利用者からの指示に応じてプレイリスト800の更新処理を行う(S716)。プレイリストの更新処理の詳細については後述する。
【0051】
一方、S715の判定の結果、プレイリスト設定ボタン1002が押下されていない場合は、同様に表示終了ボタン1003が押下されたか否かを判定する(S717)。この判定の結果、表示終了ボタン1003が押下された場合は、スライドショー表示リストを更新してプレイリスト及びスライドショー表示リストを外部記憶装置104に保存し(S718)、スライドショーの表示処理を終了する。
【0052】
一方、S717の判定の結果、表示終了ボタン1003が押下されていない場合は、現在表示されている画像の表示時間が終了したか否かを判定する(S719)。この判定の結果、表示時間が終了していない場合はS715に戻る。一方、表示時間が終了した場合は、前述したカウンタJを1カウントアップし、S712に戻る。
【0053】
このようにS712の判定により条件が成立しなくなるまで、制御部101はS712〜S720の処理を繰り返す。そして、カウンタJがカウントアップされ、S712の判定の結果、J≦Nという条件を満たさなくなった場合は、制御部101はスライドショー表示リストを更新する(S721)。そして、カウンタNにカウンタKの値を加算し、S711に戻る。
【0054】
詳細については後述するが、このカウンタKの値は、S716のプレイリストの更新処理において、プレイリストメニュー1001で「ポジティブ−頻繁に」が選択された場合に1カウントアップされる。また、プレイリストメニュー1001で「ネガティブ−非表示」が選択された場合に1カウントダウンされる。このように、1回のスライドショーで表示される画像数がカウンタKの分だけ増減し、頻繁に選択した画像は繰り返し再生され、非表示を選択した画像が表示されなくなる。
【0055】
図11は、図7のS716で行われるプレイリスト800の更新処理手順の一例を示すフローチャートである。
まず、制御部101はプレイリストメニュー1001をディスプレイ110に表示する(S1101)。次に、利用者によりポインティングデバイス109またはキーボード114が操作されることによりプレイリストメニュー1001が選択されるまで待機する(S1102)。そして、利用者によりプレイリストメニュー1001が選択されると、制御部101は選択されたメニューが何であるかを判定する(S1103)。
【0056】
S1103の判定の結果、「プレイリスト指定」メニューが選択された場合は、利用者によりポインティングデバイス109またはキーボード114が操作され、プレイリストモード802(ポジティブまたはネガティブ)を設定する(S1104)。さらに、利用者によりポインティングデバイス109またはキーボード114が操作され、プレイモード804(長く、大きく、頻繁に、短く、小さく、非表示)を設定する(S1105)。
【0057】
次に、制御部101はプレイリストモード802が変更されたか否かを判定する(S1106)。この判定の結果、プレイリストモード802が変更されていない場合はS1108に進む。一方、プレイリストモード802が変更されている場合は、プレイリストカウンタ803を初期化する(S1107)。
【0058】
次に、制御部101は現在のプレイリストモード802を判定する(S1108)。この判定の結果、プレイリストモード802がポジティブである場合は、プレイリストカウンタの値<最大値であるか否かを判定する(S1109)。この判定の結果、プレイリストカウンタの値<最大値でない場合はS1111に進む。一方、プレイリストカウンタの値<最大値である場合は、プレイリストカウンタ803を1カウントアップする(S1110)。
【0059】
次に、制御部101はプレイモード804が「頻繁に」であるか否かを判定する(S1111)。この判定の結果、プレイモード804が「頻繁に」でない場合は、更新処理を終了する。一方、プレイモード804が「頻繁に」である場合は、カウンタKを1カウントアップし(S1112)、更新処理を終了する。
【0060】
一方、S1108の判定の結果、プレイリストモード802がネガティブである場合は、プレイリストカウンタの値>最小値であるか否かを判定する(S1113)。この判定の結果、プレイリストカウンタの値>最小値でない場合はS1115に進む。一方、プレイリストカウンタの値>最小値である場合はプレイリストカウンタ803を1カウントダウンする(S1114)。
【0061】
次に、制御部101はプレイモード804が「非表示」であるか否かを判定する(S1115)。この判定の結果、プレイモード804が「非表示」でない場合は、更新処理を終了する。一方、プレイモード804が「非表示」である場合は、カウンタKを1カウントダウンし(S1116)、更新処理を終了する。
【0062】
一方、S1103の判定の結果、「強調」メニューが選択された場合は、制御部101は現在のプレイリスト800を取得し(S1117)、S1108に進む。以降、同様に現在のプレイリストモードに応じて、プレイリストカウンタ803を増減する。なお、「強調」メニューは、プレイリストモード802及びプレイモード804が「設定なし」の場合は選択することができない。
【0063】
一方、S1103の判定の結果、「非表示復元」メニューが選択された場合は、利用者によりポインティングデバイス109またはキーボード114が操作され、非表示復元を行う画像名を選択する(S1118)。そして、S1118で選択された画像名に対応するプレイリストのプレイリストモードをクリア(設定なし)にする(S1119)。
【0064】
次に、S1118で選択された画像名に対応するプレイリストのプレイリストカウンタを0に戻す(S1120)。そして、S1118で選択された画像名に対応するプレイリストのプレイモードをクリア(設定なし)にし(S1121)、更新処理を終了する。なお、「非表示復元」メニューはプレイモード804が「非表示」に設定されている画像がない場合は選択することができない。
【0065】
一方、S1103の判定の結果、「リセット」メニューが選択された場合は、図7のS715で指定された画像に対応するプレイリストのプレイリストモードをクリア(設定なし)にする(S1122)。そして、図7のS715で指定された画像に対応するプレイリストのプレイリストカウンタを0に戻し(S1123)、さらにプレイリストのプレイモードをクリア(設定なし)にして(S1124)、更新処理を終了する。
【0066】
次に、図12を参照しながら、本実施形態において、図11のS1105プレイモードが「頻繁に」または「非表示」に変更された場合の表示順を決定する処理の全体の流れについて説明する。
図12は、表示順を決定する処理手順の一例を示すフローチャートである。なお、図12に示す各処理は制御部101により行われる。
まず、スライドショーの画像の枚数Nの情報を取得する(S1201)。例えば図13に示すスライドショー表示リスト1301の場合は、N=8となる。
【0067】
次に、1番目からN番目までの画像P[i]に対する表示頻度F[i]の情報を取得する(S1202)。なお、以下の説明では、図13に示す表示頻度が設定されている場合を例にして表示順を決定する処理について説明する。
【0068】
次に、スライドショー1周の画像表示数Dの情報を取得するとともに、表示順を管理するための表示順格納テーブルTを作成する(S1203)。なお、スライドショー1周の画像表示数Dの情報の取得処理の詳細については後述する。S1203の処理が完了すると、表示順格納テーブルTは図14(a)に示す状態になり、D=10となる。
【0069】
次に、カウンタiにi=0を設定する(S1204)。そして、表示画像をこれから決定する表示順jの値を取得する(S1205)。なお、表示画像をこれから決定する表示順jの取得処理の詳細については後述する。次に、カウンタiを1カウントアップする(S1206)。そして、N<iの条件を満たすか否かを判定する(S1207)。この判定の結果、条件を満たす場合は、表示順決定処理を終了する。
【0070】
一方、S1207の判定の結果、条件を満たさない場合は、表示頻度F[i]=0の条件を満たすか否かを判定する(S1208)。この判定の結果、条件を満たす場合はS1206に戻り、条件を満たさない場合はS1209に遷移する。
【0071】
次に、表示間隔kに対してk=D/F[i]と設定し(S1209)、カウンタmに対してm=0と設定する(S1210)。そして、表示順pに対してp=jと設定する(S1211)。次に、m<F[i]の条件を満たすか否かを判定する(S1212)。この判定の結果、条件を満たさない場合はS1205に戻る。
【0072】
一方、S1212の判定の結果、条件を満たす場合は、T[p]=0の条件を満たすか否かを判定する(S1213)。ここで、T[p]とは、図14に示す表示順格納テーブルTの画像番号であり、その表示順での画像番号が決定していない場合にT[p]=0となる。この判定の結果、条件を満たす場合は、T[p]=iと設定する(S1214)。一方、S1213の判定の結果、条件を満たさない場合は、表示順のシフト処理を行う(S1215)。なお、S1215の表示順のシフト処理(p,i)の詳細については後述する。
【0073】
次に、p=p+kと設定し(S1216)、D<pの条件を満たすか否かを判定する(S1217)。この判定の結果、条件を満たさない場合はS1219へ進み、条件を満たす場合はp=p−Dと設定する(S1218)。そして、カウンタmを1カウントアップし(S1219)、S1212に戻る。
【0074】
図15は、図12のS1203で行われるスライドショー1周の画像表示数Dを取得する処理手順の一例を示すフローチャートである。
まず、スライドショー1周の画像表示数Dに対してD=0と設定する(S1501)。次に、カウンタiにi=1と設定し(S1502)、i>Nの条件を満たすか否かを判定する(S1503)。この判定の結果、条件を満たす場合はS1506に進み、条件を満たさない場合はS1504に進む。
【0075】
次に、図12のS1202で取得した表示頻度F[i]を用いてD=D+F[i]と設定する(S1504)。図13に示すデータを例に説明すると、i=1の場合は、D=0+1=1となり、i=2の場合は、D=1+3=4となる。また、i=3の場合は、D=4+0=4となり、i=4の場合は、D=4+1=5となる。そして、i=5の場合は、D=5+1=6となり、i=6の場合は、D=6+1=7となる。さらに、i=7の場合は、D=7+2=9となり、i=8の場合は、D=9+1=10となる。次に、i=i+1と設定し(S1505)、S1503に戻る。
【0076】
S1503の判定の結果、条件を満たす場合は、D個分の表示順格納テーブルTを確保する(S1506)。図13に示すデータを例に説明すると、S1504でi=8の場合はD=9+1=10となり、S1505でi=9となる。この場合、S1503の判定で条件を満たさなくなるため、S1506で10個分の表示順格納テーブルTを確保することになる。
【0077】
次に、カウンタiにi=1を設定し(S1507)、i>Nの条件を満たすか否かを判定する(S1508)。この判定の結果、条件を満たす場合は、スライドショー1周分の画像表示数Dの取得処理を終了する。一方、S1508の判定の結果、条件を満たさない場合は、表示順格納テーブルTの画像番号T[i]に0を設定し、初期化する(S1509)。そして、i=i+1と設定し(S1510)、S1508に戻る。画像番号T[i]の初期化が完了すると、図14(a)に示す表示順格納テーブルTが作成される。
【0078】
図16は、図12のS1205で行われる表示画像をこれから決定する表示順jの値を取得する処理手順の一例を示すフローチャートである。
まず、制御部101は、表示画像をこれから決定する表示順jに対してj=1と設定し(S1601)、図15に示した手順により取得した画像表示数Dに対してj>Dの条件を満たすか否かを判定する(S1602)。この判定の結果、条件を満たす場合は、そのときの表示順jの値を取得し、処理を終了する。
【0079】
一方、S1602の判定の結果、条件を満たしていない場合は、T[j]=0という条件を満たすか否かを判定する(S1603)。この判定の結果、条件を満たす場合は、そのときの表示順jの値を取得し、処理を終了する。一方、S1603の判定の結果、条件を満たしていない場合は、jを1カウントアップし(S1604)、S1602に戻る。
【0080】
図17は、図12のS1215で行われる表示順のシフト処理の手順の一例を示すフローチャートである。
まず、制御部101は、表示順シフト用Numに対してNum=iと設定し(S1701)、カウンタqにq=p+1と設定する(S1702)。そして、T[q]=0の条件を満たすか否かを判定する(S1703)。この判定の結果、条件を満たす場合はS1708に進む。
【0081】
一方、S1703の判定の結果、条件を満たさない場合は、表示順退避用Workに対してWork=T[q]と設定し(S1704)、T[q]に対してT[q]=Numと設定する(S1705)。次に、Numに対してNum=Workと設定し(S1706)、qを1カウントアップして(S1707)、S1703に戻る。S1703の判定の結果、条件を満たす場合はT[q]に対してT[q]=Numと設定し(S1708)、表示順のシフト処理(p,i)を終了する。
【0082】
次に、前述した図12のフローチャートに沿って、図14に示す表示順格納テーブルTのデータ遷移について説明する。
前述したように、S1203の処理が完了すると、表示順格納テーブルTは図14(a)に示す状態となる。そして、S1207の判定では、表示順j=1でN=8、i=1となるため、S1208に進む。そして、S1208の判定では、表示頻度F[1]=1となるため、S1209に進む。S1209では、表示間隔k=10/1=10と設定される。
【0083】
S1212の判定では、m=0、F[1]=1であるため、S1213に進む。そして、S1213の判定では、表示順j=1で、S1211の処理によりp=jと設定されていることからT[1]=0となる。したがって、S1214でT[1]=1に設定され、表示順格納テーブルTは図14(b)に示す状態になる。
【0084】
その後、S1219でm=1に設定され、S1212の判定において、m=1、F[1]=1で条件を満たさなくなるため、S1205に戻る。そして、S1205においてj=2と設定され、S1206においてi=2と設定される。そして、同様にS1208の判定では、F[2]=3となるため、S1209と進み、S1209においてk=3と算出される。次に、S1213の判定では、T[2]=0であるため、S1214でT[2]=2に設定され、表示順格納テーブルTは図14(c)に示す状態になる。
【0085】
その後、S1216でp=3+2=5に設定され、S1219でm=1に設定される。そして、S1212の判定において、m=1、F[2]=3で条件を満たし、再びS1213に進む。そして、S1213の判定では、T[5]=0となるため、S1214においてT[5]=2に設定され、表示順格納テーブルTは図14(d)に示す状態になる。そして、同様の手順により、S1216でp=5+3=8に設定され、S1212では再び条件を満たすので、同様の手順によりS1214においてT[8]=2になり、表示順格納テーブルTは図14(e)に示す状態になる。
【0086】
その後、S1219でm=3に設定され、S1212の判定において、m=3、F[2]=3で条件を満たさなくなるため、S1205に戻る。そして、S1205においてj=3と設定され、S1206においてi=3と設定される。そして、S1208の判定では、F[3]=0となり、プレイモードが非表示で表示順が設定されないため、画像が表示されないことから、S1206に戻る。
【0087】
その後、S1206においてi=4と設定され、S1208の判定では、F[4]=1となるため、S1209と進み、S1209においてk=10と算出される。次に、S1211ではp=j=3と設定される。そして、S1213の判定では、T[3]=0であるため、S1214でT[3]=4に設定され、表示順格納テーブルTは図14(f)に示す状態になる。
【0088】
その後、S1219でm=1に設定され、S1212の判定において、m=1、F[4]=1で条件を満たさなくなるため、S1205に戻る。そして、S1205においてj=4と設定され、S1206においてi=5と設定される。そして、同様にS1208の判定では、F[5]=1となるため、S1209と進み、S1209においてk=10と算出される。次に、S1213の判定では、T[4]=0であるため、S1214でT[4]=5に設定され、表示順格納テーブルTは図14(g)に示す状態になる。
【0089】
その後、S1219でm=1に設定され、S1212の判定において、m=1、F[5]=1で条件を満たさなくなるため、S1205に戻る。そして、S1205においてj=5と設定され、S1206においてi=6と設定される。そして、同様にS1208の判定では、F[6]=1となるため、S1209と進み、S1209においてk=10と算出される。次に、S1213の判定では、T[5]=2であるため、S1215に進み、表示順のシフト処理が行われる。
【0090】
このとき、S1215の処理では、(p,i)=(5,6)であり、図17のS1701においてNum=i=6と設定され、S1702においてq=p+1=5+1=6と設定される。そして、S1703の判定では、T[6]=0となるため、S1708に進み、T[6]=6と設定されて、表示順のシフト処理を終了する。このとき、表示順格納テーブルTは図14(h)に示す状態になる。
【0091】
その後、S1219でm=1に設定され、S1212の判定において、m=1、F[6]=1で条件を満たさなくなるため、S1205に戻る。そして、S1205において、図16のS1603の判定でT[6]=0とはならないため、jがさらにカウントアップされてj=7と設定され、S1206においてi=7と設定される。そして、同様にS1208の判定では、F[7]=2となるため、S1209と進み、S1209においてk=5と算出される。次に、S1213の判定では、T[7]=0であるため、S1214でT[7]=7に設定され、表示順格納テーブルTは図14(i)に示す状態になる。
【0092】
その後、S1216において、p=7+5=12になり、S1217の判定では、D<pの条件を満たすため、S1218に進み、p=12−10=2と設定される。そして、S1219でm=1と設定され、S1212の判定において、m=1、F[7]=2で条件を満たすことから再びS1213に進む。次に、S1213の判定では、T[2]=2であるため、S1215に進み、表示順のシフト処理が行われる。
【0093】
このとき、S1215の処理では、(p,i)=(2,7)であり、図17のS1701においてNum=7と設定され、S1702においてq=p+1=2+1=3と設定される。そして、S1703の判定では、T[3]=4であるため、S1704に進み、Work=T[3]=4と設定される。次に、S1705において、T[3]=7(=Num)と設定され、S1706において、Num=Work=4と設定される。そして、S1707において、q=3+1=4と設定され、S1703に戻る。
【0094】
S1703の判定では、T[4]=5であるため、S1704に進み、Work=T[4]=5と設定される。次に、S1705において、T[4]=4(=Num)と設定され、S1706において、Num=Work=5と設定される。そして、S1707において、q=4+1=5と設定され、S1703に戻る。
【0095】
以下、同様にS1703の判定では、T[5]=2であるため、S1704に進み、Work=T[5]=2と設定される。次に、S1705において、T[5]=5(=Num)と設定され、S1706において、Num=Work=2と設定される。そして、S1707において、q=5+1=6と設定され、S1703に戻る。
【0096】
同様にS1703の判定では、T[6]=6であるため、S1704に進み、Work=T[6]=6と設定される。次に、S1705において、T[6]=2(=Num)と設定され、S1706において、Num=Work=6と設定される。そして、S1707において、q=6+1=7と設定され、S1703に戻る。
【0097】
同様にS1703の判定では、T[7]=7であるため、S1704に進み、Work=T[7]=7と設定される。次に、S1705において、T[7]=6(=Num)と設定され、S1706において、Num=Work=7と設定される。そして、S1707において、q=7+1=8と設定され、S1703に戻る。
【0098】
同様にS1703の判定では、T[8]=2であるため、S1704に進み、Work=T[8]=2と設定される。次に、S1705において、T[8]=7(=Num)と設定され、S1706において、Num=Work=2と設定される。そして、S1707において、q=8+1=9と設定され、S1703に戻る。
【0099】
次に、S1703の判定では、T[9]=0となるため、S1708において、T[9]=2と設定され、表示順のシフト処理を終了する。これにより、表示順格納テーブルTは図14(j)に示す状態になる。
【0100】
その後、S1219でm=2に設定され、S1212の判定において、m=2、F[7]=2で条件を満たさなくなるため、S1205に戻る。そして、S1205において、図16のS1603の判定では、T[1]〜T[9]まで0とはならないため、jがさらにカウントアップされてj=10と設定され、S1206においてi=8と設定される。そして、同様にS1208の判定では、F[8]=1となるため、S1209と進み、S1209においてk=10と算出される。次に、S1213の判定では、T[10]=0であるため、S1214においてT[10]=8と設定され、表示順格納テーブルTは図14(k)に示す状態になる。
【0101】
その後、S1219でm=1に設定され、S1212の判定において、m=1、F[8]=1で条件を満たさなくなるため、S1205に戻る。そして、S1205において、j=11と設定され、S1206においてi=9と設定されるが、S1207の判定では、N<iの条件を満たすため、表示順決定処理を終了する。
【0102】
以上のように本実施形態によれば、指定された画像の表示時間を長くしたり、表示頻度を多くしたり設定するようにしたので、所望の画像を効率良く選別することができる。
【0103】
なお、本実施形態では、利用者により画像の表示中にプレイリスト設定ボタン1002が押下されると、制御部101はプレイリストメニュー1001をディスプレイ110に表示するようにした。一方、スライドショーが表示されている状態で、利用者がポインティングデバイス109で表示中の画像をクリックすることによって、制御部101がプレイリストメニュー1001をディスプレイ110に表示するようにしてもよい。また、利用者が画像の表示中にポインティングデバイス109を動かすことによって、制御部101がディスプレイ110にプレイリストメニュー1001を表示するようにしてもよい。さらに、キーボード114から指示が入力され、制御部101がプレイリストメニュー1001をディスプレイ110に表示するようにしてもよい。なお、デジタルフォトフレームを用いる場合には、リモートコントローラを用いて操作できるようにしてもよい。
【0104】
また、プレイリストの設定手順をより簡単にするために、図7のS707でスライドショーを選択した後に、制御部101は図18(a)に示すようなプレイリスト設定画面1800をディスプレイ110に表示するようにしてもよい。あるいは、S703でスライドショー名を設定した後も同様である。この場合、図18(a)に示すプレイリスト設定画面1800で、利用者がスライドショーを表示する時に設定するプレイリスト(プレイリストモード及びプレイモード)を事前にリスト1801から選択できるようにする。そして、開始ボタン1802が押下されると、制御部101は、利用者が選択したプレイリスト(プレイリストモード及びプレイモード)を設定する。
【0105】
そして、利用者によりポインティングデバイス109のボタンがクリックされた場合に、制御部101は事前に選択したプレイリストを適用する。このように、利用者がプレイリストを指定した場合は、スライドショーを表示する前に、プレイリスト設定画面1800で事前に選択されたプレイリストに従ってスライドショーを表示することができる。
【0106】
また、図7のS707でスライドショーを選択した後あるいはS703でスライドショー名を設定した後に、制御部101は図18(b)に示すようなプレイリスト設定画面1840をディスプレイ110に表示するようにしてもよい。この場合、リスト1841からポジティブ設定とネガティブ設定とで1つずつ事前に選択することができる。そして、開始ボタン1843が押下されると、制御部101は利用者が選択したプレイリスト(プレイリストモード及びプレイモード)を設定する。
【0107】
そして、利用者によりポインティングデバイス109の右ボタンがクリックされた場合に、制御部101は事前に選択したポジティブ設定をプレイリストに適用する。一方、左ボタンがクリックされた場合には、事前に選択したネガティブ設定をプレイリストに適用する。このとき、キーボード114の上向きまたは右向きの矢印キーが押下された場合にポジティブ設定を適用し、下向きまたは左向き矢印キーが押下された場合にネガティブ設定を適用してもよい。このように、利用者がプレイリストを指定した場合は、スライドショーを表示する前に、プレイリスト設定画面1840で事前に選択されたプレイリストに従ってスライドショーを表示することができる。
【0108】
(第3の実施形態)
本実施形態では、スライドショーにおいて、グループに属する画像数によって同時に表示する枚数を変化させる例について説明する。なお、本実施形態に係る画像表示装置のハードウェア構成は図1と同様であるため、説明は省略する。
図19は、制御部101により実行される画像表示アプリケーションプログラムのモジュール構成の一例を示すブロック図である。
図19において、画像情報読出モジュール1901は、画像表示装置100が外部記憶装置104に記憶された画像ファイルに付帯する画像情報(撮影日時、撮影機器モデル名、撮影場所などの情報)を読み出すためのものである。
【0109】
画像分類モジュール1902は、画像表示装置100が複数の画像ファイルを特定の条件に従ってグループ分けするためのものである。画像分類モジュール1902は、撮影日時判断モジュール1911と、撮影場所判断モジュール1912とを備えている。撮影日時判断モジュール1911は、画像ファイルの撮影日時が所定の範囲内にあるかどうかを判断したり、画像ファイルの撮影日時と指定された日時とが所定より離れているかどうかを判断したりする。撮影場所判断モジュール1912は、画像ファイルの撮影場所が所定の範囲内にあるかどうかを判断したり、画像ファイルの撮影場所と指定された場所とが所定より離れているかどうかを判断したりする。
【0110】
例えば、画像情報読出モジュール1901により読み出された撮影日時情報に基づき、撮影日時判断モジュール1911により撮影日が同じ画像ファイルごとにグループ分けする。このとき、旅行、子供の運動会、飲み会など1つのイベントで撮影した関連度の高い画像ファイルの集合となることが多い。なお、利用者自身が関連度の高い画像ファイルをフォルダに分けて管理している場合は、画像分類モジュール1902によりフォルダ単位でグループ分けをしてもよい。
【0111】
画像計数モジュール1903は、蓄積された画像ファイルの総枚数を計数したり、各グループに分類された画像ファイルの枚数を計数したりするためのものである。表示枚数算出モジュール1904は、グループに属する画像ファイルの枚数と同時に表示する枚数との対応表を参照して、画面上に同時表示する画像ファイルの枚数を算出するためのものである。
【0112】
本実施形態では、グループに属する画像ファイルの枚数が多いほど多くの画像を同時に表示して、全体の表示時間を効果的に短縮できるような設定になっている。1つのイベントで大量に撮影された画像ファイルが含まれるようなグループの場合、多くの画像を同時に画面に表示しても、利用者はそのイベントに関係する画像群であることを認識しやすい。また、利用者が特定の画像を見落としたとしても、その画像ファイルが属するグループであることが認識できれば、例えば、画面に1枚ずつ表示するモードに変更して表示し直すことにより見落とした画像を見つけることができる。
【0113】
一方、街中を歩いている時に撮影したスナップ写真のような画像ファイルの場合は、個々の独立性が高く、撮影枚数も少ない場合が多いので、同時に表示する枚数を少なくしておかないと、利用者が特定の画像を認識することが難しくなる。また、前述した対応表は予め複数用意しておいて必要に応じ参照する対応表を切り替えてもよく、必要に応じて対応表を追加作成してもよい。
【0114】
表示画像選択モジュール1905は、画面に表示する画像を、表示枚数算出モジュール1904により算出された枚数分だけグループから選択するためのものである。表示制御モジュール1906は、表示画像選択モジュール1905により選択された画像を画面上に配置して所定の時間だけ表示するためのものである。配置方法の一例としては、画像同士が重ならないように縮小し、9枚の場合であれば横方向に3枚並べて縦方向に3回繰り返す。
【0115】
図20は、画像表示装置100が複数の画像をスライドショー表示する処理手順の一例を示すフローチャートである。なお、図20に示す各処理は、制御部101が図19に示した各モジュールに従うことにより実行させる。
図20において、まず、画像情報読出モジュール1901により画像ファイルの撮影日時の情報を外部記憶装置104から読み出す。そして、画像分類モジュール1902により撮影日が同じ画像ファイルごとにグループ分けする(S2001)。このとき、撮影日時順に画像ファイルを並べて、次の画像ファイルの撮影日時との差が所定値より大きくなったところでグループの境界とするように分類してもよい。
【0116】
次に、利用者によるポインティングデバイス109またはキーボード114の操作に応じて、最初に表示対象とするグループを決定する(S2002)。具体的には、利用者が指定した画像ファイルを含むグループを表示対象とする場合や、利用者が指定した撮影日を持つ画像ファイルを含むグループを表示対象とする場合などがある。
【0117】
次に、画像計数モジュール1903によりグループに属する画像ファイルの枚数を計数し、表示枚数算出モジュール1904により画像ファイルの枚数に基づいて画面上に同時に表示する画像の枚数を算出する(S2003)。そして、表示画像選択モジュール1905により画面上に同時に表示するための画像を選択する(S2004)。このとき、グループ内でまだ表示されていない画像から、S2003で算出された枚数分を選択する。
【0118】
次に、表示制御モジュール1906により、S2004で選択された画像ファイルに係る画像を画面上に配置して所定の時間だけディスプレイ110に表示する(S2005)。そして、グループ内にまだ表示されていない画像ファイルが存在するかどうかを判定する(S2006)。この判定の結果、まだ表示されていない画像ファイルが存在する場合はS2004に戻る。
【0119】
一方、S2006の判定の結果、まだ表示されていない画像ファイルが存在しない場合は、画像分類モジュール1902により表示対象を次のグループに設定する(S2007)。このとき、表示した前のグループに属する画像ファイルについては表示したという情報を一旦クリアする。そして、S2003に戻り、画像を表示する処理を繰り返し、利用者の所定の操作により終了させられるまでループする。
【0120】
図21は、図20のS2003の処理で表示枚数算出モジュール1904により参照される同時に表示する枚数の対応表の一例を示す図である。前述した通り、グループに属する画像ファイルの枚数が多いほど多くの画像を同時に表示することにより、全体の表示時間を効果的に短縮する。
【0121】
図21(a)に示す対応表は、グループに属する画像ファイルが2〜24枚である場合は、画面に同時表示する枚数は4枚であり、同様に、25〜49枚である場合は9枚、50枚以上である場合は16枚とすることを示している。例えば、20枚の画像ファイルを含むグループの場合は、撮影日時の順に4枚ずつ画像ファイルが選択され、画面が5回切り替わることにより全ての画像が表示されることになる。
【0122】
蓄積されている画像ファイルの総枚数が少ない場合は、表示時間の短縮効果を抑え、利用者が画像ファイルを認識しやすいことに重点を置いた対応表を用いてもよい。例えば、図21(b)に示す対応表のように、グループに属する画像ファイルが24枚以下の場合は1枚ずつ表示し、25枚以上の場合は9枚同時に表示するようにしてもよい。また、逆に総枚数が多い場合は、図21(c)に示すように、表示時間の短縮効果を上げるために同時に表示する枚数を更に多く設定した対応表を用いてもよい。
【0123】
また、画像を画面に効率良く配置できるように、ディスプレイ110の画面の縦横比に応じた対応表を用いてもよい。図21(a)及び図21(b)に示す対応表は、主に縦横比が3:4の画像を縦横比が3:4の画面に表示することを想定しているが、例えば図21(c)に示すように縦横比が9:16のワイド画面に表示する場合を想定した対応表を用いてもよい。
【0124】
次に、図22及び図23を参照しながら、図20に示した処理の具体例について説明する。以下の説明では、同時に表示する枚数の対応表としては図21(a)に示す対応表が設定されているものとする。
【0125】
図22は、図20のS2001の処理により3512枚の画像ファイルを撮影日によってグループ分けした結果の一例を示す図である。画像ファイルの番号「1」〜「3512」は撮影日時の順になっているものとする。S2002で利用者により撮影日として「2009/5/2」が指定されると、制御部101は「グループ252」を表示対象に設定する。そして、S2003では、「グループ252」に属する画像を7枚と計数するので、対応表を参照して画面上に同時に表示する画像の枚数を4枚と算出する。
【0126】
次に、S2004では、番号「3011」〜「3014」の4枚の画像ファイルを、同時に表示するための画像ファイルとして選択する。そして、S2005では、番号「3011」〜「3014」の画像を画面上に配置する。なお、図23(a)には、番号「3011」〜「3014」の画像が配置された画面2301の一例を示している。
【0127】
次に、S2006の判定では、「グループ252」にはまだ表示していない画像ファイルが存在すると判定し、S2004に戻る。そして、同様の手順により残りの番号「3015」〜「3017」の画像を画面上に配置する。図23(b)には、番号「3015」〜「3017」の画像が配置された画面2302の一例を示している。
【0128】
次に、S2006の判定では、「グループ252」には表示していない画像ファイルが存在しないと判定し、S2007で表示対象のグループを「グループ253」に設定する。そして、「グループ252」に属する番号「3011」〜「3017」の画像ファイルに対して表示されたという情報をクリアする。
【0129】
次に、S2003に戻り、「グループ253」に属する画像を31枚と計数するので、対応表を参照して画面上に同時に表示する画像の枚数を9枚と算出する。そして、同様の手順により、番号「3018」〜「3026」の画像を画面上に配置する。図23(c)には、番号「3018」〜「3026」の画像が配置された画面2303の一例を示している。以上のように、画面2301、2302、2303と表示が順次切り替わっていく。
【0130】
また、所望する画像ファイルが表示中のグループに属している可能性が高いと利用者が判断した時に、同時に表示する枚数を少なくすることにより利用者が画像ファイルを特定しやすくすることもできる。
【0131】
図24(a)には、「グループ254」の画像が表示されている時に、利用者によりポインティングデバイス109で所定の操作が行われたことにより、ポップアップメニュー2404が表示された状態の画面2401を示している。この状態で、利用者によりポインティングデバイス109が操作され、ポップアップメニュー2404から[1枚表示]が選択されると、表示枚数算出モジュール1904により表示枚数を常に1とする対応表を参照するように切り替わる。そして、同時に表示する枚数が1枚に変更され、今まで表示されていた番号「3066」〜「3081」の画像ファイルに対して表示されたという情報をクリアする。これにより、S304以降の処理では、図24(b)に示す画面2402、図24(c)に示す画面2403と順次切り替わっていく。
【0132】
また、表示されたという情報をクリアする際には、現在表示の対象となっているグループに属する画像ファイル全てに対して行ってもよい。図24(a)に示す画面2401の例では、番号「3049」〜「3081」の画像ファイルがクリアの対象ということになり、この場合は、番号「3049」の画像、番号「3050」の画像という順序で表示されることになる。
【0133】
図24に示す例では、1枚ずつの表示に切り替えっているが、参照する対応表を変更して表示枚数を単純に少なくするようにしてもよい。図21(a)に示す対応表のように、グループに属する画像ファイルが2〜24枚であれば1枚、25〜49枚であれば4枚、50枚以上であれば9枚というように1段階ずつ表示枚数を少なくするようにしてもよい。
【0134】
また、利用者によりポインティングデバイス109が操作され、ポップアップメニュー2404から[通常表示]が選択されると、表示枚数算出モジュール1904により通常の対応表を参照するように切り替わるようにしてもよい。切り替えるタイミングとしては、表示対象が次のグループに変わる時に通常の対応表を参照するように切り替えてもよい。
【0135】
また、利用者が画像を認識しやすくするために、グループに属する画像ファイルの枚数が所定値より多い場合には、撮影日時が所定時間より離れた画像ファイルを含むという条件で、S2003の処理を実行する前にグループを再分割してもよい。例えば、図22に示すように、「グループ254」には、102枚の画像ファイルが属しているが、番号「3049」〜「3143」の画像ファイルについては撮影日時の差が30分以内に収まっているものとする。そして、番号「3143」の画像ファイルと番号「3144」の画像ファイルとで撮影日時が2時間以上離れているものとする。このような場合は、番号「3049」〜「3143」の画像ファイルと番号「3144」〜「3150」の画像ファイルとで別のグループとして分割してもよい。
【0136】
また、番号「3049」〜「3143」の画像ファイルは撮影場所がほぼ同じであり、番号「3144」〜「3150」の画像ファイルの撮影場所が大きく離れている場合は別のグループとして分割してもよい。このような分割により、番号「3049」〜「3143」の画像ファイルでは、同時に表示する枚数は16枚と変わらないが、番号「3144」〜「3150」の画像ファイルでは、同時に表示する枚数は4枚に減る。これにより、例えば、同じ撮影日にイベント関連で撮影した大量の写真とイベントと関係なく街中で撮影した少量の独立性が高いスナップ写真が混在しているような場合でも、適切にグループ分けすることができる。このようにグループが分割されることによりスナップ写真については同時に表示する枚数を少なくすることができる場合がある。
【0137】
以上説明したように本実施形態によれば、大量の画像ファイルを表示する時間を短縮するとともに、さらに、利用者が特定の画像ファイルを見落としにくくし、所望の画像を効率良く見つけることができる。
【0138】
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0139】
101 制御部
【技術分野】
【0001】
本発明は画像表示装置、画像表示方法及びプログラムに関し、特に、画像をスライドショー表示するために用いて好適な技術に関する。
【背景技術】
【0002】
従来、大量な画像の中から必要な画像を選別する方法としては、スライドショー等を利用して画面上に画像を一枚ずつ表示していく方法がある。その際に、希望の画像を後から検索する手間を省くために、表示中の画像にしおり情報を付与する手段を備えた技術が開示されている(例えば、特許文献1参照)。
【0003】
また、事前に設定されたメタデータより画像の価値を判断し、価値が高いほどスライドショーにおける表示時間が長くなるように、スライドショー形式の画像データを生成する技術も開示されている(例えば、特許文献2参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−187413号公報
【特許文献2】特開2005−328516号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来の技術ではスライドショーで表示される大量の画像中から希望の画像を効率良く選別するのは困難であった。
【0006】
本発明は前述の問題点に鑑み、スライドショーで表示される画像の中から所望の画像を効率良く選別できるようにすることを目的としている。
【課題を解決するための手段】
【0007】
本発明の画像表示装置は、スライドショー形式で複数の画像を表示部に表示する画像表示装置であって、前記スライドショー形式で表示される画像に対して指定する指定手段と、前記指定手段によって指定された画像を前記スライドショー形式で表示される領域とは異なる領域に連続的に表示する表示制御手段とを備え、前記表示制御手段は、前記連続的に表示される画像と関連性のある画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする。
【発明の効果】
【0008】
本発明によれば、画像をスライドショー形式で表示しながら、大量の画像の中から所望の画像を効率良く選別することができる。
【図面の簡単な説明】
【0009】
【図1】第1〜第3の実施形態に係る画像表示装置の構成例を示すブロック図である。
【図2】第1の実施形態において、スライドショーを表示する処理手順の一例を示すフローチャートである。
【図3】第1の実施形態における画像情報テーブルの一例を示す図である。
【図4】第1の実施形態において、ディスプレイに表示されるスライドショーの画面の一例を示す図である。
【図5】第1の実施形態において、スライドショーのオプション設定画面の一例を示す図である。
【図6】第1の実施形態において、類似画像の設定がなされている場合のスライドショーの画面の一例を示す図である。
【図7】第2の実施形態において、お気に入りのスライドショーを表示する処理手順の一例を示すフローチャートである。
【図8】第2の実施形態におけるプレイリストの構成例を示す図である。
【図9】第2の実施形態におけるスライドショー表示リストの一例を示す図である。
【図10】第2の実施形態において、ディスプレイに表示されるスライドショーの画面の一例を示す図である。
【図11】図7のS716で行われるプレイリストの更新処理手順の一例を示すフローチャートである。
【図12】第2の実施形態において、表示順を決定する処理手順の一例を示すフローチャートである。
【図13】画像番号と表示頻度との関係の一例を示す図である。
【図14】第2の実施形態において、表示順を決定する過程の一例を示す図である。
【図15】図12のS1203で行われるスライドショー1周の画像表示数を取得する処理手順の一例を示すフローチャートである。
【図16】図12のS1205で行われる表示順の値を取得する処理手順の一例を示すフローチャートである。
【図17】図12のS1215で行われる表示順のシフト処理の手順の一例を示すフローチャートである。
【図18】第2の実施形態において、プレイリストの設定画面の一例を示す図である。
【図19】第3の実施形態において、制御部により実行される画像表示アプリケーションプログラムのモジュール構成の一例を示すブロック図である。
【図20】第3の実施形態において、複数の画像をスライドショー表示する処理手順の一例を示すフローチャートである。
【図21】第3の実施形態において、同時に表示する枚数の対応表の一例を示す図である。
【図22】第3の実施形態において、複数の画像ファイルを撮影日によってグループ分けした結果の一例を示す図である。
【図23】第3の実施形態において、画像が配置された画面の一例を示す図である。
【図24】第3の実施形態において、表示数が変化した場合の画面の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、図面を参照しながら本発明の実施形態について説明する。
(第1の実施形態)
図1は、本実施形態に係る画像表示装置100のハードウェア構成例を示すブロック図である。
本実施形態において、画像表示装置100は、利用者の操作に応答して画面上にスライドショーを表示する。画像表示装置100は、例えば、パーソナルコンピュータ(PC)、デジタルフォトフレーム、携帯電話器、デジタルカメラなどにより実現される。
【0011】
図1において、制御部101は、画像表示装置100全体を制御するためのものであり、例えばCentral Processing Unit(CPU)である。Read Only Memory(ROM)102は、変更を必要としないプログラムやパラメータを格納するメモリである。Random Access Memory(RAM)103は、外部装置などから供給されるプログラムやデータを一時記憶するメモリである。
【0012】
外部記憶装置104は、例えば、画像表示装置100に固定して設置されたハードディスク、あるいは着脱可能なフレキシブルディスク(FD)やCompact Disk(CD)等の光ディスク、磁気や光カード、ICカード、メモリカードなどである。本実施形態では、スライドショー形式で表示するための画像データを複数記憶している。操作入力I/F105は、利用者の操作を受けてデータを入力するポインティングデバイス109やキーボード114などの入力デバイスと接続するインターフェイスである。
【0013】
表示I/F106は、画像表示装置100の保持するデータや供給されたデータを表示するディスプレイ110と接続するインターフェイスである。ネットワークI/F107は、ネットワーク111に接続するためのインターフェイスである。画像入力I/F108は、デジタルカメラやスキャナなどの画像入力デバイス112と接続するインターフェイスである。また、システムバス113は、制御部101〜画像入力I/F108の各ユニットを接続するためのバスである。
【0014】
図2は、本実施形態において、スライドショーを表示する処理手順の一例を示すフローチャートである。図2に示す各処理は、制御部101がOSや画像表示アプリケーションプログラムをROM102やRAM103、外部記憶装置104から読み出し、これらのプログラムを起動することにより制御部101によって実行される。
【0015】
まず、制御部101は、利用者からポインティングデバイス109またはキーボード114を介してスライドショーのリクエストを入力するまで待機する(S201)。そして、スライドショーのリクエストを入力すると、画像情報テーブルを作成する(S202)。
【0016】
図3は、画像情報テーブル300の一例を示す図である。
図3に示すように、画像情報テーブル300は、画像ID301、画像のファイル名302、しおりID303、類似フラグ304、撮影日時305、輝度値306及び撮影人数307の情報を備えている。しおりID303には、指定済み画像の表示順を示す値が格納される。また、類似フラグ304には、類似画像である場合に「1」が格納される。
【0017】
撮影日時305、輝度値306及び撮影人数307は、類似画像であるか否かを判定する際に利用され、スライドショーのリクエストがあった後に各々の値が算出され、その算出された値が格納される。撮影日時305は、画像情報(Exif情報)より値が取得される。輝度値306は、画像の輝度の平均値として取得される。撮影人数307は、画像上の形や色等から人物が判定され、その人数として取得される。
【0018】
図2の説明に戻り、次に、スライドショーを表示部であるディスプレイ110に表示する(S203)。具体的には、S202で作成した画像情報テーブル300に基づいて、該当する画像ファイルを外部記憶装置104などから読み出し、スライドショーの画面を形成する画像を作成してディスプレイ110に表示する。
【0019】
図4は、ディスプレイ110に表示されるスライドショーの画面400の一例を示す図である。
図4において、スライド画像表示領域401は、スライドショーにて一定時間毎に1枚または複数枚の画像が切り替わる領域である。指定済み画像表示領域402は、スライド画像表示領域401にて指定された画像を連続的に表示する領域である。オプション設定ボタン403は、スライドショーに対してオプションを設定する際に利用されるボタンである。
【0020】
図2の説明に戻り、次に、利用者からポインティングデバイス109またはキーボード114を介して画像を指定するリクエストを入力したか否かを判定する(S204)。この判定の結果、画像を指定するリクエストを入力した場合は、スライドショーに現在表示されている画像のしおりIDに、現時点でのしおりID303の最大値に1を加えた値を追加する(S205)。
【0021】
一方、S204の判定の結果、画像を指定するリクエストを入力していない場合は、利用者から同様に指定済み画像を削除するリクエストを入力したか否かを判定する(S206)。この判定の結果、指定済み画像を削除するリクエストを入力した場合は、画像情報テーブル300から、指定された画像のしおりIDを削除する(S207)。そして、指定された画像を、指定済み画像表示領域402から削除する(S208)。
【0022】
一方、S206の判定の結果、指定済み画像を削除するリクエストを入力していない場合は、利用者から同様に画像を入れ替えるリクエストを入力したか否かを判定する(S209)。この判定の結果、画像を入れ替えるリクエストを入力した場合は、スライドショーに現在表示されている画像のしおりIDに、画像を入れ替えるリクエストにより指定された画像のしおりIDの値を代入する(S210)。そして、画像情報テーブル300から、画像を入れ替えるリクエストにより指定された画像のしおりIDを削除する(S211)。
【0023】
一方、S209の判定の結果、画像を入れ替えるリクエストを入力していない場合は、利用者から同様に類似画像の設定を変更するリクエストを入力したか否かを判定する(S212)。この判定の結果、設定を変更するリクエストを入力していない場合はS220に進む。一方、類似画像の設定を変更するリクエストを入力した場合は、現在、類似画像の設定がなされているか否かを判定する(S213)。
【0024】
図5は、スライドショーのオプション設定画面500の一例を示す図である。図5に示すスライドショーのオプション設定画面500は、図4に示したオプション設定ボタン403が押下されると表示される。
図5において、領域501は、類似画像に関する設定を行うための領域であり、類似画像である場合に他の画像よりサイズを変更して表示するか否かを選択することができる。また、類似画像の設定を行う場合には、類似条件も設定することができる。類似条件の例としては、撮影時間が近いもの、画像の平均輝度値が近いもの、撮影されている人物の数が同じものなど、関連性があるものである。また、それぞれの類似条件の範囲としては、設定画面内にて利用者に設定させる方法と、画像表示装置100で予め設定しておく方法とがある。
【0025】
S213の判定の結果、類似画像の設定がなされている場合は、画像情報テーブル300のしおりID303に値が格納されている画像に対して、類似条件を元に類似画像であるか否かを判定する。そして、類似画像である場合は類似フラグ304に「1」を代入し、そうでない場合は類似フラグ304を削除する(S214)。そして、類似フラグ304が「1」である画像の数と、類似フラグ304に値がない画像の数とを各々計算し、指定済み画像表示領域402上に指定済み画像が全て表示されるような各々の画像サイズを計算する(S215)。
【0026】
一方、S213の判定の結果、類似画像の設定がなされていない場合は、画像情報テーブル300の類似フラグ304を全て削除する(S216)。そして、画像情報テーブル300でしおりID303に値が格納されている画像の数を計算し、指定済み画像表示領域402上に指定済み画像が全て表示されるような一枚あたりの画像サイズを計算する(S217)。
【0027】
次に、指定済み画像のサイズを、S215またはS217で計算したサイズに変更する(S218)。そして、画像情報テーブル300のしおりID303順に並ぶように、指定済み画像表示領域402上に指定済み画像を表示する(S219)。
【0028】
図6は、類似画像の設定がなされている場合のスライドショーの画面600の一例を示す図である。
図6に示すように、指定済み画像表示領域402に表示されている画像のうち、スライド画像表示領域401の画像と類似する画像601が大きく表示される。なお、本実施形態では、画像拡大しているが、その他の表示態様によって区別できるようにしてもよい。
【0029】
図2の説明に戻り、その後、指定された時間が経過したか否かを判定する(S220)。この判定の結果、指定された時間が経過していない場合はS204に戻り、指定された時間が経過するまでS204以降の処理を繰り返す。
【0030】
一方、S220の判定の結果、指定された時間が経過した場合は、画像枚数分のスライドショーが終了したか否かを判定する(S221)。この判定の結果、画像枚数分のスライドショーが終了した場合は、図2のスライドショーを表示する処理を終了する。
【0031】
一方、S221の判定の結果、画像枚数分のスライドショーが終了していない場合は、類似画像の設定がなされているか否かを判定する(S222)。この判定の結果、類似画像の設定がなされている場合はS223に進み、類似画像の設定がなされていない場合はS225に進む。なお、図2に示すS223〜S228の処理はそれぞれ、前述したS214〜S219までの処理と同様である。そして、S228の処理を終えると、スライド画像表示領域401に表示する画像を切り替える(S229)。そして、S204に戻る。全ての画像が終了するまでステップS204以降の処理を繰り返す。
【0032】
以上のように本実施形態によれば、スライドショーが表示されているときに、利用者から画像が指定されると、指定された画像を画面の上部に指定済み画像として表示する。そして、スライドショーで表示された画像が、指定済み画像と類似した画像である場合には、その指定済み画像を拡大する。これにより、利用者は大量の画像の中から所望の画像を効率良く選別することができる。
【0033】
(第2の実施形態)
本実施形態では、スライドショーにおいて、画像によって表示時間や回数を異なるようにする例について説明する。なお、本実施形態に係る画像再生装置のハードウェア構成は図1と同様であるため、説明は省略する。
図7は、本実施形態において、お気に入りのスライドショーを表示する処理手順の一例を示すフローチャートである。なお、図7に示す各処理は、制御部101がOSや画像表示アプリケーションプログラムをROM102やRAM103、外部記憶装置104から読み出し、これらのプログラムを起動することにより制御部101によって実行される。
【0034】
まず、利用者からポインティングデバイス109またはキーボード114を介してスライドショーを選択する指示または新規にスライドショーを作成する指示を入力すると、処理を開始する。そして、制御部101は入力された指示を解析し、新規のスライドショーを作成するか否かを判定する(S701)。この判定の結果、新規のスライドショーを作成する場合は、利用者がポインティングデバイス109またはキーボード114を操作したことに応じて、スライドショーを行う画像を選択する(S702)。
【0035】
次に、利用者がポインティングデバイス109またはキーボード114を操作したことに応じて、制御部101はスライドショー名の情報を入力する(S703)。そして、S702で選択された画像に基づいてプレイリストを作成し、プレイリストの初期化処理を行う(S704)。
【0036】
図8(a)は、本実施形態におけるプレイリスト800の構成例を示す図である。
図8(a)に示すように、プレイリスト800は、画像毎に画像番号801、プレイリストモード802、プレイリストカウンタ803、及びプレイモード804の属性を備えている。
【0037】
プレイリストモード802は、後述するプラス方向及びマイナス方向のどちらに強調するかを示す属性である。プレイリストモード802の設定値は、「設定なし」、「ポジティブ」、及び「ネガティブ」の3つの値がある。なお、初期状態では、「設定なし」に設定される。「ポジティブ」は、スライドショーを表示する時に画像をプラス方向に強調する(目立つようにする)モードである。一方、「ネガティブ」は、スライドショーを表示する時に画像をマイナス方向に強調する(目立たなくする)モードである。
【0038】
プレイリストカウンタ803は、強調された回数を表すものであり、「ポジティブ」の場合はプラス方向にカウントされ、「ネガティブ」の場合はマイナス方向にカウントされる。プレイモード804は、スライドショーを表示する時にどのような方法で強調するかを示す属性である。プレイモード804の設定値は、「設定なし」、「頻繁に」、「大きく」、「長く」、「非表示」、「小さく」、及び「短く」の7つの値がある。なお、初期状態では、「設定なし」に設定される。プレイリストモード802がポジティブの場合は、「頻繁に」、「大きく」、「長く」の3つの値から選ばれ、プレイリストモード802がネガティブの場合は、「非表示」、「小さく」、「短く」の3つの値から選ばれる。そして、それぞれスライドショーを表示する時に設定された値に応じた強調が行われる。なお、プレイリスト800の変更処理については後述する。
【0039】
S704のプレイリストの初期化処理では、制御部101はS702で選択された全ての画像に画像番号を割り当て、全ての画像のプレイリストモード802を「設定なし」に設定する。そして、プレイリストカウンタ803を「0」に設定し、さらにプレイモード804を「設定なし」に設定する。
【0040】
プレイリストの初期化処理が完了すると、制御部101はスライドショー表示リストの初期化処理を行う(S705)。
【0041】
図9は、本実施形態におけるスライドショー表示リスト900の一例を示す図である。なお、図9(a)は、スライドショー表示リストの初期状態を示し、図9(b)は、プレイリストのデータ属性が図8(a)に示した例のように設定された場合のスライドショー表示リストの一例を示している。
【0042】
図9(b)に示すように、1番目の画像は表示頻度、表示サイズ、表示時間とも変更されずに表示される。一方、2番目の画像は、表示時間が5秒から7秒に変更され、通常より長く表示される。また、5番目の画像は、表示サイズが100%から120%に変更され、通常より大きく表示される。このようなスライドショー表示リストに基づいてスライドショーが開始されると、利用者からスライドショー終了の指示があるまで繰り返しスライドショーが表示される。
【0043】
スライドショー表示リストの初期化処理では、表示順901には選択した画像数までの番号を設定し、画像番号902には、S702で選択された画像の画像番号を順に割り当てる。そして、全ての画像の表示頻度903、表示サイズ904、及び表示時間905には、図8(b)に示すプレイモード804及びプレイリストカウンタ803から実際の表示頻度、表示サイズ、表示時間を換算し、設定する。なお、図8(b)に示される表示頻度、表示サイズ、表示時間の換算値は一例であり、状況に応じて最適な値に調整することが可能である。図8(b)に示す例では、プレイリストカウンタ803が最小値−4から最大値4まで変化するが、最小値及び最大値に達した場合はそれ以上表示頻度、表示サイズ、表示時間は変化しない。
【0044】
スライドショー表示リストの初期化処理が完了すると、1回のスライドショーで表示する画像数を表すカウンタNにS703で選択した画像数をセットする(S706)。なお、図9(a)に示した例の場合は、N=10をセットする。
【0045】
一方、S701の判定の結果、新規のスライドショーを作成しない場合は、既存のスライドショーを利用することになる。そこで、利用者がポインティングデバイス109またはキーボード114を操作したことに応じて、既存のスライドショーのリストの中から表示するスライドショーを選択する(S707)。そして、選択したスライドショーに対応するプレイリストを取得する(S708)。プレイリストの取得処理では、制御部101は選択されたスライドショーに対応するプレイリストを外部記憶装置104などから読み出す。
【0046】
プレイリストの取得処理が完了すると、選択したスライドショーのスライドショー表示リストを取得する(S709)。スライドショー表示リストの取得処理では、制御部101は選択されたスライドショーに対応するスライドショー表示リストを外部記憶装置104などから読み出す。
【0047】
スライドショー表示リストの取得処理が完了すると、1回のスライドショーで表示する画像数を表すカウンタNにスライドショー表示リストに記録されている表示画像数(同じ画像が複数回表示される場合は重複してカウントする)をセットする(S710)。
【0048】
S706またはS710の処理が完了すると、制御部101は表示順を表すカウンタJに1をセットし、カウンタKに0をセットする(S711)。そして、J≦Nという条件を満たしているか否かを判定する(S712)。この判定の結果、条件を満たしている場合は、表示順がJ番目となる画像のスライドショー表示リストを取得する(S713)。そして、取得したスライドショー表示リストに従い、J番目の画像データを外部記憶装置104から読み出し、ディスプレイ110のスライドショーの画面にその画像を表示する(S714)。
【0049】
図10は、ディスプレイ110に表示されるスライドショーの画面の一例を示す図である。図10では、スライドショーの表示中にスライドショー画面1000とプレイリストメニュー1001とが表示された状態を示している。なお、スライドショー画面1000の下部には、プレイリスト設定ボタン1002と表示終了ボタン1003とが表示される。
【0050】
次に、J番目の画像が表示されている時に、利用者からポインティングデバイス109またはキーボード114を介してその画像が指定されたか否かを判定する(S715)。具体的には、利用者により図10に示すようなプレイリスト設定ボタン1002が押下された場合に、制御部101はその画像が指定されたと判定する。この場合、制御部101は利用者からの指示に応じてプレイリスト800の更新処理を行う(S716)。プレイリストの更新処理の詳細については後述する。
【0051】
一方、S715の判定の結果、プレイリスト設定ボタン1002が押下されていない場合は、同様に表示終了ボタン1003が押下されたか否かを判定する(S717)。この判定の結果、表示終了ボタン1003が押下された場合は、スライドショー表示リストを更新してプレイリスト及びスライドショー表示リストを外部記憶装置104に保存し(S718)、スライドショーの表示処理を終了する。
【0052】
一方、S717の判定の結果、表示終了ボタン1003が押下されていない場合は、現在表示されている画像の表示時間が終了したか否かを判定する(S719)。この判定の結果、表示時間が終了していない場合はS715に戻る。一方、表示時間が終了した場合は、前述したカウンタJを1カウントアップし、S712に戻る。
【0053】
このようにS712の判定により条件が成立しなくなるまで、制御部101はS712〜S720の処理を繰り返す。そして、カウンタJがカウントアップされ、S712の判定の結果、J≦Nという条件を満たさなくなった場合は、制御部101はスライドショー表示リストを更新する(S721)。そして、カウンタNにカウンタKの値を加算し、S711に戻る。
【0054】
詳細については後述するが、このカウンタKの値は、S716のプレイリストの更新処理において、プレイリストメニュー1001で「ポジティブ−頻繁に」が選択された場合に1カウントアップされる。また、プレイリストメニュー1001で「ネガティブ−非表示」が選択された場合に1カウントダウンされる。このように、1回のスライドショーで表示される画像数がカウンタKの分だけ増減し、頻繁に選択した画像は繰り返し再生され、非表示を選択した画像が表示されなくなる。
【0055】
図11は、図7のS716で行われるプレイリスト800の更新処理手順の一例を示すフローチャートである。
まず、制御部101はプレイリストメニュー1001をディスプレイ110に表示する(S1101)。次に、利用者によりポインティングデバイス109またはキーボード114が操作されることによりプレイリストメニュー1001が選択されるまで待機する(S1102)。そして、利用者によりプレイリストメニュー1001が選択されると、制御部101は選択されたメニューが何であるかを判定する(S1103)。
【0056】
S1103の判定の結果、「プレイリスト指定」メニューが選択された場合は、利用者によりポインティングデバイス109またはキーボード114が操作され、プレイリストモード802(ポジティブまたはネガティブ)を設定する(S1104)。さらに、利用者によりポインティングデバイス109またはキーボード114が操作され、プレイモード804(長く、大きく、頻繁に、短く、小さく、非表示)を設定する(S1105)。
【0057】
次に、制御部101はプレイリストモード802が変更されたか否かを判定する(S1106)。この判定の結果、プレイリストモード802が変更されていない場合はS1108に進む。一方、プレイリストモード802が変更されている場合は、プレイリストカウンタ803を初期化する(S1107)。
【0058】
次に、制御部101は現在のプレイリストモード802を判定する(S1108)。この判定の結果、プレイリストモード802がポジティブである場合は、プレイリストカウンタの値<最大値であるか否かを判定する(S1109)。この判定の結果、プレイリストカウンタの値<最大値でない場合はS1111に進む。一方、プレイリストカウンタの値<最大値である場合は、プレイリストカウンタ803を1カウントアップする(S1110)。
【0059】
次に、制御部101はプレイモード804が「頻繁に」であるか否かを判定する(S1111)。この判定の結果、プレイモード804が「頻繁に」でない場合は、更新処理を終了する。一方、プレイモード804が「頻繁に」である場合は、カウンタKを1カウントアップし(S1112)、更新処理を終了する。
【0060】
一方、S1108の判定の結果、プレイリストモード802がネガティブである場合は、プレイリストカウンタの値>最小値であるか否かを判定する(S1113)。この判定の結果、プレイリストカウンタの値>最小値でない場合はS1115に進む。一方、プレイリストカウンタの値>最小値である場合はプレイリストカウンタ803を1カウントダウンする(S1114)。
【0061】
次に、制御部101はプレイモード804が「非表示」であるか否かを判定する(S1115)。この判定の結果、プレイモード804が「非表示」でない場合は、更新処理を終了する。一方、プレイモード804が「非表示」である場合は、カウンタKを1カウントダウンし(S1116)、更新処理を終了する。
【0062】
一方、S1103の判定の結果、「強調」メニューが選択された場合は、制御部101は現在のプレイリスト800を取得し(S1117)、S1108に進む。以降、同様に現在のプレイリストモードに応じて、プレイリストカウンタ803を増減する。なお、「強調」メニューは、プレイリストモード802及びプレイモード804が「設定なし」の場合は選択することができない。
【0063】
一方、S1103の判定の結果、「非表示復元」メニューが選択された場合は、利用者によりポインティングデバイス109またはキーボード114が操作され、非表示復元を行う画像名を選択する(S1118)。そして、S1118で選択された画像名に対応するプレイリストのプレイリストモードをクリア(設定なし)にする(S1119)。
【0064】
次に、S1118で選択された画像名に対応するプレイリストのプレイリストカウンタを0に戻す(S1120)。そして、S1118で選択された画像名に対応するプレイリストのプレイモードをクリア(設定なし)にし(S1121)、更新処理を終了する。なお、「非表示復元」メニューはプレイモード804が「非表示」に設定されている画像がない場合は選択することができない。
【0065】
一方、S1103の判定の結果、「リセット」メニューが選択された場合は、図7のS715で指定された画像に対応するプレイリストのプレイリストモードをクリア(設定なし)にする(S1122)。そして、図7のS715で指定された画像に対応するプレイリストのプレイリストカウンタを0に戻し(S1123)、さらにプレイリストのプレイモードをクリア(設定なし)にして(S1124)、更新処理を終了する。
【0066】
次に、図12を参照しながら、本実施形態において、図11のS1105プレイモードが「頻繁に」または「非表示」に変更された場合の表示順を決定する処理の全体の流れについて説明する。
図12は、表示順を決定する処理手順の一例を示すフローチャートである。なお、図12に示す各処理は制御部101により行われる。
まず、スライドショーの画像の枚数Nの情報を取得する(S1201)。例えば図13に示すスライドショー表示リスト1301の場合は、N=8となる。
【0067】
次に、1番目からN番目までの画像P[i]に対する表示頻度F[i]の情報を取得する(S1202)。なお、以下の説明では、図13に示す表示頻度が設定されている場合を例にして表示順を決定する処理について説明する。
【0068】
次に、スライドショー1周の画像表示数Dの情報を取得するとともに、表示順を管理するための表示順格納テーブルTを作成する(S1203)。なお、スライドショー1周の画像表示数Dの情報の取得処理の詳細については後述する。S1203の処理が完了すると、表示順格納テーブルTは図14(a)に示す状態になり、D=10となる。
【0069】
次に、カウンタiにi=0を設定する(S1204)。そして、表示画像をこれから決定する表示順jの値を取得する(S1205)。なお、表示画像をこれから決定する表示順jの取得処理の詳細については後述する。次に、カウンタiを1カウントアップする(S1206)。そして、N<iの条件を満たすか否かを判定する(S1207)。この判定の結果、条件を満たす場合は、表示順決定処理を終了する。
【0070】
一方、S1207の判定の結果、条件を満たさない場合は、表示頻度F[i]=0の条件を満たすか否かを判定する(S1208)。この判定の結果、条件を満たす場合はS1206に戻り、条件を満たさない場合はS1209に遷移する。
【0071】
次に、表示間隔kに対してk=D/F[i]と設定し(S1209)、カウンタmに対してm=0と設定する(S1210)。そして、表示順pに対してp=jと設定する(S1211)。次に、m<F[i]の条件を満たすか否かを判定する(S1212)。この判定の結果、条件を満たさない場合はS1205に戻る。
【0072】
一方、S1212の判定の結果、条件を満たす場合は、T[p]=0の条件を満たすか否かを判定する(S1213)。ここで、T[p]とは、図14に示す表示順格納テーブルTの画像番号であり、その表示順での画像番号が決定していない場合にT[p]=0となる。この判定の結果、条件を満たす場合は、T[p]=iと設定する(S1214)。一方、S1213の判定の結果、条件を満たさない場合は、表示順のシフト処理を行う(S1215)。なお、S1215の表示順のシフト処理(p,i)の詳細については後述する。
【0073】
次に、p=p+kと設定し(S1216)、D<pの条件を満たすか否かを判定する(S1217)。この判定の結果、条件を満たさない場合はS1219へ進み、条件を満たす場合はp=p−Dと設定する(S1218)。そして、カウンタmを1カウントアップし(S1219)、S1212に戻る。
【0074】
図15は、図12のS1203で行われるスライドショー1周の画像表示数Dを取得する処理手順の一例を示すフローチャートである。
まず、スライドショー1周の画像表示数Dに対してD=0と設定する(S1501)。次に、カウンタiにi=1と設定し(S1502)、i>Nの条件を満たすか否かを判定する(S1503)。この判定の結果、条件を満たす場合はS1506に進み、条件を満たさない場合はS1504に進む。
【0075】
次に、図12のS1202で取得した表示頻度F[i]を用いてD=D+F[i]と設定する(S1504)。図13に示すデータを例に説明すると、i=1の場合は、D=0+1=1となり、i=2の場合は、D=1+3=4となる。また、i=3の場合は、D=4+0=4となり、i=4の場合は、D=4+1=5となる。そして、i=5の場合は、D=5+1=6となり、i=6の場合は、D=6+1=7となる。さらに、i=7の場合は、D=7+2=9となり、i=8の場合は、D=9+1=10となる。次に、i=i+1と設定し(S1505)、S1503に戻る。
【0076】
S1503の判定の結果、条件を満たす場合は、D個分の表示順格納テーブルTを確保する(S1506)。図13に示すデータを例に説明すると、S1504でi=8の場合はD=9+1=10となり、S1505でi=9となる。この場合、S1503の判定で条件を満たさなくなるため、S1506で10個分の表示順格納テーブルTを確保することになる。
【0077】
次に、カウンタiにi=1を設定し(S1507)、i>Nの条件を満たすか否かを判定する(S1508)。この判定の結果、条件を満たす場合は、スライドショー1周分の画像表示数Dの取得処理を終了する。一方、S1508の判定の結果、条件を満たさない場合は、表示順格納テーブルTの画像番号T[i]に0を設定し、初期化する(S1509)。そして、i=i+1と設定し(S1510)、S1508に戻る。画像番号T[i]の初期化が完了すると、図14(a)に示す表示順格納テーブルTが作成される。
【0078】
図16は、図12のS1205で行われる表示画像をこれから決定する表示順jの値を取得する処理手順の一例を示すフローチャートである。
まず、制御部101は、表示画像をこれから決定する表示順jに対してj=1と設定し(S1601)、図15に示した手順により取得した画像表示数Dに対してj>Dの条件を満たすか否かを判定する(S1602)。この判定の結果、条件を満たす場合は、そのときの表示順jの値を取得し、処理を終了する。
【0079】
一方、S1602の判定の結果、条件を満たしていない場合は、T[j]=0という条件を満たすか否かを判定する(S1603)。この判定の結果、条件を満たす場合は、そのときの表示順jの値を取得し、処理を終了する。一方、S1603の判定の結果、条件を満たしていない場合は、jを1カウントアップし(S1604)、S1602に戻る。
【0080】
図17は、図12のS1215で行われる表示順のシフト処理の手順の一例を示すフローチャートである。
まず、制御部101は、表示順シフト用Numに対してNum=iと設定し(S1701)、カウンタqにq=p+1と設定する(S1702)。そして、T[q]=0の条件を満たすか否かを判定する(S1703)。この判定の結果、条件を満たす場合はS1708に進む。
【0081】
一方、S1703の判定の結果、条件を満たさない場合は、表示順退避用Workに対してWork=T[q]と設定し(S1704)、T[q]に対してT[q]=Numと設定する(S1705)。次に、Numに対してNum=Workと設定し(S1706)、qを1カウントアップして(S1707)、S1703に戻る。S1703の判定の結果、条件を満たす場合はT[q]に対してT[q]=Numと設定し(S1708)、表示順のシフト処理(p,i)を終了する。
【0082】
次に、前述した図12のフローチャートに沿って、図14に示す表示順格納テーブルTのデータ遷移について説明する。
前述したように、S1203の処理が完了すると、表示順格納テーブルTは図14(a)に示す状態となる。そして、S1207の判定では、表示順j=1でN=8、i=1となるため、S1208に進む。そして、S1208の判定では、表示頻度F[1]=1となるため、S1209に進む。S1209では、表示間隔k=10/1=10と設定される。
【0083】
S1212の判定では、m=0、F[1]=1であるため、S1213に進む。そして、S1213の判定では、表示順j=1で、S1211の処理によりp=jと設定されていることからT[1]=0となる。したがって、S1214でT[1]=1に設定され、表示順格納テーブルTは図14(b)に示す状態になる。
【0084】
その後、S1219でm=1に設定され、S1212の判定において、m=1、F[1]=1で条件を満たさなくなるため、S1205に戻る。そして、S1205においてj=2と設定され、S1206においてi=2と設定される。そして、同様にS1208の判定では、F[2]=3となるため、S1209と進み、S1209においてk=3と算出される。次に、S1213の判定では、T[2]=0であるため、S1214でT[2]=2に設定され、表示順格納テーブルTは図14(c)に示す状態になる。
【0085】
その後、S1216でp=3+2=5に設定され、S1219でm=1に設定される。そして、S1212の判定において、m=1、F[2]=3で条件を満たし、再びS1213に進む。そして、S1213の判定では、T[5]=0となるため、S1214においてT[5]=2に設定され、表示順格納テーブルTは図14(d)に示す状態になる。そして、同様の手順により、S1216でp=5+3=8に設定され、S1212では再び条件を満たすので、同様の手順によりS1214においてT[8]=2になり、表示順格納テーブルTは図14(e)に示す状態になる。
【0086】
その後、S1219でm=3に設定され、S1212の判定において、m=3、F[2]=3で条件を満たさなくなるため、S1205に戻る。そして、S1205においてj=3と設定され、S1206においてi=3と設定される。そして、S1208の判定では、F[3]=0となり、プレイモードが非表示で表示順が設定されないため、画像が表示されないことから、S1206に戻る。
【0087】
その後、S1206においてi=4と設定され、S1208の判定では、F[4]=1となるため、S1209と進み、S1209においてk=10と算出される。次に、S1211ではp=j=3と設定される。そして、S1213の判定では、T[3]=0であるため、S1214でT[3]=4に設定され、表示順格納テーブルTは図14(f)に示す状態になる。
【0088】
その後、S1219でm=1に設定され、S1212の判定において、m=1、F[4]=1で条件を満たさなくなるため、S1205に戻る。そして、S1205においてj=4と設定され、S1206においてi=5と設定される。そして、同様にS1208の判定では、F[5]=1となるため、S1209と進み、S1209においてk=10と算出される。次に、S1213の判定では、T[4]=0であるため、S1214でT[4]=5に設定され、表示順格納テーブルTは図14(g)に示す状態になる。
【0089】
その後、S1219でm=1に設定され、S1212の判定において、m=1、F[5]=1で条件を満たさなくなるため、S1205に戻る。そして、S1205においてj=5と設定され、S1206においてi=6と設定される。そして、同様にS1208の判定では、F[6]=1となるため、S1209と進み、S1209においてk=10と算出される。次に、S1213の判定では、T[5]=2であるため、S1215に進み、表示順のシフト処理が行われる。
【0090】
このとき、S1215の処理では、(p,i)=(5,6)であり、図17のS1701においてNum=i=6と設定され、S1702においてq=p+1=5+1=6と設定される。そして、S1703の判定では、T[6]=0となるため、S1708に進み、T[6]=6と設定されて、表示順のシフト処理を終了する。このとき、表示順格納テーブルTは図14(h)に示す状態になる。
【0091】
その後、S1219でm=1に設定され、S1212の判定において、m=1、F[6]=1で条件を満たさなくなるため、S1205に戻る。そして、S1205において、図16のS1603の判定でT[6]=0とはならないため、jがさらにカウントアップされてj=7と設定され、S1206においてi=7と設定される。そして、同様にS1208の判定では、F[7]=2となるため、S1209と進み、S1209においてk=5と算出される。次に、S1213の判定では、T[7]=0であるため、S1214でT[7]=7に設定され、表示順格納テーブルTは図14(i)に示す状態になる。
【0092】
その後、S1216において、p=7+5=12になり、S1217の判定では、D<pの条件を満たすため、S1218に進み、p=12−10=2と設定される。そして、S1219でm=1と設定され、S1212の判定において、m=1、F[7]=2で条件を満たすことから再びS1213に進む。次に、S1213の判定では、T[2]=2であるため、S1215に進み、表示順のシフト処理が行われる。
【0093】
このとき、S1215の処理では、(p,i)=(2,7)であり、図17のS1701においてNum=7と設定され、S1702においてq=p+1=2+1=3と設定される。そして、S1703の判定では、T[3]=4であるため、S1704に進み、Work=T[3]=4と設定される。次に、S1705において、T[3]=7(=Num)と設定され、S1706において、Num=Work=4と設定される。そして、S1707において、q=3+1=4と設定され、S1703に戻る。
【0094】
S1703の判定では、T[4]=5であるため、S1704に進み、Work=T[4]=5と設定される。次に、S1705において、T[4]=4(=Num)と設定され、S1706において、Num=Work=5と設定される。そして、S1707において、q=4+1=5と設定され、S1703に戻る。
【0095】
以下、同様にS1703の判定では、T[5]=2であるため、S1704に進み、Work=T[5]=2と設定される。次に、S1705において、T[5]=5(=Num)と設定され、S1706において、Num=Work=2と設定される。そして、S1707において、q=5+1=6と設定され、S1703に戻る。
【0096】
同様にS1703の判定では、T[6]=6であるため、S1704に進み、Work=T[6]=6と設定される。次に、S1705において、T[6]=2(=Num)と設定され、S1706において、Num=Work=6と設定される。そして、S1707において、q=6+1=7と設定され、S1703に戻る。
【0097】
同様にS1703の判定では、T[7]=7であるため、S1704に進み、Work=T[7]=7と設定される。次に、S1705において、T[7]=6(=Num)と設定され、S1706において、Num=Work=7と設定される。そして、S1707において、q=7+1=8と設定され、S1703に戻る。
【0098】
同様にS1703の判定では、T[8]=2であるため、S1704に進み、Work=T[8]=2と設定される。次に、S1705において、T[8]=7(=Num)と設定され、S1706において、Num=Work=2と設定される。そして、S1707において、q=8+1=9と設定され、S1703に戻る。
【0099】
次に、S1703の判定では、T[9]=0となるため、S1708において、T[9]=2と設定され、表示順のシフト処理を終了する。これにより、表示順格納テーブルTは図14(j)に示す状態になる。
【0100】
その後、S1219でm=2に設定され、S1212の判定において、m=2、F[7]=2で条件を満たさなくなるため、S1205に戻る。そして、S1205において、図16のS1603の判定では、T[1]〜T[9]まで0とはならないため、jがさらにカウントアップされてj=10と設定され、S1206においてi=8と設定される。そして、同様にS1208の判定では、F[8]=1となるため、S1209と進み、S1209においてk=10と算出される。次に、S1213の判定では、T[10]=0であるため、S1214においてT[10]=8と設定され、表示順格納テーブルTは図14(k)に示す状態になる。
【0101】
その後、S1219でm=1に設定され、S1212の判定において、m=1、F[8]=1で条件を満たさなくなるため、S1205に戻る。そして、S1205において、j=11と設定され、S1206においてi=9と設定されるが、S1207の判定では、N<iの条件を満たすため、表示順決定処理を終了する。
【0102】
以上のように本実施形態によれば、指定された画像の表示時間を長くしたり、表示頻度を多くしたり設定するようにしたので、所望の画像を効率良く選別することができる。
【0103】
なお、本実施形態では、利用者により画像の表示中にプレイリスト設定ボタン1002が押下されると、制御部101はプレイリストメニュー1001をディスプレイ110に表示するようにした。一方、スライドショーが表示されている状態で、利用者がポインティングデバイス109で表示中の画像をクリックすることによって、制御部101がプレイリストメニュー1001をディスプレイ110に表示するようにしてもよい。また、利用者が画像の表示中にポインティングデバイス109を動かすことによって、制御部101がディスプレイ110にプレイリストメニュー1001を表示するようにしてもよい。さらに、キーボード114から指示が入力され、制御部101がプレイリストメニュー1001をディスプレイ110に表示するようにしてもよい。なお、デジタルフォトフレームを用いる場合には、リモートコントローラを用いて操作できるようにしてもよい。
【0104】
また、プレイリストの設定手順をより簡単にするために、図7のS707でスライドショーを選択した後に、制御部101は図18(a)に示すようなプレイリスト設定画面1800をディスプレイ110に表示するようにしてもよい。あるいは、S703でスライドショー名を設定した後も同様である。この場合、図18(a)に示すプレイリスト設定画面1800で、利用者がスライドショーを表示する時に設定するプレイリスト(プレイリストモード及びプレイモード)を事前にリスト1801から選択できるようにする。そして、開始ボタン1802が押下されると、制御部101は、利用者が選択したプレイリスト(プレイリストモード及びプレイモード)を設定する。
【0105】
そして、利用者によりポインティングデバイス109のボタンがクリックされた場合に、制御部101は事前に選択したプレイリストを適用する。このように、利用者がプレイリストを指定した場合は、スライドショーを表示する前に、プレイリスト設定画面1800で事前に選択されたプレイリストに従ってスライドショーを表示することができる。
【0106】
また、図7のS707でスライドショーを選択した後あるいはS703でスライドショー名を設定した後に、制御部101は図18(b)に示すようなプレイリスト設定画面1840をディスプレイ110に表示するようにしてもよい。この場合、リスト1841からポジティブ設定とネガティブ設定とで1つずつ事前に選択することができる。そして、開始ボタン1843が押下されると、制御部101は利用者が選択したプレイリスト(プレイリストモード及びプレイモード)を設定する。
【0107】
そして、利用者によりポインティングデバイス109の右ボタンがクリックされた場合に、制御部101は事前に選択したポジティブ設定をプレイリストに適用する。一方、左ボタンがクリックされた場合には、事前に選択したネガティブ設定をプレイリストに適用する。このとき、キーボード114の上向きまたは右向きの矢印キーが押下された場合にポジティブ設定を適用し、下向きまたは左向き矢印キーが押下された場合にネガティブ設定を適用してもよい。このように、利用者がプレイリストを指定した場合は、スライドショーを表示する前に、プレイリスト設定画面1840で事前に選択されたプレイリストに従ってスライドショーを表示することができる。
【0108】
(第3の実施形態)
本実施形態では、スライドショーにおいて、グループに属する画像数によって同時に表示する枚数を変化させる例について説明する。なお、本実施形態に係る画像表示装置のハードウェア構成は図1と同様であるため、説明は省略する。
図19は、制御部101により実行される画像表示アプリケーションプログラムのモジュール構成の一例を示すブロック図である。
図19において、画像情報読出モジュール1901は、画像表示装置100が外部記憶装置104に記憶された画像ファイルに付帯する画像情報(撮影日時、撮影機器モデル名、撮影場所などの情報)を読み出すためのものである。
【0109】
画像分類モジュール1902は、画像表示装置100が複数の画像ファイルを特定の条件に従ってグループ分けするためのものである。画像分類モジュール1902は、撮影日時判断モジュール1911と、撮影場所判断モジュール1912とを備えている。撮影日時判断モジュール1911は、画像ファイルの撮影日時が所定の範囲内にあるかどうかを判断したり、画像ファイルの撮影日時と指定された日時とが所定より離れているかどうかを判断したりする。撮影場所判断モジュール1912は、画像ファイルの撮影場所が所定の範囲内にあるかどうかを判断したり、画像ファイルの撮影場所と指定された場所とが所定より離れているかどうかを判断したりする。
【0110】
例えば、画像情報読出モジュール1901により読み出された撮影日時情報に基づき、撮影日時判断モジュール1911により撮影日が同じ画像ファイルごとにグループ分けする。このとき、旅行、子供の運動会、飲み会など1つのイベントで撮影した関連度の高い画像ファイルの集合となることが多い。なお、利用者自身が関連度の高い画像ファイルをフォルダに分けて管理している場合は、画像分類モジュール1902によりフォルダ単位でグループ分けをしてもよい。
【0111】
画像計数モジュール1903は、蓄積された画像ファイルの総枚数を計数したり、各グループに分類された画像ファイルの枚数を計数したりするためのものである。表示枚数算出モジュール1904は、グループに属する画像ファイルの枚数と同時に表示する枚数との対応表を参照して、画面上に同時表示する画像ファイルの枚数を算出するためのものである。
【0112】
本実施形態では、グループに属する画像ファイルの枚数が多いほど多くの画像を同時に表示して、全体の表示時間を効果的に短縮できるような設定になっている。1つのイベントで大量に撮影された画像ファイルが含まれるようなグループの場合、多くの画像を同時に画面に表示しても、利用者はそのイベントに関係する画像群であることを認識しやすい。また、利用者が特定の画像を見落としたとしても、その画像ファイルが属するグループであることが認識できれば、例えば、画面に1枚ずつ表示するモードに変更して表示し直すことにより見落とした画像を見つけることができる。
【0113】
一方、街中を歩いている時に撮影したスナップ写真のような画像ファイルの場合は、個々の独立性が高く、撮影枚数も少ない場合が多いので、同時に表示する枚数を少なくしておかないと、利用者が特定の画像を認識することが難しくなる。また、前述した対応表は予め複数用意しておいて必要に応じ参照する対応表を切り替えてもよく、必要に応じて対応表を追加作成してもよい。
【0114】
表示画像選択モジュール1905は、画面に表示する画像を、表示枚数算出モジュール1904により算出された枚数分だけグループから選択するためのものである。表示制御モジュール1906は、表示画像選択モジュール1905により選択された画像を画面上に配置して所定の時間だけ表示するためのものである。配置方法の一例としては、画像同士が重ならないように縮小し、9枚の場合であれば横方向に3枚並べて縦方向に3回繰り返す。
【0115】
図20は、画像表示装置100が複数の画像をスライドショー表示する処理手順の一例を示すフローチャートである。なお、図20に示す各処理は、制御部101が図19に示した各モジュールに従うことにより実行させる。
図20において、まず、画像情報読出モジュール1901により画像ファイルの撮影日時の情報を外部記憶装置104から読み出す。そして、画像分類モジュール1902により撮影日が同じ画像ファイルごとにグループ分けする(S2001)。このとき、撮影日時順に画像ファイルを並べて、次の画像ファイルの撮影日時との差が所定値より大きくなったところでグループの境界とするように分類してもよい。
【0116】
次に、利用者によるポインティングデバイス109またはキーボード114の操作に応じて、最初に表示対象とするグループを決定する(S2002)。具体的には、利用者が指定した画像ファイルを含むグループを表示対象とする場合や、利用者が指定した撮影日を持つ画像ファイルを含むグループを表示対象とする場合などがある。
【0117】
次に、画像計数モジュール1903によりグループに属する画像ファイルの枚数を計数し、表示枚数算出モジュール1904により画像ファイルの枚数に基づいて画面上に同時に表示する画像の枚数を算出する(S2003)。そして、表示画像選択モジュール1905により画面上に同時に表示するための画像を選択する(S2004)。このとき、グループ内でまだ表示されていない画像から、S2003で算出された枚数分を選択する。
【0118】
次に、表示制御モジュール1906により、S2004で選択された画像ファイルに係る画像を画面上に配置して所定の時間だけディスプレイ110に表示する(S2005)。そして、グループ内にまだ表示されていない画像ファイルが存在するかどうかを判定する(S2006)。この判定の結果、まだ表示されていない画像ファイルが存在する場合はS2004に戻る。
【0119】
一方、S2006の判定の結果、まだ表示されていない画像ファイルが存在しない場合は、画像分類モジュール1902により表示対象を次のグループに設定する(S2007)。このとき、表示した前のグループに属する画像ファイルについては表示したという情報を一旦クリアする。そして、S2003に戻り、画像を表示する処理を繰り返し、利用者の所定の操作により終了させられるまでループする。
【0120】
図21は、図20のS2003の処理で表示枚数算出モジュール1904により参照される同時に表示する枚数の対応表の一例を示す図である。前述した通り、グループに属する画像ファイルの枚数が多いほど多くの画像を同時に表示することにより、全体の表示時間を効果的に短縮する。
【0121】
図21(a)に示す対応表は、グループに属する画像ファイルが2〜24枚である場合は、画面に同時表示する枚数は4枚であり、同様に、25〜49枚である場合は9枚、50枚以上である場合は16枚とすることを示している。例えば、20枚の画像ファイルを含むグループの場合は、撮影日時の順に4枚ずつ画像ファイルが選択され、画面が5回切り替わることにより全ての画像が表示されることになる。
【0122】
蓄積されている画像ファイルの総枚数が少ない場合は、表示時間の短縮効果を抑え、利用者が画像ファイルを認識しやすいことに重点を置いた対応表を用いてもよい。例えば、図21(b)に示す対応表のように、グループに属する画像ファイルが24枚以下の場合は1枚ずつ表示し、25枚以上の場合は9枚同時に表示するようにしてもよい。また、逆に総枚数が多い場合は、図21(c)に示すように、表示時間の短縮効果を上げるために同時に表示する枚数を更に多く設定した対応表を用いてもよい。
【0123】
また、画像を画面に効率良く配置できるように、ディスプレイ110の画面の縦横比に応じた対応表を用いてもよい。図21(a)及び図21(b)に示す対応表は、主に縦横比が3:4の画像を縦横比が3:4の画面に表示することを想定しているが、例えば図21(c)に示すように縦横比が9:16のワイド画面に表示する場合を想定した対応表を用いてもよい。
【0124】
次に、図22及び図23を参照しながら、図20に示した処理の具体例について説明する。以下の説明では、同時に表示する枚数の対応表としては図21(a)に示す対応表が設定されているものとする。
【0125】
図22は、図20のS2001の処理により3512枚の画像ファイルを撮影日によってグループ分けした結果の一例を示す図である。画像ファイルの番号「1」〜「3512」は撮影日時の順になっているものとする。S2002で利用者により撮影日として「2009/5/2」が指定されると、制御部101は「グループ252」を表示対象に設定する。そして、S2003では、「グループ252」に属する画像を7枚と計数するので、対応表を参照して画面上に同時に表示する画像の枚数を4枚と算出する。
【0126】
次に、S2004では、番号「3011」〜「3014」の4枚の画像ファイルを、同時に表示するための画像ファイルとして選択する。そして、S2005では、番号「3011」〜「3014」の画像を画面上に配置する。なお、図23(a)には、番号「3011」〜「3014」の画像が配置された画面2301の一例を示している。
【0127】
次に、S2006の判定では、「グループ252」にはまだ表示していない画像ファイルが存在すると判定し、S2004に戻る。そして、同様の手順により残りの番号「3015」〜「3017」の画像を画面上に配置する。図23(b)には、番号「3015」〜「3017」の画像が配置された画面2302の一例を示している。
【0128】
次に、S2006の判定では、「グループ252」には表示していない画像ファイルが存在しないと判定し、S2007で表示対象のグループを「グループ253」に設定する。そして、「グループ252」に属する番号「3011」〜「3017」の画像ファイルに対して表示されたという情報をクリアする。
【0129】
次に、S2003に戻り、「グループ253」に属する画像を31枚と計数するので、対応表を参照して画面上に同時に表示する画像の枚数を9枚と算出する。そして、同様の手順により、番号「3018」〜「3026」の画像を画面上に配置する。図23(c)には、番号「3018」〜「3026」の画像が配置された画面2303の一例を示している。以上のように、画面2301、2302、2303と表示が順次切り替わっていく。
【0130】
また、所望する画像ファイルが表示中のグループに属している可能性が高いと利用者が判断した時に、同時に表示する枚数を少なくすることにより利用者が画像ファイルを特定しやすくすることもできる。
【0131】
図24(a)には、「グループ254」の画像が表示されている時に、利用者によりポインティングデバイス109で所定の操作が行われたことにより、ポップアップメニュー2404が表示された状態の画面2401を示している。この状態で、利用者によりポインティングデバイス109が操作され、ポップアップメニュー2404から[1枚表示]が選択されると、表示枚数算出モジュール1904により表示枚数を常に1とする対応表を参照するように切り替わる。そして、同時に表示する枚数が1枚に変更され、今まで表示されていた番号「3066」〜「3081」の画像ファイルに対して表示されたという情報をクリアする。これにより、S304以降の処理では、図24(b)に示す画面2402、図24(c)に示す画面2403と順次切り替わっていく。
【0132】
また、表示されたという情報をクリアする際には、現在表示の対象となっているグループに属する画像ファイル全てに対して行ってもよい。図24(a)に示す画面2401の例では、番号「3049」〜「3081」の画像ファイルがクリアの対象ということになり、この場合は、番号「3049」の画像、番号「3050」の画像という順序で表示されることになる。
【0133】
図24に示す例では、1枚ずつの表示に切り替えっているが、参照する対応表を変更して表示枚数を単純に少なくするようにしてもよい。図21(a)に示す対応表のように、グループに属する画像ファイルが2〜24枚であれば1枚、25〜49枚であれば4枚、50枚以上であれば9枚というように1段階ずつ表示枚数を少なくするようにしてもよい。
【0134】
また、利用者によりポインティングデバイス109が操作され、ポップアップメニュー2404から[通常表示]が選択されると、表示枚数算出モジュール1904により通常の対応表を参照するように切り替わるようにしてもよい。切り替えるタイミングとしては、表示対象が次のグループに変わる時に通常の対応表を参照するように切り替えてもよい。
【0135】
また、利用者が画像を認識しやすくするために、グループに属する画像ファイルの枚数が所定値より多い場合には、撮影日時が所定時間より離れた画像ファイルを含むという条件で、S2003の処理を実行する前にグループを再分割してもよい。例えば、図22に示すように、「グループ254」には、102枚の画像ファイルが属しているが、番号「3049」〜「3143」の画像ファイルについては撮影日時の差が30分以内に収まっているものとする。そして、番号「3143」の画像ファイルと番号「3144」の画像ファイルとで撮影日時が2時間以上離れているものとする。このような場合は、番号「3049」〜「3143」の画像ファイルと番号「3144」〜「3150」の画像ファイルとで別のグループとして分割してもよい。
【0136】
また、番号「3049」〜「3143」の画像ファイルは撮影場所がほぼ同じであり、番号「3144」〜「3150」の画像ファイルの撮影場所が大きく離れている場合は別のグループとして分割してもよい。このような分割により、番号「3049」〜「3143」の画像ファイルでは、同時に表示する枚数は16枚と変わらないが、番号「3144」〜「3150」の画像ファイルでは、同時に表示する枚数は4枚に減る。これにより、例えば、同じ撮影日にイベント関連で撮影した大量の写真とイベントと関係なく街中で撮影した少量の独立性が高いスナップ写真が混在しているような場合でも、適切にグループ分けすることができる。このようにグループが分割されることによりスナップ写真については同時に表示する枚数を少なくすることができる場合がある。
【0137】
以上説明したように本実施形態によれば、大量の画像ファイルを表示する時間を短縮するとともに、さらに、利用者が特定の画像ファイルを見落としにくくし、所望の画像を効率良く見つけることができる。
【0138】
(その他の実施形態)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0139】
101 制御部
【特許請求の範囲】
【請求項1】
スライドショー形式で複数の画像を表示部に表示する画像表示装置であって、
前記スライドショー形式で表示される画像に対して指定する指定手段と、
前記指定手段によって指定された画像を前記スライドショー形式で表示される領域とは異なる領域に連続的に表示する表示制御手段とを備え、
前記表示制御手段は、前記連続的に表示される画像と関連性のある画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする画像表示装置。
【請求項2】
前記表示制御手段は、前記連続的に表示される画像のサイズを変化させることを特徴とする請求項1に記載の画像表示装置。
【請求項3】
前記表示制御手段は、前記連続的に表示される画像が撮影された時間との差が所定の範囲内である画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする請求項1又は2に記載の画像表示装置。
【請求項4】
前記表示制御手段は、前記連続的に表示される画像との平均輝度値の差が所定の範囲内である画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする請求項1又は2に記載の画像表示装置。
【請求項5】
前記表示制御手段は、前記連続的に表示される画像に含まれる人物が同じである画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする請求項1又は2に記載の画像表示装置。
【請求項6】
スライドショー形式で複数の画像を繰り返して表示部に表示する画像表示装置であって、
前記スライドショー形式で表示される画像に対して指定する指定手段と、
前記スライドショー形式において、前記指定手段によって指定された画像の表示時間、表示頻度または表示サイズを変化させて表示させる表示制御手段とを備えることを特徴とする画像表示装置。
【請求項7】
スライドショー形式で複数の画像を表示部に表示する画像表示装置であって、
前記複数の画像それぞれの画像情報に基づいて、前記複数の画像をグループに分類する分類手段と、
前記分類手段によって分類されたグループごとに、スライドショー形式でグループに属する画像を表示する表示制御手段とを備え、
前記表示制御手段は、前記分類手段によって分類されたグループに属する画像の数に応じて、前記スライドショー形式で同時に表示する画像の数を変化させることを特徴とする画像表示装置。
【請求項8】
スライドショー形式で複数の画像を表示部に表示する画像表示方法であって、
前記スライドショー形式で表示される画像に対して指定する指定工程と、
前記指定工程において指定された画像を前記スライドショー形式で表示される領域とは異なる領域に連続的に表示する表示制御工程とを備え、
前記表示制御工程においては、前記連続的に表示される画像と関連性のある画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする画像表示方法。
【請求項9】
スライドショー形式で複数の画像を繰り返して表示部に表示する画像表示方法であって、
前記スライドショー形式で表示される画像に対して指定する指定工程と、
前記スライドショー形式において、前記指定工程において指定された画像の表示時間、表示頻度または表示サイズを変化させて表示させる表示制御工程とを備えることを特徴とする画像表示方法。
【請求項10】
スライドショー形式で複数の画像を表示部に表示する画像表示方法であって、
前記複数の画像それぞれの画像情報に基づいて、前記複数の画像をグループに分類する分類工程と、
前記分類工程において分類されたグループごとに、スライドショー形式でグループに属する画像を表示する表示制御工程とを備え、
前記表示制御工程においては、前記分類工程において分類されたグループに属する画像の数に応じて、前記スライドショー形式で同時に表示する画像の数を変化させることを特徴とする画像表示方法。
【請求項11】
スライドショー形式で複数の画像を表示部に表示する画像表示装置を制御するためのプログラムであって、
前記スライドショー形式で表示される画像に対して指定する指定工程と、
前記指定工程において指定された画像を前記スライドショー形式で表示される領域とは異なる領域に連続的に表示する表示制御工程とをコンピュータに実行させ、
前記表示制御工程においては、前記連続的に表示される画像と関連性のある画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とするプログラム。
【請求項12】
スライドショー形式で複数の画像を繰り返して表示部に表示する画像表示装置を制御するためのプログラムであって、
前記スライドショー形式で表示される画像に対して指定する指定工程と、
前記スライドショー形式において、前記指定工程において指定された画像の表示時間、表示頻度または表示サイズを変化させて表示させる表示制御工程とをコンピュータに実行させることを特徴とするプログラム。
【請求項13】
スライドショー形式で複数の画像を表示部に表示する画像表示装置を制御するためのプログラムであって、
前記複数の画像それぞれの画像情報に基づいて、前記複数の画像をグループに分類する分類工程と、
前記分類工程において分類されたグループごとに、スライドショー形式でグループに属する画像を表示する表示制御工程とをコンピュータに実行させ、
前記表示制御工程においては、前記分類工程において分類されたグループに属する画像の数に応じて、前記スライドショー形式で同時に表示する画像の数を変化させることを特徴とするプログラム。
【請求項1】
スライドショー形式で複数の画像を表示部に表示する画像表示装置であって、
前記スライドショー形式で表示される画像に対して指定する指定手段と、
前記指定手段によって指定された画像を前記スライドショー形式で表示される領域とは異なる領域に連続的に表示する表示制御手段とを備え、
前記表示制御手段は、前記連続的に表示される画像と関連性のある画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする画像表示装置。
【請求項2】
前記表示制御手段は、前記連続的に表示される画像のサイズを変化させることを特徴とする請求項1に記載の画像表示装置。
【請求項3】
前記表示制御手段は、前記連続的に表示される画像が撮影された時間との差が所定の範囲内である画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする請求項1又は2に記載の画像表示装置。
【請求項4】
前記表示制御手段は、前記連続的に表示される画像との平均輝度値の差が所定の範囲内である画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする請求項1又は2に記載の画像表示装置。
【請求項5】
前記表示制御手段は、前記連続的に表示される画像に含まれる人物が同じである画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする請求項1又は2に記載の画像表示装置。
【請求項6】
スライドショー形式で複数の画像を繰り返して表示部に表示する画像表示装置であって、
前記スライドショー形式で表示される画像に対して指定する指定手段と、
前記スライドショー形式において、前記指定手段によって指定された画像の表示時間、表示頻度または表示サイズを変化させて表示させる表示制御手段とを備えることを特徴とする画像表示装置。
【請求項7】
スライドショー形式で複数の画像を表示部に表示する画像表示装置であって、
前記複数の画像それぞれの画像情報に基づいて、前記複数の画像をグループに分類する分類手段と、
前記分類手段によって分類されたグループごとに、スライドショー形式でグループに属する画像を表示する表示制御手段とを備え、
前記表示制御手段は、前記分類手段によって分類されたグループに属する画像の数に応じて、前記スライドショー形式で同時に表示する画像の数を変化させることを特徴とする画像表示装置。
【請求項8】
スライドショー形式で複数の画像を表示部に表示する画像表示方法であって、
前記スライドショー形式で表示される画像に対して指定する指定工程と、
前記指定工程において指定された画像を前記スライドショー形式で表示される領域とは異なる領域に連続的に表示する表示制御工程とを備え、
前記表示制御工程においては、前記連続的に表示される画像と関連性のある画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とする画像表示方法。
【請求項9】
スライドショー形式で複数の画像を繰り返して表示部に表示する画像表示方法であって、
前記スライドショー形式で表示される画像に対して指定する指定工程と、
前記スライドショー形式において、前記指定工程において指定された画像の表示時間、表示頻度または表示サイズを変化させて表示させる表示制御工程とを備えることを特徴とする画像表示方法。
【請求項10】
スライドショー形式で複数の画像を表示部に表示する画像表示方法であって、
前記複数の画像それぞれの画像情報に基づいて、前記複数の画像をグループに分類する分類工程と、
前記分類工程において分類されたグループごとに、スライドショー形式でグループに属する画像を表示する表示制御工程とを備え、
前記表示制御工程においては、前記分類工程において分類されたグループに属する画像の数に応じて、前記スライドショー形式で同時に表示する画像の数を変化させることを特徴とする画像表示方法。
【請求項11】
スライドショー形式で複数の画像を表示部に表示する画像表示装置を制御するためのプログラムであって、
前記スライドショー形式で表示される画像に対して指定する指定工程と、
前記指定工程において指定された画像を前記スライドショー形式で表示される領域とは異なる領域に連続的に表示する表示制御工程とをコンピュータに実行させ、
前記表示制御工程においては、前記連続的に表示される画像と関連性のある画像が前記スライドショー形式で表示された場合に、前記連続的に表示される画像の表示態様を変化させることを特徴とするプログラム。
【請求項12】
スライドショー形式で複数の画像を繰り返して表示部に表示する画像表示装置を制御するためのプログラムであって、
前記スライドショー形式で表示される画像に対して指定する指定工程と、
前記スライドショー形式において、前記指定工程において指定された画像の表示時間、表示頻度または表示サイズを変化させて表示させる表示制御工程とをコンピュータに実行させることを特徴とするプログラム。
【請求項13】
スライドショー形式で複数の画像を表示部に表示する画像表示装置を制御するためのプログラムであって、
前記複数の画像それぞれの画像情報に基づいて、前記複数の画像をグループに分類する分類工程と、
前記分類工程において分類されたグループごとに、スライドショー形式でグループに属する画像を表示する表示制御工程とをコンピュータに実行させ、
前記表示制御工程においては、前記分類工程において分類されたグループに属する画像の数に応じて、前記スライドショー形式で同時に表示する画像の数を変化させることを特徴とするプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【公開番号】特開2012−199794(P2012−199794A)
【公開日】平成24年10月18日(2012.10.18)
【国際特許分類】
【出願番号】特願2011−62791(P2011−62791)
【出願日】平成23年3月22日(2011.3.22)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成24年10月18日(2012.10.18)
【国際特許分類】
【出願日】平成23年3月22日(2011.3.22)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]