(57)【要約】【課題】付帯情報のフォーマットに対応していない画像編集ソフトで画像の編集が行われると、その付帯情報が失われてしまうことがある。【解決手段】付帯情報にしたがって画像ファイルのファイル名を作成しておき、この画像ファイルの付帯情報が画像編集ソフト等で編集されることによって付帯情報が消失した場合、付帯情報にしたがって作成された前記ファイル名に基づいて付帯情報が消失した画像ファイルに、付帯情報を書き込む処理を行う。【選択図】        図８
2006268401.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
画像データに付帯するする付帯情報にしたがって作成されたファイル名を有する画像ファイルに対して、前記ファイル名に基づいて前記付帯情報を書き込む付帯情報書込手段として機能させる付帯情報書込プログラム。
【請求項２】
コンピュータを、
前記画像ファイルに対して前記付帯情報を含むか否かを判断する付帯情報存在判断手段として機能させ、
前記付帯情報書込手段は、前記付帯情報存在判断手段で付帯情報が含まれないと判断された場合にのみ、前記ファイル名に基づいて前記画像ファイルに前記付帯情報を書き込むことを特徴とする請求項１記載の付帯情報書込プログラム。
【請求項３】
コンピュータを、
前記ファイル名に所定の識別子が付与されているか否かを判断する識別子判断手段として機能させ、
前記付帯情報書込手段は、前記識別子判断手段で前記ファイル名に所定の識別子が付与されていると判断された場合にのみ、前記ファイル名に基づいて前記画像ファイルに前記付帯情報を書き込むことを特徴とする請求項１または請求項２記載の付帯情報書込プログラム。
【請求項４】
コンピュータを、
前記付帯情報と前記画像データとを含む前記画像ファイルに対して、前記付帯情報にしたがって前記ファイル名を作成するファイル名作成手段と、
前記ファイル名作成手段により前記ファイル名が作成された前記画像ファイルが編集されるか否かを監視する監視手段として機能させ、
前記監視手段により前記画像ファイルの編集が行われたことが検知されると、前記付帯情報存在判断手段は前記画像ファイルに対して、前記付帯情報を含むか否かを判断することを特徴とする請求項２または請求項３に記載の付帯情報書込みプログラム。
【請求項５】
前記ファイル名作成手段は、前記付帯情報のうち所定の情報に基づいて前記ファイル名を作成することを特徴とする請求項４記載の付帯情報書込プログラム。
【請求項６】
コンピュータを、
前記所定の情報をユーザが任意に選択するための選択手段として機能させることを特徴とする請求項５記載の付帯情報書込みプログラム。
【請求項７】
前記ファイル名作成手段は、前記所定の情報をエンコードしたものを前記ファイル名として作成することを特徴とする請求項４から請求項６のいずれかに記載の付帯情報書込プログラム。
【請求項８】
画像データに関する付帯情報にしたがって作成されたファイル名を有する画像ファイルに対して、前記ファイル名に基づいて前記付帯情報を書き込む付帯情報書込手段からなる付帯情報書込装置。
【請求項９】
画像データに関する付帯情報にしたがって作成されたファイル名を有する画像ファイルに対して、前記ファイル名に基づいて前記付帯情報を書き込む付帯情報書込工程からなる付帯情報書込方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、付帯情報書込プログラム、付帯情報書込装置及び付帯情報書込方法に関する。
【背景技術】
【０００２】
従来、デジタルスチルカメラ等で撮影したデジタル画像の画像ファイルは、画像そのもののデータである画像データと、撮影日時、撮影条件、位置等の付帯情報とを含んでいる。そしてこの付帯情報のうち位置についての情報から画像ファイルのファイル名を作成することが提案されている（特許文献１）。
【０００３】
【特許文献１】特開２００４−１５９０６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
これとは別に、大量に保存されている画像ファイルの中から、ユーザが所望の画像ファイルを検索する場合や所定の順番で画像ファイルの並べ替えをする場合に使用するアプリケーションとして、この付帯情報を利用するものが存在する。しかし、その付帯情報のフォーマットに対応していない画像編集ソフトで画像の編集が行われると、その付帯情報が失われてしまうことがある。
【０００５】
特許文献１の方法で位置情報に基づいてファイル名が作成された画像ファイルが、上述の画像処理ソフトで編集された場合、位置を示すファイル名となっているが、付帯情報は失われている。このため、上述の付帯情報を利用して処理を行うアプリケーションは、編集後の画像ファイルを処理することができない。
【０００６】
本発明は、上述した問題点を解決するためになされたものであり、付帯情報が失われてしまった画像ファイルを、付帯情報を含む画像ファイルに書き換えることを目的とする。
【課題を解決するための手段】
【０００７】
この目的を達成するために、請求項１記載の付帯情報書込プログラムでは、コンピュータを、画像データに関する付帯情報にしたがって作成されたファイル名を有する画像ファイルに対して、前記ファイル名に基づいて前記付帯情報を書き込む付帯情報書込手段として機能させる。
【０００８】
また、請求項２記載の付帯情報書込プログラムでは、さらに、コンピュータを、前記画像ファイルに対して、前記付帯情報を含むか否かを判断する付帯情報存在判断手段として機能させ、前記付帯情報書込手段は、前記付帯情報存在判断手段で付帯情報が含まれないと判断された場合にのみ、前記ファイル名に基づいて前記画像ファイルに前期付帯情報を書き込む。
【０００９】
また、請求項３記載の付帯情報書込プログラムでは、さらに、コンピュータを、前記ファイル名に所定の識別子が付与されているか否かを判断する識別子判断手段として機能させ、前記付帯情報書込手段は、前記識別子判断手段で前記ファイル名に所定の識別子が付与されていると判断された場合にのみ、前記ファイル名に基づいて前記画像ファイルに前記付帯情報を書き込む。
【００１０】
また、請求項４記載の付帯情報書込プログラムでは、さらに、コンピュータを、前記付帯情報と前記画像データとを含む前記画像ファイルに対して、前記付帯情報に基づいて前記ファイル名を作成するファイル名作成手段と、前記ファイル名作成手段により前記ファイル名が作成された前記画像ファイルが編集されるか否かを監視する監視手段として機能させ、前記監視手段により前記画像ファイルの編集が行われたことが検知されると、前記付帯情報存在判断手段は前記画像ファイルに対して、前記付帯情報を含むか否かを判断する。
【００１１】
また、請求項５記載の付帯情報書込プログラムでは、さらに、前記ファイル名作成手段は、前記付帯情報のうち所定の情報に基づいて前記ファイル名を作成する。
【００１２】
また、請求項６記載の付帯情報書込プログラムでは、さらに、コンピュータを、前記所定の情報をユーザが任意に選択するための選択手段として機能させる。
【００１３】
また、請求項７記載の付帯情報書込プログラムでは、さらに、前記ファイル名作成手段は、前記所定の情報をエンコードしたものを前記ファイル名として作成する。
【００１４】
また、請求項８記載の付帯情報書込装置では、画像データに関する付帯情報にしたがってファイル名が作成され、且つ少なくとも前記画像データを含む画像ファイルに対して、付帯情報書込手段が、前記ファイル名に基づいて前記付帯情報を書き込む。
【００１５】
また、請求項９記載の付帯情報書込方法では、画像データに関する付帯情報にしたがってファイル名が作成され、且つ少なくとも前記画像データを含む画像ファイルに対して、前記ファイル名に基づいて前記付帯情報を書き込む付帯情報書込工程からなる付帯情報書込方法。
【発明の効果】
【００１６】
請求項１記載の付帯情報書込プログラム、請求項８記載の付帯情報書込装置及び請求項９記載の付帯情報書込方法によれば、付帯情報が欠落した画像ファイルに対して、付帯情報にしたがって作成されたファイル名から付帯情報が書き込まれる。このため、画像の編集ソフトなど他のアプリケーションプログラムで画像ファイルを編集することによって、付帯情報が消失してしまった場合でも、ファイル名に基づいて画像ファイルに付帯情報を書き戻すことができる。
【００１７】
また、請求項２記載の付帯情報書込プログラムによれば、画像ファイルに付帯情報が含まれているか否かが判断され、付帯情報が含まれていない画像ファイルについてのみ画像ファイルに付帯情報が書き込まれる。このため、付帯情報がもともと含まれている画像ファイルに対して付帯情報を書き込むという無駄な処理が無くなる。
【００１８】
また、請求項３記載の付帯情報書込プログラムによれば、ファイル名に所定の識別子が付与されているか否かが判断され、ファイル名に所定の識別子が付与されている場合にのみ付帯情報が書き込まれる。このため、もともと付帯情報にしたがって作成されていないファイル名から画像ファイルに間違った付帯情報を書き込むという無駄な処理が無くなる。
【００１９】
また、請求項４記載の付帯情報書込プログラムによれば、付帯情報にしたがってファイル名が作成された画像ファイルについて編集されるか否かが監視され、編集により付帯情報が失われたことが検知されると、画像ファイルに付帯情報が書き込まれる。このため、編集ソフトなど他のアプリケーションプログラムで画像ファイルを編集することによって、付帯情報が消失してしまった場合でも、ファイル名に基づいて自動的に画像ファイルに付帯情報が書き戻される。
【００２０】
また、請求項５記載の付帯情報書込プログラムによれば、付帯情報のうち所定の情報にしたがってファイル名を作成することができる。このため、不必要な付帯情報に基づいてファイル名が作成されることがなくなる。
【００２１】
また、請求項６記載の付帯情報書込プログラムによれば、選択手段により、付帯情報の中から所定の情報をユーザが任意に選択し、ファイル名を作成することができる。このため、ユーザが必要とする情報だけを用いて、ファイル名を作成することができる。
【００２２】
また、請求項７記載の付帯情報書込プログラムによれば、作成後のファイル名を短くすることができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施の形態について図面を参照して説明する。図１は第１の実施例を実現するためのパーソナルコンピュータ（以下ＰＣと称す）のブロック図である。
【００２４】
ＰＣ３００は、ＣＰＵ３０１、ＲＡＭ３０２、ＲＯＭ３０３、記憶装置３０４、ドライブ３０５、入力装置３０６、表示装置３０７、インターフェース３０８、バス３０９とからなる。ＣＰＵ３０１はＲＯＭ３０３に記憶されている付帯情報書込プログラムを読み出し、実行する。ＲＡＭ３０２は付帯情報書込プログラムが実行されるための作業領域として利用される。ＲＯＭ３０３はＣＰＵを制御するプログラムを記憶している。記憶装置３０４はＨＤとＨＤＤとからなる。記憶装置３０４はドライブ３０５を介して記録媒体Ａから読み込まれた画像ファイルや、インターフェース３０８を介してネットワーク５００から読み込まれる画像ファイル及び付帯情報書込プログラムを記憶する。ドライブ３０５は記録媒体４００の画像ファイルの読み込みと、記録媒体４００への画像ファイルの書き込みとを行う。入力装置３０６はユーザが付帯情報書込プログラムの実行や操作を指示するためのマウスやキーボードなどである。表示装置３０７はＣＲＴや液晶ディスプレイなどのディスプレイである。インターフェース３０８はネットワーク５００と画像ファイルなどのデータのやり取りを行う。バス３０９はＣＰＵ３０１、ＲＡＭ３０２、ＲＯＭ３０３、記憶装置３０４、ドライブ３０５、入力装置３０６、表示装置３０７、インターフェース３０８をそれぞれ繋いでいる。
【００２５】
本実施例は、「ＪＥＩＤＡ規格デジタルスチルカメラ用画像ファイルフォーマット規格（Ｅｘｉｆ）Ｖｅｒｓｉｏｎ２．１日本語版ＪＥＩＤＡ−４９−１９９８」（以降、「Ｅｘｉｆ２．１仕様書」と記述）のフォーマットに基づいて記憶された画像ファイルに適応する付帯情報書込プログラムである。以降、「Ｅｘｉｆ２．１仕様書」のフォーマットで記憶された画像ファイルの付帯情報をＥｘｉｆ情報と称す。
【００２６】
図２に示すように、「Ｅｘｉｆ２．１仕様書」のフォーマットで記憶された画像ファイルは、ヘッダ１０とＥｘｉｆ情報２０と画像データ３０とを有する。ヘッダ１０は画像の幅、高さ、プレーン数などの情報である。しかし、「Ｅｘｉｆ２．１仕様書」のフォーマットで記憶された画像ファイルは、「Ｅｘｉｆ２．１仕様書」のフォーマットに対応していない編集ソフト等のアプリケーションプログラムで処理されると、図３に示す画像ファイルのようにＥｘｉｆ情報２０を有しない画像ファイルになる場合がある。
【００２７】
次に動作について説明する。
【００２８】
ユーザが入力装置３０６により、記憶装置３０４に記憶された付帯情報書込プログラムを起動し、記憶装置３０４に記憶されている複数の画像ファイルの中から所定の画像ファイルを選択し、ファイル名の変更の指示をすると、ＣＰＵ３０１により図４のフローが開始される。
【００２９】
図４のフローが開始されると、まずＣＰＵ３０１は、ユーザが選択した画像ファイルにＥｘｉｆ情報２０が含まれるか否かを判断する（Ｓ４０１）。Ｅｘｉｆ情報２０が含まれない場合（Ｓ４０１：いいえ）、処理を終了する。Ｅｘｉｆ情報２０が含まれる場合（Ｓ４０１：はい）、他のアプリケーションプログラムでこの画像ファイルが編集されることによってＥｘｉｆ情報２０が消失しても、ファイル名からＥｘｉｆ情報２０を書き戻すことができるように、Ｅｘｉｆ情報２０にしたがってファイル名を作成する（Ｓ４０２）。ファイル名の変更についての詳細は後述する。
【００３０】
次に、画像ファイルが他のアプリケーションプログラムで編集されたか否かを監視するために、変更されたファイル名とその画像ファイルが他のアプリケーションプログラムで最後に編集された更新日時とを監視テーブルに登録する（Ｓ４０３）。監視テーブルはＲＡＭ３０２に記憶されている。ＰＣ３００のＯＳにはファイルの更新日時を管理する機能が設けられている。その日時に基づいて監視テーブルに更新日時を登録する。図５に示すように監視テーブルには後述する割り込み処理ルーチンで監視される画像ファイルのファイル名の一覧と、その画像ファイルが最後に編集された更新日時とが対応付けて並べられている。このように画像ファイルの新しく作成されたファイル名と、画像ファイルが最後に編集された更新日時とを監視テーブルに登録すると処理を終了する。
【００３１】
ここで、Ｓ４０２のファイル名の変更について説明する。
【００３２】
Ｓ４０２の処理の段階で、表示装置３０７に図６に示すチェック表が表示される。チェック表の「項目」の欄には、Ｅｘｉｆ情報２０の項目が並べられている。その左隣の「項目ＩＤ」の欄には、各項目ごとに付けられたＩＤが、項目に対応して並べられている。その左隣の「チェックボックス」の欄には、ユーザの入力装置３０６の操作によりチェックの印が入力される。このチェック表により指定されたＥｘｉｆ情報２０の項目にしたがって新しいファイル名が作成される。
【００３３】
新しいファイル名は下記に示すフォーマットで作成する。
ｘ［項目数］［項目ＩＤ］［項目］＿［項目ＩＤ］［項目］＿…［項目ＩＤ］［項目］ｘ．ｊｐｇ
先頭と末尾のｘはＥｘｉｆ情報２０にしたがって作成されたファイル名であるということを示す識別子である。［項目数］には図６のチェック表でチェックの印が付けられたＥｘｉｆ情報２０の項目の数を示す記号が入力される。［項目数］には、１〜９までの数字とａ〜ｒまでの記号との一文字だけ入力され、１〜９までの数字は文字通り項目数が１個〜９個であることを示し、ａ〜ｒまでの記号は項目数が１０個〜２７個であることを示す。［項目ＩＤ］には図６のチェック表でチェックの印が付けられたＥｘｉｆ情報２０の項目のＩＤが入力される。［項目ＩＤ］には０〜９までの数字とａ〜ｑまでの記号が一文字だけ入力される。［項目］には図６のチェック表でチェックの印が付けられたＥｘｉｆ情報２０の項目の情報が可読の書式で入力される。項目ごとに［項目］に入力される文字数は決まっている。［項目］と次の［項目ＩＤ］は半角のアンダーバー＿で区切られている。ファイル名の［項目ＩＤ］と［項目］は、チェック表の上のものから順番に入力される。
【００３４】
例としてＥｘｉｆ情報２０に「北緯３５度０７分０４秒、東経１３６度５５分２１秒」の場所で、「２００４年１２月０３日１５時１６分３９秒」に撮影されたことが記録されているｆｏｏ．ｊｐｇという名の画像ファイルのファイル名を変更する場合を説明する。撮影日時の「２００４年１２月０３日１５時１６分３９秒」を示す情報はＥｘｉｆ情報２０の項目のうち「オリジナル画像の生成日時」の項目に記憶され、撮影場所の「北緯３５度０７分０４秒、東経１３６度５５分２１秒」を示す情報はＥｘｉｆ情報２０の項目のうち「緯度の南北」、「緯度（度、分、秒）」、「経度の東西」、「経度（度、分、秒）」の項目に記憶されている（Ｅｘｉｆ２．１仕様書参照）。
【００３５】
画像ファイルｆｏｏ．ｊｐｇの名前の変更が行われる際に、図６のチェック表で「オリジナル画像の生成日時」、「緯度の南北」、「緯度（度、分、秒）」、「経度の東西」、「経度（度、分、秒）」の項目がユーザにより選択された場合、新しく作成されるファイル名は次のようになる。
ｘ５５２００４１２０３１５１６３９＿ｄＮ＿ｅ３５０７０４＿ｆＥ＿ｇ１３６５５２１ｘ．ｊｐｇ
ｘ５５２００４１２０３１５１６３９＿ｄＮ＿ｅ３５０７０４＿ｆＥ＿ｇ１３６５５２１ｘ．ｊｐｇのファイル名を説明する。先頭の文字ｘは識別子である。２文字目の５は［項目数］である。図６のチェック表で選択された項目数が５個なので５が入力されている。３文字目の５は１つ目の［項目ＩＤ］である。図６のチェック表で「オリジナル画像の生成日時」の項目に１つ目のチェックがされているので、その項目のＩＤ５が入力されている。４文字目から１７文字目までの２００４１２０３１５１６３９は１つ目の［項目］である。画像ファイルｆｏｏ．ｊｐｇのＥｘｉｆ情報２０の「オリジナル画像の生成日時」の項目に「２００４年１２月０３日１５時１６分３９秒」を示す情報が記憶されているので、その日時を示す２００４１２０３１５１６３９が入力されている。１９文字目のｄは２つ目の［項目ＩＤ］である。図６のチェック表で「緯度の南北」の項目に２つ目のチェックがされているので、その項目のＩＤのｄが入力されている。２０文字目のＮは２つ目の［項目］であり、北緯であることを示すＮが入力されている。２２文字目のｅは３つ目の［項目ＩＤ］である。図６のチェック表で「緯度（度、分、秒）」の項目に３つ目のチェックがされているのでその項目のＩＤのｅが入力されている。２３文字目から２８文字目の３５０７０４は３つ目の［項目］であり、３５度０７分０４秒を示す３５０７０４が入力されている。３０文字目のｆは４つ目の［項目ＩＤ］である。図６のチェック表で「経度の東西」の項目に４つ目のチェックがされているので、その項目のＩＤのｆが入力されている。３１文字目のＥは４つ目の［項目］であり、東経であることを示すＥが入力されている。３３文字目のｇは５つ目の［項目ＩＤ］である。図６のチェック表で「経度（度、分、秒）」の項目に５つ目のチェックがされているので、その項目のＩＤのｇが入力されている。３４文字目から３９文字目の１３６５５２１は５つ目の［項目］であり、１３６度５５分２１秒を示す１３６５５２１が入力されている。５０文字目のｘは識別子である。１８文字目、２１文字目、２９文字目、３２文字目の＿は一つ前の［項目］と次の［項目ＩＤ］とを区切るために入力されている。
【００３６】
以上に説明したように、ユーザが、付帯情報書込プログラムを起動し、ファイル名の変更を指示し、図４のフローが行われると、選択された画像ファイルに新しいファイル名が作成され、監視テーブルにその新しいファイル名とその画像ファイルが最後に編集された更新日時が登録される。このようにして監視テーブルに登録された画像ファイルは、これから説明する図７の割り込み処理ルーチンによって、他のアプリケーションプログラムによって編集されたか否かが監視される。そして、他のアプリケーションプログラムによる編集によって、Ｅｘｉｆ情報２０が欠落した画像ファイルについては、ファイル名に基づいてＥｘｉｆ情報２０を書き込む処理が行われる。
【００３７】
図７のフローについて説明する。図７の割り込み処理ルーチンはＰＣ３００が起動されると、所定の間隔で絶えず開始される。図７の割り込み処理ルーチンが開始されると、監視テーブルに登録されている画像ファイルの更新日時と、現在のＯＳで管理されている更新日時との比較が行われ、編集された画像ファイルがあるか否かが判断される（Ｓ７０１）。この比較は、監視テーブルに登録されている全ての画像ファイルについて行われる。
【００３８】
編集された画像ファイルが一つもない場合（Ｓ７０１：いいえ）、監視テーブルに登録されているすべての画像ファイルは、Ｅｘｉｆ情報２０を有していると判断できるので、何も行わず処理を終了する。編集された画像ファイルがある場合（Ｓ７０１：はい）、その画像ファイルがＥｘｉｆ情報２０を有しているか否かを判断する（７０２）。Ｓ７０２のこの判断は、Ｓ７０１で複数の画像ファイルが編集されていると判断されている場合、編集されている画像ファイル全てについて行われる。編集されている全ての画像ファイルが図２の画像ファイルのようにＥｘｉｆ情報２０を有していると判断された場合（Ｓ７０２：はい）、編集された画像ファイルの監視テーブルの更新日時を更新し（Ｓ７０４）、終了する。
【００３９】
図３の画像ファイルのようにＥｘｉｆ情報２０が欠落した画像ファイルがある場合（Ｓ７０２：いいえ）、その画像ファイルのファイル名に基づいて、その画像ファイルにＥｘｉｆ情報２０を書き込み、図２のようにＥｘｉｆ情報２０を有する画像ファイルに戻し（Ｓ７０３）、編集された画像ファイルの監視テーブルの更新日時を更新し（Ｓ７０４）、処理を終了する。
【００４０】
このように監視テーブルに登録された画像ファイルは、割り込み処理ルーチンによって常に監視され、Ｅｘｉｆ情報２０が欠落した画像ファイルについては、その画像ファイルのファイル名に基づいてＥｘｉｆ情報２０が書き込まれる。このため、「Ｅｘｉｆ２．１仕様書」に対応していない他のアプリケーションプログラムで編集されることによりＥｘｉｆ情報２０が欠落したとしても、監視テーブルに登録されている画像ファイルは常にＥｘｉｆ情報２０を有する。
【００４１】
次に、Ｓ７０３で行われる処理について図８のフローを参照して詳細に説明する。まずファイル名の先頭と末尾の文字を読み込む（Ｓ８０１）。次に、先頭と末尾の文字がｘであるか否かを判断する（Ｓ８０２）。先頭と末尾の文字がｘでない場合は（Ｓ８０２：いいえ）、終了する。先頭と末尾の文字がｘである場合は（Ｓ８０２：はい）、次の文字を読み込む（Ｓ８０３）。次に、読み込んだ文字が１〜９、ａ〜ｒの範囲の文字か否かを判断する（Ｓ８０４）。読み込んだ文字が１〜９、ａ〜ｒの範囲の文字でない場合（Ｓ８０４：いいえ）、終了する。
【００４２】
読み込んだ文字が１〜９、ａ〜ｒの範囲の文字である場合（Ｓ８０４：はい）、読み込んだ文字を数値に変換し（Ｓ８０５）、次の文字を読み込む（Ｓ８０６）。次に、読み込んだ文字が０〜９、ａ〜ｑの範囲の文字か否かを判断する（Ｓ８０７）。読み込んだ文字が０〜９、ａ〜ｑの範囲の文字でない場合（Ｓ８０７：いいえ）、終了する。
【００４３】
読み込んだ文字が０〜９、ａ〜ｑの範囲の文字である場合（Ｓ８０７：はい）、次の文字から＿まで、もしくは＿がない場合はファイル名の末尾より１文字前までの文字列を読み込む（Ｓ８０８）。次に、読み込んだ文字列を「Ｅｘｉｆ２．１仕様書」の形式に変換し、それをＲＡＭ３０２に記憶する（Ｓ８０９）。これでファイル名の１つの項目についての変換ができたことになる。
【００４４】
次に、Ｓ８０５で求めた項目数のすべての項目が「Ｅｘｉｆ２．１仕様書」の形式に変換され、それがＲＡＭ３０２に記憶されたか否かを判断する（Ｓ８１０）。すべての項目が「Ｅｘｉｆ２．１仕様書」の形式に変換されておらず、また、それがＲＡＭ３０２に記憶されていない場合は（Ｓ８１０：いいえ）、Ｓ８０６へ戻る。すべての項目が「Ｅｘｉｆ２．１仕様書」の形式に変換され、それらがすべてＲＡＭ３０２に記憶されている場合は（Ｓ８１０：はい）、ＲＡＭ３０２に記憶された全てのＥｘｉｆ情報２０を画像ファイルに書き込み（Ｓ８１１）、終了する。
【００４５】
次に、第２の実施例として、ユーザが入力装置３０６により、記憶装置３０４に記憶されている画像ファイルの中から所定の画像ファイルを選択して、Ｅｘｉｆ情報２０の書き込みを指示すれば、ファイル名に基づいてその画像ファイルにＥｘｉｆ情報２０が書き込まれる付帯情報書き込みプログラムを説明する。
【００４６】
第１の実施例では図４のフローでファイル名が変更され監視テーブルに登録された画像ファイルだけが、Ｅｘｉｆ情報２０が欠落した場合に画像ファイルにファイル名に基づいてＥｘｉｆ情報２０が書き加えられる。したがって、Ｅｘｉｆ情報２０にしたがってファイル名が作成された画像ファイルであっても、他のユーザのＰＣから譲り受け記憶装置３０４に記憶されている画像ファイル等のように監視テーブルに登録されていない画像ファイルは、他のアプリケーションプログラムでの編集によりＥｘｉｆ情報２０が欠落したとしても、ファイル名に基づいてＥｘｉｆ情報２０が書き込まれることは無い。これに対し第２の実施例ではユーザがＥｘｉｆ情報２０の書き込みを指示すれば、監視テーブルに登録しなくてもファイル名に基づいてその画像ファイルにＥｘｉｆ情報２０が書き込まれる。このため、Ｅｘｉｆ情報２０にしたがってファイル名が作成された画像ファイルであれば、たとえその画像ファイルのＥｘｉｆ情報２０が欠落したとしても、ファイル名に基づいてＥｘｉｆ情報２０を書き戻すことができる。
【００４７】
第２の実施例を実現するためのＰＣの構成は、第１の実施例のＰＣ３００と同様の構成である。記憶装置３０４には第１の実施例と同様の書式でＥｘｉｆ情報２０にしたがってファイル名が作成されている画像ファイルが保存されている。
【００４８】
第１の実施例と第２の実施例で異なることは、第２の実施例では第１の実施例の図７に示す割り込み処理ルーチンが定期的に開始されることはなく、ユーザが入力装置３０６により、記憶装置３０４に記憶されている画像ファイルの中から所定のファイルを選択して、Ｅｘｉｆ情報２０の書き込みを指示すれば、図８のＥｘｉｆ情報２０の書き込みのフローが開始されることである。
【００４９】
次に、第３の実施例について説明する。上述の第１の実施例および第２の実施例では、ファイル名の［項目］については可読の書式としたが、可読にするとファイル名が長くなる。ＰＣ３００で利用される各種ＯＳではファイル名の長さに制限がある。そこで第３の実施例では、［項目］に入力されるＥｘｉｆ情報２０がバイナリデータである場合は、バイナリデータを可読の書式で入力するのではなくアルファベット、若しくは記号、若しくは数字、若しくはそれらの組み合わせからなる文字列にエンコードしたものを入力する。バイナリデータをアルファベット、若しくは記号、若しくは数字、若しくはそれらの組み合わせからなる文字列にエンコードする方法としてＢａｓｅ６４と言う方法が広く用いられている。
【００５０】
Ｂａｓｅ６４は、バイナリデータを３バイト分並べて６ｂｉｔづつに区切り０−６３の数値とみなし、その数値に対してアルファベットの大文字（２６文字）、小文字（２６文字）、数字（１０文字）、記号の＋と／の計６４文字を割り当てる方法である。（または記号の＝を元データが３の倍数のバイト数でない場合の代替に使用する。）
しかし、ファイル名には記号の／は使用できず、「Ｗｉｎｄｏｗｓ（登録商標）」等では大文字小文字の区別がされないためＢａｓｅ６４の手法はそのままでは使用できないため、特別なエンコード方法を行う。
【００５１】
バイナリデータを８バイト並べて、５ｂｉｔづつに区切り、０〜３１の数値とみなし、その数値に対して、アルファベットの大文字（２６文字）と０、９、８、７、＋、＿を割り当てる。また、元データが５の倍数のバイト数でないときには、１、２、３、４、５の数値を割り当てて足りないバイト数を表す。（なお、Ｕｎｉｘ（登録商標）系のＯＳであれば大文字と小文字の区別が行われるため、Ｂａｓｅ６４の結果から記号／を他の記号＝などに置換することで、使用できる。）
この特別なエンコードの実施例について、例を挙げて説明する。Ｅｘｉｆ情報２０の「オリジナル画像の生成日時」の項目の２００５年２月５日１４時５４分１４秒を示す情報をエンコードする場合を例に挙げて説明する。まず、日時を１９７０／０１／０１からの数値に変換（ＰＣでは一般的な方法）する。１１０７９２８４５４（４２０９Ａ５８６：１６進数表記）が得られる。すると変換前のバイナリの値は「４９  ０９  Ａ５  ８６」となり、これを前記のエンコード方式を用いると、ＩＩＥ０ＬＢＱ７と変換される。第１の実施例や、第２の実施例のように２００５０２５１４５４１４と変換する場合に比べて、文字数を１４文字から８文字に削減できる。
【００５２】
また、ＩＩＥ０ＬＢＱ７からは、４２  ０９  Ａ５  ８６と変換して、２００５年２月５日１４時５４分１４秒を抽出することができる。
【００５３】
上述の第１〜３の実施例では「Ｅｘｉｆ２．１仕様書」のフォーマットで記憶された画像ファイルで説明したが、付帯情報が別のフォーマットで記憶された画像ファイルであっても良い。
【００５４】
上述の第１〜３の実施例では識別子としてｘをファイル名の先頭と末尾に付したが、他の記号を用いても良い。
【００５５】
上述の第３の実施例では、ファイル名のうち［項目］の箇所だけをエンコードするものとして説明したが、ファイル名全体をエンコードしたものとしても良い。ファイル名全体をエンコードすればさらにファイル名を短くすることができる。
【図面の簡単な説明】
【００５６】
【図１】ＰＣのブロック図。
【図２】Ｅｘｉｆ情報を有する画像ファイル。
【図３】Ｅｘｉｆ情報を有しない画像ファイル。
【図４】ファイル名の変更処理のフローチャート。
【図５】監視テーブル。
【図６】チェック表。
【図７】割り込み処理ルーチンのフローチャート。
【図８】Ｅｘｉｆ情報書き込み処理のフローチャート。
【符号の説明】
【００５７】
１０  ヘッダ
２０  Ｅｘｉｆ情報
３０  画像データ
３００  ＰＣ
３０１  ＣＰＵ
３０２  ＲＡＭ
３０３  ＲＯＭ
３０４  記憶装置
３０５  ドライブ
３０６  入力装置
３０７  表示装置
３０８  インターフェース
３０９  バス
４００  記録媒体
５００  ネットワーク
【図１】
2006268401.tif 000003
【図２】
2006268401.tif 000004
【図３】
2006268401.tif 000005
【図４】
2006268401.tif 000006
【図５】
2006268401.tif 000007
【図６】
2006268401.tif 000008
【図７】
2006268401.tif 000009
【図８】
2006268401.tif 000010