以下、図面を参照して、本発明を実施するための形態について説明する。図1は、本実施の形態の操作制御装置を搭載したデジタルカメラのシステム構成例を示すブロック図である。本実施の形態のデジタルカメラ1は、デジタルカメラ1を構成する各部に対する指示やデータ転送等を行い、デジタルカメラ1の動作を統括的に制御するためのCPUからなる制御部11を備える。また、デジタルカメラ1は、プログラムデータ記憶部12、ボタン操作部13、操作部を構成するタッチパネル14、撮像部15、SDRAM16、表示画像制御部17、画像処理部19、圧縮伸長部20、記録・再生部21の各部を備える。これら各部は、制御部11に対してバスライン25によって接続されている。
プログラムデータ記憶部12は、例えばフラッシュメモリ等の電気的に書換えが可能な不揮発性メモリである。このプログラムデータ記憶部12は、CPU用のプログラムや、このプログラムの実行中に使用されるデータを予め格納している。CPU用のプログラムは、デジタルカメラ1を動作させ、このデジタルカメラ1が備える種々の機能を実現するためのプログラムであり、例えば、操作制御用プログラムがある。また、このプログラムの実行中に使用されるデータは、例えば、後述するGUI(グラフィカル・ユーザ・インタフェース)画面に表示させるアイコン等を含むGUI用画像データである。
ボタン操作部13は、カメラ本体の上面に配設されて撮影タイミングを指示するためのレリーズボタン、電源スイッチ、T/W(テレ/ワイド)ボタン等からなる。
撮像部15は、カメラ部と撮像処理部とからなる。カメラ部は、デジタルカメラ1が被写体像を撮像するためのものであり、撮影レンズ、撮像素子、絞り、シャッタ、AF機構、AF駆動回路、ズーム機構、ズーム駆動機構等からなる。ここで、撮像素子は、例えばCCDやCMOSセンサ等の2次元固体撮像素子からなり、撮影レンズを含む撮影光学系を通して入射する被写体像を光電変換し、アナログ電気信号として出力する。撮像処理部は、撮像素子駆動回路を含む他、撮像素子から出力されるアナログ電気信号に対してAGC、CDS等のアナログ信号処理を施した後、A/Dコンバータでデジタル電気信号に変換して出力させるためのものである。
SDRAM16は、一時記憶メモリやワーキングエリアとして利用されるメモリであり、撮像部15から出力されるデジタル電気信号や、画像処理部19による処理中の画像データ等を一時的に記憶する。また、SDRAM16は、表示画像作成時にも、処理中の画像データ等を一時的に記憶するために用いられる。
表示画像制御部17は、エンコーダやD/Aコンバータ等を有して、表示部18に対する各種情報の表示を行わせるためのドライバである。ここで、表示部18は、図2等に示すように、カメラ本体の背面の大半の領域を占めるものであり、LCDやELD等の薄型表示装置で実現されている。この表示部18は、撮影画像やライブビュー画像の他に、GUI画面を含め、各種設定情報等を表示するためのものである。特に、本実施の形態においては、この表示部18は、撮影画像に基づくサムネイル画像を表示する。また、表示画像制御部17は、表示部18に表示するライブビュー画像や再生画像を作成するとともに、GUI画面用のGUI画像を単独であるいはライブビュー画像等に重畳させて表示部18に表示させるためのものである。
画像処理部19は、撮像部15から出力されるデジタル電気信号に対して画素補間処理、色補正処理、ガンマ処理等の各種の画像処理を施すとともに、記録用、表示用等に適した画像データに変換する処理を行う。すなわち、画像処理部19は、記録時(撮影時)には、記録画像に対しては記録用の画像処理を施し、表示用のライブビュー画像に対しては表示用の簡易な画像処理を施す。
圧縮伸長部20は、撮影画像の画像データを画像記憶部22に記録する際、あるいは画像記憶部22に記録されている画像データを表示する際等において、周知のJPEG方式等に基づく画像データの圧縮処理や伸長処理を行う。
記録・再生部21は、画像記憶部22に対する画像データの書き込みや画像記憶部22からの画像データの読出しを行うためのものであり、画像記憶部22の種類に応じたものが用いられる。ここで、画像記憶部22は、例えばxD−ピクチャーカード(登録商標)やコンパクトフラッシュ(登録商標)カード等のカメラ本体に着脱自在な記録媒体や、HDDである。
ここで、本実施の形態の制御部11は、操作制御用プログラムにより実行される機能として、GUI制御部11aと画像管理部11bと操作検出部11cとの各機能部を備える。操作検出部11cは、デジタルカメラ1の動作条件の設定等のために表示部18に表示されるGUI画面に対するユーザの指示や、ボタン操作部13によるユーザ操作を検出するための機能部である。また、本実施の形態のデジタルカメラ1は、GUI画面が表示される表示部18に重ねて配設されたタッチパネル14を操作部として備えている。このタッチパネル14は、表示部18の画面に対する軌跡の入力を含め、サムネイル画像を表示部18へ表示することに関する指示が入力される。そして、操作検出部11cは、このタッチパネル14に対するユーザの操作を検出することで、GUI画面に対するユーザ指示の検出動作を実行する。なお、タッチパネル14は、ユーザの指操作によるマルチタッチやジェスチャ入力可能なタイプのものが用いられているが、タッチパッド方式やペン入力方式等のものであってもよい。
また、GUI制御部11aは、表示部18のGUI画面に対するユーザの操作指示に応じて画面の制御、特にサムネイル画像の表示制御を行うとともに、このGUI画面に関する後述のような各種制御処理を実行するための機能部である。すなわち、GUI制御部11aは、表示部18の画面の位置に対応してタッチパネル14から入力されるユーザ操作に伴う軌跡に応じて、サムネイル画像が順番に配列されるサムネイル列を生成し、生成されたサムネイル列を表示させる表示制御を行う。
画像管理部11bは、ユーザの操作指示によりサムネイル画像に関するグループを管理したり、選択エリアに選択された画像の管理などを行うための機能部である。画像管理部11bは、グループ管理に関しては、生成された複数のサムネイル列を構成する各々のサムネイル画像について、サムネイル列をグループ単位としてグループに分けて管理する。また、画像管理部11bは、画像記憶部22に記録された一連の画像を所定の番号、例えば撮影日時の順番で管理する。
つぎに、デジタルカメラ1の動作の一例として、再生モード中のサムネイルモードにおけるGUI制御部11a等によるGUI画面等の操作・制御の概要を説明する。図2は、サムネイルモードにおけるGUI画面の基本的な操作例を模式的に示す説明図である。まず、GUI制御部11aは、サムネイルモードが選択されると、サムネイルモードのGUI画面である検索画面30の初期画面を表示部18に表示させる。図2(a)は、サムネイルモードの検索画面30の初期画面例を示す。この初期画面は、スタックエリア31と選択エリア32とサムネイルエリア33とからなる。
スタックエリア31は、表示部18の例えば左側端部付近を占める領域である。このスタックエリア31は、画像記憶部22に記録された一連の画像の途中からサムネイル画像の表示を開始させる場合に、その表示の先頭となる先頭サムネイル画像を設定するための情報である先頭情報を表示させる先頭情報設定エリアとして機能する。GUI制御部11aは、このスタックエリア31には、第1スタック31aのアイコンと第2スタック(図2(b)以降参照)31bのアイコンと送りアイコン31cと戻しアイコン31dとを表示させる。
第1スタック31aや第2スタック31bのアイコンは、画像記憶部22に記録された一連の画像をサムネイル画像の大きさでトランプ状の塊として2箇所に分けて積み重ねた状態で最上位の画像のみ確認できる状態で表示するものである。ここで、本実施の形態では、画像管理部11bは、画像記憶部22に記録された一連の画像を例えば撮影日時の古いものから時系列順に画像番号が大きくなる順番で管理する。GUI制御部11aは、これに対応して、第1スタック31aには、先頭サムネイル画像の番号及びこの番号以前(この番号よりも小さい)の番号からなる画像の列を重ねて表示させる。また、GUI制御部11aは、第2スタック31bには、先頭サムネイル画像の番号以降(先頭サムネイル画像の番号よりも大きい)の番号からなる画像の列を重ねて表示させる。図2(a)に示す初期画面では、スタックエリア31に第1スタック31aのみを表示し、先頭情報となる先頭サムネイル画像の番号として最新(撮影日時が最も新しい)の画像の番号、例えば“206”のサムネイル画像を表示する。送りアイコン31cは、第1スタック31a側の画像を1枚ずつ第2スタック31b側へ送るための操作アイコンである。戻しアイコン31dは、第2スタック31b側の画像を1枚ずつ第1スタック31a側へ戻すための操作アイコンである。
また、サムネイルエリア33は、スタックエリア31の右側に隣接して表示部18の大半を占める領域である。このサムネイルエリア33は、第1スタック31aの位置を起点としてこのサムネイルエリア33に対してドラッグ操作があった場合に、このドラッグ操作の軌跡に応じて第1スタック31aの最上位に表示されている先頭サムネイル画像を先頭としてGUI制御部11aにより生成されるサムネイル列を表示させるためのものである。すなわち、サムネイルエリア33対応のタッチパネル14部分は、ユーザが所望するサムネイル列の配列形状、長さをドラッグ操作により指示するための軌跡の入力操作領域として機能する。また、サムネイルエリア33対応の表示部18部分は、入力操作により指示された配列形状、長さのサムネイル列を表示するための表示領域として機能する。また、GUI制御部11aは、サムネイルエリア33中の右端には、サムネイル列全体の中で、現在画面に表示されているサムネイル列の位置の概略を示すスクロールバー33aを表示させる。
さらに、選択エリア32は、スタックエリア31中の第1スタック31aと第2スタック31bとの中間を占めるように設けられた領域で、例えば選択処理の一例として印刷用アイコン32aが表示される。この選択エリア32は、サムネイルエリア33中に表示されたサムネイル列中から所望のサムネイル画像を選択してドラッグ操作によりこの選択エリア32中へ移動させることで、印刷すべき画像の選択に供される。
ついで、図2(a)に示したような初期画面において、ユーザは、送りアイコン31cに指でタッチ操作することで、第1スタック31aから第2スタック31bへサムネイル画像を1枚ずつ順に移動させる。この操作に伴い、第1スタック31aの最上位に表示される先頭情報は順次変更される。この際、GUI制御部11aは、図2(b)に示すように、矢印で示すサムネイルの進行方向に従い第1スタック31a・第2スタック31b間で複数枚のサムネイル画像をアニメーション的に順次移動表示させる。なお、ユーザが、戻しアイコン31dに指でタッチ操作した場合には、第2スタック31bから第1スタック31aへサムネイル画像が1枚ずつ順に戻される。
図2(c)は、ユーザが、送りアイコン31c(または、戻しアイコン31d)から指を離すことにより、スタック間移動処理が終了した時点の様子を示している。図示例では、例えば番号“206”から最後尾の番号“152”までのサムネイル画像が第2スタック31bへ送られ、第1スタック31aにおいて番号“151”のサムネイル画像が先頭サムネイル画像として設定されたことを示している。すなわち、第1,第2スタック31a,31bは、それぞれ画像記憶部22に記録された一連の画像の一部分から構成される2つの部分画像群の塊をアイコン表示するものである。よって、第1スタック31aは、例えば番号“151”〜“1”の未表示の部分画像群用、第2スタック31bは、番号“206”〜“152”の確認済みの部分画像群用として機能するといえる。これにより、ユーザは、画像記憶部22に記録された一連の画像の先頭(例えば番号“206”の画像)からに限られることなく、任意の番号の画像位置(例えば番号“151”の画像)からサムネイル列の生成・表示を行わせることができる。
図2(d)は、ユーザが、第1スタック31aの先頭サムネイル画像の位置を起点としてサムネイルエリア33に対してドラッグ操作を行うことで、サムネイル列34の生成・表示が開始された様子を示している。すなわち、GUI制御部11aは、表示部18のサムネイルエリア33の位置に対応してタッチパネル14から入力されるユーザ操作に伴う指の軌跡35に応じて、複数のサムネイル画像を、例えば番号“151”で示す先頭サムネイル画像を先頭として順番に配列させたサムネイル列34を生成し、生成したサムネイル列34をサムネイルエリア33に表示させる。
そして、図2(e)に示すように、ユーザが、サムネイルエリア33から指を離してドラッグ操作を終了することによりユーザ操作に伴う指の軌跡35に応じて生成・表示されるサムネイル列34が確定する。すなわち、サムネイル列34の配列形状およびサムネイル列34を構成するサムネイル画像の枚数が確定する。図2(e)に示す例であれば、サムネイル列34は、例えば番号“151”で示す先頭サムネイル画像から例えば番号“141”で示す最後のサムネイル画像までの11枚のサムネイル画像が指示された軌跡35の形状、長さに応じたフリーラインによる曲線配列の状態で表示される。また、第1スタック31aの最上位は、サムネイルエリア33に表示されているサムネイル列34の最後の画像の次に続く番号、例えば番号“140”の画像が、次以降のサムネイル列生成用の先頭サムネイル画像に変更される。これに対応して、第1スタック31aは、例えば番号“140”〜“1”からなる新たな未表示の部分画像群用となる。このように本実施の形態によれば、基本的に、ユーザの指操作による任意形状、長さの一筆書き状の軌跡35に応じたフリーライン形態のサムネイル列34を生成・表示させることができる。なお、スクロールバー33aは、画面に表示されているサムネイル列が全てのサムネイル列なので、それを示すように、バーの上下全体にマークが表示される。
なお、生成・表示されるサムネイル列34は、隣り合う画像同士が例えば少しずつ重なるように配列ピッチが予め設定されているが、重なり量を増減させることで、サムネイル列34を構成するサムネイル画像数を増減させるようにしてもよい。また、サムネイル列34は、画像同士の重なりをなくした配列としてもよい。
また、図3は、一つのサムネイル列を、画面サイズを超えて連続作成する場合の操作例を模式的に示す説明図である。サムネイルエリア33の大きさには制約があり、サムネイルエリア33内で形成し得るサムネイル列の長さも自ずと制約を受ける。ここで、本実施の形態は、一つのサムネイル列を、サムネイルエリア33の画面サイズを超えて連続作成する場合にも対応可能としている。
すなわち、図3に示すように、サムネイル列34を生成するためのドラッグ操作による指の位置がサムネイルエリア33の画面最下部に達した場合には、ユーザにこの最下部位置で画面にタッチしたまま指を左右に動かす操作を行わせる(一筆書き操作の続行)。この操作により、GUI制御部11aは、一つのサムネイル列の生成をさらに続行する意思表示とみなし、背景画面を自動的にスクロールアップさせることで、一つのグループをなすサムネイル列34をさらに連続して作成する。図3において、点線で示す矩形領域は、サムネイルエリア33の背景画面がアニメーション的にスクロールされていく様子を模式的に示している。
ここで、画面最下部での左右操作の指の位置は、図3中に矢印で対応関係を示すようにサムネイル列34における先頭サムネイル画像の左右位置を継続して決めるものとなる。なお、画面最下部での左右操作に伴い背景画面が自動的にスクロールアップされるため、サムネイル列34の先頭画像側は順次見えなくなる。したがって、画面最下部での左右操作の振り幅に応じてサムネイル列34の先頭画像側の振り幅も大小変化することとなる。また、GUI制御部11aは、サムネイルエリア33上では、既に生成された図2(e)に示したような軌跡35に応じた配列のまま後続のサムネイル画像を第1スタック31aから順次繰り出させてサムネイル列34のアニメーション的な表示を継続させる。そして、ユーザが、画面最下部位置でサムネイルエリア33から指を離すことにより一つのグループをなすサムネイル列34が確定する。
また、GUI制御部11aは、サムネイルエリア33に対してユーザの指操作により入力されるドラッグ軌跡の速度に応じて、サムネイル列34におけるサムネイル画像同士の表示間隔を広くしたり狭くしたり制御する。
ここで、本実施の形態では、例えば第1スタック31aの位置からサムネイル画像がサムネイルエリア33に送出された直後の、ドラッグ軌跡の速度(すなわち、指の移動速度)に応じて、生成・表示されるサムネイル列34におけるサムネイル画像同士の表示間隔が設定されるものとする。つまり、ドラッグ開始直後のサムネイル画像同士の表示間隔は、操作開始直後のドラッグ軌跡の速度によって決定され、それ以降は、ドラッグ軌跡の速度が所定値以上に変化した時点の速度によって決定される。
図4は、ドラッグ軌跡の速度に応じた表示間隔による表示制御の具体例を示す説明図である。図4(a)は、ドラッグ軌跡35の一例を示す。図中、a→b→…→fで示すようなドラッグ軌跡35上の各点のドラッグ軌跡の速度で、サムネイル画像同士の表示間隔が設定される。ここでは、先頭サムネイル画像の番号を例えば“50”とし、a→b間では番号“50”〜“46”の画像、b→e間では番号“46”〜“40”の画像、e→f間では番号“40”〜“35”の画像が概ね送出されたものとしている。そして、a→b間では遅い速度、b→e間では速い速度、e→f間では遅い速度でドラッグ操作が行われたものとする。
すると、GUI制御部11aは、図4(b)に示すように、番号“50”〜“46”のサムネイル画像同士の表示間隔は広い間隔、b→e間では番号“46”〜“40”のサムネイル画像同士の表示間隔は狭い間隔、e→f間では番号“40”〜“35”のサムネイル画像同士の表示間隔は広い間隔となるように表示間隔を異ならせて表示させる。図4(b)は、図4(a)で説明したドラッグ軌跡35および速度に対応して表示されるサムネイル列34の一例を示す。
図4(c)は、ドラッグ軌跡35の各点a〜fにおける速度を示し、図4(d)は、その速度に応じたサムネイル画像の表示間隔を示すことで、図4(a)(b)での処理の内容をグラフ化して示すものである。GUI制御部11aは、ドラッグ軌跡の速度が速いか遅いかは予め設定された所定のスレッシレベルを用いて判定する。そして、GUI制御部11aは、ドラッグ軌跡の速度が速い部分ではサムネイル画像の表示間隔が狭くなり、ドラッグ軌跡の速度が遅い部分ではサムネイル画像の表示間隔が広くなるように表示間隔に変化を付ける。
このようにして、サムネイル列34におけるサムネイル画像同士の表示間隔は、ドラッグ軌跡の速度に応じて可変されるので、人工的な等間隔の場合に比して抑揚がつき面白みの増したサムネイル列34を生成・表示させることができる。
なお、本実施の形態では、ドラッグ軌跡の速度が速い場合には表示間隔を狭くし、ドラッグ軌跡の速度が遅い場合には表示間隔を広くしているが、図5に示すように逆にしてもよい。図5は、ドラッグ軌跡の速度に応じた表示間隔での表示制御の変形例を模式的に示す説明図である。すなわち、ドラッグ軌跡の速度が速い場合には表示間隔を広くし、ドラッグ軌跡の速度が遅い場合には表示間隔を狭くするものである。
また、サムネイル列34を生成・表示させるためのドラッグ操作に先立ち、画面上に操作ガイドを表示させることが望ましい。図6は、操作ガイドの表示例を模式的に示す説明図である。すなわち、GUI制御部11aが、ドラッグ操作開始前(例えば、図2(c)のスタック移動完了タイミング)にドラッグ操作の軌跡に対応してサムネイル列が生成・表示されるイメージを例えば点線で表した操作ガイド36としてサムネイルエリア33に表示させることで、ユーザに操作すべき態様を知らせることができる。図6中の符号36aは、起点を示しており、第1スタック31aの位置を起点36aとして操作すべきことを表している。また、GUI制御部11aが、操作ガイド36をアニメーション的に表示させるようにすれば、より一層分かりやすいものとなる。この操作ガイド36は、ユーザのドラッグ操作が実際に開始されると消去される。
また、サムネイル列34を生成するためのドラッグ操作は、第1スタック31aの位置を起点とする操作に限らず、第2スタック31bの位置を起点とするドラッグ操作であってもよい。図7は、第2スタック31bの位置を起点とするドラッグ操作の軌跡35に応じて生成・表示されるサムネイル列34の例を模式的に示す説明図である。この場合、第2スタック31bの最上位に表示されている確認済みの部分画像群中の最後尾の番号の画像が、サムネイル列34の先頭サムネイル画像となる。
つづいて、ユーザ操作に応じたサムネイル列34の生成・表示が終了した後の操作・表示例等について説明する。まず、作成したサムネイル列34を保存させる場合について説明する。図8は、作成したサムネイル列34を保存させる場合の操作例を模式的に示す説明図である。例えば、図2(e)に示したようにサムネイル列34の生成・表示が終了した後で、図8に示すように、ユーザが、サムネイルエリア33の余白部分を特定の操作、例えば2本指のドラッグ操作でスクロールさせるマルチタッチ操作を行う。すると、GUI制御部11aは、作成済みのサムネイル列34を、その配列形態のまま画像記憶部22またはSDRAM16に記憶保存させるとともに画面から消去し、サムネイルエリア33を空白欄表示に戻し、新たなサムネイル列34の生成・表示に供する。
次に、作成したサムネイル列34全体を消去させる場合について説明する。図9は、作成したサムネイル列34全体が不要で消去させる場合の操作例を模式的に示す説明図である。例えば、図2(e)に示したようにサムネイル列34の生成・表示が終了した後で、図9に示すように、ユーザが、特定の操作、例えば画面に指をタッチさせてサムネイル列34全体を第2スタック31bに向けて払い出すような操作を行う。すると、GUI制御部11aは、作成済みのサムネイル列34を生成していた各サムネイル画像を、番号順に第2スタック31bに吸収させ、サムネイルエリア33を空白欄表示に戻し、新たなサムネイル列34の生成・表示に供する。このようなサムネイル列34全体の消去処理により、第2スタック31bの最上位の画像(最後尾画像)は、例えば番号“152”の画像から番号“141”の画像に変更される。
また、作成したサムネイル列34中の一部の画像を消去させる場合について説明する。図10は、作成したサムネイル列34中の一部の画像が不要で消去させる場合の操作例を模式的に示す説明図である。例えば、図2(e)に示したようにサムネイル列34の生成・表示が終了した後で、図10に示すように、ユーザが、特定の操作、例えばサムネイル列34中の特定の画像、例えば番号“145”の画像に指でタッチして第2スタック31bに向けて移動させるようなドラッグ操作を行う。すると、GUI制御部11aは、ドラッグ指示された特定の画像、例えば番号“145”の画像のみを第2スタック31bに戻す。これにより、サムネイル列34は、特定の画像、例えば番号“145”の画像のみが消去された画像列に修正される。
また、作成したサムネイル列34を複製する場合について説明する。図11は、作成したサムネイル列34を複製する場合の操作例を模式的に示す説明図である。例えば、図11(a)に示すようにサムネイル列34の生成・表示が終了した後で、ユーザが、特定の操作、例えばサムネイルエリア33を指でダブルクリックする操作を行う。すると、GUI制御部11aは、図11(b)に示すように作成済みのサムネイル列34を第1グループG1としたとき、第1グループG1のサムネイル列34を、その配列形態のまま画像記憶部22またはSDRAM16に記憶保存させるとともに画面から消去させる。同時に、GUI制御部11aは、第1スタック31aの後続の画像を用いて、第1グループG1と同一形状のサムネイル列34を第2グループG2として複製により作成してサムネイルエリア33に表示させる。図示例であれば、例えば番号“140”の画像を先頭サムネイル画像とし、番号“130”の画像を最後の画像とする第2グループG2のサムネイル列34が作成される。これによれば、ユーザは、同じ配列形態のサムネイル列34を簡単に繰り返し生成することができる。
また、作成したサムネイル列34を複数に分離する場合について説明する。図12は、作成したサムネイル列34を複数に分離する場合の操作例を模式的に示す説明図である。例えば、図12(a)に示すようにサムネイル列34の生成・表示が終了した後で、ユーザが、特定の操作、例えばサムネイル列34中の所望の箇所を切断するように直線的に横切るドラッグ操作を行う。すると、GUI制御部11aは、生成されたサムネイル列34の一部を切り離すための切り離し指示と判断し、図12(a)に示すようにドラッグ操作が行われた箇所でサムネイル列34を切り離して分離することで、複数のサムネイル列34a,34bに分離させる。画像管理部11bは、切り離し指示に基づき切り離されて分離された各々のサムネイル列34a,34bを異なるグループとして管理する。図12(b)は、番号“148”“147”の画像の境目部分でサムネイル列34a,34bに分離される例を示している。これにより、ユーザは、サムネイル列34を一旦作成した後であっても、所望の位置で複数のサムネイル列34a,34bに分離させるように修正することができる。
また、作成した複数のサムネイル列34同士を結合させる場合について説明する。図13は、作成した複数のサムネイル列34同士を結合させる場合の操作例を模式的に示す説明図である。例えば、図13は、GUI制御部11aが、複数生成されたサムネイル列34については、複数のグループG1,G2,G3,…をなすこれらの複数のサムネイル列34を画面に比較可能に表示させている様子を示している。そこで、ユーザは、画面スクロール操作等を行うことでグループ間の所望の境界部分をサムネイルエリア33上に表示させる。そして、ユーザが、特定の操作、例えば次のグループG2の先頭サムネイル画像を先行するグループG1の最後のサムネイル画像へドラッグさせる操作を行う。図示例では、番号“139”の先頭サムネイル画像を番号“140”の最後のサムネイル画像へドラッグさせる。
すると、GUI制御部11aは、異なるサムネイル列34同士の端部を結合して一連のサムネイル列を生成するための結合指示と判断し、番号“139”の先頭サムネイル画像を番号“140”の最後のサムネイル画像へ連続させることで、グループG1,G2のサムネイル列34を新たな一連のサムネイル列34として結合させる。画像管理部11bは、結合指示に基づき結合された一連のサムネイル列34を同じグループとして管理する。これにより、ユーザは、サムネイル列34を一旦作成した後であっても、複数のサムネイル列同士を結合させてまとめるように修正することができる。
さらに、作成し保存された複数のサムネイル列34によるグループの概念について説明する。図14は、作成し保存された複数のサムネイル列34によるグループの概念についての説明図である。上述したように、本実施の形態によれば、画像記憶部22に記録された一連の画像中から、任意の先頭サムネイル番号の画像を先頭とする複数のサムネイル列34を、各サムネイル列34間が不連続となるように順次生成して表示させ、保存させることができる。そして、画像管理部11bは、これらの複数のサムネイル列34を構成する各々のサムネイル画像については、サムネイル列をグループ単位としてグループに分けて管理する。
図14は、その一例として、画像記憶部22に記録された一連の画像中から、例えば2008年から2005年の各年の運動会毎に上述したようなフリーライン操作によるサムネイル列34の生成を行い、画像記憶部22またはSDRAM16に保存させた場合を示している。ここに、これらのサムネイル列34は、画像管理部11bによる管理の下に、スクロール方向に連続する第1グループG1〜第4グループG4に区分けされて保存される。この際、GUI制御部11aは、グループG1〜G4毎に、グループ内のサムネイル列34を構成するサムネイル画像の先頭日付37aと最後尾日付37bとの情報をメタデータとして付加する。なお、図示例は、運動会の例であり、グループG1〜G4毎の先頭日付37aと最後尾日付37bとの情報が同一日付情報となっている。また、グループG1〜G4毎に、サムネイル列34の先後端の区切りを示すためのセパレータ37cが付加される。
そして、所望の時点で、適宜サムネイル画像表示のための操作を行うことで、いずれかのグループのサムネイル列34をサムネイルエリア33に表示させることができる。図14は、第2グループG2のサムネイル列34の表示状態を示している。そこで、ユーザが、サムネイルエリア33上で、図14中に示すように画面を上または下にスクロールさせる操作を行うと、グループG1〜G4が連なった状態で上または下にスクロール移動する。これにより、他のグループのサムネイル列34に関してもスクロール操作により閲覧可能となる。図示例であれば、年度毎の運動会のサムネイル列34を順次スクロールさせて閲覧することができる。このように、サムネイル列単位でグループが管理されるので、ユーザは、サムネイル列の形状を見ることで、グループの識別を容易に行うことができる。また、この際、グループ毎に先頭日付37aと最後尾日付37bとの情報がメタデータとして付加されて表示されるので、日付の確認が容易である。また、グループ毎にセパレータ37cが付加されているので、グループの区切りの確認も容易となる。
また、作成し保存されたサムネイル列34中から所望の画像を印刷させる場合について説明する。図15は、作成し保存されたサムネイル列34中から所望の画像を印刷させる場合の操作例を模式的に示す説明図である。ユーザは、所定の操作によって作成し保存されたサムネイル列34をサムネイルエリア33に表示させる。そして、ユーザは、図15に示すように、サムネイル列34中で印刷したい所望の画像にタッチして選択エリア32へ移動させるドラッグ操作を行う。図示例では、番号“149”“143”の画像を選択エリア32へ移動済みであり、番号“147”の画像を選択エリア32へ移動させている様子を示している。図中の破線は、移動画像の移動痕跡を示している。この際、GUI制御部11aは、所望の画像が選択エリア32に選択されたサムネイル列34を表示させる場合には、選択された画像部分を、例えば破線表示とすることで、選択されていない画像と区別して表示させる。すると、画像管理部11bは、選択エリア32に選択された画像を管理し、印刷処理に供する。
また、作成されたサムネイル列34から所望の画像を移動させる場合について説明する。図16は、作成されたサムネイル列34から所望の画像を移動させる場合の操作例を模式的に示す説明図である。例えば、図2(e)に示したようにサムネイル列34の生成・表示が終了した後で、図16(a)に示すように、ユーザが、特定の操作、例えばサムネイル列34中の特定の画像、例えば番号“143”の画像に指でタッチしてサムネイル列34からずらすようなドラッグ操作を行う。すると、GUI制御部11aは、ドラッグ指示された特定の画像、例えば番号“143”の画像を、図16(b)に示すようにサムネイル列34外にずれた所望の位置に移動させて表示させる。これにより、移動指示された特定のサムネイル画像は、見やすい状態となる。この際、GUI制御部11aが、図16(b)に示すようにサムネイル列34外に移動されたサムネイル画像を拡大表示させるようにすれば、より一層見やすいものとなる。
また、作成されたサムネイル列34を整列表示のサムネイル列に変えて表示させる場合について説明する。図17は、作成されたサムネイル列34を整列表示のサムネイル列に変えて表示させる場合の操作例を模式的に示す説明図である。サムネイル列34の生成・表示が終了した後で、図17(a)に示すように、ユーザが、特定の操作、例えば余白部分に対してワンクリック操作を行う。すると、GUI制御部11aは、フリーライン状態で作成されたサムネイル列34を、図17(b)に示すように、縦横にサムネイル画像を割り振ることでサムネイル画像が格子状に配列された整列表示のサムネイル列38に変えて表示させる。この場合の行列数は、サムネイル列34を構成するサムネイル画像数に応じて設定される。これにより、ユーザは、フリーライン状態で作成されたサムネイル列34を、見慣れた通常の整列表示に切り替えることも簡単に行える。なお、振動センサ付きのデジタルカメラ1の場合であれば、特定の操作として、デジタルカメラ1をシェイクさせる操作とすれば、フリーライン状態で作成されたサムネイル列34を分解するイメージとなって分かりやすい操作となる。
また、図14に示したような複数のサムネイル列34からなるグループ全体を、特定の整列表示の操作によって、図18に示すように整列表示のサムネイル列38に変更させることも可能である。この場合の行列数は、各グループG1〜G4内のそれぞれのサムネイル列34を構成するサムネイル画像数に応じて個々に設定される。また、グループ間にはセパレータ39が付加される。
また、作成されたサムネイル列34の形態を変更する場合について説明する。図19は、作成されたサムネイル列34の形態を変更する場合の操作例を模式的に示す説明図である。サムネイル列34の生成・表示が終了した後で、図19(a)に示すように、ユーザが、特定の操作、例えば余白部分に対して指で長押し操作を行う。すると、GUI制御部11aは、作成されたサムネイル列34の形態を変更させるモードと認識し、軌跡の書き直しを許容する。そこで、ユーザが、サムネイルエリア33上で、所望の軌跡35の描画を行うと、GUI制御部11aは、サムネイル列34を構成していたサムネイル画像をその軌跡35に応じて順番に再配列し、新たなサムネイル列40に変更させる。
図19(b)は、軌跡の書き直しにより、ユーザが、例えばアルファベット文字“A”を形成する軌跡35の描画を行った例を示している。ここで、軌跡35中の細線による欄外破線部分35aは、アルファベット文字“A”の描画において軌跡35が空中で連続している様子を模式的に示すものである。そして、書き直された軌跡35の描画順に、サムネイル列34を構成していたサムネイル画像が順番に再配列される。
つづいて、サムネイル列34を生成・表示させる場合のその他の操作・処理例等について説明する。ユーザ操作に基づき生成・表示されるサムネイル列34の個々のサムネイル画像は、基本的には、スタックエリア31におけるサムネイル画像のサイズのままとされる。しかしながら、このような態様に限らず、GUI制御部11aが、ユーザ操作により入力される軌跡の長さに応じて、サムネイル列34におけるサムネイル画像の表示サイズを可変制御するようにしてもよい。
図20は、軌跡の長さが短い場合に、ドラッグ操作終了後、自動的にズームアップさせる操作・処理例を模式的に示す説明図である。図20(a)は、ユーザが、サムネイルエリア33の左上の一部でサムネイル列34を生成するためのドラッグ操作の軌跡35が終了している場合を示している。そして、GUI制御部11aは、軌跡35の長さに応じた枚数分(例えば、3枚)のサムネイル画像からなるサムネイル列34を生成し、通常サイズで表示させる。この場合、サムネイルエリア33中に占めるサムネイル列34の表示領域が小さいので、GUI制御部11aは、図20(b)に示すように、サムネイルエリア33のサイズに適合するよう予め設定された拡大倍率に従いサムネイル列34を自動的にズームアップさせて表示させる。図20(b)は、例えば200%拡大の例を示している。これにより、サムネイル列34を構成するサムネイル画像が見やすいものとなる。
この際、ドラッグ操作に先立ち、図20(c)に示すように、サムネイルエリア33に自動拡大率の目安を線で表した撮影ガイド41を表示させることが望ましい。軌跡の長さが短い場合には、ドラッグ操作終了後、自動的にズームアップされることをユーザに事前に知らせるためである。図20(c)の撮影ガイド41は、200%の目安線の範囲内となるドラッグ操作であれば200%拡大表示され、200〜150%の目安線の範囲内となるドラッグ操作であれば150%拡大表示され、150〜100%の目安線の範囲内となるドラッグ操作であれば等倍表示のままとなることを表している。
なお、図20では、ドラッグ操作終了後の軌跡の長さによって自動的にズームアップさせるようにしたが、ドラッグ操作中にサムネイル画像の表示サイズを可変させるようにしてもよい。GUI制御部11aは、例えば、図21(a)に示すように、ドラッグ操作開始直後の軌跡35の長さが短い間は、サムネイル列34を構成するサムネイル画像を自動的にズームアップさせて表示させる。そして、GUI制御部11aは、図21(b)に示すように、ドラッグ操作が継続されて軌跡35の長さが長くなるにつれて、サムネイル画像の表示サイズを段々小さくさせる。
図22は、サムネイル列34中に連写モードで撮影された連写画像が含まれている場合のサムネイル列34の表示例を模式的に示す説明図である。GUI制御部11aは、サムネイル列34中に複数枚の連写画像が含まれている場合には、この連写画像の部分34aを殆ど重なる状態にまとめて表示させる。連写画像の部分34aは、同様の画像である場合が多く、その内の1枚の内容のみを確認できればよいためである。
図23は、作成されたサムネイル列34を構成する画像群の中で、メタデータが変化する部分があった場合に、そのメタデータの変化を示す情報の表示例を模式的に示す説明図である。メタデータとしては、撮影日付、撮影位置等の情報があるが、ここでは、撮影日付を特定のメタデータとしている。また、特定のメタデータが変化する部分は、サムネイル列34を構成する各サムネイル画像に付加されているメタデータ(撮影日付)をGUI制御部11aが認識することにより判断される。
図23(a)は、撮影日付なるメタデータの変化を示す情報として、該当箇所にしおりアイコン42を差し込む形で表示させる例を示している。図23(b)は、撮影日付なるメタデータの変化を示す情報として、該当箇所のサムネイル画像を傾けて表示させる例を示している。図23(c)は、撮影日付なるメタデータの変化を示す情報として、該当箇所で背景色を異ならせて表示させる例を示している(図面上は、異なる背景表示により背景色が異なることを示している)。これらによれば、ユーザは、サムネイル列34中で撮影日付等の切れ目を簡単に認識することができる。
つづいて、上述したようなGUI画面を用いた検索画面30に対するユーザ操作に伴う表示制御等を実現するための制御部11による動作制御例について説明する。図24は、制御部11のGUI制御部11a等により実行される操作制御処理例を示す概略フローチャートである。本実施の形態で対象とする操作制御処理は、図示しない設定用ボタン等の操作により、再生モードが指定されることにより実行される。
まず、制御部11は、再生モードにおいてサムネイルモードに設定されているか否かを判定する(ステップS11)。制御部11は、サムネイルモードに設定されていなければ(ステップS11:No)、他の再生モードの処理を実行する(ステップS12)。そして、制御部11は、サムネイルモードへの切換えがあったか否かを判定し(ステップS13)、切換えがなければ(ステップS13:No)、さらに電源スイッチのOFF操作があったか否かを判定する(ステップS14)。制御部11は、OFF操作があった場合には(ステップS14:Yes)、処理を終了し、OFF操作がなければ(ステップS14:No)、ステップS12の処理に戻る。
一方、制御部11は、サムネイルモードに設定されている場合や(ステップS11:Yes)、サムネイルモードへの切換えがあった場合には(ステップS13:Yes)、GUI制御部11aによって、表示部18に検索画面30の初期画面を表示させる(ステップS20)。図2(a)に示した検索画面30の初期画面の表示例が相当する。
ついで、GUI制御部11aは、初期画面表示において、ユーザによるスタックアイコン(送りアイコン31cまたは戻しアイコン31d)の操作があったか否かを判定する(ステップS21)。GUI制御部11aは、スタックアイコンの操作があった場合には(ステップS21:Yes)、その操作に応じてスタックアイコン間(第1スタック31a・第2スタック31b間)の移動処理を実行する(ステップS22)。
また、GUI制御部11aは、スタックアイコンの操作がなかった場合には(ステップS21:No)、サムネイル列を生成・表示させるためのユーザによるサムネイルドラッグ操作があったか否かを判定する(ステップS23)。GUI制御部11aは、サムネイルドラッグ操作があった場合には(ステップS23:Yes)、その操作に応じてサムネイル表示処理を実行する(ステップS24)。
さらに、GUI制御部11aは、サムネイルドラッグ操作がなかった場合には(ステップS23:No)、ユーザによる画面スクロール操作があったか否かを判定する(ステップS25)。GUI制御部11aは、画面スクロール操作があった場合には(ステップS25:Yes)、画面スクロール操作に従い画面をスクロール移動させる処理を実行する(ステップS26)。図8に示した表示例が相当する。
さらに、GUI制御部11aは、画面スクロール操作がなかった場合には(ステップS25:No)、ユーザによるサムネイルモードの解除操作があったか否かを判定する(ステップS27)。GUI制御部11aは、サムネイルモードの解除操作があった場合には(ステップS27:Yes)、ステップS12に移行し、サムネイルモードの解除操作がなかった場合には(ステップS27:No)、ステップS21以降の処理に戻る。
つづいて、ステップS22のスタックアイコン間移動処理について説明する。図25は、スタックアイコン間移動処理を示すサブルーチンである。まず、GUI制御部11aは、ユーザによって送りアイコン31cによる送り操作が行われているか否かを判定する(ステップS41)。GUI制御部11aは、送り操作が行われている場合には(ステップS41:Yes)、画像番号Nとして第1スタック31aの先頭画像番号を設定する(ステップS42)。そして、GUI制御部11aは、−1のデクリメント処理により1つ小さい番号Nの画像を画像記憶部22から読み出して第1スタック31aの位置に表示させる(ステップS43)。GUI制御部11aは、同時に、第1スタック31aにおいてデクリメント処理前の先頭画像を、この第1スタック31aから第2スタック31bへアニメーション的に移動させるアニメーション処理を実行する(ステップS44)。図2(b)に示した表示例が相当する。さらに、GUI制御部11aは、送り操作が終了したか否かを判定する(ステップS45)。GUI制御部11aは、送り操作が終了していなければ(ステップS45:No)、ステップS43,S44の処理を繰り返し実行する。また、GUI制御部11aは、送り操作が終了していれば(ステップS45:Yes)、このスタックアイコン間移動処理を終了する。図2(c)に示す表示例が相当する。
一方、GUI制御部11aは、送り操作が行われていない場合には(ステップS41:No)、戻しアイコン31dによる戻し操作であり、画像番号Nとして第2スタック31bの先頭画像番号を設定する(ステップS46)。そして、GUI制御部11aは、+1のインクリメント処理による1つ大きい番号Nの画像を画像記憶部22から読み出して第2スタック31bの位置に表示させる(ステップS47)。GUI制御部11aは、同時に、第2スタック31bにおいてインクリメント処理前の先頭画像を、この第2スタック31bから第1スタック31aへアニメーション的に移動させるアニメーション処理を実行する(ステップS48)。さらに、GUI制御部11aは、戻し操作が終了したか否かを判定する(ステップS49)。GUI制御部11aは、戻し操作が終了していなければ(ステップS49:No)、ステップS47,S48の処理を繰り返し実行する。また、GUI制御部11aは、戻し操作が終了していれば(ステップS49:Yes)、このスタックアイコン間移動処理を終了する。
つづいて、ステップS24のサムネイル表示処理について説明する。図26は、サムネイル表示処理を示すサブルーチンである。まず、GUI制御部11aは、すでにサムネイル列34が生成・表示されたサムネイル画面があるか否かを判定する(ステップS61)。GUI制御部11aは、サムネイル画面がなければ(ステップS61:No)、新規のサムネイル列34を生成するための待機状態にあると認識し、サムネイルドラッグ操作の起点が第1スタック31aのアイコン位置にあるか否かを判定する(ステップS62)。GUI制御部11aは、例えば図2(d)に示したように、第1スタック31aを起点とするサムネイルドラッグ操作であれば(ステップS62:Yes)、サムネイル描画処理を実行する(ステップS63)。
そして、GUI制御部11aは、サムネイル描画処理において画面からユーザの指が離されたか否かを随時判定し(ステップS64)、離されていなければ(ステップS64:No)、ステップS63のサムネイル描画処理を続行する。GUI制御部11aは、サムネイル描画処理において画面からユーザの指が離された場合には(ステップS64:Yes)、サムネイル列34を確定する(ステップS65)。図2(e)に示す表示例が相当する。なお、第1スタック31aを起点とするサムネイルドラッグ操作でなければ(ステップS62:No)、ステップS63〜S65の処理をジャンプする。
一方、GUI制御部11aは、サムネイル画面が有れば(ステップS61:Yes)、生成・表示済みのサムネイル列34に対して特定の操作に応じた各種処理を実行する。まず、GUI制御部11aは、特定の操作が、画面切換えのための操作であるか否かを判定する(ステップS70)。GUI制御部11aは、画面切換えのための操作である場合には(ステップS70:Yes)、サムネイル画面切換えの処理を実行し(ステップS71)、生成・表示されたサムネイル列34を保存させる(ステップS72)。図8に示した例が相当する。
また、GUI制御部11aは、画面切換えのための操作でない場合には(ステップS70:No)、特定の操作が、消去指示の操作であるか否かを判定する(ステップS73)。GUI制御部11aは、消去指示の操作である場合には(ステップS73:Yes)、サムネイル消去処理を実行する(ステップS74)。この場合、消去指示の操作に応じて、図9に示したようにサムネイル列34全体が消去される場合と、図10に示したようにサムネイル列34中の一部の画像が消去される場合とがある。
また、GUI制御部11aは、消去指示の操作でない場合には(ステップS73:No)、特定の操作が、複製のための操作であるか否かを判定する(ステップS75)。GUI制御部11aは、複製のための操作である場合には(ステップS75:Yes)、サムネイル列34の複製処理を実行する(ステップS76)。図11に示した表示例が相当する。
また、GUI制御部11aは、複製のための操作でない場合には(ステップS75:No)、特定の操作が、分離操作であるか否かを判定する(ステップS77)。GUI制御部11aは、分離操作である場合には(ステップS77:Yes)、サムネイル列34の分離処理を実行する(ステップS78)。図12に示した表示例が相当する。
さらに、GUI制御部11aは、分離操作でない場合には(ステップS77:No)、特定の操作が、結合操作であるか否かを判定する(ステップS79)。GUI制御部11aは、結合操作である場合には(ステップS79:Yes)、サムネイル列34の結合処理を実行する(ステップS80)。図13に示した表示例が相当する。
また、GUI制御部11aは、結合操作でない場合には(ステップS79:No)、特定の操作が、移動操作であるか否かを判定する(ステップS81)。GUI制御部11aは、移動操作である場合には(ステップS81:Yes)、サムネイル列34中のサムネイル画像の移動処理を実行する(ステップS82)。図16に示した表示例が相当する。
さらに、GUI制御部11aは、移動操作でない場合には(ステップS81:No)、特定の操作が、選択エリア32への移動操作であるか否かを判定する(ステップS83)。GUI制御部11aは、選択エリア32への移動操作である場合には(ステップS83:Yes)、サムネイル列34中から選択された該当するサムネイル画像を選択エリア32へ移動させる処理を実行する(ステップS84)。図15に示した表示例が相当する。
さらに、ステップS63のサムネイル描画処理について説明する。図27は、サムネイル描画処理を示すサブルーチンである。まず、GUI制御部11aは、ユーザによるドラッグ速度を監視し、このドラッグ速度が所定のスレッシレベルよりも速いか否かを判定する(ステップS101)。GUI制御部11aは、ドラッグ速度が速い部分では(ステップS101:Yes)、サムネイル列34を構成するサムネイル画像の表示間隔を狭く設定する(ステップS102)。また、GUI制御部11aは、ドラッグ速度が遅い部分では(ステップS101:No)、サムネイル列34を構成するサムネイル画像の表示間隔を広く設定する(ステップS103)。そして、GUI制御部11aは、サムネイル列34を構成する必要枚数分のサムネイル画像を第1スタック31aから順次読み出す(ステップS104)。
ついで、GUI制御部11aは、ドラッグ操作を行っていたユーザの指が画面最下部に位置しているか否かを判定する(ステップS105)。GUI制御部11aは、ユーザの指が画面最下部に位置していなければ(ステップS105:No)、読み出したサムネイル画像を、ユーザのドラッグ位置に応じ、かつ、設定された表示間隔によるサムネイル列34として表示させる(ステップS106)。図2(d)等に示す表示例が相当する。
一方、GUI制御部11aは、ユーザの指が画面最下部に位置している場合には(ステップS105:Yes)、画面最下部位置でのユーザのドラッグ左右位置に応じてサムネイル列34の生成を続行し、サムネイルエリア33には後続のサムネイル画像を順次読み出して連続的に表示させる(ステップS107)。図3に示した表示例が相当する。
本発明は、上述した実施の形態に限らず、本発明の趣旨を逸脱しない範囲であれば、種々の変形が可能である。例えば、本実施の形態では、画像記憶部22に記録された一連の画像を例えば撮影日時の古いものから時系列順に画像番号が大きくなる順番で管理するようにしたが、時系列的に逆順の順番で管理するようにしてもよい。また、撮影日時による番号付けに限らず、例えばGPS機能を搭載したデジタルカメラ1の場合であれば、GPS機能により各画像に付加される緯度や経度による位置情報に応じた番号付けであってもよい。
また、例えば、本実施の形態における図24〜図27に示すような各処理機能について、図1に示すブロック図では、制御部11によるソフトウェアによって処理するように説明したが、構成の具体例はこれに限るものではない。これらの処理を、ハードウェア処理とソフトウェア処理のいずれか一方あるいは適宜組み合わせて行なうことは設計事項である。
そして、実施の形態の全てあるいは一部がソフトウェア処理で処理が実行される場合には、制御部11がフラッシュメモリ等のプログラムデータ記憶部12に格納された操作制御用プログラムを読み出して実行されることで、かかるソフトウェア処理が実現されるので、このようなソフトウェア処理に関する操作制御用プログラムも本発明となる。また、このような操作制御用プログラムが記録された記録媒体も本発明となる。なお、プログラムを格納する記録媒体としては、フラッシュメモリに限定されるものではなく、CD−ROM、DVD−ROM等の光学記録媒体、MD等の磁気記録媒体、テープ媒体、ICカードなどの半導体メモリであってもよい。さらに、検索用プログラムとしては、ネットワークを介して外部の記録媒体から入手されるもの、例えば、ホームページからダウンロードされるものも当然含まれる。このような場合には、ユーザに対してダウンロードさせるWWWサーバやftpサーバ等も本発明の範囲に含まれるものである。
また、本実施の形態では、当該操作制御装置をデジタルカメラ1に搭載した例で説明したが、当然これに限られるものではない。本実施の形態の操作制御装置は、画像ビュワ等の画像表示装置に適用してもよい。