JP5395550B2 - 撮像装置、情報処理装置、データ通信方法、プログラム - Google Patents

撮像装置、情報処理装置、データ通信方法、プログラム Download PDF

Info

Publication number
JP5395550B2
JP5395550B2 JP2009170615A JP2009170615A JP5395550B2 JP 5395550 B2 JP5395550 B2 JP 5395550B2 JP 2009170615 A JP2009170615 A JP 2009170615A JP 2009170615 A JP2009170615 A JP 2009170615A JP 5395550 B2 JP5395550 B2 JP 5395550B2
Authority
JP
Japan
Prior art keywords
file
image file
predetermined
communication
image
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.)
Expired - Fee Related
Application number
JP2009170615A
Other languages
English (en)
Other versions
JP2011029733A (ja
Inventor
健一郎 原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2009170615A priority Critical patent/JP5395550B2/ja
Publication of JP2011029733A publication Critical patent/JP2011029733A/ja
Application granted granted Critical
Publication of JP5395550B2 publication Critical patent/JP5395550B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Studio Devices (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Communication Control (AREA)

Description

本発明は、撮像装置と情報処理装置との間のデータ通信技術に関する。
近年、デジタルカメラの撮影能力向上、記憶媒体の容量増大、情報処理装置の記憶容量増大に伴い、デジタルカメラにより撮影された画像データ、特に動画の記憶可能なファイルサイズが飛躍的に向上している。ところが、デジタルカメラの通信プロトコルの1つであるPTP(Picture Transfer Protocol)は、最大のファイルサイズが4GBまでという制限があるため、標準通信では4GB以上のファイルを転送することができない。現在多くのユーザに利用されているWindows(登録商標)やMac OS(登録商標)、Linux等に実装されているデバイスドライバは、このPTPに準拠しているため、ファイルサイズの制約から4GB以上のファイルを取り扱うことができない。ベンダが専用のドライバを開発するか、OSが拡張仕様のドライバを作成すれば解決できる可能性もあるが、容易な回避策とはいえないため現状では有効な解決手段とはなっていない。
上記課題を回避するため、デジタルカメラの仕様を4GB以上の画像を撮影できない仕様にすることが考えられる。このような仕様のデジタルカメラは、カメラで動画撮影を行っているときに、ファイルサイズが4GBを超えた段階で、1つのファイルを生成し、撮影を継続しながら4GBを超えるたびに順次ファイルを生成していく。このような仕様のカメラでは、動画撮影の途中でファイルを生成するための処理や、動画再生時に個々のファイルをシームレスに再生するための設計等、複数のファイルの取り扱いが困難となる。ここで、特許文献1には、個々のオブジェクトについて、論理フォルダ階層における少なくとも親オブジェクトを特定する情報を含むオブジェクト情報を生成し、PTPオブジェクトを管理する方法が記載されている。
特開2006−087050号公報
しかしながら、特許文献1では、1つのファイルを1つのオブジェクトとして割り当てているにすぎないので、例えば4GB以上のファイルにオブジェクトを割り当てることはできない。
本発明は、上記課題に鑑みてなされ、通信プロトコルで制限されたファイルサイズを超えるサイズのファイルであっても、オブジェクトとしてデータ転送することができる技術を実現する。
上記課題を解決するために、本発明の撮像装置は、転送可能なファイルサイズが所定のファイルサイズ未満に制限されている所定の通信プロトコルに準拠した通信インターフェースを介して情報処理装置と接続される撮像装置であって、画像ファイルを記憶する記憶手段と、前記通信インターフェースを介して前記情報処理装置と通信するための通信手段と、前記通信手段を介して前記情報処理装置から画像ファイルをオブジェクトとして指定した要求を受信した場合、当該指定されたオブジェクトに対応する前記記憶手段に記憶された画像ファイルを検索する検索手段と、前記検索手段により検索されたオブジェクトに対応する画像ファイルが前記所定のファイルサイズ以上であるか否かを判定する判定手段と、前記判定手段により前記指定されたオブジェクトに対応する画像ファイルが前記所定のファイルサイズ以上であると判定された場合、当該画像ファイルを分割して生成された各オブジェクトが前記所定のファイルサイズ未満となるように、当該画像ファイルを複数のオブジェクトに分割する制御手段と、を有し、前記制御手段は、前記判定手段により前記指定されたオブジェクトに対応する画像ファイルが前記所定のファイルサイズ以上であると判定された場合、前記指定されたオブジェクトに対応する画像ファイルの属性情報を用いて当該画像ファイルを前記情報処理装置で再生可能なデータ形式で前記情報処理装置へ送信し、前記属性情報は、各オブジェクトとファイルとの関連性、各オブジェクトのファイルの開始アドレスおよびファイルサイズ、分割する順序に関する情報を含む
また、本発明の情報処理装置は、転送可能なファイルサイズが所定のファイルサイズ未満に制限されている所定の通信プロトコルに準拠した通信インターフェースを介して撮像装置と接続される情報処理装置であって、前記通信インターフェースを介して前記撮像装置と通信するための通信手段と、前記通信手段を介して前記撮像装置へ所定の画像ファイルをオブジェクトとして指定した要求を送信する送信手段と、前記撮像装置から受信した画像ファイルの属性情報を解析する解析手段と、前記解析手段による解析の結果を用いて、1つにグループ化可能な複数のオブジェクトを検索し、検索の結果得られた複数のオブジェクトのうち前記属性情報を除いたデータ部分のみをグループ化するグループ化手段と、を有し、前記属性情報は、各オブジェクトとファイルとの関連性、各オブジェクトのファイルの開始アドレスおよびファイルサイズ、分割する順序に関する情報を含む
本発明によれば、通信プロトコルで制限されたファイルサイズを超えるサイズのファイルであっても、オブジェクトとしてデータ転送することができる。
本実施形態のデータ通信システムのシステム構成と、システムを構成するデジタルカメラとPCのモジュール構成図である。 図1のデジタルカメラとPCの機能ブロック図である。 PTPオブジェクトハンドルの割り当て構成を例示する図である。 PTPオブジェクトハンドルの割り当て処理を示すフローチャートである。 ファイル検索処理を示すフローチャートである。 複数のPTPオブジェクトのグループ化処理を示すフローチャートである。 図6の例外処理を説明する図である。 ベンダ拡張通信により一度にデータ取得するシーケンスを例示する図である。 複数のPTPオブジェクトを1つにグループ化するシーケンスを例示する図である。 PCからカメラへファイルを追記するシーケンスを例示する図である。
以下に、添付図面を参照して本発明を実施するための最良の形態について詳細に説明する。尚、以下に説明する実施の形態は、本発明を実現するための一例であり、本発明が適用される装置の構成や各種条件によって適宜修正又は変更されるべきものであり、本発明は以下の実施の形態に限定されるものではない。
[システム構成]図1は、本発明に係る実施形態のデータ通信システムの構成図である。本実施形態では、撮像装置としてのデジタルカメラ100と情報処理装置としてのコンピュータ(以下、PC)101とが通信インターフェース102を介して通信可能に接続され、PTP規格に準拠した通信を行う。デジタルカメラ(以下、カメラ)100は、通信インターフェース102を介してPC101が接続されたことを検知すると、再生モードから通信モードに移行する。PC101には、PTP規格に準拠してカメラ100に対して、画像ファイルをオブジェクトとして定義した属性情報やオブジェクトを構成するデータを転送要求する後述するアプリケーションソフトウエア(以下、アプリケーション)がインストールされている。また、PC101のアプリケーションは、PC101からカメラ100へのデータ転送が可能である。なお、PTP規格の参考文献としては、PIMA 15740:2000, PHOTOGRAPIHIC AND IMAGING MANUFACTURERS ASSOCIATION, INC.が挙げられる。オブジェクト単位の通信プロトコルとしては、MTP(Media Transfer Protocol)もPTPの拡張仕様であるため適用可能である。
図2は、図1のカメラ100とPC101の詳細な構成を示すブロック図である。図2において、被写体からの光束が光学系201を通して撮像素子202へ電荷として保持される。撮像素子202で蓄積された電荷が撮像プロセス部203で画像信号として変換される。撮像プロセス部203から出力された信号は、A/Dコンバータ204によりデジタル信号に変換されて、データバス205を介してRAM210に保存される。中央処理プロセス部213は、画像処理部207、圧縮伸張部208、表示制御部209、記録再生制御部211、通信制御部212、中央制御部215から構成されている。画像処理部207はホワイトバランス、シャープ、ぼかし、カラーバランス、レベル補正等の処理を行う。圧縮伸張部208は、画像処理部207で処理されたデジタル画像をJPEG、JPEG2000等の画像圧縮方法に従って圧縮する機能と、圧縮されたデジタル画像を伸張する機能とを有する。圧縮率は、ユーザによる設定が可能である。表示制御部209は表示器217へのUI(ユーザインターフェース)の描画処理を行う。記録再生制御部211は記憶媒体218へのI/O制御を行う。通信制御部212は通信器219へのデータのI/O制御を行う。中央制御部215は上記各制御部を統括する。
システム制御部214は、データバス205に接続されており、ROM200に記憶された制御プログラムに従ってカメラ100を制御するマイクロコンピュータを有する。また、システム制御部214は、圧縮伸張部208で圧縮されたデジタル画像データと、このデジタル画像データの付加情報とを含む画像ファイルを生成し、生成した画像ファイルをRAM210に格納する機能を有する。付加情報には、デジタル画像に関する情報、カメラ100に関する情報、デジタル画像のサムネイル等が含まれる。RAM210は、複数の画像ファイルを記憶する容量を有する。また、システム制御部214は、カメラ100を省電力状態にする機能を有する。ここで、カメラ100が省電力状態である場合、システム制御部214は、カメラ100の機能の一部をオフにしてバッテリの消費電力を削減する。ROM200は、カメラ100を制御するための制御プログラム、カメラ100に関する情報等が記憶されている。また、ROM200には、表示器217に表示される設定メニューに対応する画像データも記憶されている。
操作器216は、カメラ100を操作するためのユーザインターフェースであり、カメラ100の電源をオン又はオフするための電源スイッチ、シャッターボタン、表示器217に設定メニューを表示するためのメニューボタンを有する。さらに、操作器216は、表示器217に表示されたカーソルを上、下、左又は右に移動するための十字ボタン、カーソルが選択している画像、項目、値等をカメラ100に設定又は選択させるためのSETボタン等を有する。シャッターボタンには、半押し状態と全押し状態とがある。シャッタボタンが半押し状態にされると、AE/AF制御部206が光学系201を駆動して、AF、AE等を実行し、シャッタボタンが全押し状態にされると、カメラ100はデジタル画像の撮影を実行する。
表示器217は、表示制御部209によって要求された描画を表示するものであり、デバイスとしては液晶等の表示パネルを有し、その表示パネルに様々な情報を表示する。表示器217は、カメラ100に関する情報を表示する機能、撮影画像を表示する機能、記憶媒体218に保存された撮影画像を表示する機能等を有する。記憶媒体218に保存された撮影画像を表示する場合にはそのデジタル画像に関する情報も表示することができる。また、表示器217は、設定メニュー等のGUI(グラフィカルユーザインターフェース)を提供する機能を有する。
記録再生制御部211は、RAM210に格納された画像ファイルを記憶媒体218に書き込む機能と、記憶媒体218に保存された画像ファイルを記憶媒体218から読み出してRAM210に書き込む機能とを有する。記憶媒体218から読み出されてRAM210に書き込まれた画像ファイル内の撮影画像は、システム制御部214によって表示器217に表示される。
記憶媒体218は、RAM210に保存されたJPEG等の画像ファイルを記録再生制御部211を介して記憶する。記憶媒体218は、カメラに着脱可能な形態や装置に組み込まれた形態のいずれでもよく、カメラ100に電源が投入されていない状態でも記憶を保持することが可能な媒体である。通信器219は、有線通信または無線通信によるほか、有線通信機能を持たない場合はメディア経由で情報を更新する形態でもよい。また通信器219のカメラに対する着脱可、不可は問わない。
また、記録再生制御部211が情報の読み出し/書き込みを行えるよう、DCF規格で保存されるものとし、動画ファイルはDCF基本ファイルとDCFサムネイルファイルの2つのファイル構成で1つのマルチメディアデータとして扱われる。DCF規格(Design rule for Camera File System)の参考文献としてはJEIDA規格JEIDA49−2−1998がある。実際のファイル構成は、DCF規格に限らず、複数のファイルで構成しているマルチメディアデータでもかまわない。
通信制御部212では、PTP規格に準拠した通信が可能である。実際の通信方式は、PTP規格でなくとも、マルチメディアデータを1つのオブジェクトとして扱うようなオブジェクトベースのプロトコルであっても良い。
PC101の操作器221は、キーボードやマウス等であり、システム制御部225で操作の制御が行われる。表示器222は、出力モニタであり、表示制御部228により描画されたUIを出力する。RAM229は、PC101のOSや、アプリケーション10を動作させるための揮発性のメモリである。記憶媒体223は、記憶制御部230によるデータの要求に応じて入出力をする装置であり、不揮発性の記憶装置である。記憶媒体223には、OSやアプリケーション10が格納されている。通信器224は、通信インターフェース102と接続可能な通信装置であり、通信制御部231によりデータの入出力を行う。通信器224は、有線通信または無線通信によるほか、有線通信機能を持たない場合はメディア経由で情報を更新する形態でもよい。また通信器224のカメラに対する着脱可、不可は問わない。中央処理プロセス部227は、表示制御部228、記憶制御部230、通信制御部231、各制御部を統括する中央制御部226から構成される。
次に、図1を参照して、本実施形態のデータ通信システムを構成するカメラとPCのモジュール構成について説明する。図1において、記憶媒体1は、カメラ100で取得した画像ファイルを記憶するもので、カメラ100に対する着脱可、不可は問わない。記憶媒体1には、DCF規格に準拠した画像ファイルとして静止画(JPGやRAW等)や動画(AVI,MPG)等が格納される。ファイル管理モジュール2は、記憶媒体1に対するデータの読み出し/書き込みを管理するモジュールであり、カメラ100の再生時に必要な画像を管理し、通信モジュール3から要求されるデータの読み出し/書き込みを管理する。通信モジュール3は、カメラ100との通信インターフェース102を介した通信を制御する。本実施形では、PTPを使って通信を実現している。通信モジュール4は、PC101にインストールされている周辺機器との通信を制御する。本実施形では、PTPを使って通信を実現している。
ファイル管理モジュール5は、UI8で実現されるアプリケーション10上でのファイルの管理を行う。具体的には、ファイル管理モジュール5は、カメラ100に格納された各画像ファイルと、PC101に一部取り込まれている情報、つまりサムネイルデータとヘッダ情報(撮影日時、撮影機種、解像度、撮影パラメータ等)を関連付けて保持している。また主画像ファイルがPC101の記憶媒体7に格納されてキャッシュされている場合は、それらの情報も関連付けて保持している。ファイル解析モジュール6は、カメラ100から送信されてたデータを解析し、いずれのファイルで、いかなる情報が書き込まれているのかを解析する。具体的には、JPEGファイルを解析する場合、ファイルフォーマット、撮影日時、撮影機種、解像度、撮影パラメータ、動画のフレーム情報等が挙げられる。
記憶媒体7は、PC101に画像ファイルを格納するための媒体であり、本実施形ではカメラ100に保存されている画像ファイルをキャッシュするために用いる。UI8は、PC101にインストールされているアプリケーション10のUIである。表示器9は、UI8を描画するディスプレイデバイスである。本実施形態では表示器として扱うが、プロジェクターやデジタルテレビ等でもよい。
次に、図3を参照して、標準PTP通信において1つの画像ファイルを複数のPTPオブジェクトに分割する方法について説明する。図3において、構成例301は、カメラ100の記憶媒体218内のファイル・フォルダ構成であり、DCF規格に準拠した構成となっている。ファイル305の名前はMVI_0028.AVIとして、ファイルサイズが18GBで構成されている。
構成例302は、ファイル305を複数のPTPオブジェクトに分割した構成例1を示している。ファイル305を、PTPで制限された所定の転送可能サイズ(4GB)ずつ計5オブジェクトに分割してオブジェクトグループ306を作成する際に、オブジェクトのファイル名を拡張している。構成例302では、オブジェクトグループ306のそれぞれのオブジェクトのファイル名はDCF自由文字の一部に連番属性を付したもので、MV*_0028.AVIとして接頭辞3文字目の部分を分割番号として表記している。構成例302のように、ファイルを分割する順序と元のファイル名とに関連性を付与することで、PC101のアプリケーション10で、1つのファイルにグループ化するための属性情報として利用できる。
構成例303は、ファイル305を複数のPTPのオブジェクトに分割した構成例2を示している。ファイル305を、4GBサイズずつ計5オブジェクトに分割したオブジェクトグループ307を作成する際に、オブジェクトのハンドル番号を拡張している。構成例303では、オブジェクトグループ307のそれぞれのオブジェクトハンドル番号の先頭1バイト分にファイルを分割する順序を規定し、それ以外の部分を元のオブジェクトハンドル番号とすることでグループの範囲を規定している。構成例303のように、ファイルを分割する順序と元のファイルのオブジェクトハンドルとに関連性を付与することで、構成例302と同様にアプリケーション10で1つのファイルにグループ化するための属性情報として利用できる。
構成例304は、ファイル305を複数のPTPのオブジェクトに分割した構成例3を示している。ファイル305を、4GBサイズずつ計5オブジェクトに分割したオブジェクトグループ308を作成する作成する際に、オブジェクトのファイル名を拡張し、かつグループの属性情報をPTPのAncillaryObjectとして実現している。ファイルを分割する順序は構成例302と同様で、ファイルのグループ範囲は、AncillaryObject内にあるものと規定される。構成例304のように、ファイルを分割する順序とグループの属性情報とに関連性を付与することで、構成例302と同様にアプリケーション10で1つのファイルにグループ化するための情報として利用できる。
なお、ファイル名やオブジェクトハンドル番号にファイルの分割順序やグループ属性情報を付与するだけでなく、実際のオブジェクトの転送データに格納して転送する方法やPTPのベンダ拡張通信によって分割順序やグループの属性情報を取得する方法もある。この場合には、カメラ100からPC101に対してオブジェクトグループの分割順序とグループ範囲を伝えることが可能となる。
所定のファイルサイズ以上のファイルを複数のオブジェクトに分割してPCで再生可能なオブジェクトとして転送する場合、多くのファイルフォーマットは、ファイルヘッダやフッタの情報を追記する必要がある。例えば、18GBのファイルをPTPオブジェクトにする場合は、正確には、ファイルヘッダを考慮して、4GBちょうどのサイズに分割するのではなく、ファイルヘッダを考慮したサイズ分だけ小さいサイズに分割する必要がある。具体的には、4GBより数100KB程度小さいサイズに分割する等することにより、ヘッダを追記したとしても4GBを超えないようにする必要がある。これは、分割したオブジェクトのファイルサイズに再生に必要な情報を付加して、結果的に4GB超えてしまうと通信できなくなってしまうからである。
図4は、カメラ100の記憶媒体218に格納されているファイルに対して複数のオブジェクトに分割する処理を示すフローチャートである。ここでは、PTP通信開始時にカメラ100のファイル管理モジュール2が実行する例を説明するが、PTP通信開始前に既にオブジェクトハンドルを割り当てることも可能である。
図4において、S401では、記憶媒体218に格納されたファイル・フォルダの列挙を行う。S402では、S401で列挙された全ファイルに対して、オブジェクトハンドルを割り当てる処理を開始する。S403では、n番目のファイルサイズが所定のサイズ以上(4GB以上)であるか否かを判定する。ここでは所定のファイルサイズを4GBとしてみなしている。PTPの標準通信では、オブジェクトの最大サイズが4GBであるため、4GBという区切りで判断している。境界線が4GBだからといって4GBという単位で区切る必要性はなく、通信可能な4GB以下の単位で区切ることも可能である。S403でn番目のファイルが所定のファイルサイズ未満(4GB未満)であった場合、S404に移行し、通常のオブジェクトハンドルの割り当て処理が実行される。通常とは1ファイルに対して1オブジェクトハンドルが割り当てられるという意味である。
S403でn番目のファイルが4GB以上であった場合、S405に移行し、ファイルサイズを4GB長に分割し、分割した数に対してオブジェクトハンドルを割り当てる。図3の構成例303では、ファイル305が18GBだった場合は、5個のオブジェクトハンドルが割り当てられる。S406では、S405で割り当てられた各オブジェクトハンドルに対して、下記3つのグループの属性情報と関連性を付与して保持する。1つ目は、各オブジェクトハンドルとファイルの関連性、2つ目は、各オブジェクトハンドルの分割位置を保持するためのファイルの開始アドレス、3つ目は、各オブジェクトハンドルに対するファイルサイズである。例えば、図3の構成例303では、最後に分割した5個目のオブジェクトハンドルのファイルサイズが2GBになる。S407では、n個ファイルがあった場合は、n番目のファイルに対するオブジェクトハンドルの割り当てが完了した時点で、S402におけるループ処理を終了する。
図5は、PC101からカメラ100に対してオブジェクトハンドルを指定した要求が送信された場合に、ファイル管理モジュールが対象のファイルを検索する処理を示すフローチャートである。なお、PC101からの要求にてオブジェクトハンドルが指定されているとする。図5において、カメラ100がPC101からオブジェクトハンドルを指定した要求を受信すると、S501において、PC101で指定されたオブジェクトハンドルから記憶媒体218内のファイルを検索する。S502では、検索したファイルが4GB以上であるか否かを判定する。判定の結果が4GB未満であった場合、S503でPC101からの要求に応じた通常の応答処理を行う。
一方で、S502での判定が4GB以上であった場合、S504で、指定されたオブジェクトハンドルに対応するファイルの開始アドレス、ファイルサイズに基づく応答処理を実行する。ここで、カメラ100は、PC101で再生可能なデータ形式にして送信する。具体的には、ファイルの再生に必要なヘッダ・フッタを流用もしくは生成し、再生可能なデータ形式にする。カメラ100は、PC101からファイルに関する情報の要求があった場合、再生するデータ形式を想定した情報を送信する。PC101では、1つのファイルが複数のオブジェクトに分割されていることを認識せずにアクセス可能なものとする。実際には、カメラ100は、PC101のPTP Driverに対して、PTPコマンド:GetObjectInfoやGetObjectの応答が通る形で返す。S503またはS504の後、本処理を終了する。
図6は、PC101が複数のオブジェクトハンドルを1つのファイルにグループ化する処理を示すフローチャートである。ここでは、カメラ100とのPTP通信開始時点でPC101のアプリケーション10が起動状態であるとする。図6において、S601では、PC101のアプリケーション10が、カメラ100内のオブジェクトハンドルを、通信モジュール4を介して全て列挙する。S602では、1つにグループ化可能な複数の分割オブジェクトハンドルを検索するループ処理を開始する。ループ内では、S603でグループ化可能な分割オブジェクトハンドルのうち、先頭の分割オブジェクトを検索する。例えば、構成例302では、MVI_00028.AVIというファイル名を検索する。なお、構成例302を検索する場合、MVI_0028.AVIというファイル名は分割されたPTPオブジェクトではなく、通常のファイル名として存在するので、MV2_0028.AVIというファイル名を検索してもよい。ファイルが分割されているオブジェクトであること、分割されたオブジェクトのうち先頭もしくは2番目であることがわかればよい。また構成例303を検索する場合、オブジェクトハンドル番号が0x10000007という先頭バイトが1となるものを検索することになる。構成例304では、AncillaryObjectを検索することになる。
S603で分割オブジェクトが先頭オブジェクトではない場合は、S602へ戻り、次のファイルを検索対象とする。S603にて分割オブジェクトが先頭オブジェクトである場合、S604に移行し、次の分割オブジェクトの検索を行う。これを再帰的に繰り返し、分割オブジェクトがなくなるまで繰り返す(S605)。例えば、構成例302の場合、MV2_0028.AVIというファイル名を検索する。次にMV3_0028.AVIを検索し、これを次の分割オブジェクトがなくなるまで実行する。構成例303も同様に分割順序のルールに従い、次の分割オブジェクトがなくなるまで検索を実行する。構成例304では、AncillaryObject内にあるものが分割されたオブジェクトであるので、この内部で検索し、分割順序を検索していく。S605でグループ化可能なオブジェクトの検索が終了すると、S606で分割オブジェクトを1つにグループ化する。このとき、分割オブジェクトの順序を保持する。S607では、S602〜S606のループを全ての分割オブジェクトについて完了するまで繰り返す。
PC101のアプリケーション10は、上述したフローのように分割オブジェクトの順序と数を、構成例302,303,304等のルールに基づき認識することができる。なお、ファイル名やオブジェクトハンドルの関連性から判断する方法もある。この場合、カメラ100から転送するデータにファイル分割の関連情報を含め、アプリケーション10が関連情報を解析すればよい。
図7は、図6のグループ化処理にてグループ化できない場合について説明する図である。図7において、例えば、ファイルが1,2,3,4の4つのオブジェクトに分割されていた場合、何かの不具合で、PC101のアプリケーション10で1,2,3までしか検出できなかった場合は、1,2,3の3つのオブジェクトでグループ化できる。また、2,3,4のオブジェクトしかない場合は、グループ化することができない。また、1,3,4のオブジェクトしかない場合も、グループ化することができない。
図8は、図6のグループ化処理に組み合わされ、ベンダ拡張通信を用いて一度にファイルを取得するシーケンスを例示している。ここでは、ユーザ20がPC101のアプリケーション10に対して、ファイル取得要求を発行したとする。この場合、ファイル305とし、18GBであるとする。PC101のアプリケーション10は、ベンダ拡張通信を行い、図6により得られたグループの全体サイズを計算するか、もしくはベンダ拡張通信を用いて、全体サイズを取得し、カメラ100へ問い合わせる。図8のようにPTPコマンド、GetObjectOver4GBを作成し、データ転送を実現している。この仕様では、構成例302の複数のオブジェクトを構成するいずれか1つを要求すれば実行され、カメラ100からデータ転送後、PC101のアプリケーション10はファイルを保存する。
図9は、図6のグループ化処理に組み合わされ、標準のPTP通信を用いて1つのファイルにグループ化するシーケンスを例示している。ここでは、ユーザ20がPC101のアプリケーション10に対して、ファイル取得要求を発行したとする。この場合、ファイル305とし、18GBであったとする。図9において、PC101のアプリケーションは、指定されたグループの先頭オブジェクトに対して、カメラ100に対して、PTPコマンド、GetObject等のコマンドを発行し、オブジェクトのデータ転送を行う。データ転送後、ファイルとして保存する。次の分割順序に従って、該当するオブジェクトに対して同様にデータ転送を行う。データ転送後にファイルを追記するが、取得したデータ自体は、PC101で再生可能な形に加工されているため、そのまま直接ファイルを追記すると、再生できないファイルとなる。このため、再生に必要なヘッダ及びフッタ等の情報を省き実データとなる部分のみのファイルを追記する。次に分割するオブジェクトのデータを繰り返し、グループ化されたオブジェクト全てに対して実行する。分割された最後のオブジェクトに対して、ファイル追記が完了した時点で、グループ化が完了する。
図10は、PCでグループ化されたファイルをカメラへ転送する処理を例示している。ここでは、ユーザ20は、PC101のアプリケーション10に対して、ファイルの追記要求を行う。この場合、ファイルは4GB以上であったとする。図10において、PC101のアプリケーション10は、ユーザ20が要求したファイルが4GB以上であるか否かを判定する。4GB以上の場合は、複数のFileNameに分割する。このときのファイル分割規則は、構成例302と同様のルールとする。そして、カメラ100に対して先頭の分割ファイルから順番に送信を行う。カメラ100では、指定したFileNameから分割されたファイルが送信されることを認識し、以後ファイルの追記を繰り返す処理を開始する状態となる((1.1PTP:SendObjectInfo)。PC101のアプリケーション10がカメラ100へデータを送信した後(1.2PTP:SendObject)、PC101のアプリケーション10は、次の分割データを送信する。カメラ100は、分割データを受信後、データをファイルとして直接記憶媒体218に追記する。これらの処理を分割ファイルの全てに対し、分割順序で送信する。最後の結合データに関しては、最後である情報を追記したデータを送信し、カメラ100は、ファイルクローズを行うか、もしくは、別のPTPコマンドが実行されて、処理が中断された時点で、ファイルクローズを行うかを判断する。カメラ100は1つのファイルの生成を完了した後、PC101へ再度転送できるよう複数のオブジェクトとして通知する。そのため、カメラ100からPC101へPTPEvent:ObjectAddedイベントを複数発行する。この処理により、カメラ100とPC101のオブジェクトの整合が崩れることなく、ファイルを送受信可能な通信状態を保持することができる。
上述したシーケンスにより分割ファイルを送信する場合、PC101はカメラ100で再生可能な形にヘッダ・フッタを生成する必要がない。その理由は、最終的にカメラ100が1つのファイルとして扱うことを前提としているからである。また、複数のオブジェクトをPC101に認識させる場合は、図3の構成例302,303,304の方法により、カメラ100もPC101もファイル再生時に不都合が生じないためである。
本実施形態によれば、カメラ100の中に4GB以上のファイルが存在したとしてもPTP通信が可能となり、PC101で標準的に通信を行うことができ、かつ再生することができるようになる。
また、本発明は、上記実施形態と同等の処理を、コンピュータプログラムでも実現できる。この場合、図1をはじめとする構成要素の各々は関数、もしくはCPUが実行するサブルーチンで機能させれば良い。また、通常、コンピュータプログラムは、CD−ROM等のコンピュータ可読記憶媒体に格納されており、それを、コンピュータが有する読取り装置(CD−ROMドライブ等)にセットし、システムにコピーもしくはインストールすることで実行可能になる。従って、かかるコンピュータ可読記憶媒体も本発明の範疇にあることは明らかである。

Claims (7)

  1. 転送可能なファイルサイズが所定のファイルサイズ未満に制限されている所定の通信プロトコルに準拠した通信インターフェースを介して情報処理装置と接続される撮像装置であって、
    画像ファイルを記憶する記憶手段と、
    前記通信インターフェースを介して前記情報処理装置と通信するための通信手段と、
    前記通信手段を介して前記情報処理装置から画像ファイルをオブジェクトとして指定した要求を受信した場合、当該指定されたオブジェクトに対応する前記記憶手段に記憶された画像ファイルを検索する検索手段と、
    前記検索手段により検索されたオブジェクトに対応する画像ファイルが前記所定のファイルサイズ以上であるか否かを判定する判定手段と、
    前記判定手段により前記指定されたオブジェクトに対応する画像ファイルが前記所定のファイルサイズ以上であると判定された場合、当該画像ファイルを分割して生成された各オブジェクトが前記所定のファイルサイズ未満となるように、当該画像ファイルを複数のオブジェクトに分割する制御手段と、を有し、
    前記制御手段は、前記判定手段により前記指定されたオブジェクトに対応する画像ファイルが前記所定のファイルサイズ以上であると判定された場合、前記指定されたオブジェクトに対応する画像ファイルの属性情報を用いて当該画像ファイルを前記情報処理装置で再生可能なデータ形式で前記情報処理装置へ送信し、
    前記属性情報は、各オブジェクトとファイルとの関連性、各オブジェクトのファイルの開始アドレスおよびファイルサイズ、分割する順序に関する情報を含むことを特徴とする撮像装置。
  2. 前記通信インターフェースは、PTP規格に準拠しており、前記制御手段は、分割した各オブジェクトのファイル名、オブジェクトハンドル番号、AncillaryObjectに関連情報を付与することを特徴とする請求項に記載の撮像装置。
  3. 転送可能なファイルサイズが所定のファイルサイズ未満に制限されている所定の通信プロトコルに準拠した通信インターフェースを介して撮像装置と接続される情報処理装置であって、
    前記通信インターフェースを介して前記撮像装置と通信するための通信手段と、
    前記通信手段を介して前記撮像装置へ所定の画像ファイルをオブジェクトとして指定した要求を送信する送信手段と、
    前記撮像装置から受信した画像ファイルの属性情報を解析する解析手段と、
    前記解析手段による解析の結果を用いて、1つにグループ化可能な複数のオブジェクトを検索し、検索の結果得られた複数のオブジェクトのうち前記属性情報を除いたデータ部分のみをグループ化するグループ化手段と、を有し、
    前記属性情報は、各オブジェクトとファイルとの関連性、各オブジェクトのファイルの開始アドレスおよびファイルサイズ、分割する順序に関する情報を含むことを特徴とする情報処理装置。
  4. 前記撮像装置からの前記要求に応じて、前記グループ化された複数のオブジェクト分割して転送する転送手段を更に有することを特徴とする請求項に記載の情報処理装置。
  5. 画像ファイルを記憶する記憶手段を有し、転送可能なファイルサイズが所定のファイルサイズ未満に制限されている所定の通信プロトコルに準拠した通信インターフェースを介して情報処理装置と接続される撮像装置におけるデータ通信方法であって、
    前記通信インターフェースを介して接続された前記情報処理装置から画像ファイルをオブジェクトとして指定した要求を受信した場合、当該指定されたオブジェクトに対応する前記記憶手段に記憶された画像ファイルを検索する検索工程と、
    前記検索工程にて検索されたオブジェクトに対応する画像ファイルが前記所定のファイルサイズ以上であるか否かを判定する判定工程と、
    前記判定工程により前記指定されたオブジェクトに対応する画像ファイルが前記所定のファイルサイズ以上であると判定された場合、当該画像ファイルを分割して生成された各オブジェクトが前記所定のファイルサイズ未満となるように、当該画像ファイルを複数のオブジェクトに分割する制御工程と、を有し、
    前記制御工程では、前記判定工程により前記指定されたオブジェクトに対応する画像ファイルが前記所定のファイルサイズ以上であると判定された場合、前記指定されたオブジェクトに対応する画像ファイルの属性情報を用いて当該画像ファイルを前記情報処理装置で再生可能なデータ形式で前記情報処理装置へ送信し、
    前記属性情報は、各オブジェクトとファイルとの関連性、各オブジェクトのファイルの開始アドレスおよびファイルサイズ、分割する順序に関する情報を含むことを特徴とするデータ通信方法。
  6. 転送可能なファイルサイズが所定のファイルサイズ未満に制限されている所定の通信プロトコルに準拠した通信インターフェースを介して撮像装置と接続される情報処理装置におけるデータ通信方法であって、
    前記通信インターフェースを介して接続された前記撮像装置へ所定の画像ファイルをオブジェクトとして指定した要求を送信する送信工程と、
    前記撮像装置から受信した画像ファイルの属性情報を解析する解析工程と、
    前記解析工程による解析の結果を用いて、1つにグループ化可能な複数のオブジェクトを検索し、検索の結果得られた複数のオブジェクトのうち前記属性情報を除いたデータ部分のみをグループ化するグループ化工程と、を有し、
    前記属性情報は、各オブジェクトとファイルとの関連性、各オブジェクトのファイルの開始アドレスおよびファイルサイズ、分割する順序に関する情報を含むことを特徴とするデータ通信方法。
  7. 請求項またはに記載のデータ通信方法をコンピュータに実行させるためのプログラム。
JP2009170615A 2009-07-21 2009-07-21 撮像装置、情報処理装置、データ通信方法、プログラム Expired - Fee Related JP5395550B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009170615A JP5395550B2 (ja) 2009-07-21 2009-07-21 撮像装置、情報処理装置、データ通信方法、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009170615A JP5395550B2 (ja) 2009-07-21 2009-07-21 撮像装置、情報処理装置、データ通信方法、プログラム

Publications (2)

Publication Number Publication Date
JP2011029733A JP2011029733A (ja) 2011-02-10
JP5395550B2 true JP5395550B2 (ja) 2014-01-22

Family

ID=43638008

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009170615A Expired - Fee Related JP5395550B2 (ja) 2009-07-21 2009-07-21 撮像装置、情報処理装置、データ通信方法、プログラム

Country Status (1)

Country Link
JP (1) JP5395550B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013243473A (ja) * 2012-05-18 2013-12-05 Canon Inc 送信装置、制御方法及びプログラム
JP2016127415A (ja) * 2014-12-26 2016-07-11 キヤノン株式会社 通信装置及び制御方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004194187A (ja) * 2002-12-13 2004-07-08 Canon Inc 画像送信装置、画像受信装置及び画像送受信システム
JP2004266545A (ja) * 2003-02-28 2004-09-24 Mitsumi Electric Co Ltd データ通信システム及びデータ通信方法
JP2005286654A (ja) * 2004-03-29 2005-10-13 Fuji Photo Film Co Ltd デジタルカメラ及びファイル送信プログラム
JP2007049632A (ja) * 2005-08-12 2007-02-22 Canon Inc デジタルカメラ
JP2008172475A (ja) * 2007-01-11 2008-07-24 Mitsubishi Electric Corp 情報通信装置

Also Published As

Publication number Publication date
JP2011029733A (ja) 2011-02-10

Similar Documents

Publication Publication Date Title
US9613063B2 (en) Content transmission device, content transmission method, and content transmission program
US8296272B2 (en) Information processing apparatus, information processing method, and program
US20070198595A1 (en) Information processing apparatus, information processing method, and program
JP4829579B2 (ja) 画像処理装置、画像処理方法
US7791742B2 (en) Image processing apparatus, control method therefor, program, and computer-readable storage medium
US9967473B2 (en) Information processing apparatus, information processing method, and program
US20040051784A1 (en) Electronic camera
US20040263644A1 (en) Electronic apparatus, directory generating method, directory reading method and computer program
JP2002369106A (ja) ディジタルカメラおよびデータ転送方法
JP2014154891A (ja) 情報処理装置およびその制御方法、プログラム、並びに記憶媒体
US20050010610A1 (en) File management system, file management apparatus and image forming apparatus
JP5395550B2 (ja) 撮像装置、情報処理装置、データ通信方法、プログラム
JP4886551B2 (ja) 画像処理システム、情報処理装置及びその制御方法、記憶媒体、プログラム
JP2007036581A (ja) 情報管理装置及び情報管理方法
JP5517527B2 (ja) 画像処理装置、その制御方法、プログラム
JP2002354309A (ja) デジタルカメラ連携システムおよび画像データ処理プログラムを記録した記録媒体
JP6666557B2 (ja) 画像管理システム、画像管理システムに用いられる情報処理装置、情報処理装置による情報提示方法及びプログラム
JP5153054B2 (ja) ファイル生成方法及びファイル検索方法
JP2005352898A (ja) 情報記録装置及びその制御方法
JP5814389B2 (ja) 画像管理システム、及び画像管理方法
JP5574633B2 (ja) ファイル処理装置及びその制御方法、並びにプログラム
JP2011180637A (ja) 画像記録装置
JP2001128111A (ja) 記録再生装置及び記録再生方法、制御装置及び制御方法、記録再生制御システム及び記録再生制御方法
JP6420945B2 (ja) 情報処理装置、情報処理装置におけるデータ表示方法及びプログラム
US8503830B2 (en) Digital image processing apparatus and method of arranging digital image files used by the same

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120720

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130809

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130920

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131018

R151 Written notification of patent or utility model registration

Ref document number: 5395550

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees