(57)【要約】【課題】  大量の画像が記録されていると、PCから発行されるコマンド数が増加するので、一覧が表示されるまでの時間が長くなり、ユーザーは待たされることになる。【解決手段】  大量の画像が記録されている場合、全画像を所定の数以下に区切って、部分的にPCに通知すると共に、PC上に表示される画像が全体の一部であることをユーザに通知する。【選択図】  図２
2011044069.tif 000002
【特許請求の範囲】
【請求項１】
個々のファイルやフォルダを特定可能なIDを用いて外部装置と通信を行う通信装置において、
外部装置に通知するIDの数を計上する、計上手段と、
計上手段の結果と所定の数とを比較する、比較手段を備え、
比較手段の結果によって、外部装置に通知するIDの数を、ファイルやフォルダの総数以下で可変させることを特徴とする通信装置。
【請求項２】
請求項1に記載の通信装置において、
表示手段を備え、
一部のファイルやフォルダのIDを外部装置に通知した場合、一部のファイルやフォルダのIDを外部装置に通知したことを表示手段に表示することを特徴とする通信装置。
【請求項３】
請求項1に記載の通信装置において、
外部装置へ通知するIDを切替える、ID切替手段を備え、
ID切替手段によって外部装置へ通知するIDを切替えた場合、外部装置に通知していないIDの内、少なくとも1つ以上を外部装置に通知することを特徴とする通信装置。
【請求項４】
請求項１、又は請求項２、又は請求項３に記載の通信装置において、
比較手段で比較する所定の数を任意の数に設定する、比較数設定手段を備え、
比較手段において比較する数を、比較数設定手段によって設定された数に変更することを特徴とする通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルカメラ等で撮影されたデジタル画像ファイルを、コンピュータ(以下、PC)等の外部装置に送信することが可能な通信装置に関する。
【背景技術】
【０００２】
カメラ等で撮影したデジタル画像ファイルをPCに転送する通信プロトコルとして、例えばPTP（Picture Transfer Protocol）が、2000年にPIMA（Photographic And Imaging Manufactures Association,Inc.）から規格化されている（PIMA15740:2000）。
【０００３】
PTPでは、個々のファイルやフォルダ（以下、オブジェクト）毎に異なる4バイトのオブジェクトハンドル（以下、ID）を自由に割り振るよう規定されており、PCとPTP通信を行うカメラ等の通信装置（以下、カメラ）が割り振ったIDをPCに通知すると、PCはカメラ内のオブジェクトの存在を認識し、ファイルだけの一覧を表示する。
【０００４】
PTPはマスストレージとは異なり、PCはIDを使用することでカメラ内のファイルシステムを意識せずにアクセスでき、使用者はファイルとフォルダの関係から開放されるという利点がある。
【０００５】
PTPに関係する技術として、下記2つの技術が開示されている。
【０００６】
特開2006-86862（特許文献１）では、ファイルエントリをキャッシュし、キャッシュした情報から通信データを生成して送信する技術が開示されている。
【０００７】
特開2006-40097（特許文献２）では、記録媒体のオブジェクトの絶対パスと、4バイトで構成されるファイルやフォルダのIDを、特定のルールに従って対応付ける技術が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００６−８６８６２号公報
【特許文献２】特開２００６−４００９７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
近年、画像の記録に使用するメモリーカード等の記録媒体は年々大容量化しており、カメラ等に搭載される記録媒体に数百、数千を超える画像が記録されることもある。
【００１０】
PTP通信を開始すると、PCはファイルの一覧を表示するために、全てのオブジェクトのIDと属性情報を要求するコマンドを発行する。
【００１１】
オブジェクトの数に比例してPCから発行されるコマンド数は増加するので、オブジェクトの数が多いとファイルの一覧が表示されるまでの時間が長くなり、使用者は待たされることになる。
【００１２】
また、大量のファイルがPC上に表示されると、使用者にとって、任意のファイルを探し出すことが容易ではなくなってしまう。
【００１３】
PTPのようなIDを用いてオブジェクトを特定する通信プロトコルでは、通信中、オブジェクトとIDの1対1の関係は不変であることが求められる。
【００１４】
そのため、カメラは、オブジェクトとIDの関係を管理するために、オブジェクトとIDの対応テーブルをRAM上に構築するかもしれない。
【００１５】
或いは、カメラは使用者の待ち時間を短縮するため、特開2006-86862において開示される技術を用いて、記録されているファイルエントリをキャッシュし、キャッシュした情報から通信データを生成して送信するするかもしれない。
【００１６】
しかしながら、オブジェクトが増加すると、全てのオブジェクトのIDやファイルエントリを、カメラ内の有限のRAMやキャッシュに収めることができない場合も発生し得る。
【００１７】
この場合、例えばカメラ内の一部のオブジェクトに限定して通信すると、PC上にはカメラ内の一部のファイルだけが表示されるが、使用者はカメラ内の一部のファイルであることを認識することができないため、使用者はPC上に表示される全てのファイルをPCにコピーしたのち、カメラ内の全てのファイルをPCにコピーしたと思って、PCにコピーしていないカメラ内のファイルを消してしまうかもしれない。
【００１８】
或いは、そのような誤消去を避けるため、例えばオブジェクトが多い場合には通信をしない、或いは通信を終了すると、使用者はカメラ本体、或いは市販のカードリーダー/ライター等を使用するなどしてファイルの数を減らさなければ、PCと通信できないことになる。
【００１９】
更に、例えばオブジェクトが多い場合は特開2006-40097において開示されるようにテーブルを作成せず、PCからのデータ要求に応じて全てのオブジェクトのIDを通知してしまうと、オブジェクトの数に比例してコマンド数が増加してしまい、使用者の待ち時間が増える等、PCの操作感が著しく低下してしまう。
【課題を解決するための手段】
【００２０】
請求項１に記載の発明は、
個々のファイルやフォルダを特定可能なIDを用いて外部装置と通信を行う通信装置において、
外部装置に通知するIDの数を計上する、計上手段と、
計上手段の結果と所定の数とを比較する、比較手段を備え、
比較手段の結果によって、外部装置に通知するIDの数を、ファイルやフォルダの総数以下で可変させることを特徴とする。
【００２１】
請求項２に記載の発明は、
請求項1に記載の通信装置において、
表示手段を備え、
一部のファイルやフォルダのIDを外部装置に通知した場合、一部のファイルやフォルダのIDを外部装置に通知したことを表示手段に表示することを特長する。
【００２２】
請求項３に記載の発明は、
請求項1に記載の通信装置において、
外部装置へ通知するIDを切替える、ID切替手段を備え、
ID切替手段によって外部装置へ通知するIDを切替えた場合、外部装置に通知してないIDの内、少なくとも1つ以上を外部装置に通知することを特長する。
【００２３】
請求項４に記載の発明は、
請求項１、又は請求項２、又は請求項３に記載の通信装置において、
比較手段で比較する所定の数を任意の数に設定する、比較数設定手段を備え、
比較手段において比較する数を、比較数設定手段によって設定された数に変更することを特徴とする。
【発明の効果】
【００２４】
請求項１に記載の発明によれば、
例えば、“所定の数”を100、オブジェクトの総数が100よりも多い場合に外部装置に通知するIDの数を“所定の数”と同数の100とした場合、カメラにどれほど大量のオブジェクトが記録されていても、PCに通知するIDの数が100以下に制限されるので、ファイルやフォルダの数に比例して増加するPCからのコマンドの数も制限され、PTP通信が開始されてからPCにファイルの一覧が表示されるまでの時間も一定の時間に制限でき、使用者は快適にPCでの操作を開始できる。
【００２５】
請求項２に記載の発明によれば、
請求項１に記載の発明による効果に加えて、
カメラ内の一部のファイルのIDをPCに通知した場合でも、使用者はPC上に表示されるファイルの一覧がカメラ内の一部のファイルであることを認識できるため、使用者はPC上に表示されている全てのファイル（≠カメラ内の全てのファイル）をPCにコピーしたのち、カメラ内の全てのファイルをPCにコピーしたと誤解してしまうような事態が避けられるので、カメラ内のPCにコピーしていないファイルを誤って消してしまうことを防止できる。
【００２６】
請求項３に記載の発明によれば、
例えば、請求項１に記載の発明による効果に加えて、
PCに通知していないファイルのIDを通知するように切替えることができるので、カメラ内にどれほど大量のオブジェクトが記録されていても、全てのファイルをPCに表示させることができ、使用者はカメラ内の全てのファイルをPC上で閲覧できる。
【００２７】
請求項４に記載の発明によれば、
請求項１に記載の発明による効果、又は請求項２に記載の発明による効果、又は請求項３に記載の発明による効果に加えて、
カメラに大量のオブジェクトが記録されていても、オブジェクトの総数と比較する“所定の数”を任意の数に変更できるので、例えば、“所定の数”と同数以下のオブジェクトのIDだけをPCに通知した場合、使用者は、PCに表示されるファイルの一覧の最大数を任意の数以下に制限でき、ファイルの特定を容易に行うことができる。
【図面の簡単な説明】
【００２８】
【図１】実施例１おける、機能ブロック図
【図２】実施例１における、フローチャート
【図３】実施例１における、記録媒体のオブジェクトの構成
【図４】実施例１における、PCに通知したオブジェクトの構成
【図５】実施例２における、機能ブロック図
【図６】実施例２における、フローチャート
【図７】実施例２における、表示画面
【図８】実施例３における、機能ブロック図
【図９】実施例３における、フローチャート
【図１０】実施例３における、表示画面１
【図１１】実施例３における、表示画面２
【図１２】実施例４における、機能ブロック図
【図１３】実施例４における、フローチャート
【発明を実施するための形態】
【００２９】
本発明を実施するための最良の形態として、通信装置とPCがPTPによって通信するシステムを例にして、実施例１、２、３，４を説明する。
【００３０】
PTPは、USB等の汎用インターフェース上で動作するものとする。
【００３１】
但し、本発明のインターフェース、及び通信プロトコル等は、本実施の形態に限定されるものではない。
【００３２】
また、汎用インターフェースは、有線に限定されるものではなく、例えばブルーツース等の無線通信インターフェースでも良い。
【実施例１】
【００３３】
以下に、請求項1に記載の発明を実施するための最良の形態を、以下の仕様であることを例にして、添付図面を用いて説明する。
【００３４】
・請求項１に記載の“所定の数”は、100とする。
【００３５】
・請求項１において、比較手段の結果、外部装置に通知するIDの数は、ファイルやフォルダの総数、又は100とする。
【００３６】
図１は、本実施例の通信装置とPCによって構成される機能ブロック図である。
【００３７】
PTP通信可能な通信装置U101と、PTP通信可能なコンピュータ（以下、PC）U102とが、汎用インターフェース（例えばUSB）を介して接続されている。
【００３８】
通信装置U101とPC U102は、お互いの接続を検出するとPTP通信を開始する。
【００３９】
通信装置U101の内部の機能ブロックを以下に説明する。
【００４０】
CPU（Central Processing Unit）B111は、通信装置全体を制御するプロセッサである。
【００４１】
ROM（Read Only Memory）B112には、CPU B111が動作するためのプログラムが格納されており、CPU B111からプログラムの読み出しが可能なように、CPU B111と結線されている。
【００４２】
RAM（Random Access Memory）B113は、CPU B111がデータを一時的に記憶するために使用するメモリであり、CPU B111からデータの読み書きが可能なように結線されている。
【００４３】
記録媒体B114は、デジタル画像ファイル等が記録されている読み出し専用、或いは読み書き可能な記録媒体（例えばメモリーカード等）であり、CPU B111から記録されているファイルやフォルダを読み出すことが可能なように、CPU B111と結線されている。また、記録媒体B114は、通信装置U101に対して着脱可能であっても良い。
【００４４】
通信処理部B115は、PTPプロトコルでデータを送受信できる通信処理部であり、送受信用の通信バッファ（例えばFIFO）を内部に備え、CPU B211を介して、受信データを通信バッファからRAM B213に書き込んだり、RAM B213に生成した送信データを通信バッファに書き込めるように、CPU B211と結線されている。なお、通信処理部B115は、通信装置U101に対して着脱可能であっても良い。
【００４５】
図２は、通信装置U101におけるCPU B111の処理フローチャートを表している。
【００４６】
S121で通信を開始するとS122に移行して、CPU B111は記録媒体B114に記録されているオブジェクトの数をカウントする。S123でオブジェクトの数が100以下かどうかを判定して、オブジェクトの総数が100以下であればS124へ移行する。S124では、全てのオブジェクトに対して異なるIDを生成する。一方、オブジェクトの総数が100を超える場合は、100個のオブジェクトに対してだけ異なるIDを生成する。何れの場合もS126へ移行し、PC U102からの要求に応じて、通信処理部B115から決定したIDを送信する。
【００４７】
オブジェクトのIDは、通信中において変化せず、且つ重複しなければ、生成方法は問わない。つまり、通信する毎に変化しても良いし、個々のオブジェクトの情報から一意に生成される固定値であっても良い。
【００４８】
本実施例にとって、オブジェクトのIDの生成方法や値自体は関係しないため、上記ルールに則って生成されるものとして説明を続ける。
【００４９】
図３は、通信装置U101における記録媒体B114に記録されているオブジェクトを例として示す。
【００５０】
以下、この例において本実施例の説明を行う。
【００５１】
記録媒体B114のRootディレクトリ以下にはファイルとフォルダが全部で161個記録されており、Rootディレクトリの直下には、DCIMフォルダだけが記録されている。
【００５２】
DCIMフォルダ直下には、001IMAGE、002IMAGE、003IMAGEの3つのフォルダが記録されており、各フォルダには画像ファイルがそれぞれ、52、84、21個記録されている。なお、“IMG_****.JPG”の****部分は、各フォルダ内において個々に異なる4桁の整数である。
【００５３】
ここで、図２のフローチャートが処理されたとすると、S122でオブジェクトの総数が161となるので、S123で100を超えると判定され、S125に遷移する。S125で、例として図４に示す100個のオブジェクトに対して異なるIDを生成し、S126でこのIDをPCに通知したとすると、PC U102は、通信装置U101の記録媒体B114には、図４のオブジェクトだけが記録されていると認識する。
【００５４】
図２のフローチャートのS122で、オブジェクトの数をカウントするとしたが、カウントするオブジェクトは、ファイルとフォルダの総数でも、ファイルだけの総数でも構わない。
【００５５】
図２のフローチャートのS123で、オブジェクトの総数と比較する数を100としたが、自然数（1以上の整数）であれば、幾つでも構わない。
【００５６】
図２のフローチャートのS126で送信するIDの数は、オブジェクトの総数以下であれば、比較した数（本実施例での100）と異なる数でも構わない。
【００５７】
図２のフローチャートのS126で送信するIDのオブジェクトは、図４と異なるフォルダやファイルでも構わない。
【００５８】
何れの場合においても、個々のオブジェクトとフォルダとの親子関係は、記録媒体に記録されているとおりに、正しく通知しなければならない。
【００５９】
図２のフローチャートにおいて、オブジェクトの総数のカウント終了後に、“所定の数”（100）との比較を行う例を記載したが、オブジェクトの総数のカウント終了前に、“所定の数”（100）との比較を行っても良い。（例えば、オブジェクトを１ずつカウントする度に、“所定の数”（100）と比較する等）
【実施例２】
【００６０】
以下に、請求項２に記載の発明を実施するための最良の形態を、添付図面を用いて説明する。
【００６１】
図５は、本実施例の通信装置とPCによって構成される機能ブロック図である。
【００６２】
図５におけるU201〜U202とB211〜B215は、それぞれ、実施例１の図１におけるU101〜U102とB111〜B115に相当するため、説明は省略する。
【００６３】
表示部B216は、通信装置に備えられた液晶画面を表し、通信装置U201の動作状態を使用者に通知する。
【００６４】
図６は、通信装置U201におけるCPU B211の処理フローチャートを表している。
【００６５】
図６におけるS221〜S227は、それぞれ、実施例１の図２におけるS121〜127に相当するため、説明は省略する。
【００６６】
S225で100個のオブジェクトに対してだけ異なるIDを生成した場合、S226で図５における表示部B216に図７の画面を表示する。
【００６７】
本実施例においても、実施例１の図２に関する但し書きや、例外事項は同様に適用される。
【００６８】
また、実施例１の図３、図４の例、及び例外事項も同様に適用される。
【実施例３】
【００６９】
以下に、請求項３に記載の発明を実施するための最良の形態を、添付図面を用いて説明する。
【００７０】
図８は、本実施例の通信装置とPCによって構成される機能ブロック図である。
【００７１】
図８におけるU301〜U302とB311〜B315は、それぞれ、実施例１の図１におけるU101〜U102とB111〜B115に相当するため、説明は省略する。また、B316は、実施例２の図５におけるB216に相当するため、説明は省略する。
【００７２】
操作キーB317は、通信装置に備えられているボタンを表す。
【００７３】
本実施例において、図８の通信装置U301のCPU B311は、実施例２における図６と同様の処理フローチャートを実行する。
【００７４】
ここでは、本実施例の図８の記録媒体B314が、実施例１の図３の状態であったと仮定して、PCに通知したIDが同じく図４の状態で、且つ図１０の画面が表示されていることを前提にして説明する。
【００７５】
図９は、PCに通知するIDを切替える処理のフローチャートを表している。
【００７６】
S301は、図１０が表示されている状態で、操作キーによって“次のページ”ボタンが押されたことをきっかけに処理される。その後、S302でPCに通知しているDCIMフォルダ以下の全てのオブジェクトのIDについて、PTPイベント「ObjectRemoved」をPCに送信する。このイベントにより、通信装置内のオブジェクトがなくなったことをPCは認識する。その後、S303でIDを通知していないオブジェクトの数をカウントする。S304でオブジェクトの数が100以下かどうかを判定して、オブジェクトの総数が100以下であればS305へ移行する。S305では、全てのオブジェクトに対して異なるIDを生成する。一方、オブジェクトの総数が100を超える場合は、S306で100個のオブジェクトに対してだけ異なるIDを生成する。何れの場合もS307で表示部に画面を表示する。図１１の画面は、S305が処理された場合を例にしている。その後、PCに対して「ObjectAdded」を送信する。これにより、PCは通信装置内のオブジェクトが追加されたことを認識する。S309でPC U302からの要求コマンドに応じて、生成したIDを送信する。
【００７７】
本実施例においても、実施例１の図２に関する但し書きや、例外事項は同様に適用される。
【００７８】
また、実施例１の図３、図４の例、及び例外事項も同様に適用される。
【実施例４】
【００７９】
以下に、請求項４に記載の発明を実施するための最良の形態を、添付図面を用いて説明する。
【００８０】
図１２は、本実施例の通信装置とPCによって構成される機能ブロック図である。
【００８１】
ここで、U401〜U402とB411〜B415は、それぞれ、実施例１の図１におけるU101〜U102とB111〜B115に相当するため、説明は省略する。
【００８２】
操作キーB416は、通信装置に備えられているボタンを表す。
【００８３】
本実施例において、図１２の通信装置U401のCPU B411は、実施例１における図２と同様の処理フローチャートを実行する。
【００８４】
ここでは、操作キーB416を使用して、比較数を設定する場合のCPU 411の処理フローチャートを、図１３に示す。
【００８５】
S421で比較数設定の処理が開始される。S422にて、操作キーB416の入力を検出して、入力された比較数をS423で記憶する。
【００８６】
本実施例において、記憶した比較数を実施例１の図２のS123に相当する処理フローチャートにて、カウントしたオブジェクトとの比較に使用する。
【００８７】
図２の処理フローチャートのS123に相当する本実施例での処理フローチャートでは、オブジェクトの総数と比較する数を、図１３の処理フローチャートで記憶した比較数を用いる。但し、未設定の場合は、所定の数（実施例１における100）を用いる。
【図１】
2011044069.tif 000003
【図２】
2011044069.tif 000004
【図３】
2011044069.tif 000005
【図４】
2011044069.tif 000006
【図５】
2011044069.tif 000007
【図６】
2011044069.tif 000008
【図７】
2011044069.tif 000009
【図８】
2011044069.tif 000010
【図９】
2011044069.tif 000011
【図１０】
2011044069.tif 000012
【図１１】
2011044069.tif 000013
【図１２】
2011044069.tif 000014
【図１３】
2011044069.tif 000015