画像処理システム、情報処理装置及びその制御方法、記憶媒体、プログラム
【課題】識別情報が付加された画像を、画像のファイル名に基づいて容易に検索することができる情報処理装置を提供する。
【解決手段】情報処理装置は、静止画または動画をデジタルデータとして撮影するデジタルカメラ100と、撮影された画像ファイルを検索または表示するPC101とからなる。カメラからPCに送信された画像には、カメラ内で用いられていたファイル名と画像の識別情報が組み合わされた新たなファイル名が付与される。
【解決手段】情報処理装置は、静止画または動画をデジタルデータとして撮影するデジタルカメラ100と、撮影された画像ファイルを検索または表示するPC101とからなる。カメラからPCに送信された画像には、カメラ内で用いられていたファイル名と画像の識別情報が組み合わされた新たなファイル名が付与される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像ファイルを検索するために画像ファイル名に識別情報を付加する画像処理システム、情報処理装置及びその制御方法、並びにプログラムに関する。
【背景技術】
【0002】
近年、デジタルカメラなどの普及により、画像を撮影する機会が増えてきたのに伴い、ユーザは大量の画像ファイルを扱わなければならなくなった。そのため、数多くの画像ファイルを効率的に整理、検索を行うべく、画像ファイルに一意な識別情報を付加する技術が提案されている。
【0003】
従来の技術では、撮像装置の製造番号などを用いて、一意な識別情報を画像ファイル名にするものが知られている(特許文献1参照)。また、デジタルカメラで今まで何枚撮影したのかを示すカウンタ情報から撮影する画像ファイル名を作成するものも知られている(特許文献2参照)。
【特許文献1】特開2003−023602号公報
【特許文献2】特開2005−027350号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、撮像装置の製造番号などは一般に数字の羅列など、ユーザになじみのないものである。その結果、上記特許文献1では、画像ファイル名は数字の羅列となってしまい、ユーザには画像ファイル名が分かりにくいものとなってしまう欠点があった。
【0005】
また、特許文献2記載の技術によれば、同一のデジタルカメラ内では画像ファイルを一意に区別することができるが、PC等に送信されてしまうと画像ファイルを一意に区別できなくなってしまうおそれがあった。
【0006】
本発明の目的は、撮像装置などの画像処理装置で画像に識別情報を付加した場合に、画像の転送先となる情報処理装置においても、取り扱いが容易な画像ファイル名を付加することができる情報処理装置及びその制御方法、並びにプログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記目的を達成するために、請求項1記載の画像処理システムは、画像処理装置と、情報処理装置とからなる画像処理システムであって、前記画像処理装置は、画像ファイルに対して一意な識別情報を作成する作成手段と、前記情報処理装置に、前記画像ファイルと前記識別情報とを送信する送信手段とを有し、前記情報処理装置は、前記画像処理装置から送信された前記画像ファイルと前記識別情報とを受信する受信手段と、受信した画像ファイルのファイル名と識別情報とに基づき、新たなファイル名を作成して前記画像ファイルに付与するファイル名付与手段とを有する。
【0008】
請求項2記載の情報処理装置は、画像ファイルを受信する第1の受信手段と、前記画像ファイルを特定する識別情報を受信する第2の受信手段と、前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与手段と、前記新たなファイル名を付与した画像ファイルを記憶する第1の記憶手段とを有する。
【0009】
請求項10記載の情報処理装置の制御方法は、画像ファイルを受信する第1の受信工程と、前記画像ファイルを特定する識別情報を受信する第2の受信工程と、前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与工程と、前記新たなファイル名を付与した画像ファイルを記憶する記憶工程とを有する。
【0010】
請求項11記載のプログラムは、コンピュータに、画像ファイルを受信する第1の受信工程と、前記画像ファイルを特定する識別情報を受信する第2の受信工程と、前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与工程と、前記新たなファイル名を付与した画像ファイルを記憶する記憶工程とを実行させることを特徴とする。
【0011】
請求項12記載のコンピュータで読み取り可能な記憶媒体は、請求項11に記載のプログラムを記憶する。
【発明の効果】
【0012】
本発明によれば、情報処理装置のファイルシステムで識別情報による画像ファイルの検索を可能とするとともに、ユーザにはわかりやすいファイル名で画像ファイルの表示を行うことが可能となる。
【発明を実施するための最良の形態】
【0013】
以下、本発明の実施の形態を図面を参照しながら詳細に説明する。
【0014】
図1は、本発明の実施の形態に係る画像処理システムにおいて、デジタルカメラのブロック構成を示す図である。
【0015】
図1において、画像処理システムは、画像処理装置としてのデジタルカメラ100と、デジタルカメラ100と通信可能な情報処理装置としてのパーソナルコンピュータ(PC)101からなる。これらが有線、或いは無線で接続されることで本実施形態における画像処理システムが構築される。
【0016】
デジタルカメラ100は以下のユニットを有する。
【0017】
通信制御装置102は、PC101との通信を行うユニットであり、PC101との間での有線による通信及び無線による通信を制御する。
【0018】
演算装置(CPU)103は、入力信号やプログラムに基づき、デジタルカメラ100全体の動作制御を行う。
【0019】
信号処理装置104は、撮影画像の圧縮符号化や輪郭強調、ノイズ除去等の処理を行う。
【0020】
光学ユニット105は、レンズやオートフォーカス、ズーム駆動用モータなどを含む。
【0021】
一次記憶装置(DRAM)106は、CPU103の一時記憶領域などに用いられる。
【0022】
二次記憶装置107は、フラッシュメモリなどの不揮発性記憶装置であり、各種パラメータなどが記憶される。
【0023】
操作部材108は、カーソルキーや設定/実行ボタン、メニューキーなどを含み、ユーザがデジタルカメラ100に各種指示を与えるためのものである。
【0024】
表示部材109は、画像データやグラフィカルユーザインタフェース(GUI)を表示するための部材であり、例えばLCDなどが用いられる。
【0025】
読み出し専用メモリ(ROM)110は、CPU103が実行するための制御プログラムを記憶する。
【0026】
着脱可能記憶媒体111はいわゆるメモリカードに代表される着脱可能な媒体であって、画像データを記憶する。デジタルカメラ100は、着脱可能記憶媒体111にアクセスするためのインタフェース(図示せず)を有し、画像データへのアクセスを行う。
【0027】
本実施例における識別情報は、UUID(Universal Unique Identifier)といい、デジタルカメラ100で作成される16バイトの数値からなるデータである。UUIDは、デジタルカメラ100の固有番号、撮影日時及びデジタルカメラ100の二次記憶装置107に記録されているカウントアップ情報から作成され、画像データごとに一意な数値となる。デジタルカメラの固有番号とは、例えば製造番号や、製造時に記憶されるMACアドレスなどがある。
【0028】
また、デジタルカメラ100の二次記憶装置107に記録されているカウントアップ情報とは、同一デジタルカメラで撮影した枚数を示すものであり、撮影ごとに数値が1ずつ加算される。
【0029】
図2は本実施形態に係るPC101に相当する情報処理装置の概略構成を示す図である。
【0030】
図2において、2001は表示部材であり、その表示画面には、例えば編集中の文書、図形、画像その他の編集情報、アイコン、メッセージ、メニューその他のユーザインタフェース情報が表示される。
【0031】
2002はVRAMであり、表示部材2001の表示画面に表示するための画像が描画される。このVRAM2002に生成された画像データは、表示部材2001に転送され、これにより表示部材2001に画像が表示される。
【0032】
2003はビットムーブユニット(BMU)であり、例えば、メモリ間(例えば、VRAM2002と他のメモリ)のデータ転送や、メモリと各I/Oデバイスとの間のデータ転送を制御する。
【0033】
2004はキーボードやポインティングデバイスなどのユーザ操作を受け付けるための操作部材である。
【0034】
2005は画像入力デバイスインターフェイスであり、デジタルスチルカメラやデジタルビデオ、スキャナなどからの画像の入力を制御する。
【0035】
2006はCPUである。CPU2006はROM2007、HDD2009又はフレキシブルディスクに格納された制御プログラムに基づき、CPU2006に接続された各デバイスを制御する。
【0036】
2007はROMであり、各種の制御プログラムやデータを保持する。
【0037】
2008はRAMであり、CPU2006のワーク領域、エラー処理時のデータの退避領域、制御プログラムのロード領域等を有する。
【0038】
2009はハードディスク(以下「HDD」)である。HDD2009は、PC101内で実行される各制御プログラムやコンテンツを格納することができる。例えば、HDD2009には、Webブラウザ120、電子アルバムデータ、電子アルバム編集プログラムなどが格納されている。
【0039】
2010はフレキシブルディスクドライブ(FDD)である。FDD2010はフレキシブルディスクやCompact Disk(CD)、Digital Versatile Disk(DVD)等の光ディスクメディアなどによりアクセスを制御する。また、ICカードやメモリカード等のカード型メディアのような外部記憶装置に対するアクセスを制御する。
【0040】
2011はネットワークインタフェースであり、他の情報処理装置やプリンタ等とインターネットを介して通信を行うことができる。
【0041】
2012はCPUバスであり、アドレスバス、データバス及びコントロールバスを含む。CPU2006に対する制御プログラムの提供は、ROM2007、HDD2009、FDD2010から行うこともできるし、ネットワークインタフェース2011を介してインターネット経由で他の情報処理装置等から行うこともできる。
【0042】
以下では、デジタルカメラ100が撮影動作を行い、撮影画像をPCに送信する際の処理について説明する。
【0043】
本処理では、デジタルカメラ100の二次記憶装置107にカウントアップ情報及び、図3に示すUUID管理テーブルがすでに記録されているものと仮定する。
【0044】
図3のUUID管理テーブルは、UUID3002と画像ファイル名3003を対応させて管理するテーブルである。UUID管理テーブルには、転送済みフラグを示すフィールドFlag3001がある。UUID管理テーブルのフィールドFlagは、画像が送信されたことがあるのかを示し、一度でも送信されれば、フラグが付けられる。
【0045】
以下、図4を参照しながら処理の流れを説明する。なお、本実施形態では、画像ファイルはPC101のHDD2009に存在するフォルダ「C:¥Temp」に一旦送信され、その後PC101がアクセス可能な記憶媒体にコピーされるものとする。
【0046】
図4は、デジタルカメラが被写体を撮影し、結果として得られた画像ファイルにUUIDを付加するまでの処理を説明する図である。
【0047】
まず、ステップS4001で、デジタルカメラ100はユーザ操作に応じて撮影動作を行い、被写体を撮影する。
【0048】
ステップS4002で、デジタルカメラ100は得られた撮影データから画像ファイルを作成する。このとき、デジタルカメラ100は作成した画像ファイルに対し、例えばIMG_0001.jpgというファイル名を付与する。これが、デジタルカメラ100内で取り扱われるファイル名(以下、「カメラ内ファイル名」)となる。
【0049】
ステップS4003で、デジタルカメラ100は、デジタルカメラ100の固体番号、撮影日時、カウントアップ情報からUUIDを作成する。具体的には、デジタルカメラ100の固有番号、撮影日時、カウントアップ情報の値を連結した文字列をUUIDとする。
【0050】
ステップS4004で、デジタルカメラ100はUUID管理テーブルを更新する。具体的には、ステップS4002にて画像ファイルに付与したファイル名と、ステップS4003で作成したUUIDを関連付けてUUID管理テーブルに登録する。
【0051】
以上の処理により、画像ファイルにUUIDを付与することができる。
【0052】
次に、PC101が、UUID及びUUIDを付加された画像ファイルをデジタルカメラ100から受信し、新たなファイル名を付与して記録する処理について説明する。本処理のフローを図5に示す。
【0053】
まず、ステップS5001で、PC101はデジタルカメラ100からUUIDと画像ファイルを受信する。このUUID及び画像ファイルの送受信処理については後で詳しく述べるが、画像ファイルの受信とUUIDの受信は1度の通信で行われる場合もあるし、複数回の通信により行われる場合もある。
【0054】
ステップS5002で、PC101は受信した画像ファイルのファイル名を変更する。具体的には、画像ファイルにPC内の「C:¥Temp」フォルダで取り扱うためのファイル名(以下、「PC内ファイル名」)を付与するファイル名付与処理を行う。付与された新たなファイル名は、後述するUUIDの照合を利用した各種処理を行うために用いられる。本実施形態におけるPC内ファイル名は、UUIDとカメラ内ファイル名を連結したファイル名とする。
【0055】
ステップS5003において、PC101は画像ファイルを「C:¥Temp」フォルダに保存する。
【0056】
ステップS5004において、PC101はフォルダ「C:¥Temp」内の画像ファイルをコピーし、HDD2009に存在する画像格納先フォルダに保存する。この画像保存先フォルダは、PC101が画像ファイルを受信する際に決定してもよいし、デジタルカメラ100側で予め指定されてもよい。
【0057】
ステップS5005において、PC101は画像格納先フォルダに保存した画像ファイルのファイル名から、UUID部分を削除してファイル名を表示する。すなわち、PC内ファイル名からUUID部分を削除し、カメラ内ファイル名と同じファイル名を表示する。
【0058】
以上がPC101における画像の受信・記憶処理である。なお、本実施形態では、「C:¥Temp」を通常ユーザがアクセスできない隠しフォルダとし、画像格納先フォルダをユーザがアクセス可能なフォルダとする。このことにより、ユーザは数字が羅列されたUUIDを意識しないで、デジタルカメラ100で付けられたファイル名と同じファイル名で画像ファイルを扱うことが可能である。
【0059】
以上述べたように、本実施形態では、PCファイル名にUUIDを含めることとした。PCファイル名はディレクトリエントリに含まれるので、ディレクトリエントリを検索することでUUIDを検索することが可能となる。以下、ディレクトリエントリの構成について説明する。
【0060】
PC101のOSにはファイルシステムと呼ばれるファイルを階層構造で管理する機能が用意されていて、この機能を実現するために、ディレクトリエントリが使用されている。ディレクトリエントリには、あるフォルダ内の全てのフォルダ及びファイルに関する情報が記録されている。
【0061】
FAT(File Allocation Table)ファイルシステムにおけるディレクトリエントリは図6の構成となる。この構成となるのは、拡張子を除くファイル名が8文字以内かつ拡張子が3文字以内のファイル名のときであり、この形式のファイル名は8.3形式ファイル名と呼ばれる。
【0062】
FileName6001はファイル名(8文字以内)、Extention6002は拡張子(3文字以内)である。Attribute6003はファイル属性を示す。Reserved6004は予約領域を示す。CreateTimeMs6005は作成時刻の10ミリ秒を示す。CreateTime6006は作成時刻、CreateDate6007は作成日時を示す。
【0063】
ClusterHighWord6009は、FAT32で使用される先頭クラスタ番号の上位16ビットを示す。UpdateTime6010は更新時刻、UpdateDate6011は更新日時を示す。CluSer6012は先頭クラスタ番号の下位16ビットを示す。FileSize6013はファイルサイズである。ディレクトリの場合は0である。
【0064】
8.3形式ファイル名よりも長いファイル名の場合は、図6のディレクトリエントリとともに、図7のLNF(Long File Name)ディレクトリエントリも使用される。
【0065】
図7のLNFディレクトリエントリ1つでは、Unicodeで最大13文字のファイル名を記録することができる。13文字を超える場合は、LNFディレクトリエントリを追加してファイル名を記録する。
【0066】
LNFSeqNumber7001はファイル名の順番を示す。0x40が加えられていれば、このLNFディレクトリエントリがファイル名の最後を示すLNFディレクトリエントリであることを示す。
【0067】
Name1st(7002)は13文字中の最初の5文字を示す。Attribute7003はLNFディレクトリエントリであることを示す値(0x0f)が入る。Reserved7004は予約である。CheckCodeForShortName7005は8.3形式ファイル名のチェックコードである。
【0068】
Name2nd(7006)は13文字中の6文字目から11文字目が入る。Cluster7007は使用するクラスタの値が入るが、LNFディレクトリエントリの場合は常に0x0000が入る。Name3rd(7008)は13文字中の12文字目と13文字目が入る。
【0069】
例えば、PC内ファイル名が10000000000000000000000000000_IMG_0001.jpgの場合、ディレクトリエントリには図8のように記録される。
【0070】
SEは8.3形式のファイル名に変換したときのディレクトリエントリで、このファイルのファイルサイズ等のファイルについての情報が記録される。ここでは、100000〜1.JPGという8.3形式ファイル名に変換されるものとする。この例の場合、LNFディレクトリエントリは4つ使われる。
【0071】
LNFディレクトリエントリLE1から順にファイル名が記録されていき、最後にLNFディレクトリエントリLE4で記録される。尚、LE4でファイル名を記録し終った後に、ファイル名の終了を示す値0x0000を記録する。ファイル名を記録するName1st、Name2nd、Name3rdに空きがあれば、0xFFFFで埋めていく。
【0072】
ただし、ファイル名の文字数が13の倍数の場合は、ファイル名の終了を示す値0x0000は使われず、また0xFFFFで埋める必要はない。
【0073】
以下では、PC101が特定のUUIDを有する画像データを検索する動作について説明する。
【0074】
ここでは、「C:¥Temp」フォルダには、画像ファイル10000000000000000000000000000_IMG_0001.jpgが保存されているものとする。
【0075】
まず、PC101は「C:¥Temp」のディレクトリエントリを検索する。「C:¥Temp」内の各ディレクトリエントリのファイル名フィールドから「10000000000000000000000000000」が存在するディレクトリエントリを検索する。見つかったディレクトリエントリのファイル名フィールドはカメラ内ファイル名と連結したものであるから、そこからUUID部分10000000000000000000000000000を抜き出す。
【0076】
以上により、PC101はOSの機能であるファイルシステムを利用して、ディレクトリエントリからUUIDを検索する。すなわち、PC101は特別なデータベースなどを使用しなくても、UUIDを検索キーにした画像ファイルの検索を行うことができる。その結果、データベースの実装に必要な分の容量及びコストを抑えることが可能となる。
【0077】
なお、本実施の形態では、PC101とデジタルカメラ100の接続はUSB等の有線接続でもよいし、IEEE802.x等の無線接続でもよい。
【0078】
図9は、図1の画像処理システムによって実行される、画像ファイルをデジタルカメラ100からPC101に送信する処理の手順を示すフローチャートである。点線より左側は、デジタルカメラ100のCPU103が入力信号やプログラムにしたがって行う処理である。点線より右側は、PC101のCPU2006が入力信号やプログラムにしたがって行う処理である。他のフローチャートについても同様とする。
本フローは、デジタルカメラ100とPC101との接続が確立したことを検知したときに、自動的に開始されてもよいし、ユーザが操作部材108を操作して転送を指示することで開始されてもよい。
【0079】
ステップS9001で、デジタルカメラ100はUUID管理テーブルを参照し、転送対象の画像ファイルのUUIDを取得し、PC101へ送信する。転送対象の画像ファイルは、予めユーザが操作部材108を操作して指定するようにしてもよいし、自動的に着脱可能記憶媒体内の全ての画像ファイルが転送対象となってもよい。
【0080】
ステップS9002で、PC101はステップS9001でデジタルカメラ100から送信されたUUIDを受信する。
【0081】
ステップS9003で、PC101上はフォルダ「C:¥Temp」のディレクトリエントリを参照し、受信したUUIDを含むファイル名を有する画像ファイルを検索する。
【0082】
ステップS9004で、PC101はステップS9002で受信したUUIDの中に、「C:¥Temp」内の画像ファイルのディレクトリエントリに含まれないものがあるか否かを判断する。これは、デジタルカメラ100には存在し、PC101には存在しない画像ファイルがあるか否かをUUIDを照合することで判断している。含まれないものがあると判断した場合には、処理をステップS9005に進める。含まれないものがない、つまりデジタルカメラ100から受信したUUIDを有する画像ファイルはすべてPC101内に存在すると判断した場合には処理を終了する。
【0083】
ステップS9005で、PC101は一致しなかったUUIDをデジタルカメラ100に送信する。
【0084】
ステップS9006で、デジタルカメラ100はPC101からUUIDを受信する。
【0085】
ステップS9007で、デジタルカメラ100はUUID管理テーブルを参照し、ステップS9006で受信したUUIDと対応する画像ファイルを特定し、PC101に送信する。
【0086】
ステップS9008で、PC101はデジタルカメラ100が送信した画像ファイルを受信し、本処理を終了する。本処理の終了後、PC101は図5に示すファイル名の付与を行うことになる。
【0087】
以上のように、本実施形態では、デジタルカメラ100内の画像ファイルとPC101内の画像ファイルとのと照合を、UUIDを用いて行った。このことにより、すでにPC101内に存在する画像ファイルはデジタルカメラ100からは送信せず、必要なデータのみを送信することが可能となる。したがって、デジタルカメラ100からPC101に送信する処理の迅速化を図ることが可能となる。また、UUIDがPC内ファイル名に含まれることで、ディレクトリエントリを検索すればUUIDを照合できる。このことにより、特別なデータベースなどを持つことなくUUIDの照合が可能となり、実装のコストが削減される。
【0088】
次に、PC101からデジタルカメラ100への書き戻し処理について述べる。本実施形態における書き戻し処理とは、PC101からデジタルカメラ100に画像ファイルを送信する処理である。
【0089】
図10は、図1の画像処理システムによって実行される書き戻し処理の手順を示すフローチャートである。
【0090】
ここでは、ユーザ操作により、PC101のHDD2009に記憶された画像ファイルの1つがデジタルカメラ100に書き戻す対象として選択されたものと仮定する。画像ファイルのカメラ内ファイル名は「IMG_0001.jpg」、UUIDは0x10000000000000000000000000000000であるとする。したがって、PC内ファイル名は「10000000000000000000000000000000_IMG_0001.jpg」である。
【0091】
まず、ステップS1001で、PC101はフォルダ「C:¥Temp」にアクセスし、末尾のファイル名と一致する画像ファイルを探す。この例では、ファイル名の末尾が“IMG_0001.jpg”であるファイルを探す。
【0092】
ステップS1002で、PC101は一致した画像ファイル名からUUIDを取得する。この例では、取得されるUUIDは「0x10000000000000000000000000000000」である。
【0093】
ステップS1003で、PC101はステップS1002で取得したUUIDをPC101からデジタルカメラ100に送信する。
【0094】
ステップS1004で、デジタルカメラ100は、ステップS1003で送信されたUUIDを受信する。
【0095】
ステップS1005で、デジタルカメラ100は、受信したUUIDがUUID管理テーブルに存在するのか判断する。UUIDが存在する場合には、デジタルカメラ100側にも同じ画像ファイルがあるということなので、本処理を終了する。UUIDが存在しない場合には処理はステップS1006に進む。受信したUUIDが複数ある場合、UUID管理テーブルに存在しないUUIDが1つでもある場合には処理はステップS1006に進む。
【0096】
ステップS1006で、デジタルカメラ100はステップS1005にてUUID管理テーブルに存在しないと判断したUUIDをデジタルカメラ100に送信する。
【0097】
ステップS1007で、PC101はデジタルカメラ100から送信されたUUIDを受信する。
【0098】
ステップS1008で、PC101はステップS1008で受信したUUIDを有する画像ファイルをデジタルカメラ100に送信する。本フローの例では、画像ファイル10000000000000000000000000000000_IMG_0001.jpgがPC101からデジタルカメラ100に送信される。
【0099】
ステップS1009で、デジタルカメラ100はPC101から送信された画像ファイルを受信する。
【0100】
ステップS1010で、デジタルカメラ100は受信した画像ファイルのファイル名からUUID部分を削除する変更を行う。なお、この削除処理はPC101側で行ってもよい。すなわち、ステップS1008の送信処理の前に、PC101が送信対象の画像ファイルのファイル名からUUID部分を削除してもよい。
【0101】
ステップS1011で、デジタルカメラ100は画像ファイル名とUUIDをデジタルカメラ100内のUUID管理テーブルに記録して、本処理を終了する。この場合、フィールドUUIDには“0x10000000000000000000000000000000”、フィールドNameには、“IMG_0001.jpg”が書き込まれる。
【0102】
以上のように、UUIDを用いて、送信対象となる画像ファイルのうち、すでにデジタルカメラ100に存在する画像ファイルは送信しないようにすることができる。したがって、デジタルカメラ100に送信する処理を迅速化することが可能となる。
【0103】
なお、一般に、デジタルカメラ100の着脱可能記憶媒体111の容量はPC101のHDD2009よりも小さいため、本実施形態における書き戻し処理では、PC101はサイズを小さくした画像ファイルを送信してもよい。
【0104】
次に、印刷履歴を参照して過去に印刷した画像ファイルを再び印刷する処理の流れについて説明する。
【0105】
PC101には図11で示される履歴管理テーブルをHDD2009に保持するものとする。履歴管理テーブルには過去に印刷した画像ファイルのUUIDが記録されている。
【0106】
図12は、図1の画像処理システムによって実行される画像ファイル再印刷処理の手順を示すフローチャートである。本フローチャートは、ユーザが操作部材2004を操作して再印刷要求の指示を行うことにより開始される。
【0107】
まずステップS1201で、PC101は履歴管理テーブルからUUIDを取得する。
【0108】
ステップS1202で、PC101は、フォルダ「C:¥Temp」内の各画像ファイル名を対象としてディレクトリエントリの検索を行い、ファイル名からUUIDを取得する。
【0109】
ステップS1203で、PC101はステップS1201で取得したUUIDがステップS1202で検索したディレクトリエントリのファイル名の中に存在するか否か判断する。つまり、履歴管理リストに存在するUUIDを有する画像ファイルがフォルダ「C:¥Temp」に存在するか否かを判断する。存在すると判断した場合、処理をステップS1204に進める。存在しないと判断した場合、本処理を終了する。
【0110】
ステップS1204で、PC101は、履歴管理リストに存在するUUIDを有する画像ファイルを印刷する指示を行う。具体的には、印刷用のアプリケーションに印刷対象の画像ファイルを読み込み、プリンタ(図示せず)への印刷指示を行う。
【0111】
ステップS1203で一致するUUIDが存在しないと判断された場合、本処理を終了する。
【0112】
以上のように、一度印刷した画像ファイルの履歴を利用することにより、利用者が画像ファイルを探すことなく印刷した画像ファイルを再び印刷することが可能となる。
【0113】
なお、履歴管理テーブルは印刷した画像ファイルのUUIDに対応付けて、印刷枚数を管理してもよい。その場合には、PC101はステップS1204の処理を行った後、履歴管理テーブルの更新処理を行う。すなわち、印刷を行った画像ファイルの印刷枚数の値を、印刷枚数分だけ増加させる。
【0114】
また、履歴管理テーブルを用いることにより、一度も印刷したことがない画像ファイルのみを印刷の対象とすることも可能となる。これは、履歴管理テーブルにないUUIDを有する画像ファイルのみを印刷対象にすることで実現できる。
【0115】
本実施の形態では、印刷についての履歴の利用について説明したが、印刷に限らず、以前行った処理を再度行う際に履歴を利用することが可能である。例えば電子メールに添付して送信した画像ファイル等、印刷以外の場合であっても再処理要求に基づいた処理を行うことができることは言うまでもない。電子メールに添付して送信した画像ファイルについての履歴のような印刷以外の履歴管理テーブルは、印刷の履歴管理テーブルとは別のテーブルで管理することができる。
【0116】
次に、デジタルカメラ100側でUUIDが付加されていない画像ファイルをPC101に送信する処理について説明する。
【0117】
このようなケースは、例えば、本実施形態におけるデジタルカメラ100のようにUUIDを作成する機能を持たないカメラで撮影された画像が着脱可能記憶媒体111に記憶された場合などに起こりうる。
【0118】
図13は、図1の画像処理システムによって実行される、デジタルカメラ100からPC101へ画像ファイルを送信する処理の手順を示すフローチャートである。なお、以下の説明では、一例として、画像ファイル「IMG_0001.jpg」を転送対象とする。画像ファイル「IMG_0001.jpg」にはUUIDが付加されていないものとする。
【0119】
まず、ステップS1301で、デジタルカメラ100は転送対象の画像ファイルにUUIDが付与されているか否かを判断する。付与されていない場合には処理をステップS1302に進める。付与されている場合には処理をステップS1303に進め、図9に示したフローに従い転送処理を行う。
【0120】
次に、ステップS1302で、デジタルカメラ100は、画像ファイルIMG_0001.jpg及びUUIDをデジタルカメラ100からPC101に送信する。
【0121】
ここでは、UUIDの値はカメラでは設定されていないため、仮のUUID、「0x00000000000000000000000000000000」を発行し、PC101に送信する。なお、仮のUUIDは必ずしもここで述べた値でなくともよい。
【0122】
次に、ステップS1304で、PC101はデジタルカメラ100から送信された画像ファイル及び仮のUUIDを受信する。
【0123】
次に、ステップS1305で、PC101はフォルダ「C:¥Temp」に保存された画像ファイルのうち、ファイル名が「00000000000000000000000000000000_IMG_0001」で始まるものが存在するか判断する。存在する場合には処理をステップS1306に進める。存在しない場合には処理をステップS1312に進める。
【0124】
ステップS1312で、PC101は画像ファイルIMG_0001.jpgのファイル名を「00000000000000000000000000000000_IMG_0001.jpg」とし、「C:¥Temp」に記憶して本処理を終了する。
【0125】
ステップS1306で、PC101は変数Nに0を代入する。
【0126】
ステップS1307で、PC101上はフォルダ「C:¥Temp」に存在する画像ファイル「00000000000000000000000000000000_IMG_0001.jpg」と受信した「IMG_0001.jpg」のExifヘッダのバイナリは同じか比較する。ここでいうExifヘッダのバイナリとは画像ファイルに含まれる撮影情報などのデータである。例えば、画像ファイルに含まれる撮影日時などを照合することにより、同一の画像データを有する画像ファイルであるか、ファイル名が偶然一致しただけのデータかが判断できる。バイナリが同じと判断した場合には処理をステップS1311に進める。バイナリが異なると判断した場合には処理をステップS1308に進める。
【0127】
ステップS1308で、PC101は変数NにN+1を代入する。
【0128】
ステップS1309で、PC101はフォルダ「C:¥Temp」に、ファイル名が「IMG_0001_N.jpg」である画像ファイルが存在するか判断する。例えばNが1であれば、ファイル名が「IMG_0001_1.jpg」である画像ファイルが存在するか判断する。存在する場合は処理をステップS1310に進める。存在しない場合には処理をステップS1313に進める。
【0129】
ステップS1313で、PC101は画像ファイルIMG_0001.jpgのファイル名を「00000000000000000000000000000000_IMG_0001_N.jpg」とし、「C:¥Temp」に記憶して、本処理を終了する。
【0130】
ステップS1310で、PC101はファイル「00000000000000000000000000000000_IMG_0001_N.jpg」と受信した「IMG_0001.jpg」のExifヘッダのバイナリは同じか比較する。同じ場合は処理をステップS1311に進める。異なる場合は処理をステップS1308に戻し、Nの値をインクリメントして処理を繰り返す。
【0131】
ステップS1311で、PC101はステップS1304で受信した画像ファイル「IMG_0001.jpg」とそのUUIDを破棄して終了する。
【0132】
以上のようにすることで、デジタルカメラ100側でUUIDが付いていない画像ファイルを転送する場合であっても、PC101はすでに存在する画像ファイルを再度受信して記憶することがなくなる。
【0133】
次に、UUIDがない画像ファイルをPC101からデジタルカメラ100に書き戻す手順について説明する。
【0134】
図14は、図1の画像処理システムによって実行される、PC101からデジタルカメラ100へ画像ファイルを書き戻す処理の手順を示すフローチャートである。
【0135】
ここでは、ユーザ操作により、カメラ内ファイル名が「IMG_0001.jpg」の画像ファイルが転送の対象として指定されたものとする。なお、この画像ファイルは図13に示す処理によってデジタルカメラ100からPC101に送信されたものであり、PC内ファイル名は「00000000000000000000000000000000_IMG_0001.jpg」であるものとする。
【0136】
まず、ステップS1401で、PC101はフォルダ「C:¥Temp」にアクセスし、転送対象の画像ファイルのファイル名の末尾「IMG_0001.jpg」と一致する画像ファイルを検索する。
【0137】
ステップS1402で、PC101は、ステップS1401の検索の結果得られた画像ファイル名からUUIDを取得する。ここでは、UUIDは0x00000000000000000000000000000000が取得される。これは、デジタルカメラ100側でUUIDが付与されていないことを示す。
【0138】
ステップS1403で、PC101はステップS1402で取得したUUID及びカメラ内ファイル名を示す文字列「IMG_0001.jpg」をデジタルカメラ100に送信する。
【0139】
ステップS1404で、デジタルカメラ100はPC101から送信されたカメラ内ファイル名を示す文字列「IMG_0001.jpg」及びUUIDを受信する。
ステップS1405で、デジタルカメラ100は、UUID管理テーブルを参照し、受信した文字列“IMG_0001.jpg”が存在するか判断する。存在する場合には転送対象の画像ファイルがすでに存在していると判断し、本処理を終了する。存在しない場合には処理をステップS1406に進める。文字列を受信している場合には、そのうち1つでもUUID管理テーブルに存在しない場合は処理をステップS1406に進める。
【0140】
ステップS1406で、デジタルカメラ100は、UUID管理テーブルに存在しないカメラ内ファイル名を示す文字列をPC101に送信する。
【0141】
ステップS1407において、PC101はデジタルカメラ100から送信されたカメラ内ファイル名を示す文字列を受信する。
【0142】
ステップS1408で、PC101は受信したカメラ内ファイル名を示す文字列を有する画像ファイルをデジタルカメラ100に送信する。この例では、ファイル名が「00000000000000000000000000000000_IMG_0001.jpg」の画像ファイルがデジタルカメラ100に送信される。
【0143】
ステップS1409で、デジタルカメラ100はPC101から送信された画像ファイルを受信する。
【0144】
ステップS1410で、デジタルカメラ100は受信した画像ファイルのファイル名からUUID部分を削除する。この結果、ファイル名は「IMG_0001.jpg」となる。なお、この処理はPC101で行ってもよい。その場合は、ステップS1408の送信前にPC101がUUID部分の削除を行う。
【0145】
ステップS1411で、デジタルカメラ100は画像ファイル名とUUIDをUUID管理テーブルに記録し、本処理を終了する。
【0146】
この場合、フィールドUUIDには「0x00000000000000000000000000000000」、フィールドNameには、“IMG_0001.jpg”が書き込まれる。
【0147】
ステップS1412で、デジタルカメラ100はUUID管理テーブルのフィールドフラグに転送済みフラグを付けて、本処理を終了する。
【0148】
以上のように、UUIDがない画像ファイルもデジタルカメラ100に書き戻すことが可能である。また、デジタルカメラ100に書き戻した後で転送済みフラグをデジタルカメラ100のUUID管理テーブルに付けるので、PC101に画像ファイルを送信する際、再度同じ画像ファイルを送信することを避けることができる。
【0149】
次に、PC101に保存されている画像ファイルのファイル名を、PC101のユーザに示す方法について説明する。
【0150】
ここでは、PC101のフォルダ「C:¥Temp」には、図15のように画像ファイルが保存されているものと仮定する。これらのファイルは一時ファイルとして保存されているものとする。
【0151】
画像ファイル名をPC101の表示部材2001に表示する場合、PC内ファイル名からUUID部分を削除したもものをファイル名として表示する。
【0152】
図15に示すファイル名のうち、画像ファイル1504を表示する場合を考える。この場合、ファイル名が「22223333444455556666777788889999_IMG_0002.jpg」である。そのため、PC101はUUID部分である「22223333444455556666777788889999」”と「_」を削除して、「IMG_0002.jpg」と表示する。
【0153】
同様に、画像ファイル1501のファイル名を利用者に示す場合は、「IMG_0001.jpg」と表示される。画像ファイル1505、1506についてもファイル名を表示する場合は、それぞれ、「IMG_0003.jpg」、「IMG_0004.jpg」と表示される。
【0154】
この処理の結果、利用者にPC101上で示されるファイル名は、いずれもデジタルカメラ100で撮影されたときに付けられるファイル名、すなわちカメラ内ファイル名となる。
【0155】
図15において、画像ファイル1502のファイル名を表示する場合を考える。この場合、ファイル名が「00000000000000000000000000000000_IMG_0001_1.jpg」である。そのため、PC101はUUID部分と、拡張子の前のカウンタ部分、すなわち「_1」の削除をする。その結果、「IMG_0001.jpg」と表示される。同様に、画像ファイル1503のファイル名を表示する場合には、「IMG_0001.jpg」と表示される。
【0156】
この処理の結果、利用者にPC101上で示されるファイル名は、いずれもデジタルカメラ100で撮影されたときに付けられるファイル名となる。
【0157】
以上より、本実施形態では、PC101が画像ファイル名表示する場合に、UUID部分が削除され、デジタルカメラ100で撮影したときに付けられるファイル名で表示する。このことにより、ユーザはなじみのある画像ファイル名を表示されることになり、画像ファイルの認識をしやすくなる。
【0158】
本発明の目的は、以下の処理を実行することによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。
【0159】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0160】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【0161】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0162】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行う場合である。
【図面の簡単な説明】
【0163】
【図1】本発明の実施の形態に係るデジタルカメラのブロック構成を示す図である。
【図2】本発明の実施の形態に係るPCのブロック構成を示す図である。
【図3】デジタルカメラ内で保持するUUID管理テーブルを示す図である。
【図4】デジタルカメラによって実行されるUUID作成の手順を示すフローチャートである。
【図5】PCがデジタルカメラから受信した画像ファイルを処理する手順を示すフローチャートである。
【図6】ディレクトリエントリの構成を示す図である。
【図7】LNFディレクトリエントリの構成を示す図である。
【図8】8.3形式を超えるファイル名の場合のディレクトリエントリへの記録方法の例を示す図である。
【図9】デジタルカメラからPCに画像ファイルを転送する処理の手順を示すフローチャートである。
【図10】PCからデジタルカメラへの画像ファイルの書き戻し処理の手順を示すフローチャートである。
【図11】PC内で保持する履歴管理テーブルを示す図である。
【図12】PCによって実行される画像ファイル再印刷処理の手順を示すフローチャートである。
【図13】デジタルカメラからPCへの送信処理の手順を示すフローチャートである。
【図14】PCからデジタルカメラへの画像ファイルの書き戻し処理の手順を示すフローチャートである。
【図15】PC上のフォルダ「C:¥Temp」で保存されている画像ファイル名を示す図である。
【符号の説明】
【0164】
100 デジタルカメラ
101 PC
102 通信制御装置
103 演算装置
104 信号処理装置
105 光学ユニット
106 一次記憶装置
107 二次記憶装置
108 操作部材
109 表示部材
110 読み出し専用メモリ
111 着脱可能記憶媒体
【技術分野】
【0001】
本発明は、画像ファイルを検索するために画像ファイル名に識別情報を付加する画像処理システム、情報処理装置及びその制御方法、並びにプログラムに関する。
【背景技術】
【0002】
近年、デジタルカメラなどの普及により、画像を撮影する機会が増えてきたのに伴い、ユーザは大量の画像ファイルを扱わなければならなくなった。そのため、数多くの画像ファイルを効率的に整理、検索を行うべく、画像ファイルに一意な識別情報を付加する技術が提案されている。
【0003】
従来の技術では、撮像装置の製造番号などを用いて、一意な識別情報を画像ファイル名にするものが知られている(特許文献1参照)。また、デジタルカメラで今まで何枚撮影したのかを示すカウンタ情報から撮影する画像ファイル名を作成するものも知られている(特許文献2参照)。
【特許文献1】特開2003−023602号公報
【特許文献2】特開2005−027350号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、撮像装置の製造番号などは一般に数字の羅列など、ユーザになじみのないものである。その結果、上記特許文献1では、画像ファイル名は数字の羅列となってしまい、ユーザには画像ファイル名が分かりにくいものとなってしまう欠点があった。
【0005】
また、特許文献2記載の技術によれば、同一のデジタルカメラ内では画像ファイルを一意に区別することができるが、PC等に送信されてしまうと画像ファイルを一意に区別できなくなってしまうおそれがあった。
【0006】
本発明の目的は、撮像装置などの画像処理装置で画像に識別情報を付加した場合に、画像の転送先となる情報処理装置においても、取り扱いが容易な画像ファイル名を付加することができる情報処理装置及びその制御方法、並びにプログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記目的を達成するために、請求項1記載の画像処理システムは、画像処理装置と、情報処理装置とからなる画像処理システムであって、前記画像処理装置は、画像ファイルに対して一意な識別情報を作成する作成手段と、前記情報処理装置に、前記画像ファイルと前記識別情報とを送信する送信手段とを有し、前記情報処理装置は、前記画像処理装置から送信された前記画像ファイルと前記識別情報とを受信する受信手段と、受信した画像ファイルのファイル名と識別情報とに基づき、新たなファイル名を作成して前記画像ファイルに付与するファイル名付与手段とを有する。
【0008】
請求項2記載の情報処理装置は、画像ファイルを受信する第1の受信手段と、前記画像ファイルを特定する識別情報を受信する第2の受信手段と、前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与手段と、前記新たなファイル名を付与した画像ファイルを記憶する第1の記憶手段とを有する。
【0009】
請求項10記載の情報処理装置の制御方法は、画像ファイルを受信する第1の受信工程と、前記画像ファイルを特定する識別情報を受信する第2の受信工程と、前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与工程と、前記新たなファイル名を付与した画像ファイルを記憶する記憶工程とを有する。
【0010】
請求項11記載のプログラムは、コンピュータに、画像ファイルを受信する第1の受信工程と、前記画像ファイルを特定する識別情報を受信する第2の受信工程と、前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与工程と、前記新たなファイル名を付与した画像ファイルを記憶する記憶工程とを実行させることを特徴とする。
【0011】
請求項12記載のコンピュータで読み取り可能な記憶媒体は、請求項11に記載のプログラムを記憶する。
【発明の効果】
【0012】
本発明によれば、情報処理装置のファイルシステムで識別情報による画像ファイルの検索を可能とするとともに、ユーザにはわかりやすいファイル名で画像ファイルの表示を行うことが可能となる。
【発明を実施するための最良の形態】
【0013】
以下、本発明の実施の形態を図面を参照しながら詳細に説明する。
【0014】
図1は、本発明の実施の形態に係る画像処理システムにおいて、デジタルカメラのブロック構成を示す図である。
【0015】
図1において、画像処理システムは、画像処理装置としてのデジタルカメラ100と、デジタルカメラ100と通信可能な情報処理装置としてのパーソナルコンピュータ(PC)101からなる。これらが有線、或いは無線で接続されることで本実施形態における画像処理システムが構築される。
【0016】
デジタルカメラ100は以下のユニットを有する。
【0017】
通信制御装置102は、PC101との通信を行うユニットであり、PC101との間での有線による通信及び無線による通信を制御する。
【0018】
演算装置(CPU)103は、入力信号やプログラムに基づき、デジタルカメラ100全体の動作制御を行う。
【0019】
信号処理装置104は、撮影画像の圧縮符号化や輪郭強調、ノイズ除去等の処理を行う。
【0020】
光学ユニット105は、レンズやオートフォーカス、ズーム駆動用モータなどを含む。
【0021】
一次記憶装置(DRAM)106は、CPU103の一時記憶領域などに用いられる。
【0022】
二次記憶装置107は、フラッシュメモリなどの不揮発性記憶装置であり、各種パラメータなどが記憶される。
【0023】
操作部材108は、カーソルキーや設定/実行ボタン、メニューキーなどを含み、ユーザがデジタルカメラ100に各種指示を与えるためのものである。
【0024】
表示部材109は、画像データやグラフィカルユーザインタフェース(GUI)を表示するための部材であり、例えばLCDなどが用いられる。
【0025】
読み出し専用メモリ(ROM)110は、CPU103が実行するための制御プログラムを記憶する。
【0026】
着脱可能記憶媒体111はいわゆるメモリカードに代表される着脱可能な媒体であって、画像データを記憶する。デジタルカメラ100は、着脱可能記憶媒体111にアクセスするためのインタフェース(図示せず)を有し、画像データへのアクセスを行う。
【0027】
本実施例における識別情報は、UUID(Universal Unique Identifier)といい、デジタルカメラ100で作成される16バイトの数値からなるデータである。UUIDは、デジタルカメラ100の固有番号、撮影日時及びデジタルカメラ100の二次記憶装置107に記録されているカウントアップ情報から作成され、画像データごとに一意な数値となる。デジタルカメラの固有番号とは、例えば製造番号や、製造時に記憶されるMACアドレスなどがある。
【0028】
また、デジタルカメラ100の二次記憶装置107に記録されているカウントアップ情報とは、同一デジタルカメラで撮影した枚数を示すものであり、撮影ごとに数値が1ずつ加算される。
【0029】
図2は本実施形態に係るPC101に相当する情報処理装置の概略構成を示す図である。
【0030】
図2において、2001は表示部材であり、その表示画面には、例えば編集中の文書、図形、画像その他の編集情報、アイコン、メッセージ、メニューその他のユーザインタフェース情報が表示される。
【0031】
2002はVRAMであり、表示部材2001の表示画面に表示するための画像が描画される。このVRAM2002に生成された画像データは、表示部材2001に転送され、これにより表示部材2001に画像が表示される。
【0032】
2003はビットムーブユニット(BMU)であり、例えば、メモリ間(例えば、VRAM2002と他のメモリ)のデータ転送や、メモリと各I/Oデバイスとの間のデータ転送を制御する。
【0033】
2004はキーボードやポインティングデバイスなどのユーザ操作を受け付けるための操作部材である。
【0034】
2005は画像入力デバイスインターフェイスであり、デジタルスチルカメラやデジタルビデオ、スキャナなどからの画像の入力を制御する。
【0035】
2006はCPUである。CPU2006はROM2007、HDD2009又はフレキシブルディスクに格納された制御プログラムに基づき、CPU2006に接続された各デバイスを制御する。
【0036】
2007はROMであり、各種の制御プログラムやデータを保持する。
【0037】
2008はRAMであり、CPU2006のワーク領域、エラー処理時のデータの退避領域、制御プログラムのロード領域等を有する。
【0038】
2009はハードディスク(以下「HDD」)である。HDD2009は、PC101内で実行される各制御プログラムやコンテンツを格納することができる。例えば、HDD2009には、Webブラウザ120、電子アルバムデータ、電子アルバム編集プログラムなどが格納されている。
【0039】
2010はフレキシブルディスクドライブ(FDD)である。FDD2010はフレキシブルディスクやCompact Disk(CD)、Digital Versatile Disk(DVD)等の光ディスクメディアなどによりアクセスを制御する。また、ICカードやメモリカード等のカード型メディアのような外部記憶装置に対するアクセスを制御する。
【0040】
2011はネットワークインタフェースであり、他の情報処理装置やプリンタ等とインターネットを介して通信を行うことができる。
【0041】
2012はCPUバスであり、アドレスバス、データバス及びコントロールバスを含む。CPU2006に対する制御プログラムの提供は、ROM2007、HDD2009、FDD2010から行うこともできるし、ネットワークインタフェース2011を介してインターネット経由で他の情報処理装置等から行うこともできる。
【0042】
以下では、デジタルカメラ100が撮影動作を行い、撮影画像をPCに送信する際の処理について説明する。
【0043】
本処理では、デジタルカメラ100の二次記憶装置107にカウントアップ情報及び、図3に示すUUID管理テーブルがすでに記録されているものと仮定する。
【0044】
図3のUUID管理テーブルは、UUID3002と画像ファイル名3003を対応させて管理するテーブルである。UUID管理テーブルには、転送済みフラグを示すフィールドFlag3001がある。UUID管理テーブルのフィールドFlagは、画像が送信されたことがあるのかを示し、一度でも送信されれば、フラグが付けられる。
【0045】
以下、図4を参照しながら処理の流れを説明する。なお、本実施形態では、画像ファイルはPC101のHDD2009に存在するフォルダ「C:¥Temp」に一旦送信され、その後PC101がアクセス可能な記憶媒体にコピーされるものとする。
【0046】
図4は、デジタルカメラが被写体を撮影し、結果として得られた画像ファイルにUUIDを付加するまでの処理を説明する図である。
【0047】
まず、ステップS4001で、デジタルカメラ100はユーザ操作に応じて撮影動作を行い、被写体を撮影する。
【0048】
ステップS4002で、デジタルカメラ100は得られた撮影データから画像ファイルを作成する。このとき、デジタルカメラ100は作成した画像ファイルに対し、例えばIMG_0001.jpgというファイル名を付与する。これが、デジタルカメラ100内で取り扱われるファイル名(以下、「カメラ内ファイル名」)となる。
【0049】
ステップS4003で、デジタルカメラ100は、デジタルカメラ100の固体番号、撮影日時、カウントアップ情報からUUIDを作成する。具体的には、デジタルカメラ100の固有番号、撮影日時、カウントアップ情報の値を連結した文字列をUUIDとする。
【0050】
ステップS4004で、デジタルカメラ100はUUID管理テーブルを更新する。具体的には、ステップS4002にて画像ファイルに付与したファイル名と、ステップS4003で作成したUUIDを関連付けてUUID管理テーブルに登録する。
【0051】
以上の処理により、画像ファイルにUUIDを付与することができる。
【0052】
次に、PC101が、UUID及びUUIDを付加された画像ファイルをデジタルカメラ100から受信し、新たなファイル名を付与して記録する処理について説明する。本処理のフローを図5に示す。
【0053】
まず、ステップS5001で、PC101はデジタルカメラ100からUUIDと画像ファイルを受信する。このUUID及び画像ファイルの送受信処理については後で詳しく述べるが、画像ファイルの受信とUUIDの受信は1度の通信で行われる場合もあるし、複数回の通信により行われる場合もある。
【0054】
ステップS5002で、PC101は受信した画像ファイルのファイル名を変更する。具体的には、画像ファイルにPC内の「C:¥Temp」フォルダで取り扱うためのファイル名(以下、「PC内ファイル名」)を付与するファイル名付与処理を行う。付与された新たなファイル名は、後述するUUIDの照合を利用した各種処理を行うために用いられる。本実施形態におけるPC内ファイル名は、UUIDとカメラ内ファイル名を連結したファイル名とする。
【0055】
ステップS5003において、PC101は画像ファイルを「C:¥Temp」フォルダに保存する。
【0056】
ステップS5004において、PC101はフォルダ「C:¥Temp」内の画像ファイルをコピーし、HDD2009に存在する画像格納先フォルダに保存する。この画像保存先フォルダは、PC101が画像ファイルを受信する際に決定してもよいし、デジタルカメラ100側で予め指定されてもよい。
【0057】
ステップS5005において、PC101は画像格納先フォルダに保存した画像ファイルのファイル名から、UUID部分を削除してファイル名を表示する。すなわち、PC内ファイル名からUUID部分を削除し、カメラ内ファイル名と同じファイル名を表示する。
【0058】
以上がPC101における画像の受信・記憶処理である。なお、本実施形態では、「C:¥Temp」を通常ユーザがアクセスできない隠しフォルダとし、画像格納先フォルダをユーザがアクセス可能なフォルダとする。このことにより、ユーザは数字が羅列されたUUIDを意識しないで、デジタルカメラ100で付けられたファイル名と同じファイル名で画像ファイルを扱うことが可能である。
【0059】
以上述べたように、本実施形態では、PCファイル名にUUIDを含めることとした。PCファイル名はディレクトリエントリに含まれるので、ディレクトリエントリを検索することでUUIDを検索することが可能となる。以下、ディレクトリエントリの構成について説明する。
【0060】
PC101のOSにはファイルシステムと呼ばれるファイルを階層構造で管理する機能が用意されていて、この機能を実現するために、ディレクトリエントリが使用されている。ディレクトリエントリには、あるフォルダ内の全てのフォルダ及びファイルに関する情報が記録されている。
【0061】
FAT(File Allocation Table)ファイルシステムにおけるディレクトリエントリは図6の構成となる。この構成となるのは、拡張子を除くファイル名が8文字以内かつ拡張子が3文字以内のファイル名のときであり、この形式のファイル名は8.3形式ファイル名と呼ばれる。
【0062】
FileName6001はファイル名(8文字以内)、Extention6002は拡張子(3文字以内)である。Attribute6003はファイル属性を示す。Reserved6004は予約領域を示す。CreateTimeMs6005は作成時刻の10ミリ秒を示す。CreateTime6006は作成時刻、CreateDate6007は作成日時を示す。
【0063】
ClusterHighWord6009は、FAT32で使用される先頭クラスタ番号の上位16ビットを示す。UpdateTime6010は更新時刻、UpdateDate6011は更新日時を示す。CluSer6012は先頭クラスタ番号の下位16ビットを示す。FileSize6013はファイルサイズである。ディレクトリの場合は0である。
【0064】
8.3形式ファイル名よりも長いファイル名の場合は、図6のディレクトリエントリとともに、図7のLNF(Long File Name)ディレクトリエントリも使用される。
【0065】
図7のLNFディレクトリエントリ1つでは、Unicodeで最大13文字のファイル名を記録することができる。13文字を超える場合は、LNFディレクトリエントリを追加してファイル名を記録する。
【0066】
LNFSeqNumber7001はファイル名の順番を示す。0x40が加えられていれば、このLNFディレクトリエントリがファイル名の最後を示すLNFディレクトリエントリであることを示す。
【0067】
Name1st(7002)は13文字中の最初の5文字を示す。Attribute7003はLNFディレクトリエントリであることを示す値(0x0f)が入る。Reserved7004は予約である。CheckCodeForShortName7005は8.3形式ファイル名のチェックコードである。
【0068】
Name2nd(7006)は13文字中の6文字目から11文字目が入る。Cluster7007は使用するクラスタの値が入るが、LNFディレクトリエントリの場合は常に0x0000が入る。Name3rd(7008)は13文字中の12文字目と13文字目が入る。
【0069】
例えば、PC内ファイル名が10000000000000000000000000000_IMG_0001.jpgの場合、ディレクトリエントリには図8のように記録される。
【0070】
SEは8.3形式のファイル名に変換したときのディレクトリエントリで、このファイルのファイルサイズ等のファイルについての情報が記録される。ここでは、100000〜1.JPGという8.3形式ファイル名に変換されるものとする。この例の場合、LNFディレクトリエントリは4つ使われる。
【0071】
LNFディレクトリエントリLE1から順にファイル名が記録されていき、最後にLNFディレクトリエントリLE4で記録される。尚、LE4でファイル名を記録し終った後に、ファイル名の終了を示す値0x0000を記録する。ファイル名を記録するName1st、Name2nd、Name3rdに空きがあれば、0xFFFFで埋めていく。
【0072】
ただし、ファイル名の文字数が13の倍数の場合は、ファイル名の終了を示す値0x0000は使われず、また0xFFFFで埋める必要はない。
【0073】
以下では、PC101が特定のUUIDを有する画像データを検索する動作について説明する。
【0074】
ここでは、「C:¥Temp」フォルダには、画像ファイル10000000000000000000000000000_IMG_0001.jpgが保存されているものとする。
【0075】
まず、PC101は「C:¥Temp」のディレクトリエントリを検索する。「C:¥Temp」内の各ディレクトリエントリのファイル名フィールドから「10000000000000000000000000000」が存在するディレクトリエントリを検索する。見つかったディレクトリエントリのファイル名フィールドはカメラ内ファイル名と連結したものであるから、そこからUUID部分10000000000000000000000000000を抜き出す。
【0076】
以上により、PC101はOSの機能であるファイルシステムを利用して、ディレクトリエントリからUUIDを検索する。すなわち、PC101は特別なデータベースなどを使用しなくても、UUIDを検索キーにした画像ファイルの検索を行うことができる。その結果、データベースの実装に必要な分の容量及びコストを抑えることが可能となる。
【0077】
なお、本実施の形態では、PC101とデジタルカメラ100の接続はUSB等の有線接続でもよいし、IEEE802.x等の無線接続でもよい。
【0078】
図9は、図1の画像処理システムによって実行される、画像ファイルをデジタルカメラ100からPC101に送信する処理の手順を示すフローチャートである。点線より左側は、デジタルカメラ100のCPU103が入力信号やプログラムにしたがって行う処理である。点線より右側は、PC101のCPU2006が入力信号やプログラムにしたがって行う処理である。他のフローチャートについても同様とする。
本フローは、デジタルカメラ100とPC101との接続が確立したことを検知したときに、自動的に開始されてもよいし、ユーザが操作部材108を操作して転送を指示することで開始されてもよい。
【0079】
ステップS9001で、デジタルカメラ100はUUID管理テーブルを参照し、転送対象の画像ファイルのUUIDを取得し、PC101へ送信する。転送対象の画像ファイルは、予めユーザが操作部材108を操作して指定するようにしてもよいし、自動的に着脱可能記憶媒体内の全ての画像ファイルが転送対象となってもよい。
【0080】
ステップS9002で、PC101はステップS9001でデジタルカメラ100から送信されたUUIDを受信する。
【0081】
ステップS9003で、PC101上はフォルダ「C:¥Temp」のディレクトリエントリを参照し、受信したUUIDを含むファイル名を有する画像ファイルを検索する。
【0082】
ステップS9004で、PC101はステップS9002で受信したUUIDの中に、「C:¥Temp」内の画像ファイルのディレクトリエントリに含まれないものがあるか否かを判断する。これは、デジタルカメラ100には存在し、PC101には存在しない画像ファイルがあるか否かをUUIDを照合することで判断している。含まれないものがあると判断した場合には、処理をステップS9005に進める。含まれないものがない、つまりデジタルカメラ100から受信したUUIDを有する画像ファイルはすべてPC101内に存在すると判断した場合には処理を終了する。
【0083】
ステップS9005で、PC101は一致しなかったUUIDをデジタルカメラ100に送信する。
【0084】
ステップS9006で、デジタルカメラ100はPC101からUUIDを受信する。
【0085】
ステップS9007で、デジタルカメラ100はUUID管理テーブルを参照し、ステップS9006で受信したUUIDと対応する画像ファイルを特定し、PC101に送信する。
【0086】
ステップS9008で、PC101はデジタルカメラ100が送信した画像ファイルを受信し、本処理を終了する。本処理の終了後、PC101は図5に示すファイル名の付与を行うことになる。
【0087】
以上のように、本実施形態では、デジタルカメラ100内の画像ファイルとPC101内の画像ファイルとのと照合を、UUIDを用いて行った。このことにより、すでにPC101内に存在する画像ファイルはデジタルカメラ100からは送信せず、必要なデータのみを送信することが可能となる。したがって、デジタルカメラ100からPC101に送信する処理の迅速化を図ることが可能となる。また、UUIDがPC内ファイル名に含まれることで、ディレクトリエントリを検索すればUUIDを照合できる。このことにより、特別なデータベースなどを持つことなくUUIDの照合が可能となり、実装のコストが削減される。
【0088】
次に、PC101からデジタルカメラ100への書き戻し処理について述べる。本実施形態における書き戻し処理とは、PC101からデジタルカメラ100に画像ファイルを送信する処理である。
【0089】
図10は、図1の画像処理システムによって実行される書き戻し処理の手順を示すフローチャートである。
【0090】
ここでは、ユーザ操作により、PC101のHDD2009に記憶された画像ファイルの1つがデジタルカメラ100に書き戻す対象として選択されたものと仮定する。画像ファイルのカメラ内ファイル名は「IMG_0001.jpg」、UUIDは0x10000000000000000000000000000000であるとする。したがって、PC内ファイル名は「10000000000000000000000000000000_IMG_0001.jpg」である。
【0091】
まず、ステップS1001で、PC101はフォルダ「C:¥Temp」にアクセスし、末尾のファイル名と一致する画像ファイルを探す。この例では、ファイル名の末尾が“IMG_0001.jpg”であるファイルを探す。
【0092】
ステップS1002で、PC101は一致した画像ファイル名からUUIDを取得する。この例では、取得されるUUIDは「0x10000000000000000000000000000000」である。
【0093】
ステップS1003で、PC101はステップS1002で取得したUUIDをPC101からデジタルカメラ100に送信する。
【0094】
ステップS1004で、デジタルカメラ100は、ステップS1003で送信されたUUIDを受信する。
【0095】
ステップS1005で、デジタルカメラ100は、受信したUUIDがUUID管理テーブルに存在するのか判断する。UUIDが存在する場合には、デジタルカメラ100側にも同じ画像ファイルがあるということなので、本処理を終了する。UUIDが存在しない場合には処理はステップS1006に進む。受信したUUIDが複数ある場合、UUID管理テーブルに存在しないUUIDが1つでもある場合には処理はステップS1006に進む。
【0096】
ステップS1006で、デジタルカメラ100はステップS1005にてUUID管理テーブルに存在しないと判断したUUIDをデジタルカメラ100に送信する。
【0097】
ステップS1007で、PC101はデジタルカメラ100から送信されたUUIDを受信する。
【0098】
ステップS1008で、PC101はステップS1008で受信したUUIDを有する画像ファイルをデジタルカメラ100に送信する。本フローの例では、画像ファイル10000000000000000000000000000000_IMG_0001.jpgがPC101からデジタルカメラ100に送信される。
【0099】
ステップS1009で、デジタルカメラ100はPC101から送信された画像ファイルを受信する。
【0100】
ステップS1010で、デジタルカメラ100は受信した画像ファイルのファイル名からUUID部分を削除する変更を行う。なお、この削除処理はPC101側で行ってもよい。すなわち、ステップS1008の送信処理の前に、PC101が送信対象の画像ファイルのファイル名からUUID部分を削除してもよい。
【0101】
ステップS1011で、デジタルカメラ100は画像ファイル名とUUIDをデジタルカメラ100内のUUID管理テーブルに記録して、本処理を終了する。この場合、フィールドUUIDには“0x10000000000000000000000000000000”、フィールドNameには、“IMG_0001.jpg”が書き込まれる。
【0102】
以上のように、UUIDを用いて、送信対象となる画像ファイルのうち、すでにデジタルカメラ100に存在する画像ファイルは送信しないようにすることができる。したがって、デジタルカメラ100に送信する処理を迅速化することが可能となる。
【0103】
なお、一般に、デジタルカメラ100の着脱可能記憶媒体111の容量はPC101のHDD2009よりも小さいため、本実施形態における書き戻し処理では、PC101はサイズを小さくした画像ファイルを送信してもよい。
【0104】
次に、印刷履歴を参照して過去に印刷した画像ファイルを再び印刷する処理の流れについて説明する。
【0105】
PC101には図11で示される履歴管理テーブルをHDD2009に保持するものとする。履歴管理テーブルには過去に印刷した画像ファイルのUUIDが記録されている。
【0106】
図12は、図1の画像処理システムによって実行される画像ファイル再印刷処理の手順を示すフローチャートである。本フローチャートは、ユーザが操作部材2004を操作して再印刷要求の指示を行うことにより開始される。
【0107】
まずステップS1201で、PC101は履歴管理テーブルからUUIDを取得する。
【0108】
ステップS1202で、PC101は、フォルダ「C:¥Temp」内の各画像ファイル名を対象としてディレクトリエントリの検索を行い、ファイル名からUUIDを取得する。
【0109】
ステップS1203で、PC101はステップS1201で取得したUUIDがステップS1202で検索したディレクトリエントリのファイル名の中に存在するか否か判断する。つまり、履歴管理リストに存在するUUIDを有する画像ファイルがフォルダ「C:¥Temp」に存在するか否かを判断する。存在すると判断した場合、処理をステップS1204に進める。存在しないと判断した場合、本処理を終了する。
【0110】
ステップS1204で、PC101は、履歴管理リストに存在するUUIDを有する画像ファイルを印刷する指示を行う。具体的には、印刷用のアプリケーションに印刷対象の画像ファイルを読み込み、プリンタ(図示せず)への印刷指示を行う。
【0111】
ステップS1203で一致するUUIDが存在しないと判断された場合、本処理を終了する。
【0112】
以上のように、一度印刷した画像ファイルの履歴を利用することにより、利用者が画像ファイルを探すことなく印刷した画像ファイルを再び印刷することが可能となる。
【0113】
なお、履歴管理テーブルは印刷した画像ファイルのUUIDに対応付けて、印刷枚数を管理してもよい。その場合には、PC101はステップS1204の処理を行った後、履歴管理テーブルの更新処理を行う。すなわち、印刷を行った画像ファイルの印刷枚数の値を、印刷枚数分だけ増加させる。
【0114】
また、履歴管理テーブルを用いることにより、一度も印刷したことがない画像ファイルのみを印刷の対象とすることも可能となる。これは、履歴管理テーブルにないUUIDを有する画像ファイルのみを印刷対象にすることで実現できる。
【0115】
本実施の形態では、印刷についての履歴の利用について説明したが、印刷に限らず、以前行った処理を再度行う際に履歴を利用することが可能である。例えば電子メールに添付して送信した画像ファイル等、印刷以外の場合であっても再処理要求に基づいた処理を行うことができることは言うまでもない。電子メールに添付して送信した画像ファイルについての履歴のような印刷以外の履歴管理テーブルは、印刷の履歴管理テーブルとは別のテーブルで管理することができる。
【0116】
次に、デジタルカメラ100側でUUIDが付加されていない画像ファイルをPC101に送信する処理について説明する。
【0117】
このようなケースは、例えば、本実施形態におけるデジタルカメラ100のようにUUIDを作成する機能を持たないカメラで撮影された画像が着脱可能記憶媒体111に記憶された場合などに起こりうる。
【0118】
図13は、図1の画像処理システムによって実行される、デジタルカメラ100からPC101へ画像ファイルを送信する処理の手順を示すフローチャートである。なお、以下の説明では、一例として、画像ファイル「IMG_0001.jpg」を転送対象とする。画像ファイル「IMG_0001.jpg」にはUUIDが付加されていないものとする。
【0119】
まず、ステップS1301で、デジタルカメラ100は転送対象の画像ファイルにUUIDが付与されているか否かを判断する。付与されていない場合には処理をステップS1302に進める。付与されている場合には処理をステップS1303に進め、図9に示したフローに従い転送処理を行う。
【0120】
次に、ステップS1302で、デジタルカメラ100は、画像ファイルIMG_0001.jpg及びUUIDをデジタルカメラ100からPC101に送信する。
【0121】
ここでは、UUIDの値はカメラでは設定されていないため、仮のUUID、「0x00000000000000000000000000000000」を発行し、PC101に送信する。なお、仮のUUIDは必ずしもここで述べた値でなくともよい。
【0122】
次に、ステップS1304で、PC101はデジタルカメラ100から送信された画像ファイル及び仮のUUIDを受信する。
【0123】
次に、ステップS1305で、PC101はフォルダ「C:¥Temp」に保存された画像ファイルのうち、ファイル名が「00000000000000000000000000000000_IMG_0001」で始まるものが存在するか判断する。存在する場合には処理をステップS1306に進める。存在しない場合には処理をステップS1312に進める。
【0124】
ステップS1312で、PC101は画像ファイルIMG_0001.jpgのファイル名を「00000000000000000000000000000000_IMG_0001.jpg」とし、「C:¥Temp」に記憶して本処理を終了する。
【0125】
ステップS1306で、PC101は変数Nに0を代入する。
【0126】
ステップS1307で、PC101上はフォルダ「C:¥Temp」に存在する画像ファイル「00000000000000000000000000000000_IMG_0001.jpg」と受信した「IMG_0001.jpg」のExifヘッダのバイナリは同じか比較する。ここでいうExifヘッダのバイナリとは画像ファイルに含まれる撮影情報などのデータである。例えば、画像ファイルに含まれる撮影日時などを照合することにより、同一の画像データを有する画像ファイルであるか、ファイル名が偶然一致しただけのデータかが判断できる。バイナリが同じと判断した場合には処理をステップS1311に進める。バイナリが異なると判断した場合には処理をステップS1308に進める。
【0127】
ステップS1308で、PC101は変数NにN+1を代入する。
【0128】
ステップS1309で、PC101はフォルダ「C:¥Temp」に、ファイル名が「IMG_0001_N.jpg」である画像ファイルが存在するか判断する。例えばNが1であれば、ファイル名が「IMG_0001_1.jpg」である画像ファイルが存在するか判断する。存在する場合は処理をステップS1310に進める。存在しない場合には処理をステップS1313に進める。
【0129】
ステップS1313で、PC101は画像ファイルIMG_0001.jpgのファイル名を「00000000000000000000000000000000_IMG_0001_N.jpg」とし、「C:¥Temp」に記憶して、本処理を終了する。
【0130】
ステップS1310で、PC101はファイル「00000000000000000000000000000000_IMG_0001_N.jpg」と受信した「IMG_0001.jpg」のExifヘッダのバイナリは同じか比較する。同じ場合は処理をステップS1311に進める。異なる場合は処理をステップS1308に戻し、Nの値をインクリメントして処理を繰り返す。
【0131】
ステップS1311で、PC101はステップS1304で受信した画像ファイル「IMG_0001.jpg」とそのUUIDを破棄して終了する。
【0132】
以上のようにすることで、デジタルカメラ100側でUUIDが付いていない画像ファイルを転送する場合であっても、PC101はすでに存在する画像ファイルを再度受信して記憶することがなくなる。
【0133】
次に、UUIDがない画像ファイルをPC101からデジタルカメラ100に書き戻す手順について説明する。
【0134】
図14は、図1の画像処理システムによって実行される、PC101からデジタルカメラ100へ画像ファイルを書き戻す処理の手順を示すフローチャートである。
【0135】
ここでは、ユーザ操作により、カメラ内ファイル名が「IMG_0001.jpg」の画像ファイルが転送の対象として指定されたものとする。なお、この画像ファイルは図13に示す処理によってデジタルカメラ100からPC101に送信されたものであり、PC内ファイル名は「00000000000000000000000000000000_IMG_0001.jpg」であるものとする。
【0136】
まず、ステップS1401で、PC101はフォルダ「C:¥Temp」にアクセスし、転送対象の画像ファイルのファイル名の末尾「IMG_0001.jpg」と一致する画像ファイルを検索する。
【0137】
ステップS1402で、PC101は、ステップS1401の検索の結果得られた画像ファイル名からUUIDを取得する。ここでは、UUIDは0x00000000000000000000000000000000が取得される。これは、デジタルカメラ100側でUUIDが付与されていないことを示す。
【0138】
ステップS1403で、PC101はステップS1402で取得したUUID及びカメラ内ファイル名を示す文字列「IMG_0001.jpg」をデジタルカメラ100に送信する。
【0139】
ステップS1404で、デジタルカメラ100はPC101から送信されたカメラ内ファイル名を示す文字列「IMG_0001.jpg」及びUUIDを受信する。
ステップS1405で、デジタルカメラ100は、UUID管理テーブルを参照し、受信した文字列“IMG_0001.jpg”が存在するか判断する。存在する場合には転送対象の画像ファイルがすでに存在していると判断し、本処理を終了する。存在しない場合には処理をステップS1406に進める。文字列を受信している場合には、そのうち1つでもUUID管理テーブルに存在しない場合は処理をステップS1406に進める。
【0140】
ステップS1406で、デジタルカメラ100は、UUID管理テーブルに存在しないカメラ内ファイル名を示す文字列をPC101に送信する。
【0141】
ステップS1407において、PC101はデジタルカメラ100から送信されたカメラ内ファイル名を示す文字列を受信する。
【0142】
ステップS1408で、PC101は受信したカメラ内ファイル名を示す文字列を有する画像ファイルをデジタルカメラ100に送信する。この例では、ファイル名が「00000000000000000000000000000000_IMG_0001.jpg」の画像ファイルがデジタルカメラ100に送信される。
【0143】
ステップS1409で、デジタルカメラ100はPC101から送信された画像ファイルを受信する。
【0144】
ステップS1410で、デジタルカメラ100は受信した画像ファイルのファイル名からUUID部分を削除する。この結果、ファイル名は「IMG_0001.jpg」となる。なお、この処理はPC101で行ってもよい。その場合は、ステップS1408の送信前にPC101がUUID部分の削除を行う。
【0145】
ステップS1411で、デジタルカメラ100は画像ファイル名とUUIDをUUID管理テーブルに記録し、本処理を終了する。
【0146】
この場合、フィールドUUIDには「0x00000000000000000000000000000000」、フィールドNameには、“IMG_0001.jpg”が書き込まれる。
【0147】
ステップS1412で、デジタルカメラ100はUUID管理テーブルのフィールドフラグに転送済みフラグを付けて、本処理を終了する。
【0148】
以上のように、UUIDがない画像ファイルもデジタルカメラ100に書き戻すことが可能である。また、デジタルカメラ100に書き戻した後で転送済みフラグをデジタルカメラ100のUUID管理テーブルに付けるので、PC101に画像ファイルを送信する際、再度同じ画像ファイルを送信することを避けることができる。
【0149】
次に、PC101に保存されている画像ファイルのファイル名を、PC101のユーザに示す方法について説明する。
【0150】
ここでは、PC101のフォルダ「C:¥Temp」には、図15のように画像ファイルが保存されているものと仮定する。これらのファイルは一時ファイルとして保存されているものとする。
【0151】
画像ファイル名をPC101の表示部材2001に表示する場合、PC内ファイル名からUUID部分を削除したもものをファイル名として表示する。
【0152】
図15に示すファイル名のうち、画像ファイル1504を表示する場合を考える。この場合、ファイル名が「22223333444455556666777788889999_IMG_0002.jpg」である。そのため、PC101はUUID部分である「22223333444455556666777788889999」”と「_」を削除して、「IMG_0002.jpg」と表示する。
【0153】
同様に、画像ファイル1501のファイル名を利用者に示す場合は、「IMG_0001.jpg」と表示される。画像ファイル1505、1506についてもファイル名を表示する場合は、それぞれ、「IMG_0003.jpg」、「IMG_0004.jpg」と表示される。
【0154】
この処理の結果、利用者にPC101上で示されるファイル名は、いずれもデジタルカメラ100で撮影されたときに付けられるファイル名、すなわちカメラ内ファイル名となる。
【0155】
図15において、画像ファイル1502のファイル名を表示する場合を考える。この場合、ファイル名が「00000000000000000000000000000000_IMG_0001_1.jpg」である。そのため、PC101はUUID部分と、拡張子の前のカウンタ部分、すなわち「_1」の削除をする。その結果、「IMG_0001.jpg」と表示される。同様に、画像ファイル1503のファイル名を表示する場合には、「IMG_0001.jpg」と表示される。
【0156】
この処理の結果、利用者にPC101上で示されるファイル名は、いずれもデジタルカメラ100で撮影されたときに付けられるファイル名となる。
【0157】
以上より、本実施形態では、PC101が画像ファイル名表示する場合に、UUID部分が削除され、デジタルカメラ100で撮影したときに付けられるファイル名で表示する。このことにより、ユーザはなじみのある画像ファイル名を表示されることになり、画像ファイルの認識をしやすくなる。
【0158】
本発明の目的は、以下の処理を実行することによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。
【0159】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0160】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−RW、DVD+RW、磁気テープ、不揮発性のメモリカード、ROM等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【0161】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【0162】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行う場合である。
【図面の簡単な説明】
【0163】
【図1】本発明の実施の形態に係るデジタルカメラのブロック構成を示す図である。
【図2】本発明の実施の形態に係るPCのブロック構成を示す図である。
【図3】デジタルカメラ内で保持するUUID管理テーブルを示す図である。
【図4】デジタルカメラによって実行されるUUID作成の手順を示すフローチャートである。
【図5】PCがデジタルカメラから受信した画像ファイルを処理する手順を示すフローチャートである。
【図6】ディレクトリエントリの構成を示す図である。
【図7】LNFディレクトリエントリの構成を示す図である。
【図8】8.3形式を超えるファイル名の場合のディレクトリエントリへの記録方法の例を示す図である。
【図9】デジタルカメラからPCに画像ファイルを転送する処理の手順を示すフローチャートである。
【図10】PCからデジタルカメラへの画像ファイルの書き戻し処理の手順を示すフローチャートである。
【図11】PC内で保持する履歴管理テーブルを示す図である。
【図12】PCによって実行される画像ファイル再印刷処理の手順を示すフローチャートである。
【図13】デジタルカメラからPCへの送信処理の手順を示すフローチャートである。
【図14】PCからデジタルカメラへの画像ファイルの書き戻し処理の手順を示すフローチャートである。
【図15】PC上のフォルダ「C:¥Temp」で保存されている画像ファイル名を示す図である。
【符号の説明】
【0164】
100 デジタルカメラ
101 PC
102 通信制御装置
103 演算装置
104 信号処理装置
105 光学ユニット
106 一次記憶装置
107 二次記憶装置
108 操作部材
109 表示部材
110 読み出し専用メモリ
111 着脱可能記憶媒体
【特許請求の範囲】
【請求項1】
画像処理装置と、情報処理装置とからなる画像処理システムであって、
前記画像処理装置は、
画像ファイルに対して一意な識別情報を作成する作成手段と、前記情報処理装置に、前記画像ファイルと前記識別情報とを送信する送信手段とを有し、
前記情報処理装置は、
前記画像処理装置から送信された前記画像ファイルと前記識別情報とを受信する受信手段と、受信した画像ファイルのファイル名と識別情報とに基づき、新たなファイル名を作成して前記画像ファイルに付与するファイル名付与手段とを有する画像処理システム。
【請求項2】
画像ファイルを受信する第1の受信手段と、
前記画像ファイルを特定する識別情報を受信する第2の受信手段と、
前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与手段と、
前記新たなファイル名を付与した画像ファイルを記憶する第1の記憶手段とを有する情報処理装置。
【請求項3】
前記識別情報は、前記画像ファイルを撮影した装置の固体番号、撮影の時刻、及びカウントアップ情報から作成されたものであることを特徴とする請求項2記載の情報処理装置。
【請求項4】
前記第2の受信手段により識別情報を受信した場合に、前記第1の記憶手段に記憶された画像ファイルのファイル名を参照する参照手段と、
前記参照の結果、前記受信した識別情報のうち、前記第1の記憶手段により記憶された画像ファイルのファイル名に含まれない識別情報が存在するか否かを判断する判断手段とを有することを特徴とする請求項2記載の情報処理装置。
【請求項5】
前記判断手段により前記ファイル名に含まれない識別情報が存在すると判断した場合に、前記第1の受信手段は、前記画像処理装置から前記識別情報に対応付けられた画像ファイルを受信することを特徴とする請求項4記載の情報処理装置。
【請求項6】
前記ファイル名付与手段は、前記受信した画像ファイルのファイル名と該画像ファイルを特定する識別情報とを含む新たなファイル名を作成することを特徴とする請求項2記載の情報処理装置。
【請求項7】
前記新たなファイル名を付与した画像ファイルの情報を表示する表示手段を有し、
前記表示手段は、前記新たなファイル名から前記識別情報を削除したものを前記画像ファイルのファイル名として表示する表示手段をさらに有する請求項6記載の情報処理装置。
【請求項8】
前記第1の記憶手段により記憶した画像ファイルを、さらに別の領域に記憶する第2の記憶手段を有し、
前記第1の記憶手段は、前記画像ファイルを隠しファイルとして記憶し、前記第2の記憶手段は、前記画像ファイルをユーザにアクセス可能な形式で記憶することを特徴とする請求項2記載の情報処理装置。
【請求項9】
前記第2の記憶手段による記憶は、ユーザ操作に基づき行われることを特徴とする請求項8記載の情報処理装置。
【請求項10】
前記画像ファイルに対する処理の履歴を管理する管理テーブルと、
以前行った処理を再度行う再処理要求があった場合に、前記第1の記憶手段により記憶された画像ファイルのファイル名から前記識別情報を取得する取得手段と、
前記取得手段で取得した前記識別情報が前記管理テーブルに存在するか否かを判断する第2の判断手段と、
前記第2の判断手段で前記管理テーブルに前記識別情報が存在すると判断した場合、前記画像ファイルに対する処理を行う処理手段とをさらに有する請求項2記載の情報処理装置。
【請求項11】
画像ファイルを受信する第1の受信工程と、
前記画像ファイルを特定する識別情報を受信する第2の受信工程と、
前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与工程と、
前記新たなファイル名を付与した画像ファイルを記憶する記憶工程とを有する情報処理装置の制御方法。
【請求項12】
コンピュータに、
画像ファイルを受信する第1の受信工程と、
前記画像ファイルを特定する識別情報を受信する第2の受信工程と、
前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与工程と、
前記新たなファイル名を付与した画像ファイルを記憶する記憶工程とをコンピュータに実行させることを特徴とするプログラム。
【請求項13】
請求項11に記載のプログラムを記憶したコンピュータで読み取りが可能な記憶媒体。
【請求項1】
画像処理装置と、情報処理装置とからなる画像処理システムであって、
前記画像処理装置は、
画像ファイルに対して一意な識別情報を作成する作成手段と、前記情報処理装置に、前記画像ファイルと前記識別情報とを送信する送信手段とを有し、
前記情報処理装置は、
前記画像処理装置から送信された前記画像ファイルと前記識別情報とを受信する受信手段と、受信した画像ファイルのファイル名と識別情報とに基づき、新たなファイル名を作成して前記画像ファイルに付与するファイル名付与手段とを有する画像処理システム。
【請求項2】
画像ファイルを受信する第1の受信手段と、
前記画像ファイルを特定する識別情報を受信する第2の受信手段と、
前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与手段と、
前記新たなファイル名を付与した画像ファイルを記憶する第1の記憶手段とを有する情報処理装置。
【請求項3】
前記識別情報は、前記画像ファイルを撮影した装置の固体番号、撮影の時刻、及びカウントアップ情報から作成されたものであることを特徴とする請求項2記載の情報処理装置。
【請求項4】
前記第2の受信手段により識別情報を受信した場合に、前記第1の記憶手段に記憶された画像ファイルのファイル名を参照する参照手段と、
前記参照の結果、前記受信した識別情報のうち、前記第1の記憶手段により記憶された画像ファイルのファイル名に含まれない識別情報が存在するか否かを判断する判断手段とを有することを特徴とする請求項2記載の情報処理装置。
【請求項5】
前記判断手段により前記ファイル名に含まれない識別情報が存在すると判断した場合に、前記第1の受信手段は、前記画像処理装置から前記識別情報に対応付けられた画像ファイルを受信することを特徴とする請求項4記載の情報処理装置。
【請求項6】
前記ファイル名付与手段は、前記受信した画像ファイルのファイル名と該画像ファイルを特定する識別情報とを含む新たなファイル名を作成することを特徴とする請求項2記載の情報処理装置。
【請求項7】
前記新たなファイル名を付与した画像ファイルの情報を表示する表示手段を有し、
前記表示手段は、前記新たなファイル名から前記識別情報を削除したものを前記画像ファイルのファイル名として表示する表示手段をさらに有する請求項6記載の情報処理装置。
【請求項8】
前記第1の記憶手段により記憶した画像ファイルを、さらに別の領域に記憶する第2の記憶手段を有し、
前記第1の記憶手段は、前記画像ファイルを隠しファイルとして記憶し、前記第2の記憶手段は、前記画像ファイルをユーザにアクセス可能な形式で記憶することを特徴とする請求項2記載の情報処理装置。
【請求項9】
前記第2の記憶手段による記憶は、ユーザ操作に基づき行われることを特徴とする請求項8記載の情報処理装置。
【請求項10】
前記画像ファイルに対する処理の履歴を管理する管理テーブルと、
以前行った処理を再度行う再処理要求があった場合に、前記第1の記憶手段により記憶された画像ファイルのファイル名から前記識別情報を取得する取得手段と、
前記取得手段で取得した前記識別情報が前記管理テーブルに存在するか否かを判断する第2の判断手段と、
前記第2の判断手段で前記管理テーブルに前記識別情報が存在すると判断した場合、前記画像ファイルに対する処理を行う処理手段とをさらに有する請求項2記載の情報処理装置。
【請求項11】
画像ファイルを受信する第1の受信工程と、
前記画像ファイルを特定する識別情報を受信する第2の受信工程と、
前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与工程と、
前記新たなファイル名を付与した画像ファイルを記憶する記憶工程とを有する情報処理装置の制御方法。
【請求項12】
コンピュータに、
画像ファイルを受信する第1の受信工程と、
前記画像ファイルを特定する識別情報を受信する第2の受信工程と、
前記受信した画像ファイルのファイル名及び該画像ファイルを特定する識別情報に基づき、新たなファイル名を作成して前記受信した画像ファイルに付与するファイル名付与工程と、
前記新たなファイル名を付与した画像ファイルを記憶する記憶工程とをコンピュータに実行させることを特徴とするプログラム。
【請求項13】
請求項11に記載のプログラムを記憶したコンピュータで読み取りが可能な記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【公開番号】特開2008−219091(P2008−219091A)
【公開日】平成20年9月18日(2008.9.18)
【国際特許分類】
【出願番号】特願2007−49486(P2007−49486)
【出願日】平成19年2月28日(2007.2.28)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成20年9月18日(2008.9.18)
【国際特許分類】
【出願日】平成19年2月28日(2007.2.28)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]