JP4343372B2 - 通信装置、画像処理装置、通信方法、及び画像処理方法 - Google Patents

通信装置、画像処理装置、通信方法、及び画像処理方法 Download PDF

Info

Publication number
JP4343372B2
JP4343372B2 JP2000002959A JP2000002959A JP4343372B2 JP 4343372 B2 JP4343372 B2 JP 4343372B2 JP 2000002959 A JP2000002959 A JP 2000002959A JP 2000002959 A JP2000002959 A JP 2000002959A JP 4343372 B2 JP4343372 B2 JP 4343372B2
Authority
JP
Japan
Prior art keywords
image
information
printer
register
digital camera
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
JP2000002959A
Other languages
English (en)
Other versions
JP2001195208A (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 JP2000002959A priority Critical patent/JP4343372B2/ja
Priority to US09/750,714 priority patent/US6711637B2/en
Publication of JP2001195208A publication Critical patent/JP2001195208A/ja
Application granted granted Critical
Publication of JP4343372B2 publication Critical patent/JP4343372B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Information Transfer Systems (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、例えば、IEEE1394で規定されるようなシリアルインターフェイスを介して、一対一のデバイス間でデータ転送を行うために用いて好適なものに関するものである。
【0002】
【従来の技術】
従来より例えば、ディジタルカメラ(以下、単に「デジカメ」と言う)で撮影して得た撮影画像をプリンタで印刷する方法として、パーソナルコンピュータ(以下、単にパソコン」と言う)を利用した方法がある。
この方法では、先ず、パソコンとデジカメをシリアルインターフェイス(RS−232C等)で接続すると共に、パソコンとプリンタをパラレルインターフェイス(セントロニクス等)で接続する。次に、デジカメからパソコンへ撮影画像を転送することで、パソコン内へ当該撮影画像を取り込む。そして、パソコンにおいて、当該パソコン上で起動する任意のアプリケーションソフトにより、デジカメから取り込んだ撮影画像を、所望する印刷形式に合わせて加工する。その後、パソコンからプリンタへ上記加工後の撮影画像を転送することで、プリンタでの当該撮影画像の印刷出力を行う。
【0003】
しかしながら、上述したようなパソコンを利用した撮影画像の出力方法は、既にユーザがパソコンを持っていることが前提である。このため、パソコンを持っていないユーザ(パソコンは持っていないがデジカメを初めて購入したユーザ等)は、パソコンを用意しなければ(新規購入等)、デジカメで撮影して得た撮影画像をプリンタで印刷することはできない。
【0004】
そこで、デジカメで撮影して得た撮影画像をパソコンを利用せずに直接プリンタで印刷できる、昇華型のビデオプリンタという形態のシステム(以下、「ダイレクトプリントシステム」と言う)が提案されている。
このダイレクトプリントシステムでは、パソコンを介さずに独自規格のシリアルインターフェイスを用いて、直接デジカメとプリンタを接続する、或いは標準規格である赤外線を用いたIrTran−Pや、コンパクトフラッシュ・スマートメディア等のメモリカードのインターフェイスを用いて、デジカメからプリンタへの撮影画像の転送を行うようになされている。
【0005】
ところで、上述したようなダイレクトプリントシステムでは、ユーザが、デジカメで撮影して得た種々の撮影画像の中から、プリンタで印刷したい撮影画像を選択する場合、ユーザは、プリンタのビデオ出力端子に家庭用テレビを接続することで、種々の撮影画像に対応するサムネイル画像(撮影画像の実際の画像サイズを80×60ドット程度に縮小した当該撮影画像の確認用の画像)が配列されたメニュー画面(インデックス画面)を表示させ、当該メニュー画面から所望する撮影画像を選択するようになされている。このように、家庭用テレビにより撮影画像の確認及び選択のためのメニュー画面を表示させることは、プリンタ自体に、当該メニュー画面を表示できるようなディスプレイを設けるようにすると、コストやスペースの面で問題となるためである。
【0006】
しかしながら、一般に使用されている家庭用テレビは、パソコンに用いられているモニタ等と比較すると、解像度が720×480ドット程度と粗い。このため、家庭用テレビのメニュー画面上のサムネイル画像では、撮影画像を確認することは困難である。また、メニュー画面で一度に確認できる撮影画像の枚数を増やそうとすると、すなわちメニュー画面上に一度に表示できるサムネイル画像の枚数を増やそうとすると、その分、サムネイル画像のサイズをさらに小さくする必要があり、さらに撮影画像を確認することが困難である。
このため、メニュー画面での一度に確認できる撮影画像の枚数が制限されてしまうことになる。
【0007】
そこで、メニュー画面を、デジカメに設けられている液晶表示部で表示することが考えられるが、デジカメの液晶表示部の画面サイズは小さく解像度が低いため、したがって、このような構成としても、一度に確認できる撮影画像の枚数が制限されてしまうことになる。
【0008】
上述のような問題、すなわち一度に確認できる撮影画像の枚数が制限されてしまうという問題は、特に近年では、デジカメが内蔵しているメモリサイズの増加に伴って、デジカメ内に蓄積可能な撮影画像の枚数が増加しており、その分一度に確認できる撮影画像の枚数を増やして、効率よく撮影画像の確認及び選択が行なえることが要求されていることに対して、非常に不都合である。
【0009】
そこで、撮影画像の確認及び選択のためのメニュー画面を、家庭用テレビ或いはデジカメの液晶表示部に表示するのではなく、撮影画像のサムネイル画像の一覧をプリンタで印刷出力(インデックスプリント)する方法が提供されている。
これにより、ユーザは、デジカメ内に蓄積されている撮影画像の全てを確認することができ、その中から実際に印刷したい撮影画像を選択することができる。
【0010】
具体的には、まず、デジカメでは、EXIFやCIFF等の画像ファイルフォーマットに従って、撮影画像が、それに対応したサムネイル画像と共に、画像ファイルとして保持されている。この画像ファイルの中の全てのサムネイル画像のみ取り出して、サムネイル画像の一覧を印刷出力するために、次の第1〜第4の処理が実行される。
第1処理:先ず、デジカメ内に保持されている画像ファイルを全てプリンタに対して転送する。
第2処理:次に、プリンタにおいて、その画像ファイルの中からサムネイル画像のみを抽出する。
第3処理:次に、第2処理にて抽出したサムネイル画像の一覧画像を生成する。
第4処理:そして、第3処理にて生成した一覧画像を印刷出力する。
【0011】
【発明が解決しようとする課題】
しかしながら、デジカメ内に保持されている撮影画像の確認及び選択のために、上述したような第1〜4処理により、デジカメ内に保持されている全ての撮影画像を、それらに対応したサムネイル画像の一覧としてプリンタで印刷出力(インデックスプリント)する方法では、デジカメとプリンタの間で行われるデータ転送や、プリンタで行われる画像処理(サムネイル画像の一覧画像の生成処理等)及び印刷処理の負荷が大きく、多大な時間が費やされてしまう、という問題があった。
【0012】
そこで、本発明は、上記の欠点を除去するために成されたもので、第1のデバイス内に存在する情報を容易に且つ効率的に確認することができ、その情報の中から所望する情報を容易に且つ効率的に選択することができるようにすることを目的とする。
【0013】
【課題を解決するための手段】
斯かる目的下において、本発明は、少なくとも画像と上記画像のサムネイル画像とを有する画像ファイルを保持する他装置内から、通信手段を介して上記画像ファイルに含まれる情報を取り込む通信装置であって、上記他装置から、上記画像ファイルを格納する記憶領域における上記画像ファイルのアドレス情報と、上記画像ファイルにおける上記情報のアドレス情報とを取得し、取得した上記画像ファイルのアドレス情報及び上記情報のアドレス情報に基づき、上記他装置から取り込む情報の記憶領域を直接指定して取り込み処理を行なう情報取込手段を備えることを特徴とする。
【0033】
【発明の実施の形態】
以下、本発明の実施の形態について図面を用いて説明する。
【0034】
本発明は、例えば、図1に示すような通信システム100に適用される。
この通信システム100は、ディジタルカメラ101内に保持されている撮影画像を、パーソナルコンピュータ(PC)等を利用することなく、プリンタ102から印刷出力できるようになされたダイレクトプリントシステムであり、上記図1に示すように、画像入力デバイス(第1のデバイス)としてのディジタルカメラ(デジカメ)101と、画像出力デバイス(第2のデバイス)としてのプリンタ102とが、通信手段としての後述する1394シリアルバス103を介して通信可能に接続された構成としている。
【0035】
ここで、ダイレクトプリントシステムでの通信手段(インターフェース)としては、1394シリアルバスに限らず、その他種々のインターフェースが適用可能であるが、本実施の形態では、その一例として、1394シリアルバス103を使用しているため、まず最初に、1394シリアルバス103を規定している”IEEE1394”の概要を説明し、これに続いて、本実施の形態での通信システム100の構成の詳細及び動作を説明する。
【0036】
《IEEE1394の技術の概要》
近年では、家庭用ディジタルVTRやDVDの登場に伴って、ビデオデータやオーディオデータの転送のように、リアルタイムで且つ高情報量のデータ転送のサポートが要求されている。このため、ビデオデータやオーディオデータ等をリアルタイムで転送し、パーソナルコンピュータ(PC)内に取り込んだり、或いはその他のディジタルル機器に転送するには、必要な転送機能を備えた高速なデータ転送が可能なインタフェースが必要になってくる。このような観点から開発されたインタフェースが、IEEE1394−1995(High Performance Serial Bus)(以下、「1394シリアルバス」と言う)である。
【0037】
図2は、1394シリアルバスを用いて構成されるネットワークシステムの一例を示したものである。
このネットワークシステムは、ディジタル機器(以下、単に「機器」と言う)A,B,C,D,E,F,G,Hを備えており、A−B間、A−C間、B−D間、D−E間、C−F間、C−G間、及びC−H間をそれぞれ、1394シリアルバスのツイスト・ペア・ケーブル(以下、「1394シリアルバスケーブル」と言う)で接続した構成としている。
尚、機器A〜Hとしては、例えば、PC、ディジタルVTR、DVD、ディジタルカメラ、ハードディスク、モニタ等が適用可能である。
【0038】
それぞれの機器A,B,C,D,E,F,G,H間の接続方式としては、デイジーチェーン方式とノード分岐方式を混在可能とした方式が用いられ、自由度の高い接続が可能となっている。また、それぞれの機器A,B,C,D,E,F,G,Hは、固有のIDを有し、当該IDを互いに認識し合うことによって、1394シリアルバスケーブルで接続された機器の範囲において、1つのネットワークを構成している。すなわち、機器A,B,C,D,E,F,G,H間をそれぞれ1本の1394シリアルバスケーブルで順次接続するだけで、それぞれの機器A,B,C,D,E,F,G,Hが中継の役割を行い、全体として1つのネットワークを構成する。
【0039】
また、1394シリアルバスは、1394シリアルバスケーブルを機器に接続した時点で、当該機器が、自動的に自機器の認識や接続状況等を認識するPlug&Play機能を有する。
このPlug&Play機能により、例えば、上記図2のネットワークシステムにおいて、任意の機器Xが削除されたり、或いは新たに追加されたときには、自動的にバスリセットが行なわれることで、それまでのネットワーク構成がリセットされ、新たなネットワークの再構築が行なわれることになる。また、その時々のネットワークの構成が常時設定され認識される。
【0040】
1394シリアルバスでのデータ転送速度は、100/200/400Mbpsであり、上位の転送速度を有する機器が、下位の転送速度を有する機器をサポートすることで、互換をとるようになっている。
【0041】
1394シリアルバスでのデータ転送モードとしては、コントロール信号等の非同期データ(Asynchronousデータ、以下、単に「Asyncデータ」と言う)を転送するAsynchronous転送モードと、リアルタイムなビデオデータやオーディオデータ等の同期データ(Isochronousデータ、以下、単に「Isoデータ」と言う)を転送するIsochronous転送モードとがある。
【0042】
Asyncデータ及びIsoデータは、各サイクル(通常1サイクル125μS)の中において、サイクル開始を示すサイクル・スタート・パケット(CSP)の転送に続き、Isoデータの転送を優先しつつ、サイクル内で混在して転送される。
【0043】
図3は、1394シリアルバスの構成要素を示したものである。
この図3に示すように、1394シリアルバスは、1394シリアルバスのケーブル213から順に、ハードウェア200、ファームウェア201、ソフトウェア202へと、全体としてレイヤ(階層)構造で構成されている。
【0044】
1394シリアルバスのケーブル213は、最もハード的な構成であり、そのコネクタは、コネクタポート210に接続される。
【0045】
ハードウェア200は、実施的なインターフェイステップの部分であり、フィジカル・レイヤ211及びリンク・レイヤ212を含んでいる。フィジカル・レイヤ211は、符号化やコネクタ関連の制御等を行い、リンク・レイヤ212は、パケット転送やサイクルタイムの制御等を行う。
ファームウェア201は、トランザクション・レイヤ214及びマネージメント・レイヤ215を含んでいる。トランザクション・レイヤ214は、転送(トランザクション)すべきデータの管理を行い、”Read”や”Write”等の命令を発行する。マネージメント・レイヤ215は、接続されている各機器の接続状況やIDの管理を行い、ネットワークの構成を管理する。
これらのハードウェア200及びファームウェア201までが、実質上の1394シリアルバスの構成である。
【0046】
ソフトウェア202は、アプリケーション・レイヤ216を含んでいる。アプリケーション・レイヤ216は、使用するソフトによって異なり、インタフェース上にどのようにデータをのせるか等を規定する部分であり、例えば、AV/Cプロトコル等のデータ転送プロトコルによって規定されている。
【0047】
図4は、1394シリアルバスにおけるアドレス空間を示したものである。
上記図2に示したような、1394シリアルバスに接続された各機器(以下、「ノード」とも言う)には、必ず各機器固有の、64ビットのアドレスを持たせておく。これにより、各機器は、当該アドレスを自機器内のROMに設定しておくことで、自機器や、接続相手の機器のノードアドレスを常時認識することができ、通信する機器を指定した通信をも行えるようになされている。
【0048】
1394シリアルバスのアドレッシングは、IEEE1212規格に準じた方式が採用される。
この方式では、上記図4に示すように、64ビットのアドレスにおいて、最初の10ビット(221)がバスの番号(バスID)の指定用に使用され、それ続く6ビット(222)がノードID番号(ノードID)の指定用に使用される。また、これ以降の48ビット(223)については、それぞれの機器で使用できるアドレスであるが、20ビット(223a)と28ビット(223b)に分けられ、256Mバイト単位の構造(224)を持って利用される。
【0049】
48ビット(223)の最初の20ビット(223a)により示されるアドレスの領域224おいて、0〜0xFFFFDのアドレスにより示される領域225は、メモリ空間と呼ばれ、その次の0xFFFFEのアドレスにより示される領域226は、プライベート空間と呼ばれ、各機器で自由に利用できる領域である。また、その次の0xFFFFFのアドレスにより示される領域227は、レジスタ空間と呼ばれ、バスに接続された機器間で共通な情報が設定され、各機器間のコミュニケーションに使用される。
【0050】
レジスタ空間227において、最初の512バイトの領域228は、CSRアーキテクチャのコアになるレジスタ(CSRコア)として使用される。その次の512バイトの領域229は、シリアルバスのレジスタとして使用される。その次の1024バイトの領域230は、ConfigurationROMとして使用される。そして、それ以降の領域231は、ユニット空間(機器固有のレジスタ)として使用される。
【0051】
尚、一般的に、異種バスシステムの設計の簡略化のためは、各機器は、ユニット空間231の最初の2048バイトの領域のみ使用することが望ましい。この場合、CSRアーキテクチャの核(CSRコア)228、シリアルバスのレジスタ229、ConfigurationROM230、及びユニット空間231の最初の2048バイトの、合計4096バイトで構成すればよい。
【0052】
《1394シリアルバスの電気的仕様》
図5は、1394シリアルバス・ケーブルの断面図を示したものである。
この図5に示すように、1394シリアルバス・ケーブル内には、2組のツイストペア信号線241が設けられていると共に、電源ライン(電源線)242が設けられている。この電源線242によって、電源を持たない機器や、故障により電圧低下した機器等に対しても、電力の供給が可能となる。
電源線242内を流れる電源の電圧としては8〜40V、電流としては最大電流DC1.5Aが規定されている。
【0053】
《DS−Link符号化》
1394シリアルバスで採用されているデータ転送フォーマットについて、図6を用いて説明する。
1394シリアルバスでは、データ転送フォーマットとして、DS−Link(Data/Strobe Link)符号化方式を採用している。このDS−Link符号化方式は、高速なシリアルデータ通信に適した方式である。
【0054】
具体的には、DS−Link符号化方式では、2本の信号線を必要とし、これらの2本の信号線のうち、1本の信号線で主となるデータ(Data)を送り、他方の信号線では、ストローブ信号(Strobe)を送る構成としている。
したがって、データ(Data)及びストローブ信号(Strobe)の受信側では、データ(Data)とストローブ信号(Strobe)の排他的論理和をとることによって、クロック(Clock)を再現できる。
【0055】
上述のようなDS−Link符号化方式を採用することで、次のようなメリットがある。
・他のシリアルデータ転送方式に比べて転送効率が高い。
・PLL回路が不要となるため、コントローラLSIの回路規模を小さくできる。
・転送すべきデータが無い場合等にアイドル状態であることを示す情報を送る必要が無いため、各機器のトランシーバ回路をスリープ状態にすることができる。これにより、消費電力の低減が図れる。
【0056】
《ノードID決定のシーケンス》
上述したように、Plug&Play機能によって、任意の機器が削除されたり、或いは新たに追加されたときには、自動的にバスリセットが行なわれることで、それまでのネットワーク構成がリセットされ、新たなネットワークの再構築が行なわれることになる。
そこで、バスリセットの後、新たなネットワーク構成を構築するために、それぞれの機器では、例えば、図7に示すフローチャートに従った動作(各機器に対してIDを与える動作)が実行される。
【0057】
具体的には、上記図7は、バスリセットが発生してから、それぞれの機器にてノードIDが決定され当該ノードIDが転送されるまでの動作を示したものである。
【0058】
先ず、それぞれの機器では、ネットワーク内にバスリセットが発生したか否かが常時監視されている(ステップS251)。そこで、ネットワーク内の任意の機器の電源ON/OFF等により、バスリセットが発生すると、それぞれの機器は、ネットワークがリセットされた状態から、新たなネットワークの接続状況を認識するために、自機器に直接接続されている機器との間で親子関係を宣言する(ステップS252)。
【0059】
ステップS252により、全ての機器間で親子関係が決定すると(ステップS253)、この結果、ルートとしての機器が決定することになる(ステップS254)。
【0060】
ステップS254により、ルートとしての機器が決定すると、それぞれの機器は、他機器に対して自機器のノードIDを与えるノードIDの設定作業を実行する(ステップS255)。このとき、所定の機器順で、ノードIDの設定作業を実行する。
【0061】
ステップS255により、全ての機器に対してのノードIDの設定作業が終了すると(ステップS256)、新たなネットワーク構成が全ての機器において認識されたことになる。
これにより、それぞれの機器は、他の機器とのデータ転送が行える状態となり、必要に応じて、データ転送を開始する(ステップS257)。
その後、それぞれの機器は、再びバスリセットが発生したか否かを監視するモード状態となり(ステップS251)、バスリセットが発生すると、上述したようなステップS252〜ステップS257の処理を繰り返し実行する。
【0062】
《ダイレクトプリントプロトコル(DPP)》
上記図1に示した本実施の形態における通信システム100は、プリンタ102とデジカメ101の間でのデータ転送手順として、ダイレクトプリントプロトコル(DPP)を採用している。
【0063】
ダイレクトプリントプロトコル(DPP)は、図8に示すように、IEEE1394の初期ユニット空間(上記図4に示したユニット空間231)内にコマンド書き込みのためのコマンドレジスタ(command)261、コマンドに対する返答を書き込むためのレスポンスレジスタ(response)262、転送データを書き込むためのデータレジスタ(data)263、及び転送データ個別のデータフォーマットに対応したフォーマット情報を扱うためのフォーマットレジスタ(format)254を使用するようになされている。
尚、上記図8では、アドレスの記述を、上位の”FFFF”を省略している。
【0064】
コマンドレジスタ261は、”FFFF F000 0B00”hの固定アドレスに配置され、512バイトの空間を有する。
【0065】
本実施の形態では、コマンドレジスタ261は、デジカメ101(画像供給デバイス:image source device)が、プリンタ102(printer)に対して各種コマンド(以下、「コマンドフレーム」とも言う)を書き込むためのレジスタとして使用され、プリンタ102側に設けらる。
また、コマンドレジスタ261は、デジカメ101側にも設けられ、プリンタ102が、デジカメ101側のコマンドレジスタ261に対して各種コマンドを書き込むためのレジスタとして使用される。
【0066】
レスポンスレジスタ262は、”FFFF F000 0D00”hの固定アドレスに配置され、512バイトの空間を有する。
【0067】
本実施の形態では、レスポンスレジスタ262は、プリンタ102が、デジカメ101からコマンドレジスタ261に対して書き込まれた各種コマンドに対する返答(レスポンス、以下、「レスポンスフレーム」とも言う)を書き込むためのレジスタとして使用され、デジカメ102側に設けられる。
また、レスポンスレジスタ262は、プリンタ102側にも設けられ、デジカメ101が、プリンタ102側のレスポンスレジスタ262に対してレスポンスを書き込むためのレジスタとして使用される。
【0068】
データレジスタ263は、”FFFF F000 3000”hをディフォルトアドレスとしており、データレジスタ263のアドレスを定義するコマンド(Block Address Buffer Configコマンド)により、有効な任意のアドレスに設定できるようになされている。
また、データレジスタ263の空間は、データレジスタ263の空間を定義するコマンド(Block Size Buffer Configコマンド)により、予め決められた範囲で設定することができるようになされている。
【0069】
本実施の形態では、データレジスタ263は、デジカメ101とプリンタ102の間でデータの転送を行うためのレジスタとして使用され、プリンタ102にて印刷出力を行う場合には、デジカメ101により、プリンタ102にて印字出力する印字データ(print data、以下、「データフレーム」とも言う)が書き込まれる。
このときの印字データは、予め設定されたイメージフォーマットに従ったデータ形式で構成される。
【0070】
フォーマットレジスタ264は、後述する各データフォーマットに対応したレジスタ群から構成され、当該レジスタ群の各レジスタは、各データフォーマットに必要なフォーマット情報(以下、「フォーマットフレーム」とも言う)を設定するためのレジスタとして使用される。
【0071】
本実施の形態では、フォーマットレジスタ264は、デジカメ101が、プリンタ102に対するフォーマット情報を書き込むためのレジスタとして使用される。
【0072】
図9は、デジカメ101とプリンタ102の間での、上述したような、コマンドフレーム、レスポンスフレーム、データフレーム、及びフォーマットフレームの流れを示したものである。
【0073】
例えば、デジカメ101内のデータを、プリンタ102にて印字出力する場合、上記図9に示すように、先ず、デジカメ101は、プリンタ102に対するコマンドをコマンドフレームとして、プリンタ102側のコマンドレジスタ261bへ書き込む。
【0074】
次に、プリンタ102は、デジカメ101からコマンドレジスタ261bへ書き込まれたコマンドフレームに対する応答をレスポンスフレームとして、デジカメ101のレスポンスレジスタ262aへ書き込む。
このときのレスポンスフレームは、プリンタ102が、デジカメ101からプリンタ102側のコマンドレジスタ261bへ書き込まれたコマンドフレームに対する動作を、正しく実行したか否か、或いは当該コマンドが必要とする戻り値等を含む情報である。
【0075】
そして、デジカメ101は、プリンタ102にて印字出力するデータ(撮影画像等のデータ)をデータフレームとして、プリンタ102側のデータレジスタ263bへ書き込む。
また、デジカメ101は、プリンタ102での印字出力のフォーマット情報をフォーマットフレームとして、プリンタ102側のフォーマットレジスタ264へ書き込む。
【0076】
ここで、上述したようなコマンドフレーム、及びそれに対するレスポンスフレームと、データフレームとしては、図10に示すようなコマンド及びレスポンス271〜291と、コマンド292〜294とが挙げられる。
【0077】
例えば、上記図10に示すように、コマンドフレーム及びデータフレームの種類(以下、「コマンド分類」と言う)としては、ステイタス関係の”ステイタス”、プリンタ制御のための”コントロール”、データ転送の設定のための”ブロック/バッファ”、チャネル設定を行うための”チャネル”、転送方法に関する”転送”、フォーマット設定に関する”フォーマット”、ログインに関する”ログイン”、及びデータ転送に関する”データ”の8つに大きく分類される。
【0078】
コマンド分類が”ステイタス”であるコマンドフレーム及びレスポンスフレームとしては、プリンタのステイタスを得るための”GetStatus”、その応答”GetstatusResponse”(271)が含まれる。
【0079】
コマンド分類が”コントロール”であるコマンドフレーム及びレスポンスフレームとしては、プリンタのリセットを行うための”PrintReset”、その応答”PrintResetRrsponse”(272)と、印字を開始を指示するための”PrintStart”、その応答”PrintStartRespons”(273)と、印字を中止を指示するための”PrintStop”、その応答”PrintStopResponse”(274)と、給紙を指示するための”InsertPaper”、その応答”InsertPaperResponse”(275)と、排紙を指示するための”EjectPaper”、その応答”EjectPaperResponse”(276)と、イメージデータのコピーを開始するための”CopyStart”、その応答”CopyStartResponse”(277)と、イメージデータのコピーを終了するための”CopyEnd”、その応答”CopyEndResponse”(278)とが含まれる。
【0080】
コマンド分類が”ブロック/バッファ”であるコマンドフレーム及びレスポンスフレームとしては、ブロックのサイズを指定するための”BlockSize”、その応答”BlockSizeResponse”(279)と、ブロックのアドレスを指定するための”BlockAddress”、その応答”BlockAddressResponse”(280)と、空きブロックの数を取得するための”FreeBlock”及び”WriteBlocks”、その応答”FreeBlockResponse”及びWriteBlocksResponse”(281及び282)と、バッファの情報を指定するための”BufferConfig”、その応答”BufferConfiglockResponse”(283)と、バッファからのデータ取得開始を指定するための”SetBuffer”、その応答”SetBufferResponse(284)とを含んでいる。
【0081】
コマンド分類が”チャネル”であるコマンドフレーム及びレスポンスフレームとしては、チャネルをオープンするための”OpenChannel”、その応答”OpenChamelResponse”(285)と、チャネルをクローズするための”CloseChannel”、その応答”CloseChannelResponse”(286)とを含んでいる。
【0082】
コマンド分類が”転送”であるコマンドフレーム及びレスポンスフレームとしては、データ転送方法を指定するための”TransferMethod”、その応答”TransferMethodResponse”(287)を含んでいる。
【0083】
コマンド分類が”フォーマット”であるコマンドフレーム及びレスポンスフレームとしては、フォーマットを設定するための”SetFormat”、その応答”SetFormatResponse”(288)を含んでいる。
【0084】
コマンド分類が”ログイン”であるコマンドフレーム及びレスポンスフレームとしては、ログインを行うための”Login”、その応答”LoginResponse”(289)と、ログアウトを行うための”Logout”、その応答”LogoutResponse”(290)と、リコネクションを行うための”Reconnect”、その応答”ReconnectResponse”(291)とを含んでいる。
【0085】
上述のようなコマンド(”271〜292”に示すコマンド(command))に対応する値が、デジカメ101により、上記図9に示したプリンタ102のコマンドレジスタ261bへ書き込まれることで、プリンタ102では、当該コマンドに対応した動作が実行される。そして、プリンタ102により、当該コマンドに対する応答(当該コマンドに対応する値と同等の値)が、上記図9に示したデジカメ101のレスポンスレジスタ262aへ書き込まれることで、デジカメ101では、各コマンドの実行結果が認識される。
【0086】
また、コマンド分類が”データ”であるデータフレームとしては、データを書き込むための”WriteBlock”及び”WriteBuffer”(292及び293)と、データを読み込むための”PullBuffer”(294)とを含んでいる。
尚、コマンド分類が”データ”であるデータフレームに対しては、その応答はない。
【0087】
図11は、上記図9に示したプリンタ102側のフォーマットレジスタ264を具体的に示したものである。
この図11に示すように、フォーマットレジスタ264は、問い合わせのための読込専用レジスタ(INQUIRY)301と、設定及び情報取得のための読込/書込レジスタ(CONTROL/STATUS)302とを含んでいる。
【0088】
読込専用レジスタ(INQUIRY)301及び読込/書込レジスタ(CONTROL/STATUS)302は、同様の構成をしたレジスタグループからなる。
すなわち、読込専用レジスタ(INQUIRY)301は、レジスタ303a〜307aからなり、読込/書込レジスタ(CONTROL/STATUS)302は、レジスタ308と、レジスタ303a〜307aと同様のレジスタ303b〜307bとからなる。
【0089】
レジスタ303a,304a(303b,304b)は、共通レジスタグループ(print common register group)であり、レジスタ305a〜307a(305b〜307b)は、プリンタフォーマットレジスタグループ(print format register group)である。
【0090】
共通レジスタグループ303a,304a(303b,304b)は、全データフォーマットに共通な情報が格納されるレジスタのグループである。
共通レジスタグループ303a,304a(303b,304b)において、レジスタ303a(303b)は、全プリンタに共通なレジスタ(GLOBAL)であり、レジスタ304a(3034)は、プリンタ102に固有のレジスタ(LOCAL)である。
【0091】
プリンタフォーマットレジスタグループ305a〜307a(305b〜307b)は、各データフォーマットに独自の情報が格納されるレジスタのグループである。
プリンタフォーマットレジスタグループ305a〜307a(305b〜307b)は、レジスタ305a(305b)から、レジスタ307a(307b)までの、合計n個のレジスタ(format[1]〜format[n])からなる。
【0092】
レジスタ305a(305b)〜レジスタ307a(307b)のそれぞれは、後述するデータフォーマットに対応しており、実装するデータフォーマット毎に、1つのプリンタフォーマットレジスタグループ305a〜307a(305b〜307b)が割り当てられる。
また、レジスタ305a(305b)〜レジスタ307a(307b)のそれぞれのアドレスは、データフォーマットを設定するコマンドのレスポンスとして、デジカメ101に与えられる。
【0093】
図12は、上記図11に示した、読込/書込レジスタ(CONTROL/STATUS)302のレジスタ308を具体的に示したものである。
レジスタ308は、各32ビットの共通ステイタスレジスタ(common status register)311と、ベンダー固有ステイタスレジスタ(vendor specific status register)312とからなる。
【0094】
共通ステイタスレジスタ311は、各ベンダーのプリンタに共通なステータスを保持するためのレジスタであり、ベンダー固有ステイタスレジスタ312は、各ベンダーに固有に定義されるステータスを保持するためのレジスタである。
そして、共通ステイタスレジスタ311の後述するVフラグにより、ベンダー固有ステイタスレジスタ312ヘの拡張が定義される。
【0095】
上記Vフラグ(vendor status available flag)は、次のような情報(”0”,”1”,”error.warning”等で示す情報)によって、固有ステイタスレジスタ312ヘの拡張の定義を示す。
0:not available
1:available
error.warning:
error.warning status
(エラー、ワーニング等のステイタス)
paper state:paper condition
(紙に関する状態のステイタス)
print state:printer condition
(プリンタ102に関する状態のステイタス)
【0096】
図13は、上記図11に示した共通レジスタグループ303a,304a(303b,304b)のレジスタ303a(303b)を具体的に示したものである。
レジスタ303a(303b)には、ダイレクトプリントプロトコルを搭載するプリンタ(プリンタ102を含む)全てに共通な情報を保持される。すなわち、プリンタの種別による違いのない共通な情報が保持される。
【0097】
例えば、レジスタ303a(303b)は、上記図13に示すように、印字媒体の種類を示す情報が保持される領域(media−type)321、紙の大きさを示す情報が保持される領域(paper−size)322、ぺ一ジのマージン値を示す情報が保持される領域(page−margin)323、ぺ一ジの長さを示す情報が保持される領域(page−length)324、ぺ一ジのオフセットを示す情報が保持される領域(page−offset)325、プリンタのユニット情報が保持される領域(print−unit)326、プリンタのカラー種類を示す情報が保持される領域(color−type)327、及びデータのビット順序を示す情報が保持される領域(bit−order)328を含んでいる。
【0098】
図14は、上記図11に示した共通レジスタグループ303a,304a(303b,304b)のレジスタ304a(304b)を具体的に示したものである。
レジスタ304a(304b)には、ダイレクトプリントプロトコルを搭載するプリンタ(プリンタ102を含む)の個別の機種に独自の情報が保持される。すなわち、プリンタの種別により違いのある情報が保持される。
【0099】
例えば、レジスタ304a(304b)は、上記図14に示すように、プリンタ独自の印字媒体の種類を示す情報が保持される領域(paper)331、カラーマッチングの方法を示す情報が保持される領域(CMS)332、及びインクジェットプリンタのインク種別を示す情報が保持される領域(ink)333を含んでいる。
【0100】
図15は、上記図11に示したプリンタフォーマットレジスタグループ305a〜307a(305b〜307b)のレジスタ305a(305b)を具体的に示したものである。
レジスタ305a(305b)には、例えば、イメージデータフォーマット形式の1つであるEXIF(Exchangeable image file fomat)に対するフォーマット情報が保持される。
【0101】
この場合、レジスタ305a(305b)は、上記図15に示すように、入力のX方向の割合の情報が保持される領域(inX−rate)341、入力のY方向の割合の情報が保持される領域(inY−rate)342、出力のX方向の割合の情報が保持される領域(utX−rate)343、及び出力のY方向の割合の情報が保持される領域(utY−rate)344を含んでいる。
【0102】
プリンタ102は、レジスタ305a(305b)により与えられたEXIFフォーマットのイメージデータの内容に合わせて、X及びY方向での変倍を行って印字出力することが可能となる。
【0103】
図16は、上記図11に示したプリンタフォーマットレジスタグループ305a〜307a(305b〜307b)のレジスタ306a(306b)を具体的に示したものである。
レジスタ306a(306b)には、例えば、各ピクセルがR(red)、G(green)、B(blue)のデータで構成される”Raw RGB format”(以下、単に「RGBフォーマット」と言う)に対するフォーマット情報が保持される。
【0104】
この場合、レジスタ306a(306b)は、上記図16に示すように、入力のX方向の割合の情報が保持される領域(inX−rate)351、入力のY方向の割合の情報が保持される領域(inY−rate)352、出力のX方向の割合の情報が保持される領域(utX−rate)353、出力のY方向の割合の情報が保持される領域(utY−rate)354、XYの固定ピクセルサイズ示す情報が保持される領域(XY−size)355、ピクセルあたりのビット数を示す情報が保持される領域(bit−pixe)356、X方向のピクセル数を示す情報が保持される領域(X−size)357、Y方向のピクセル数を示す情報が保持される領域(Y−size)358、ビットあたりの色面を示す情報が保持される領域(plane)359、X方向の分解を示す情報が保持される領域(X−resolution)360、Y方向の分解を示す情報が保持される領域(Y−resolution)361、及びピクセルの種類を示す情報が保持される領域(pixel−format)362を含んでいる。
【0105】
プリンタ102は、レジスタ306a(306b)により与えられたRGBフォーマットのイメージデータの内容に合わせて、X及びY方向での変倍、解像度変換、ピクセルサイズの譲歩等に基づいて印字出力することが可能となる。
【0106】
ここで、上記図11に示したプリンタフォーマットレジスタグループ305a〜307a(305b〜307b)のレジスタ306a(306b)に続く他のレジスタについても、上述したレジスタ305a(305b)及びレジスタ306a(306b)と同様に、種々のフォーマット情報が保持されるが、ダイレクトプリントプリンタがサポートするイメージデータフォーマットとしては、例えば、図17に示すようなフォーマットが挙げられる。
本実施の形態では、プリンタ102は、上記図17に示すような種々のフォーマットのうちの何れかのフォーマットに従ったデータをサポートするようになされている。
【0107】
尚、ダイレクトプリントプリンタがサポートするイメージデータフォーマットとしては、上記図17に示したフォーマットに限られることはなく、オプションとして、他のフォーマットをサポートするようにしてもよい。
【0108】
図18は、プリンタ102へのフォーマット設定処理の流れを示したものである。
【0109】
先ず、デジカメ101(画像供給デバイス)は、INQUIRY用にコマンド”SetFormat”(上記図10参照)をコマンドフレームとして、プリンタ102のコマンドレジスタ261b(上記図9参照)へ書き込む(ステップS370)。
【0110】
次に、プリンタ102は、応答”SetFormatResponse”(上記図10参照)を、デジカメ101のレスポンスレジスタ262aへ書き込む(ステップS371)。
これにより、デジカメは、プリンタ102のフォーマットレジスタ264の読込専用レジスタ(INQUIRY)301(上記図11参照)のアドレスを認識する。
【0111】
次に、デジカメ101は、CONTROL/STATUS用にコマンド”SetFormat”(上記図10参照)をコマンドフレームとして、プリンタ102のコマンドレジスタ261b(上記図9参照)へ書き込む(ステップS372)。
【0112】
次に、プリンタ102は、応答”SetFormatResponse”(上記図10参照)を、デジカメ101のレスポンスレジスタ262aへ書き込む(ステップS373)。
これにより、デジカメは、プリンタ102のフォーマットレジスタ264の読込専用レジスタ(INQUIRY)301に続く、読込/書込レジスタ(CONTROL/STATUS)302のアドレスを認識する。
【0113】
次に、デジカメ101は、ステップS371でのプリンタ102からの応答により認識したプリンタ102のフォーマットレジスタ264の読込専用レジスタ(INQUIRY)301のアドレスを元に、その読込専用レジスタ(INQUIRY)301の内容から、プリンタ102がサポートしているフォーマットの設定項目を認識する(ステップS374−1〜ステップS374−m)。
すなわち、デジカメ101は、読込専用レジスタ(INQUIRY)301のプリンタフォーマットレジスタグループ305a〜307aの内容を順次読み取って、プリンタ102がサポートしているフォーマットの設定項目を認識する。
【0114】
そして、デジカメ101は、プリンタ102のフォーマットレジスタ264の読込/書込レジスタ(CONTROL/STATUS)302のプリンタフォーマットレジスタグループ305b〜307bの各レジスタの内容を読み取り(ステップS375−1〜ステップS375−n)、当該各レジスタに対して、所望するフォーマットの情報を書き込む(ステップS376−1〜ステップS376−n)。
【0115】
《PULL型データ転送》
上記図1に示した本実施の形態における通信システム100は、プリンタ102が、デジカメ101内のメモリからデータを読み出す際のデータ転送として、PULL型データ転送方法を採用している。
【0116】
PULL型データ転送方法において、デジカメ101とプリンタ102の間のコマンド及びレスポンスの出力動作は、FCPに準拠しており、例えば、図19に示すように、デジカメ101がプリンタ102のコマンドレジスタ261bに対してコマンドフレーム381を書き込む動作と、プリンタ102がデジカメ101のレスポンスレジスタ262aへレスポンスフレーム382を書き込む動作とによって実施される。
【0117】
一方、データフレーム383の書き込み動作については、コマンドフレーム381の書き込み動作及びへレスポンスフレーム382の書き込み動作とは異なり(FCPに準拠した動作とは異なり)、プリンタ102が、デジカメ101のデータレジスタ263aの内容(イメージデータ)をデータフレーム383として、プリンタ102のデータレジスタ263bヘリード・トランザクションを使用して読み取る一方向の動作だけで実施される。
【0118】
図20は、デジカメ101とプリンタ102が、DPPを使用してデータ転送を行う際の、上述したPULL型データ転送方式に従った動作を示したものである。
尚、以下の説明における、フォーマット設定のコマンド及びレスポンスの動作については、上記図18を用いて説明した通りであり、”Login”、”Logout”、”OpenChannel”、”CloseChannel”のコマンド及びレスポンスの動作、”BufferConfig”、”SetBuffer”のコマンド及びレスポンスの動作については、上述したPULL型データ転送方法での動作と同様であるため、ここではその詳細な説明は省略する。
【0119】
先ず、デジカメ101は、プリンタ102のバッファ領域についての情報(バッファサイズやバッファアドレス等)を問い合わせるための”BufferConfig”のコマンドをコマンドフレームとして、プリンタ102のコマンドレジスタ261bへ書き込む(ステップS391)。
【0120】
次に、プリンタ102は、コマンドレジスタ261bへ書き込まれた”BufferConfig”に対するレスポンスをレスポンスフレームとして、デジカメ101のレスポンスレジスタ262aへ書き込む(ステップS392)。
これにより、デジカメ101は、プリンタ102のバッファ領域についての情報(バッファサイズやバッファアドレス等)を認識する。
【0121】
次に、デジカメ101は、デジカメ101がプリンタ102側に読み出すべきバッファサイズ及びバッファアドレスを設定するための”BufferConfig”のコマンドをコマンドフレームとして、プリンタ102のコマンドレジスタ261bへ書き込む(ステップS393)。
【0122】
次に、プリンタ102は、コマンドレジスタ261bへ書き込まれた”BufferConfig”に対するレスポンスをレスポンスフレームとして、デジカメ101のレスポンスレジスタ262aへ書き込む(ステップS394)。
これにより、デジカメ101は、プリンタ102に対して、デジカメ101がプリンタ102側に読み出すべきバッファサイズ及びバッファアドレスの設定が完了したことを認識する。
【0123】
次に、デジカメ101は、”SetBuffer”のコマンドをコマンドフレームとして、プリンタ102のコマンドレジスタ261bへ書き込むことで、データ転送を開始可能であることをプリンタ102へ通知する(ステップS395)。
【0124】
次に、プリンタ102は、コマンドレジスタ261bへ書き込まれた”SetBuffer”に対するレスポンスをレスポンスフレームとして、デジカメ101のレスポンスレジスタ262aへ書き込む(ステップS396)。
これにより、デジカメ101は、プリンタ102側がデータ取り込みの準備ができたことを認識する。
【0125】
その後、デジカメ101は、プリンタ102に対して、データ転送を開始する。
すなわち、デジカメ101及びプリンタ102は、それぞれのデータレジスタ263a及び263bを用いて、先ず、プリンタ102がデジカメ101に対して、”PullBuffer”リクエスト(リード・トランザクションによる要求パケット)を発行し(ステップS397)、次に、デジカメ101が当該リクエストに対する応答パケットをプリンタ102に対して発行することでデータ転送を行う(ステップS398)。これにより、デジカメ101がプリンタ102に通知したバッファアドレスに対してのデータ転送(PULL型データ転送方式でのデータ転送)が行われることになる。
【0126】
上述のデータ転送の動作が繰り返し行われ(ステップS400)、プリンタ102が、”SetBuffer”レスポンスをレスポンスフレームとして、デジカメ101のレスポンスレジスタ262aへ書き込むことで(ステップS399)、デジカメ101は、全てのデータをプリンタ102に対して転送し終えたことを認識する。
【0127】
図21は、デジカメ101のデータレジスタ263aとそのバッファ411の関係を示したものである。
【0128】
上記図21に示すように、データレジスタ263aで設定された”Distination_Offset”の値に従って、バッファ411の読出開始アドレス”BufferAddress”が決定され、その読出開始アドレス”BufferAddress”により示される領域のデータを読み出しが、リード・トランザクションによって行われる。
【0129】
”Distination_Offset”の値は、毎回、データレジスタ263aの”DataLength”分インクリメントされるようになされている。このような”Distination_Offset”の値に従って、連続したバッファ411のアドレスに対して、繰り返しデータを読み出すことで、バッファ411内のデータを連続して読み出すことができる。
【0130】
上述のようにして、デジカメ101内のバッファ411に保持されているデータが、プリンタ102へと転送される。このようなデータ転送、すなわちPULL型データ転送方式に従ったデータ転送により、プリンタ102が、デジカメ101内のバッファ411に書き込まれたデータを直接アドレスを指定して読み出すことが可能となる。
【0131】
《画像データのファイル構成》
上記図21に示したようなバッファ411(デジカメ101内のメモリ)には、デジカメ101にて撮影して得られた撮影画像等の画像データが保持される。この画像データは、次のようなファイル形式に従った画像ファイルとして構成される。
本実施の形態では、特に、上述したように、デジカメ101がプリンタ102に対して、画像データを保持しているバッファ411の情報(バッファアドレスやバッファサイズ等のフォーマット情報)を通知するように構成しているため、プリンタ102は、その情報を元に、次のようにして、バッファ411内の画像データを任意に選択して取り込むことができる。
【0132】
尚、本実施の形態では、採用するファイル形式の一例として、EXIFファイル形式を挙げるが、これに限られることはなく、サムネイル画像を含んだファイル形式であればよい。
【0133】
図22は、EXIFファイル形式に従った画像ファイルの構成を示したものである。
ここでの画像ファイルは、”EXIFヘッダ”(421)、”TIFFデータ部”(422)、及び”JPEGデータ部”(423)から構成される。
【0134】
TIFFデータ部421は、JPEG画像の情報の保持領域(以下、「JPEG画像領域」と言う)422a、デジカメ101独自の情報の保持領域(以下、「デジカメ情報領域」と言う)422b、及びサムネイル画像の情報の保持領域(以下、「サムネイル画像領域」と言う)422cを含んでいる。
【0135】
JPEG画像領域422aには、実際に撮影して得られた撮影画像(本画像)がJPEG方式に従って圧縮された画像情報を含む情報が格納される。
【0136】
上述のようなEXIFファイル形式に従った画像ファイルは、そのファイル全体が、JPEG方式に従ったファイルの形態として見える点が特徴である。
【0137】
図23及び図24は、上記図22に示したEXIFヘッダ421及びTIFFデータ部422を具体的に示したものである。
【0138】
例えば、EXIFヘッダ421、JPEG画像領域422a、及びデジカメ情報領域422bに格納されている情報から、撮影日時のデータ及びサムネイル画像を取り出す場合、先ず、当該画像ファイルのアドレス”x000”hから始まるEXIFヘッダ421を参照すると、EXIFヘッダ421には、TIFFデータ部422の開始アドレス及び当該画像ファイル全体のサイズが格納されている。
ここでは、TIFFデータ部422の開始アドレスが”0100”hであり、当該画像ファイル全体のサイズが”1792バイト”であることから、アドレス”x100”hからTIFFデータ部422が始まり、当該画像ファイルの終わりのアドレスが”x7FF”hであることが認識できる。
【0139】
次に、アドレス”x100”hから始まるTIFFデータ部422を参照すると、そのJPEG画像領域422aには、独自情報の領域情報が格納されている。
ここでは、JPEG画像領域422aにおいて、最初の独自情報オフセットが”x100”hであることから、TIFFデータ部422の開始アドレスである”x100”hから”x100”h先の”x200”hからの領域に、実際にデジカメ101独自の情報が格納されていることを認識できる。すなわち、デジカメ情報領域422bの実際の開始アドレスが”x200”hであることを認識できる。
【0140】
次に、アドレス”x200”h”からのデジカメ情報領域422bを参照すると、デジカメ情報領域422bには、撮影時間のタグが格納されている。
ここでは、撮影時間のタグを検索することで、オフセット値の”x1C4”hが得られるため、TIFFデータ部422の開始アドレスである”x100”hから”x1C4”h先の”x2C4”hからの領域に、デジカメ101での撮影日時の情報が格納されていることを認識できる。これにより、撮影日時情報として、「1997年7月6目12時36分10秒」を取得することができる。
【0141】
上述のようにして、撮影日時の情報が得られると、次に、サムネイル画像を得るために、アドレス”x100”hから始まるTIFFデータ部422を参照すると、そのJPEG画像領域422aには、サムネイル画像の領域を示すオフセット情報が格納されている。
ここでは、サムネイル画像の領域を示すオフセットが”x200”hであることから、TIFFデータ部422の開始アドレスである”x100”hから”x200”h先の”x300”hからの領域に、実際にサムネイル画像の情報が格納されていることを認識できる。すなわち、サムネイル画像領域422cの実際の開始アドレスが”x300”hであることを認識できる。
【0142】
次に、アドレス”x200”hからのサムネイル画像領域422cを参照すると、サムネイル画像領域422cには、サムネイルオフセットのタグが格納されている。
ここでは、サムネイルオフセットのタグを検索することで、オフセット値の”x220”hが得られるため、TIFFデータ部422の開始アドレスである”x100”hから”x220”h先の”x320”hからの領域に、サムネイル画像が格納されていることを認識できる。
【0143】
また、アドレス”x200”hからのサムネイル画像領域422cを参照すると、サムネイル画像領域422cには、サムネイルサイズのタグが格納されている。
ここでは、サムネイルサイズのタグを検索することで、バイト数”4800”バイトが得られるため、サムネイル画像が、”x320”hからバイト数”4800”格納されていることを認識できる。これにより、バイト数”4800”分のサムネイル画像を取得することができる。
尚、ここでのサムネイル画像は、TIFF形式に従って、本画像を80×60ドットに縮小した非圧縮データから構成されたものとする。
【0144】
上述のようにして、画像ファイルのヘッダや各種情報を参照することで、当該画像ファイル内のサムネイル画像やその撮影日時の情報を取得することができる。
【0145】
図25は、デジカメ101内のバッファ411に、上記図22に示したような画像ファイルが複数保持された状態(メモリマップ)を示したものである。
【0146】
デジカメ101では、ディレクトリ情報が格納されるアドレス”0000”h〜”07FF”hの領域(以下、「ディレクトリ領域」と言う)431に続いて、複数の画像ファイル432(1)〜432(n)が保持されるようになされている。
【0147】
ディレクトリ領域431には、それぞれの画像ファイル432(1)〜432(n)の開始アドレスやそのサイズを示す情報が格納される。これにより、画像ファイル432(1)〜432(n)の中から所望する画像ファイル(例えば、画像ファイル432(3))を抽出する際には、ディレクトリ領域431の情報から得られる画像ファイル432(3)の開始アドレス433により、画像ファイル432(3)を抽出することができる。
【0148】
具体的には例えば、上記図25では、画像ファイル432(1)の開始アドレスが”0800”h、画像ファイル432(2)の開始アドレスが”1000”h、画像ファイル432(2)の開始アドレスが”1800”h、・・・となっている。すなわち、それぞれの画像ファイル432(1),432(2),432(3),・・・の開始アドレスは、”0800”hおきに設定されており、これを示す情報(マップ情報)が、ディレクトリ領域431に格納される。
したがって、n番目の画像ファイル432(n)を抽出したい場合には、”0800”hのn倍したアドレスを開始アドレスとすればよい。
【0149】
図26は、上記図25に示したような、デジカメ101内のメモリ(バッファ411)に保持されている複数の画像ファイルから任意の画像ファイルのサムネイル画像及びその撮影日時の情報を読み出す際の動作を示したものである。
ここでは、説明の簡単のために、画像ファイル432(1)〜432(n)のうちの画像ファイル432(3)を抽出するものとする。
【0150】
先ず、ディレクトリ領域431内の情報を読み出す(ステップS441)。
次に、ディレクトリ領域431内の情報に基づいて、所望する画像ファイル432(3)が3番目の画像ファイルであることから、”0800”hの3倍した”1800”hを、画像ファイル432(3)の開始アドレスとして算出する(ステップS442)。
【0151】
次に、画像ファイル432(3)の開始アドレス”1800”hに基づいて、画像ファイル432(3)のEXIFヘッダ421内の情報(上記図23参照)を読み出す(ステップS443)。
【0152】
次に、EXIFヘッダ421内の情報により、上述したようにして、画像ファイル432(3)のJPEG画像領域422aの開始アドレスを算出し、そのJPEG画像領域422a内の情報により、デジカメ情報領域422b及びサムネイル画像領域422cの開始アドレスを算出する(ステップS444)。
【0153】
そして、サムネイル画像領域422cの開始アドレスからの情報により、画像ファイル432(3)内のサムネイル画像を取得すると共に、その撮影日時の情報を、デジカメ情報領域422bの開始アドレスからの情報により取得する(ステップS445)。
【0154】
図27は、上述したようにして、プリンタ102が、デジカメ101から通知されたバッファ411のアドレス及びサイズに基づいて、バッファ411内の画像ファイルからサムネイル画像のデータのみを読み出す様子を示したものである。
【0155】
上記図27では、上述したようにして、ディレクトリ領域431の情報を元に、複数の画像ファイル432(1)〜432(n)のサムネイル画像データの開始アドレスを取得した結果、画像ファイル432(1)のサムネイル画像データの開始アドレス451(1)は”0B20”h、画像ファイル432(2)のサムネイル画像データの開始アドレス451(2)は”1320”h、画像ファイル432(3)のサムネイル画像データの開始アドレス451(3)は”1B20”h、・・・となっている。
すなわち、n番目の画像ファイル432(n)のサムネイル画像データの開始アドレス451(n)は、
n×0800h+0320h
なる式により算出することができる。
【0156】
上述のように、複数の画像ファイル432(1)〜432(n)のサムネイル画像データを、そのデータの開始アドレスにより、個々に読み出すことができるため、プリンタ102が独自に必要なサムネイル画像を、デジカメ101内に保持されている画像ファイルから取り出すことができる。
【0157】
図28は、上述のような構成によって、プリンタ102内に取り込まれたサムネイル画像を、プリンタ102にて印字出力(インデックスプリント)する際の、サムネイル画像の並びの一例を示したものである。
【0158】
上記図28に示すように、プリンタ102は、デジカメ101から読み出したサムネイル画像を紙面上に並べてインデックスプリントするためのデータ形式に、当該サムネイル画像データを整えてから(画像の並び替え処理)、当該サムネイル画像データのインデックスプリントを行う。
【0159】
上記図28では、1枚目〜6枚目のサムネイル画像(No.1〜No.6)を、左上からX方向に順に並べ、次の7枚目〜12枚目のサムネイル画像(No.7〜No.12)を、Y方向にひとつずらして、左上からX方向に順に並べる、という並び順としている。
【0160】
上述のようなサムネイル画像の並び替え処理は、デジカメ101からサムネイル画像データを読み出したプリンタ102側で行う。すなわち、プリンタ102は、デジカメ101から読み出したサムネイル画像データを、1枚のインデックスデータとなるように、画像の並び替えを行う。これにより、デジカメ101内の保持されているサムネイル画像が、1枚のインデックスデータとして、プリンタ102から印刷出力されることになる。
【0161】
上述のような画像の並び替え処理及びインデックスプリント等の処理を行うプリンタ102は、例えば、図29に示すような構成としている。
すなわち、プリンタ102は、上記図29に示すように、プリンタ102全体の動作制御を司るCPU461と、サムネイル画像データの加工やデータ転送等の処理に使用されるRAM462と、CPU461での動作制御のための処理プログラムや各種データ等が格納されたROM463と、1394インターフェイスを実現するための物理層コントローラである1394PHY465と、1394インターフェイスを実現するためのリンク層コントローラである1394LINK464と、プリンタユニット(図示せず)の動作制御を司るプリンタコントローラ468と、プリンタユニットに組み込まれたヘッドユニット(Head)466と、プリンタユニットのモータユニット(Motor)467とを備えており、これらの各構成部は、バス469により互いに通信可能なように接続されている。
【0162】
このような構成によって、プリンタ102は、デジカメ101から1394インターフェイス(1394PHY465及び1394LINK464)を介して取り込んだ画像に対して、CPU461により、ROM463及びRAM462を使用した加工処理等を施し、その処理後の画像を、プリンタコントローラ468により、プリンタユニットのモータ467及びヘッド466を駆動することで、印刷出力するようになされている。
【0163】
図30は、上述したようなインデックスプリントを行う際の、プリンタ102の動作を示したものである。
【0164】
先ず、デジカメ101内に保持されている画像ファイルのカウンタLを初期化する(ステップS471)。
このカウンタLは、上記図25及び27に示したような、画像ファイル451(1),451(2),451(3),・・・,451(n)の番号を示すものであり、初期値としては、”1”を設定する。
【0165】
次に、デジカメ101から通知されたバッファ411のアドレス及びサイズの情報(デジカメ101内に保持されている画像データのフォーマット情報)に基づいて、カウンタLにより示される画像ファイル451(L)のサムネイル画像を、上記図26に示したフローチャートに従った処理により、デジカメ101から取得する(ステップS472)。
【0166】
次に、ステップS472にて取得したサムネイル画像を、上記図28に示したような並びに従って並べ替え、インデックスプリント用のデータをRAM462上へ形成する(ステップS473)。
【0167】
次に、次の画像ファイル451(L+1)について、ステップS472及びS473の処理を実行するために、カウンタLをインクリメントする(ステップS474)。
【0168】
次に、ステップS474でのインクリメントの結果、カウンタLの値が、デジカメ101内に保持されている画像ファイルの総数(n)を超えたか否かを判別する(ステップS475)。
【0169】
ステップS475の判別の結果、”L>n”でない場合、すなわち未だ処理していない画像ファイルがデジカメ101内に存在する場合、ステップS472へと戻り、以降の処理ステップを繰り返し実行する。
【0170】
ステップS475の判別の結果、”L>n”である場合、すなわちデジカメ101内に存在する全ての画像ファイル451(1),451(2),451(3),・・・,451(n)からサムネイル画像を読み出し、その並び替えを終えた場合、RAM462上へ形成したインデックスプリント用のデータを、印刷出力する。
【0171】
尚、本発明の目的は、上述した本実施の形態のホスト及び端末の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読みだして実行することによっても、達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が本実施の形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することとなる。
プログラムコードを供給するための記憶媒体としては、ROM、フロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード等を用いることができる。
また、コンピュータが読みだしたプログラムコードを実行することにより、本実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS等が実際の処理の一部又は全部を行い、その処理によって本実施の形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された拡張機能ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって本実施の形態の機能が実現される場合も含まれることは言うまでもない。
【0172】
【発明の効果】
以上説明したように本発明では、他装置(ディジタルカメラ等)から通知された、画像ファイルのアドレス情報及び画像ファイルに含まれる情報(画像及びそのサムネイル画像等)のアドレス情報に基づいて、当該他装置内の画像ファイルに含まれる情報を取り込むように構成した。これにより、他装置内に保持されている画像ファイルに含まれる情報を任意に取り込むことができる。例えば、他装置から取り込んだ複数の画像ファイルに含まれる情報を、任意の順序に並べ替え、それを一括出力(印刷出力等)するように構成した場合、他装置内に保持されている画像ファイルに含まれる情報を、容易に認識することができ、所望する画像ファイルに含まれる情報を効率的に選択することもできる。
【0173】
具体的には例えば、ディジタルカメラ(第1のデバイス)とプリンタ(第2のデバイス)の間における画像データのやり取りにおいて、ディジタルカメラは、その内部メモリに保持している画像ファイル(撮影画像、当該撮影画像を縮小したサムネイル画像等を含む)のフォーマット情報を、プリンタへ通知する。これにより、プリンタは、PULL型データ転送方式等を用いて、ディジタルカメラの内部メモリに保持されている画像ファイルから、サムネイル画像のみをダイレクトに取り込むことができる。したがって、データ転送におけるデバイス間のネゴシエーション処理を簡略化することが可能となる。
また、プリンタにおいて、ディジタルカメラから取り込んだサムネイル画像を編集して、インデックスプリント(一括インデックス画像の印刷)を行うように構成した場合、ディジタルカメラ内の保持されている多数の撮影画像の中から所望する画像を容易に選択することができる。したがって、操作性の向上が可能となる。
【図面の簡単な説明】
【図1】本発明を適用した通信システムの構成を示すブロック図である。
【図2】上記通信システムでの通信手段として使用する1394シリアルバスを規定している「IEEE1394」の概要の説明において、当該1394シリアルバスを用いて構成されるネットワークシステムを説明するための図である。
【図3】上記1394シリアルバスの構成を説明するための図である。
【図4】上記1394シリアルバスにおけるアドレス空間を説明するための図である。
【図5】上記1394シリアルバスのケーブルの構成を説明するための図である。
【図6】上記1394シリアルバスによるデータ転送(DS−Link符号化方式によるデータ転送)を説明するための図である。
【図7】上記1394シリアルバスのPlug&Play機能を説明するための図である。
【図8】上記通信システムにおいて、画像供給デバイス(ディジタルカメラ)とプリンタの間でデータ転送を行うために用いられるレジスタを説明するための図である。
【図9】上記画像供給デバイス(ディジタルカメラ)とプリンタの間でのデータの流れを説明するための図である。
【図10】上記画像供給デバイス(ディジタルカメラ)とプリンタの間でのコマンド及びレスポンスの一例を説明するための図である。
【図11】上記プリンタのフォーマットレジスタを説明するための図である。
【図12】上記フォーマットレジスタの読込/書込レジスタ(CONTROL/STATUS)を説明するための図である。
【図13】上記フォーマットレジスタの共通レジスタグループ(GLOBAL)を説明するための図である。
【図14】上記フォーマットレジスタの共通レジスタグループ(LOCAL)を説明するための図である。
【図15】上記フォーマットレジスタのプリンタフォーマットレジスタグループ(format[1])を説明するための図である。
【図16】上記フォーマットレジスタのプリンタフォーマットレジスタグループ(format[2])を説明するための図である。
【図17】上記プリンタで対応可能なフォーマット形式の一例を説明するための図である。
【図18】上記プリンタへのフォーマット設定処理を説明するための図である。
【図19】上記画像供給デバイス(ディジタルカメラ)とプリンタの間でのデータの流れ(PULL型データ転送方式に従ったデータの流れ)を説明するための図である。
【図20】上記画像供給デバイス(ディジタルカメラ)とプリンタの間でのコマンド及びレスポンスの動作(PULL型データ転送方式に従った動作)を説明するための図である。
【図21】上記画像供給デバイス(ディジタルカメラ)のデータレジスタとそのバッファの関係を説明するための図である。
【図22】上記バッファ内に保持される画像ファイルの構成を説明するための図である。
【図23】上記画像ファイルのEXIFヘッダ及びTIFFデータ部(JPEG画像領域及びデジカメ情報領域422b)を説明するための図である。
【図24】上記画像ファイルのTIFFデータ部(サムネイル画像領域422c)を説明するための図である。
【図25】複数の上記画像ファイルが上記画像供給デバイス(ディジタルカメラ)へ保持された状態を説明するための図である。
【図26】上記画像ファイルからサムネイル画像を抽出する処理を説明するための図である。
【図27】上記サムネイル画像を抽出する処理において使用される画像ファイルの開始アドレスを説明するための図である。
【図28】上記プリンタにおいて、上記サムネイル画像を抽出する処理により取得した複数のサムネイル画像をインデックスプリントするための画像の並び替えの一例を説明するための図である。
【図29】上記プリンタの構成を示すブロック図である。
【図30】上記プリンタの動作を示すフローチャートである。
【符号の説明】
100 通信システム
101 画像供給デバイス(ディジタルカメラ)
102 プリンタ
461 CPU
462 RAM
463 ROM
464 1394インターフェイスを実現するための物理層コントローラ(1394PHY)
465 1394インターフェイスを実現するためのリンク層コントローラ(1394LINK)
466 プリンタユニットに組み込まれたヘッドユニット(Head)
467 プリンタユニットのモータユニット(Motor)
468 プリンタコントローラ
469 バス

Claims (12)

  1. 少なくとも画像と上記画像のサムネイル画像とを有する画像ファイルを保持する他装置内から、通信手段を介して上記画像ファイルに含まれる情報を取り込む通信装置であって、上記他装置から、上記画像ファイルを格納する記憶領域における上記画像ファイルのアドレス情報と、上記画像ファイルにおける上記情報のアドレス情報とを取得し、取得した上記画像ファイルのアドレス情報及び上記情報のアドレス情報に基づき、上記他装置から取り込む情報の記憶領域を直接指定して取り込み処理を行なう情報取込手段を備えることを特徴とする通信装置。
  2. 上記情報取込手段は、上記情報のアドレス情報として上記サムネイル画像のアドレス情報を取得し、上記画像ファイルのアドレス情報及び上記サムネイル画像のアドレス情報を用いて上記サムネイル画像を取り込むことを特徴とする請求項1記載の通信装置。
  3. 上記情報取込手段により取り込まれた複数の情報を任意の順序で配列して一括出力する出力手段を備えることを特徴とする請求項1記載の通信装置。
  4. 上記出力手段は、少なくとも印刷出力機能を有することを特徴とする請求項3記載の通信装置。
  5. 上記他装置は、ディジタルカメラであることを特徴とする請求項1記載の通信装置。
  6. 他装置内に保持されている画像を取り込み、取り込んだ上記画像を出力するための画像処理を行なう画像処理装置であって、請求項1〜の何れか1項に記載の通信装置の機能を有することを特徴とする画像処理装置。
  7. 少なくとも画像と上記画像のサムネイル画像とを有する画像ファイルを保持する他装置内から、通信手段を介して上記画像ファイルに含まれる情報を取り込む通信方法であって、上記他装置から、上記画像ファイルを格納する記憶領域における上記画像ファイルのアドレス情報と、上記画像ファイルにおける上記情報のアドレス情報とを取得し、取得した上記画像ファイルのアドレス情報及び上記情報のアドレス情報に基づき、上記他装置から取り込む情報の記憶領域を直接指定して取り込み処理を行なう情報取込工程を備えることを特徴とする通信方法。
  8. 上記情報取込工程は、上記情報のアドレス情報として上記サムネイル画像のアドレス情報を取得し、上記画像ファイルのアドレス情報及び上記サムネイル画像のアドレス情報を用いて上記サムネイル画像を取り込むことを特徴とする請求項7記載の通信方法。
  9. 上記情報取込工程により取り込まれた複数の情報を任意の順序で配列して一括出力する出力工程を備えることを特徴とする請求項7記載の通信方法。
  10. 上記出力工程は、少なくとも印刷出力することを特徴とする請求項9記載の通信方法。
  11. 上記他装置は、ディジタルカメラであることを特徴とする請求項7記載の通信方法。
  12. 他装置内に保持されている画像を取り込み、取り込んだ上記画像を出力するための画像処理を行なう画像処理方法であって、請求項7〜11の何れか1項に記載の通信方法の工程を有することを特徴とする画像処理方法。
JP2000002959A 2000-01-11 2000-01-11 通信装置、画像処理装置、通信方法、及び画像処理方法 Expired - Fee Related JP4343372B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000002959A JP4343372B2 (ja) 2000-01-11 2000-01-11 通信装置、画像処理装置、通信方法、及び画像処理方法
US09/750,714 US6711637B2 (en) 2000-01-11 2001-01-02 Communication apparatus, image processing apparatus, communication system, communication method, image processing method and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000002959A JP4343372B2 (ja) 2000-01-11 2000-01-11 通信装置、画像処理装置、通信方法、及び画像処理方法

Publications (2)

Publication Number Publication Date
JP2001195208A JP2001195208A (ja) 2001-07-19
JP4343372B2 true JP4343372B2 (ja) 2009-10-14

Family

ID=18531988

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000002959A Expired - Fee Related JP4343372B2 (ja) 2000-01-11 2000-01-11 通信装置、画像処理装置、通信方法、及び画像処理方法

Country Status (1)

Country Link
JP (1) JP4343372B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4136817B2 (ja) * 2002-08-05 2008-08-20 キヤノン株式会社 デジタルカメラ及びプリンタ
CN100407124C (zh) 2003-03-28 2008-07-30 松下电器产业株式会社 印刷内容输出装置、印刷装置及印刷***
US7471402B2 (en) 2003-03-28 2008-12-30 Panasonic Corporation Printing apparatus and printing method
JP5046542B2 (ja) 2006-03-31 2012-10-10 キヤノン株式会社 データ処理装置及びその方法、並びに、情報処理装置及びその方法
JP2008252289A (ja) 2007-03-29 2008-10-16 Brother Ind Ltd 画像形成システム、データ処理装置、プログラム、及び画像形成装置

Also Published As

Publication number Publication date
JP2001195208A (ja) 2001-07-19

Similar Documents

Publication Publication Date Title
US6711637B2 (en) Communication apparatus, image processing apparatus, communication system, communication method, image processing method and storage medium
US7062579B2 (en) Data transmission apparatus, system and method, and image processing apparatus
JPH10226139A (ja) 画像形成システム及び画像形成装置及び媒体
JPH10187583A (ja) データ通信装置及び方法
US9001236B2 (en) Image processing apparatus, method, and recording medium for extracting images from a composite image file
JP2001016539A (ja) 画像入力装置およびその制御方法、情報処理装置およびその方法、印刷システム、並びに、記録媒体
JPH10285322A (ja) 画像処理装置及び画像処理システム
US7616839B2 (en) Image data transfer system, method of generating image data file, and computer program
US20040012805A1 (en) Image storage apparatus, external image processing apparatus, control method for image storage apparatus and control method for external image processing apparatus
JP4343372B2 (ja) 通信装置、画像処理装置、通信方法、及び画像処理方法
JP4072215B2 (ja) 画像処理装置及びその制御方法、画像処理システム
JPH10285240A (ja) データ通信装置及び方法、データ通信システム及び記憶媒体
JP2001197406A (ja) 画像処理装置、プリンタ、画像処理システム、プリントシステム、画像処理方法、及び記憶媒体
JP3774540B2 (ja) データ転送方法及び画像処理システムと装置
JP2002073306A (ja) プリンタシステム、プリンタ制御装置、方法、及び記憶媒体
JP2003078844A (ja) 画像データ記憶デバイス、印刷デバイス、画像データ転送システム、画像データ転送方法、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム
JPH10229538A (ja) データ通信システム、プリントシステム及びデータ通信装置
JP3862349B2 (ja) 情報処理システム、画像処理システムおよびそれらの方法、並びに、情報処理装置およびコンピュータ可読メモリ
JP2002064511A (ja) データ通信システム、電子機器及びそれらの制御方法
JP2004030109A (ja) 情報処理装置、情報処理方法及びそのプログラムを記憶した記憶媒体
JP2001147790A (ja) 情報処理装置および方法および記憶媒体
JP4073027B2 (ja) 撮像装置及び画像出力装置
JP2000261468A (ja) ネットワーク接続装置及びネットワーク接続方法
JP3919718B2 (ja) 画像形成システム及び画像形成装置
JP4208934B2 (ja) 撮像装置及びその制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060919

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090331

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090525

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: 20090707

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090709

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120717

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120717

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130717

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees