JP4343372B2 - Communication apparatus, image processing apparatus, communication method, and image processing method - Google Patents

Communication apparatus, image processing apparatus, communication method, and image processing method 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
Japanese (ja)
Other versions
JP2001195208A (en
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/en
Priority to US09/750,714 priority patent/US6711637B2/en
Publication of JP2001195208A publication Critical patent/JP2001195208A/en
Application granted granted Critical
Publication of JP4343372B2 publication Critical patent/JP4343372B2/en
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 バス
[0001]
BACKGROUND OF THE INVENTION
For example, the present invention performs data transfer between one-to-one devices via a serial interface as defined in IEEE 1394, for example. Suitable for use in It is about.
[0002]
[Prior art]
Conventionally, for example, as a method of printing a photographed image obtained by photographing with a digital camera (hereinafter simply referred to as “digital camera”) with a printer, there is a method using a personal computer (hereinafter simply referred to as personal computer).
In this method, first, a personal computer and a digital camera are connected by a serial interface (RS-232C or the like), and a personal computer and a printer are connected by a parallel interface (Centronics or the like). Next, the captured image is transferred to the personal computer by transferring the captured image from the digital camera to the personal computer. In the personal computer, the captured image captured from the digital camera is processed in accordance with a desired printing format by using any application software that is activated on the personal computer. After that, the processed photographed image is transferred from the personal computer to the printer, and the photographed image is printed out by the printer.
[0003]
However, the above-described method for outputting a captured image using a personal computer is based on the assumption that the user already has a personal computer. For this reason, users who do not have a personal computer (such as users who do not have a personal computer but have purchased a digital camera for the first time) will not be able to prepare a personal computer (such as a new purchase). It cannot be printed.
[0004]
In view of this, a system in the form of a sublimation video printer (hereinafter referred to as “direct print system”) has been proposed in which a photographed image taken with a digital camera can be directly printed by a printer without using a personal computer.
In this direct print system, a memory such as IrTran-P, compact flash, smart media, etc., which directly connects a digital camera and a printer using a standard serial interface without using a personal computer or uses infrared rays, which is a standard, is used. A photographed image is transferred from a digital camera to a printer using a card interface.
[0005]
By the way, in the direct print system as described above, when a user selects a photographed image to be printed by a printer from among various photographed images obtained by photographing with a digital camera, the user connects to the video output terminal of the printer at home. By connecting a television for use, a menu screen on which thumbnail images corresponding to various photographed images (an image for confirming the photographed image obtained by reducing the actual image size of the photographed image to about 80 × 60 dots) is arranged ( An index screen) is displayed, and a desired photographed image is selected from the menu screen. In this way, displaying a menu screen for confirming and selecting a captured image on a home television can be achieved in terms of cost and space by providing a display that can display the menu screen on the printer itself. This is because it becomes a problem.
[0006]
However, a commonly used home television has a coarse resolution of about 720 × 480 dots compared to a monitor or the like used for a personal computer. For this reason, it is difficult to confirm the photographed image with the thumbnail image on the menu screen of the home television. Also, if you try to increase the number of shot images that can be checked at once on the menu screen, that is, if you try to increase the number of thumbnail images that can be displayed on the menu screen at once, it is necessary to further reduce the thumbnail image size accordingly. Further, it is difficult to confirm the photographed image.
For this reason, the number of captured images that can be confirmed at a time on the menu screen is limited.
[0007]
Therefore, it is conceivable to display the menu screen on the liquid crystal display unit provided in the digital camera, but the screen size of the liquid crystal display unit of the digital camera is small and the resolution is low. This limits the number of photographed images that can be confirmed.
[0008]
The above-mentioned problem, that is, the problem that the number of photographed images that can be confirmed at one time is limited, is especially the case in recent years, as the memory size built in the digital camera increases, the photographed images that can be stored in the digital camera. This is very inconvenient for the fact that the number of photographed images that can be confirmed at a time is increased, so that the photographed images can be confirmed and selected efficiently.
[0009]
Therefore, instead of displaying a menu screen for confirming and selecting a photographed image on a liquid crystal display unit of a home television or digital camera, a list of thumbnail images of the photographed image is printed out (index print) by a printer. Is provided.
As a result, the user can confirm all of the captured images stored in the digital camera, and can select a captured image to be actually printed from among them.
[0010]
Specifically, first, in a digital camera, a captured image is held as an image file together with a thumbnail image corresponding to the image file format such as EXIF or CIFF. In order to extract only all thumbnail images from the image file and print out a list of thumbnail images, the following first to fourth processes are executed.
First process: First, all the image files held in the digital camera are transferred to the printer.
Second process: Next, in the printer, only thumbnail images are extracted from the image file.
Third process: Next, a list image of thumbnail images extracted in the second process is generated.
Fourth process: The list image generated in the third process is printed out.
[0011]
[Problems to be solved by the invention]
However, in order to confirm and select the captured images stored in the digital camera, all the captured images stored in the digital camera are converted into thumbnail images corresponding to them by the first to fourth processes as described above. In the method of printing out (index printing) with a printer as a list, the data transfer performed between the digital camera and the printer, the image processing performed by the printer (processing for generating a thumbnail image list image, etc.) and the load of the printing processing are large. There was a problem that a great deal of time was consumed.
[0012]
Therefore, the present invention is made to eliminate the above-described drawbacks, and information existing in the first device can be easily and efficiently confirmed, and desired information can be confirmed from the information. Can be selected easily and efficiently like The purpose is to do.
[0013]
[Means for Solving the Problems]
Under such purpose, The present invention captures information contained in the image file via communication means from within another device that holds an image file having at least an image and a thumbnail image of the image. A communication device, The address information of the image file in the storage area for storing the image file and the address information of the information in the image file are acquired from the other device, and the acquired address information of the image file and the address information of the information are acquired. Based on the above, specify the storage area of the information to be imported from the other device directly. It is characterized by comprising information fetching means for performing fetching processing.
[0033]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0034]
The present invention is applied to, for example, a communication system 100 as shown in FIG.
The communication system 100 is a direct print system that can print out a captured image held in a digital camera 101 from a printer 102 without using a personal computer (PC). As shown in FIG. 2, a digital camera (digital camera) 101 as an image input device (first device) and a printer 102 as an image output device (second device) are described later as a 1394 serial bus 103 as communication means. It is set as the structure connected so that communication was possible.
[0035]
Here, the communication means (interface) in the direct print system is not limited to the 1394 serial bus, and other various interfaces can be applied. In the present embodiment, the 1394 serial bus 103 is used as an example. Therefore, first, an outline of “IEEE 1394” that defines the 1394 serial bus 103 will be described, and subsequently, details of the configuration and operation of the communication system 100 in the present embodiment will be described. .
[0036]
<< Overview of IEEE 1394 Technology >>
In recent years, with the advent of home digital VTRs and DVDs, real-time and high-information-content data transfer support is required, such as video data and audio data transfer. For this reason, video data, audio data, etc. can be transferred in real time and transferred to a personal computer (PC) or transferred to other digital devices. A new interface is required. An interface developed from such a viewpoint is IEEE 1394-1995 (High Performance Serial Bus) (hereinafter referred to as “1394 serial bus”).
[0037]
FIG. 2 shows an example of a network system configured using a 1394 serial bus.
This network system includes digital devices (hereinafter simply referred to as “devices”) A, B, C, D, E, F, G, and H. Between A-B, A-C, and B-D , D-E, C-F, CG, and C-H, respectively, connected by a 1394 serial bus twisted pair cable (hereinafter referred to as "1394 serial bus cable") It is said.
As the devices A to H, for example, a PC, a digital VTR, a DVD, a digital camera, a hard disk, a monitor, etc. can be applied.
[0038]
As a connection method between the devices A, B, C, D, E, F, G, and H, a method in which a daisy chain method and a node branch method can be mixed is used, and a connection with a high degree of freedom is possible. It has become. In addition, each device A, B, C, D, E, F, G, H has a unique ID, and by recognizing each ID, the range of devices connected by a 1394 serial bus cable 1 constitutes one network. That is, the devices A, B, C, D, E, F, G, and H are simply connected sequentially with one 1394 serial bus cable, and the devices A, B, C, D, E, F, G and H play a role of relay and constitute one network as a whole.
[0039]
In addition, the 1394 serial bus has a plug & play function that automatically recognizes its own device and recognizes its connection status when the 1394 serial bus cable is connected to the device.
With this Plug & Play function, for example, in the network system of FIG. 2, when an arbitrary device X is deleted or newly added, the bus configuration is automatically reset so that the network configuration up to that point is reset. As a result, a new network is reconstructed. In addition, the network configuration at that time is always set and recognized.
[0040]
The data transfer rate on the 1394 serial bus is 100/200/400 Mbps, and the device having the higher transfer rate supports the device having the lower transfer rate, thereby achieving compatibility.
[0041]
As a data transfer mode using the 1394 serial bus, asynchronous data such as control signals (asynchronous data, hereinafter simply referred to as “async data”) and asynchronous data such as real-time video data and audio data are transferred. There is an isochronous transfer mode for transferring (Isochronous data, hereinafter simply referred to as “Iso data”).
[0042]
Asynchronous data and Iso data are mixed in a cycle while giving priority to the transfer of Iso data following the transfer of the cycle start packet (CSP) indicating the start of the cycle in each cycle (usually 1 cycle 125 μS). Forwarded.
[0043]
FIG. 3 shows the components of the 1394 serial bus.
As shown in FIG. 3, the 1394 serial bus has a layer (hierarchy) structure as a whole from the cable 213 of the 1394 serial bus to the hardware 200, the firmware 201, and the software 202.
[0044]
The cable 213 of the 1394 serial bus has the most hardware configuration, and its connector is connected to the connector port 210.
[0045]
The hardware 200 is part of a practical interface step and includes a physical layer 211 and a link layer 212. The physical layer 211 performs encoding, connector-related control, and the like, and the link layer 212 performs packet transfer, cycle time control, and the like.
The firmware 201 includes a transaction layer 214 and a management layer 215. The transaction layer 214 manages data to be transferred (transaction), and issues instructions such as “Read” and “Write”. The management layer 215 manages the connection status and ID of each connected device, and manages the network configuration.
The hardware 200 and the firmware 201 are substantially the configuration of the 1394 serial bus.
[0046]
Software 202 includes an application layer 216. The application layer 216 differs depending on the software to be used, and is a part that defines how data is put on the interface. For example, the application layer 216 is defined by a data transfer protocol such as AV / C protocol.
[0047]
FIG. 4 shows an address space in the 1394 serial bus.
Each device (hereinafter also referred to as “node”) connected to the 1394 serial bus as shown in FIG. 2 always has a 64-bit address unique to each device. As a result, each device can always recognize the node address of its own device or the device of the other party of connection by setting the address in the ROM in its own device. You can also do it.
[0048]
For the addressing of the 1394 serial bus, a method conforming to the IEEE1212 standard is adopted.
In this method, as shown in FIG. 4, in the 64-bit address, the first 10 bits (221) are used for designating the bus number (bus ID), and the subsequent 6 bits (222) are used as the node ID. Used to specify number (node ID). The subsequent 48 bits (223) are addresses that can be used by each device, but are divided into 20 bits (223a) and 28 bits (223b), and have a structure (224) in units of 256 Mbytes. Used.
[0049]
In the area 224 of the address indicated by the first 20 bits (223a) of 48 bits (223), the area 225 indicated by the address of 0 to 0xFFFFD is called a memory space, and is indicated by the address of the next 0xFFFFE. The area 226 is called a private space and is an area that can be freely used by each device. The next area 227 indicated by the address of 0xFFFFF is called a register space, and information common to the devices connected to the bus is set and used for communication between the devices.
[0050]
In the register space 227, the first 512-byte area 228 is used as a register (CSR core) that becomes the core of the CSR architecture. The next 512-byte area 229 is used as a serial bus register. The next 1024-byte area 230 is used as a Configuration ROM. The subsequent area 231 is used as a unit space (device-specific register).
[0051]
In general, in order to simplify the design of the heterogeneous bus system, it is desirable for each device to use only the first 2048-byte area of the unit space 231. In this case, a total of 4096 bytes including the CSR architecture core (CSR core) 228, the serial bus register 229, the configuration ROM 230, and the first 2048 bytes of the unit space 231 may be used.
[0052]
<< Electrical Specifications of 1394 Serial Bus >>
FIG. 5 shows a cross-sectional view of a 1394 serial bus cable.
As shown in FIG. 5, two pairs of twisted pair signal lines 241 and a power line (power line) 242 are provided in the 1394 serial bus cable. With this power supply line 242, it is possible to supply power even to a device that does not have a power supply or a device whose voltage has dropped due to a failure.
The voltage of the power supply flowing in the power supply line 242 is defined as 8 to 40 V, and the maximum current DC1.5A is defined as the current.
[0053]
<< DS-Link coding >>
A data transfer format employed in the 1394 serial bus will be described with reference to FIG.
The 1394 serial bus employs a DS-Link (Data / Strobe Link) encoding method as a data transfer format. This DS-Link encoding method is a method suitable for high-speed serial data communication.
[0054]
Specifically, in the DS-Link encoding method, two signal lines are required, and the main data (Data) is sent by one signal line among these two signal lines, and the other signal line is sent. The signal line is configured to send a strobe signal (Strobe).
Therefore, on the receiving side of the data (Data) and the strobe signal (Strobe), the clock (Clock) can be reproduced by taking the exclusive OR of the data (Data) and the strobe signal (Strobe).
[0055]
Employing the above-described DS-Link encoding method has the following advantages.
-Higher transfer efficiency than other serial data transfer methods.
-Since no PLL circuit is required, the circuit scale of the controller LSI can be reduced.
Since there is no need to send information indicating that the device is in an idle state when there is no data to be transferred, the transceiver circuit of each device can be put into a sleep state. Thereby, power consumption can be reduced.
[0056]
<< Node ID determination sequence >>
As described above, when an arbitrary device is deleted or newly added by the Plug & Play function, a bus reset is automatically performed, so that the network configuration up to that point is reset and a new network is re-established. Construction will be done.
Therefore, after the bus reset, in order to construct a new network configuration, for example, an operation according to the flowchart shown in FIG. 7 (an operation for giving an ID to each device) is executed in each device.
[0057]
Specifically, FIG. 7 shows the operation from when a bus reset occurs until the node ID is determined by each device and the node ID is transferred.
[0058]
First, in each device, it is constantly monitored whether or not a bus reset has occurred in the network (step S251). Therefore, when a bus reset occurs due to power ON / OFF of any device in the network, each device recognizes the connection status of the new network from the state where the network is reset. A parent-child relationship is declared with the directly connected device (step S252).
[0059]
When the parent-child relationship is determined among all the devices in step S252 (step S253), as a result, the device as the route is determined (step S254).
[0060]
When the device as the route is determined in step S254, each device executes a node ID setting operation for giving the node ID of the own device to other devices (step S255). At this time, the node ID setting operation is executed in a predetermined device order.
[0061]
When the node ID setting operation for all devices is completed in step S255 (step S256), the new network configuration is recognized in all devices.
As a result, each device becomes ready for data transfer with other devices, and starts data transfer as necessary (step S257).
Thereafter, each device enters a mode state in which it is again monitored whether or not a bus reset has occurred (step S251). When a bus reset occurs, the above-described processing of steps S252 to S257 is repeatedly executed.
[0062]
<< Direct Print Protocol (DPP) >>
The communication system 100 according to the present embodiment shown in FIG. 1 employs a direct print protocol (DPP) as a data transfer procedure between the printer 102 and the digital camera 101.
[0063]
In the direct print protocol (DPP), as shown in FIG. 8, a command register (command) 261 for writing commands and a response to the command are written in the initial unit space of IEEE 1394 (unit space 231 shown in FIG. 4). A response register (response) 262 for writing data, a data register (data) 263 for writing transfer data, and a format register (format) 254 for handling format information corresponding to the data format of each transfer data are used. ing.
In FIG. 8, the address description is omitted from the upper “FFFF”.
[0064]
The command register 261 is arranged at a fixed address “FFFF F000 0B00” h and has a 512-byte space.
[0065]
In the present embodiment, the command register 261 is a register for the digital camera 101 (image source device) to write various commands (hereinafter also referred to as “command frame”) to the printer 102 (printer). Used and provided on the printer 102 side.
The command register 261 is also provided on the digital camera 101 side, and is used as a register for the printer 102 to write various commands to the command register 261 on the digital camera 101 side.
[0066]
The response register 262 is arranged at a fixed address “FFFF F000 0D00” h and has a 512-byte space.
[0067]
In the present embodiment, the response register 262 is used as a register for the printer 102 to write responses (responses, hereinafter referred to as “response frames”) to various commands written from the digital camera 101 to the command register 261. And provided on the digital camera 102 side.
The response register 262 is also provided on the printer 102 side, and the digital camera 101 is used as a register for writing a response to the response register 262 on the printer 102 side.
[0068]
The data register 263 uses “FFFF F000 3000” h as a default address, and can be set to any valid address by a command (Block Address Buffer Config command) that defines the address of the data register 263.
The space of the data register 263 can be set within a predetermined range by a command (Block Size Buffer Config command) that defines the space of the data register 263.
[0069]
In this embodiment, the data register 263 is used as a register for transferring data between the digital camera 101 and the printer 102, and when the printer 102 performs print output, the digital camera 101 sends the data to the printer 102. Print data to be printed out (print data, hereinafter also referred to as “data frame”) is written.
The print data at this time is configured in a data format according to a preset image format.
[0070]
The format register 264 is composed of a register group corresponding to each data format to be described later, and each register of the register group is for setting format information (hereinafter also referred to as “format frame”) necessary for each data format. Used as a register.
[0071]
In the present embodiment, the format register 264 is used as a register for the digital camera 101 to write format information to the printer 102.
[0072]
FIG. 9 shows the flow of the command frame, response frame, data frame, and format frame as described above between the digital camera 101 and the printer 102.
[0073]
For example, when the data in the digital camera 101 is printed out by the printer 102, as shown in FIG. 9, the digital camera 101 first writes the command for the printer 102 to the command register 261b on the printer 102 side as a command frame. .
[0074]
Next, the printer 102 writes a response to the command frame written from the digital camera 101 to the command register 261 b as a response frame to the response register 262 a of the digital camera 101.
The response frame at this time includes whether or not the printer 102 correctly executed the operation for the command frame written from the digital camera 101 to the command register 261b on the printer 102 side, or a return value required by the command. Information.
[0075]
Then, the digital camera 101 writes data to be printed out by the printer 102 (data such as a captured image) as a data frame to the data register 263b on the printer 102 side.
Further, the digital camera 101 writes the format information of the print output from the printer 102 to the format register 264 on the printer 102 side as a format frame.
[0076]
Here, the command frame as described above, the response frame to the command frame, and the data frame include commands and responses 271 to 291 and commands 292 to 294 as shown in FIG.
[0077]
For example, as shown in FIG. 10, the types of command frame and data frame (hereinafter referred to as “command classification”) include “status” related to status, “control” for printer control, and data transfer settings. "Block / Buffer" for channel setting, "Channel" for channel setting, "Transfer" for transfer method, "Format" for format setting, "Login" for login, and "Data" for data transfer Broadly classified.
[0078]
The command frame and response frame whose command classification is “status” includes “GetStatus” for obtaining the status of the printer and its response “GetstatusResponse” (271).
[0079]
As the command frame and response frame whose command classification is “control”, “PrintReset” for resetting the printer, its response “PrintResetResponse” (272), “PrintStart” for instructing the start of printing, its Response “PrintStartResponse” (273), “PrintStop” for instructing to stop printing, its response “PrintStopResponse” (274), “InsertPaper” for instructing paper feeding, and its response “InsertPaperResponse” (275) "EjectPaper" for instructing paper discharge, a response "EjectPaperResponse" (276), and a copy of the image data "CopyStart" for starting, and responses "CopyStartResponse" (277), "CopyEnd" for ending the copy of the image data, it includes the a response "CopyEndResponse" (278) is.
[0080]
As the command frame and response frame whose command classification is “block / buffer”, “BlockSize” for designating the size of the block, its response “BlockSizeResponse” (279), and “BlockAddress” for designating the address of the block. “, Its response“ BlockAddressResponse ”(280),“ FreeBlock ”and“ WriteBlocks ”for acquiring the number of empty blocks, and its response“ FreeBlockResponse ”and“ WriteBlocksResponse ”(281 and 282) are specified. "BufferConfig" and its response "BufferConfiglockResponse" (283) , "SetBuffer" for specifying the data acquisition start from the buffer, and a response "SetBufferResponse (284).
[0081]
The command frame and response frame whose command classification is “channel” include “OpenChannel” for opening the channel, its response “OpenChannelResponse” (285), “CloseChannel” for closing the channel, and its response “CloseChannelResponse”. "(286)".
[0082]
The command frame and response frame whose command classification is “transfer” includes “TransferMethod” for designating a data transfer method and its response “TransferMethodResponse” (287).
[0083]
The command frame and response frame whose command classification is “format” includes “SetFormat” for setting the format and its response “SetFormatResponse” (288).
[0084]
As command frames and response frames whose command classification is “login”, “Login” for performing login and its response “LoginResponse” (289), “Logout” for performing logout, and its response “LogoutResponse” ( 290), “Reconnect” for performing reconnection, and a response “ReconnectResponse” (291).
[0085]
A value corresponding to the above-described commands (commands indicated by “271 to 292”) is written by the digital camera 101 into the command register 261b of the printer 102 shown in FIG. The operation corresponding to the command is executed. Then, the printer 102 writes a response to the command (a value equivalent to the value corresponding to the command) to the response register 262a of the digital camera 101 shown in FIG. 9, so that the digital camera 101 executes each command. The result is recognized.
[0086]
In addition, the data frame whose command classification is “data” includes “WriteBlock” and “WriteBuffer” (292 and 293) for writing data, and “PullBuffer” (294) for reading data. .
There is no response to a data frame whose command classification is “data”.
[0087]
FIG. 11 specifically shows the format register 264 on the printer 102 side shown in FIG.
As shown in FIG. 11, the format register 264 includes a read-only register (INQUIRY) 301 for inquiry and a read / write register (CONTROL / STATUS) 302 for setting and information acquisition.
[0088]
The read only register (INQUIRY) 301 and the read / write register (CONTROL / STATUS) 302 are composed of register groups having the same configuration.
That is, the read-only register (INQUIRY) 301 includes registers 303a to 307a, and the read / write register (CONTROL / STATUS) 302 includes a register 308 and registers 303b to 307b similar to the registers 303a to 307a.
[0089]
The registers 303a and 304a (303b and 304b) are a common register group, and the registers 305a to 307a (305b to 307b) are a printer format register group.
[0090]
The common register groups 303a and 304a (303b and 304b) are groups of registers that store information common to all data formats.
In the common register groups 303a and 304a (303b and 304b), the register 303a (303b) is a register (GLOBAL) common to all printers, and the register 304a (3034) is a register (LOCAL) unique to the printer 102. .
[0091]
The printer format register groups 305a to 307a (305b to 307b) are groups of registers in which unique information is stored in each data format.
The printer format register groups 305a to 307a (305b to 307b) include a total of n registers (format [1] to format [n]) from the register 305a (305b) to the register 307a (307b).
[0092]
Each of the registers 305a (305b) to 307a (307b) corresponds to a data format described later, and one printer format register group 305a to 307a (305b to 307b) is assigned to each data format to be mounted.
The addresses of the registers 305a (305b) to 307a (307b) are given to the digital camera 101 as a response to a command for setting the data format.
[0093]
FIG. 12 specifically shows the register 308 of the read / write register (CONTROL / STATUS) 302 shown in FIG.
The register 308 includes a 32-bit common status register 311 and a vendor-specific status register 312.
[0094]
The common status register 311 is a register for holding a status common to each vendor's printer, and the vendor-specific status register 312 is a register for holding a status uniquely defined for each vendor.
An extension to the vendor-specific status register 312 is defined by a V flag described later of the common status register 311.
[0095]
The V flag (vendor status available flag) indicates the definition of extension to the specific status register 312 by the following information (information indicated by “0”, “1”, “error.warning”, etc.).
0: not available
1: available
error. warning:
error. warning status
(Status of error, warning, etc.)
paper state: paper condition
(Status regarding paper)
print state: printer condition
(Status of printer 102)
[0096]
FIG. 13 specifically shows the register 303a (303b) of the common register group 303a, 304a (303b, 304b) shown in FIG.
The register 303a (303b) holds information common to all printers (including the printer 102) equipped with the direct print protocol. That is, common information that does not differ depending on the type of printer is held.
[0097]
For example, as shown in FIG. 13, the register 303a (303b) has an area (media-type) 321 for holding information indicating the type of print medium, and an area (paper) for holding information indicating the size of paper. -Size) 322, a region (page-margin) 323 in which information indicating the margin value of the page is held, a region (page-length) 324 in which information indicating the length of the page is held, page Area (page-offset) 325 in which information indicating the offset of the printer is stored, area (print-unit) 326 in which unit information of the printer is stored, and area (color-type) in which information indicating the color type of the printer is stored 327 and an area (bit-order) 328 in which information indicating the bit order of data is held. .
[0098]
FIG. 14 specifically shows the register 304a (304b) of the common register group 303a, 304a (303b, 304b) shown in FIG.
The register 304a (304b) holds information unique to individual models of printers (including the printer 102) equipped with the direct print protocol. That is, information that differs depending on the type of printer is held.
[0099]
For example, as shown in FIG. 14, the register 304 a (304 b) is an area (paper) 331 that holds information indicating the type of print medium unique to the printer, and an area (information) that shows information indicating a color matching method ( CMS) 332 and an area (ink) 333 in which information indicating the ink type of the ink jet printer is held.
[0100]
FIG. 15 specifically shows the register 305a (305b) of the printer format register group 305a to 307a (305b to 307b) shown in FIG.
The register 305a (305b) holds, for example, format information for EXIF (Exchangeable image file format), which is one of image data format formats.
[0101]
In this case, as shown in FIG. 15, the register 305a (305b) holds an area (inX-rate) 341 in which information on the ratio of the input in the X direction is held, and information on the ratio in the Y direction of the input. An area (inY-rate) 342, an area (utX-rate) 343 that holds information on the ratio of the output in the X direction, and an area (utY-rate) 344 that holds information on the ratio of the output in the Y direction. It is out.
[0102]
The printer 102 can perform printing output by performing scaling in the X and Y directions in accordance with the contents of the image data in the EXIF format given by the register 305a (305b).
[0103]
FIG. 16 specifically shows the registers 306a (306b) of the printer format register groups 305a to 307a (305b to 307b) shown in FIG.
In the register 306a (306b), for example, “Raw RGB format” (hereinafter simply referred to as “RGB format”) in which each pixel is composed of R (red), G (green), and B (blue) data. Format information is retained.
[0104]
In this case, as shown in FIG. 16, the register 306a (306b) holds an area (inX-rate) 351 in which information on the ratio of the input in the X direction is held, and information on the ratio in the Y direction of the input. An area (inY-rate) 352, an area (utX-rate) 353 in which information on the ratio of the output in the X direction is held, an area (utY-rate) 354 in which information on the ratio in the Y direction of the output is held, XY A region (XY-size) 355 for holding information indicating a fixed pixel size, a region (bit-pixel) 356 for holding information indicating the number of bits per pixel, and a region for holding information indicating the number of pixels in the X direction (X-size) 357, an area (Y-size) 358 for storing information indicating the number of pixels in the Y direction, and information indicating a color plane per bit are stored. An area (plane) 359, an area (X-resolution) 360 in which information indicating decomposition in the X direction is held, an area (Y-resolution) 361 in which information indicating decomposition in the Y direction is held, and a pixel type It includes an area (pixel-format) 362 where information is held.
[0105]
The printer 102 can print out based on scaling in the X and Y directions, resolution conversion, pixel size concessions, etc., in accordance with the contents of the RGB format image data provided by the register 306a (306b). It becomes.
[0106]
Here, the other registers following the register 306a (306b) of the printer format register group 305a to 307a (305b to 307b) shown in FIG. In addition, various format information is held. As an image data format supported by the direct print printer, for example, a format as shown in FIG.
In the present embodiment, the printer 102 is configured to support data according to any one of various formats as shown in FIG.
[0107]
Note that the image data format supported by the direct print printer is not limited to the format shown in FIG. 17, and other formats may optionally be supported.
[0108]
FIG. 18 shows the flow of the format setting process for the printer 102.
[0109]
First, the digital camera 101 (image supply device) writes the command “SetFormat” (see FIG. 10 above) for the INQUIRY as a command frame to the command register 261b (see FIG. 9 above) of the printer 102 (step S370).
[0110]
Next, the printer 102 writes a response “SetFormatResponse” (see FIG. 10 above) in the response register 262a of the digital camera 101 (step S371).
As a result, the digital camera recognizes the address of the read-only register (INQUIRY) 301 (see FIG. 11 above) of the format register 264 of the printer 102.
[0111]
Next, the digital camera 101 writes the command “SetFormat” (see FIG. 10 above) for CONTROL / STATUS as a command frame to the command register 261b (see FIG. 9 above) of the printer 102 (step S372).
[0112]
Next, the printer 102 writes a response “SetFormatResponse” (see FIG. 10 above) in the response register 262a of the digital camera 101 (step S373).
Thus, the digital camera recognizes the address of the read / write register (CONTROL / STATUS) 302 following the read-only register (INQUIRY) 301 of the format register 264 of the printer 102.
[0113]
Next, the digital camera 101 uses the contents of the read-only register (INQUIRY) 301 based on the address of the read-only register (INQUIRY) 301 of the format register 264 of the printer 102 recognized by the response from the printer 102 in step S371. The setting items of the format supported by the printer 102 are recognized (steps S374-1 to S374-m).
That is, the digital camera 101 sequentially reads the contents of the printer format register groups 305 a to 307 a of the read-only register (INQUIRY) 301 to recognize the setting items of the format supported by the printer 102.
[0114]
Then, the digital camera 101 reads the contents of the printer format register groups 305b to 307b of the read / write register (CONTROL / STATUS) 302 of the format register 264 of the printer 102 (steps S375-1 to S375-n). The information of the desired format is written to each register (steps S376-1 to S376-n).
[0115]
<< PULL type data transfer >>
The communication system 100 in the present embodiment shown in FIG. 1 employs a PULL type data transfer method as data transfer when the printer 102 reads data from the memory in the digital camera 101.
[0116]
In the PULL type data transfer method, the command and response output operations between the digital camera 101 and the printer 102 are compliant with FCP. For example, as shown in FIG. 19, the digital camera 101 sends data to the command register 261b of the printer 102. The command frame 381 is written and the printer 102 writes the response frame 382 to the response register 262a of the digital camera 101.
[0117]
On the other hand, the writing operation of the data frame 383 is different from the writing operation of the command frame 381 and the writing operation of the response frame 382 (unlike the operation compliant with the FCP), and the printer 102 stores the data register 263a of the digital camera 101. The content (image data) is implemented as a data frame 383 by only one-way operation of reading the data register 263b of the printer 102 using a read transaction.
[0118]
FIG. 20 shows an operation in accordance with the above-described PULL type data transfer method when the digital camera 101 and the printer 102 perform data transfer using DPP.
The operation of the format setting command and response in the following description is the same as described with reference to FIG. 18, and the commands and responses of “Login”, “Logout”, “OpenChannel”, and “CloseChannel” are described. Since the operation, “BufferConfig”, and “SetBuffer” command and response operations are the same as those in the above-described PULL type data transfer method, detailed description thereof is omitted here.
[0119]
First, the digital camera 101 writes a “BufferConfig” command for inquiring information (buffer size, buffer address, etc.) about the buffer area of the printer 102 to the command register 261b of the printer 102 as a command frame (step S391).
[0120]
Next, the printer 102 writes the response to “BufferConfig” written in the command register 261b as a response frame to the response register 262a of the digital camera 101 (step S392).
Thus, the digital camera 101 recognizes information (buffer size, buffer address, etc.) about the buffer area of the printer 102.
[0121]
Next, the digital camera 101 writes a “BufferConfig” command for setting the buffer size and buffer address to be read by the digital camera 101 to the printer 102 as a command frame to the command register 261b of the printer 102 (step S393).
[0122]
Next, the printer 102 writes the response to “BufferConfig” written in the command register 261b as a response frame to the response register 262a of the digital camera 101 (step S394).
As a result, the digital camera 101 recognizes that the setting of the buffer size and buffer address that the digital camera 101 should read out to the printer 102 is completed for the printer 102.
[0123]
Next, the digital camera 101 notifies the printer 102 that data transfer can be started by writing the command “SetBuffer” as a command frame to the command register 261b of the printer 102 (step S395).
[0124]
Next, the printer 102 writes the response to “SetBuffer” written in the command register 261b as a response frame to the response register 262a of the digital camera 101 (step S396).
As a result, the digital camera 101 recognizes that the printer 102 is ready for data capture.
[0125]
Thereafter, the digital camera 101 starts data transfer to the printer 102.
That is, the digital camera 101 and the printer 102 first issue a “PullBuffer” request (request packet by a read transaction) to the digital camera 101 using the respective data registers 263a and 263b (step S397). Next, the digital camera 101 issues a response packet to the request to the printer 102 to perform data transfer (step S398). As a result, data transfer (data transfer using the PULL type data transfer method) is performed with respect to the buffer address notified by the digital camera 101 to the printer 102.
[0126]
The above-described data transfer operation is repeatedly performed (step S400), and the printer 102 writes the “SetBuffer” response as a response frame to the response register 262a of the digital camera 101 (step S399), so that the digital camera 101 stores all data. Is transferred to the printer 102.
[0127]
FIG. 21 shows the relationship between the data register 263 a of the digital camera 101 and its buffer 411.
[0128]
As shown in FIG. 21, the read start address “BufferAddress” of the buffer 411 is determined according to the value of “Distination_Offset” set in the data register 263a, and the data in the area indicated by the read start address “BufferAddress” is read. Is performed by a read transaction.
[0129]
The value of “Distination_Offset” is incremented by “DataLength” of the data register 263a each time. According to such a value of “Distination_Offset”, data in the buffer 411 can be read continuously by repeatedly reading data from the addresses of the continuous buffer 411.
[0130]
As described above, the data held in the buffer 411 in the digital camera 101 is transferred to the printer 102. By such data transfer, that is, data transfer according to the PULL type data transfer method, the printer 102 can read the data written in the buffer 411 in the digital camera 101 by directly specifying the address.
[0131]
<File structure of image data>
The buffer 411 (memory in the digital camera 101) as shown in FIG. 21 holds image data such as a photographed image obtained by photographing with the digital camera 101. This image data is configured as an image file according to the following file format.
In this embodiment, in particular, as described above, the digital camera 101 is configured to notify the printer 102 of information (format information such as buffer address and buffer size) of the buffer 411 that holds image data. Therefore, the printer 102 can arbitrarily select and capture the image data in the buffer 411 based on the information as follows.
[0132]
In the present embodiment, the EXIF file format is exemplified as an example of the file format to be adopted. However, the present invention is not limited to this, and any file format including thumbnail images may be used.
[0133]
FIG. 22 shows the structure of an image file according to the EXIF file format.
The image file here includes an “EXIF header” (421), a “TIFF data portion” (422), and a “JPEG data portion” (423).
[0134]
The TIFF data portion 421 includes a JPEG image information holding area (hereinafter referred to as “JPEG image area”) 422a, a digital camera 101 unique information holding area (hereinafter referred to as “digital camera information area”) 422b, and a thumbnail image. Information holding area (hereinafter referred to as “thumbnail image area”) 422c.
[0135]
In the JPEG image area 422a, information including image information obtained by compressing a captured image (main image) obtained by actual shooting according to the JPEG method is stored.
[0136]
The image file according to the EXIF file format as described above is characterized in that the entire file appears as a file format according to the JPEG method.
[0137]
23 and 24 specifically show the EXIF header 421 and the TIFF data portion 422 shown in FIG.
[0138]
For example, when taking out shooting date / time data and thumbnail images from information stored in the EXIF header 421, the JPEG image area 422a, and the digital camera information area 422b, first, the EXIF header starts from the address “x000” h of the image file. Referring to 421, the EXIF header 421 stores the start address of the TIFF data portion 422 and the size of the entire image file.
Here, since the start address of the TIFF data portion 422 is “0100” h and the size of the entire image file is “1792 bytes”, the TIFF data portion 422 starts from the address “x100” h, and the image file It can be recognized that the end address of “x7FF” h.
[0139]
Next, referring to the TIFF data portion 422 starting from the address “x100” h, the JPEG image area 422a stores area information of unique information.
Here, since the first unique information offset is “x100” h in the JPEG image area 422a, from the start address “x100” h of the TIFF data portion 422 to “x200” h ahead of “x200” h. It can be recognized that information unique to the digital camera 101 is actually stored in the area. That is, it can be recognized that the actual start address of the digital camera information area 422b is “x200” h.
[0140]
Next, referring to the digital camera information area 422b from the address “x200” h ”, a tag of the photographing time is stored in the digital camera information area 422b.
In this case, since the offset value “x1C4” h is obtained by searching for the shooting time tag, from “x100” h which is the start address of the TIFF data portion 422 to “x2C4” h ahead of “x2C4” h It can be recognized that information on the shooting date and time of the digital camera 101 is stored in the area of. As a result, “1997 July 6, 12:36:10” can be acquired as the shooting date / time information.
[0141]
As described above, when the shooting date / time information is obtained, referring to the TIFF data portion 422 starting from the address “x100” h in order to obtain a thumbnail image, the thumbnail image is displayed in the JPEG image area 422a. The offset information indicating the area is stored.
Here, since the offset indicating the area of the thumbnail image is “x200” h, the area from the start address “x100” h of the TIFF data portion 422 to “x300” h ahead of “x300” h is actually It can be recognized that the information of the thumbnail image is stored in. That is, it can be recognized that the actual start address of the thumbnail image area 422c is “x300” h.
[0142]
Next, referring to the thumbnail image area 422c from the address “x200” h, a thumbnail offset tag is stored in the thumbnail image area 422c.
Here, since the offset value “x220” h is obtained by searching the thumbnail offset tag, from the start address “x100” h of the TIFF data portion 422 to “x320” h ahead of “x320” h It can be recognized that the thumbnail image is stored in the area.
[0143]
When the thumbnail image area 422c from the address “x200” h is referred to, a thumbnail size tag is stored in the thumbnail image area 422c.
In this case, by searching for a thumbnail size tag, the number of bytes “4800” can be obtained. Therefore, it can be recognized that the thumbnail image is stored from “x320” h to the number of bytes “4800”. As a result, it is possible to acquire thumbnail images for the number of bytes “4800”.
Here, the thumbnail image is assumed to be composed of uncompressed data obtained by reducing the main image to 80 × 60 dots in accordance with the TIFF format.
[0144]
As described above, by referring to the header and various information of the image file, it is possible to acquire the thumbnail image in the image file and information on the shooting date and time.
[0145]
FIG. 25 shows a state (memory map) in which a plurality of image files as shown in FIG. 22 are held in the buffer 411 in the digital camera 101.
[0146]
In the digital camera 101, a plurality of image files 432 (1) to 432 (n) following an area (hereinafter referred to as “directory area”) 431 of addresses “0000” h to “07FF” h in which directory information is stored. Is made to hold.
[0147]
The directory area 431 stores information indicating the start address and the size of each image file 432 (1) to 432 (n). Thus, when a desired image file (for example, image file 432 (3)) is extracted from the image files 432 (1) to 432 (n), the image file 432 (from the information in the directory area 431) is extracted. The image file 432 (3) can be extracted by the start address 433 of 3).
[0148]
Specifically, for example, in FIG. 25, the start address of the image file 432 (1) is “0800” h, the start address of the image file 432 (2) is “1000” h, and the start address of the image file 432 (2). Is "1800" h, and so on. That is, the start addresses of the respective image files 432 (1), 432 (2), 432 (3),... Are set every “0800” h, and information (map information) indicating this is set. Stored in the directory area 431.
Accordingly, when it is desired to extract the nth image file 432 (n), an address obtained by multiplying “0800” h by n may be used as the start address.
[0149]
FIG. 26 shows an operation for reading out thumbnail images of arbitrary image files and information on the shooting date and time from a plurality of image files held in the memory (buffer 411) in the digital camera 101 as shown in FIG. Is shown.
Here, for simplicity of explanation, it is assumed that the image file 432 (3) is extracted from the image files 432 (1) to 432 (n).
[0150]
First, information in the directory area 431 is read (step S441).
Next, since the desired image file 432 (3) is the third image file based on the information in the directory area 431, “1800” h, which is three times “0800” h, is changed to the image file 432 ( 3) is calculated as the start address (step S442).
[0151]
Next, based on the start address “1800” h of the image file 432 (3), information in the EXIF header 421 of the image file 432 (3) (see FIG. 23) is read (step S443).
[0152]
Next, the start address of the JPEG image area 422a of the image file 432 (3) is calculated from the information in the EXIF header 421 as described above, and the digital camera information area 422b and the information in the JPEG image area 422a are calculated. The start address of the thumbnail image area 422c is calculated (step S444).
[0153]
Then, the thumbnail image in the image file 432 (3) is acquired from the information from the start address of the thumbnail image area 422c, and the shooting date / time information is acquired from the information from the start address of the digital camera information area 422b ( Step S445).
[0154]
FIG. 27 shows how the printer 102 reads only thumbnail image data from the image file in the buffer 411 based on the address and size of the buffer 411 notified from the digital camera 101 as described above. is there.
[0155]
In FIG. 27, as described above, the start addresses of the thumbnail image data of the plurality of image files 432 (1) to 432 (n) are acquired based on the information in the directory area 431, and as a result, the image file 432 (1 ) Thumbnail image data start address 451 (1) is “0B20” h, thumbnail image data start address 451 (2) of image file 432 (2) is “1320” h, and thumbnail image of image file 432 (3). The data start address 451 (3) is “1B20” h,.
That is, the start address 451 (n) of the thumbnail image data of the nth image file 432 (n) is
nx0800h + 0320h
It can be calculated by the following formula.
[0156]
As described above, since the thumbnail image data of the plurality of image files 432 (1) to 432 (n) can be individually read out based on the start address of the data, the thumbnail image that the printer 102 uniquely needs It can be taken out from the image file held in the digital camera 101.
[0157]
FIG. 28 shows an example of the arrangement of thumbnail images when the thumbnail image captured in the printer 102 is printed out (index print) by the printer 102 with the above-described configuration.
[0158]
As shown in FIG. 28, the printer 102 arranges the thumbnail image data in a data format for index printing by arranging thumbnail images read from the digital camera 101 on the paper (image rearrangement process), and then Performs index printing of thumbnail image data.
[0159]
In FIG. 28, the first to sixth thumbnail images (No. 1 to No. 6) are arranged in order from the upper left in the X direction, and the next seventh to twelfth thumbnail images (No. 7). To No. 12) are shifted in the Y direction and arranged in order from the upper left in the X direction.
[0160]
The thumbnail image rearrangement process as described above is performed on the printer 102 side that has read the thumbnail image data from the digital camera 101. That is, the printer 102 rearranges the images so that the thumbnail image data read from the digital camera 101 becomes one piece of index data. As a result, the thumbnail image held in the digital camera 101 is printed out from the printer 102 as one piece of index data.
[0161]
The printer 102 that performs processing such as image rearrangement processing and index printing as described above is configured as shown in FIG. 29, for example.
That is, as shown in FIG. 29, the printer 102 controls the operation of the entire printer 102, the CPU 461 for controlling the operation of the entire printer 102, the RAM 462 used for processing of thumbnail image data, data transfer, and the like. ROM 463 storing the processing program and various data, 1394PHY 465 which is a physical layer controller for realizing the 1394 interface, 1394LINK 464 which is a link layer controller for realizing the 1394 interface, and a printer unit (not shown). ), A head controller (head) 466 incorporated in the printer unit, and a motor unit (motor) 467 of the printer unit. Are connected so that they can communicate with each other via a bus 469.
[0162]
With such a configuration, the printer 102 performs processing using the ROM 463 and RAM 462 by the CPU 461 on the image captured from the digital camera 101 via the 1394 interface (1394 PHY 465 and 1394 LINK 464), and the image after the processing is performed. The printer controller 468 drives the motor 467 and the head 466 of the printer unit to print out.
[0163]
FIG. 30 shows the operation of the printer 102 when performing index printing as described above.
[0164]
First, the counter L of the image file held in the digital camera 101 is initialized (step S471).
This counter L indicates the numbers of the image files 451 (1), 451 (2), 451 (3),..., 451 (n) as shown in FIGS. “1” is set as the value.
[0165]
Next, based on the address and size information of the buffer 411 notified from the digital camera 101 (format information of the image data held in the digital camera 101), the thumbnail image of the image file 451 (L) indicated by the counter L Is acquired from the digital camera 101 by the process according to the flowchart shown in FIG. 26 (step S472).
[0166]
Next, the thumbnail images acquired in step S472 are rearranged in accordance with the arrangement as shown in FIG. 28, and index print data is formed on the RAM 462 (step S473).
[0167]
Next, for the next image file 451 (L + 1), the counter L is incremented in order to execute the processes of steps S472 and S473 (step S474).
[0168]
Next, as a result of the increment in step S474, it is determined whether or not the value of the counter L has exceeded the total number (n) of image files held in the digital camera 101 (step S475).
[0169]
If the result of determination in step S475 is not “L> n”, that is, if an unprocessed image file exists in the digital camera 101, the process returns to step S472, and the subsequent processing steps are repeated.
[0170]
If “L> n” as a result of the determination in step S475, that is, all the image files 451 (1), 451 (2), 451 (3),... 451 (n) existing in the digital camera 101. When the thumbnail images are read out from the image data and rearranged, the index print data formed on the RAM 462 is printed out.
[0171]
An object of the present invention is to supply a storage medium storing software program codes for realizing the functions of the host and terminal according to the above-described embodiment to a system or apparatus, and the computer (or CPU) of the system or apparatus. Needless to say, this can also be achieved by reading and executing the program code stored in the storage medium.
In this case, the program code itself read from the storage medium realizes the function of the present embodiment, and the storage medium storing the program code constitutes the present invention.
A ROM, floppy disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, magnetic tape, nonvolatile memory card, or the like can be used as a storage medium for supplying the program code.
Further, by executing the program code read by the computer, not only the functions of the present embodiment are realized, but also an OS or the like running on the computer based on an instruction of the program code performs actual processing. It goes without saying that a case where the function of this embodiment is realized by performing part or all of the above and the processing thereof is included.
Further, after the program code read from the storage medium is written to the memory provided in the extension function board inserted in the computer or the function extension unit connected to the computer, the function extension is performed based on the instruction of the program code. It goes without saying that the CPU or the like provided in the board or function expansion unit performs part or all of the actual processing, and the functions of the present embodiment are realized by the processing.
[0172]
【The invention's effect】
As described above, in the present invention, other devices (Digital camera etc.) Notified by Included in image file address information and image file information( image And its thumbnail images) Address information Based on the other device Information contained in image files Configured to capture. This holds it in other devices Information contained in image files Can be captured arbitrarily. For example , Multiple imported from other devices Information contained in image files Are arranged in an arbitrary order and are output in a batch (printing output, etc.), they are held in other devices. Information contained in image files Can be easily recognized and desired Information contained in image files Can also be selected efficiently.
[0173]
Specifically, for example, in the exchange of image data between a digital camera (first device) and a printer (second device), the digital camera uses an image file (captured image, relevant image) held in its internal memory. Format information (including thumbnail images obtained by reducing captured images) is notified to the printer. Accordingly, the printer can directly capture only the thumbnail image from the image file held in the internal memory of the digital camera using a PULL type data transfer method or the like. Therefore, it is possible to simplify the negotiation process between devices in data transfer.
Also, when the printer is configured to edit thumbnail images captured from a digital camera and perform index printing (collective index image printing), a desired image can be selected from a large number of captured images stored in the digital camera. The image to be selected can be easily selected. Therefore, operability can be improved.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a communication system to which the present invention is applied.
FIG. 2 is a diagram for explaining a network system configured using the 1394 serial bus in the description of the outline of “IEEE 1394” defining the 1394 serial bus used as a communication means in the communication system. is there.
FIG. 3 is a diagram for explaining the configuration of the 1394 serial bus.
FIG. 4 is a diagram for explaining an address space in the 1394 serial bus.
FIG. 5 is a diagram for explaining a configuration of a cable of the 1394 serial bus.
6 is a diagram for explaining data transfer by the 1394 serial bus (data transfer by a DS-Link encoding method). FIG.
FIG. 7 is a diagram for explaining a Plug & Play function of the 1394 serial bus.
FIG. 8 is a diagram for explaining registers used for data transfer between the image supply device (digital camera) and the printer in the communication system.
FIG. 9 is a diagram for explaining a data flow between the image supply device (digital camera) and a printer.
FIG. 10 is a diagram for explaining an example of commands and responses between the image supply device (digital camera) and a printer.
FIG. 11 is a diagram for explaining a format register of the printer.
FIG. 12 is a diagram for explaining a read / write register (CONTROL / STATUS) of the format register.
FIG. 13 is a diagram for explaining a common register group (GLLOBAL) of the format register.
FIG. 14 is a diagram for explaining a common register group (LOCAL) of the format register.
FIG. 15 is a diagram for explaining a printer format register group (format [1]) of the format register.
FIG. 16 is a diagram for explaining a printer format register group (format [2]) of the format register.
FIG. 17 is a diagram for explaining an example of a format format that can be supported by the printer;
FIG. 18 is a diagram for explaining format setting processing for the printer.
FIG. 19 is a diagram for explaining a data flow between the image supply device (digital camera) and the printer (data flow according to a PULL type data transfer method);
FIG. 20 is a diagram for explaining command and response operations (operations according to a PULL type data transfer method) between the image supply device (digital camera) and the printer.
FIG. 21 is a diagram for explaining the relationship between a data register of the image supply device (digital camera) and its buffer;
FIG. 22 is a diagram for explaining the configuration of an image file held in the buffer.
FIG. 23 is a diagram for explaining an EXIF header and a TIFF data portion (JPEG image area and digital camera information area 422b) of the image file.
FIG. 24 is a diagram for explaining a TIFF data portion (thumbnail image region 422c) of the image file.
FIG. 25 is a diagram for explaining a state in which a plurality of the image files are held in the image supply device (digital camera).
FIG. 26 is a diagram for describing processing for extracting a thumbnail image from the image file.
FIG. 27 is a diagram for explaining a start address of an image file used in the process of extracting the thumbnail image.
FIG. 28 is a diagram for explaining an example of image rearrangement for index printing a plurality of thumbnail images acquired by the thumbnail image extraction process in the printer.
FIG. 29 is a block diagram illustrating a configuration of the printer.
FIG. 30 is a flowchart showing the operation of the printer.
[Explanation of symbols]
100 communication system
101 Image supply device (digital camera)
102 Printer
461 CPU
462 RAM
463 ROM
464 Physical layer controller (1394 PHY) to realize 1394 interface
465 Link layer controller (1394LINK) to realize 1394 interface
466 Head unit built in printer unit (Head)
467 Printer unit motor unit (Motor)
468 Printer Controller
469 bus

