JP4604795B2 - 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法 - Google Patents

画像データキャッシュ装置、印刷装置および画像データキャッシュ方法 Download PDF

Info

Publication number
JP4604795B2
JP4604795B2 JP2005094791A JP2005094791A JP4604795B2 JP 4604795 B2 JP4604795 B2 JP 4604795B2 JP 2005094791 A JP2005094791 A JP 2005094791A JP 2005094791 A JP2005094791 A JP 2005094791A JP 4604795 B2 JP4604795 B2 JP 4604795B2
Authority
JP
Japan
Prior art keywords
image data
image
data
buffer
position information
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
JP2005094791A
Other languages
English (en)
Other versions
JP2006272722A (ja
Inventor
義奈朗 北原
浩二 中尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2005094791A priority Critical patent/JP4604795B2/ja
Publication of JP2006272722A publication Critical patent/JP2006272722A/ja
Application granted granted Critical
Publication of JP4604795B2 publication Critical patent/JP4604795B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storing Facsimile Image Data (AREA)
  • Record Information Processing For Printing (AREA)

Description

本発明は、画像データキャッシュ装置、印刷装置および画像データキャッシュ方法に関する。
特許文献1および特許文献2には、印刷システムが開示されている。これらの従来の印刷システムでは、デジタルカメラとプリンタとが、USB(Universal Serial Bus)ケーブルで接続される。そして、この従来の印刷システムでは、カメラは、そのボタンへの操作に応じてプリンタに対する印刷要求を生成し、プリンタは、この要求に基づいて印刷処理に必要となる画像データをカメラから読み込み、その画像データに基づいて画像を印刷する。
特開2003−259274号公報(図面、発明の詳細な説明) 特開2002−56676号公報(図面、発明の詳細な説明)
これらの従来の印刷システムにおいて、プリンタは、印刷対象の画像の画像データをカメラから読み込み、印刷をする。この画像データの読み込みには、USBケーブルが使用される。このような機器間のデータ通信の速度は、一般的に、同一機器内でのデータ授受の速度より遅い。
そこで、たとえばプリンタに画像バッファの配列を設け、画像データをその画像バッファに適宜記憶し、その後には、この画像バッファから、印刷のために必要な画像のデータを供給することで、画像データが必要になってからその画像データを取得するまでの時間を短縮し、その結果として、印刷時間を短縮することが考えられる。
しかしながら、このような複数の画像バッファを設けたことによる印刷時間の短縮の効果を十分に得ることができない場合がある。たとえば、印刷のために画像データが必要となったとき、プリンタは、画像バッファの配列の先頭から順番にその画像データが記憶されているか否かを判断する。この場合において、その画像データが最後の画像バッファに記憶されているとき、プリンタは、複数の画像バッファを先頭から最後まで調べなければ、そのデータが画像バッファに記憶されていると判断することができない。その結果、画像バッファ内に画像データがあるにも拘らず、画像データが必要になってからその画像データを得るまでに時間がかかり、印刷時間が効果的に短縮されなくなってしまう。
本発明は、印刷のために使用する画像データが画像バッファに記憶されていることを効率よく判断する画像データキャッシュ装置、印刷装置および画像データキャッシュ方法を得ることを目的とする。
本発明に係る画像データキャッシュ装置は、印刷対象の画像データのうちの一部の画像データをそれぞれ記憶する複数の画像バッファと、複数の画像バッファのそれぞれに記憶される画像データの、印刷対象の画像データ内での位置情報を、複数の画像バッファのそれぞれに対応させて配列して記憶する位置情報記憶手段と、印刷のための画像データの要求に基づいて取得された画像データを画像バッファに記憶させた後に次の画像データの要求が発生した場合には、位置情報記憶手段から、画像データを記憶させた画像バッファに対応する位置情報から順番に位置情報を読み込み、読み込んだ位置情報に基づいて、それに対応する画像バッファに該次の要求に係る画像データが記憶されているか否かを順番に判断する判断手段と、画像バッファに該次の要求に係る画像データが記憶されていると判断手段により判断された場合に、その画像バッファの画像データを次の画像データの要求元へ供給する供給手段と、を有するものである。
この構成を採用すれば、画像データの要求元が連続する画像データを続けて要求した場合において、前の要求に基づいて画像データを画像バッファに記憶したときには、判断手段は、その画像データを記憶した画像バッファから、後の要求に係る画像データが記憶されているか否かを判断することで、画像データが画像バッファに存在することが早期に発見される可能性が高くなる。その結果、印刷のために使用する画像データが画像バッファメモリに記憶されていると効率よく判断することができる。
本発明に係る画像データキャッシュ装置は、上述した発明の構成に加えて、判断手段が、供給手段が画像バッファから読み込んだ画像データを供給した後に次の画像データの要求が発生した場合には、位置情報記憶手段から、その供給手段により画像データが読み込まれた画像バッファに対応する位置情報から順番に位置情報を読み込み、読み込んだ位置情報に基づいて、それに対応する画像バッファに該次の要求に係る画像データが記憶されているか否かを順番に判断するものである。
この構成を採用すれば、画像データの要求元が連続する画像データを続けて要求した場合において、前の要求に基づいて画像バッファから読み込んだ画像データを提供したときには、判断手段は、その画像データを提供した画像バッファから、後の要求に係る画像データが記憶されているか否かを判断することで、画像データが画像バッファに存在することが早期に発見される可能性が高くなる。その結果、印刷のために使用する画像データが画像バッファメモリに記憶されていると効率よく判断することができる。
本発明に係る他の画像データキャッシュ装置は、印刷対象の画像データのうちの一部の画像データをそれぞれ記憶する複数の画像バッファと、複数の画像バッファのそれぞれに記憶される画像データの、印刷対象の画像データ内の位置情報を、複数の画像バッファのそれぞれに対応させて配列して記憶する位置情報記憶手段と、印刷のための画像データの要求に基づいて取得された画像データを画像バッファから供給した後に次の画像データの要求が発生した場合には、位置情報記憶手段から、画像データを供給した画像バッファに対応する位置情報から順番に位置情報を読み込み、読み込んだ位置情報に基づいて、それに対応する画像バッファに該次の要求に係る画像データが記憶されているか否かを順番に判断する判断手段と、画像バッファに該次の要求に係る画像データが記憶されていると判断手段により判断された場合に、その画像バッファの画像データを次の画像データの要求元へ供給する供給手段と、を有するものである。
この構成を採用すれば、画像データの要求元が連続する画像データを続けて要求した場合において、前の要求に基づいて画像バッファから読み込んだ画像データを提供したときには、判断手段は、その画像データを提供した画像バッファから、後の要求に係る画像データが記憶されているか否かを判断することで、画像データが画像バッファに存在することが早期に発見される可能性が高くなる。その結果、印刷のために使用する画像データが画像バッファメモリに記憶されていると効率よく判断することができる。
本発明に係る画像データキャッシュ装置は、上述した発明の各構成に加えて、複数の画像バッファに要求に係る画像データが記憶されていないと判断手段により判断された場合に、所定の取得先からその画像データを取得し、画像バッファに記憶させる取得手段を有するものである。
この構成を採用すれば、複数の画像バッファに記憶されていない画像データを取得し、その画像データを画像データの要求元へ提供することができる。
本発明に係る画像データキャッシュ装置は、上述した発明の各構成に加えて、取得手段が、要求された画像データを含む、所定のデータ量の画像データを取得するものである。
この構成を採用すれば、要求に係る画像データが、判断手段による判断の開始位置の画像バッファに存在する確率が高くなり、効率よく、画像データが画像バッファに記憶されていると判断される。
本発明に係る画像データキャッシュ装置は、上述した発明の各構成に加えて、取得手段が、要求された画像データの3倍以上の所定のデータ量の画像データを取得するものである。
この構成を採用すれば、連続する画像データについて、順番に連続3回以上の要求が発生した場合、判断手段は、少なくとも3回の要求の中の2回については、1回目の判断で、画像データが画像バッファに記憶されていると効率よく判断する。
本発明に係る画像データキャッシュ装置は、上述した発明の各構成に加えて、取得手段が、取得を要求された画像データが、所定のデータ量の画像データの先頭部分に含まれるように、所定のデータ量の画像データを取得するものである。
この構成を採用すれば、取得手段が取得する画像データの後部分には、要求された画像データの次の画像データが含まれる。そのため、画像データの要求元が連続する画像データをその順番に沿って要求した場合、2つ目の要求時に1回の判断をするだけで、画像データが画像バッファに記憶されていると判断する可能性が高くなる。
本発明に係る画像データキャッシュ装置は、上述した発明の各構成に加えて、取得手段が、デジタルカメラ、カードリーダ、半導体メモリ、携帯端末あるいはコンピュータである所定の取得先から、画像データを取得するものである。
この構成を採用すれば、デジタルカメラ、カードリーダ、半導体メモリ、携帯端末あるいはコンピュータに保存されている画像データを効率よく印刷することができる。
本発明に係る印刷装置は、要求された画像データをその要求元へ供給する上述した発明に係る各構成の画像データキャッシュ装置と、画像データキャッシュ装置に対して印刷する画像の画像データを要求し、それに応じて供給された画像データを用いて印刷制御データを生成する画像処理手段と、印刷制御データに基づく印刷を実行する印刷手段と、を有するものである。
この構成を採用すれば、画像処理手段から取得が要求された画像データが画像データキャッシュ装置の画像バッファメモリに記憶されている場合には、そのことを効率よく判断して、印刷することができる。
本発明に係る画像データキャッシュ方法は、印刷対象の画像データのうちの一部をそれぞれ記憶する複数の画像バッファに、要求された画像データが存在する場合にはその画像データを要求元へ供給する画像データキャッシュ方法において、所定の要求元から要求された画像データを所定の取得先から取得し要求元へ供給するとともに画像バッファに記憶させるステップと、画像バッファに画像データを記憶させた場合に、複数の画像バッファに対応して配列された所定の位置情報記憶手段のうちのその画像データを記憶させた画像バッファに対応する位置情報記憶手段に、その画像データの、印刷対象の画像データ内での位置情報を記憶させるステップと、要求された画像データを画像バッファに記憶させた後に次の画像データの要求が発生した場合に、画像データを記憶させた画像バッファに対応する位置情報から順番に位置情報を読み込み、読み込んだ位置情報に基づいて、それに対応する画像バッファに該次の要求に係る画像データが記憶されているか否かを順番に判断するステップと、画像バッファに該次の要求に係る画像データが記憶されている場合には、その画像バッファの画像データを所定の要求元へ供給するステップと、を有するものである。
この方法を採用すれば、画像データの要求元が連続する画像データを続けて要求した場合において、前の要求に基づいて画像データを画像バッファに記憶したときには、その画像データを記憶した画像バッファから、後の要求に係る画像データが記憶されているか否かを判断するので、画像データが画像バッファに存在することが早期に発見される可能性が高くなる。その結果、印刷のために使用する画像データが画像バッファメモリに記憶されていると効率よく判断することができる。
本発明に係る他の画像データキャッシュ方法は、印刷対象の画像データのうちの一部をそれぞれ記憶する複数の画像バッファに、要求された画像データが存在する場合にはその画像データを要求元へ供給する画像データキャッシュ方法において、所定の要求元から要求された画像データを所定の取得先から取得し要求元へ供給するとともに画像バッファに記憶させるステップと、画像バッファに画像データを記憶させた場合に、複数の画像バッファに対応して配列された所定の位置情報記憶手段のうちのその画像データを記憶させた画像バッファに対応する位置情報記憶手段に、その画像データの、印刷対象の画像データ内での位置情報を記憶させるステップと、要求された画像データを画像バッファから読み込んだ後に次の画像データの要求が発生した場合に、画像データを読み込んだ画像バッファに対応する位置情報から順番に位置情報を読み込み、読み込んだ位置情報に基づいて、それに対応する画像バッファに該次の要求に係る画像データが記憶されているか否かを順番に判断するステップと、画像バッファに該次の要求に係る画像データが記憶されている場合には、その画像バッファの画像データを所定の要求元へ供給するステップと、を有するものである。
この方法を採用すれば、画像データの要求元が連続する画像データを続けて要求した場合において、前の要求に基づいて画像バッファから読み込んだ画像データを提供したときには、その画像データを提供した画像バッファから、後の要求に係る画像データが記憶されているか否かを判断するので、画像データが画像バッファに存在することが早期に発見される可能性が高くなる。その結果、印刷のために使用する画像データが画像バッファメモリに記憶されていると効率よく判断することができる。
以下、本発明の実施の形態に係る画像データキャッシュ装置、印刷装置および画像データキャッシュ方法を、図面に基づいて説明する。印刷装置は、デジタルスチルカメラ(DSC:Digital Still Camera)から、印刷に使用する画像データを取得するプリンタを例として説明する。画像データキャッシュ装置は、プリンタの一部として説明する。画像データキャッシュ方法は、プリンタの動作の一部として説明する。
図1は、本発明の実施の形態に係る印刷装置としてのプリンタ1およびそれに接続されるDSC2を示す図である。DSC2とプリンタ1とは、USBケーブル3にて接続される。このようにDSC2とプリンタ1とを直接に接続するシステムは、ダイレクト印刷システムの一種である。なお、DSC2とプリンタ1とは、USBケーブル3以外のたとえばプリンタ専用ケーブルなどの他のケーブルや、無線通信回線などにより接続されてもよい。
図2は、DSC2が撮像モードで動作している場合の構成を示すブロック図である。DSC2は、撮像データを出力するCCD(Charge Coupled Device)カメラ51と、画像などを表示する液晶モニタ11と、図示外の撮像ボタンや選択ボタンなどを有する入力デバイス12と、画像データ生成部52と、保存処理部53と、半導体メモリ13と、を有する。半導体メモリ13は、たとえばフラッシュメモリなどのカード形状に形成されたものであり、DSC2の図示外の筐体と着脱可能である。
画像データ生成部52は、入力デバイス12の撮像ボタンが操作されたときのCCDカメラ51から出力される撮像データを用いて、EXIF画像データを生成する。
図3は、画像データ生成部52によるEXIF画像データの生成処理を説明するための説明図である。図3(A)は、CCDカメラ51から出力される撮像データによる画像である。撮像データによる画像は、横長の画像であり、一軒の家が撮像されている。
画像データ生成部52は、図3(A)に示す画像の撮像データを、図中の点線で区切られたブロック単位で符号化し、図3(B)に示すように、その符号化したデータをエンコード順に並べた中間データを生成する。1つのブロックは、図3(A)に示すように、8×8ピクセルである。図3の画像では、画像データ生成部52は、撮像データによる画像を縦6行、横10列の60個のブロックに分けて、そのブロック毎に符号化している。
ブロック単位で符号化した後、画像データ生成部52は、その符号化後の中間データを、所定の圧縮率で圧縮する。具体的には、画像データ生成部52は、圧縮前の図3(B)の中間データにおけるデータ量を基準として、圧縮後の総データ量が所定の圧縮率のデータ量となるように、画質への影響が少ない成分のデータを間引いたりして、中間データを圧縮する。
中間データを圧縮した後、画像データ生成部52は、図3(C)に示すように、その圧縮された画像データを含むEXIF画像データを生成する。EXIF画像データは、ヘッダデータと、圧縮された中間データによる画像データと、EOF(End Of File)データと、を有する。ヘッダデータには、たとえば、画像データのサイズ(図3(A)の画像の縦方向のピクセル数および横方向のピクセル数)などの情報が必要に応じて情報化される。EXIF画像データは、JPEG(Joint Photographic Coding Experts Group)方式で圧縮された画像データを有する。
なお、図3(B)の中間データおよび図3(C)のEXIF画像データにおいて、各四角形のサイズは、それぞれのブロックのデータ量を示している。図3(B)において各ブロックの四角形のサイズが等しいように、中間データにおいては、各ブロックのデータ量は、等しい。これに対して、図3(C)においてブロック3の四角形のサイズとブロック4の四角形のサイズとが異なるように、JPEG方式で圧縮をすると、各ブロックのデータ量は、ブロック毎に異なる。
図2に戻り、画像データ生成部52は、生成したEXIF画像データを保存処理部53に供給する。保存処理部53は、供給されたEXIF画像データをEXIF画像ファイル21として、半導体メモリ13に保存する。
半導体メモリ13は、EXIF画像ファイル21などのデータを記憶するデータ記憶領域22と、メモリ管理領域23と、を有する。半導体メモリ13は、たとえばFAT(File Allocation Table)16やFAT32などのファイルシステムにより、記憶データを管理する。メモリ管理領域23には、データ記憶領域22に記憶されるファイルのファイル名や、各ファイルの、データ記憶領域22内の位置情報などが保存される。
画像データ生成部52は、データ記憶領域22に、EXIF画像ファイル21を保存する。また、保存処理部53は、メモリ管理領域23に、保存したEXIF画像ファイル21のファイル名や、そのファイルのデータ記憶領域22内の位置情報を保存する。これにより、半導体メモリ13には、DSC2により撮像された画像の画像データを有するEXIF画像ファイル21が保存される。
図1に戻り、ダイレクト印刷時には、DSC2は、液晶モニタ11、入力デバイス12および半導体メモリ13の他に、USB通信I/F(InterFace)14およびUSBマスストレージクラス15を有する通信I/F16と、印刷指示部17と、画像データ送信部18と、を有する。半導体メモリ13には、複数のEXIF画像ファイル21が記憶される。なお、USBマスストレージクラス15、印刷指示部17および画像データ送信部18は、DSC2の図示外のCPU(Central Processing Unit)が、図示外のDSC2の記憶デバイスに記憶されたUSBマスストレージクラスプログラム、印刷指示プログラムおよび画像データ送信プログラムを実行することで、実現される。
USB通信I/F14は、図示外のUSBコネクタを有する。USBコネクタには、USBケーブル3が接続される。USB通信I/F14は、USBコネクタから信号が入力されるとその信号からデータを抽出する。また、USB通信I/F14は、送信するデータに基づいて信号を生成し、この信号をUSBコネクタへ出力する。
USBマスストレージクラス15は、USB通信I/F14を用いて、ホストとデバイスとの間でデータを送受する通信処理部である。USBマスストレージクラス15は、そのサブクラスとして、SCSI(Small Computer System Interface)サブクラスを使用する。
USB通信I/F14とUSBマスストレージクラス15とを有するDSC2の通信I/F16は、印刷指示部17や画像データ送信部18から供給されたデータを、USBケーブル3を介してプリンタ1へ送信する。DSC2の通信I/F16は、USBケーブル3を介してプリンタ1から受信したデータを、印刷指示部17や画像データ送信部18へ供給する。
印刷指示部17は、印刷する画像を選択し、その画像をプリンタ1に印刷させるための印刷指示を生成し、DSC2の通信I/F16へ供給する。
画像データ送信部18は、半導体メモリ13から、送信を要求された画像データを読み込み、DSC2の通信I/F16へ供給する。
プリンタ1は、紙媒体30などに対して印刷するための印刷機構として、媒体30を送る送りローラ31と、送りローラ31などを回転駆動する送りモータ32と、キャリッジ33と、キャリッジ33を送りローラ31の軸方向に沿って往復運動させるキャリッジモータ34と、を有する。キャリッジ33は、イエロー、マゼンタ、シアン、ブラックなどといった所定色数のカートリッジが脱着可能に取り付けられる。キャリッジ33の図示せぬプラテン側の部位には、図示外のインク吐出用ヘッドが形成される。インク吐出用ヘッドには、図示外の多数のインクジェットノズルが開設される。各インクジェットノズルの内側には、図示外のピエゾ素子が配設される。ピエゾ素子は、それに印加される電圧に応じて変形する素子である。ピエゾ素子が電圧により変形することで、その変形量に応じた量のインクがインクジェットノズルから吐出される。
プリンタ1は、この他にも、USB通信I/F36およびUSBマスストレージクラス37を有する通信I/F38と、印刷指示解釈部39と、画像処理手段としての画像処理部40と、画像処理メモリ41と、印刷手段としての制御部42と、画像バッファメモリ43と、判断手段、供給手段および取得手段としての画像バッファ管理部44と、位置情報記憶手段としてのオフセット配列メモリ45と、を有する。
プリンタ1の通信I/F38は、USBケーブル3を介してDSC2の通信I/F16から受信したデータを、印刷指示解釈部39または画像バッファ管理部44へ供給する。プリンタ1の通信I/F38は、印刷指示解釈部39または画像バッファ管理部44から供給されたデータを、USBケーブル3を介してDSC2の通信I/F16へ送信する。
印刷指示解釈部39は、印刷指示を解釈し、その解釈に基づいて内部指示を生成し、画像処理部40へ供給する。
画像処理部40は、内部指示に基づいて、印刷する画像の画像データを取得し、取得した画像データを用いて印刷制御データを生成する。画像処理部40は、その処理中に発生するたとえば画像処理用のパラメータなどを画像処理メモリ41に一時的に保存し、印刷制御データの生成の際に利用する。画像処理部40は、生成した印刷制御データを制御部42へ供給する。
制御部42は、印刷制御データに基づいて、送りモータ32およびキャリッジモータ34へ制御信号を出力し、キャリッジ33の複数のピエゾ素子に電圧を印加する。これにより、制御部42は、印刷制御データに基づいて、印刷を実行する。
図4は、画像バッファメモリ43およびオフセット配列メモリ45のメモリ構造を示す図である。
画像バッファメモリ43は、たとえば数〜数十メガバイト程度の記憶容量を有するメモリであり、所定の記憶容量の画像バッファ61をn本(nは、1以上の整数)有する。各画像バッファ61の記憶容量は、たとえば数〜数十キロバイト程度であり、DSC2から取得された画像データが格納される。画像バッファ61の記憶容量は、後述するように、画像処理部40が画像バッファ管理部44に画像データを要求する1回のデータ量より大きい。たとえば、5メガバイトの画像バッファメモリ43に、3キロバイトの画像バッファ61を設ける場合、画像バッファ61の本数は、約1666(=n)本になる。
以下、複数の画像バッファ61を互いに区別する場合には、図4の一番上に図示する先頭の画像バッファメモリ43から順番に、第一画像バッファ61、第二画像バッファ61、・・・、第n画像バッファ61と記載する。複数の画像バッファ61には、図4の上から順番に、0番から(n−1)番までのインデックス番号が対応付けられる。
オフセット配列メモリ45は、数メガバイトの記憶容量を有するメモリであり、画像バッファ61の本数(n本)と同数のオフセットデータ62を有する。なお、画像バッファメモリ43とオフセット配列メモリ45は、同一のメモリ素子に形成してもよい。以下、複数のオフセットデータ62を互いに区別する場合には、図4の一番上に図示する先頭のオフセット配列メモリ45から順番に、第一オフセットデータ62、第二オフセットデータ62、・・・、第nオフセットデータ62と記載する。複数のオフセットデータ62には、図4の上から順番に、0番から(n−1)番までのインデックス番号が対応付けられる。
各オフセットデータ62は、同じインデックス番号が対応付けらける各画像バッファ61と対で利用される。各オフセットデータ62は、たとえば4バイトのデータサイズであり、同じインデックス番号が対応付けられる画像バッファ61に格納されている画像データの、取得先(ここでは、半導体メモリ13のデータ記憶領域22)での位置情報が格納される。ここでは、画像バッファ61に格納されている画像データの先頭データの、その画像データの先頭からのデータ位置を示すオフセット値が格納される。
また、各オフセットデータ62には、格納時刻データ63が対応付けられて記憶される。格納時刻データ63には、画像バッファ61に画像データを格納した時刻や、その画像データを取得した時刻などの、画像バッファ61に格納されている画像データに関する時刻情報が格納される。
画像バッファ管理部44は、複数の画像バッファ61および複数のオフセットデータ62を管理し、要求された画像データを、画像バッファ61から読み出して、画像データの要求元へ供給する。画像バッファ管理部44は、また、複数の画像バッファ61に格納されていない画像データを、DSC2から取得し、要求元へ供給するとともに、画像バッファ61に記憶させる。
次に、以上のような構成を有するダイレクト印刷システムの動作を説明する。
DSC2とプリンタ1がUSBケーブル3で接続されると、DSC2のUSBマスストレージクラス15とプリンタ1のUSBマスストレージクラス37とが通信する。これにより、USBマスストレージクラス15,37がデータをバルク転送するために使用するエンドポイントなどを生成し、DSC2とプリンタ1とは互いにデータを送受可能になる。
DSC2の印刷指示部17は、半導体メモリ13に記憶されているEXIF画像ファイル21の中から、印刷する画像のファイルを選択する。具体的には、印刷指示部17は、半導体メモリ13から、EXIF画像ファイル21のファイル名などのデータを読み込み、そのファイル名などを液晶モニタ11に表示させる。印刷指示部17は、ユーザの操作に対応して入力デバイス12が出力する入力データに基づいて、印刷対象のEXIF画像ファイル21を選択する。
印刷する画像のファイルを選択した後、印刷指示部17は、印刷条件を選択する。具体的には、印刷指示部17は、印刷条件の選択画面を液晶モニタ11に表示させる。印刷条件には、たとえばA4、L版などの印刷をする媒体30のサイズや、普通紙、光沢紙などの媒体30の種類、1up、2upなどの1枚の媒体30に印刷する画像のレイアウトなどがある。印刷指示部17は、ユーザの操作に対応して入力デバイス12が出力する入力データに基づいて、印刷条件を選択する。
その後、印刷指示部17は、その画像をその印刷条件で印刷するための印刷指示を生成し、DSC2の通信I/F16に供給する。たとえば、画像を1upにてL版の光沢紙に印刷する場合、この印刷指示には、その印刷する画像のファイル名、媒体30としてL版の光沢紙を指定する印刷条件、その媒体30の全面に1つの画像を印刷する印刷条件などか含まれる。なお、印刷指示において、ファイル名に替えて、半導体メモリ13に記憶されるEXIF画像ファイル21毎に、1対1対応にて発行されるファイルID(identification)などを使用してもよい。
DSC2の通信I/F16は、供給された印刷指示を、USBケーブル3を介してプリンタ1の通信I/F38へ送信する。通信I/F38は、受信した印刷指示を印刷指示解釈部39へ供給する。
USBの仕様では、USBケーブル3で接続される複数の機器の中の1つは、USBのホストとして機能し、その他はUSBデバイスとして機能する。DSC2は、USBケーブル3により、USBホストして機能するコンピュータと接続することを前提として製造されているので、一般的にUSBデバイスとして機能する。このようなDSC2と直接に接続されるプリンタ1は、USBホストとして機能する。この場合、DSC2の通信I/F16は、たとえば、プリンタ1の通信I/F38による周期的な印刷指示の取得処理に基づいて、供給された印刷指示を、プリンタ1の通信I/F38へ送信するようにすればよい。
印刷指示解釈部39は、供給された印刷指示を解釈し、その印刷指示にて指定された印刷を実行するための内部指示を生成し、画像処理部40へ供給する。たとえば、印刷指示において、印刷する画像のファイル名と、L版の光沢紙を指定する印刷条件と、その媒体30の全面に1つの画像を印刷する印刷条件とが含まれている場合、印刷指示解釈部39は、そのファイル名の画像データに対して画像補正の一種であるAPF(Auto Photo Fine)処理をした後、L版の光沢紙に高品質にて全面に印刷する内部指示を生成し、画像処理部40へ供給する。
印刷の内部指示が供給されると、画像処理部40は、その内部指示に従って印刷制御データの生成を開始する。画像処理部40は、画像データを、画像バッファ管理部44に要求する。この画像データの要求において、画像処理部40は、たとえば、印刷する画像データのファイル名と、要求する画像データの範囲とを指定する。要求する画像データの範囲は、たとえば、その範囲の先頭データのオフセット値(たとえば先頭からのキロバイト数)と、要求するデータ量とで指定する。データ量は、たとえば512バイトである。
図5は、画像バッファ管理部44の動作を示すフローチャートである。
画像バッファ管理部44は、印刷が開始されると(ステップST1)、画像バッファメモリ43およびオフセット配列メモリ45を初期化し、制御に使用する制御ポインタ変数に初期値「0」を代入する(ステップST2)。画像バッファメモリ43およびオフセット配列メモリ45は、初期化されることで、データを格納していない状態となる。その後、画像バッファ管理部44は、画像データの要求待ち状態になる(ステップST3)。
上述したように画像処理部40により画像データが要求されると、画像バッファ管理部44は、オフセット配列メモリ45を検索し、要求された画像データが画像バッファメモリ43に記憶されているか否かを判断する。
なお、初期化直後には、オフセット配列メモリ45には、画像データが格納されていない。そのため、この最初の画像データの要求があったときには、画像バッファ管理部44は、オフセット配列メモリ45を検索することなく、後述するステップST8を直ちに実行するようにしてもよい。
オフセット配列メモリ45の検索処理において、画像バッファ管理部44は、まず、そのときに保持している制御ポインタ変数の値に等しいインデックス番号のオフセットデータ62から、オフセット値を読み込む(ステップST4)。画像バッファ管理部44は、読み込んだオフセット値と、制御バッファの記憶容量とに基づいて、オフセット値を読み込んだオフセットデータ62と同じインデックス番号の画像バッファ61に、画像処理部40により要求された画像データが格納されているか否かを判断する(ステップST5)。
たとえば、オフセットデータ62から読み込んだオフセット値が「0」であり、各画像バッファ61の記憶容量が3キロバイトであり、且つ、画像処理部40が1キロバイト目から2キロバイト目までのオフセットの画像データを要求した場合、画像バッファ管理部44は、要求された画像データが画像バッファ61に格納されていると判断する。同様の状況下で、画像処理部40が4キロバイト目から5キロバイト目までのオフセットの画像データを要求した場合、画像バッファ管理部44は、画像バッファ61には、要求された画像データが格納されていないと判断する。
制御ポインタ変数の値に等しいインデックス番号の画像バッファ61に、画像処理部40により要求された画像データが格納されていない場合、画像バッファ管理部44は、さらに、すべての画像バッファ61について、画像処理部40により要求された画像データが格納されていないと判断したか否かを判断する(ステップST6)。
そして、すべての画像バッファ61について、ステップST5の判断を行っていない場合、画像バッファ管理部44は、制御ポインタ変数の値を、画像データを格納する画像バッファ61の中の、次のインデックス番号に更新する(ステップST7)。
図4に示すようにn本の画像バッファ61がある場合において、制御ポインタ変数の値が「n−1」(最後のインデックス番号)であるときには、画像バッファ管理部44は、制御ポインタ変数の値を「0」(最初のインデックス番号)に更新する。制御ポインタ変数の値が「n−1」以外の値であるときには、画像バッファ管理部44は、制御ポインタ変数の値を「1」増加する。
制御ポインタ変数の値を更新した後、画像バッファ管理部44は、更新した制御ポインタ変数の値に等しいインデックス番号のオフセットデータ62の読込処理(ステップST4)と、その読み込んだオフセット値を用いた画像データの有無の判断処理(ステップST5)とを実行する。
このステップST4からST7までの検索処理を繰り返すことで、画像バッファ管理部44は、画像処理部40により要求された画像データが複数の画像バッファ61に格納されているか否かを、画像バッファ61ごとに1つずつ順番に判断する。
この画像バッファ管理部44による検索処理は、要求に係る画像データを格納する画像バッファ61が発見されるまで、あるいは、すべての画像バッファ61についての検索が終了するまで繰り返される。
画像処理部40により要求された画像データが複数の画像バッファ61に格納されておらず、すべての画像バッファ61についての検索が終了したと判断すると(ステップST6)、画像バッファ管理部44は、DSC2から画像データを取得する処理を開始する。
具体的には、画像バッファ管理部44は、DSC2の半導体メモリ13に記憶されている画像データを、DSC2に送信させる送信指示を生成する(ステップST8)。この送信指示において、画像バッファ管理部44は、取得する画像データの先頭データとして、画像処理部40により要求された画像データの先頭データを指定し、取得する画像データのデータ量として、1つの画像バッファ61の記憶容量を指定する。
図6は、画像処理部40が画像バッファ管理部44に要求する画像データと、画像バッファ管理部44がDSC1から取得する画像データとの関係を示す図である。図6に示すように、画像処理部40が、画像データの3ブロック目の途中のデータを先頭データとするオフセット値を指定し、そこから4ブロック目の途中までの画像データの取得を要求した場合、画像バッファ管理部44は、その先頭データから画像バッファ61の1本分の記憶容量に相当するデータ量の画像データの送信を要求する。
この実施の形態では、USBマスストレージクラス37,15を用いているため、DSC2の半導体メモリ13が、プリンタ1側から見て、1つのストレージとして認識される。そのため、プリンタ1の画像バッファ管理部44は、まず、DSC2の画像データ送信部18から、DSC2の半導体メモリ13のメモリ管理領域23の情報を取得し、送信を指示する画像データの、半導体メモリ13のデータ記憶領域22内の保存場所を特定する。次に、画像バッファ管理部44は、特定した保存場所に保存されている画像データの送信指示を生成する。
なお、画像バッファ61の記憶容量は、画像処理部40が画像バッファ管理部44に1回に要求するデータ量より大きく設定され、たとえば画像処理部40が画像バッファ管理部44に1回に要求するデータ量の3倍以上(この実施の形態では3倍)とされる。そのため、画像バッファ管理部44は、画像処理部40による画像データの要求に基づいて、その要求されたデータ量より多いデータ量の送信をDSC2に指示する。
画像バッファ管理部44は、生成した画像データの送信指示を、プリンタ1の通信I/F38へ供給する。プリンタ1の通信I/F38は、供給された画像データの送信指示を、DSC2の通信I/F16へ送信する。DSC2の通信I/F16は、受信した画像データの送信指示を、画像データ送信部18へ供給する。画像データ送信部18は、半導体メモリ13から、送信を指示された画像データを読み込み、DSC2の通信I/F16に供給する。DSC2の通信I/F16は、供給された画像データを、プリンタ1の通信I/F38へ送信する。プリンタ1の通信I/F38は、受信した画像データを、画像バッファ管理部44へ供給する。これにより、画像バッファ管理部44は、送信を指示した画像データを取得する。
画像バッファ管理部44は、送信を指示した画像データを取得すると、そのDSC2から取得した画像データを、画像データを格納していない空き画像バッファ61に保存する。空いている画像バッファ61が無い場合には、画像バッファ管理部44は、オフセット配列メモリ45において格納時刻が最も古いオフセットデータ62に対応する画像バッファ61に、DSC2から取得した画像データを格納する(ステップST9)。
また、画像バッファ管理部44は、DSC2から取得した画像データを保存した画像バッファ61に対応するオフセットデータ62に、DSC2から取得した画像データの先頭データのオフセット値を保存し、そのオフセットデータ62に対応する格納時刻データ63の時刻を、現時刻に更新する。
DSC2から取得した画像データを画像バッファ61に格納した後、画像バッファ管理部44は、そのDSC2から取得した画像データの先頭から、画像処理部40により取得要求されたデータ量の画像データを抽出し、画像処理部40へ供給する(ステップST10)。
その後、画像バッファ管理部44は、制御ポインタ変数の値を、更新したオフセットデータ62のインデックス番号に更新し(ステップST11)、画像データの要求待ちの状態に戻る(ステップST3)。
一方、画像処理部40により要求された画像データがいずれかの画像バッファ61に格納されている場合、画像バッファ管理部44は、その画像バッファ61に対応するオフセットデータ62についての判断(ステップST5)において、画像処理部40により要求された画像データが格納されていると判断する。
そして、画像バッファ管理部44は、その判断したときの制御ポインタ変数の値に等しいインデックス番号の画像バッファ61から画像データを読み込む(ステップST12)。画像バッファ管理部44は、画像処理部40により取得が要求された画像データのオフセットと、オフセットデータ62に保存されているオフセット値との対応関係に基づいて、画像バッファメモリ43から読み込んだ画像データの中から、画像処理部40により要求された範囲の画像データを抽出し、画像処理部40へ供給する(ステップST13)。
その後、画像バッファ管理部44は、画像データが格納されていると判断したときの制御ポインタ変数の値を保持し(ステップST14)、画像データの取得要求待ちの状態に戻る(ステップST3)。
画像処理部40は、以上のように動作する画像バッファ管理部44に対して、画像データが必要になると、その必要な画像データの取得を要求し、それに応じて画像バッファ管理部44から取得した画像データを用いて印刷制御データの生成処理を実行する。
具体的には、画像を90度回転して媒体30に印刷する場合(たとえば、図3(A)の画像の左端の列から順番に媒体30に印刷する場合)、画像処理部40は、印刷イメージを生成する前に、印刷が指定されたファイル名の画像データを、そのファイルの先頭の画像データから所定データ量ずつ順番に取得し、画像ファイルにおける各行の先頭データ(図3(A)の画像の左端のブロックの先頭データ)のオフセット値を特定する。画像処理部40は、特定した各行の先頭データのオフセット値を、画像処理メモリ41に記憶させる。
特に、印刷する画像データがJPEG形式の画像データである場合、その画像データにおいて、各ブロックのデータ量は一定しない。画像処理部40は、印刷イメージを生成する前に、印刷が指定されたファイル名の画像データを、そのファイルの先頭の画像データから所定データ量ずつ順番に取得し、画像ファイルにおける各行の先頭データのオフセット値を特定する。画像処理部40は、特定した各行の先頭データのオフセット値を、画像処理メモリ41に記憶させる。
また、画像処理部40は、印刷指示解釈部39の内部指示によりAPF処理などの画像処理が指定されている場合、画像に対してその処理をする前に、印刷が指定されたファイル名の画像データを、そのファイルの先頭の画像データから所定データ量ずつ順番に取得し、その画像処理に使用するパラメータを生成する。画像処理部40は、演算したパラメータを画像処理メモリ41に記憶させる。
また、画像処理部40は、印刷イメージを生成するために、印刷が指定されたファイル名の画像データを、たとえばキャリッジ33の走査により媒体30へ印刷する順番で所定データ量ずつ取得し、印刷イメージを生成する。画像処理部40は、APF処理などの画像処理のためのパラメータを演算している場合、取得した画像データに対してそのパラメータを用いた画像補正処理を実行し、その補正後の画像データを使用して印刷イメージを生成する。画像処理部40は、生成した印刷イメージを画像処理メモリ41に記憶させる。
このように、画像処理部40は、印刷の内部指示に応じた回数にわたって、印刷する画像データを何度も利用する。そのとき、画像処理部40は、個々の処理に応じて、画像データを、画像ファイルにおける画像データの格納順にて要求したり、その格納順とは異なる順番にて要求したりする。画像処理部40は、画像データを、その全体からすれば任意の順番にて要求し、微視的には連続した順番にて要求する。
印刷イメージを生成すると、画像処理部40は、生成した印刷イメージの色成分を、プリンタ1のインク色成分へ変換する色変換処理と、各インク色のイメージを、印刷するドット単位の印刷有無データへ変換するハーフトーン処理と、ドット単位の印刷有無データを、キャリッジ33からのインク吐出順に並べ替えるなどのインターレース処理とを実行し、印刷制御データを生成する。画像処理部40は、生成した印刷制御データを、制御部42へ供給する。
印刷制御データが供給されると、制御部42は、その印刷制御データに基づく印刷を開始する。制御部42は、まず、供給された印刷制御データに基づいて、送りモータ32を駆動し、プリンタ1にセットされている媒体30を、所定の方向からキャリッジ33に対向する位置へ供給する。制御部42は、キャリッジモータ34を駆動しながら、印刷制御データに基づいて、キャリッジ33の複数のピエゾ素子に電圧を印加する。これにより、媒体30のキャリッジ33で走査された部位には、画像の一部が印刷される。また、制御部42は、送りモータ32を駆動して媒体30を所定量ずつ送る制御と、印刷制御データに従って媒体30のキャリッジ33で走査する部位に画像を印刷する制御とを、繰り返し実行する。これにより、媒体30には、DSC2において指定された画像が、DSC2において指定された印刷条件にて印刷される。
図7は、DSC2の半導体メモリ13に記憶される画像データを示す図である。図7(A)は、半導体メモリ13のデータ記憶領域22に画像ファイルとして記憶されている画像データを示す図である。この画像データは、約35キロバイトのデータ量を有する。オフセット値が1キロバイトを単位として増減するものである場合、この画像データの読出しには、「0」から「34」までのオフセット値が使用される。
図7(B)は、図7(A)の画像データに基づく画像を示す図である。画像は、3行に分けて符号化される。画像ファイルにおいて、各行のデータ量は、15キロバイトである。図7(B)に示すように、一番上の行の画像データには「0」から「14」のオフセット値が対応し、二行目の画像データには「15」から「29」のオフセット値が対応し、一番下の行の画像データには「30」から「44」のオフセット値が対応する。
なお、JPEG方式にて符号化をした場合、複数の行のデータ量は、互いに異なるデータ量になる。図7(B)の場合のように、各行のデータ量が一定のデータ量に揃うことはない。したがって、各行のデータ量は、一定に揃わないことが多い。
図8は、図7(B)の画像の左端部の印刷イメージを生成するために画像処理部40の取得要求に基づいて画像バッファ管理部44がDSC2から取得する画像データのオフセット値と、それに基づく画像バッファ管理部44の検索回数との対応関係を示す図である。図8の左列は、そのオフセット値のリストである。図8の中央列は、画像バッファ管理部44の検索回数のリストである。図8の右列は、比較例の画像バッファ管理部による検索回数のリストである。
画像処理部40は、図8の上から順番に、同図に示すオフセット値の画像データを要求する。この場合、画像処理部40は、1キロバイト毎に、画像データを要求する。画像バッファ管理部44は、この各オフセット値での要求に基づいて、図8の同一行に記載される回数の検索を実行する。
図7(B)の画像の左端部の印刷イメージを生成する場合、画像処理部40は、まず、図7(B)の画像の左上隅の画像データ(オフセット値「0」)から順番に、第一行の途中(オフセット値「8」)までの画像データを要求する。その後、画像処理部40は、図7(B)の画像の二行目左端の画像データ(オフセット値「15」)から順番に、第二行の途中(オフセット値「19」)までの画像データを要求する。さらに、画像処理部40は、図7(B)の画像の三行目左端の画像データ(オフセット値「30」)から順番に、第三行の途中(オフセット値「35」)までの画像データを要求する。
図9は、図8の左列に示すオフセット値のリストによる画像データの要求がなされた後の、画像バッファメモリ43およびオフセット配列メモリ45の記憶内容を示す図である。ここで、画像バッファ61の本数は、8本である。各画像バッファ61の記憶容量は、3キロバイトであり、画像処理部40が要求する画像データの3倍である。
図8の左列のリストの順番にてオフセット値を指定する画像データの要求が順番に発生した場合、図9に示すように、インデックス番号「0」の画像バッファ61にはオフセット値「0〜2」の3キロバイトの画像データが格納され、インデックス番号「0」のオフセットデータ62には、オフセット値「0」が記憶される。インデックス番号「1」の画像バッファ61にはオフセット値「3〜5」の3キロバイトの画像データが格納され、インデックス番号「1」のオフセットデータ62には、オフセット値「3」が記憶される。インデックス番号「2」から「7」までの画像バッファ61およびオフセットデータ62についても、図9に示すように、同様の対応関係でオフセット値が格納される。
このような画像データの要求の下では、画像バッファ管理部44は、図8の中央列に示す回数で、検索処理を実行する。画像バッファ管理部44は、複数の画像バッファ61に記憶されていない画像データの要求があったときには、画像バッファ61の本数に等しい回数(8回)の検索を実行する。複数の画像バッファ61に記憶されている画像データについての要求があったときには、画像バッファ管理部44による検索は1回で済む。前回要求した画像データと同一の画像バッファ61に今回の画像データが存在するため、画像バッファ管理部44による検索は1回で済む。このときの合計の検索回数は、80回になる。
図8の右列は、比較例での画像バッファ管理部によるオフセットデータ62の検索回数である。この比較例の画像バッファ管理部は、画像データの要求があったときには、常に画像バッファ61の先頭から(つまり、常にインデックス番号「0」から)順番に、複数の画像バッファ61に対応するオフセットデータ62を検索するものである。
この比較例の場合、画像バッファ管理部は、画像バッファ61に記憶されていない画像データの要求があったときには、画像バッファ61の本数に等しい回数(8回)の検索を実行する。また、画像バッファ61に記憶されている画像データの取得要求があったときには、その画像データが格納されている画像バッファ61のインデックス番号に1を加えた回数の検索を実行する。合計の検索回数は、136回になり、上述した実施の形態の場合の約1.5倍になる。
なお、ここでは画像バッファ61の本数を、説明のために8本としたが、実際の画像バッファ61の本数は、少なくとも数百本程度とされる。そして、画像バッファ61の本数が増えれば増えるほど、この実施の形態の画像バッファ管理部44による検索回数と、比較例の画像バッファ管理部による検索回数との差は、増大する。
以上のように、この実施の形態では、プリンタ1に画像バッファメモリ43を設け、画像バッファ管理部44は、画像処理部40から要求された画像データがこの画像バッファメモリ43に格納されている場合には、画像バッファメモリ43からその要求に係る画像データを読み出して、画像処理部40へ供給する。したがって、画像処理部40が、画像データを要求してから、その要求に係る画像データを取得するまでの時間が短縮され、その結果として、印刷時間は短縮される。
また、この実施の形態では、画像バッファ管理部44は、複数の画像バッファ61に格納されている画像データの、DSC2の半導体メモリ13におけるオフセットデータを、各画像バッファ61と1対1対応で設けられた複数のオフセットデータ62に保存し、そのオフセットデータ62を1つずつ順番に読み込んで検索することで、画像処理部40により要求された画像データが画像バッファメモリ43に記憶されているか否かを判断する。
しかも、この実施の形態では、画像バッファ管理部44は、新たな画像データをDSC2から取得した後、その次の画像データの要求の際には、そのDSC2から取得した画像データを格納した画像バッファ61に対応するオフセットデータ62から順番に読み込む。また、画像バッファ管理部44は、複数の画像バッファ61に、要求された画像データがない場合には、要求された画像データの先頭データが、DSC2から取得する画像データの先頭データとなるようにし、且つ、要求された画像データより多いデータ量の画像データを取得する。
その一方で、画像処理部40は、上述したように、画像データを、その全体からすれば任意の順番にて要求し、微視的には連続した順番にて要求する。したがって、画像バッファ管理部44は、新たな画像データをDSC2から取得した後に次の画像データの要求があった場合であって、その要求に係る画像データが画像バッファに格納されているときには、1つのオフセットデータ62を検索するだけで、画像処理部40により要求された画像データが画像バッファ61に格納されていると判断する。
また、この実施の形態では、画像バッファ管理部44は、画像バッファメモリ43に、要求された画像データが格納されている場合には、その次の画像データの要求の際には、その前回の画像データが格納されている画像バッファ61に対応するオフセットデータ62から順番に読み込む。画像バッファ管理部44は、複数の画像バッファ61に、要求された画像データがない場合には、要求された画像データの先頭データが、DSC2から取得する画像データの先頭データとなるようにし、且つ、要求された画像データより多いデータ量の画像データを取得する。
したがって、画像バッファ61から画像データを読み込んで要求元へ供給した後に次の画像データの要求があった場合であって、その要求に係る画像データが画像バッファに格納されているときには、画像バッファ管理部44は、1つのオフセットデータ62を1回検索するだけで、画像処理部40により要求された画像データが画像バッファ61に格納されていると判断する。
特に、図7から図9を用いて説明したように、画像バッファ管理部44がDSC2から1回に取得する画像データのデータ量を、画像処理部40が画像バッファ管理部44に要求する画像データのデータ量の3倍、あるいはそれ以上とすることで、図5のフローチャートに従って動作する画像処理部44は、少なくとも3回の要求の中の2回においては、その3回の中の最初の要求に基づいて取得した画像データを記憶する画像バッファ61についての1回の判断をするだけで、画像データが画像バッファ61に記憶されていると判断することができる。
その結果、この実施の形態では、画像バッファ管理部44によるオフセット配列の検索回数を、必要最小限な回数にし、効率よく印刷をすることができる。また、画像バッファ管理部44がDSC2から画像データを取得する回数は、画像処理部40が画像バッファ管理部44に画像データの取得を要求する回数より少なくなる。
以上の実施の形態は、本発明の好適な実施の形態の例であるが、本発明は、これに限定されるものではなく、発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
たとえば、上記実施の形態では、DSC2の印刷指示部17は、印刷する画像の画像データを有するEXIF画像ファイル21のファイル名を指定した印刷指示を、プリンタ1の印刷指示解釈部39へ送信している。この他にもたとえば、印刷指示部17は、ファイル名と1対1に対応して発行される、ピクトブリッジ(PictBridge)などで使用されるファィルIDを指定した印刷指示を、プリンタ1の印刷指示解釈部39へ送信するようにしてもよい。なお、ピクトブリッジでは、画像データをDSC2からプリンタ1へ送信するために、PTP(Picture Transfer Protocol)を使用する。
上記実施の形態では、画像バッファ管理部44は、DSC2に接続されるプリンタ1に設けられ、このDSC2の半導体メモリ13に保存されているEXIF画像ファイル21のデータを読み込んでいる。この他にもたとえば、画像バッファ管理部44は、デジタルムービーカメラ、カードリーダ、半導体メモリ、携帯端末コンピュータなどに接続されるプリンタ1に設けられ、これらに保存されている画像データを読み込ものであってもよい。
上記実施の形態では、画像バッファ管理部44は、画像処理部40の印刷処理の開始時に、1回だけ、画像バッファメモリ43およびオフセット配列メモリ45を初期化している。この他にもたとえば、画像バッファ管理部44は、たとえば画像処理部40が各媒体30に印刷する印刷制御データを生成する度に、画像バッファメモリ43およびオフセット配列メモリ45を初期化するようにしてもよい。
本発明は、たとえばデジタルカメラが接続され、そのデジタルカメラに記憶されている画像ファイルに基づく画像を印刷するプリンタなどに利用することができる。
本発明の実施の形態に係るプリンタおよびDSCを示す図である。 DSCが撮像モードで動作している場合の構成を示すブロック図である。 画像データ生成部によるEXIF画像データの生成処理の説明図である。 画像バッファメモリおよびオフセット配列メモリの説明図である。 画像バッファ管理部の動作を示すフローチャートである。 画像処理部および画像バッファ管理部のデータ取得の説明図である。 DSCの半導体メモリに記憶される画像データを示す図である。 画像処理部が通知するオフセット値と検索回数との対応関係を示す図である。 図8の取得要求後での記憶内容を示す図である。
符号の説明
1 プリンタ(印刷装置)、40 画像処理部(画像処理手段)、42 制御部(印刷手段)、43 画像バッファメモリ、44 画像バッファ管理部(判断手段、供給手段、取得手段)、45 オフセット配列メモリ(位置情報記憶手段)、61 画像バッファ

Claims (11)

  1. 印刷対象の画像データのうちの一部の画像データをそれぞれ記憶する複数の画像バッファと、
    上記複数の画像バッファのそれぞれに記憶される画像データの、印刷対象の画像データ内での位置情報を、上記複数の画像バッファのそれぞれに対応させて配列して記憶する位置情報記憶手段と、
    印刷のための画像データの要求に基づいて取得された画像データを上記画像バッファに記憶させた後に次の画像データの要求が発生した場合には、上記位置情報記憶手段から、上記画像データを記憶させた画像バッファに対応する位置情報から順番に位置情報を読み込み、読み込んだ位置情報に基づいて、それに対応する画像バッファに該次の要求に係る画像データが記憶されているか否かを順番に判断する判断手段と、
    上記画像バッファに該次の要求に係る画像データが記憶されていると上記判断手段により判断された場合に、その画像バッファの画像データを上記次の画像データの要求元へ供給する供給手段と、
    を有することを特徴とする画像データキャッシュ装置。
  2. 前記判断手段は、前記供給手段が前記画像バッファから読み込んだ画像データを供給した後に次の画像データの要求が発生した場合には、前記位置情報記憶手段から、その前記供給手段により画像データが読み込まれた画像バッファに対応する位置情報から順番に位置情報を読み込み、読み込んだ位置情報に基づいて、それに対応する画像バッファに該次の要求に係る画像データが記憶されているか否かを順番に判断することを特徴とする請求項1記載の画像データキャッシュ装置。
  3. 印刷対象の画像データのうちの一部の画像データをそれぞれ記憶する複数の画像バッファと、
    上記複数の画像バッファのそれぞれに記憶される画像データの、印刷対象の画像データ内の位置情報を、上記複数の画像バッファのそれぞれに対応させて配列して記憶する位置情報記憶手段と、
    印刷のための画像データの要求に基づいて取得された画像データを前記画像バッファから供給した後に次の画像データの要求が発生した場合には、上記位置情報記憶手段から、上記画像データを供給した画像バッファに対応する位置情報から順番に位置情報を読み込み、読み込んだ位置情報に基づいて、それに対応する画像バッファに該次の要求に係る画像データが記憶されているか否かを順番に判断する判断手段と、
    上記画像バッファに該次の要求に係る画像データが記憶されていると上記判断手段により判断された場合に、その画像バッファの画像データを上記次の画像データの要求元へ供給する供給手段と、
    を有することを特徴とする画像データキャッシュ装置。
  4. 前記複数の画像バッファに要求に係る画像データが記憶されていないと前記判断手段により判断された場合に、所定の取得先からその画像データを取得し、前記画像バッファに記憶させる取得手段を有することを特徴とする請求項1から3の中のいずれか1項記載の画像データキャッシュ装置。
  5. 前記取得手段は、要求された画像データを含む、所定のデータ量の画像データを取得することを特徴とする請求項4記載の画像データキャッシュ装置。
  6. 前記取得手段は、要求された画像データの3倍以上の所定のデータ量の画像データを取得することを特徴とする請求項5記載の画像データキャッシュ装置。
  7. 前記取得手段は、取得を要求された画像データが、前記所定のデータ量の画像データの先頭部分に含まれるように、前記所定のデータ量の画像データを取得することを特徴とする請求項5または6記載の画像データキャッシュ装置。
  8. 前記取得手段は、デジタルカメラ、カードリーダ、半導体メモリ、携帯端末あるいはコンピュータである所定の取得先から、画像データを取得することを特徴とする請求項4から7の中のいずれか1項記載の画像データキャッシュ装置。
  9. 要求された画像データをその要求元へ供給する請求項1から8の中のいずれか1項記載の画像データキャッシュ装置と、
    上記画像データキャッシュ装置に対して印刷する画像の画像データを要求し、それに応じて供給された画像データを用いて印刷制御データを生成する画像処理手段と、
    上記印刷制御データに基づく印刷を実行する印刷手段と、
    を有することを特徴とする印刷装置。
  10. 印刷対象の画像データのうちの一部をそれぞれ記憶する複数の画像バッファに、要求された画像データが存在する場合にはその画像データを要求元へ供給する画像データキャッシュ方法において、
    所定の要求元から要求された画像データを所定の取得先から取得し要求元へ供給するとともに上記画像バッファに記憶させるステップと、
    上記画像バッファに上記画像データを記憶させた場合に、上記複数の画像バッファに対応して配列された所定の位置情報記憶手段のうちのその画像データを記憶させた上記画像バッファに対応する位置情報記憶手段に、その画像データの、印刷対象の画像データ内での位置情報を記憶させるステップと、
    要求された画像データを上記画像バッファに記憶させた後に次の画像データの要求が発生した場合に、上記画像データを記憶させた上記画像バッファに対応する位置情報から順番に位置情報を読み込み、読み込んだ位置情報に基づいて、それに対応する画像バッファに該次の要求に係る画像データが記憶されているか否かを順番に判断するステップと、
    上記画像バッファに該次の要求に係る画像データが記憶されている場合には、その画像バッファの画像データを上記所定の要求元へ供給するステップと、
    を有することを特徴とする画像データキャッシュ方法。
  11. 印刷対象の画像データのうちの一部をそれぞれ記憶する複数の画像バッファに、要求された画像データが存在する場合にはその画像データを要求元へ供給する画像データキャッシュ方法において、
    所定の要求元から要求された画像データを所定の取得先から取得し要求元へ供給するとともに上記画像バッファに記憶させるステップと、
    上記画像バッファに上記画像データを記憶させた場合に、上記複数の画像バッファに対応して配列された所定の位置情報記憶手段のうちのその画像データを記憶させた上記画像バッファに対応する位置情報記憶手段に、その画像データの、印刷対象の画像データ内での位置情報を記憶させるステップと、
    要求された画像データを上記画像バッファから読み込んだ後に次の画像データの要求が発生した場合に、上記画像データを読み込んだ上記画像バッファに対応する位置情報から順番に位置情報を読み込み、読み込んだ位置情報に基づいて、それに対応する画像バッファに該次の要求に係る画像データが記憶されているか否かを順番に判断するステップと、
    上記画像バッファに該次の要求に係る画像データが記憶されている場合には、その画像バッファの画像データを上記所定の要求元へ供給するステップと、
    を有することを特徴とする画像データキャッシュ方法。
JP2005094791A 2005-03-29 2005-03-29 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法 Expired - Fee Related JP4604795B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005094791A JP4604795B2 (ja) 2005-03-29 2005-03-29 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005094791A JP4604795B2 (ja) 2005-03-29 2005-03-29 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法

Publications (2)

Publication Number Publication Date
JP2006272722A JP2006272722A (ja) 2006-10-12
JP4604795B2 true JP4604795B2 (ja) 2011-01-05

Family

ID=37207931

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005094791A Expired - Fee Related JP4604795B2 (ja) 2005-03-29 2005-03-29 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法

Country Status (1)

Country Link
JP (1) JP4604795B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4882905B2 (ja) 2007-08-03 2012-02-22 セイコーエプソン株式会社 画像データ処理装置および画像データ処理方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005074626A (ja) * 2003-08-29 2005-03-24 Canon Inc 画像処理方法及びその装置、及びそのプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005074626A (ja) * 2003-08-29 2005-03-24 Canon Inc 画像処理方法及びその装置、及びそのプログラム

Also Published As

Publication number Publication date
JP2006272722A (ja) 2006-10-12

Similar Documents

Publication Publication Date Title
CN1298549C (zh) 打印装置及其控制方法
AU2002334427A1 (en) Printing apparatus, control method therefor, and storage medium
US8351719B2 (en) Image decoding apparatus, image decoding method, and printing apparatus
US7274478B2 (en) Image printing apparatus and image printing control method
US8477339B2 (en) Image processing apparatus, method, and computer-readable medium, in which data is compressed according to a lossless or lossy compression method
JP4604795B2 (ja) 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法
JP3337792B2 (ja) データ処理装置及び記録装置及びデータ処理方法
US20090116049A1 (en) Apparatus and method for processing images and program fro the same
US20090059312A1 (en) Image data processing apparatus and method
US20100238504A1 (en) Printing system
JP2007296702A (ja) インクジェット記録装置
US8134736B2 (en) Image data processing apparatus and method
JP2006277267A (ja) 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法
JP2006272723A (ja) 画像データキャッシュ装置、印刷装置および画像データキャッシュ方法
JP3613076B2 (ja) 画像処理装置、画像処理方法、および記録媒体
JP2006264274A (ja) 圧縮データ解凍回路、圧縮データ解凍方法及び印刷装置
JP2006343922A (ja) 画像データ取得装置、印刷装置および画像データ取得方法
JP4529501B2 (ja) プリンタ、画像印刷システムおよび印刷方法
JP4461890B2 (ja) 印刷装置
JP2006035611A (ja) 画像の印刷
KR100771714B1 (ko) 기록 장치 및 기록 장치에 대한 데이터 처리 방법
US8284436B2 (en) Image data processing apparatus and method
JP3213093B2 (ja) ファクシミリ装置
JP4461954B2 (ja) 画像出力装置および画像出力方法
JP2005111941A (ja) 印刷装置、印刷方法及び印刷実行プログラム

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070404

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100608

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4604795

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20131015

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees