JP2009175858A - 情報処理装置、その制御方法、プログラム - Google Patents
情報処理装置、その制御方法、プログラム Download PDFInfo
- Publication number
- JP2009175858A JP2009175858A JP2008011627A JP2008011627A JP2009175858A JP 2009175858 A JP2009175858 A JP 2009175858A JP 2008011627 A JP2008011627 A JP 2008011627A JP 2008011627 A JP2008011627 A JP 2008011627A JP 2009175858 A JP2009175858 A JP 2009175858A
- Authority
- JP
- Japan
- Prior art keywords
- image data
- storage medium
- stored
- uuid
- list
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】 第2の記憶媒体から第1の記憶媒体に未だ転送されていない画像データを素早く見つけ出すことを可能とする。
【解決手段】 前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に記憶されていない場合、その画像データが未転送であるとみなす。さらに、第1の記憶媒体に記憶されている画像データを新たに発見した場合は、未転送であるとみなされた画像データの識別情報と新たに発見された画像データの識別情報とを比較し、未転送であるとみなされた画像データが第1の記憶媒体に記憶されているか否かを判断する。
【選択図】 図10
【解決手段】 前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に記憶されていない場合、その画像データが未転送であるとみなす。さらに、第1の記憶媒体に記憶されている画像データを新たに発見した場合は、未転送であるとみなされた画像データの識別情報と新たに発見された画像データの識別情報とを比較し、未転送であるとみなされた画像データが第1の記憶媒体に記憶されているか否かを判断する。
【選択図】 図10
Description
本発明は、データを外部機器から受信する情報処理装置、その制御方法、プログラムに関する。
近年、記憶媒体の容量が増加するのに伴い、デジタルカメラのメモリカードの容量も増加し、大量の画像データが記憶可能となっている。それに伴い、パーソナルコンピュータ(以下、「PC」)のストレージにも、デジタルカメラから転送される画像データが大量に取り込まれている状態になっている。
このように大量な枚数の画像を扱う場合、撮影した画像データがすでにPCに取り込まれているのか否かをユーザが正しく判断するのは難しい。
また、毎回通信時にすべての画像データをデジタルカメラからPCに転送すると、画像データが重複してPCに転送されることになる。
このような問題を回避するために、画像データに付加される識別情報、例えばUUIDを用いて、重複した画像データの転送を回避する方法が知られている。
例えば、デジタルカメラ内にある画像データのすべてのIDと、PC内にある画像データのすべてのIDとを入手し、それらを比較することで、デジタルカメラ内の画像で取り込まれていないものを見つけるという方法が知られている(例えば、特許文献1)。
特開2001−309219号公報
特許文献1に記載の発明は、IDのリストを互いに作成し、そしてその2つのIDリストにあるIDを1つずつ比較する必要がある。したがって、画像データの数が多い場合にはIDを比較する処理を何度も行う可能性が高く、結果として画像データが転送済みか否かを判断するのに非常に時間がかかってしまう。
本発明に係る情報処理装置は、上記課題を解決するためのものであり、第1の記憶媒体に記憶されている画像データと、第2の記憶媒体に記憶されている画像データとを管理する管理手段と、前記第1の記憶媒体に記憶されている画像データの識別情報に基づき、前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に記憶されているか否かを判断する判断手段とを有し、前記判断手段により、前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に記憶されていないと判断された場合、前記管理手段は、前記第2の記憶媒体に記憶されている画像データが未転送であるとみなし、前記管理手段が、前記第1の記憶媒体に記憶されている画像データを新たに発見した場合、前記判断手段は、未転送であるとみなされた画像データの識別情報と新たに発見された画像データの識別情報とを比較することで、前記未転送であるとみなされた画像データが前記第1の記憶媒体に記憶されているか否かを判断することを特徴とする。
本発明によれば、データが未転送か否かを高速に判断することが可能となる。
(第1の実施形態)
本発明の第1の実施形態について説明する。本実施形態では、画像処理装置の一種であるデジタルカメラと、情報処理装置の一種であるPCとが接続され、データ通信を行う場合を例として説明する。
本発明の第1の実施形態について説明する。本実施形態では、画像処理装置の一種であるデジタルカメラと、情報処理装置の一種であるPCとが接続され、データ通信を行う場合を例として説明する。
<デジタルカメラ及びPCの構成>
図1は、本実施形態における通信システムの概要を示す図である。
図1は、本実施形態における通信システムの概要を示す図である。
図1において、デジタルカメラ100とPC101は、通信インタフェース102を介して通信を行う。
デジタルカメラ100とPC101は、オブジェクトベースのプロトコルであるPTP(Picture Transfer Protocol)に基づいて通信するものとする。なお、本発明を実現するためのプロトコルはPTPに限定されず、例えばオブジェクトベースのプロトコルであるMTP(Media Transfer Protocol)などを用いてもよい。
PC101には、デジタルカメラ100に対し、PTPにしたがって画像データを送信するよう要求することを可能とするアプリケーションがインストールされている。
図2において、デジタルカメラ100とPC101の内部構成を表すブロック図を示す。
まず、デジタルカメラ100の内部構成について説明する。
まず、デジタルカメラ100の内部構成について説明する。
201は光学系を示す。被写体からの光束が光学系201を通して撮像素子202へ電荷として保持される。撮像素子202で蓄積された電荷が撮像プロセス部203で画像信号として変換される。撮像プロセス部203から出力された信号は、A/Dコンバータによりデジタル信号に変換されて、データバス205を介してRAM210に保存される。
中央処理プロセス部213は、画像処理部207、圧縮伸張部208、表示制御部209、記録再生制御部211、通信制御部212、中央制御部215の6つから成り立っている。
画像処理部207は、ホワイトバランス、シャープ、ぼかし、カラーバランス、レベルの補正等を行う。
圧縮伸張部208は画像処理部207で処理されたデジタル画像をJPEG、JPEG2000等の画像圧縮方法に従って圧縮する機能と、圧縮されたデジタル画像を伸長する機能とを有する。圧縮率は、ユーザによる設定が可能である。
表示制御部209は、表示器217へのUI(ユーザインタフェース)の描画を行う。
記録再生制御部211は、記憶媒体218への入出力制御を行う。
通信制御部212は、通信器219へのデータの入出力制御を行う。
中央制御部215は各制御部を統括して制御する。
記録再生制御部211は、記憶媒体218への入出力制御を行う。
通信制御部212は、通信器219へのデータの入出力制御を行う。
中央制御部215は各制御部を統括して制御する。
システム制御部214は、データバス205と接続されておりROM200内の制御プログラムに従ってデジタルカメラ100を制御する。
中央制御部215は、圧縮伸長部208で圧縮されたデジタル画像とそのデジタル画像の付加情報とを含む画像データをファイルとして生成し、生成した画像データをRAM210に格納する機能を有する。付加情報には、画像に関する情報、デジタルカメラ100に関する情報、画像データのサムネイル等が含まれる。また、本実施形態におけるデジタルカメラ100は、撮影した画像に一意な識別番号であるUUID(Universal Unique ID)を付加する。UUIDはカメラの固体番号と今までに撮影した画像の枚数に基づき生成される。なお、UUIDはファイルのヘッダ部に記憶される。
RAM210は、複数の画像データを記憶する容量を有する。
RAM210は、複数の画像データを記憶する容量を有する。
また、システム制御部214は、デジタルカメラ100を省電力状態にする機能を有する。ここで、デジタルカメラ100が省電力状態である場合、システム制御部214は、デジタルカメラ100の機能の一部をオフにしてバッテリの消費電力を削減する。
ROM200は、デジタルカメラ100を制御するための制御プログラム、デジタルカメラ100に関する情報等が記憶されている。また、ROM200には、表示部217に表示される設定メニューに対応する画像データも記憶されている。
操作器216は、デジタルカメラ100を操作するためのユーザインタフェースであり、デジタルカメラ100の電源をオン又はオフするための電源スイッチを含む。また、シャッタボタン、表示部217に設定メニューを表示するためのメニューボタン、表示部217に表示されたカーソルを上、下、左又は右に移動するための十字ボタンも含む。さらに、カーソルが選択している画像、項目、値等をデジタルカメラ100に設定又は選択させるためのSETボタン等を含む。シャッタボタンには、半押し状態と全押し状態とがある。シャッタボタンが半押し状態にされると、デジタルカメラ100はAF、AE等を実行し、シャッタボタンが全押し状態にされると、デジタルカメラ100はデジタル画像の撮影を実行する。
表示器217は、表示制御部209によって要求された描画を表示するものであり、デバイスとしては液晶等の表示器を有し、その表示器に様々な情報を表示する。表示部217は、デジタルカメラ100に関する情報を表示する機能と、撮影画像を表示する機能と、記憶媒体218に保存された画像データを表示する機能等を有する。記憶媒体218に保存された画像データを表示する場合にはそのデジタル画像に関する情報も表示することができる。また、表示部217は、設定メニュー等のグラフィカルユーザインタフェースを提供する機能を有する。
記録再生制御部211は、RAM210に格納された画像データを記憶媒体218に書き込む機能と、記憶媒体218に保存された画像データを記憶媒体218から読み出してRAM210に書き込む機能とを有する。記憶媒体218から読み出されてRAM210に書き込まれた画像データは、システム制御部214によって表示部217に表示される。
記憶媒体218は、RAM210に保存された画像データ(JPEG画像など)を記録再生制御部211を介して格納する。この記憶媒体218は、脱着可能な媒体でも装置に組み込まれた記憶媒体のどちらでもかまわなく、デジタルカメラ100に電源が投入されていない状態でも記憶を保持することが可能な媒体である。
通信器219は、無線機能を有し、有線通信を持たないものは、メディア経由で無線情報を更新し、有線通信を持つものでも構わない。また通信器の脱着可、不可を問わない。
また、記録再生制御部211は、デジタルカメラで読み書きできるよう、DCF規格(Design rule for Camera File System)で記憶されるものとする。また、動画データは、DCF基本ファイルとDCFサムネイルファイルの2つのファイル構成で1つのマルチメディアデータとして扱っている。実際のファイル構成は、DCF規格に限らず、複数のファイルで構成しているマルチメディアデータでもかまわない。
通信制御部213では、PTP規格に準拠した通信が可能である。前述した通り、通信方式はPTP規格に限定されるものではない。
次に、PC101の内部構成について説明する。
PC101の操作器221は、例えばキーボードやマウスなどであり、操作器221からの入力信号に基づき、システム制御部225が操作の制御を行う。
表示器222は、出力モニタであり、表示制御部228により描画されたUIを出力する。
RAM229は、PC101のOSや、アプリケーションを動作させるための揮発性のメモリである。
記憶媒体223は、記憶制御部230によるデータの要求に応じて入出力をする装置であり、不揮発性の記憶装置である。記憶媒体223には、OSやアプリケーションが格納されている。
通信器224は、通信インタフェース234と接続可能な通信装置であり、通信制御部231によりデータの入出力を行う。通信器224は、無線機能を有し、有線通信を持たないものはメディア経由で無線通信情報を更新し、有線通信を持つものでも構わない。また通信器の脱着可、不可を問わない。 中央処理プロセス部227は、表示制御部228、記憶制御部230、通信制御部231、中央制御部226(各制御部の統括等)で構成される。各制御部の役割は、デジタルカメラ100の各制御部と同様である。
図3は、本実施形で必要となる画像通信システムにおけるモジュール構成図を示す。なお、本実施形態では、図2に示した各制御部が各部を制御することにより、各モジュールの機能を実現する。
まず、デジタルカメラ100のモジュール構成を説明する。
記憶媒体301は、デジタルカメラ100に格納される画像データが保存される記憶媒体であり、図2の記憶媒体218に対応する。記憶媒体301は、脱着可能なものであっても不可なものであってもどちらでもかまわない。記憶媒体301には、静止画や動画などの画像データがDCF規格にしたがって記憶されている。
ファイル管理モジュール302は、記憶媒体301に格納されているデータの読み書きを管理するモジュールであり、デジタルカメラ100の再生時に必要な画像を管理し、通信モジュール303から要求される画像データの読み書きを管理するモジュールである。
通信モジュール303は、デジタルカメラ100にインストールされており、通信インタフェース102を介して通信を制御するためのモジュールである。本実施形では、PTPを使って通信を実現している。
次に、PC101のモジュール構成を説明する。
通信モジュール304は、PC101にインストールされており、周辺機器と通信を制御するためのモジュールである。本実施形では、PTPを使って通信を実現している。
ファイル管理モジュール305は、UI308で実現されるアプリケーション上でのファイルの管理を行なうモジュールである。具体的には、デジタルカメラ内にある各画像の情報と、PCに既に取り込んでいる情報、例えばサムネイルデータやヘッダ情報(撮影日時、撮影機種、解像度、撮影パラメータなど)を関連付けて保持している。また画像データの本体がPC101の記憶媒体307に格納されてキャッシュされている場合は、それらの情報も関連付けて保持している。
ファイル解析モジュール306は、デジタルカメラ100から送信されてきたデータを解析し、どんな情報が書き込まれているのかを解析するためのモジュールである。具体的には、JPGの画像ファイルであれば、ファイルフォーマット、撮影日時、撮影機種、解像度、撮影パラメータ、動画のフレーム情報などを解析により得ることができる。
記憶媒体307は、PC101に格納される画像データを記憶するために必要な媒体であり、図2の記憶媒体223に対応する。本実施形態では、デジタルカメラ100から受信した画像データをキャッシュするために用いる。
UI308は、PC101にインストールされているアプリケーションのUIであり、サムネイル一覧または画像を示すアイコンの一覧を表示する手段と、画像データの表示制御を行うための手段を持っている。
表示器309は、各種データを描画するディスプレイ装置である。本実施形態では表示器として扱うが、ディスプレイ装置であれば、プロジェクターやデジタルテレビなどでもかまわない。
<画像転送処理>
次に、本実施形態における画像転送処理について説明する。
次に、本実施形態における画像転送処理について説明する。
図4は、本実施形態における画像転送処理におけるデジタルカメラ100及びPC101の動作を示すフローチャートである。図4のうち、点線より左側がデジタルカメラ100の動作であり、点線より右側がPC101の動作である。
なお、以下説明するデジタルカメラ100の動作は、デジタルカメラ100のシステム制御部214が入力信号やプログラムにしたがって各部を制御することにより実現する。また、PC101の動作も同様に、システム制御部225が各部を制御することにより実現する。
まず、ステップS401において、PC101は、デジタルカメラ100との接続を検知したか否かを判断する。検知したと判断した場合にはPCは2つのスレッドを立ち上げる。1つはデジタルカメラ100側の画像データのUUIDを管理するためのスレッドであり、もう1つはPC101側の画像データのUUIDを管理するためのスレッドである。この2つのスレッドによる処理を並行して実行するため、処理をステップS402、ステップS403に進める。接続を検知しなかったと判断しなかった場合には処理を繰り返す。
ステップS402において、PC101は、自機の記憶媒体223に記憶された画像データのUUIDリストを作成する。この処理については後述する
ステップS403において、PC101は、画像情報に含まれる属性情報に基づき、デジタルカメラ100の記憶媒体218に記憶された画像データのUUIDリストを作成する。この処理については後述する。
ステップS403において、PC101は、画像情報に含まれる属性情報に基づき、デジタルカメラ100の記憶媒体218に記憶された画像データのUUIDリストを作成する。この処理については後述する。
ステップS404において、PC101は、ステップS404で生成したPC101側のUUIDのリストとステップS406で生成したデジタルカメラ100側のUUIDリストとを比較する。PC101は、PC101側のUUIDとデジタルカメラ100側のUUIDといった第1の識別情報と第2の識別情報を比較・照合することにより、未転送の画像データを判別することが可能となる。この処理については後述する。なお、本実施形態における比較処理では、ステップS402やステップS403のリスト生成処理が完了する前に、別スレッドで並行して実行される。つまり、PC101はUUIDリストを更新しつつ、更新中のUUIDリストに基づいてUUIDの比較を行う。
ステップS404の比較の結果、PC101は、デジタルカメラ100からPC101に未だ転送されていない画像データのUUIDを特定することができる。すなわち、カメラ側リストに存在し、かつPC側リストに存在しないUUIDを有する画像データが、デジタルカメラ100からPC101に未だ転送されていない画像データと判断できる。したがって、ステップS405において、PC101は、デジタルカメラに対してPC101未だ転送されていない画像データを要求する旨の信号を送信する。この要求にはUUIDが含まれる。この要求に応じて、デジタルカメラ100は、要求に含まれるUUIDを有する画像データを記憶媒体218から読みだし、PC101に送信する。
ステップS406において、PC101はデジタルカメラ100が送信した画像データを受信し、記憶媒体223に記憶する。
以上が、デジタルカメラ100とPC101を接続してから画像が送信されるまでの流れである。本実施形態におけるデジタルカメラ100及びPC101は、図4に示す処理をユーザ操作なしで実行する。つまり、ユーザはデジタルカメラ100及びPC101を接続するという簡単な操作を行うだけで、未転送の画像データがPC101に自動的に送信される。
次に、図4のフローチャートにおける各ステップの処理について詳細に説明する。
<PC側のUUIDリスト生成処理>
PC100に記憶された画像データのUUIDリスト(以下、「PC側リスト」)を生成する処理について説明する。この処理は図4のステップS402の処理に対応する。
PC100に記憶された画像データのUUIDリスト(以下、「PC側リスト」)を生成する処理について説明する。この処理は図4のステップS402の処理に対応する。
図5は、本処理におけるPC101の動作を示すフローチャートである。
ステップS501において、PC101側リストを生成する処理を開始する。
ステップS502において、PC101は自機の記憶媒体223を検索し、画像データを読み出す。
ステップS503において、PC101は画像データを解析し、画像データに付加情報として含まれるUUIDを抽出することでUUIDを取得する。通常UUIDはヘッダ部に含まれているため、このステップではヘッダ部を解析する。
ステップS504において、PC101は、ステップS503で取得したUUIDをPC側リストに追加する。PC側リストが存在しない場合は新規に作成する。
ステップS505において、PC101は、すべての画像データからUUIDを取得したか否かを判断する。すべての画像データからUUIDを取得したと判断した場合には、処理を終了する。まだUUIDを取得していない画像データがあると判断した場合には、処理をステップS502に戻し、UUIDを取得していない画像データを検索する。
なお、ステップS503において、画像データを解析した結果、UUIDが正常に得ることができない場合がある。この場合、この画像データはPC側リストに追加しないが、ステップS505の判断ではUUIDを取得したものとして取り扱う。
ステップS505において、すべての画像データからUUIDを取得したと判断した場合には、処理を終了する。
<デジタルカメラ側のUUIDリスト生成処理>
デジタルカメラ100に記憶された画像データのUUIDリスト(以下、「カメラ側リスト」)を生成する処理について説明する。この処理は図4のステップS403の処理に対応する。
デジタルカメラ100に記憶された画像データのUUIDリスト(以下、「カメラ側リスト」)を生成する処理について説明する。この処理は図4のステップS403の処理に対応する。
図6は、本処理におけるPC101の動作を示すフローチャートである。
ステップS601において、PC101はカメラ側リストを生成する処理を開始する。
ステップS602において、PC101は、デジタルカメラ100に対してデジタルカメラ100内の画像データの情報を要求する。この要求に応じて、デジタルカメラ100は、記憶媒体218に記憶された画像データのファイル名並びにパスを示すリストと、記憶媒体218に記憶された画像データの属性情報とを含む画像情報をPC101に送信する。ここで、属性情報には画像データのUUIDが含まれる。本実施形態におけるデジタルカメラ100は、記憶媒体218に記憶された画像データからUUIDが含まれる部分、例えばヘッダ部を抽出して送信する。ここで、画像データのリストは、記憶媒体218に記憶されたすべての画像データのファイル名及びパスが記載されている。属性情報は画像データ1つ分の画像情報を画像の数だけ送信してもよいし、複数の画像データに関する属性情報を1つのデータ構造体としてまとめて送信してもよい。
ステップS603において、PC101は、デジタルカメラ100から送信された画像情報を受信する。
ステップS604において、PC101は、ステップS602で受信した画像情報を解析し、画像情報に含まれるUUIDを抽出することで、UUIDを取得する。
ステップS605において、PC101は、ステップS604で取得したUUIDをカメラ側リストへ追加する。カメラ側リストが存在しない場合は新規に作成する。
ステップS606において、PC101は、解析した画像情報の数とステップS603で受信したリストに記載された画像データの数とを比較し、取得すべき画像データが他にあるかどうかを判断する。まだカメラ側リストに追加すべき画像データが存在すると判断した場合には、処理をステップS602に戻し、再度画像情報を要求する。カメラ側リストに追加すべき画像データがない、つまりデジタルカメラ100内の画像データのUUIDをすべてカメラ側リストにリストアップしたと判断した場合は、処理を終了する。
ここで、ステップS604において、画像データを解析した結果、UUIDが正常に取得できない場合がある。本実施形態では、UUIDが正しく取得できなかった画像データは未転送リストへ追加することとし、画像データが転送されない事態を防ぐこととした。もちろん、UUIDが取得できない画像データは転送済リストに追加し、PC101に送信されないようにしてもよい。
<UUIDの比較>
以下、デジタルカメラ100の記憶媒体218に記憶された画像データのUUIDと、PC101の記憶媒体223に記憶された画像データのUUIDとを比較する処理について説明する。この処理は図4のステップS404に対応する。
以下、デジタルカメラ100の記憶媒体218に記憶された画像データのUUIDと、PC101の記憶媒体223に記憶された画像データのUUIDとを比較する処理について説明する。この処理は図4のステップS404に対応する。
図7は、本処理におけるPC101の基本的な動作を示すフローチャートである。なお、前述したように、本実施形態におけるUUIDの比較処理はカメラ側リスト、PC側リストの生成処理、すなわち図5、図6に示す処理と並行して行われる。
ステップS700において、PC101は、図6のフローチャートで生成したカメラ側リストから、比較元とするUUIDを1つ読み出す。そして、図5のフローチャートで生成したPC側リストからもUUIDを1つ読み出す。
ステップS701において、PC101は、ステップS700で読み出した2つのUUIDを比較する。
ステップS702において、PC101は、ステップS701で読み出したUUUIDが一致するか否かを判断する。一致すると判断した場合には画像データは転送済みであると考えられるため、処理をステップS703に進める。一致しない判断した場合には処理をステップS706に進める。
まず、ステップS702において、UUIDが一致すると判断された場合について説明する。
ステップS703において、PC101は、一致したUUIDを有する画像データの関連データが、デジタルカメラ100に記憶されているか否かを判断する。関連データとは、画像データに関連付けられた音声データや、RAW画像データ、もしくはテキストデータなどである。PC101は、関連データが記憶されていると判断した場合、処理をステップS704に進める。関連データがないと判断された場合は、処理をステップS705に進める。関連データがあるか否かの判断は、ステップS603で受信したファイル名及びパスのリストに基づいて判断される。具体的には、対象となる画像データとディレクトリが同階層であり、更新日時が一定期間内であり、同じ命名規則にしたがったファイル名を有するデータであれば関連データと判断される。
ステップS704において、PC101は、関連データがPC101に既に転送されているか否かをステップS703と同様の基準で判断する。複数の関連データと関連付けられている場合には、すべての関連データについて既に転送されているか否かを判断する。例えば、デジタルカメラ100の画像データにはRAWデータや音声メモを関連付けることができる。このような場合において、PC101に音声データとRAWデータのうち一方しか記憶されていない場合や、RAWデータと音声メモの両方とも記憶されていないと判断された場合は、PC101は処理をステップS706に戻す。また、すべての関連データが記憶されていると判断した場合は、処理をステップS705に進める。
ステップS705において、PC101は、ステップS701でカメラ側リストから読み出したUUIDを有する画像データ及びその関連データが、既にPC101に転送されていると判断する。したがって、PC101はUUIDを転送済みリストに追加し、処理をステップS709に進める。ここで転送済リストとは、比較処理の結果、既にPC101に転送されていると判断された画像データのUUIDを保持するリストである。
次に、ステップS702において、一致するUUIDが存在しないと判断された場合について説明する。
ステップS706において、PC101は、カメラ側リストから読み出したUUIDを、PC側リストが保持するUUIDのすべてと比較したか否かを判断する。すべてと比較したと判断した場合には処理をステップS708に進める。すべてと比較していないと判断した場合には処理をステップS707に進める。
ステップS707において、PC101は、PC側リストのうち、まだカメラ側リストと比較していないUUIDを読み出し、処理をステップS702に戻す。この処理で、新たなUUIDとの比較を行う。
ステップS708において、PC101はカメラ側リストから読み出したUUIDを有する画像データがPC101には記憶されていないと判断する。そして、カメラ側リストから読み出したUUIDを未転送リストに追加し、カメラ側リストから削除する。その後、処理をステップS709に進める。ここで未転送リストとは、デジタルカメラ100に記憶されている画像データのうち、まだPC101に転送されていない画像データのUUIDを保持するリストである。
ステップS709において、PC101は、カメラ側リストが空か否かを判断する。空であると判断した場合には、処理をステップS710に進める。空でないと判断した場合には、処理をステップS700に戻し、カメラ側リストからまだPC側リストと比較していないUUIDを読み出し、比較処理を行う。
ステップS710において、PC101は、図5、図6に示すUUIDリストの生成処理において、すべての画像についてUUIDを抽出したか否かを判断する。すべて抽出したと判断した場合、デジタルカメラ100内の画像データと、PC101内の画像データのすべてについて比較処理を行ったことになるため、処理を終了する。すべて抽出していないと判断した場合には、処理をステップS709に戻す。以上が、UUIDの比較処理の基本的な流れである。
このように、本実施形態におけるPC101は、記憶媒体223と記憶媒体218といった、第1の記憶媒体と第2の記憶媒体とに記憶された画像データの識別情報を比較する。この比較処理により、PC101は、記憶媒体218に記憶されている画像データが記憶媒体223にも記憶されているかを判断することができる。
次に、比較処理と並行して図5に示すPC側リスト生成処理を行った結果、比較処理の途中で新たな画像がPC側リストに追加された場合の処理について説明する。
図8は、比較処理の途中で新たな画像がPC側リストに追加された場合における、PC101の動作を示すフローチャートである。
本処理では、比較処理の開始後に、PC側リストに新たにUUIDが追加された場合、新たに追加されたUUIDをカメラ側リストが保持するUUIDと比較するのではなく、まず未転送リストが保持するUUIDと比較する。このことにより、一致するUUIDを高速に発見することが可能となる。以下、本処理について図8を用いて説明する。
本実施形態におけるPC101は、図7に示す第1の比較処理とは異なるスレッドを起動し、図8に示す第2の比較処理を行う。
ステップS801において、PC101はPC側リストの状態を監視し、PC側リストに新たなUUIDが追加されたか否かを判断する。追加されたと判断した場合、処理をステップS802に進める。追加されていないと判断した場合、処理を繰り返す。
ステップS802において、PC101は、新たに追加されたUUIDと比較するためのカメラ側の画像データのUUIDを読み出す。この際にPC101は、カメラ側リストからUUIDを読み出すのではなく、未転送リストから1つのUUIDを読み出す。未転送リストには、図7のステップS708にて追加されたUUIDが保持されている。
ステップS803において、PC101は、新たに追加されたUUIDとステップS802で未転送リストから読み出したUUIDとを比較する。
ステップS804において、PC101は、ステップS803における比較の結果、新たに追加されたUUIDとステップS802で未転送リストから読み出したUUIDとが一致するか否かを判断する。一致すると判断した場合には処理をステップS805に進める。一致しないと判断した場合には処理をステップS808に進める。
まず、新たに追加されたUUIDとステップS802で未転送リストから読み出したUUIDとが一致すると判断した場合について説明する。
ステップS805において、PC101は、未転送リストから読み出したUUIDを有する画像データの関連データがデジタルカメラ100に記憶されているか否かを判断する。記憶されていると判断した場合は処理をステップS806に進める。記憶されていないと判断した場合には処理をステップS807に進める。この処理は図7のステップS703と同様の処理である。
ステップS806において、PC101は、すべての関連データがPC101に既に転送されているか否かを判断する。すべての関連データが転送されていると判断された場合は処理をステップS807に進める。関連データが1つでもPC101に転送されていないと判断された場合には、処理をステップS808に進める。この処理は図7のステップS703と同様の処理である。
ステップS807において、PC101は、未転送リストから読み出したUUIDを有する画像データがPC101には記憶されていないと判断する。そして、未転送リストから読み出したUUIDを転送済リストに追加し、未転送リストから削除する。その後、処理をステップS801に戻し、新たなUUIDが追加されるのを監視する。
次に、ステップS804において、新たに追加されたUUIDとステップS802で未転送リストから読み出したUUIDとが一致しないと判断した場合について説明する。
ステップS808において、PC101は、未転送リストが保持するすべてのUUIDとの比較が終了したか否か判断する。終了していないと判断した場合には処理をステップS809に進める。終了したと判断した場合には処理をステップS801に戻し、新たなUUIDが追加されるのを監視する。
ステップS809において、PC101は、未転送リストのうち、まだ比較処理を行っていないUUIDを読み出し、処理をステップS803に戻す。
以上が、比較処理におけるPC101の動作である。次に、ここまでの説明をカメラ側リスト、PC側リスト、未転送リスト、転送済リストを示す図を用いて説明する。図9に、カメラ側リスト、PC側リスト、未転送リスト、転送済リストの関係を示す。
900はカメラ側リストであり、デジタルカメラ100内に記憶されている画像データのUUIDを保持している。また、カメラ側リストはデジタルカメラ101に記憶された画像データの記憶場所が特定できる情報を保持している。図9の例では、UUIDとともにファイルパスを保持している。これはすべてのリストに共通する。
901は転送済リストであり、図7のステップS705や図8のステップS807で追加されたUUIDを保持している。
902は未転送リストであり、図7のステップS708で追加されたUUIDを保持している。
903はPC側リストであり、PC101内に記憶されている画像データのUUIDを保持している。
以下、処理の流れを説明する。まず、PC101は、カメラ側リスト900の保持するUUIDとPC側リスト903の保持するUUIDとを読み出す。本実施形態では、リストの降順にUUIDが読み出され比較されるものとする。そこで、PC101は、カメラ側リスト900からUUID911を読み出す。PC側リスト903からはUID921を読み出す。この処理は、図7のステップS700に対応する。
そしてPC101は、読み出したUUID911と、UUID921とを比較する。この処理は、図7のステップS701に対応する。図9の例では、UUID911とUUID921が一致するので、UUID911を転送済リスト901に追加する(矢印951)。この処理は、図7のステップS705に対応する。
続いてPC101は、カメラ側リスト900からまだ比較処理を行っていないUUID912を読み出す。そして、UUID921と比較を行う。
UUID912とUUID921は異なるUUIDであるから、PC101は次のUUIDであるUUID922を読み出す。この処理は、図7のステップS707に対応する。UUID912とUUID922はUUIDが一致するので、PC101はUUID912を転送済リスト901に追加する。このように、他のカメラ側リストが保持するUUIDについても比較処理が行われる。
ここで、PC101はカメラ側リスト900が保持するUUID913と、PC側リスト903が保持するUUIDとを比較した場合を一例として説明する。この場合、UUID913と一致するUUIDはPC側リスト903に存在しないため、PC101はUUID913を未転送リスト902に追加する。この処理は図7のステップS708に対応する。
このように、PC101は、カメラ側リスト900が保持するすべてのUUIDについて、PC側リスト903との比較を行い、転送済リスト901または未転送リスト902に振り分ける。
次に、後からPC側リスト101にUUIDが追加された場合について説明する。
図9の状態から、UUIDが追加されたリストを図10に示す。図10では、PC側リスト903にUUID923、UUID924が追加されている。
PC101は、UUID923が追加されたことを検知すると、未転送リスト902に保持されているUUID931を読み出し、UUID923と比較する。この処理は、図8のステップS802、S803に対応する。
UUID931とUUID923は同じ値であるから、PC101はUUID931を未転送リスト902から削除し、転送済リスト901に追加する。この処理は、図8のステップS807に対応する。
もし複数のUUIDがPC側リスト903に追加されたことを検知した場合は、追加されたUUIDのそれぞれについて上述の処理を繰り返す。
以上述べたように、本実施形態では、UUIDリストにUUIDを列挙する処理と並行して、カメラ側リストとPC側リストの比較処理を行なう。このことにより、処理を高速におこなうことが可能となる。
さらに、本実施形態では、比較処理が開始された後にPC側リストに新たに追加されたUUIDは、カメラ側リストが保持するUUIDではなく、未転送リストが保持するUUIDと比較することとした。このことにより、既に転送済と判断されたUUIDとは比較せず、値が一致する可能性のあるUUIDのみと比較することが可能となる。したがって、不要な比較を減らすことが可能となり、処理を高速化することが可能となる。
なお、本実施形態においてはUUIDを用いて比較処理を用いたが、他の識別情報を用いて比較処理を行ってもよい。例えば、画像データのサムネイルのバイナリデータや、ヘッダのバイナリデータ、もしくは本体データのバイナリデータを解析し、識別情報として用いても構わない。
また、PC101は記憶媒体223に記憶された画像データの中から、比較の対象となる画像データの範囲を予め設定しておくことも可能である。例えば、特定のフォルダに記憶されている画像データのみを比較処理の対象とすることも可能である。
また、本実施形態ではデジタルカメラとPCを接続するシステムを例に説明したが、必ずしもこのシステムには限定されない。例えば、PCに着脱可能な2つの記憶媒体が接続された場合にも、本発明は適用可能である。
<他の実施形態>
尚、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによって前述した実施形態の機能が達成される場合を含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したコンピュータプログラムである。
尚、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによって前述した実施形態の機能が達成される場合を含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したコンピュータプログラムである。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
コンピュータプログラムを供給するためのコンピュータ読み取り可能な記憶媒体としては以下が挙げられる。例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などである。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムをハードディスク等の記録媒体にダウンロードすることが挙げられる。この場合、ダウンロードされるプログラムは、圧縮され自動インストール機能を含むファイルであってもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布するという形態をとることもできる。この場合、所定の条件をクリアしたユーザに、インターネットを介してホームページから暗号を解く鍵情報をダウンロードさせ、その鍵情報を使用して暗号化されたプログラムを実行し、プログラムをコンピュータにインストールさせるようにもできる。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどとの協働で実施形態の機能が実現されてもよい。この場合、OSなどが、実際の処理の一部または全部を行ない、その処理によって前述した実施形態の機能が実現される。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれて前述の実施形態の機能の一部或いは全てが実現されてもよい。この場合、機能拡張ボードや機能拡張ユニットにプログラムが書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行なう。
100 デジタルカメラ
101 PC
102 通信インタフェース
101 PC
102 通信インタフェース
Claims (11)
- 第1の記憶媒体に記憶されている画像データと、第2の記憶媒体に記憶されている画像データとを管理する管理手段と、
前記第1の記憶媒体に記憶されている画像データの識別情報に基づき、前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に記憶されているか否かを判断する判断手段とを有し、
前記判断手段により、前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に記憶されていないと判断された場合、前記管理手段は、前記第2の記憶媒体に記憶されている画像データが未転送であるとみなし、
前記管理手段が、前記第1の記憶媒体に記憶されている画像データを新たに発見した場合、前記判断手段は、未転送であるとみなされた画像データの識別情報と新たに発見された画像データの識別情報とを比較することで、前記未転送であるとみなされた画像データが前記第1の記憶媒体に記憶されているか否かを判断することを特徴とする情報処理装置。 - 前記第2の記憶媒体は、外部装置の記憶媒体であり、
前記未転送とみなされた画像データを前記外部装置から受信する受信手段をさらに有する請求項1に記載の情報処理装置。 - 前記判断手段により、前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に記憶されていると判断された場合、前記管理手段は、前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に転送済みであるとみなすことを特徴とする請求項1または2に記載の情報処理装置。
- 前記管理手段は、前記第1の記憶媒体に記憶されている画像データの識別情報である第1の識別情報と、前記第2の記憶媒体に記憶されている画像データの識別情報である第2の識別情報とをそれぞれリストで管理し、
前記判断手段は、前記第1の識別情報のリストに、前記第2の識別情報と同じ識別情報が含まれているか否かを判断することで、前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に記憶されているか否かを判断することを特徴とする請求項1乃至3のいずれかに記載の情報処理装置。 - 前記判断手段はさらに、前記第2の記憶媒体に記憶されている画像データに対応する関連データが前記第1の記憶媒体に記憶されているか否かを判断し、
前記管理手段は、前記関連データが前記第1の記憶媒体に記憶されていないと判断した場合、前記関連データに対応する画像データが未転送であるとみなすことを特徴とする請求項1乃至4のいずれかに記載の情報処理装置。 - 前記関連データは、前記画像データに関連付けられた音声データであることを特徴とする請求項5に記載の情報処理装置。
- 前記関連データは、前記画像データに関連付けられたRAW画像データであることを特徴とする請求項5または6に記載の情報処理装置。
- 前記識別情報は、前記画像データのUUID(Universal Unique ID)であることを特徴とする請求項1乃至7のいずれかに記載の情報処理装置。
- 前記識別情報は、前記画像データの少なくとも一部のバイナリデータであることを特徴とする請求項1乃至7のいずれかに記載の情報処理装置。
- 前記管理手段は前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に記憶されているか否かを判断できなかった場合、前記第2の記憶媒体に記憶されている画像データが未転送であるとみなすことを特徴とする請求項1乃至9のいずれかに記載の情報処理装置。
- コンピュータを、
第1の記憶媒体に記憶されている画像データと、第2の記憶媒体に記憶されている画像データとを管理する管理手段と、
前記第1の記憶媒体に記憶されている画像データの識別情報に基づき、前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に記憶されているか否かを判断する判断手段として機能させるプログラムであって、
前記判断手段により、前記第2の記憶媒体に記憶されている画像データが前記第1の記憶媒体に記憶されていないと判断された場合、前記管理手段は、前記第2の記憶媒体に記憶されている画像データが未転送であるとみなし、
前記管理手段が、前記第1の記憶媒体に記憶されている画像データを新たに発見した場合、前記判断手段は、未転送であるとみなされた画像データの識別情報と新たに発見された画像データの識別情報とを比較することで、前記未転送であるとみなされた画像データが前記第1の記憶媒体に記憶されているか否かを判断することを特徴とするコンピュータが読み取り可能なプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008011627A JP2009175858A (ja) | 2008-01-22 | 2008-01-22 | 情報処理装置、その制御方法、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008011627A JP2009175858A (ja) | 2008-01-22 | 2008-01-22 | 情報処理装置、その制御方法、プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009175858A true JP2009175858A (ja) | 2009-08-06 |
Family
ID=41030906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008011627A Pending JP2009175858A (ja) | 2008-01-22 | 2008-01-22 | 情報処理装置、その制御方法、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009175858A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018186467A (ja) * | 2017-04-27 | 2018-11-22 | キヤノン株式会社 | 通信装置、その制御方法、プログラム |
-
2008
- 2008-01-22 JP JP2008011627A patent/JP2009175858A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018186467A (ja) * | 2017-04-27 | 2018-11-22 | キヤノン株式会社 | 通信装置、その制御方法、プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5256209B2 (ja) | 集約した装置利用データを用いたユーザ・エクスペリエンスの向上 | |
JP2009171558A (ja) | 画像処理装置及び画像管理サーバ装置及びそれらの制御方法及びプログラム | |
JP2005018734A (ja) | ファイル管理方法及びその装置、並びにアノテーション情報生成方法及びその装置 | |
JP2016048911A (ja) | 情報処理装置、その制御方法、および制御プログラム | |
JP2006163842A (ja) | 検索システム、情報処理装置及びその制御方法、プログラム | |
WO2010063088A1 (en) | System, method, and computer program for remote management of digital content | |
US20140067883A1 (en) | File processing apparatus for file transfer, file processing method, and storage medium | |
US20130262551A1 (en) | Data processing apparatus, data processing system, data processing method, and non-transitory computer readable medium | |
JP2008035224A (ja) | ログ情報管理システム、ログ情報管理装置、ログ情報管理方法、ログ情報管理プログラム及び記憶媒体 | |
JP2009175858A (ja) | 情報処理装置、その制御方法、プログラム | |
JP4235542B2 (ja) | 画像データ生成装置及び管理装置 | |
US20130097207A1 (en) | Information processing device, information processing method and computer program | |
JP6452458B2 (ja) | データ管理装置、データ管理方法、およびプログラム | |
JP2011087072A (ja) | 画像提供サーバ装置およびその制御方法およびプログラム | |
JP5489590B2 (ja) | 情報処理装置、その制御方法及びプログラム | |
JP5395550B2 (ja) | 撮像装置、情報処理装置、データ通信方法、プログラム | |
JP5020011B2 (ja) | コンテンツ処理装置 | |
JP4974914B2 (ja) | 情報処理装置、その制御方法、プログラム | |
JP2017157956A (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
KR100730265B1 (ko) | 유저 장치, 서버, 및 데이터 제공 방법 | |
JP2004072668A (ja) | 画像データ管理システムおよび画像変換サーバおよび画像データ処理方法およびコンピュータが読み取り可能な記憶媒体およびプログラム | |
JP2010093342A (ja) | 映像サーバ装置、映像クライアント装置、映像送受信システム及び情報処理方法 | |
JP2007264763A (ja) | データ管理装置、データ管理方法及びデータ管理システム | |
JP2014229282A (ja) | 画像検索装置および画像検索方法、システム、プログラムならびに記憶媒体 | |
JP2005110132A (ja) | 画像処理システム、画像記録装置、画像管理装置、画像表示制御方法及び記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100201 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20100630 |