Claims (12)

少なくとも画像と上記画像のサムネイル画像とを有する画像ファイルを保持する他装置内から、通信手段を介して上記画像ファイルに含まれる情報を取り込む通信装置であって、上記他装置から、上記画像ファイルを格納する記憶領域における上記画像ファイルのアドレス情報と、上記画像ファイルにおける上記情報のアドレス情報とを取得し、取得した上記画像ファイルのアドレス情報及び上記情報のアドレス情報に基づき、上記他装置から取り込む情報の記憶領域を直接指定して取り込み処理を行なう情報取込手段を備えることを特徴とする通信装置。 A communication device that captures information contained in the image file from another device that holds an image file having at least an image and a thumbnail image of the image through communication means, and the image file is acquired from the other device. The address information of the image file in the storage area to be stored and the address information of the information in the image file are acquired, and the information taken in from the other device based on the acquired address information of the image file and the address information of the information A communication apparatus, comprising: an information fetching unit that directly designates a storage area and performs fetching processing. 上記情報取込手段は、上記情報のアドレス情報として上記サムネイル画像のアドレス情報を取得し、上記画像ファイルのアドレス情報及び上記サムネイル画像のアドレス情報を用いて上記サムネイル画像を取り込むことを特徴とする請求項1記載の通信装置。The information fetching means acquires address information of the thumbnail image as address information of the information, and fetches the thumbnail image using the address information of the image file and the address information of the thumbnail image. Item 2. The communication device according to Item 1. 上記情報取込手段により取り込まれた複数の情報を任意の順序で配列して一括出力する出力手段を備えることを特徴とする請求項1記載の通信装置。  The communication apparatus according to claim 1, further comprising an output unit configured to collectively output a plurality of pieces of information captured by the information capturing unit in an arbitrary order. 上記出力手段は、少なくとも印刷出力機能を有することを特徴とする請求項3記載の通信装置。  4. The communication apparatus according to claim 3, wherein the output means has at least a print output function. 上記他装置は、ディジタルカメラであることを特徴とする請求項1記載の通信装置。The another apparatus, the communication apparatus according to claim 1, characterized in that it is a digital camera. 他装置内に保持されている画像を取り込み、取り込んだ上記画像を出力するための画像処理を行なう画像処理装置であって、請求項1〜の何れか1項に記載の通信装置の機能を有することを特徴とする画像処理装置。Captures the image stored in the other device, an image processing apparatus that performs image processing for outputting the image taken, the function of the communication apparatus according to any one of claims 1 to 5 An image processing apparatus comprising: 少なくとも画像と上記画像のサムネイル画像とを有する画像ファイルを保持する他装置内から、通信手段を介して上記画像ファイルに含まれる情報を取り込む通信方法であって、上記他装置から、上記画像ファイルを格納する記憶領域における上記画像ファイルのアドレス情報と、上記画像ファイルにおける上記情報のアドレス情報とを取得し、取得した上記画像ファイルのアドレス情報及び上記情報のアドレス情報に基づき、上記他装置から取り込む情報の記憶領域を直接指定して取り込み処理を行なう情報取込工程を備えることを特徴とする通信方法。A communication method for capturing information contained in the image file via communication means from another device holding an image file having at least an image and a thumbnail image of the image, wherein the image file is acquired from the other device. The address information of the image file in the storage area to be stored and the address information of the information in the image file are acquired, and the information captured from the other device based on the acquired address information of the image file and the address information of the information A communication method characterized by comprising an information fetching step of performing a fetching process by directly specifying a storage area. 上記情報取込工程は、上記情報のアドレス情報として上記サムネイル画像のアドレス情報を取得し、上記画像ファイルのアドレス情報及び上記サムネイル画像のアドレス情報を用いて上記サムネイル画像を取り込むことを特徴とする請求項7記載の通信方法。The information capturing step acquires the address information of the thumbnail image as the address information of the information, and captures the thumbnail image using the address information of the image file and the address information of the thumbnail image. Item 8. The communication method according to Item 7. 上記情報取込工程により取り込まれた複数の情報を任意の順序で配列して一括出力する出力工程を備えることを特徴とする請求項7記載の通信方法。8. The communication method according to claim 7, further comprising an output step of arranging and outputting a plurality of pieces of information acquired by the information acquisition step in an arbitrary order. 上記出力工程は、少なくとも印刷出力することを特徴とする請求項9記載の通信方法。The communication method according to claim 9, wherein the output step performs at least print output. 上記他装置は、ディジタルカメラであることを特徴とする請求項7記載の通信方法。8. The communication method according to claim 7, wherein the other device is a digital camera. 他装置内に保持されている画像を取り込み、取り込んだ上記画像を出力するための画像処理を行なう画像処理方法であって、請求項7〜11の何れか1項に記載の通信方法の工程を有することを特徴とする画像処理方法。An image processing method for performing image processing for capturing an image held in another device and outputting the captured image, comprising the steps of the communication method according to any one of claims 7 to 11. An image processing method comprising:
JP2000002959A 2000-01-11 2000-01-11 Communication apparatus, image processing apparatus, communication method, and image processing method Expired - Fee Related JP4343372B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000002959A JP4343372B2 (en) 2000-01-11 2000-01-11 Communication apparatus, image processing apparatus, communication method, and image processing method
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 (en) 2000-01-11 2000-01-11 Communication apparatus, image processing apparatus, communication method, and image processing method

Publications (2)

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

Family

ID=18531988

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000002959A Expired - Fee Related JP4343372B2 (en) 2000-01-11 2000-01-11 Communication apparatus, image processing apparatus, communication method, and image processing method

Country Status (1)

Country Link
JP (1) JP4343372B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4136817B2 (en) * 2002-08-05 2008-08-20 キヤノン株式会社 Digital camera and printer
CN100407124C (en) 2003-03-28 2008-07-30 松下电器产业株式会社 Print content transmission device, print device, and print system
US7471402B2 (en) 2003-03-28 2008-12-30 Panasonic Corporation Printing apparatus and printing method
JP5046542B2 (en) 2006-03-31 2012-10-10 キヤノン株式会社 Data processing apparatus and method, and information processing apparatus and method
JP2008252289A (en) 2007-03-29 2008-10-16 Brother Ind Ltd Image forming system, data processing apparatus, program and image forming apparatus

Also Published As

Publication number Publication date
JP2001195208A (en) 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 (en) Image forming system, image forming apparatus, and medium
JPH10187583A (en) Device and method for data communication
US9001236B2 (en) Image processing apparatus, method, and recording medium for extracting images from a composite image file
JP2001016539A (en) Picture input device, its control method, information processor, information processing method, printing system and recording medium
JPH10285322A (en) Image processor and image-processing system
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 (en) Communication apparatus, image processing apparatus, communication method, and image processing method
JP4072215B2 (en) Image processing apparatus, control method therefor, and image processing system
JPH10285240A (en) Data communication equipment and its method, data communication system and storage medium
JP2001197406A (en) Image processing unit, printer, image processing system, print system, image processing method, and storage medium
JP3774540B2 (en) Data transfer method, image processing system and apparatus
JP2002073306A (en) Printer system, printer control device, method and storage medium
JP2003078844A (en) Image data storage device, printing device, system and method for transferring image data, computer readable storage medium and computer program
JPH10229538A (en) Data communication system, print system and data communication equipment
JP3862349B2 (en) Information processing system, image processing system and method thereof, information processing apparatus, and computer-readable memory
JP2002064511A (en) Data communication system, electronic device and method for controlling them
JP2004030109A (en) Apparatus and method for information processing and storage medium stored with program thereof
JP2001147790A (en) Device and method for processing information and storage medium
JP4073027B2 (en) Imaging device and image output device
JP2000261468A (en) Device and method for connecting network
JP3919718B2 (en) Image forming system and image forming apparatus
JP4208934B2 (en) Imaging apparatus and control method thereof

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