(57)【要約】【課題】異なるメタデータ規格内におけるそれぞれのプロパティを、ユーザが容易に比較することができるようにする。【解決手段】複数のメタデータ規格のメタデータが記憶されている画像データから、前記メタデータとしてのプロパティ情報を取得する取得手段と、前記取得手段により取得された複数のメタデータ規格のプロパティ情報を、前記プロパティ情報の項目に対応付けて同一画面上で表示する表示処理手段とを有することを特徴とする。【選択図】図６
2010097441.tif 000002
【特許請求の範囲】
【請求項１】
複数のメタデータ規格のメタデータが記憶されている画像データから、前記メタデータとしてのプロパティ情報を取得する取得手段と、
前記取得手段により取得された複数のメタデータ規格のプロパティ情報を、前記プロパティ情報の項目に対応付けて同一画面上で表示する表示処理手段とを有することを特徴とする情報処理装置。
【請求項２】
複数のメタデータ規格におけるプロパティ情報の項目と前記プロパティ情報の項目に対応する識別情報とが関連付けて記憶されたメタデータテーブルに基づいて、前記取得手段により取得されたプロパティ情報の項目に対応する識別情報を判定する判定手段と、
前記判定手段により判定された識別情報と前記取得手段により取得されたプロパティ情報とを関連付けて、前記複数のメタデータ規格ごとに保持する保持手段とを更に有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記メタデータテーブルには、前記識別情報と表示フォーマット情報とが更に関連付けて記憶され、
前記メタデータテーブルに基づいて、前記識別情報に対応する表示フォーマット情報を取得するフォーマット情報取得手段を更に有し、
前記保持手段は、前記フォーマット情報取得手段により取得された表示フォーマット情報に基づいて、前記プロパティ情報の表示フォーマットを変換して保持することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記メタデータテーブルには、前記プロパティ情報の項目が関連度合いの高い項目ごと、種類に分けて記憶され、
前記表示処理手段は、前記複数のメタデータ規格のプロパティ情報を前記種類ごとに、互いに近接して表示することを特徴とする請求項２又は３に記載の情報処理装置。
【請求項５】
前記複数のメタデータ規格のプロパティ情報が同一項目間で相違するか否かを判定する相違判定手段を更に有し、
前記表示処理手段は、前記相違判定手段により少なくとも１つ以上のプロパティ情報が他のプロパティ情報と相違すると判定された場合、プロパティ情報が相違していることを示す識別表示を行うことを特徴とする請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項６】
前記複数のメタデータ規格のプロパティ情報が同一項目間で相違するか否かを判定する相違判定手段を更に有し、
前記表示処理手段は、前記相違判定手段により少なくとも１つ以上のプロパティ情報が他のプロパティ情報と相違すると判定された場合、相違しているプロパティ情報を優先して表示することを特徴とする請求項１乃至４の何れか１項に記載の情報処理装置。
【請求項７】
ユーザによる切り替え操作を検出する検出手段を更に有し、
前記検出手段により切り替え操作を検出した場合、
前記表示処理手段は、プロパティ情報が相違していることを示す識別表示を行う画面と相違しているプロパティ情報を優先して表示する画面とを相互に切り替えて表示することを特徴とする請求項５又は６に記載の情報処理装置。
【請求項８】
前記表示処理手段は、プロパティ情報が文字コードである場合に、前記文字コードを文字列に変換して表示することを特徴とする請求項１乃至７の何れか１項に記載の情報処理装置。
【請求項９】
前記表示処理手段は、前記プロパティ情報の項目が画像エリアに関する場合、前記プロパティ情報として縮小画像を表示することを特徴とする請求項１乃至７の何れか１項に記載の情報処理装置。
【請求項１０】
前記取得手段によりプロパティ情報を取得することができなかった場合、
前記表示処理手段は、プロパティ情報を取得することができなかったことを示す表示を行うことを特徴とする請求項１乃至９の何れか１項に記載の情報処理装置。
【請求項１１】
前記表示処理手段において表示されたプロパティ情報に対するユーザ入力を検出する入力検出手段と、
前記入力検出手段により入力された情報に基づいて、前記画像データのプロパティ情報を書き換える書換手段とを更に有することを特徴とする請求項１乃至１０の何れか１項に記載の情報処理装置。
【請求項１２】
複数のメタデータ規格のメタデータが記憶されている画像データから、前記メタデータとしてのプロパティ情報を取得する取得ステップと、
前記取得ステップにより取得された複数のメタデータ規格のプロパティ情報を、前記プロパティ情報の項目に対応付けて同一画面上で表示する表示処理ステップとを有することを特徴とする情報処理方法。
【請求項１３】
複数のメタデータ規格のメタデータが記憶されている画像データから、前記メタデータとしてのプロパティ情報を取得する取得ステップと、
前記取得ステップにより取得された複数のメタデータ規格のプロパティ情報を、前記プロパティ情報の項目に対応付けて同一画面上で表示する表示処理ステップとをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに関連付けて記憶されているメタデータを処理する情報処理装置、情報処理方法及びプログラムに関するものである。
【背景技術】
【０００２】
近年、デジタルカメラを使用して画像を撮影することが多くなっている。このようなデジタルカメラの多くは、撮影した画像をＪＰＥＧファイルとして保存した場合、画像データと共に、画像情報を記述するためのＥｘｉｆメタデータを自動的に付加する。
また、Ｅｘｉｆメタデータの規格に加えて、写真画像配信等で利用されている、キャプション、キーワード、撮影者情報等のプロパティを備えたＩＩＭ、ＩＰＣＴメタデータ規格のメタデータを有する画像ファイルも普及している。更には、ファイルフォーマットを問わないＸＭＰメタデータ規格のメタデータを有する画像ファイルも多くなっている。このＸＭＰメタデータ規格内には、Ｅｘｉｆメタデータ規格及びＩＰＣＴメタデータ規格が備える全てのプロパティを保持できる上に、アプリケーション固有のプロパティを備えることが可能である。
【０００３】
一方、画像データを処理するアプリケーションでは、Ｅｘｉｆメタデータ、ＩＰＣＴメタデータ及びＸＭＰメタデータの何れか一つにしか対応できない等、メタデータ規格の取り扱いが異なっている。例えば、いくつかのアプリケーションでは、画像ファイルに存在する１つのメタデータ規格しか対応していない。
通常、画像ファイルは、単一のメタデータ規格を有している。しかし、一つの画像ファイルを複数のアプリケーションで、画像編集を繰り返すと、一つの画像ファイル内にＥｘｉｆメタデータ、ＩＰＣＴメタデータ及びＸＭＰメタデータの複数のメタデータ規格を有する画像ファイルが存在することがある。これらのメタデータ規格内には、相互に重複しているプロパティが存在するため、単一のメタデータ規格を更新するときに、不整合が生じる可能性がある。
【０００４】
メタデータ規格内の同一項目のプロパティの不整合は、複数のメタデータ規格を利用することができるアプリケーションを用いた場合、問題になる。すなわち、アプリケーションでは、異なるメタデータ規格において、同一項目のプロパティの不整合が存在した場合に、どちらのプロパティを参照すればよいかを判断することができないという問題が生じる。
【０００５】
この問題に対して、例えばメタデータ規格内のプロパティを一覧表示し、異なるメタデータ規格内の同一項目のプロパティが不整合の場合、ユーザに通知するようなアプリケーションがある。また、特許文献１には、同一項目のメタデータの競合を調停する画像処理技術が開示されている。
【０００６】
【特許文献１】特開２００６−２１１６８６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、上述したアプリケーションでは、複数の異なるメタデータ規格の同一項目のプロパティに不整合が生じた場合に、メタデータ規格内に登録されている数多くのプロパティを一覧表示するため、画面上に表示しきれない。したがって、ユーザは、スクロールして目的とするプロパティを探さなければならない。このため、異なるメタデータ規格内に同一項目のプロパティが存在する場合にも、ユーザが同一のプロパティに同期が取れているのかを確認するのに、時間がかかるという問題が生じる。また、特許文献１でも、メタデータとしてのプロパティを容易に比較するための解決が図られていない。
【０００８】
本発明は、上述したような問題点に鑑みてなされたものであり、異なるメタデータ規格内におけるプロパティを、ユーザが容易に比較することができるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
本発明の情報処理装置は、複数のメタデータ規格のメタデータが記憶されている画像データから、前記メタデータとしてのプロパティ情報を取得する取得手段と、前記取得手段により取得された複数のメタデータ規格のプロパティ情報を、前記プロパティ情報の項目に対応付けて同一画面上で表示する表示処理手段とを有することを特徴とする。
本発明の情報処理方法は、複数のメタデータ規格のメタデータが記憶されている画像データから、前記メタデータとしてのプロパティ情報を取得する取得ステップと、前記取得ステップにより取得された複数のメタデータ規格のプロパティ情報を、前記プロパティ情報の項目に対応付けて同一画面上で表示する表示処理ステップとを有することを特徴とする。
本発明のプログラムは、複数のメタデータ規格のメタデータが記憶されている画像データから、前記メタデータとしてのプロパティ情報を取得する取得ステップと、前記取得ステップにより取得された複数のメタデータ規格のプロパティ情報を、前記プロパティ情報の項目に対応付けて同一画面上で表示する表示処理ステップとをコンピュータに実行させるためのプログラムである。
【発明の効果】
【００１０】
本発明によれば、異なるメタデータ規格が複数登録されている画像データにおいて、プロパティを容易に比較することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明を実施するための最良の形態を図面に基づいて、説明する。
（第１の実施形態）
本実施形態は、Ｅｘｉｆメタデータ、ＩＰＣＴメタデータ、ＸＭＰメタデータの３つの異なるメタデータ規格が登録されているＪＰＥＧ画像ファイル（画像データ）を例に説明する。以下では、画像ファイルから、各メタデータ規格内のプロパティ（プロパティデータ）を読み込み、画像ファイルに記憶されている全プロパティを表示する情報処理装置について説明する。
【００１２】
ここで、Ｅｘｉｆメタデータには、デジタル写真に対して、デジタル写真を撮影したカメラ、写真が撮影された日付等に関する情報を備える。
また、ＩＰＣＴメタデータには、出版で使用される画像に対して、出版に関連するキャプション、キーワード、お気に入り度等に関する情報を備える。
また、ＸＭＰメタデータには、タイトル、検索可能なキーワード、メタデータ作成者及び著作権情報等に関する情報を備える。また、ＸＭＰメタデータは、Ｅｘｉｆメタデータ及びＩＰＣＴメタデータ内の全てのプロパティと他のメタデータに含まれない固有のプロパティとを含む複数のプロパティとを備えるＸＭＬ形式のメタデータ規格である。
【００１３】
本実施形態では、起動時に指定されたフォルダ内の画像ファイルの一覧を表示し、ユーザ操作によって選択された画像ファイルを処理対象画像とする。なお、本実施形態では、起動時にフォルダが選択されている構成とするが、起動中にユーザがフォルダを選択するように構成してもよい。また、本実施形態では、起動中にユーザ選択によって、処理対象画像を設定しているが、起動時に、処理対象画像が設定されているような構成であってもよい。
【００１４】
図１は、第１の実施形態に係る情報処理装置の構成を概略的に示すブロック図である。なお、本実施形態では、情報処理装置として画像処理装置を取り上げて説明する。
図１に示すように、画像処理装置２０は、演算処理装置（ＣＰＵ）１０、ハードディスク（ＨＤ）１１、メモリ１２、ネットワーク接続部１３、ディスプレイ１４、スピーカ１５、操作部１６、記録媒体ドライブ１７を含んで構成されている。また、各構成は、内部バス１９により相互に接続されている。
【００１５】
ＣＰＵ１０は、画像処理装置２０全体を制御する。ハードディスク１１は、プログラムや画像ファイル等のデジタルデータを記録する。本実施形態のハードディスク１１には、画像処理プログラムがＣＰＵ１０に読み取り可能なプログラムコードとして記録されている。ＣＰＵ１０は、このプログラムコードを実行することにより、後述するフローチャートの処理を実現する。
【００１６】
メモリ１２は、プログラムコード等を記憶する記憶部である。ネットワーク接続部１３は、ネットワークを介して画像処理装置２０を外部装置に接続する。ディスプレイ１４は、ＣＲＴディスプレイや液晶パネル等の表示部である。スピーカ１５は、オーディオ出力用である。操作部１６は、キーボードやマウス等であり、ユーザ操作によりＣＰＵ１０に対して指示を行う機器である。記録媒体ドライブ１７は、外部記録媒体１８を読み込むためのドライブである。外部記録媒体１８は、例えばＣＤ−ＲＯＭやＤＶＤ等である。
【００１７】
なお、本実施形態では、ハードディスク１１に画像ファイル及びプログラムが記録されている場合について説明する。しかし、ＣＤ−ＲＯＭやＤＶＤ等の外部記録媒体１８に画像ファイルやプログラムを記録させて、記録媒体ドライブ１７を介してＣＰＵ１０に実行させる形態であってもよい。また、ネットワーク上に画像ファイル及びプログラムが記録されていて、ネットワーク接続部１３を介してＣＰＵ１０に実行させる形態であってもよい。
【００１８】
次に、画像処理装置２０が処理対象画像のメタデータを処理する動作について、図２を参照して説明する。図２は、画像処理装置２０の動作処理を示すフローチャートである。図２に示すフローチャートは、画像処理装置２０のＣＰＵ１０が画像処理プログラムを実行することにより実現する。
ここで、本実施形態に係る画像処理装置２０は、起動時に画像ファイルの存在するフォルダパスを引数として実行する。
【００１９】
なお、画像処理装置２０は、図２に示すフローチャートの動作処理において、図３に示すメタデータテーブル３０を使用する。メタデータテーブル３０は、複数のメタデータ規格ごとにプロパティ（プロパティデータ）の示す項目、詳しくはプロパティ識別子が記憶されたテーブルである。メタデータテーブル３０には、プロパティを認識する“ＩＤ”３１、プロパティの種別を認識する“種類”３２、プロパティの項目名を認識する“項目名”３３、プロパティを表示する際に使用する“表示フォーマット”３４を有している。また、メタデータテーブル３０には、メタデータ規格の識別子が設定されている。具体的には、メタデータ規格１の識別子として“ＪＰＥＧＥｘｉｆ”メタデータ３５、メタデータ規格２の識別子として“ＩＰＣＴ”メタデータ３６、メタデータ規格３の識別子として“ＸＭＰ”メタデータ３７の３つのメタデータ規格が設定されている。また、各メタデータ規格の各項目には、プロパティ識別子が設定されている。
【００２０】
“ＩＤ”３１は、プロパティＩＤである。プロパティＩＤは、識別情報であり、複数のメタデータ規格のプロパティ１項目ごとに数字が付されている。“種類”３２は、多数のプロパティを分類するための欄である。この“種類”３２の欄内に同じ文字列を設定した場合、欄内は、同類プロパティと判断される。
“項目名”３３は、同類プロパティ内において、複数の関連度合いを設定したい場合に、“種類”３２を複数に分けたものである。また、“表示フォーマット”３４は、表示フォーマット情報の一例であり、表示するプロパティの表示形式を示すものである。表示形式を揃えたい場合、“表示フォーマット”３４欄を同一にすることにより実現できる。このように、メタデータテーブル３０には、“ＩＤ”３１に“表示フォーマット”３４及び複数のメタデータ規格間におけるプロパティ識別子が関連付けて記憶されている。
【００２１】
図２に示すフローチャートにおいて、ステップＳ１０では、ＣＰＵ１０は、ディスプレイ１４に初期画面である画像選択画面を表示して、ユーザの入力を待つ。ここで、画像選択画面の一例について図４を参照して説明する。図４に示すように、画像選択画面１００は、終了ボタン１１０、画像選択領域１２０、メタデータ表示領域１３０から構成されている。画像選択領域１２０には、ＣＰＵ１０によりメタデータとしてのプロパティデータを取得する対象となる画像形式の画像ファイルの一覧が表示される。ユーザは、操作部１６を介して画像選択領域１２０の中から対象の画像ファイルを決定する。メタデータ表示領域１３０は、現在処理中の画像ファイルに登録されているメタデータとしての全プロパティを表示する領域である。
【００２２】
次に、ステップＳ２０において、ＣＰＵ１０は、画像選択画面１００から画像選択領域１２０内の画像ファイルがクリック（選択）されたか否かを判定する。クリックされた場合、ステップＳ３０に処理を進める。クリックされない場合、ステップＳ１３０に処理を進める。ステップＳ１３０では、ＣＰＵ１０は、終了ボタン１１０がクリックされたか否かを判定し、終了ボタン１１０がクリックされた場合、画像処理プログラムを終了する。終了ボタン１１０がクリックされない場合、ステップＳ２０に処理を戻す。なお、ステップＳ２０において、ユーザ操作により画像選択領域１２０内の何れかの画像ファイルがクリックされた場合、ＣＰＵ１０は、クリックされた画像ファイルを選択状態にする。
【００２３】
次に、ステップＳ３０では、ＣＰＵ１０は、“ファイルデータ規格Ｎｕｍｂｅｒ”に「０」を代入する。次に、ステップＳ４０では、ＣＰＵ１０は、“ファイルデータ規格Ｎｕｍｂｅｒ”に「１」を加算する。次に、ステップＳ５０では、ＣＰＵ１０は、選択された画像ファイルから“ファイルデータ規格Ｎｕｍｂｅｒ”番目に位置するデータ規格を判定する。更に、ＣＰＵ１０は、“ファイルデータ規格”に判定したデータ規格の識別子を代入する。
次に、ステップＳ６０において、ＣＰＵ１０は、“ファイルデータ規格”が存在するか否かを判定する。ここで、“ファイルデータ規格”が存在する場合、ステップＳ８０に処理を進める。
【００２４】
ステップＳ８０では、ＣＰＵ１０は、図３に示すメタデータテーブル３０内から１つ目の「規格１」に該当するメタデータ規格の識別子を取得し、“テーブルメタデータ規格”に代入する。次に、ステップＳ１００では、ＣＰＵ１０は、ステップＳ５０で判定した“ファイルデータ規格”識別子とステップＳ８０でメタデータテーブル３０から取得した“テーブルメタデータ規格”識別子とが同一であるか否かを判定する。両方の識別子が同一の場合、同一のメタデータ規格であると判定して、ステップＳ９０に処理を進める。
【００２５】
ステップＳ９０では、ＣＰＵ１０は、後述する図７のフローチャートに示す［メタデータテーブルとの照合］処理に移行する。次に、ステップＳ４０に戻り、ＣＰＵ１０は、“ファイルデータ規格Ｎｕｍｂｅｒ”に「１」を加算する。また、ステップＳ５０及びステップＳ６０において、ＣＰＵ１０は、画像ファイル内の“ファイルデータ規格Ｎｕｍｂｅｒ”に位置するデータ規格が存在するか否かを判定する。ステップＳ６０にて、データ規格が存在する間、ＣＰＵ１０は、画像ファイル内に登録されているデータ規格の“ファイルデータ規格”識別子とメタデータテーブル３０内に登録されている“テーブルメタデータ規格”識別子との同一判定を繰り返す。
【００２６】
ステップＳ１００において、ＣＰＵ１０は、“ファイルデータ規格”と“テーブルメタデータ規格”とが異なると判定した場合、ステップＳ１１０に処理を進める。ステップＳ１１０では、ＣＰＵ１０は、“テーブルメタデータ規格”識別子が、図３に示すメタデータテーブル３０に登録されているメタデータ規格の最終項目の識別子か否かを判定する。最終項目ではない場合、ステップＳ１２０に処理を進める。ステップＳ１２０では、ＣＰＵ１０は、次の“テーブルメタデータ規格”識別子を取得し、ステップＳ１００に処理を戻す。ステップＳ１００では、ＣＰＵ１０は、“ファイルデータ規格”識別子と次の“テーブルメタデータ規格”識別子とが同一であるか否かを判定する。
【００２７】
ステップＳ１１０において、“テーブルメタデータ規格”が最終項目の場合、ＣＰＵ１０は、“ファイルデータ規格”と一致するものがないと判断し、ステップＳ４０において、次の画像ファイル内のデータ規格を判定する処理に進める。
また、ステップＳ６０において、画像ファイル内の全データ規格の処理が終了するか、画像ファイル内にデータ規格が存在しないと判定した場合、ステップＳ７０に処理を進める。ステップＳ７０では、ＣＰＵ１０は、後述する図９のフローチャートに示す［メタデータ表示］処理に移行する。［メタデータ表示］処理が終了した後、ステップＳ１３０において、ＣＰＵ１０は、終了ボタン１１０がクリックされたか否かを判定する。終了ボタン１１０がクリックされた場合、画像処理プログラムを終了する。
【００２８】
次に、ユーザ操作により、図４に示す画像選択画面１００の画像選択領域１２０内の上から２つ目のＪＰＥＧ画像ファイルがクリックされた場合の図２に示すフローチャートの動作処理について具体的に説明する。ここで、画像選択領域１２０内の上から２つ目のＪＰＥＧ画像ファイルは、図５に示すように、複数のデータ規格を有している。
【００２９】
図５に示す画像ファイル１４０は、選択された画像ファイル内のメタデータ規格の構成を示すものである。画像ファイル１４０は、Ｅｘｉｆメタデータ規格の保存部分１５０と、画像ファイルの実データの保存部分１６０と、ＸＭＰメタデータ規格の保存部分１７０と、ＩＰＣＴメタデータ規格の保存部分１８０とから構成されている。
Ｅｘｉｆメタデータ規格の保存部分１５０には、「ＤａｔａＴｉｍｅ」「ＤａｔａＴｉｍｅＯｒｉｇｉｎａｌ」「Ａｒｔｉｓｔ」「Ｃｏｐｙｒｉｇｈｔ」の４つのプロパティ識別子を保持している。また、「ＤａｔａＴｉｍｅ」のプロパティ識別子には、「２００６／１２／２４  １２：００：００」のプロパティデータが記憶されている。同様に他のプロパティ識別子にも、プロパティデータが記憶されている。
【００３０】
また、ＸＭＰメタデータ規格の保存部分１７０には、「ＸＭＰ：ＭｏｄｉｆｙＤａｔｅ」「ｔｉｆｆ：ＤａｔａＴｉｍｅＯｒｉｇｉｎａｌ」「ＸＭＰ：ＭｅｔａｄａｔａＤａｔｅ」「ＩＰＣＴ：Ｃｒｅａｔｏｒ」「ＸＭＰＲｉｇｈｔｓ：Ｏｗｎｅｒ」の５つのプロパティ識別子を保持している。また、「ＸＭＰ：ＭｏｄｉｆｙＤａｔｅ」のプロパティ識別子には、「２００７／１１／２４Ｔ０９：１５：００＋０９：００」のプロパティデータが記憶されている。同様に他のプロパティ識別子にも、プロパティデータが記憶されている。
また、ＩＰＣＴメタデータ規格の保存部分１８０には、「ＤａｔｅＣｒｅａｔｅｄ」「Ｔｉｔｌｅ」「Ｃｒｅａｔｅｒ」「ＣｏｐｙｒｉｇｈｔＮｏｔｉｃｅ」の４つのプロパティ識別子を保持している。また、「ＤａｔｅＣｒｅａｔｅｄ」のプロパティ識別子には、「２００６／１２／２４  １２：００：００」のプロパティデータが記憶されている。同様に他のプロパティ識別子にも、プロパティデータが記憶されている。なお、上述したプロパティデータは、プロパティ情報の一例に対応する。
【００３１】
以下、図２に示すフローチャートの処理について具体的に説明する。なお、図２に示すフローチャートの主体は、画像処理装置２０のＣＰＵ１０であり、以下では省略して説明する。
まず、ステップＳ２０において、図５に示すメタデータ規格を有する画像ファイルが選択されたと判定すると、ステップＳ３０に処理を進める。その後、ステップＳ４０において、“ファイルデータ規格Ｎｕｍｂｅｒ”に「１」を加算する。
次に、ステップＳ５０において、画像ファイル内の“ファイルデータ規格Ｎｕｍｂｅｒ”「１」に位置するデータ規格として、「ＪＰＥＧＥｘｉｆ」を判定し、“ファイルデータ規格”に「ＪＰＥＧＥｘｉｆ」識別子を代入する。
次に、ステップＳ６０において、“ファイルデータ規格”が存在するので、ステップＳ８０に処理を進める。ステップＳ８０において、図３に示すメタデータテーブル３０の１つ目の「規格１」に該当するメタデータ規格の識別子「ＪＰＥＧＥｘｉｆ」を“テーブルメタデータ規格”に代入する。
【００３２】
次に、ステップＳ１００において、“ファイルデータ規格”の「ＪＰＥＧＥｘｉｆ」と“テーブルメタデータ規格”の「ＪＰＥＧＥｘｉｆ」とを比較して、メタデータ規格が同一であるので、ステップＳ９０に処理を進める。ステップＳ９０において、［メタデータテーブルとの照合］処理が終了した後、ステップＳ４０において、“ファイルデータ規格Ｎｕｍｂｅｒ”に「１」を加算する。
次に、ステップＳ５０において、ファイル内の“ファイルデータ規格Ｎｕｍｂｅｒ”「２」に位置するデータ規格として、「ＪＰＥＧ画像データ」を判定し、“ファイルデータ規格”に「ＪＰＥＧ画像データ」識別子を代入する。
次に、ステップＳ６０において、“ファイルデータ規格”が存在するので、ステップＳ８０に処理を進める。ステップＳ８０において、図３に示すメタデータテーブル３０の１つ目の「規格１」に該当するメタデータ規格の識別子「ＪＰＥＧＥｘｉｆ」を取得し、“テーブルメタデータ規格”に代入する。
【００３３】
次に、ステップＳ１００において、“ファイルデータ規格”の「ＪＰＥＧ画像データ」と“テーブルメタデータ規格”の「ＪＰＥＧＥｘｉｆ」とを比較して、メタデータ規格が異なるので、ステップＳ１１０に処理を進める。ステップＳ１１０において、図３に示すメタデータテーブル３０から“テーブルメタデータ規格”の「ＪＰＥＧＥｘｉｆ」が、最終のメタデータ規格の識別子ではないので、ステップＳ１２０に処理を進める。
ステップＳ１２０において、メタデータテーブル３０の２つ目の「規格２」に該当するメタデータ規格の識別子「ＩＰＣＴ」を取得し、“テーブルメタデータ規格”に代入する。
【００３４】
次に、ステップＳ１００において、“ファイルデータ規格”の「ＪＰＥＧ画像データ」と“テーブルメタデータ規格”の「ＩＰＣＴ」とを比較して、メタデータ規格が異なるので、ステップＳ１１０に処理を進める。ステップＳ１１０において、図３に示すメタデータテーブル３０から“テーブルメタデータ規格”の「ＩＰＣＴ」が、最終のメタデータ規格の識別子ではないので、ステップＳ１２０に処理を進める。
ステップＳ１２０において、メタデータテーブル３０の３つ目の「規格３」に該当するメタデータ規格の識別子「ＸＭＰ」を取得し、“テーブルメタデータ規格”に代入する。
次に、ステップＳ１００において、“ファイルデータ規格”の「ＪＰＥＧ画像データ」と“テーブルメタデータ規格”の「ＸＭＰ」とを比較して、メタデータ規格が異なるので、ステップＳ１１０に処理を進める。ステップＳ１１０において、図３に示すメタデータテーブル３０から“テーブルメタデータ規格”の「ＸＭＰ」が、最終のメタデータ規格の識別子と判定する。したがって、“ファイルデータ規格”「ＪＰＥＧ画像データ」と“テーブルメタデータ規格”との判定処理を終了し、ステップＳ４０に処理を戻す。
【００３５】
その後、ステップＳ６０において、画像ファイル内のデータ規格が存在しなくなるまで上述した処理を繰り返す。その後、ステップＳ９０において、図７のフローチャートに示す［メタデータテーブルとの照合］処理を実行した“ファイルデータ規格”識別子は、「ＪＰＥＧＥｘｉｆ」「ＩＰＣＴ」「ＸＭＰ」となる。その後、ステップＳ７０において、図９のフローチャートに示す［メタデータ表示］処理が終了すると、図６に示すようなＵＩ画面をディスプレイ１４に表示する。
【００３６】
ここで、図６に示す画像処理画面３００は、終了ボタン３１０、画像選択領域３２０、メタデータ表示領域３３０から構成される。画像選択領域３２０には、ユーザ操作によって選択された画像ファイル３４０が表示される。メタデータ表示領域３３０には、選択された画像ファイル３４０に登録されているメタデータの全プロパティが表示される。図６の画像処理画面３００において、黒塗りのセルは該当項目が設定不可または読取不可であることを示し、白塗りのセルは該当項目が設定可能または読取可能であるが値が未入力であることを示す。後述の図１５および図１７に示す画面においても同様である。
【００３７】
なお、図６に示す画面表示後の入力待ち中に、ユーザ操作により画像選択領域３２０内の何れかの画像ファイルがクリックされた場合、図２に示すフローチャートのステップＳ２０においてＹＥＳに進む。そして、ＣＰＵ１０は、クリックされた画像ファイルを選択状態にし、メタデータ表示領域３３０にメタデータの表示処理を行う。また、終了ボタン３１０がクリックされた場合、図２に示すフローチャートのステップＳ１３０においてＹＥＳに進み、画像処理プログラムを終了する。
【００３８】
次に、図２に示すフローチャートのステップＳ９０において呼び出される［メタデータテーブルとの照合］処理について図７に示すフローチャートを参照して説明する。図７に示すフローチャートは、画像処理装置２０のＣＰＵ１０が画像処理プログラムを実行することにより実現する。
この処理では、ＣＰＵ１０が画像ファイル内の１つのメタデータ規格に対応する複数のプロパティ識別子と図３に示すメタデータテーブル内のプロパティ識別子とを照合し、プロパティの項目を示すテーブルプロパティＩＤとプロパティデータとを取得する。また、ＣＰＵ１０は、取得したプロパティデータから、図８に示すような“メタデータ配列”２００を作成する。“メタデータ配列”２００は、画像ファイル内の“ファイルプロパティ”と図３に示すメタデータテーブル３０内の“テーブルプロパティ”との照合に成功した場合に作成される。また、“メタデータ配列”２００は、図２のステップＳ１００において、画像ファイルに登録されている“ファイルデータ規格”と図３のメタデータテーブル３０内の“テーブルメタデータ規格”とが同一と判定したメタデータ規格ごとに作成する。作成された“メタデータ配列”２００は、例えばハードディスク１１、メモリ１２等に記憶される。
【００３９】
まず、ステップＳ３００では、ＣＰＵ１０は、図２に示すフローチャートのステップＳ１００で判定した“ファイルデータ規格”識別子に対して、図８に示す“メタデータ配列”２００を作成し、初期化をする。次に、ステップＳ３１０では、ＣＰＵ１０は、“ファイルプロパティＩＤ”に「０」を代入する。次に、ステップＳ３２０では、ＣＰＵ１０は、“ファイルプロパティＩＤ”に「１」を加算する。
次に、ステップＳ３３０では、ＣＰＵ１０は、画像ファイル内の“ファイルデータ規格”から“ファイルプロパティＩＤ”番目に位置するプロパティ識別子を判定し、“ファイルプロパティ”にプロパティ識別子を代入する。次に、ステップＳ３４０では、ＣＰＵ１０は、“ファイルプロパティ”識別子が存在するか否かを判定する。存在する場合、ステップＳ３５０に処理を進める。
【００４０】
ステップＳ３５０では、ＣＰＵ１０は、“テーブルプロパティＩＤ”に「１」を代入する。次に、ステップＳ３６０では、ＣＰＵ１０は、図３に示すメタデータテーブル３０から、“テーブルプロパティＩＤ”行に位置する“ファイルデータ規格”識別子と一致した“テーブルメタデータ規格”識別子と同一列の“テーブルプロパティ”識別子を取得する。
ステップＳ３７０では、ＣＰＵ１０は、取得した“テーブルプロパティ”識別子とステップＳ３３０において取得した“ファイルプロパティ”識別子とが同一プロパティ識別子であるか否かを判定する。“テーブルプロパティ”識別子と“ファイルプロパティ”識別子とが異なる場合、ステップＳ３８０に処理を進める。
【００４１】
ステップＳ３８０では、ＣＰＵ１０は、“テーブルプロパティＩＤ”が図３に示すメタデータテーブル３０に登録されている最終のプロパティであるか否かを判定する。最終のプロパティではない場合、ステップＳ３９０に処理を進める。
ステップＳ３９０では、ＣＰＵ１０は、“テーブルプロパティＩＤ”に「１」を加算する。次に、ステップＳ３６０において、ＣＰＵ１０は、次の“テーブルプロパティＩＤ”に位置する“テーブルプロパティ”識別子を取得する。
ステップＳ３７０では、ＣＰＵ１０は、“テーブルプロパティＩＤ”が図３に示すメタデータテーブル３０に登録されている最終のプロパティでない間、“テーブルプロパティ”と“ファイルプロパティ”とが同一プロパティ識別子であるか否かの判定を繰り返す。
【００４２】
ステップＳ３８０において、“テーブルプロパティＩＤ”が図３に示すメタデータテーブル３０に登録されている最終のプロパティの場合、“テーブルプロパティ”識別子と“ファイルプロパティ”識別子との判定処理を終了する。また、ステップＳ３７０において、“テーブルプロパティ”識別子と“ファイルプロパティ”識別子とが同一と判定する場合、ステップＳ４００に処理を進める。
ステップＳ４００では、ＣＰＵ１０は、“ファイルデータ規格”に登録されている“ファイルプロパティ”識別子に相当するプロパティデータを取得し、“プロパティ値”に代入する。この処理は、取得手段の一例に対応する。
次に、ステップＳ４１０では、ＣＰＵ１０は、図３に示すメタデータテーブル３０から、“テーブルプロパティＩＤ”に位置する“表示フォーマット”を取得する。この処理はフォーマット情報取得手段の一例に対応する。
次に、ステップＳ４２０では、ＣＰＵ１０は、プロパティデータが代入された“プロパティ値”をステップＳ４１０で取得した“表示フォーマット”に基づいて変換する。この処理は、フォーマット変換手段の一例に対応する。
次に、ステップＳ４３０では、ステップＳ３００で作成した“メタデータ配列”に“テーブルプロパティＩＤ”とステップＳ４２０で“プロパティ値”を“表示フォーマット”に変換したプロパティデータとを追加する。このように、ステップＳ４３０では、テーブルプロパティＩＤとプロパティデータとを関連付けて、メタデータ配列に保持する。この処理は、保持手段の一例に対応する。
【００４３】
次に、ステップＳ３２０に処理を戻し、ＣＰＵ１０は、“ファイルプロパティＩＤ”に「１」を加算する。その後、ステップＳ３４０において、ＣＰＵ１０は、画像ファイル内の“ファイルプロパティ”が存在する間、ステップＳ３７０において、“ファイルプロパティ”識別子と“テーブルプロパティ”識別子との比較処理を繰り返す。画像ファイル内における“ファイルデータ規格”識別子に相当する“テーブルプロパティ”識別子が存在しない場合、又は認識可能な全てのプロパティ識別子の照合処理が終了した場合、［メタデータテーブルとの照合］処理を終了する。その後、図２に示すフローチャートのステップＳ９０に処理を戻し、ステップＳ４０の処理に移行する。
【００４４】
以下、図７に示すフローチャートの処理について具体的に説明する。なお、図７に示すフローチャートの主体は、画像処理装置２０のＣＰＵ１０であり、以下では省略して説明する。ここでは、図５に示す画像ファイル１４０のうち、「ＪＰＥＧＥｘｉｆ」１５０を例にして説明する。すなわち、“ファイルデータ規格”識別子が「ＪＰＥＧＥｘｉｆ」であると判定した状態において、図２に示すフローチャートのステップＳ９０で、図７に示す［メタデータテーブルとの照合］処理が呼び出された場合の処理について説明する。
【００４５】
まず、ステップＳ３００において、“ファイルデータ規格”識別子である「ＪＰＥＧＥｘｉｆ」に対応する“メタデータ配列”を作成し、初期化する。具体的には、図８に示すようなメタデータ配列「配列０［ＪＰＥＧＥｘｉｆ］」２１０を作成する。
その後、図５に示す画像ファイル１４０の“ファイルデータ規格”識別子の「ＪＰＥＧＥｘｉｆ」に相当するＪＰＥＧＥｘｉｆメタデータ規格１５０のデータを読み込む。ステップＳ３３０において、ＪＰＥＧＥｘｉｆメタデータ規格１５０内の“ファイルプロパティＩＤ”「１」番目に位置するプロパティ識別子を判定し、“ファイルプロパティ”に「ＤａｔａＴｉｍｅ」識別子を代入する。
【００４６】
その後、ステップＳ３６０において、図３に示すメタデータテーブル３０から、“テーブルプロパティＩＤ”「１」行に対応する“テーブルメタデータ規格”「ＪＰＥＧＥｘｉｆ」識別子の列から「ＤａｔａＴｉｍｅ」識別子を取得する。また、取得した「ＤａｔａＴｉｍｅ」識別子を、“テーブルプロパティ”に代入する。
次に、ステップＳ３７０において、ステップＳ３３０で取得した“ファイルプロパティ”識別子の「ＤａｔａＴｉｍｅ」とステップＳ３６０で取得した“テーブルプロパティ”識別子の「ＤａｔａＴｉｍｅ」とが同一であると判定する。したがって、ステップＳ４００に処理を進める。
【００４７】
次に、ステップＳ４００において、図５に示すＪＰＥＧＥｘｉｆメタデータ規格１５０内の“ファイルプロパティ”識別子の「ＤａｔａＴｉｍｅ」に相当するプロパティデータ「２００６／１２／２４  １２：００：００」を取得し、“プロパティ値”に代入する。
次に、ステップＳ４１０において、図３に示すメタデータテーブル３０から“テーブルプロパティＩＤ”「１」に対応する“表示フォーマット”「ＹＹＹＹ／ＭＭ／ＤＤ  ＨＨ：ＭＭ：ＳＳ」を取得する。次に、ステップＳ４２０において、ステップＳ４００で取得した“プロパティ値”「２００６／１２／２４  １２：００：００」を、ステップＳ４１０で取得した“表示フォーマット”「ＹＹＹＹ／ＭＭ／ＤＤ  ＨＨ：ＭＭ：ＳＳ」にしたがい、表示形式を変換する。次に、ステップＳ４３０において、ステップＳ３００で作成した“メタデータ配列”「配列０［ＪＰＥＧＥｘｉｆ］」に“テーブルプロパティＩＤ”「１」と“プロパティ値”「２００６／１２／２４  １２：００：００」とを追加する。
【００４８】
次に、ステップＳ３２０において、“ファイルプロパティＩＤ”に「１」を加算する。次に、ステップＳ３３０において、図５に示すＪＰＥＧＥｘｉｆメタデータ規格１５０内の“ファイルプロパティＩＤ”「２」番目に位置するプロパティ識別子を判定し、“ファイルプロパティ”に「ＤａｔａＴｉｍｅＯｒｉｇｉｎａｌ」識別子を代入する。
その後、ステップＳ３６０において、図３に示すメタデータテーブル３０から、“テーブルプロパティＩＤ”「１」行に対応する“テーブルメタデータ規格”「ＪＰＥＧＥｘｉｆ」識別子の列から「ＤａｔａＴｉｍｅ」を取得し、“テーブルプロパティ”に代入する。
次に、ステップＳ３７０において、ステップＳ３３０で取得した“ファイルプロパティ”識別子の「ＤａｔａＴｉｍｅＯｒｉｇｉｎａｌ」とステップＳ３６０で取得した“テーブルプロパティ”識別子の「ＤａｔａＴｉｍｅ」とが異なると判定する。したがって、ステップＳ３８０に処理を進める。
【００４９】
その後、ステップＳ３９０において、“テーブルプロパティＩＤ”に「１」を加算する。次に、ステップＳ３６０において、図３に示すメタデータテーブル３０から、“テーブルプロパティＩＤ”「２」行に対応する“テーブルメタデータ規格”「ＪＰＥＧＥｘｉｆ」識別子の列から「」を取得し、“テーブルプロパティ”に代入する。
次に、ステップＳ３７０では、“ファイルプロパティ”識別子の「ＤａｔａＴｉｍｅＯｒｉｇｉｎａｌ」と“テーブルプロパティ”識別子の「」とが異なると判定する。したがって、ステップＳ３８０及びステップＳ３９０に処理を進める。
このように、“ファイルプロパティ”識別子の「ＤａｔａＴｉｍｅＯｒｉｇｉｎａｌ」と次の“テーブルプロパティ”識別子との照合処理を繰り返す。
その後、“テーブルプロパティＩＤ”が「４」の場合、“テーブルプロパティ”識別子が「ＤａｔａＴｉｍｅＯｒｉｇｉｎａｌ」になる。したがって、ステップＳ３７０において“ファイルプロパティ”識別子の「ＤａｔａＴｉｍｅＯｒｉｇｉｎａｌ」と“テーブルプロパティ”識別子の「ＤａｔａＴｉｍｅＯｒｉｇｉｎａｌ」とが同一であると判定する。したがって、ステップＳ４００に処理を進める。
その後、ステップＳ４３０において、ステップＳ３００で作成した“メタデータ配列”「配列０［ＪＰＥＧＥｘｉｆ］」に“テーブルプロパティＩＤ”「４」と“プロパティ値”「２００６／１２／２４  １２：００：００」とを追加する。
【００５０】
また、図５に示す画像ファイル１４０内の「ＪＰＥＧＥｘｉｆ」１５０内の４つのプロパティ識別子の照合処理が終了すると、図８に示すような、「配列０［ＪＰＥＧＥｘｉｆ］」２１０が作成される。すなわち、「配列０［ＪＰＥＧＥｘｉｆ］」２１０には、「ＤａｔａＴｉｍｅ」、「ＤａｔａＴｉｍｅＯｒｉｇｉｎａｌ」「Ａｒｔｉｓｔ」及び「Ｃｏｐｙｒｉｇｈｔ」の“テーブルプロパティ”識別子に対応したプロパティデータが追加される。
【００５１】
また、図２に示すフローチャートのステップＳ９０では、図５に示す画像ファイル１４０内の「ＸＭＰ」１７０及び「ＩＰＣＴ」１８０のメタデータ規格についても同様に［テーブルメタデータとの照合］処理が行われる。３つのメタデータ規格それぞれに対して［テーブルメタデータとの照合］処理が終了すると、図８に示すように、「配列０［ＪＰＥＧＥｘｉｆ］」２１０、「配列１［ＸＭＰ］」２２０及び「配列２［ＩＰＣＴ］」２３０の３つのメタデータ配列が作成される。
【００５２】
次に、図２に示すフローチャートのステップＳ７０において呼び出される［メタデータ表示］処理について図９に示すフローチャートを参照して説明する。図９に示すフローチャートは、画像処理装置２０のＣＰＵ１０が画像処理プログラムを実行することにより実現する。
この処理では、ＣＰＵ１０が作成した図８に示すメタデータ配列内の“テーブルプロパティＩＤ”に基づき、図３に示すメタデータテーブル３０を参照し、画像ファイルに登録されているメタデータ規格内のプロパティデータを同一画面上に表示する。なお、本実施形態では、図３に示すメタデータテーブル３０に従い、“表示フォーマット”にＵＮＩＣＯＤＥ文字が設定されている場合について説明するが、言語等の環境に応じて、文字コードを変換してもよい。
【００５３】
まず、ステップＳ５００では、ＣＰＵ１０は、各メタデータ配列に対応する“メタデータ規格”名を画面に並べて表示する。次に、ステップＳ５１０では、ＣＰＵ１０は、“プロパティＩＤ”に「１」を代入する。次に、ステップＳ５２０では、ＣＰＵ１０は、“メタデータ配列番号”に「０」を代入する。
次に、ステップＳ５３０では、ＣＰＵ１０は、“メタデータ配列番号”と“メタデータ配列総数”とを比較する。ここで、“メタデータ配列総数”が“メタデータ配列番号”より大きい場合、ステップＳ５４０に処理を進める。
【００５４】
ステップＳ５４０では、ＣＰＵ１０は、“配列ＩＤ”に「０」を代入する。
次に、ステップＳ５５０では、ＣＰＵ１０は、“メタデータ配列番号”に位置する“メタデータ配列”から“配列ＩＤ”に位置する“テーブルプロパティＩＤ”を取得する。
次に、ステップＳ５６０では、ＣＰＵ１０は、“テーブルプロパティＩＤ”と“プロパティＩＤ”とが同一か否かを判定する。同一の場合、ステップＳ５７０に処理を進める。
ステップＳ５７０では、ＣＰＵ１０は、“メタデータ配列番号”に位置する“メタデータ配列”から“配列ＩＤ”番目の“プロパティ値”を取得する。次に、ステップＳ５８０では、ＣＰＵ１０は、“メタデータ配列番号”と“プロパティ値”とをメモリ１２等に保持する。次に、ステップＳ５９０では、ＣＰＵ１０は、“配列ＩＤ”がメタデータ配列内の最終項目か否かを判定する。最終項目でない場合、ステップＳ６００に処理を進める。
【００５５】
ステップＳ６００では、ＣＰＵ１０は、“配列ＩＤ”に「１」を加算する。
次に、ステップＳ５５０において、ＣＰＵ１０は、次の“配列ＩＤ”に位置する“テーブルプロパティＩＤ”を取得する。次に、ステップＳ５６０において、ＣＰＵ１０は、取得した“テーブルプロパティＩＤ”と“プロパティＩＤ”とを比較する。
なお、ステップＳ５９０において、“配列ＩＤ”がメタデータ配列内の最終項目の場合、ステップＳ６１０に処理を進める。ステップＳ６１０では、ＣＰＵ１０は、“メタデータ配列番号”に「１」を加算する。
【００５６】
次に、ステップＳ５３０において、ＣＰＵ１０は、“メタデータ配列番号”と“メタデータ配列総数”とを比較する。ここで、“メタデータ配列総数”と“メタデータ配列番号”とが同一の場合、ステップＳ６２０に処理を進める。
ステップＳ６２０では、ＣＰＵ１０は、図３に示すメタデータテーブル３０から“プロパティＩＤ”と同値の“テーブルプロパティＩＤ”に位置する“種類”３１、“項目名”３２の文字列を取得する。
次に、ステップＳ６３０では、ＣＰＵ１０は、ステップＳ６２０で取得した文字列を“プロパティＩＤ”に対応する画面の表示欄に表示する。次に、ステップＳ６４０では、ＣＰＵ１０は、“プロパティＩＤ”に対応する、ステップＳ５８０で保持した“メタデータ配列番号”と対応する“メタデータ規格”名の位置に“プロパティ値”をそれぞれ並べて表示する。
【００５７】
次に、ステップＳ６５０において、ＣＰＵ１０は、図３に示すメタデータテーブル３０に基づいて“プロパティＩＤ”と同値の“テーブルプロパティＩＤ”が最終項目か否かを判定する。最終項目ではない場合、ステップＳ６６０に処理を進める。ステップＳ６６０において、ＣＰＵ１０は、“プロパティＩＤ”に「１」を加算する。このようにして、全メタデータ配列に対して、“プロパティＩＤ”に対応する“テーブルプロパティＩＤ”があるか否かを判定して、存在する場合、ＣＰＵ１０は、“プロパティ値”の表示を繰り返す。
【００５８】
以下、図９に示すフローチャートの処理について具体的に説明する。なお、図９に示すフローチャートの主体は、画像処理装置２０のＣＰＵ１０であり、以下では省略して説明する。ここでは、図８に示す「配列０［ＪＰＥＧＥｘｉｆ］」２１０、「配列１［ＸＭＰ］」２２０、「配列２［ＩＰＣＴ］」２３０の３つのメタデータ配列を例にして説明する。すなわち、図２に示すフローチャートにおいて、図８に示すメタデータ配列が作成された状態において、ステップＳ７０で、図９に示す［メタデータ表示］処理が呼び出された場合の処理について説明する。
【００５９】
まず、ステップＳ５００において、メタデータ配列の“メタデータ規格”名である「ＪＰＥＧＥｘｉｆ」、「ＸＭＰ」及び「ＩＰＣＴ」を３つ並べて表示する。その後、図８に示す全メタデータ配列内に“プロパティＩＤ”「１」に対応する”テーブルプロパティＩＤ”が登録されているかを確認する処理に移行する。ステップＳ５５０において、図８に示す“メタデータ配列番号”「０」であるメタデータ配列「配列０［ＪＰＥＧＥｘｉｆ］」２１０から“配列ＩＤ”「０」に位置する“テーブルプロパティＩＤ”「１」を取得する。
次に、ステップＳ５６０において、“テーブルプロパティＩＤ”「１」と“プロパティＩＤ”「１」とが同一であると判定するので、ステップＳ５７０に処理を進める。
ステップＳ５７０において、“配列ＩＤ”「０」に位置する“プロパティ値”「２００６／１２／２４  １２：００：００」を取得する。次に、ステップＳ５８０において、“メタデータ配列番号”「０」と“プロパティ値”「２００６／１２／２４  １２：００：００」とを保持する。その後、ステップＳ６００において、“配列ＩＤ”に「１」を加算する。
【００６０】
なお、ステップＳ５９０において、メタデータ配列内の全プロパティについて、確認が終了した場合、ステップＳ６１０に処理を進める。ステップＳ６１０において、“メタデータ配列番号”に「１」を加算する。したがって、ステップＳ５３０以降では、図８に示す“メタデータ配列番号”「１」である「配列１［ＸＭＰ］」２２０内について“プロパティＩＤ”と同値の“テーブルプロパティＩＤ”の“プロパティ値”を取得する処理を行う。ここで、“プロパティＩＤ”「１」に対応する図８に示す全メタデータ配列について上述した処理が終了した場合に保持されているプロパティ値は以下の３項目である。
第１に“メタデータ配列番号”「０」番目に位置する“プロパティ値”は「２００６／１２／２４  １２：００：００」である。
第２に“メタデータ配列番号”「１」番目に位置する“プロパティ値”は「２００７／１１／２４  ０９：１５：００」である。
第３に、“メタデータ配列番号”「２」番目に位置する“プロパティ値”は「２００６／１２／２４  １２：００：００」である。
【００６１】
その後、ステップＳ５３０において、“メタデータ配列番号”と“メタデータ配列総数”とが同一値であると判定するので、ステップＳ６２０に処理を進める。
ステップＳ６２０において、図３に示すメタデータテーブル３０より、“プロパティＩＤ”「１」に基づいて“種類”として文字列「日時」及び“項目名”として文字列「更新日時」を取得する。次に、ステップＳ６３０において、取得した文字列「日時」及び「更新日時」を並べて表示する。更に、ステップＳ６４０において、上述した３項目の“プロパティ値”を並べて表示する。
【００６２】
次に、ステップＳ６５０において、“プロパティＩＤ”「１」がメタデータテーブル３０内における最終項目ではないと判定するので、ステップＳ６６０に処理を進める。
ステップＳ６６０において、“プロパティＩＤ”に「１」を加算して、図８に示すメタデータ配列内から“プロパティＩＤ”「２」に該当する“プロパティ値”を検索する。
その後、全ての“プロパティ値”を表示すると、ステップＳ６５０からＹＥＳに進み、［メタデータ表示］処理を終了する。ここで、［メタデータ表示］処理が終了したときに表示される画像選択時のＵＩ画面について図６を参照して説明する。図６に示すように、メタデータ表示領域３３０には、種類表示欄３５０、項目名表示欄３６０、各メタデータ規格のプロパティデータの表示欄３７０、３８０、３９０が表示されている。プロパティ表示欄３７０には、“ファイルメタデータ規格”としての「ＪＰＥＧＥｘｉｆ」のプロパティデータが表示されている。また、プロパティ表示欄３８０には、“ファイルメタデータ規格”としての「ＸＭＰ」のプロパティデータが表示されている。また、プロパティ表示欄３９０には、“ファイルメタデータ規格”としての「ＩＰＣＴ」のプロパティデータが表示されている。また、メタデータ表示領域３３０では、各“種類”及び各“項目名”に対応付けられて、それぞれメタデータ規格の各プロパティデータが同一画面上に並べて表示されている。
【００６３】
なお、メタデータテーブル３０には、プロパティ識別子の項目のうち、関連度合いの高い項目ごとに“種類”に分けて記憶されている。すなわち、メタデータテーブル３０には、例えば、図３に示す“種類”３２の「日時」には、“項目名”として、関連度合いの高い「更新日時」「更新日時」及び「メタデータ作成日時」に分かれ、互いに近接したプロパティＩＤが設定されて、記憶されている。したがって、図６に示すように、プロパティデータをＵＩ画面に表示するときには、関連度合いの高いプロパティデータが近接して表示される。
【００６４】
このように、本実施形態によれば、１つの画像ファイル内に複数のメタデータ規格が存在する場合であっても、メタデータ規格内に存在するプロパティを各メタデータ規格ごとに同一画面上に並べて表示する。したがって、ユーザは、メタデータ規格内に登録されている多数のプロパティについて、同一項目のプロパティの重複登録や同期が取れているかを容易に確認することができる。
【００６５】
また、本実施形態の画像処理装置は、多数のプロパティを分類するためにメタデータテーブル３０を有している。メタデータテーブル３０には、多数のプロパティを分類するための“種類”３２を有している。そして、ＣＰＵ１０は、“種類”３２内に同じ文字列を設定した場合、同類プロパティと判断した。同類プロパティ内に複数の関連度合いを設定したい場合、“種類”３２を複数に分けるようにしてもよい。また、関連度合いに優先度を設定し、優先度の高いものを集合させるように表示させてもよい。
【００６６】
また、本実施形態の画像処理装置は、プロパティの表示フォーマットを統一するために、メタデータテーブル３０内に“表示フォーマット”３４を有し、プロパティ表示をするときには、“表示フォーマット”に基づいて変換したプロパティを表示している。したがって、表示形式を揃えたいプロパティの“表示フォーマット”３４を同一にすることにより、プロパティの表示形式を統一することができる。また、文字列の表示形式を“表示フォーマット”３４にＵＮＩＣＯＤＥを指定することにより、文字コードを指定している。しかしながら、言語等の環境に応じて、文字コードを変換してもよい。
【００６７】
また、縮小画像上で、表現することができるような画像エリア等に関するプロパティは、メタデータテーブル３０の“表示フォーマット”３４に縮小画像を設定してもよい。このように設定することで、図６に示すＵＩ画面には、プロパティを縮小画像で表示することができる。
【００６８】
（第２の実施形態）
次に、第２の実施形態に係る画像処理装置について説明する。本実施形態に係る画像処理装置は、図１に示すブロック図の構成と同様であり、その説明は省略する。
本実施形態に係る画像処理装置は、図２に示すフローチャートのステップＳ７０における［メタデータ表示］処理が第１の実施形態と異なるものである。なお、ステップＳ７０における［メタデータ表示］処理以外は、第１の実施形態と同様であり、その詳細な説明は省略する。ここで、図２に示すフローチャートのステップＳ７０において実行される本実施形態に係る［メタデータ表示］処理について、図１０に示すフローチャートを参照して説明する。
【００６９】
なお、以下では、複数のメタデータ規格ごとにプロパティ（プロパティデータ）の示す項目、詳しくはプロパティ識別子が記憶されたメタデータテーブルとして、図３に示すメタデータテーブル３０を用いる。図３に示すメタデータテーブル３０は、第１の実施形態と同様であり、詳細は省略する。
また、以下では、メタデータ規格に対応する画像ファイル内の“ファイルプロパティ”と、図３に示すメタデータテーブル３０内の“テーブルプロパティ”の照合に成功した場合に作成される「メタデータ配列」として、図８に示す「メタデータ配列」を用いる。図８に示す「メタデータ配列」は第１の実施形態と同様であり、詳細は省略する。
【００７０】
まず、図１０に示すフローチャートにおいて、ステップＳ２００では、ＣＰＵ１０は、後述する図１１のフローチャートに示す［相違フラグ設定］処理を実行する。
次に、ステップＳ２０５では、ＣＰＵ１０は、“プロパティ表示切替”に「全表示」を設定する。次に、ステップＳ２１０では、ＣＰＵ１０は、“プロパティ切替表示”の設定が「全表示」であるか「相違表示」であるかを判定する。“プロパティ切替表示”の設定が「全表示」の場合、ステップＳ２１５に処理を進める。ステップＳ２１５では、ＣＰＵ１０は、後述する図１４のフローチャートに示す［プロパティ全表示］処理を実行する。また、ステップＳ２１０において、“プロパティ切替表示”の設定が「相違表示」の場合、ステップＳ２２０に処理を進める。ステップＳ２２０では、ＣＰＵ１０は、図１６のフローチャートに示す［相違プロパティ表示］処理を実行する。その後、ＣＰＵ１０は、“プロパティ表示切替”に応じて、プロパティ表示を切り替える。
【００７１】
次に、ステップＳ２２５では、ＣＰＵ１０は、プロパティ表示切替ボタンを表示して、ユーザの入力を待機する。次に、ステップＳ２３０では、ＣＰＵ１０は、ユーザ入力待ち中に“プロパティ表示切替”ボタンが押されたか否かを判定する。すなわち、ＣＰＵ１０は、ユーザ操作により表示切替操作を検出したか否か判定する。この処理は、検出手段の一例に対応する。“プロパティ表示切替”ボタンが押された場合、ステップＳ２３５に処理を進める。ステップＳ２３５では、ＣＰＵ１０は、“プロパティ表示切替”に表示切替情報を代入する。次に、ステップＳ２１０に処理を進める。ステップＳ２１０では、ＣＰＵ１０は、“プロパティ表示切替”の設定を判定する。
【００７２】
次に、図１０に示すフローチャートのステップＳ２００において呼び出される［相違フラグ設定］処理について図１１に示すフローチャートを参照して説明する。図１１に示すフローチャートは、画像処理装置２０のＣＰＵ１０が画像処理プログラムを実行することにより実現する。
この処理では、ＣＰＵ１０が図８に示すメタデータ配列に登録されている全てのメタデータ配列を確認し、所定の条件に基づいて相違フラグを設定する。また、ＣＰＵ１０は、図１１に示すフローチャートの処理を実行すると、図１３に示すような相違フラグが設定されたメタデータ配列４００を作成する。
【００７３】
まず、ステップＳ９００では、ＣＰＵ１０は、“プロパティＩＤ”に「１」を代入する。次に、ステップＳ９１０では、ＣＰＵ１０は、“相違フラグ”に「ＯＦＦ」を代入すると共に、“比較プロパティ値”に「」（未設定）を代入する。次に、ステップＳ９２０では、ＣＰＵ１０は、“メタデータ配列番号”に「０」を代入する。
次に、ステップＳ９３０では、ＣＰＵ１０は、“メタデータ配列番号”と“メタデータ配列総数”とを比較する。ここで、“メタデータ配列総数”が“メタデータ配列番号”より大きい場合、ステップＳ９４０に処理を進める。
【００７４】
ステップＳ９４０では、ＣＰＵ１０は、“配列ＩＤ”に「０」を代入する。
次に、ステップＳ９５０では、ＣＰＵ１０は、“メタデータ配列番号”に位置する“メタデータ配列”から、“配列ＩＤ”に位置する“テーブルプロパティＩＤ”と“プロパティ値”とを取得する。
次に、ステップＳ９６０では、ＣＰＵ１０は、“テーブルプロパティＩＤ”と“プロパティＩＤ”とが同一か否かを判定する。同一の場合、ステップＳ９７０に処理を進める。
【００７５】
次に、ステップＳ９８０では、ＣＰＵ１０は、“比較プロパティ値”が設定済みか否かを判定する。具体的には、“比較プロパティ値”が「」（未設定）であるか否かを判定する。“比較プロパティ値”が設定されていない場合、すなわち“比較プロパティ値”が「」（未設定）である場合、ステップＳ９９０に処理を進める。ステップＳ９９０では、ＣＰＵ１０は、“比較プロパティ値”にステップＳ９５０で取得した“プロパティ値”を代入する。
【００７６】
なお、ステップＳ９７０において、“比較プロパティ値”が設定されている場合、すなわち“比較プロパティ値”が「」（未設定）でない場合、ステップＳ９８０に処理を進める。ステップＳ９８０では、ＣＰＵ１０は、Ｓ９５０で取得した“プロパティ値”と“比較プロパティ値”とが同じ値であるか否かを判定する。このステップＳ９８０の処理は、複数のメタデータ規格のプロパティデータが同一項目間で相違するか否かを判定する処理である。この処理は、相違判定手段の一例に対応する。“比較プロパティ値”と“プロパティ値”とが同じ値である場合、ステップＳ１０００に処理を進める。
【００７７】
ステップＳ１０００では、ＣＰＵ１０は、“配列ＩＤ”がメタデータ配列内の最終項目であるか否かを判定する。最終項目でない場合、ステップＳ１０２０に処理を進める。ステップＳ１０２０では、ＣＰＵ１０は、“配列ＩＤ”に「１」を加算する。
次に、ステップＳ９５０では、次の“配列ＩＤ”に位置する“テーブルプロパティＩＤ”を取得する。次に、ステップＳ９６０では、ＣＰＵ１０は、取得した“テーブルプロパティＩＤ”と“プロパティＩＤ”とを比較する。
【００７８】
なお、ステップＳ１０００において、“配列ＩＤ”がメタデータ配列内の最終項目の場合、ステップＳ１０１０に処理を進める。ステップＳ１０１０では、ＣＰＵ１０は、“メタデータ配列番号”に「１」を加算する。次に、ステップＳ９３０以降で、ＣＰＵ１０は、次のメタデータ配列内についての“テーブルプロパティＩＤ”と“プロパティＩＤ”とを判定する処理に移行する。
また、ステップＳ９３０において、“メタデータ配列番号”と“メタデータ配列総数”とが同一の場合、ステップＳ１０４０に処理を進める。ステップＳ１０４０では、ＣＰＵ１０は、後述する図１２のフローチャートに示す［相違フラグ登録］処理に移行する。
【００７９】
また、ステップＳ９８０において、“比較プロパティ値”と“プロパティ値”とが異なると判定した場合、ステップＳ１０３０に処理を進める。ステップＳ１０３０では、ＣＰＵ１０は、“相違フラグ”を「ＯＮ」に設定して、後述する図１２のフローチャートに示す［相違フラグ登録］処理に移行する。
また、ステップＳ１０５０では、ＣＰＵ１０は、図３に示すメタデータテーブル３０に基づいて、“プロパティＩＤ”が最終項目か否かを判定する。最終項目でない場合、ステップＳ１０６０に処理を進める。ステップＳ１０６０では、ＣＰＵ１０は、“プロパティＩＤ”に「１」を加算する。その後、ＣＰＵ１０は、全メタデータ配列に対して、“プロパティＩＤ”に対応する“プロパティ値”が相違するかを確認し、“相違フラグ”の登録を繰り返す。
【００８０】
次に、図１１に示すフローチャートのステップＳ１０４０において呼び出される［相違フラグ登録］処理について図１２に示すフローチャートを参照して説明する。図１２に示すフローチャートは、画像処理装置２０のＣＰＵ１０が画像処理プログラムを実行することにより実現する。
この処理では、ＣＰＵ１０が、指定された“プロパティＩＤ”（以下では“指定プロパティＩＤ”）が登録されているメタデータ配列を検索し、図１１に示すフローチャートのステップＳ１０４０の呼び出し時に指定された“相違フラグ”を登録する。
【００８１】
まず、ステップＳ１１００では、ＣＰＵ１０は、“メタデータ配列番号”に「０」を代入する。ステップＳ１１１０では、ＣＰＵ１０は、“メタデータ配列番号”と“メタデータ配列総数”とを比較する。ここで、“メタデータ配列総数”が“メタデータ配列番号”より大きい場合、ステップＳ１１２０に処理を進める。ステップＳ１１２０では、ＣＰＵ１０は、“配列ＩＤ”に「０」を代入する。
次に、ステップＳ１１３０では、ＣＰＵは、“メタデータ配列番号”に位置する“メタデータ配列”から、“配列ＩＤ”に位置する“テーブルプロパティＩＤ”を取得する。
次に、ステップＳ１１４０では、ＣＰＵ１０は、“テーブルプロパティＩＤ”と“指定プロパティＩＤ”とが同一か否かを判定する。同一の場合、ステップＳ１１５０に処理を進める。
【００８２】
ステップＳ１１５０では、ＣＰＵ１０は、“相違フラグ”を追加して登録する。次に、ステップＳ１１６０では、ＣＰＵ１０は、“配列ＩＤ”がメタデータ配列内の最終項目か否かを判定する。最終項目でない場合、ステップＳ１１７０に処理を進める。ステップＳ１１７０では、ＣＰＵ１０は、“配列ＩＤ”に「１」を加算する。次に、ステップＳ１１３０において、ＣＰＵ１０は、次の“配列ＩＤ”に位置する“テーブルプロパティＩＤ”を取得する。ステップＳ１１４０では、ＣＰＵ１０は、取得した“テーブルプロパティＩＤ”と“指定プロパティＩＤ”とが同一か否かを判定する。
【００８３】
なお、ステップＳ１１６０において、“配列ＩＤ”がメタデータ配列内の最終項目である場合、ステップＳ１１８０に処理を進める。ステップＳ１１８０では、ＣＰＵ１０は、“メタデータ配列番号”に「１」を加算する。その後、ＣＰＵ１０は、次のメタデータ配列内に“指定プロパティＩＤ”と同一の“テーブルプロパティＩＤ”が存在するかの処理を行う。
また、ステップＳ１１１０において、“メタデータ配列番号”と“メタデータ配列総数”とが同一の場合、［相違フラグ登録］処理を終了して、図１１に示すフローチャートのステップＳ１０４０に処理を戻す。
【００８４】
以下、図１１のフローチャートに示す［相違フラグ設定］処理について具体的に説明する。なお、図１１に示すフローチャートの主体は、画像処理装置２０のＣＰＵ１０であり、以下では省略して説明する。ここでは、図８に示すメタデータ配列を例にして説明する。
【００８５】
まず、ステップＳ９００において、“プロパティＩＤ”に「１」を代入する。以降の処理は、図８に示す全メタデータ配列内に“プロパティＩＤ”「１」に対応するプロパティ値が登録されているかを確認する処理である。
ステップＳ９１０において、“相違フラグ”に「ＯＦＦ」を代入すると共に、“比較プロパティ値”に「」（未設定）を代入する。次に、ステップＳ９２０では、“メタデータ配列番号”に「０」を代入することで、図８に示すメタデータ配列のうち、“メタデータ配列番号”「０」である「配列０［ＪＰＥＧＥｘｉｆ］」２１０に対して処理を実行する。
【００８６】
その後、ステップＳ９５０において、“配列ＩＤ”「０」に位置する“テーブルプロパティＩＤ”「１」と“プロパティ値”「２００６／１２／２４  １２：００：００」とを取得する。次に、ステップＳ９６０において、“テーブルプロパティＩＤ”「１」と“プロパティＩＤ”「１」とが一致するので、ステップＳ９７０に処理を進める。
ステップＳ９７０において、“比較プロパティ値”が未設定であるので、ステップＳ９９０に処理を進める。ステップＳ９９０では、取得した“プロパティ値”「２００６／１２／２４  １２：００：００」を“比較プロパティ値”に代入する。
ステップＳ１０００において、“配列ＩＤ”「０」がメタデータ配列「配列０［ＪＰＥＧＥｘｉｆ］」２１０の最終ではないので、ステップＳ１０２０に処理を進める。
ステップＳ１０２０では、“配列ＩＤ”に「１」を加算する。
【００８７】
その後、“プロパティＩＤ”「１」について、上述した処理を繰り返して行った後、ステップＳ１０００において、“配列ＩＤ”がメタデータ配列内の最終と判定されるので、ステップＳ１０１０に処理を進める。ステップＳ１０１０では、“メタデータ配列番号”に「１」を加算する。したがって、次に、“メタデータ配列番号”「１」である図８に示すメタデータ配列「配列１［ＸＭＰ］」２２０に対して処理を実行する。
【００８８】
ステップＳ９５０において、“配列ＩＤ”「０」に位置する“テーブルプロパティＩＤ”「１」と“プロパティ値”「２００７／１１／２４  ０９：１５：００」を取得する。次に、ステップＳ９６０において、“テーブルプロパティＩＤ”「１」と“プロパティＩＤ”「１」とが一致するので、ステップＳ９７０に処理を進める。
ステップＳ９７０において、“比較プロパティ値”が設定済みなので、ステップＳ９８０に処理を進める。ステップＳ９８０において、ステップＳ９５０で取得した“プロパティ値”「２００７／１１／２４  ０９：１５：００」と“比較プロパティ値”「２００６／１２／２４  １２：００：００」とが同一ではないと判定するので、ステップＳ１０３０に処理を進める。
ステップＳ１０３０において、 “相違フラグ”に「ＯＮ」を代入する。
次に、ステップＳ１０４０において、“プロパティＩＤ”「１」、“相違フラグ”「ＯＮ」に設定された状態で、図１２のフローチャートに示す［相違フラグ登録］処理を呼び出す。［相違フラグ登録］処理が終了した後、ステップＳ１０５０において、“プロパティＩＤ”が図３に示すメタデータテーブル３０内の最終項目か否かを判定する。ここでは、最終項目ではないので、“プロパティＩＤ”に「１」を加算して、図８に示すメタデータ配列から“プロパティＩＤ”「２」に該当する“プロパティ値”を検索する。
【００８９】
その後、ステップＳ９５０において、図８に示すメタデータ配列「配列０［ＪＰＥＧＥｘｉｆ］」２１０から“配列ＩＤ”「０」に位置する“テーブルプロパティＩＤ”「１」と“プロパティ値”「２００６／１２／２４  １２：００：００」とを取得する。ステップＳ９６０において、“テーブルプロパティＩＤ”「１」と“プロパティＩＤ”「２」とが異なるので、ステップＳ１０００に処理を進める。その後、ステップＳ１０２０において、“配列ＩＤ”に「１」を加算して、“プロパティＩＤ”「２」の確認を繰り返す。
メタデータ配列内の全プロパティの確認を終了すると、ステップＳ１０００において、“配列ＩＤ”がメタデータ配列内の最終であると判定し、ステップＳ１０１０に処理を進める。ステップＳ１０１０において、“メタデータ配列番号”に「１」を加算する。
【００９０】
次に、図８に示す“メタデータ配列番号”「１」のメタデータ配列「配列１［ＸＭＰ］」２２０を検索する。その後、ステップＳ９５０において、図８に示すメタデータ配列「配列１［ＸＭＰ］」２２０から“配列ＩＤ”「０」に位置する“テーブルプロパティＩＤ”「１」と“プロパティ値”「２００７／１１／２４  ０９：１５：００」とを取得する。その後、ステップＳ１０００において、“配列ＩＤ”「０」がメタデータ配列「配列１［ＸＭＰ］」２２０の最終でないと判定するので、ステップＳ１０２０に処理を進める。ステップＳ１０２０において、“配列ＩＤ”に「１」を加算する。
その後、ステップＳ９５０において、“配列ＩＤ”「１」に位置する“テーブルプロパティＩＤ”「２」と“プロパティ値”「２００６／１２／２４  １２：００：００」とを取得する。その後、ステップＳ９７０において、“比較プロパティ値”が未設定であるので、ステップＳ９９０に処理を進める。ステップＳ９９０において、ステップＳ９５０で取得した“プロパティ値”「２００６／１２／２４  １２：００：００」を“比較プロパティ値”に代入する。
ステップＳ１０００において、“配列ＩＤ”「１」がメタデータ配列「配列１［ＸＭＰ］」２２０の最終ではないと判定するので、ステップＳ１０２０に処理を進める。ステップＳ１０２０において、“配列ＩＤ”に「１」を加算する。
その後、“プロパティＩＤ”「２」の確認を繰り返す。メタデータ配列内の全プロパティ値の確認を終了した後、ステップＳ１０１０において、“メタデータ配列番号”に「１」を加算する。
【００９１】
その後、図８に示す“メタデータ配列番号”「２」のメタデータ配列「配列２［ＩＰＣＴ］」２３０を検索する。その後、全メタデータ配列の検索が終了すると、ステップＳ９３０において“メタデータ配列番号”「３」と“メタデータ配列総数”「３」とが同一と判定するので、ステップＳ１０４０に処理を進める。
ステップＳ１０４０において、“プロパティＩＤ”「２」、“相違フラグ”「ＯＦＦ」に設定された状態で、図１２のフローチャートに示す［相違フラグ登録］処理を呼び出す。［相違フラグ登録］処理が終了した後、ステップＳ１０５０において、“プロパティＩＤ”が図３に示すメタデータテーブル３０内の最終項目か否かを判定する。ここでは、最終項目ではないので、“プロパティＩＤ”に「１」を加算して、図８に示すメタデータ配列から“プロパティＩＤ”「３」に該当する“プロパティ値”の検索と相違フラグ設定とを実行する。
図３に示すメタデータテーブル３０内の“プロパティＩＤ”の検索と相違フラグ設定とが終了すると、ステップＳ１０５０において“プロパティＩＤ”の最終項目と判定するので、［相違フラグ設定］処理を終了する。そして、図１３に示す相違フラグを有するメタデータ配列４００を作成する。
【００９２】
ここで、図１３に示すメタデータ配列４００には、図８に示すメタデータ配列に相違フラグが追加して登録されている。例えば、メタデータ配列のうち、メタデータ配列「配列０［ＪＰＥＧＥｘｉｆ］」４１０では、“テーブルプロパティＩＤ”「１」に“相違フラグ”として「ＯＮ」が設定されている。なお、上述した図１０及び図１１に示す処理では、複数のメタデータ規格間において、同一項目間で少なくとも１つ以上のプロパティ値が他のプロパティ値と相違する場合、全てのメタデータ配列の“相違フラグ”に「ＯＮ」が設定される。具体的には、図１３に示すメタデータ配列４００のうち、“テーブルプロパティＩＤ”「１」に対応する「配列０［ＪＰＥＧＥｘｉｆ］」４１０と「配列２［ＩＰＴＣ］」４３０とのプロパティ値は同一である。しかしながら、各メタデータ配列の全ての“テーブルプロパティＩＤ”「１」に“相違フラグ”として「ＯＮ」が設定される。
【００９３】
次に、図１０に示すフローチャートのステップＳ２１５において呼び出される［プロパティ全表示］処理について図１４に示すフローチャートを参照して説明する。
まず、ステップＳ７００では、ＣＰＵ１０は、メタデータ配列に対応する“メタデータ規格”名を画面に並べて表示する。次に、ステップＳ７０５では、ＣＰＵ１０は、“プロパティＩＤ”に「１」を代入する。次に、ステップＳ７１０では、“メタデータ配列番号”に「０」を代入する。
次に、ステップＳ７１５では、ＣＰＵ１０は、“メタデータ配列番号”と“メタデータ配列総数”とを比較する。ここで、“メタデータ配列総数”が“メタデータ配列番号”より大きい場合、ステップＳ７２０に処理を進める。
【００９４】
ステップＳ７２０では、ＣＰＵ１０は、“配列ＩＤ”に「０」を代入する。
次に、ステップＳ７２５では、ＣＰＵ１０は、“メタデータ配列番号”に位置する“メタデータ配列”から“配列ＩＤ”に位置する“テーブルプロパティＩＤ”を取得する。
次に、ステップＳ７３０では、ＣＰＵ１０は、“テーブルプロパティＩＤ”と“プロパティＩＤ”とが同一か否かを判定する。同一の場合、ステップＳ７３５に処理を進める。
ステップＳ７３５では、ＣＰＵ１０は、“メタデータ配列番号”に位置する“メタデータ配列”から、“配列ＩＤ”番目の“プロパティ値”と“相違フラグ”とを取得する。次に、ステップＳ７４０では、ＣＰＵ１０は、“メタデータ配列番号”と“プロパティ値”と“相違フラグ”とをメモリ１２等に保持する。次に、ステップＳ７４５では、ＣＰＵ１０は、“配列ＩＤ”がメタデータ配列内の最終項目か否かを判定する。最終項目でない場合、ステップＳ７５５に処理を進める。
【００９５】
ステップＳ７５５では、ＣＰＵ１０は、“配列ＩＤ”に「１」を加算する。
次に、ステップＳ７２５において、ＣＰＵ１０は、次の“配列ＩＤ”に位置する“テーブルプロパティＩＤ”を取得する。次に、ステップＳ７３０において、ＣＰＵ１０は、取得した“テーブルプロパティＩＤ”と“プロパティＩＤ”とを比較する。
なお、ステップＳ７４５において、“配列ＩＤ”がメタデータ配列内の最終項目の場合、ステップＳ７５０に処理を進める。ステップＳ７５０では、ＣＰＵ１０は、“メタデータ配列番号”に「１」を加算する。
【００９６】
また、ステップＳ７１５において、ＣＰＵ１０は、“メタデータ配列番号”と“メタデータ配列総数”とが同一の場合、ステップＳ７６０に処理を進める。
ステップＳ７６０では、ＣＰＵ１０は、図３に示すメタデータテーブル３０から“プロパティＩＤ”と同値の“テーブルプロパティＩＤ”に位置する“種類”及び“項目名”の文字列を取得する。
次に、ステップＳ７６５では、ＣＰＵ１０は、ステップＳ７６０で取得した文字列を“プロパティＩＤ”に対応する画面の表示欄に表示する。次に、ステップＳ７７０では、ＣＰＵ１０は、“プロパティＩＤ”に対応するメタデータ規格の位置に、ステップＳ７４０で保持した“メタデータ配列番号”に対応する“メタデータ規格”の位置に“プロパティ値”をそれぞれ並べて表示する。
【００９７】
次に、ステップＳ７７５では、ＣＰＵ１０は、ステップＳ７４０で保持した“相違フラグ”が「ＯＮ」であるか否かを判定する。“相違フラグ”が「ＯＮ」の場合、ステップＳ７８０に処理を進める。ステップＳ７８０では、ＣＰＵ１０は、ステップＳ７７０で表示した“プロパティ値”に“相違フラグ”がＯＮで設定されていることを示す識別表示を行う。具体的には、ＣＰＵ１０は、“プロパティ値”の背景をハイライトで表示する。次に、ステップＳ７８５では、ＣＰＵ１０は、図３に示すメタデータテーブル３０に基づいて、“プロパティＩＤ”が最終項目か否かを判定する。最終項目ではない場合、ステップＳ７９０に処理を進める。ステップＳ７９０において、ＣＰＵ１０は、“プロパティＩＤ”に「１」を加算する。このようにして、全メタデータ配列に対して、“プロパティＩＤ”に対応する“テーブルプロパティＩＤ”があるか否かを判定して、存在する場合、ＣＰＵ１０は、“プロパティ値”の表示を繰り返す。
【００９８】
以下、図１４に示すフローチャートの処理について具体的に説明する。なお、図１４に示すフローチャートの主体は、画像処理装置２０のＣＰＵ１０であり、以下では省略して説明する。ここでは、図１３に示す「配列０［ＪＰＥＧＥｘｉｆ］」４１０、「配列１［ＸＭＰ］」４２０、「配列２［ＩＰＣＴ］」４３０の３つのメタデータ配列を例にして説明する。すなわち、図１０に示すフローチャートにおいて、図１３に示すメタデータ配列が作成された状態において、ステップＳ２１５で、［プロパティ全表示］処理が呼び出された場合の処理について説明する。
【００９９】
まず、ステップＳ７００において、図１３に示すメタデータ配列の“メタデータ規格”名である「ＪＰＥＧＥｘｉｆ」、「ＸＭＰ」及び「ＩＰＣＴ」を３つ並べて表示する。その後、図１３に示す全メタデータ配列内に“プロパティＩＤ”「１」に対応する“プロパティ値”が登録されているかを確認する処理に移行する。ステップＳ７２５において、図１３に示す“メタデータ配列番号”「０」であるメタデータ「配列０［ＪＰＥＧＥｘｉｆ］」４１０から“配列ＩＤ”「０」に位置する“テーブルプロパティＩＤ”「１」を取得する。
次に、ステップＳ７３０において、“テーブルプロパティＩＤ”「１」と“プロパティＩＤ”「１」とが同一であると判定するので、ステップＳ７３５に処理を進める。
ステップＳ７３５において、“配列ＩＤ”「０」に位置する“プロパティ値”「２００６／１２／２４  １２：００：００」と“相違フラグ”「ＯＮ」とを取得する。次に、ステップＳ７４０において、“メタデータ配列番号”「０」と“プロパティ値”「２００６／１２／２４  １２：００：００」と“相違フラグ”「ＯＮ」とを保持する。その後、ステップＳ７５５において、“配列ＩＤ”に「１」を加算する。
【０１００】
なお、メタデータ配列「配列０［ＪＰＥＧＥｘｉｆ］」４１０内の全プロパティについて確認を終了すると、ステップＳ７４５において、“配列ＩＤ”がメタデータ配列内の最終項目であると判定し、ステップＳ７５０に処理を進める。ステップＳ７５０において、“メタデータ配列番号”に「１」を加算する。したがって、ステップＳ７２５以降では、図１３に示す“メタデータ配列番号”「１」のメタデータ配列「配列１［ＸＭＰ］」４２０内について“プロパティＩＤ”と同値の“テーブルプロパティＩＤ”の“プロパティ値”と“相違フラグ”とを取得する処理を行う。ここで、“プロパティＩＤ”「１」に対応する図１３に示す全メタデータ配列について上述した処理が終了した場合に保持されているプロパティ値は以下、３つである。
第１に、“メタデータ配列番号”「０」番目に位置する“プロパティ値”は「２００６／１２／２４  １２：００：００」、“相違フラグ”「ＯＮ」である。
第２に、“メタデータ配列番号”「１」番目に位置する“プロパティ値”は「２００７／１１／２４  ０９：１５：００」、“相違フラグ”「ＯＮ」である。
第３に、“メタデータ配列番号”「２」番目に位置する“プロパティ値”は「２００６／１２／２４  １２：００：００」、“相違フラグ”「ＯＮ」である。
【０１０１】
その後、ステップＳ７１５において、“メタデータ配列番号”と“メタデータ配列総数”とが同一であると判定するので、ステップＳ７６０に処理を進める。
ステップＳ７６０において、図３に示すメタデータテーブル３０より、“プロパティＩＤ”「１」に基づいて、“種類”として文字列「日時」及び“項目名”として文字列「更新日時」を取得する。次に、ステップＳ７６５において、取得した文字列「日時」及び「更新日時」を並べて表示する。更に、ステップＳ７７０において、上述した３つの“プロパティ値”を並べて表示する。
次に、ステップＳ７７５において、“相違フラグ”が「ＯＮ」であると判定するので、ステップＳ７８０に処理を進める。ステップＳ７８０において、ステップＳ７７０で表示した“プロパティ値”の背景をハイライト表示する。
【０１０２】
次に、ステップＳ７８５において、“プロパティＩＤ”「１」がメタデータテーブル３０内における最終プロパティではないと判定するので、ステップＳ７９０に処理を進める。
ステップＳ７９０において、“プロパティＩＤ”に「１」を加算して、図１３に示すメタデータ配列内から“プロパティＩＤ”「２」に該当する“プロパティ値”を検索する。
その後、ステップＳ７２５において、図１３に示す“メタデータ配列番号”「０」であるメタデータ配列「配列０［ＪＰＥＧＥｘｉｆ］」４１０から“配列ＩＤ”「０」に位置する“テーブルプロパティＩＤ”「１」を取得する。次に、ステップＳ７３０において、“テーブルプロパティＩＤ”「１」と“プロパティＩＤ”「２」とが異なると判定するので、ステップＳ７４５に処理を進める。その後、ステップＳ７５５において、“配列ＩＤ”に「１」を加算して、“プロパティＩＤ”「２」の確認を繰り返す。
【０１０３】
なお、ステップＳ７４５において、メタデータ配列「配列０［ＪＰＥＧＥｘｉｆ］」４１０内の全プロパティの確認を終了した後、ステップＳ７５０に処理を進める。ステップＳ７５０において、“メタデータ配列番号”に「１」を加算する。その後、図１３に示す“メタデータ配列番号”「１」のメタデータ配列「配列１［ＸＭＰ］」４２０内を検索する。その後、ステップＳ７２５において、メタデータ配列「配列１［ＸＭＰ］」４２０から“配列ＩＤ”「０」に位置する“テーブルプロパティＩＤ”「１」を取得する。その後、ステップＳ７４５において、“配列ＩＤ”「０」がメタデータ配列内の最終でないと判定するので、ステップＳ７５５に処理を進める。ステップＳ７５５において、“配列ＩＤ”に「１」を加算する。ステップＳ７２５において、“配列ＩＤ”「１」に位置する“テーブルプロパティＩＤ”「２」を取得する。
【０１０４】
ステップＳ７３０において、“テーブルプロパティＩＤ”「２」と“プロパティＩＤ”「２」とが同一であると判定するので、ステップＳ７３５に処理を進める。ステップＳ７３５において、“配列ＩＤ”「１」に位置する“プロパティ値”「２００６／１２／２４  １２：００：００」と“相違フラグ”「ＯＦＦ」とを取得する。次に、ステップＳ７４０において、“メタデータ配列番号”「１」と“プロパティ値”「２００６／１２／２４  １２：００：００」と“相違フラグ”「ＯＦＦ」とを保持する。その後、ステップＳ７５５において、“配列ＩＤ”に「１」を加算する。
【０１０５】
ステップＳ７４５において、メタデータ配列「配列１［ＸＭＰ］」４２０内の全プロパティについて確認を終了した後、ステップＳ７５０に処理を進める。ステップＳ７５０において、“メタデータ配列番号”に「１」を加算する。したがって、ステップＳ７２５以降では、メタデータ配列「配列２［ＩＰＴＣ］」４３０内における“プロパティＩＤ”と同値の“テーブルプロパティＩＤ”の“プロパティ値”と“相違フラグ”とを取得する処理を行う。上述する処理を経て、“プロパティＩＤ”「２」に対応する“プロパティ値”として、“メタデータ配列番号”「１」番目に位置する“プロパティ値”「２００６／１２／２４  １２：００：００」、“相違フラグ”「ＯＦＦ」を取得する。
【０１０６】
その後、ステップＳ７６０において、図３に示すメタデータテーブル３０より、“プロパティＩＤ”「２」に基づいて“種類”として文字列「日時」及び“項目名”として文字列「更新日時」を取得する。次に、ステップＳ７６５において、取得した「日時」及び「更新日時」を並べて表示する。更に、ステップＳ７７０において、上述した１つの“プロパティ値”を表示する。
次に、ステップＳ７７５において、“相違フラグ”が「ＯＦＦ」であると判定するので、ステップＳ７８５に処理を進める。
【０１０７】
次に、ステップＳ７８５において、“プロパティＩＤ”「２」がメタデータテーブル３０内における最終項目ではないと判定するので、ステップＳ７９０に処理を進める。
ステップＳ７９０において、“プロパティＩＤ”に「１」を加算して、図１３に示すメタデータ配列内から“プロパティＩＤ”「３」に該当する“プロパティ値”を検索する。
その後、図３に示すメタデータテーブル３０内の“プロパティＩＤ”の検索と表示とを終了すると、図１５に示す相違するプロパティデータにハイライト表示が付加されたＵＩ画面５００を表示する。
【０１０８】
ここで、図１５に示すＵＩ画面５００は、終了ボタン５１０、画像選択領域５２０、メタデータ表示領域５３０から構成される。画像選択領域５２０には、ユーザ操作により選択された画像ファイル５４０が表示される。メタデータ表示領域５３０には、画像ファイル５４０に登録されている複数のメタデータ規格の全プロパティデータが表示される。また、メタデータ表示領域５３０において相違するプロパティデータの背景には、ユーザがすぐに視認できるように、ハイライト表示が付加されている。また、メタデータ表示領域５３０には、上述したプロパティ表示切替ボタン５７０が表示されている。プロパティ表示切替ボタン５７０には、「全表示」が表示されている。したがって、ユーザは、全プロパティが表示されていることを視認することができる。
【０１０９】
なお、本実施形態では、プロパティデータの相違箇所をユーザに通知するために、プロパティデータの背景をハイライト表示する場合について説明したが、この場合に限られない。例えば、表示フォントを変更したり、アイコンを付加したりするような方法であってもよい。また、本実施形態では、プロパティデータに相違を確認した場合に、相違箇所をハイライト表示する場合について説明したが、この場合に限られない。例えば、ＣＰＵ１０が画像ファイルからプロパティデータを読み込むことができない場合、読み込めない箇所をユーザに通知するためのアイコンやマーク等、読み込むことができないことを示す表示をしてもよい。
【０１１０】
次に、図１０に示すフローチャートのステップＳ２２０において呼び出される［相違プロパティ表示］処理について図１６に示すフローチャートを参照して説明する。
まず、ステップＳ８００では、ＣＰＵ１０は、メタデータ配列に対応する“メタデータ規格”名を画面に並べて表示する。次に、ステップＳ８０５では、ＣＰＵ１０は、“プロパティＩＤ”に「１」を代入する。次に、ステップＳ８１０では、ＣＰＵ１０は、“メタデータ配列番号”に「０」を代入する。
次に、ステップＳ８１５では、ＣＰＵ１０は、“メタデータ配列番号”と“メタデータ配列総数”とを比較する。ここで、“メタデータ配列総数”が“メタデータ配列番号”より大きい場合、ステップＳ８２０に処理を進める。
【０１１１】
ステップＳ８２０では、ＣＰＵ１０は、“配列ＩＤ”に「０」を代入する。
次に、ステップＳ８２５では、ＣＰＵ１０は、“メタデータ配列番号”に位置する“メタデータ配列”から、“配列ＩＤ”に位置する“テーブルプロパティＩＤ”を取得する。
次に、ステップＳ８３０では、ＣＰＵ１０は、“テーブルプロパティＩＤ”と“プロパティＩＤ”とが同一か否かを判定する。同一の場合、ステップＳ８３５に処理を進める。
ステップＳ８３５では、ＣＰＵ１０は、“メタデータ配列番号”に位置する“メタデータ配列”から、“配列ＩＤ”番目の“プロパティ値”と“相違フラグ”とを取得する。次に、ステップＳ８４０では、ＣＰＵ１０は、“メタデータ配列番号”と“プロパティ値”と“相違フラグ”とをメモリ１２等に保持する。次に、ステップＳ８４５では、ＣＰＵ１０は、“配列ＩＤ”がメタデータ配列内の最終項目か否かを判定する。最終項目でない場合、ステップＳ８５５に処理を進める。
【０１１２】
ステップＳ８５５では、ＣＰＵ１０は、“配列ＩＤ”に「１」を加算する。
次に、ステップＳ８２５において，ＣＰＵ１０は、次の“配列ＩＤ”に位置する“テーブルプロパティＩＤ”を取得する。次に、ステップＳ８３０において、ＣＰＵ１０は、取得した“テーブルプロパティＩＤ”と“プロパティＩＤ”とを比較する。
なお、ステップＳ８４５において、“配列ＩＤ”がメタデータ配列内の最終項目の場合、ステップＳ８５０に処理を進める。ステップＳ８５０では、ＣＰＵ１０は、“メタデータ配列番号”に「１」を加算する。
【０１１３】
また、ステップＳ８１５において、ＣＰＵ１０は、“メタデータ配列番号”と“メタデータ配列総数”とが同一の場合、ステップＳ８６０に処理を進める。
ステップＳ８６０では、ＣＰＵ１０は、ステップＳ８４０で保持した“相違フラグ”が「ＯＮ」であるか否かを判定する。“相違フラグ”が「ＯＮ」の場合、ステップＳ８６５に処理を進める。
ステップＳ８６５では、ＣＰＵ１０は、図３に示すメタデータテーブル３０から“プロパティＩＤ”と同値の“テーブルプロパティＩＤ”に位置する“種類”及び“項目名”の文字列を取得する。
次に、ステップＳ８７０では、ＣＰＵ１０は、ステップＳ８６５で取得した文字列を“テーブルプロパティＩＤ”に対応する画面の表示欄に表示する。次に、ステップＳ８７５では、ＣＰＵ１０は、“プロパティＩＤ”に対応するメタデータ規格の位置に、ステップＳ８４０で保持した“メタデータ配列番号”に対応する“メタデータ規格”の位置に“プロパティ値”をそれぞれ並べて表示する。
【０１１４】
次に、ステップＳ８８０では、ＣＰＵ１０は、図３に示すメタデータテーブル３０に基づいて、“プロパティＩＤ”が最終項目か否かを判定する。最終項目でない場合、ステップＳ８８５に処理を進める。ステップＳ８８５では、ＣＰＵ１０は、“プロパティＩＤ”に「１」を加算する。なお、本実施形態ではステップＳ８４０において保持した“相違フラグ”が「ＯＦＦ」の場合、ステップＳ８６０からステップＳ８８０に処理を進め、すぐに次の「プロパティＩＤ」について確認する処理に移行する。このようにして、全メタデータ配列に対して、“プロパティＩＤ”に対応する“テーブルプロパティＩＤ”が登録されているかを確認して、“プロパティＩＤ”が存在し、“相違フラグ”が「ＯＮ」に設定されている場合、“プロパティ値”の表示を繰り返す。
【０１１５】
以下、図１６に示すフローチャートの処理について具体的に説明する。なお、図１６に示すフローチャートの主体は、画像処理装置２０のＣＰＵ１０であり、以下では省略して説明する。ここでは、図１３に示す「配列０［ＪＰＥＧＥｘｉｆ］」４１０、「配列１［ＸＭＰ］」４２０、「配列２［ＩＰＣＴ］」４３０の３つのメタデータ配列を例にして説明する。すなわち、図１０に示すフローチャートにおいて、図１３に示すメタデータ配列が作成された状態において、ステップＳ２２０で、［相違プロパティ表示］ 処理が呼び出された場合の処理について説明する。
【０１１６】
まず、ステップＳ８００において、図１３に示すメタデータ配列の“メタデータ規格”名である「ＪＰＥＧＥｘｉｆ」、「ＸＭＰ」及び「ＩＰＣＴ」を３つ並べて表示する。その後、図１３に示す全メタデータ配列内に“プロパティＩＤ”「１」に対応する“プロパティ値”が登録されているかを確認する処理に移行する。ステップＳ８２５において、図１３に示す“メタデータ配列番号”「０」であるメタデータ「配列０［ＪＰＥＧＥｘｉｆ］」４１０から“配列ＩＤ”「０」に位置する“テーブルプロパティＩＤ”「１」を取得する。
次に、ステップＳ８３０において、“テーブルプロパティＩＤ”「１」と“プロパティＩＤ”「１」とが同一であると判定するので、ステップＳ８３５に処理を進める。
ステップＳ８３５において、“配列ＩＤ”「０」に位置する“プロパティ値”「２００６／１２／２４  １２：００：００」と“相違フラグ”「ＯＮ」とを取得する。次に、ステップＳ８４０において、“メタデータ配列番号”「０」と“プロパティ値”「２００６／１２／２４  １２：００：００」と“相違フラグ”「ＯＮ」とを保持する。その後、ステップＳ８５５において、“配列ＩＤ”に「１」を加算する。
【０１１７】
なお、メタデータ配列「配列０［ＪＰＥＧＥｘｉｆ］」４１０内の全プロパティについて確認を終了すると、ステップＳ８４５において、“配列ＩＤ”がメタデータ配列内の最終項目であると判定し、ステップＳ８５０に処理を進める。ステップＳ８５０において、“メタデータ配列番号”に「１」を加算する。したがって、ステップＳ８２５では、図１３に示す“メタデータ配列番号”「１」であるメタデータ配列「配列１［ＸＭＰ］」４２０内について“プロパティＩＤ”と同値の“テーブルプロパティＩＤ”の“プロパティ値”と“相違フラグ”とを取得する処理を行う。ここで、“プロパティＩＤ”「１」に対応する図１３に示す全メタデータ配列について上述した処理が終了した場合に保持されているプロパティ値は以下、３つである。
第１に、“メタデータ配列番号”「０」番目に位置する“プロパティ値”は「２００６／１２／２４  １２：００：００」、“相違フラグ”「ＯＮ」である。
第２に、“メタデータ配列番号”「１」番目に位置する“プロパティ値”は「２００７／１１／２４  ０９：１５：００」、“相違フラグ”「ＯＮ」である。
第３に、“メタデータ配列番号”「２」番目に位置する“プロパティ値”は「２００６／１２／２４  １２：００：００」、“相違フラグ”「ＯＮ」である。
【０１１８】
その後、ステップＳ８１５において、“メタデータ配列番号”と“メタデータ配列総数”とが同一であると判定するので、ステップＳ８６０に処理を進める。
ステップＳ８６０において、ステップＳ８４０で保持した“相違フラグ”は、「ＯＮ」であるので、ステップＳ８６５以降のプロパティデータの表示処理に移行する。
ステップＳ８６５では、図３に示すメタデータテーブル３０より、“プロパティＩＤ”「１」に基づいて、“種類”として「日時」及び“項目名”として文字列「更新日時」を取得する。次に、ステップＳ８７０において、取得した文字列「日時」及び「更新日時」を並べて表示する。更に、ステップＳ８７５において、上述した３つの“プロパティ値”を並べて表示する。
【０１１９】
次に、ステップＳ８８０において、 “プロパティＩＤ”「１」がメタデータテーブル３０内における最終プロパティではないと判定するので、ステップＳ８８５に処理を進める。
ステップＳ８８５において、“プロパティＩＤ”に「１」を加算して、図１３に示すメタデータ配列内から“プロパティＩＤ”「２」に該当する“プロパティ値”を検索する。
その後、ステップＳ８２５において、図１３に示す“メタデータ配列番号”「０」であるメタデータ配列「配列０［ＪＰＥＧＥｘｉｆ］」４１０から“配列ＩＤ”「０」に位置する“テーブルプロパティＩＤ”「１」を取得する。次に、ステップＳ８３０において、“テーブルプロパティＩＤ”「１」と“プロパティＩＤ”「２」とが異なると判定するので、ステップＳ８４５に処理を進める。その後、ステップＳ８５５において、“配列ＩＤ”に「１」を加算して、“プロパティＩＤ”「２」の確認を繰り返す。
【０１２０】
なお、ステップＳ８４５において、メタデータ配列「配列０［ＪＰＥＧＥｘｉｆ］」４１０内の全プロパティの確認を終了した後、ステップＳ８５０に処理を進める。ステップＳ８５０において、“メタデータ配列番号”に「１」を加算する。その後、図１３に示す“メタデータ配列番号”「１」のメタデータ配列「配列１［ＸＭＰ］」４２０内を検索する。その後、ステップＳ８２５において、メタデータ配列「配列１［ＸＭＰ］」４２０から“配列ＩＤ”「０」に位置する“テーブルプロパティＩＤ”「１」を取得する。ステップＳ８４５において、“配列ＩＤ”「０」がメタデータ配列内の最終でないと判定するので、ステップＳ８５５に処理を進める。ステップＳ８５５において、“配列ＩＤ”に「１」を加算する。ステップＳ８２５において、“配列ＩＤ”「１」に位置する“テーブルプロパティＩＤ”「２」を取得する。
【０１２１】
ステップＳ８３０において、“テーブルプロパティＩＤ”「２」と“プロパティＩＤ”「２」とが同一であると判定するので、ステップＳ８３５に処理を進める。ステップＳ８３５において、“配列ＩＤ”「１」に位置する“プロパティ値”「２００６／１２／２４  １２：００：００」と“相違フラグ”「ＯＦＦ」とを取得する。次に、ステップＳ８４０において、“メタデータ配列番号”「１」と“プロパティ値”「２００６／１２／２４  １２：００：００」と“相違フラグ”「ＯＦＦ」とを保持する。その後、ステップＳ８５５において、“配列ＩＤ”に「１」を加算する。
【０１２２】
ステップＳ８４５において、メタデータ配列「配列１［ＸＭＰ］」４２０内の全プロパティについて確認を終了した後、ステップＳ８５０に処理を進める。ステップＳ８５０において、“メタデータ配列番号”に「１」を加算する。したがって、ステップＳ８２５以降では、メタデータ配列「配列２［ＩＰＴＣ］」４３０内における“プロパティＩＤ”と同値の“テーブルプロパティＩＤ”の“プロパティ値”と“相違フラグ”とを取得する処理を行う。上述する処理を経て、“プロパティＩＤ”「２」に対応する“プロパティ値”として、“メタデータ配列番号”「１」に位置する“プロパティ値”「２００６／１２／２４  １２：００：００」、“相違フラグ”「ＯＦＦ」を取得する。
【０１２３】
その後、ステップＳ８６０において、ステップＳ８４０で保持した“相違フラグ”が「ＯＦＦ」であり、「ＯＮ」ではないと判定するので、ステップＳ８８０に処理を進める。ステップＳ８８０において、“プロパティＩＤ”「２」がメタデータテーブル３０内における最終項目ではないと判定するので、ステップＳ８８５に処理を進める。
ステップＳ８８５において、“プロパティＩＤ”に「１」を加算して、図１３に示すメタデータ配列内から“プロパティＩＤ”「３」に該当する“プロパティ値”を検索する。
その後、図３に示すメタデータテーブル３０内の“プロパティＩＤ”の検索と表示とを終了すると、図１７に示す相違プロパティのＵＩ画面７００を表示する。
【０１２４】
ここで、図１７に示すＵＩ画面７００は、終了ボタン７１０、画像選択領域７２０、メタデータ表示領域７３０から構成される。画像選択領域７２０には、ユーザ操作により選択された画像ファイル７４０が表示される。メタデータ表示領域７３０には、画像ファイル７４０に登録されているプロパティデータの相違プロパティが優先して表示される。図１７に示すＵＩ画面７００では、相違しているプロパティデータのみが表示される。また、メタデータ表示領域７３０には、上述したプロパティ表示切替ボタン７７０が表示されている。プロパティ表示切替ボタン７７０には、「相違箇所」が表示されている。したがって、ユーザは、相違プロパティのみが表示されていることを視認することができる。また、プロパティ表示切替ボタン７７０をクリックすることにより、ユーザは「全表示」を選択することができ、上述した図１５に示すプロパティ表示に切り替えることができる。なお、図１７に示すＵＩ画面７００には、図１５に示すプロパティ表示と異なり、メタデータ規格の「ＩＰＴＣ」と「ＸＭＰ」とを入れ替えて表示されている。これは、メタデータ規格のうち「ＪＰＥＧＥｘｉｆ」と「ＩＰＴＣ」とのプロパティデータは同一であるために、両者を近接して表示したものである。このように、同一のプロパティデータが設定されたメタデータ規格間を近接して表示することにより、ユーザは相違するプロパティデータを容易に識別することができる。
【０１２５】
このように、本実施形態によれば、１つの画像ファイルに内に複数のメタデータ規格が存在する場合、メタデータ規格内に存在するプロパティ（プロパティデータ）を並べて表示し、同一項目の間で、プロパティに相違がある場合には、ハイライト表示を行った。したがって、メタデータ規格内に登録されている多くのプロパティの間で、プロパティの同期が取れていない場合、ユーザは同期が取れていないプロパティを容易に確認することができる。
また、相違しているプロパティのみを表示することで、ユーザは簡単にプロパティを比較することができる。更に、プロパティを全表示する場合と、相違プロパティのみを表示する場合とで表示を切り替えることができるので、ユーザの目的に合った表示にすることができる。
【０１２６】
なお、本実施形態では、同期の取れていないプロパティをユーザに通知するために、“プロパティ値”の背景をハイライト表示にする場合についてのみ説明したが、この場合に限られない。例えば、相違するプロパティの表示フォントを変更したり、アイコンを付加したりして、ユーザが識別できるようにすれば、どのような方法であってもよい。また、本実施形態では、プロパティに相違を確認した場合に、相違箇所をハイライト表示した。しかし、画像ファイルからプロパティデータを読み込みときに、読み込めない箇所を発見した場合、読み込めない箇所をユーザに通知するためにアイコンやマークを表示するような方法であってもよい。
【０１２７】
本実施形態では、プロパティ表示切替ボタンによるプロパティ表示の切り替えにより、プロパティの相違箇所のみを表示したり、相違するプロパティをハイライト表示したりする場合について説明した。しかしながら、例えば、相違するプロパティを上方に表示したり、表示プロパティに優先順位を付加したり、優先順位の高い相違プロパティを表示したりするように構成してもよい。
【０１２８】
また、第１の実施形態及び第２の実施形態では、プロパティを閲覧する場合についてのみ説明したが、この場合に限られない。例えば、メタデータ規格間で、相違しているプロパティをユーザに入力させるように構成してもよい。この場合、ユーザが操作部１６を介してプロパティの表示欄をクリックして、文字列を入力することで、ＣＰＵ１０は、文字列の入力を検出する。この処理は、入力検出手段の一例に対応する。そして、入力の決定を検出することにより、ＣＰＵ１０は、図６に示すプロパティ表示欄を変更すると共に、画像ファイルのメタデータ規格に対応するプロパティデータを書き換える処理を行い、各メタデータ規格間のプロパティデータを同期させてもよい。この処理は、書換手段の一例に対応する。また、プロパティデータを直接入力する以外に、設定済みの同一プロパティの一覧を表示し、その複数のプロパティから、ユーザに選択させるように構成してもよい。
【０１２９】
また、第１の実施形態及び第２の実施形態では、ＪＰＥＧ画像に対して、複数メタデータ規格内に登録されたプロパティを処理する場合について説明したが、この場合に限られない。例えば、ＲＡＷ画像、ＴＩＦＦ画像等の一般のメタデータ規格を有するファイルに対して、メタデータ規格処理を実行する場合でも、本発明は適応される。
【０１３０】
上述した本発明の実施形態における情報処理装置を構成する各手段、並びに情報処理方法の各ステップは、コンピュータのＲＡＭやＲＯＭ等に記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【０１３１】
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施形態も可能であり、具体的には、複数の機器からなるシステムに適用してもよい。
【０１３２】
なお、本発明は、上述した実施形態の機能を実現するソフトウェアのプログラムを、システム又は装置に直接、又は遠隔から供給する。そして、そのシステム又は装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【０１３３】
従って、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１３４】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。更に、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳ等が、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１３５】
更に、その他の方法として、まず記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１３６】
【図１】画像処理装置の概略を示すブロック図である。
【図２】画像処理装置の動作処理を示すフローチャートである。
【図３】メタデータテーブルの構成を示す図である。
【図４】画像選択画面の一例を示す図である。
【図５】画像ファイルのメタデータ規格の構成を示す図である。
【図６】第１の実施形態に係る対象画像選択直後のＵＩ画面を示す図である。
【図７】第１の実施形態に係るメタデータテーブルとの照合処理を示すフローチャートである。
【図８】第１の実施形態に係るメタデータ配列の構成を示す図である。
【図９】第１の実施形態に係るメタデータ表示処理を示すフローチャートである。
【図１０】第２の実施形態に係るメタデータ表示処理を示すフローチャートである。
【図１１】第２の実施形態に係る相違フラグ設定処理を示すフローチャートである。
【図１２】第２の実施形態に係る相違フラグ登録処理を示すフローチャートである。
【図１３】第２の実施形態に係るメタデータ配列の構成を示す図である。
【図１４】第２の実施形態に係るプロパティ全表示処理を示すフローチャートである。
【図１５】第２の実施形態に係るプロパティ全表示のＵＩ画面を示す図である。
【図１６】第２の実施形態に係る相違プロパティ表示処理を示すフローチャートである。
【図１７】第２の実施形態に係る相違プロパティ表示のＵＩ画面を示す図である。
【符号の説明】
【０１３７】
１００    ＣＰＵ
１１０    ハードディスク
１２０    記憶部
１３０    ネットワーク接続部
１４０    ディスプレイ
１５０    スピーカ
１６０    操作部（マウス、キーボード）
１７０    記録媒体ドライブ
１８０    外部記憶装置
１９０    内部バス
【図１】
2010097441.tif 000003
【図２】
2010097441.tif 000004
【図３】
2010097441.tif 000005
【図４】
2010097441.tif 000006
【図５】
2010097441.tif 000007
【図６】
2010097441.tif 000008
【図７】
2010097441.tif 000009
【図８】
2010097441.tif 000010
【図９】
2010097441.tif 000011
【図１０】
2010097441.tif 000012
【図１１】
2010097441.tif 000013
【図１２】
2010097441.tif 000014
【図１３】
2010097441.tif 000015
【図１４】
2010097441.tif 000016
【図１５】
2010097441.tif 000017
【図１６】
2010097441.tif 000018
【図１７】
2010097441.tif 000019