説明

通信装置

【課題】 大量の画像が記録されていると、PCから発行されるコマンド数が増加するので、一覧が表示されるまでの時間が長くなり、ユーザーは待たされることになる。
【解決手段】 大量の画像が記録されている場合、全画像を所定の数以下に区切って、部分的にPCに通知すると共に、PC上に表示される画像が全体の一部であることをユーザに通知する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デジタルカメラ等で撮影されたデジタル画像ファイルを、コンピュータ(以下、PC)等の外部装置に送信することが可能な通信装置に関する。
【背景技術】
【0002】
カメラ等で撮影したデジタル画像ファイルをPCに転送する通信プロトコルとして、例えばPTP(Picture Transfer Protocol)が、2000年にPIMA(Photographic And Imaging Manufactures Association,Inc.)から規格化されている(PIMA15740:2000)。
【0003】
PTPでは、個々のファイルやフォルダ(以下、オブジェクト)毎に異なる4バイトのオブジェクトハンドル(以下、ID)を自由に割り振るよう規定されており、PCとPTP通信を行うカメラ等の通信装置(以下、カメラ)が割り振ったIDをPCに通知すると、PCはカメラ内のオブジェクトの存在を認識し、ファイルだけの一覧を表示する。
【0004】
PTPはマスストレージとは異なり、PCはIDを使用することでカメラ内のファイルシステムを意識せずにアクセスでき、使用者はファイルとフォルダの関係から開放されるという利点がある。
【0005】
PTPに関係する技術として、下記2つの技術が開示されている。
【0006】
特開2006-86862(特許文献1)では、ファイルエントリをキャッシュし、キャッシュした情報から通信データを生成して送信する技術が開示されている。
【0007】
特開2006-40097(特許文献2)では、記録媒体のオブジェクトの絶対パスと、4バイトで構成されるファイルやフォルダのIDを、特定のルールに従って対応付ける技術が開示されている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2006−86862号公報
【特許文献2】特開2006−40097号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
近年、画像の記録に使用するメモリーカード等の記録媒体は年々大容量化しており、カメラ等に搭載される記録媒体に数百、数千を超える画像が記録されることもある。
【0010】
PTP通信を開始すると、PCはファイルの一覧を表示するために、全てのオブジェクトのIDと属性情報を要求するコマンドを発行する。
【0011】
オブジェクトの数に比例してPCから発行されるコマンド数は増加するので、オブジェクトの数が多いとファイルの一覧が表示されるまでの時間が長くなり、使用者は待たされることになる。
【0012】
また、大量のファイルがPC上に表示されると、使用者にとって、任意のファイルを探し出すことが容易ではなくなってしまう。
【0013】
PTPのようなIDを用いてオブジェクトを特定する通信プロトコルでは、通信中、オブジェクトとIDの1対1の関係は不変であることが求められる。
【0014】
そのため、カメラは、オブジェクトとIDの関係を管理するために、オブジェクトとIDの対応テーブルをRAM上に構築するかもしれない。
【0015】
或いは、カメラは使用者の待ち時間を短縮するため、特開2006-86862において開示される技術を用いて、記録されているファイルエントリをキャッシュし、キャッシュした情報から通信データを生成して送信するするかもしれない。
【0016】
しかしながら、オブジェクトが増加すると、全てのオブジェクトのIDやファイルエントリを、カメラ内の有限のRAMやキャッシュに収めることができない場合も発生し得る。
【0017】
この場合、例えばカメラ内の一部のオブジェクトに限定して通信すると、PC上にはカメラ内の一部のファイルだけが表示されるが、使用者はカメラ内の一部のファイルであることを認識することができないため、使用者はPC上に表示される全てのファイルをPCにコピーしたのち、カメラ内の全てのファイルをPCにコピーしたと思って、PCにコピーしていないカメラ内のファイルを消してしまうかもしれない。
【0018】
或いは、そのような誤消去を避けるため、例えばオブジェクトが多い場合には通信をしない、或いは通信を終了すると、使用者はカメラ本体、或いは市販のカードリーダー/ライター等を使用するなどしてファイルの数を減らさなければ、PCと通信できないことになる。
【0019】
更に、例えばオブジェクトが多い場合は特開2006-40097において開示されるようにテーブルを作成せず、PCからのデータ要求に応じて全てのオブジェクトのIDを通知してしまうと、オブジェクトの数に比例してコマンド数が増加してしまい、使用者の待ち時間が増える等、PCの操作感が著しく低下してしまう。
【課題を解決するための手段】
【0020】
請求項1に記載の発明は、
個々のファイルやフォルダを特定可能なIDを用いて外部装置と通信を行う通信装置において、
外部装置に通知するIDの数を計上する、計上手段と、
計上手段の結果と所定の数とを比較する、比較手段を備え、
比較手段の結果によって、外部装置に通知するIDの数を、ファイルやフォルダの総数以下で可変させることを特徴とする。
【0021】
請求項2に記載の発明は、
請求項1に記載の通信装置において、
表示手段を備え、
一部のファイルやフォルダのIDを外部装置に通知した場合、一部のファイルやフォルダのIDを外部装置に通知したことを表示手段に表示することを特長する。
【0022】
請求項3に記載の発明は、
請求項1に記載の通信装置において、
外部装置へ通知するIDを切替える、ID切替手段を備え、
ID切替手段によって外部装置へ通知するIDを切替えた場合、外部装置に通知してないIDの内、少なくとも1つ以上を外部装置に通知することを特長する。
【0023】
請求項4に記載の発明は、
請求項1、又は請求項2、又は請求項3に記載の通信装置において、
比較手段で比較する所定の数を任意の数に設定する、比較数設定手段を備え、
比較手段において比較する数を、比較数設定手段によって設定された数に変更することを特徴とする。
【発明の効果】
【0024】
請求項1に記載の発明によれば、
例えば、“所定の数”を100、オブジェクトの総数が100よりも多い場合に外部装置に通知するIDの数を“所定の数”と同数の100とした場合、カメラにどれほど大量のオブジェクトが記録されていても、PCに通知するIDの数が100以下に制限されるので、ファイルやフォルダの数に比例して増加するPCからのコマンドの数も制限され、PTP通信が開始されてからPCにファイルの一覧が表示されるまでの時間も一定の時間に制限でき、使用者は快適にPCでの操作を開始できる。
【0025】
請求項2に記載の発明によれば、
請求項1に記載の発明による効果に加えて、
カメラ内の一部のファイルのIDをPCに通知した場合でも、使用者はPC上に表示されるファイルの一覧がカメラ内の一部のファイルであることを認識できるため、使用者はPC上に表示されている全てのファイル(≠カメラ内の全てのファイル)をPCにコピーしたのち、カメラ内の全てのファイルをPCにコピーしたと誤解してしまうような事態が避けられるので、カメラ内のPCにコピーしていないファイルを誤って消してしまうことを防止できる。
【0026】
請求項3に記載の発明によれば、
例えば、請求項1に記載の発明による効果に加えて、
PCに通知していないファイルのIDを通知するように切替えることができるので、カメラ内にどれほど大量のオブジェクトが記録されていても、全てのファイルをPCに表示させることができ、使用者はカメラ内の全てのファイルをPC上で閲覧できる。
【0027】
請求項4に記載の発明によれば、
請求項1に記載の発明による効果、又は請求項2に記載の発明による効果、又は請求項3に記載の発明による効果に加えて、
カメラに大量のオブジェクトが記録されていても、オブジェクトの総数と比較する“所定の数”を任意の数に変更できるので、例えば、“所定の数”と同数以下のオブジェクトのIDだけをPCに通知した場合、使用者は、PCに表示されるファイルの一覧の最大数を任意の数以下に制限でき、ファイルの特定を容易に行うことができる。
【図面の簡単な説明】
【0028】
【図1】実施例1おける、機能ブロック図
【図2】実施例1における、フローチャート
【図3】実施例1における、記録媒体のオブジェクトの構成
【図4】実施例1における、PCに通知したオブジェクトの構成
【図5】実施例2における、機能ブロック図
【図6】実施例2における、フローチャート
【図7】実施例2における、表示画面
【図8】実施例3における、機能ブロック図
【図9】実施例3における、フローチャート
【図10】実施例3における、表示画面1
【図11】実施例3における、表示画面2
【図12】実施例4における、機能ブロック図
【図13】実施例4における、フローチャート
【発明を実施するための形態】
【0029】
本発明を実施するための最良の形態として、通信装置とPCがPTPによって通信するシステムを例にして、実施例1、2、3,4を説明する。
【0030】
PTPは、USB等の汎用インターフェース上で動作するものとする。
【0031】
但し、本発明のインターフェース、及び通信プロトコル等は、本実施の形態に限定されるものではない。
【0032】
また、汎用インターフェースは、有線に限定されるものではなく、例えばブルーツース等の無線通信インターフェースでも良い。
【実施例1】
【0033】
以下に、請求項1に記載の発明を実施するための最良の形態を、以下の仕様であることを例にして、添付図面を用いて説明する。
【0034】
・請求項1に記載の“所定の数”は、100とする。
【0035】
・請求項1において、比較手段の結果、外部装置に通知するIDの数は、ファイルやフォルダの総数、又は100とする。
【0036】
図1は、本実施例の通信装置とPCによって構成される機能ブロック図である。
【0037】
PTP通信可能な通信装置U101と、PTP通信可能なコンピュータ(以下、PC)U102とが、汎用インターフェース(例えばUSB)を介して接続されている。
【0038】
通信装置U101とPC U102は、お互いの接続を検出するとPTP通信を開始する。
【0039】
通信装置U101の内部の機能ブロックを以下に説明する。
【0040】
CPU(Central Processing Unit)B111は、通信装置全体を制御するプロセッサである。
【0041】
ROM(Read Only Memory)B112には、CPU B111が動作するためのプログラムが格納されており、CPU B111からプログラムの読み出しが可能なように、CPU B111と結線されている。
【0042】
RAM(Random Access Memory)B113は、CPU B111がデータを一時的に記憶するために使用するメモリであり、CPU B111からデータの読み書きが可能なように結線されている。
【0043】
記録媒体B114は、デジタル画像ファイル等が記録されている読み出し専用、或いは読み書き可能な記録媒体(例えばメモリーカード等)であり、CPU B111から記録されているファイルやフォルダを読み出すことが可能なように、CPU B111と結線されている。また、記録媒体B114は、通信装置U101に対して着脱可能であっても良い。
【0044】
通信処理部B115は、PTPプロトコルでデータを送受信できる通信処理部であり、送受信用の通信バッファ(例えばFIFO)を内部に備え、CPU B211を介して、受信データを通信バッファからRAM B213に書き込んだり、RAM B213に生成した送信データを通信バッファに書き込めるように、CPU B211と結線されている。なお、通信処理部B115は、通信装置U101に対して着脱可能であっても良い。
【0045】
図2は、通信装置U101におけるCPU B111の処理フローチャートを表している。
【0046】
S121で通信を開始するとS122に移行して、CPU B111は記録媒体B114に記録されているオブジェクトの数をカウントする。S123でオブジェクトの数が100以下かどうかを判定して、オブジェクトの総数が100以下であればS124へ移行する。S124では、全てのオブジェクトに対して異なるIDを生成する。一方、オブジェクトの総数が100を超える場合は、100個のオブジェクトに対してだけ異なるIDを生成する。何れの場合もS126へ移行し、PC U102からの要求に応じて、通信処理部B115から決定したIDを送信する。
【0047】
オブジェクトのIDは、通信中において変化せず、且つ重複しなければ、生成方法は問わない。つまり、通信する毎に変化しても良いし、個々のオブジェクトの情報から一意に生成される固定値であっても良い。
【0048】
本実施例にとって、オブジェクトのIDの生成方法や値自体は関係しないため、上記ルールに則って生成されるものとして説明を続ける。
【0049】
図3は、通信装置U101における記録媒体B114に記録されているオブジェクトを例として示す。
【0050】
以下、この例において本実施例の説明を行う。
【0051】
記録媒体B114のRootディレクトリ以下にはファイルとフォルダが全部で161個記録されており、Rootディレクトリの直下には、DCIMフォルダだけが記録されている。
【0052】
DCIMフォルダ直下には、001IMAGE、002IMAGE、003IMAGEの3つのフォルダが記録されており、各フォルダには画像ファイルがそれぞれ、52、84、21個記録されている。なお、“IMG_****.JPG”の****部分は、各フォルダ内において個々に異なる4桁の整数である。
【0053】
ここで、図2のフローチャートが処理されたとすると、S122でオブジェクトの総数が161となるので、S123で100を超えると判定され、S125に遷移する。S125で、例として図4に示す100個のオブジェクトに対して異なるIDを生成し、S126でこのIDをPCに通知したとすると、PC U102は、通信装置U101の記録媒体B114には、図4のオブジェクトだけが記録されていると認識する。
【0054】
図2のフローチャートのS122で、オブジェクトの数をカウントするとしたが、カウントするオブジェクトは、ファイルとフォルダの総数でも、ファイルだけの総数でも構わない。
【0055】
図2のフローチャートのS123で、オブジェクトの総数と比較する数を100としたが、自然数(1以上の整数)であれば、幾つでも構わない。
【0056】
図2のフローチャートのS126で送信するIDの数は、オブジェクトの総数以下であれば、比較した数(本実施例での100)と異なる数でも構わない。
【0057】
図2のフローチャートのS126で送信するIDのオブジェクトは、図4と異なるフォルダやファイルでも構わない。
【0058】
何れの場合においても、個々のオブジェクトとフォルダとの親子関係は、記録媒体に記録されているとおりに、正しく通知しなければならない。
【0059】
図2のフローチャートにおいて、オブジェクトの総数のカウント終了後に、“所定の数”(100)との比較を行う例を記載したが、オブジェクトの総数のカウント終了前に、“所定の数”(100)との比較を行っても良い。(例えば、オブジェクトを1ずつカウントする度に、“所定の数”(100)と比較する等)
【実施例2】
【0060】
以下に、請求項2に記載の発明を実施するための最良の形態を、添付図面を用いて説明する。
【0061】
図5は、本実施例の通信装置とPCによって構成される機能ブロック図である。
【0062】
図5におけるU201〜U202とB211〜B215は、それぞれ、実施例1の図1におけるU101〜U102とB111〜B115に相当するため、説明は省略する。
【0063】
表示部B216は、通信装置に備えられた液晶画面を表し、通信装置U201の動作状態を使用者に通知する。
【0064】
図6は、通信装置U201におけるCPU B211の処理フローチャートを表している。
【0065】
図6におけるS221〜S227は、それぞれ、実施例1の図2におけるS121〜127に相当するため、説明は省略する。
【0066】
S225で100個のオブジェクトに対してだけ異なるIDを生成した場合、S226で図5における表示部B216に図7の画面を表示する。
【0067】
本実施例においても、実施例1の図2に関する但し書きや、例外事項は同様に適用される。
【0068】
また、実施例1の図3、図4の例、及び例外事項も同様に適用される。
【実施例3】
【0069】
以下に、請求項3に記載の発明を実施するための最良の形態を、添付図面を用いて説明する。
【0070】
図8は、本実施例の通信装置とPCによって構成される機能ブロック図である。
【0071】
図8におけるU301〜U302とB311〜B315は、それぞれ、実施例1の図1におけるU101〜U102とB111〜B115に相当するため、説明は省略する。また、B316は、実施例2の図5におけるB216に相当するため、説明は省略する。
【0072】
操作キーB317は、通信装置に備えられているボタンを表す。
【0073】
本実施例において、図8の通信装置U301のCPU B311は、実施例2における図6と同様の処理フローチャートを実行する。
【0074】
ここでは、本実施例の図8の記録媒体B314が、実施例1の図3の状態であったと仮定して、PCに通知したIDが同じく図4の状態で、且つ図10の画面が表示されていることを前提にして説明する。
【0075】
図9は、PCに通知するIDを切替える処理のフローチャートを表している。
【0076】
S301は、図10が表示されている状態で、操作キーによって“次のページ”ボタンが押されたことをきっかけに処理される。その後、S302でPCに通知しているDCIMフォルダ以下の全てのオブジェクトのIDについて、PTPイベント「ObjectRemoved」をPCに送信する。このイベントにより、通信装置内のオブジェクトがなくなったことをPCは認識する。その後、S303でIDを通知していないオブジェクトの数をカウントする。S304でオブジェクトの数が100以下かどうかを判定して、オブジェクトの総数が100以下であればS305へ移行する。S305では、全てのオブジェクトに対して異なるIDを生成する。一方、オブジェクトの総数が100を超える場合は、S306で100個のオブジェクトに対してだけ異なるIDを生成する。何れの場合もS307で表示部に画面を表示する。図11の画面は、S305が処理された場合を例にしている。その後、PCに対して「ObjectAdded」を送信する。これにより、PCは通信装置内のオブジェクトが追加されたことを認識する。S309でPC U302からの要求コマンドに応じて、生成したIDを送信する。
【0077】
本実施例においても、実施例1の図2に関する但し書きや、例外事項は同様に適用される。
【0078】
また、実施例1の図3、図4の例、及び例外事項も同様に適用される。
【実施例4】
【0079】
以下に、請求項4に記載の発明を実施するための最良の形態を、添付図面を用いて説明する。
【0080】
図12は、本実施例の通信装置とPCによって構成される機能ブロック図である。
【0081】
ここで、U401〜U402とB411〜B415は、それぞれ、実施例1の図1におけるU101〜U102とB111〜B115に相当するため、説明は省略する。
【0082】
操作キーB416は、通信装置に備えられているボタンを表す。
【0083】
本実施例において、図12の通信装置U401のCPU B411は、実施例1における図2と同様の処理フローチャートを実行する。
【0084】
ここでは、操作キーB416を使用して、比較数を設定する場合のCPU 411の処理フローチャートを、図13に示す。
【0085】
S421で比較数設定の処理が開始される。S422にて、操作キーB416の入力を検出して、入力された比較数をS423で記憶する。
【0086】
本実施例において、記憶した比較数を実施例1の図2のS123に相当する処理フローチャートにて、カウントしたオブジェクトとの比較に使用する。
【0087】
図2の処理フローチャートのS123に相当する本実施例での処理フローチャートでは、オブジェクトの総数と比較する数を、図13の処理フローチャートで記憶した比較数を用いる。但し、未設定の場合は、所定の数(実施例1における100)を用いる。

