(57)【要約】      （修正有）【課題】撮影日時を検索条件として画像ファイルを検索する場合に、撮影日時が時差によってずれていることを考慮することで、所望の画像ファイルを漏れなく見つける。【解決手段】画像ファイルの撮影日を検索条件として複数の画像ファイルを検索する画像検索処理装置であって、検索条件となる撮影日を指定する指定手段と、指定された撮影日の最大時差を決定する決定手段と、指定された撮影日と、決定された最大時差とから検索条件に合う画像ファイルを検索する画像検索処理手段と、検索により見つかった画像ファイルの撮影場所と撮影日時とから現地撮影日時を取得する取得手段と、見つかった画像ファイルについて、取得した現地撮影日時が検索条件と一致しているか否か判定する判定手段と、検索条件と一致しない画像ファイルの情報を、検索により見つかった画像ファイルから排除する画像排除手段と、を有する。【選択図】図３
2012019300.tif 000002
【特許請求の範囲】
【請求項１】
画像ファイルの撮影日を検索条件として複数の画像ファイルを検索する画像検索処理装置であって、
前記検索条件となる撮影日を指定する指定手段と、
前記指定手段により指定された撮影日の最大時差を決定する決定手段と、
前記指定手段により指定された撮影日と、前記決定手段により決定された最大時差とから前記検索条件に合う画像ファイルを検索する画像検索処理手段と、
前記画像検索処理手段の検索により見つかった画像ファイルの撮影場所と撮影日時とから現地時間での撮影日時である現地撮影日時を取得する取得手段と、
前記画像検索処理手段の検索により見つかった画像ファイルについて、前記取得手段により取得した前記現地撮影日時が前記検索条件と一致しているか否か判定する判定手段と、
前記判定手段により前記検索条件と一致しない画像ファイルの情報を、前記画像検索処理手段の検索により見つかった画像ファイルから排除する画像排除手段と、を有することを特徴とする画像検索処理装置。
【請求項２】
前記取得手段は、画像ファイルに撮影場所が含まれていないため、現地撮影日時を取得できない場合、画像ファイルに付加された現地時間、画像ファイルに付加された時差、ユーザ操作により指定された撮影場所、及び画像ファイルを撮影した撮影機器の移動場所、画像ファイルを撮影した撮影機器の内蔵時計を設定した場所、同じ撮影機器で撮影されて撮影日が同じ画像ファイルの撮影場所の少なくともいずれかから現地撮影日時を算出し、
前記判定手段は、前記画像検索処理手段の検索により見つかった画像ファイルについて、前記取得手段により算出された現地撮影日時が前記検索条件と一致しているか否か判定し、
前記画像排除手段は、前記判定手段により前記検索条件と一致しない画像ファイルの情報を、前記画像検索処理手段により検索された画像ファイルから排除することを特徴とする請求項１に記載の画像検索処理装置。
【請求項３】
前記決定手段は、協定世界時から、前記最大時差を−２６時間から＋２６時間とすることを特徴とする請求項１に記載の画像検索処理装置。
【請求項４】
前記決定手段は、ユーザ操作によって最大時差が指定されることを特徴とする請求項１に記載の画像検索処理装置。
【請求項５】
ユーザ操作によって前記画像ファイルの検索地点を選択する手段を更に有し、
前記決定手段は、前記検索地点と画像ファイルの撮影場所とから最大時差を決定することを特徴とする請求項１に記載の画像検索処理装置。
【請求項６】
ユーザ操作によって撮影場所を指定する手段を更に有し、
前記取得手段は、前記ユーザ操作によって指定された撮影場所から現地撮影日時を算出することを特徴とする請求項２に記載の画像検索処理装置。
【請求項７】
前記画像排除手段は、前記画像検索処理手段の検索により見つかった画像ファイルのうち、前記取得手段により現地撮影日時が取得又は算出できない全ての画像ファイルを検索結果とすることを特徴とする請求項２に記載の画像検索処理装置。
【請求項８】
前記画像排除手段は、ユーザ操作によって排除する画像ファイルが指定されることを特徴とする請求項１に記載の画像検索処理装置。
【請求項９】
前記取得手段は、前記画像排除手段により排除処理された後の画像検索結果一覧表を表示することを特徴とする請求項１又は２に記載の画像検索処理装置。
【請求項１０】
画像ファイルの撮影日を検索条件として複数の画像ファイルを検索する画像検索処理装置における画像検索処理方法であって、
前記画像検索処理装置の指定手段が、前記検索条件となる撮影日を指定する指定工程と、
前記画像検索処理装置の決定手段が、前記指定工程により指定された撮影日の最大時差を決定する決定工程と、
前記画像検索処理装置の画像検索処理手段が、前記指定工程により指定された撮影日と、前記決定工程により決定された最大時差とから前記検索条件に合う画像ファイルを検索する画像検索処理工程と、
前記画像検索処理装置の取得手段が、前記画像検索処理により見つかった画像ファイルの撮影場所と撮影日時とから現地時間での撮影日時である現地撮影日時を取得する取得工程と、
前記画像検索処理装置の判定手段が、前記画像検索処理手段の検索により見つかった画像ファイルについて、前記取得工程により取得した前記現地撮影日時が前記検索条件と一致しているか否か判定する判定工程と、
前記画像検索処理装置の画像排除手段が、前記判定工程により前記検索条件と一致しない画像ファイルの情報を、前記画像検索処理により見つかった画像ファイルから排除する画像排除工程と、を有することを特徴とする画像検索処理方法。
【請求項１１】
コンピュータを、請求項１乃至９のいずれか１項に記載の画像検索処理装置の各手段として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像ファイルの撮影日時を検索条件として画像ファイルを検索する画像検索処理技術に関する。
【背景技術】
【０００２】
デジタルカメラなどの撮影機器の多くは時計機能が内蔵されており、撮影時に内蔵時計の時刻情報を撮影日時として画像ファイルに付加することができる。内蔵時計は予めユーザの自国時間に設定されていることが多く、海外へ旅行したときなどにカメラの内蔵時計を現地時間に設定し直さないで撮影すると、画像ファイルの撮影日時が自国時間とずれてしまう。このような場合、カメラで撮影した画像をパーソナルコンピュータ（以下、ＰＣ）に取り込んだ後、ユーザがＰＣ上で撮影日時を指定して画像ファイルを検索しても、撮影日時が時差によってずれているため、所望の画像ファイルが見つからないことがある。
【０００３】
このような画像検索処理に関連する技術として、特許文献１には、指定された検索条件に空間的又は時間的に近接する画像を検索する技術が記載されている。また、特許文献２には、画像データから撮影日時とＧＰＳ情報を取得し、ＧＰＳ情報から時差を求めて、撮影日時を時差分シフトさせて現地時間での撮影日時を求める技術が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−２２０４２０号公報
【特許文献２】特開２００２−３００５２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１では、画像の撮影日時及びＧＰＳ情報を用いて検索条件に近接しているか判定しているが、画像ファイルからＧＰＳ情報が取得できない場合には、現地時間が求められないため、所望の画像ファイルが見つからない可能性がある。また、上記特許文献２では、画像のＧＰＳ情報がない場合は、撮影日時をそのまま使用して画像ファイルを検索するため、所望の画像ファイルが見つからない可能性がある。つまり、撮影日時を指定して画像ファイルを検索する場合に、撮影日時が時差によってずれていると、それを位置情報などで補間しないと、所望の画像ファイルが見つからないことがある。
【０００６】
本発明は、上記課題に鑑みてなされ、その目的は、撮影日時を検索条件として画像ファイルを検索する場合に、撮影日時が時差によってずれていることを考慮することで、所望の画像ファイルを漏れなく見つけることができる画像検索技術を提供することである。
【課題を解決するための手段】
【０００７】
上記課題を解決し、目的を達成するために、本発明に係る画像検索処理装置は、画像ファイルの撮影日を検索条件として複数の画像ファイルを検索する画像検索処理装置であって、前記検索条件となる撮影日を指定する指定手段と、前記指定手段により指定された撮影日の最大時差を決定する決定手段と、前記指定手段により指定された撮影日と、前記決定手段により決定された最大時差とから前記検索条件に合う画像ファイルを検索する画像検索処理手段と、前記画像検索処理手段の検索により見つかった画像ファイルの撮影場所と撮影日時とから現地時間での撮影日時である現地撮影日時を取得する取得手段と、前記画像検索処理手段の検索により見つかった画像ファイルについて、前記取得手段により取得した前記現地撮影日時が前記検索条件と一致しているか否か判定する判定手段と、前記判定手段により前記検索条件と一致しない画像ファイルの情報を、前記画像検索処理手段の検索により見つかった画像ファイルから排除する画像排除手段と、を有する。
【発明の効果】
【０００８】
本発明によれば、撮影日時を検索条件として画像ファイルを検索する場合に、撮影日時が時差によってずれていることを考慮することで、所望の画像ファイルを漏れなく見つけることができる。
【図面の簡単な説明】
【０００９】
【図１】本実施形態の画像検索処理システムの全体構成を示す図。
【図２】本実施形態の画像検索処理装置の構成を示すブロック図。
【図３】本実施形態の画像検索処理装置の全体動作を示すフローチャート。
【図４】本実施形態の最大時差決定処理を示すフローチャート。
【図５】本実施形態の条件一致判定処理を示すフローチャート。
【図６】本実施形態の現地撮影日時取得処理を示すフローチャート。
【図７】本実施形態の画像排除処理を示すフローチャート。
【図８】本実施形態の画像検索処理装置が保持するファイル構成を例示する図。
【図９】本実施形態の画像検索処理装置が表示部に表示する初期画面を例示する図。
【図１０】本実施形態の画像検索処理装置が表示部に表示する検索結果画面を例示する図。
【図１１】本実施形態の画像検索処理装置が画像検索処理時に作成する検索結果一覧を例示する図。
【図１２】本実施形態の画像検索処理装置が画像排除処理後に作成する最終検索結果一覧を例示する図。
【発明を実施するための形態】
【００１０】
以下に、添付図面を参照して本発明を実施するための形態について詳細に説明する。尚、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。
【００１１】
本実施形態の画像検索処理装置は、画像ファイルの撮影日時を年、月、日に分割して表示したカレンダービューを有している。そして、画像検索処理装置は、ユーザがカレンダービュー内に表示される日付を選択することによって、複数の画像ファイルから、指定された撮影日の画像ファイルを検索する。なお、本実施形態では、ユーザがカレンダービュー内に表示される日付の選択によって検索条件となる撮影日を指定する構成であるが、エディットボックスなどにユーザが撮影日時を直接入力する構成としても良い。
【００１２】
［システム構成］図１を参照して、本実施形態の画像検索処理システムの全体構成について説明する。図１において、１００はＰＣなどにより実現される画像検索処理装置である。１１０はデジタルカメラなどにより実現される撮影機器である。撮影機器１１０は、画像転送部１１１、画像記憶部１１２、ＧＰＳ情報取得部１１３、撮影部１１４、内蔵時計１１５を備える。撮影機器１１０は、撮像部１１４により撮影された画像に、ＧＰＳ情報取得部１１３から取得した「ＧＰＳ情報」、内蔵時計１１５が示す時刻を「撮影日時」として画像ファイルのヘッダ部分に属性情報として付加し、画像記憶部１１２に保存する。また、撮影機器１１０は、画像記憶部１１２に保存している画像ファイルを画像転送部１１１を介して外部装置へ転送する。
【００１３】
このように、本実施形態では、撮影機器１１０で撮影した画像ファイルを画像検索処理装置１００へ転送し、画像検索処理装置１００に画像ファイルが保管される。
【００１４】
［画像検索処理装置］次に図２を参照して、本実施形態の画像検索処理装置の構成について説明する。図２において、２０１は後述する画像検索処理に関する各種プログラムを実行する演算処理装置（ＣＰＵ）である。２０２はＯＳや上記各種プログラム、画像ファイルを構成するデータ（以下、画像データ）などを記憶するハードディスク（ＨＤＤ）である。ハードディスク２０２は、後述する画像検索処理に関する各種プログラムがＣＰＵ２０１に読み取り可能なプログラムコードとして記憶されており、これらのプログラムコードをＣＰＵ２０１が実行する構成となっている。２０３は起動中のプログラムコードなどを保持するＲＡＭである。２０４は、ネットワークを介して外部装置としての撮影機器１１０に通信可能に接続するためのネットワーク接続部である。２０５は、ＰＣＩバスなどの画像検索処理装置１００の内部の各部を相互に接続するための内部バスである。２０６は、キーボードやマウスなどのユーザが入力可能な操作部である。２０７は、ＣＲＴや液晶パネルなどからなる表示部（ディスプレイ）である。２０８は、撮影機器１１０などの外部装置やプリンタなどの周辺機器との間で画像データなどの送受信処理を行うインタフェース手段である外部接続部である。２０９は、ＵＳＢメモリなどの外部記憶媒体からデータを読み込むための記憶媒体ドライブである。
【００１５】
本実施形態では、各種プログラムをハードディスク２０２に記憶しているが、ＣＤ−ＲＯＭやＤＶＤなどの外部記憶媒体に記憶し、記憶媒体ドライブ２０９からロードしてＣＰＵ２０１に実行させる形態であっても良い。同様に、ネットワークに接続されたサーバなどに画像データや各種プログラムが記憶されており、ＣＰＵ２０１がネットワーク接続部２０４を介して取得して実行する形態であっても良い。
【００１６】
［画像検索処理］次に図３を参照して、本実施形態の画像検索処理について説明する。本実施形態の画像検索処理は、特に記述しない限り、図２の画像検索処理装置１００のＣＰＵ２０１がハードディスク２０２に記憶された画像検索処理プログラムをＲＡＭ２０３へロードして実行することにより実現される。画像検索処理プログラムは、ＰＣの起動時に検索対象の画像データが格納された「フォルダパス」を引数として実行する。図３の３００は、指定された撮影日にて検索した結果の画像ファイルの一覧を登録する画像検索結果一覧表である。画像検索結果一覧表３００には、「Ｉｎｄｅｘ」、「画像ファイル名」、「撮影日時」、「現地時間」、および「時差」の５項目のデータが登録されている。なお、図３の画像検索処理プログラムの起動時は、画像検索結果一覧表３００は空の状態である。
【００１７】
図３において、「時差検索フラグ」に“ＯＮ”を代入し（Ｓ３０１）、引数として指定された「フォルダパス」内に存在する画像ファイルの「撮影日時」から、画像ファイルの年、月、日を取得する。そして、図９に示す画像選択画面９００を表示し（Ｓ３０２）、ユーザの入力を待つ。
【００１８】
図９は、Ｓ３０２の初期画面表示処理にて表示される初期画面を示している。図９において、初期画面９００は、プログラム終了ボタン９０１と、カレンダービュー９０２と、時差検索有効チェックボックス９０３と、検索結果を表示する縮小画像表示領域９０４を有する。図３において「時差検索フラグ」が“ＯＮ”の場合は、時差検索有効チェックボックス９０３がチェック状態となり、「時差検索フラグ」が“ＯＦＦ”の場合は、チェックなし状態で表示する。
【００１９】
カレンダービュー９０２は、検索対象となる画像ファイルの存在する撮影日を年単位９１２、月単位９１３、日単位９１４で表示し、ユーザ操作によって検索条件を選択する領域である。９１０は展開できる場合のアイコン、９１１は展開済みの場合のアイコンをそれぞれ示す。例えば、アイコン９１２をクリックすると、クリックされた年内に撮影された画像ファイルを検索し、検索された画像ファイルの画像が縮小画像表示領域９０４に検索結果として一覧表示される。同様に月９１３をクリックすると、クリックされた年月内に撮影された画像ファイルを検索し、検索された画像ファイルの画像が縮小画像表示領域９０４に検索結果として一覧表示される。同様に日９１４をクリックすると、クリックされた年月日内に撮影された画像ファイルを検索し、検索された画像ファイルの画像が縮小画像表示領域９０４に検索結果として一覧表示される。図９の初期画面表示中に、ユーザ操作により終了ボタン９０１がクリックされた場合は、画像検索処理プログラムが終了する。
【００２０】
図１０は、図３の画像検索処理による検索結果としての画像ファイルの縮小画像が一覧表示された検索結果画面を示している。図１０において、検索結果画面１０００は、プログラム終了ボタン１００１と、カレンダービュー１００２と、時差検索有効チェックボックス１００３と、検索結果を表示する縮小画像表示領域１００４を有する。図３において、「時差検索フラグ」が“ＯＮ”の場合は、時差検索有効チェックボックス１００３がチェック状態となり、「時差検索フラグ」が“ＯＦＦ”の場合は、チェックなし状態で表示する。カレンダービュー１００２は、検索対象となる画像ファイルの存在する撮影日を年単位１０１２、月単位１０１３、日単位１０１４で表示し、ユーザ操作によって検索条件を選択する領域である。１０１０は展開できる場合のアイコンを示し、１０１１は展開済みの場合を示すアイコンである。１０１５は選択中の検索条件である。撮影日を年１０１２、月１０１３、日１０１４をクリックすると、クリックされた日付を検索条件として画像ファイルを検索し、縮小画像表示領域１００４に検索結果としての画像ファイルの縮小画像が一覧表示される。１０２０は検索条件に合う画像ファイルの縮小画像である。１０２１は現地時間での撮影日時が取得できなかったことを示すアイコンである。図１０の検索結果画面表示中に、ユーザ操作により終了ボタン１００１がクリックされた場合は、画像検索処理プログラムが終了する。
【００２１】
図３のＳ３０２にて初期画面表示後に、Ｓ３０３にて時差検索有効チェックボックスがクリックされたと判定された場合は（Ｓ３０３でＹＥＳ）、「時差検索フラグ」に”ＯＮ”が代入されているか判定する（Ｓ３１３）。「時差検索フラグ」が“ＯＮ”の場合は（Ｓ３１３でＹＥＳ）、図９の初期画面内の時差検索有効チェックボックス９０３のチェックボックスをＯＦＦ状態にし（Ｓ３１４）、「時差検索フラグ」に“ＯＦＦ”を代入する（Ｓ３１５）。
【００２２】
一方、Ｓ３１３で「時差検索フラグ」が“ＯＦＦ”の場合は（Ｓ３１３でＮＯ）、図９の初期画面の時差検索有効チェックボックス９０３をＯＮの状態にし（Ｓ３１６）、「時差検索フラグ」に“ＯＮ”を代入し（Ｓ３１７）、ユーザの入力を待つ。そして、ユーザの入力待ち中に、Ｓ３０３にて時差検索有効チェックボックス９０３がクリックされたか否か判定し、クリックされていない場合は（Ｓ３０３でＮＯ）、カレンダービュー内で撮影日がクリックされたか判定する（Ｓ３０４）。Ｓ３０４にてカレンダービュー内で日付がクリックされていない場合は（Ｓ３０４でＮＯ）、終了ボタンが押されたか否かを判定する（Ｓ３１８）。Ｓ３１８で終了ボタンがクリックされていない場合は（Ｓ３１８でＮＯ）、ユーザの入力を待つ。Ｓ３０４でカレンダービュー内で日付がクリックされた場合は（Ｓ３０４でＹＥＳ）、「ＳｅｌｅｃｔＤａｔｅ」にクリックされた“日付”を代入する（Ｓ３０５）。
【００２３】
次に「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」に“「ＳｅｌｅｃｔＤａｔｅ」０時０分０秒”を代入し（Ｓ３０６）、「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」に“「ＳｅｌｅｃｔＤａｔｅ」２３時５９分５９秒”を代入する（Ｓ３０７）。
【００２４】
Ｓ３０８にて「時差検索フラグ」を判定し、「時差検索フラグ」がＯＮの場合は（Ｓ３０８でＹＥＳ）、最大時差（「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」、「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」）決定処理を実行する（Ｓ３０９）。Ｓ３０９の最大時差決定処理については、図４を用いて後述する。Ｓ３０９の最大時差決定処理が終了すると、画像ファイルの「撮影日時」が、「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」〜「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」と一致する画像ファイルを検索する第１の画像検索処理を実行する（Ｓ３１０）。Ｓ３１０の第１の画像検索処理については、図５を用いて後述する。Ｓ３１０の第１の画像検索処理が終了すると、「ＳｅｌｅｃｔＤａｔｅ」以外の画像ファイルの排除処理を実行する（Ｓ３１１）。Ｓ３１１の画像排除処理については、図７を用いて後述する。Ｓ３１１の画像排除理が終了すると、画像検索結果一覧表３００に登録中の画像ファイルのサムネイル一覧表示処理を実行する（Ｓ３１２）。
【００２５】
なお、画像検索結果一覧表表示処理（Ｓ３１２）は、本発明の要部ではないため詳細な説明については省略する。この処理は、画像検索結果一覧表３００から「画像名」を取得し、「画像名」から画像ファイルのデータを取得して、取得したデータから縮小画像データを作成して、図９の縮小画像表示領域９０４に表示する処理である。Ｓ３１２の検索結果一覧表示処理が終了すると、画像検索結果一覧表３００から「現地時間」を取得し、「現地時間」が空“”か否か判定する（Ｓ３１９）。「現地時間」が空“”の場合は（Ｓ３１９でＹＥＳ）、サムネイルにアイコンを付加し（Ｓ３２０）、Ｓ３２０の処理が終了するか、Ｓ３１９にて「現地時間」が取得できた場合は（Ｓ３１９でＮＯ）、ユーザの入力を待つ。
【００２６】
ユーザの入力待ち中に、Ｓ３０３にて時差検索有効チェックボックスがクリックされたか判定し、クリックされていない場合は（Ｓ３０３でＮＯ）、カレンダービュー内で撮影日付がクリックされたか判定する（Ｓ３０４）。カレンダービュー内でクリックされていない場合は（Ｓ３０４でＮＯ）、終了ボタンが押されたか確認し（Ｓ３１８）、終了ボタンが押された場合は（Ｓ３１８でＹＥＳ）、本プログラムを終了する。
【００２７】
本実施形態では、現地時間が取得できなかった場合にアイコンを表示したが、サムネイルの周囲やサムネイル自体に変化を付けても良い。また、別枠に表示や別ウィンドウにて、分けて表示しても良い。
【００２８】
［最大時差決定処理］次に図４を参照して、図３のＳ３０９における最大時差決定処理について説明する。最大時差決定処理プログラムは、図３の処理での「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」、「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」を引数として実行される。最大時差決定処理終了後は、最大時差を考慮して、「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」と「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」を更新し、図３のＳ３０９へ戻る。世界共通の標準時であるＵＴＣ（Ｕｎｉｖｅｒｓａｌ Ｔｉｍｅ Ｃｏｏｒｄｉｎａｔｅｄ：協定世界時）の最大時差は、“−１２時間”〜“＋１４時間”と定められている。ＵＴＣ「−１２時間」の地域（例えば、マーシャル諸島のエニウェトク島）からみた最大時差は、ＵＴＣ「＋１４時間」の地域（例えば、キリバス共和国のクリスマス島）の時刻となり、“＋２６時間”となる。つまり、ＵＴＣ「−１２時間」の地域が”“０：００”の時、ＵＴＣ「−１２時間」の地域は、“翌日の２：００”となる。反対にＵＴＣ「＋１４時間」の地域からＵＴＣ「−１２時間」の地域の時差は、“−２６時間”となる。ＵＴＣ「＋１４時間」の地域の時刻が“０：００”の場合、ＵＴＣ「−１２時間」の地域の時刻は“２日前の２２：００”となる。このことから、本実施形態では、「最大時差」を“±２６時間”として処理を実行する。
【００２９】
図４において、「ＭｉｎＴｉｍｅ」に“−２６”（Ｓ４０１）、「ＭａｘＴｉｍｅ」に“＋２６”を代入する（Ｓ４０２）。「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」に「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」から「ＭｉｎＴｉｍｅ」を引いた値を代入する（Ｓ４０３）。次に、「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」に「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」と「ＭａｘＴｉｍｅ」を足した値を代入し（Ｓ４０４）、最大時差決定処理を終了し、図３のＳ３０９へ戻る。
【００３０】
本実施形態での「最大時差」は、“±２６時間”としたが、検索地点からの最大時差としても良い。例えば、日本を検索地点とした場合、日本標準時はＵＴＣ「＋９時間」であるため、ＵＴＣ「−１２時間」の地域（例えば、マーシャル諸島のエニウェトク島）との時差は“−２１時間”となる。ＵＴＣ「＋１４時間」の地域（例えば、キリバス共和国のクリスマス島）との時差は“＋３時間”となる。よって、日本を検索地点とした場合の最大時差は、“−２１時間”〜“＋３時間”となる。なお、検索地点を、ユーザに選択させ、ユーザが選択した地点によって最大時差を決定しても良い。また、検索対象となる画像ファイルの撮影場所の情報を取得した結果や、画像の撮影場所をユーザに選択させ、選択された撮影場所から最大時差を決定しても良い。また、上記検索地点と撮影機器１１０が移動した場所から最大時差を決定しても良いし、撮影機器１１０の内蔵時計１１５を設定した地点を画像ファイルの取り込み時に取得しておき、内蔵時計１１５を設定した地点から最大時差を決定しても良い。
【００３１】
［条件一致判定処理］次に図５を参照して、図３のＳ３１０での条件一致判定処理について説明する。条件一致判定処理プログラムは、図３における「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」と「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」を引数として実行される。画像ファイルの撮影日時が「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」〜「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」に含まれる画像ファイルを検索し、検索結果を画像検索結果一覧表３００へ登録する。
【００３２】
図５において、まず、画像検索結果一覧表３００を空の状態に初期化する（Ｓ５０１）。次に、図３のプログラム起動時に引数として指定された「フォルダパス」内に格納された画像ファイルの「撮影日時」が、「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」〜「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」に含まれる画像ファイルを検索する（Ｓ５０２）。Ｓ５０２での検索処理は、本発明の要部ではないため詳細な説明については省略する。この処理は、画像ファイルの「撮影日時」を取得し、取得した「撮影日時」が「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」〜「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」に含まれているか判定する。そして、判定の結果、含まれていると判定された画像ファイルを条件一致画像として保持する。
【００３３】
Ｓ５０３にて、Ｓ５０２の検索処理での条件一致画像の画像ファイルが持つ「画像名」と「撮影日時」を画像検索結果一覧表３００に追加登録する。次に、画像検索結果一覧表３００に登録された画像リストを、撮影機器ごとに、画像ファイルの撮影日時の昇順でソートし（Ｓ５０４）、現地撮影日時取得処理へ移行する（Ｓ５０５）。Ｓ５０４の撮影機器ごとに、画像ファイルの撮影日時の昇順でソートする処理は、本発明の要部ではないため詳細な説明については省略する。例えば、撮影機器ごとにユニークに付加されている「カメラＩＤ」とカメラが作成した「画像番号」を有し、「カメラＩＤ」ごとに「画像番号」で並べることによって、画像ファイルの撮影日時の昇順でソートする。Ｓ５０５の現地撮影日時処理は、図６に示す処理となる。Ｓ５０５の現地撮影日時処理終了後、画像検索処理を終了し、図３のＳ３１０へ戻る。
【００３４】
［現地撮影日時取得処理］次に図６を参照して、図５のＳ５０５での現地撮影日時取得処理について説明する。現地撮影日時取得処理プログラムは、画像検索結果一覧表３００に登録された画像ファイルの現地時間での撮影時刻を取得する。現地時間での撮影時刻の取得には、検索対象の画像ファイルに登録されているＧＰＳ（Ｇｌｏｂａｌ Ｐｏｓｉｔｉｏｎｉｎｇ Ｓｙｓｔｅｍ：全地球測位システム）情報を使用する。ＧＰＳ情報から「現地時間」を算出し、画像検索結果一覧表３００の「現地時間」の項目へ登録する。検索対象の画像ファイルにＧＰＳ情報が付加されていない場合は、画像ファイルが持つ「撮影日時」と現地時間での撮影時刻のずれを計算することで、現地時間での撮影時間を算出する。
【００３５】
図６において、まず、「ＰｒｅＩｎｄｅｘ」に“０”を代入し（Ｓ６０１）、「Ｐｒｅ時差」に“０”を代入する（Ｓ６０２）。次に、「ＩｎｄｅｘＭａｘ」に画像検索結果一覧表３００に登録された画像ファイル数を代入し（Ｓ６０３）、「Ｉｎｄｅｘ」に“１”を代入する（Ｓ６０４）。Ｓ６０５で「Ｉｎｄｅｘ」と「ＩｎｄｅｘＭａｘ」を比較し、「Ｉｎｄｅｘ」が「ＩｎｄｅｘＭａｘ」より大きい場合は（Ｓ６０５でＮＯ）、現地撮影日時取得処理を終了し、図５のＳ５０５へ戻る。Ｓ６０５にて「Ｉｎｄｅｘ」が「ＩｎｄｅｘＭａｘ」以下の場合は（Ｓ６０５でＹＥＳ）、「Ｉｎｄｅｘ」に位置する画像ファイルの「画像名」を取得し、「画像名」から画像ファイルのデータを取得する（Ｓ６０６）。Ｓ６０６にて取得した画像ファイルのデータからＧＰＳ情報を取得し（Ｓ６０７）、Ｓ６０８にてＧＰＳ情報が取得できたか判定する。ＧＰＳ情報が取得できなかった場合は（Ｓ６０８でＮＯ）、Ｓ６１１の「Ｉｎｄｅｘ」を１つ増加し、「Ｉｎｄｅｘ」と「ＩｎｄｅｘＭａｘ」を比較する（Ｓ６０５）。Ｓ６０８にてＧＰＳ情報が取得できた場合は（Ｓ６０８でＹＥＳ）、「時差」に“０”を代入し（Ｓ６１２）、ＧＰＳ情報から「ＵＴＣ時刻」を取得する（Ｓ６１３）。
【００３６】
さらに、画像ファイルのデータから「時差」を取得する（Ｓ６１４）。この処理は、本発明の要部ではないため詳細な説明については省略する。本実施形態では、撮影機器によってＧＰＳ情報が取得できた場合は、ＧＰＳ情報から位置情報を取得し、取得した位置情報から検索地点との「時差」を算出し、撮影機器１１０が、予め画像ファイルに付加しておく。なお、「時差」は撮影機器が予め画像ファイルに付加するとしたが、ＧＰＳ情報から取得した位置情報と対応する時差テーブルを作成し、時差テーブルから「時差」を取得しても良い。Ｓ６１５にて「ＵＴＣ時間」に「時差」を加えた値を「現地時間」に代入し、画像検索結果一覧表３００の「Ｉｎｄｅｘ」に位置する項目の「現地時間」に登録する（Ｓ６１６）。Ｓ６１７にて初期状態を示す「ＰｒｅＩｎｄｅｘ」が“０”より大きく、かつ、「現地時間」算出処理終了を示す「ＰｒｅＩｎｄｅｘ」が「Ｉｎｄｅｘ」より小さいかを判定する。
【００３７】
初期状態の「ＰｒｅＩｎｄｅｘ」が“０”か、現地撮影日時取得処理の終了を示す「ＰｒｅＩｎｄｅｘ」が「Ｉｎｄｅｘ」以上の場合（Ｓ６１７でＮＯ）、先ずＳ６０９にて「ＰｒｅＩｎｄｅｘ」に「Ｉｎｄｅｘ」を代入する。また、「Ｐｒｅ時差」にＳ６１４にて取得した「時差」を代入した後（Ｓ６１０）、Ｓ６１１の「Ｉｎｄｅｘ」を１つ増加し、「Ｉｎｄｅｘ」と「ＩｎｄｅｘＭａｘ」を比較する（Ｓ６０５）。Ｓ６１７にて「ＰｒｅＩｎｄｅｘ」が“０”より大きく、かつ、「ＰｒｅＩｎｄｅｘ」が「Ｉｎｄｅｘ」より小さい場合は（Ｓ６１７でＹＥＳ）、「Ｐｒｅ時差」とＳ６１４にて取得した「時差」を比較する（Ｓ６１８）。Ｓ６１８にて「Ｐｒｅ時差」と「時差」が異なる場合は（Ｓ６１８でＮＯ）、Ｓ６０９の「ＰｒｅＩｎｄｅｘ」に「Ｉｎｄｅｘ」を代入する。Ｓ６１８にて「Ｐｒｅ時差」と「時差」が同じ場合は（Ｓ６１８でＹＥＳ）、画像検索結果一覧表３００の「Ｉｎｄｅｘ」に位置する項目の「撮影日時」を取得する（Ｓ６１９）。更に「撮影日時」からＳ６１５にて取得した「現地時間」を引き、「現地時間差」に代入する（Ｓ６２０）。
【００３８】
「現地時間差」は、画像ファイルの「撮影日時」と「現地時間」での撮影時刻の時間のずれを示す。Ｓ６２１にて「Ｉｎｄｅｘ２」に「ＰｒｅＩｎｄｅｘ」を１つ増加した値を代入し、「Ｉｎｄｅｘ２」と「Ｉｎｄｅｘ」を比較する（Ｓ６２２）。「Ｉｎｄｅｘ２」が「Ｉｎｄｅｘ」以上の場合は（Ｓ６２２でＮＯ）、Ｓ６０９の「ＰｒｅＩｎｄｅｘ」に「Ｉｎｄｅｘ」を代入する。Ｓ６２２にて「Ｉｎｄｅｘ２」が「Ｉｎｄｅｘ」より小さい場合は（Ｓ６２２でＹＥＳ）、画像検索結果一覧表３００の「Ｉｎｄｅｘ２」に位置する項目の「撮影日時」を取得する（Ｓ６２３）。Ｓ６２３で取得した「撮影日時」にＳ６２０で算出した「現地時間差」を加えた値を「撮影日時」に代入し（Ｓ６２４）、画像検索結果一覧表３００の「Ｉｎｄｅｘ２」に位置する項目の「現地時間」に代入する（Ｓ６２５）。Ｓ６２６にて「Ｉｎｄｅｘ２」を１つ増加し、「Ｉｎｄｅｘ２」と「Ｉｎｄｅｘ」とを比較する（Ｓ６２２）。
【００３９】
「Ｉｎｄｅｘ２」が「Ｉｎｄｅｘ」よりも大きくなるまで、Ｓ６２３からＳ６２６の処理を繰り返し実行することによって、ＧＰＳ情報が付加されていない画像の「現地時間」を算出する。Ｓ６２２にて「Ｉｎｄｅｘ２」が「Ｉｎｄｅｘ」よりも大きい場合は（Ｓ６２２でＮＯ）、Ｓ６０９の「ＰｒｅＩｎｄｅｘ」に「Ｉｎｄｅｘ」を代入し、「Ｐｒｅ時差」にＳ６１４で取得した「時差」を代入する（Ｓ６１０）。その後、Ｓ６１１にて「Ｉｎｄｅｘ」を１つ増加し、Ｓ６０５で「Ｉｎｄｅｘ」が「ＩｎｄｅｘＭａｘ」より大きくなるまで繰り返し実行する。Ｓ６０５で「Ｉｎｄｅｘ」が「ＩｎｄｅｘＭａｘ」より大きい値になった場合は（Ｓ６０５でＮＯ）、現地撮影日時取得処理を終了し、図５のＳ５０５へ戻る。
【００４０】
本実施形態での「現地時間」は、画像ファイルのＧＰＳ情報から「位置情報」、「ＵＴＣ時刻」、およびＵＴＣとの「時差」を使用して算出したが、予め画像ファイルに現地時間を付加しておき、この現地時間を取得しても良い。また、画像ファイルから「ＵＴＣ時刻」と「時差」を取得し、現地時間を算出しても良い。さらに、ユーザ操作により指定された撮影場所から現地時間を算出しても良い。さらにまた、画像ファイルのカメラＩＤから撮影機器を特定し、撮影機器の移動場所から現地時間を取得しても良い。
【００４１】
［画像排除処理］次に図７を参照して、図３のＳ３１１における画像排除処理について説明する。画像排除処理プログラムは、図３における「ＳｅｌｅｃｔＤａｔｅ」を引数として実行され、画像検索結果一覧表３００を参照し、画像検索結果一覧表３００に登録されている「現地時間」が「ＳｅｌｅｃｔＤａｔｅ」と一致しない項目を排除する。
【００４２】
図７において、まず、「排除リスト」を作成し、初期化する（Ｓ７０１）。次に引数として与えられる検索条件である日付「ＳｅｌｅｃｔＤａｔｅ」元に、「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍｉｎ」に“「ＳｅｌｅｃｔＤａｔｅ」０：０：０”を代入する（Ｓ７０２）。また、「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍａｘ」に“「ＳｅｌｅｃｔＤａｔｅ」２３：５９：５９”を代入する（Ｓ７０３）。Ｓ７０４にて「ＩｎｄｅｘＭａｘ」に画像検索結果一覧表３００に登録中の画像ファイル数を代入し、「Ｉｎｄｅｘ」に“１”を代入する（Ｓ７０５）。Ｓ７０６にて「Ｉｎｄｅｘ」と「ＩｎｄｅｘＭａｘ」を比較し、「Ｉｎｄｅｘ」が「ＩｎｄｅｘＭａｘ」以下の場合は（Ｓ７０６でＹＥＳ）、画像検索結果一覧表３００に登録されている「Ｉｎｄｅｘ」に位置する「現地時間」を取得する（Ｓ７０７）。Ｓ７０７で取得した「現地時間」が空“”か否かを判定し（Ｓ７０８）、「現地時間」が空“”の場合（Ｓ７０８でＹＥＳ）、「Ｉｎｄｅｘ」を１つ増加し（Ｓ７１４）、Ｓ７０６の「Ｉｎｄｅｘ」と「ＩｎｄｅｘＭａｘ」の比較処理に移行する。Ｓ７０７で取得した「現地時間」が取得できた場合は（Ｓ７０８でＮＯ）、「現地時間」と「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍｉｎ」を比較する処理へ移行する（Ｓ７０９）。Ｓ７０９で「現地時間」が「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍｉｎ」よりも小さい場合は（Ｓ７０９でＹＥＳ）、“１”から「Ｉｎｄｅｘ」の画像ファイルは条件に一致していないと判定し、「排除リスト」に追加する（Ｓ７１０）。Ｓ７０９で「現地時間」が「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍｉｎ」よりも大きい場合は（Ｓ７０９でＮＯ）、「現地時間」と「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍａｘ」を比較する処理へ移行する（Ｓ７１２）。Ｓ７１２で「現地時間」が「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍａｘ」よりも小さい場合は（Ｓ７１２でＮＯ）、「Ｉｎｄｅｘ」を１つ増加し（Ｓ７１５）、Ｓ７０６の「Ｉｎｄｅｘ」と「ＩｎｄｅｘＭａｘ」の比較処理に移行する。Ｓ７１２で「現地時間」が「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍａｘ」よりも大きい場合は（Ｓ７１２でＹＥＳ）、「Ｉｎｄｅｘ」から「ＩｎｄｅｘＭａｘ」に位置する画像ファイルは条件に一致していないと判定し、「排除リスト」に追加する（Ｓ７１３）。「Ｉｎｄｅｘ」に“「ＩｎｄｅｘＭａｘ」＋１”を代入し（Ｓ７１４）、Ｓ７０６の「Ｉｎｄｅｘ」と「ＩｎｄｅｘＭａｘ」の比較処理に移行する。Ｓ７０６にて「ＩｎｄｅｘＭａｘ」よりも「Ｉｎｄｅｘ」が大きい場合（Ｓ７０６でＮＯ）、「排除リスト」に登録されている「Ｉｎｄｅｘ」を取得し、画像検索結果一覧表３００から「Ｉｎｄｅｘ」に位置する画像ファイルのデータを削除する（Ｓ７１１）。その後、画像排除処理を終了し、図３のＳ３１１へ戻る。
【００４３】
上記画像排除処理によれば、ＧＰＳ情報が付加された画像ファイルが１つもない場合は、図５の検索処理で見つかった全画像ファイルが条件に一致する画像ファイルとなる。本実施形態では、図５の検索処理で見つかった画像ファイルから「現地時間」を取得し、取得した結果によって条件に一致する画像ファイルか判定している。なお、同一のカメラで撮影された画像ファイルや、同一場所にて撮影された画像ファイルから「現地時間」を予測することで条件に一致しているか判定しても良い。また、排除する画像ファイルをユーザに選択させても良い。
【００４４】
［初期画面から検索結果画面へ遷移する処理］次に図８を参照して、図９の初期画面から図１０の検索結果画面へ遷移する処理の流れについて説明する。図８において、８１０は画像ファイルのデータ構成を示している。８１１はＥｘｉｆ規格の保存部分であり、「撮影日時」、「ＧＰＳ情報」、「ＵＴＣとの時差」、「カメラＩＤ」、「画像ユニークＩＤ」の５つのプロパティを保持している。８１２は画像の実データの保存部分である。８２０は画像ファイルを保持しているフォルダ内の画像情報を示す。８２１は画像ファイルを示しており、説明のため画像ファイルの具体的な付加データを示している。フォルダ８２０内には１８個の画像ファイル８２１が格納されている。
【００４５】
図８のフォルダ８２０の「フォルダパス」を引数として、画像検索処理プログラムを起動した例について図３乃至図７のフローチャートを参照しつつ説明する。図３の画像検索処理プログラムは、引数で指定された「フォルダパス」内に存在する画像ファイルの撮影日時から日付情報を取得し、図９に示す初期画面９００のカレンダービュー９０２内に年月日を階層的に表示する（Ｓ３０２）。本実施形態では、以下のようになる。
「２００７年」−「１２月」−「２４日」
「２００８年」−「８月」−「２９日」
「２００９年」−「８月」−「２９日」
−「９月」−「１０日」「１１日」「１２日」「１３日」
図３のユーザ入力待ち中に、図９の“「２００９年」−「９月」−「１１日」”が選択されると、図３のＳ３０４にてＹＥＳとなり、「ＳｅｌｅｃｔＤａｔｅ」に“２００９／９／１１”を代入する（Ｓ３０５）。次に「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」に“２００９／９／１１  ００：００：００”、「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」に“２００９／９／１１  ２３：５９：５９”を代入する（Ｓ３０６、Ｓ３０７）。Ｓ３０８にて「時差検索フラグ」が“ＯＮ”の場合は（Ｓ３０８でＹＥＳ）、Ｓ３０９に移行し、図４の最大時差決定処理プログラムを起動する。
【００４６】
図４において、Ｓ４０１にて「ＭｉｎＴｉｍｅ」に“−２６”を代入し、Ｓ４０２にて「ＭａｘＴｉｍｅ」に“＋２６”を代入する。Ｓ４０３にて「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」に“２００９／９／９ ２２：００：００”を代入し、Ｓ４０４にて「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」に“２００９／９／１３ ２：５９：５９”を代入し、図３のＳ３０９に戻る。次にＳ３１０に移行し、図５の条件一致判定処理プログラムを起動する。
【００４７】
図５において、画像検索結果一覧表３００を初期化する（Ｓ５０１）。次に図８の８１１の「撮影日時」が「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」“２００９／９／９ ２２：００：００”〜「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」“２００９／９／１３ ２：５９：５９”に含まれる画像ファイルを検索する（Ｓ５０２）。図８のフォルダ８２０を検索した場合は、“Ｄ画像”〜“Ｑ画像”の１４個の画像ファイルが画像検索結果一覧表３００に登録される。次に条件に一致する画像ファイルの「画像名」と「撮影日時」を画像検索結果一覧表３００に登録し（Ｓ５０３）、撮影機器ごとに画像ファイルの撮影日時順に昇順でソートする（Ｓ５０４）。本実施形態では、撮影機器ごとに異なる「カメラＩＤ」を持ち、撮影日時順の画像番号が「画像ユニークＩＤ」に登録される画像ファイルの例を示す。次にＳ５０５に移行し、図６の現地撮影日時取得処理プログラムを起動する。
【００４８】
図６において、「ＰｒｅＩｎｄｅｘ」に“０”（Ｓ６０１）、「Ｐｒｅ時差」“０”を代入し（Ｓ６０２）、「ＩｎｄｅｘＭａｘ」に“１４”（Ｓ６０３）、「Ｉｎｄｅｘ」“１”を代入する（Ｓ６０４）。次に、Ｓ６０５にて「Ｉｎｄｅｘ」“１”は「ＩｎｄｅｘＭａｘ」“１４”以下であるので（Ｓ６０５でＹＥＳ）、「Ｉｎｄｅｘ」に位置する画像ファイルである“Ｄ画像”を取得する（Ｓ６０６）。“Ｄ画像”からＧＰＳ情報を取得し（Ｓ６０７）、取得できない場合は（Ｓ６０８でＮＯ）、「Ｉｎｄｅｘ」を１つ増加し、“２”を代入する（Ｓ６１１）。Ｓ６０５にて「Ｉｎｄｅｘ」“２”は「ＩｎｄｅｘＭａｘ」“１４”以下であるので（Ｓ６０５でＹＥＳ）、「Ｉｎｄｅｘ」に位置する画像ファイルである“Ｅ画像”を取得する（Ｓ６０６）。“Ｅ画像”からＧＰＳ情報を取得し（Ｓ６０７）、取得できた場合は（Ｓ６０８でＹＥＳ）、「時差」に“０”を代入する（Ｓ６１２）。Ｓ６１３にて「ＵＴＣ時刻」“２００９／９／１０ １２：１１：１７”を取得し、Ｓ６１４にて「時差」“＋９”を取得する。Ｓ６１５にて「現地時間」“２００９／９／１０ ２１：１１：１７”を算出し、画像検索結果一覧表３００の「Ｉｎｄｅｘ」“２”に位置する「現地時間」に“２００９／９／１０  ２１：１１：１７”を登録する。Ｓ６１７にて「ＰｒｅＩｎｄｅｘ」“０”は“０”より大きくないため（Ｓ６１７でＮＯ）、Ｓ６０９で「ＰｒｅＩｎｄｅｘ」“２”、Ｓ６１０で「Ｐｒｅ時差」“＋９”を代入し、「Ｉｎｄｅｘ」を１増加し“３”を代入する（Ｓ６１１）。Ｓ６１１にて「Ｉｎｄｅｘ」が“５”となるまで繰り返す。
【００４９】
Ｓ６０５にて「Ｉｎｄｅｘ」が“５”のとき、「Ｉｎｄｅｘ」“５”は「ＩｎｄｅｘＭａｘ」“１４”以下であるので（Ｓ６０５でＹＥＳ）、「Ｉｎｄｅｘ」に位置する画像ファイルである“Ｈ画像”を取得する（Ｓ６０６）。“Ｈ画像”からＧＰＳ情報を取得し（Ｓ６０７）、取得できた場合は（Ｓ６０７でＹＥＳ）、「時差」に“０”を代入する（Ｓ６１２）。Ｓ６１３にて「ＵＴＣ時刻」“２００９／９／１０ ２１：４７：５６”を取得し、Ｓ６１４にて「時差」“＋９”を取得する。Ｓ６１５にて「現地時間」“２００９／９／１１ ０６：４７：５６”を算出し、画像検索結果一覧表３００の「Ｉｎｄｅｘ」“５”に位置する「現地時間」に“２００９／９／１１ ０６：４７：５６”を登録する。Ｓ６１７にて「ＰｒｅＩｎｄｅｘ」“２”は“０”より大きく、かつ、「ＰｒｅＩｎｄｅｘ」“２”は「Ｉｎｄｅｘ」“５”より小さいため（Ｓ６１７でＹＥＳ）、Ｓ６１８の「Ｐｒｅ時差」と「時差」とを比較する。Ｓ６１８にて「Ｐｒｅ時差」“＋９”と「時差」“＋９”は同じ値のため（Ｓ６１８でＹＥＳ）、Ｓ６１９にて画像検索結果一覧表３００の「Ｉｎｄｅｘ」に位置する「撮影日時」“２００９／９／１１ ０６：４７：５６”を取得する。Ｓ６２０にて「撮影日時」“２００９／９／１１ ０６：４７：５６”−「現地時間」“２００９／９／１１ ０６：４７：５６”から「撮影時間差」“０秒”を代入し、「Ｉｎｄｅｘ２」に“３”を代入する（Ｓ６２１）。Ｓ６２２にて「Ｉｎｄｅｘ２」“３”は、「Ｉｎｄｅｘ」“５”よりも小さいため（Ｓ６２２でＹＥＳ）、Ｓ６２３の画像検索結果一覧表３００の「Ｉｎｄｅｘ２」に位置する「撮影日時」“２００９／９／１１ ００：４０：２２”を取得する。
【００５０】
Ｓ６２４にて「撮影日時」“２００９／９／１１ ００：４０：２２”＋「撮影時間差」“０秒”から「現地時間」“２００９／９／１１ ００：４０：２２”を算出する。そして、画像検索結果一覧表３００の「Ｉｎｄｅｘ２」に位置する「現地時間」“２００９／９／１１ ００：４０：２２”を登録する（Ｓ６２５）。Ｓ６２６にて「Ｉｎｄｅｘ２」を１つ増加し、Ｓ６２２の「Ｉｎｄｅｘ２」“４”と「Ｉｎｄｅｘ」“５”の比較に移行する。Ｓ６２２の「Ｉｎｄｅｘ２」が“５”になるまでＳ６２３〜Ｓ６２６を繰り返す。
【００５１】
Ｓ６２２にて「Ｉｎｄｅｘ２」“５”の場合、「Ｉｎｄｅｘ２」“５”は「Ｉｎｄｅｘ」“５”以上となる（Ｓ６２２でＮＯ）。このため、Ｓ６０９で「ＰｒｅＩｎｄｅｘ」“５”、Ｓ６１０で「Ｐｒｅ時差」“＋９”を代入し、「Ｉｎｄｅｘ」を１つ増加し“６”を代入する（Ｓ６１１）。Ｓ６１１にて「Ｉｎｄｅｘ」が“１５”となるまで繰り返す。Ｓ６０５にて「Ｉｎｄｅｘ」が“１５”のとき、「Ｉｎｄｅｘ」“１５”は「ＩｎｄｅｘＭａｘ」“１４”より大きいので（Ｓ６０５でＮＯ）、現地撮影日時取得処理を終了し、図５のＳ５０５に戻る。図５のＳ５０５の処理が終了すると、検索結果が、図１１に示すようになる。図５のＳ５０５の処理終了後、「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍｉｎ」〜「ＳｅｒｃｈＤａｔｅＴｉｍｅ＿Ｍａｘ」検索処理を終了し、図３のＳ３１０に戻る。次にＳ３１１に移行し、図７の画像排除処理プログラムを起動する。
【００５２】
図７において、排除処理プログラムは、「ＳｅｌｅｃｔＤａｔｅ」“２００９／９／１１”を引数として、「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍｉｎ」に“２００９／９／１１ ０：０：０”、「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍａｘ」“２００９／９／１１ ２３：５９：５９”を代入する（Ｓ７０２、Ｓ７０３）。次に、画像検索結果一覧表３００に登録されている画像ファイル数を「ＩｎｄｅｘＭａｘ」“１４”代入し（Ｓ７０４）、「Ｉｎｄｅｘ」“１”を代入する（Ｓ７０５）。Ｓ７０６で「Ｉｎｄｅｘ」“１”は「ＩｎｄｅｘＭａｘ」“１４”以下であるので（Ｓ７０６でＹＥＳ）、「Ｉｎｄｅｘ」に位置する「現地時間」空“”を取得する（Ｓ７０７）。Ｓ７０８にて「現地時間」空“”の場合は（Ｓ７０８でＹＥＳ）、Ｓ７１４にて「Ｉｎｄｅｘ」を１つ増加して「Ｉｎｄｅｘ」“２”とし、Ｓ７０６の判定処理に移行する。Ｓ７０６で「Ｉｎｄｅｘ」“２”は「ＩｎｄｅｘＭａｘ」“１４”以下であるので（Ｓ７０６でＹＥＳ）、「Ｉｎｄｅｘ」に位置する「現地時間」“２００９／９／１０ ２１：１１：１７”を取得する（Ｓ７０７）。
【００５３】
Ｓ７０８にて「現地時間」“２００９／９／１０ ２１：１１：１７”が取得できた場合（Ｓ７０８でＮＯ）、取得した「現地時間」と「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍｉｎ」“２００９／９／１１ ０：０：０”を比較する（Ｓ７０９）。Ｓ７０９にて「現地時間」“２００９／９／１０ ２１：１１：１７”は、「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍｉｎ」“２００９／９／１１ ０：０：０”よりも小さい（Ｓ７０９でＹＥＳ）。このため、“１”〜「Ｉｎｄｅｘ」“２”を「排除リスト」に追加する（Ｓ７１０）。次に、Ｓ７１５にて「Ｉｎｄｅｘ」を１つ増加して「Ｉｎｄｅｘ」“３”とし、Ｓ７０６の判定処理に移行する。Ｓ７０６で「Ｉｎｄｅｘ」“３”は「ＩｎｄｅｘＭａｘ」“１４”以下であるので（Ｓ７０６でＹＥＳ）、「Ｉｎｄｅｘ」に位置する「現地時間」“２００９／９／１１ ００：４０：２２”を取得する（Ｓ７０７）。
【００５４】
Ｓ７０８で「現地時間」“２００９／９／１１ ００：４０：２２”が取得できた場合（Ｓ７０８でＮＯ）、取得した「現地時間」と「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍｉｎ」“２００９／９／１１ ０：０：０”とを比較する（Ｓ７０９）。Ｓ７０９で「現地時間」“２００９／９／１１ ００：４０：２２”は、「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍｉｎ」“２００９／９／１１ ０：０：０”よりも大きい（Ｓ７０９でＮＯ）。このため、取得した「現地時間」と「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍａｘ」“２００９／９／１１ ２３：５９：５９”とを比較する（Ｓ７１２）。Ｓ７１２にて「現地時間」“２００９／９／１１ ００：４０：２２”は、「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍａｘ」“２００９／９／１１ ２３：５９：５９”よりも小さい（Ｓ７１２でＮＯ）。このため、Ｓ７１５にて「Ｉｎｄｅｘ」を１つ増加して「Ｉｎｄｅｘ」“４”とし、Ｓ７０６の判定処理に移行する。Ｓ７１５にて「Ｉｎｄｅｘ」“１３”まで処理を繰り返す。Ｓ７０６で「Ｉｎｄｅｘ」“１３”の時、「Ｉｎｄｅｘ」“１３”は「ＩｎｄｅｘＭａｘ」“１４”以下であるので（Ｓ７０６でＹＥＳ）、「Ｉｎｄｅｘ」に位置する「現地時間」“２００９／０９／１２ ０５：３５：２０”を取得する（Ｓ７０７）。「現地時間」“２００９／０９／１２ ０５：３５：２０”が取得できた場合（Ｓ７０８でＮＯ）、取得した「現地時間」と「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍｉｎ」“２００９／９／１１ ０：０：０”とを比較する（Ｓ７０９）。Ｓ７０９にて「現地時間」“２００９／０９／１２ ０５：３５：２０”は、「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍｉｎ」“２００９／９／１１ ０：０：０”よりも大きい（Ｓ７０９でＮＯ）。このため、取得した「現地時間」と「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍａｘ」“２００９／９／１１ ２３：５９：５９”を比較する（Ｓ７１２）。Ｓ７１２にて「現地時間」“２００９／０９／１２ ０５：３５：２０”は、「ＳｅｌｅｃｔＤａｔｅＴｉｍｅ＿Ｍａｘ」“２００９／９／１１ ２３：５９：５９”よりも大きい（Ｓ７１２でＹＥＳ）。このため、「Ｉｎｄｅｘ」“１３”〜「ＩｎｄｅｘＭａｘ」“１４”を「排除リスト」に追加する（Ｓ７１３）。次に、Ｓ７１４にて「Ｉｎｄｅｘ」を「ＩｎｄｅｘＭａｘ」“１４”＋“１”の「Ｉｎｄｅｘ」“１５”とし、Ｓ７０６の判定処理に移行する。Ｓ７０６で「Ｉｎｄｅｘ」“１５”は「ＩｎｄｅｘＭａｘ」“１４”より大きいので（Ｓ７０６でＮＯ）、Ｓ７１１の「削除リスト」に登録されている「Ｉｎｄｅｘ」“１”“２”“１３”“１４”に位置する画像ファイルのデータを画像検索結果一覧表３００から排除する（Ｓ７１１）。図７の画像排除処理が終了すると、検索結果が、図１２に示すようになる。図７の処理終了後、図３のＳ３１１に戻る。
【００５５】
次に図３のＳ３１２にて画像検索結果一覧表３００に登録された画像ファイルのサムネイル一覧表示処理へ移行する。図１２に示す画像検索結果一覧表に登録された画像名から画像ファイルの実データ部分を取得し、それを縮小した画像データを表示する（Ｓ３１２）。次に、画像検索結果一覧表３００の「現地時間」を取得し、「現地時間」が空“”の場合は（Ｓ３１９でＹＥＳ）、サムネイルにアイコンを付加する（Ｓ３２０）。画像検索結果一覧表３００の全ての登録画像ファイルについて、Ｓ３２０のアイコン付加処理が終了した場合は、図１０に示す検索結果画面を表示する。
【００５６】
上述のように図９のカレンダービュー９０２内の「２００９年」−「９月」−「１１日」がクリックされた場合、図１０に示す検索結果画面が表示される。つまり、時差によって画像ファイルの撮影日時がずれていても、時差を考慮して現地時間での撮影日時で画像ファイルの検索が行われる。これにより、所望する画像ファイルを漏れなく見つけることができる。
【００５７】
また、本実施形態によれば、画像ファイルの撮影日時から最大時差を考慮して検索を実行し、現地時間での撮影日時を取得し、取得した現地時間での撮影日時を元に、検索結果から一致しないものを排除する。これによって、所望する画像ファイルを漏れなく見つけることが可能となる。
【００５８】
［他の実施形態］本発明は、以下の処理を実行することによっても実現される。即ち、上記実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【図１】
2012019300.tif 000003
【図２】
2012019300.tif 000004
【図３】
2012019300.tif 000005
【図４】
2012019300.tif 000006
【図５】
2012019300.tif 000007
【図６】
2012019300.tif 000008
【図７】
2012019300.tif 000009
【図１１】
2012019300.tif 000010
【図１２】
2012019300.tif 000011
【図８】
2012019300.tif 000012
【図９】
2012019300.tif 000013
【図１０】
2012019300.tif 000014