【特許請求の範囲】
【請求項1】
個々のファイルやフォルダを特定可能なIDを用いて外部装置と通信を行う通信装置において、
外部装置に通知するIDの数を計上する、計上手段と、
計上手段の結果と所定の数とを比較する、比較手段を備え、
比較手段の結果によって、外部装置に通知するIDの数を、ファイルやフォルダの総数以下で可変させることを特徴とする通信装置。
【請求項2】
請求項1に記載の通信装置において、
表示手段を備え、
一部のファイルやフォルダのIDを外部装置に通知した場合、一部のファイルやフォルダのIDを外部装置に通知したことを表示手段に表示することを特徴とする通信装置。
【請求項3】
請求項1に記載の通信装置において、
外部装置へ通知するIDを切替える、ID切替手段を備え、
ID切替手段によって外部装置へ通知するIDを切替えた場合、外部装置に通知していないIDの内、少なくとも1つ以上を外部装置に通知することを特徴とする通信装置。
【請求項4】
請求項1、又は請求項2、又は請求項3に記載の通信装置において、
比較手段で比較する所定の数を任意の数に設定する、比較数設定手段を備え、
比較手段において比較する数を、比較数設定手段によって設定された数に変更することを特徴とする通信装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2011−44069(P2011−44069A)
【公開日】平成23年3月3日(2011.3.3)
【国際特許分類】
【出願番号】特願2009−192959(P2009−192959)
【出願日】平成21年8月24日(2009.8.24)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】