JP2006042169A - 画像処理方法及びその装置 - Google Patents
画像処理方法及びその装置 Download PDFInfo
- Publication number
- JP2006042169A JP2006042169A JP2004221956A JP2004221956A JP2006042169A JP 2006042169 A JP2006042169 A JP 2006042169A JP 2004221956 A JP2004221956 A JP 2004221956A JP 2004221956 A JP2004221956 A JP 2004221956A JP 2006042169 A JP2006042169 A JP 2006042169A
- Authority
- JP
- Japan
- Prior art keywords
- decoding
- image
- image data
- rectangular portion
- order
- 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.)
- Withdrawn
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
【課題】 印刷に必要なメモリ容量を最小限にとどめ、画像ファイル中の印刷対象となっていない部分の復号処理をなくすことで処理の高速化を実現し、符号化装置に特別な処理をさせることもないためデバイス間の汎用性を損なわないように、画像ファイルの一部分を抜き出して印刷を行う。
【解決手段】 符号化された画像データに対応する画像中の任意の矩形部分を部分的に復号する場合に、符号化された画像データに対応する画像中の矩形部分の画像データを復号する順序を矩形部分の画像の出力順序に基づいて判断し、さらに該復号する順序と画像データが符号化された順序とが相違するか否かを判断する復号方向判断部3023と、矩形部分の復号を部分的に行うために必要な情報を有する復号用のテーブル3026を作成する先行復号処理部3021と、復号方向に従って、復号用のテーブル3026を参照しながら、矩形部分の画像データを画像の出力順序に復号する画像復号部3024とを有する。
【選択図】 図3
【解決手段】 符号化された画像データに対応する画像中の任意の矩形部分を部分的に復号する場合に、符号化された画像データに対応する画像中の矩形部分の画像データを復号する順序を矩形部分の画像の出力順序に基づいて判断し、さらに該復号する順序と画像データが符号化された順序とが相違するか否かを判断する復号方向判断部3023と、矩形部分の復号を部分的に行うために必要な情報を有する復号用のテーブル3026を作成する先行復号処理部3021と、復号方向に従って、復号用のテーブル3026を参照しながら、矩形部分の画像データを画像の出力順序に復号する画像復号部3024とを有する。
【選択図】 図3
Description
本発明は、画像処理方法及びその装置に関し、たとえば、入力されたカラー画像信号に対して画像の一部分を切り出して表示または印刷する際の切り出し方法に関し、詳しくは JPEG に代表される可変長符号化データの一部分を切り出して復号化し出力する方法に関する。
一般に、デジタルカメラに代表される入力機器で記録されたデジタル画像を圧縮して転送・保持して例えば印刷する際などには、JPEG(Joint Photographic Coding Experts Group)という圧縮ファイル形式が用いられている。この形式は、画質の劣化が小さく大きな圧縮率が得られることから広く利用されている。JPEGによる代表的な符号化方法は、まず入力された画像データを(8画素×8画素)の画素ブロックにブロック化する。ブロック化された画像データはDCT(Discrete Cosine Transform) 変換される。そして、DCT変換された画像データは所定の量子化ステップにより量子化され、ハフマン符号化される。ハフマン符号化方法は、符号が必ずしも固定長でない可変長符号化方式として良く知られている。
一方、画像出力の一例としてシリアルプリンタと呼ばれるプリンタ装置による画像形成処理がある。このシリアルプリンタの画像形成方法では、インクを吐出する印刷ノズルが複数並んだノズル列をインクの色毎に複数保持した印刷ヘッドを用い、これを走査させて印刷を行うと同時に、記録媒体を移動させることによってノズル列よりも大きな幅を持つ記録媒体に対して記録を行うことが可能となる。このため、記録装置のメモリは記録ヘッドが記録走査を行う幅と印刷ノズル列の幅を考慮した大きさがあれば十分であるため、装置のコストを低く抑えることが可能となる。
また、デジタル画像処理の分野では、アナログ画像処理と比べると、画像の一部分の切り出し、拡大、回転等の処理を行った後に印刷しても画像の品位がそれほど低下しないこと、またこのような処理を行うことが専用のデバイスを必要としないことから比較的容易に行えるために、画像の一部分を切り出して印刷したいという要求は強くなっている。
このJPEGというファイル形式で符号化された画像の一部分を切り出して復号して印刷するという要求を、シリアルプリンタにおいて実現しようとした場合に、以下のような問題点があった。それは、JPEGにおける一般的な圧縮方法であるハフマン符号化に代表される可変長符号化の形式では、符号の長さが固定されていないため、画像中の任意の1画素に含まれる情報がどの程度の情報量としてファイル中に記録されているかは、ファイルに格納されている符号化データを復号しないとわからない。そのため、画像上の一部分を切り出して印刷する際に、画像中の任意の画素の情報が記録された位置を、記録された画像ファイル中から一意に特定することが非常に難しい。
この問題点を解決する従来技術としては、JPEGによる圧縮データのうち、必要な一部分を部分伸長展開する技術が、特許文献1に開示されている。これは、記録されている圧縮データの全てを読み出して、読み出された圧縮データの一部分を部分伸長するものである。
さらに、特許文献2のように必要な部分以外を破棄する方法や、符号化の際に位置が特定できるように位置情報を付加する方法等も開示されている。
特開平4-347781号公報
特開平6-113141号公報
しかしながら、上述の方法では以下のようないろいろな問題点があった。圧縮データのすべてを読み出して必要な部分を伸張する方法では、圧縮データのすべてを読み出す領域が必要なために、符号化されたファイルを一時的に保持するためのメモリが必要になることから、復号を行うデバイスのコストを増大させてしまう。また、必要な部分以外を破棄する方法では、処理対象の画像領域数に応じて読み出しとデータの破棄の処理が必要となり、処理時間が増大してしまう。さらに、符号化時に位置情報を付加する方法においては、デジタルカメラに代表される符号化デバイスと、プリンタに代表される復号化デバイスとの間でこの方式をサポートする必要があるため、デジタルイメージをさまざまなデバイス間で共有するといった汎用性を犠牲にしてしまうといった問題点があった。
本発明は、これらの問題点を解決し、印刷に必要なメモリ容量を最小限にとどめ、画像ファイル中の印刷対象となっていない部分の復号処理をなくすことで処理の高速化を実現し、符号化装置に特別な処理をさせることもないためデバイス間の汎用性を損なわないように、画像ファイルの一部分を抜き出して印刷を行うことを目的とする。
前述の課題を解決するために、本発明の画像処理装置は、符号化された画像データを入力する入力手段と、前記符号化された画像データに対応する画像中の任意の矩形部分を指示するための指示手段と、前記指示手段によって指示を受けた前記矩形部分の画像データを復号する順序を前記矩形部分の画像の出力順序に基づいて判断し、さらに該復号する順序と画像データが符号化された順序とが相違するか否かを判断する復号方向判断手段と、前記矩形部分の復号を部分的に行うために必要な情報を有する復号用のテーブルを作成する復号テーブル作成手段と、前記復号方向判断手段が判断した復号方向に従って、前記復号用のテーブルを参照しながら、前記矩形部分の画像データを画像の出力順序に復号する画像復号手段とを有することを特徴とする。
ここで、前記復号方向判断手段は、前記指示手段によって指示を受けた前記矩形部分の画像データを出力する出力媒体のアスペクト比と、前記矩形部分のアスペクト比とから復号する方向を判断する。また、前記復号用のテーブルは、復号された画像中の画素の位置を示す情報を含む。また、前記復号用のテーブルは、前記画像データが符号化された方向における前記矩形部分の最先端の部分の情報を含む。また、前記符号化された画像データは、JPEG形式である。また、前記復号用のテーブルは、JPEG形式の画像データ中のMCUの位置を示す情報を含む。また、前記復号テーブル作成手段は、ハフマンテーブルによる逆変換のみを行う簡易復号手段を有する
前記復号テーブル作成手段は、さらに画像の特徴量を抽出する。ここで、前記画像の特徴量は、原画像の明るさに関するヒストグラムである。また、前記画像の特徴量は、原画像の色相に関するヒストグラムである。
前記復号テーブル作成手段は、さらに画像の特徴量を抽出する。ここで、前記画像の特徴量は、原画像の明るさに関するヒストグラムである。また、前記画像の特徴量は、原画像の色相に関するヒストグラムである。
又、本発明の画像処理方法は、符号化された画像データに対応する画像中の任意の矩形部分を部分的に復号する画像処理方法であって、前記矩形部分の画像データを復号する順序を前記矩形部分の画像の出力順序に基づいて判断して、該復号する順序と画像データが符号化された順序とが相違するか否かを判断する復号方向判断工程と、前記矩形部分の復号を部分的に行うために必要な情報を有する復号用のテーブルを作成する復号テーブル作成工程と、前記復号方向判断工程で判断した復号方向に従って、前記復号用のテーブルを参照しながら、前記矩形部分の画像データを画像の出力順序に復号する画像復号工程とを有することを特徴とする。
又、本発明の画像処理プログラムは、符号化された画像データに対応する画像中の任意の矩形部分を部分的に復号するコンピュータ実行可能な画像処理プログラムであって、前記矩形部分の画像データを復号する順序を前記矩形部分の画像の出力順序に基づいて判断して、該復号する順序と画像データが符号化された順序とが相違するか否かを判断する復号方向判断工程と、前記矩形部分の復号を部分的に行うために必要な情報を有する復号用のテーブルを作成する復号テーブル作成工程と、前記復号方向判断工程で判断した復号方向に従って、前記復号用のテーブルを参照しながら、前記矩形部分の画像データを画像の出力順序に復号する画像復号工程とを有することを特徴とする。
又、本発明の記憶媒体は、符号化された画像データに対応する画像中の任意の矩形部分を部分的に復号する画像処理プログラムをコンピュータ読出し可能に記憶する記憶媒体であって、前記画像処理プログラムが、前記矩形部分の画像データを復号する順序を前記矩形部分の画像の出力順序に基づいて判断して、該復号する順序と画像データが符号化された順序とが相違するか否かを判断する復号方向判断工程と、前記矩形部分の復号を部分的に行うために必要な情報を有する復号用のテーブルを作成する復号テーブル作成工程と、前記復号方向判断工程で判断した復号方向に従って、前記復号用のテーブルを参照しながら、前記矩形部分の画像データを画像の出力順序に復号する画像復号工程とを有することを特徴とする。
以上詳述したように、本発明の画像処理方法及びその装置によれば、印刷に必要なメモリ容量を最小限にとどめ、画像ファイル中の印刷対象となっていない部分の復号をなくすことで処理の高速化を実現し、符号化装置に特別な処理をさせることもないためデバイス間の汎用性を損なわないように、画像ファイルの一部分を抜き出して印刷を行うことが可能となる。
以下、本発明の実施の形態を図面を参照して詳細に説明する。尚、以下の実施形態では、フォトダイレクトプリンタ装置を例に本発明の特徴を説明するが、本発明は圧縮画像、特にJPEGによる圧縮画像の一部を切り出して出力する場合に有用な技術であり、種々の適用が可能でありこれらも本発明に含まれる。
<本実施形態のフォトダイレクトプリンタ装置の構成例>
図1は、このフォトダイレクトプリンタ装置1000は、ホストコンピュータ(PC:図示せず)からデータを受信して印刷する一般的なPCプリンタとしての機能と、メモリカードなどの記憶媒体に記憶されている画像データを直接読取って印刷したり、或いはデジタルカメラからの画像データを受信して印刷する機能を備えている。
図1は、このフォトダイレクトプリンタ装置1000は、ホストコンピュータ(PC:図示せず)からデータを受信して印刷する一般的なPCプリンタとしての機能と、メモリカードなどの記憶媒体に記憶されている画像データを直接読取って印刷したり、或いはデジタルカメラからの画像データを受信して印刷する機能を備えている。
図1において、本実施形態に係るフォトダイレクトプリンタ装置1000の外殻をなす本体は、下ケース1001、上ケース1002、アクセスカバー1003及び排出トレイ1004の外装部材を有している。また、下ケース1001は、このプリンタ装置1000の略下半部を、上ケース1002は本体の略上半部をそれぞれ形成しており、両ケースの組合せによって内部に後述の各機構を収納する収納空間を有する中空体構造をなし、その上面部及び前面部にはそれぞれ開口部が形成されている。さらに、排出トレイ1004は、その一端部が下ケース1001に回転自在に保持され、その回転によって下ケース1001の前面部に形成される開口部を開閉させ得るようになっている。このため、記録動作を実行させる際には、排出トレイ1004を前面側へと回転させて開口部を開成させることにより、ここから記録シートが排出可能となると共に、排出された記録シートを順次積載し得るようになっている。また、排紙トレイ1004には、2枚の補助トレイ1004a,1004bが収納されており、必要に応じて各トレイを手前に引き出すことにより、用紙の支持面積を3段階に拡大、縮小させ得るようになっている。
アクセスカバー1003は、その一端部が上ケース1002に回転自在に保持され、上面に形成される開口部を開閉し得るようになっており、このアクセスカバー1003を開くことによって本体内部に収納されている記録ヘッドカートリッジ(不図示)あるいはインクタンク(不図示)等の交換が可能となる。なお、ここでは特に図示しないが、アクセスカバー1003を開閉させると、その裏面に形成された突起がカバー開閉レバーを回転させるようになっており、そのレバーの回転位置をマイクロスイッチなどで検出することにより、アクセスカバーの開閉状態を検出し得るようになっている。
また、上ケース1002の上面には、電源キー1005が押下可能に設けられている。また、上ケース1002の右側には、液晶表示部1006や各種キースイッチ等を備える操作パネル1010が設けられている。1007は自動給送部で、記録シートを装置本体内へと自動的に給送する。1008は紙間選択レバーで、記録ヘッドと記録シートとの間隔を調整するためのレバーである。1009はカードスロットで、ここにメモリカードを装着可能なアダプタが挿入され、このアダプタを介してメモリカードに記憶されている画像データを直接取り込んで印刷することができる。このメモリカード(PC)としては、例えばコンパクトフラッシュ(登録商標)メモリ、スマートメディア、メモリスティック等がある。1011はビューワ(液晶表示部)で、この装置本体に着脱可能であり、PCカードに記憶されている画像の中からプリントしたい画像を検索する場合などに、1コマ毎の画像やインデックス画像などを表示するのに使用される。1012は後述するデジタルカメラを接続するための端子、1013は、パーソナルコンピュータ(PC)を接続するためのUSBバスコネクタを示す。
図2は、本実施形態に係るフォトダイレクトプリンタ装置のファームウェアおよびハードウェア構成例を示すブロック図である。
図2において、2010は制御部で、本装置の制御を司る。2011はI/F(インターフェース)部で、このI/F部2011とデジタルカメラやデジタルカメラで撮影された画像データを保持するメモリカード等が接続され、本体制御部2010が撮影されたデジタルカメラから直接読み出すか、もしくはメモリカードから読み出し、画像処理部2012へ送る。2012は画像処理部で、I/F部11から送られてくる記録データ(多値画像データ)に関して、画像データの復号処理、拡大縮小処理、色処理、を行うもので、メモリ、ASIC(Application Specific Integrated Circuit:特定用途向けIC)及びDSP(Digital Signal Processor)、RISC(Reduced Instruction Set Computer:縮小命令セットコンピュータ)チップ等で構成される。
2014は、メモリコントローラとメモリである。このメモリは、主に、入力データの保持用バッファ、画像処理部の中間バッファ、画像処理後の出力用バッファとして用いられる。2015は印刷ヘッド制御部であり、メモリ2014中の画像情報と制御部2010にしたがって印刷ヘッド2017を駆動させ、インク適を吐出させて画像を形成させる。
2016のモーター制御部は、詳しくは図示しないが印刷媒体を送る媒体送りモータ、印刷ヘッドを走査させる印刷ヘッド走査モータ、印刷ヘッドの信頼性を回復させるための回復系モータ等のモータ2018を制御する。
図3は、図2で示された画像処理部2012を詳しく説明するための図である。
記憶装置3020は、デジタルカメラで撮影された画像ファイルを保持するメモリカードと呼ばれる記憶装置である。また、デジタルカメラが直接接続された場合は、デジタルカメラ上の画像ファイルを保持するデジタルカメラに挿入されたメモリカードとなる。メモリカードが接続された場合、デジタルカメラが直接接続された場合のどちらの場合においても、I/F部2011を通じて画像ファイルが読み込まれる。
I/F 部2011は、メモリカードが接続されている場合は、メモリカードの制御を行うハードウェア回路と制御ソフトウェア、さらにファイルを扱うためのファイルシステム等を実現するソフトウェアで構成されている。一方、デジタルカメラが直接接続される場合においては、デジタルカメラとの通信を行うハードウェア回路と制御ソフトウェア、さらにメモリカードが直接接続された場合と同様、ファイルシステムのソフトウェアで構成される。
一方、印刷デバイスのユーザは、 U/I 部2019を通じて画像の切り出しの指示を出すことができる。切り出しの指示方法は、まず印刷対象となる画像を装置に具備された画像モニタ1011に表示させると共に、切り出しの枠等を表示させる。この枠の位置と大きさをユーザが操作部1006を通じて操作することによって、切り出し枠をユーザの好みの位置と大きさに操作することによって、切り出し位置をデバイスに伝達することが可能な構成となっている。また、デジタルカメラを接続した場合には、デジタルカメラ上の操作によって同様の切り出しの指示を行うことができる。
切り出し指示部3022への切り出し指示は、前述のユーザ操作を受けて、切り出す部分の画像位置、切り出す大きさを復号方向判断部3023に伝える。
次に、復号方向判断部3023は、画像ファイル中に画素データが格納されている順序と、印刷のために画像ファイルを復号していく復号の順序が同じ方向か異なる方向かを判断する。まず、画像ファイル中の情報を参照し画像の幅と高さを得る。多くのデジタルカメラにおいては、画像の長辺の方向に沿った順序で画像ファイル中に格納されている。次に、切り出し指示部3022からの指示により切り出す領域の縦横の大きさを得る。ここで得られた領域の縦横の大きさと、印刷時の画像の縦横の大きさを制御部2010から得て、この2つの大きさを比較することにより、画像が画像ファイル中に格納されている方向と、印刷時に復号する方向の関係が分かり、この関係を先行復号処理部3021に伝える。この方向の関係については、図4を用いて後で詳しく説明する。
先行復号処理部3021では、復号方向判断部3023で判断された復号方向により、復号テーブルを作成する。JPEGでは、MCU(Minimun Coded Unit)と呼ばれる8画素x8画素のブロックを処理単位として画像圧縮が行われる。この8画素x8画素のまとまり(ブロック)は、各種の色空間(RGB,YUV等)のチャンネルのカラー情報を含み、画像圧縮処理に際して1単位として扱われる。復号テーブルは、印刷範囲として切り出された領域の画像における縦方向のMCUの数だけ構成要素が動的に定義されるテーブルであり、MCUのファイル中の位置情報が格納されている。前述の通り、画像中の任意の位置をファイル中で復号することなく一意に決定することは難しいことから、この先行復号処理部3021では復号テーブルを作成するために、一度復号を行う。
次に、復号テーブルの情報に従って記憶装置から画像ファイルを部分的に読み出し、復号処理部3024で復号を行い、復号済みの画像データを中間バッファ3027に格納する。この中間バッファ3027に格納されたデータを、色処理部3025で色処理を行い、出力用バッファ3028に一時保持し、制御部2010にしたがって印刷ヘッド制御部2015へ色処理済のデータを送信し、印刷ヘッドがインクを吐出し印刷を行う。
図4は、図3の制御部及び画像処理部を実現するハードウエア構成例を示す図である。
図4で4010は、制御部及び画像処理部の処理をプログラムに従って実行する演算処理用のCPUである。尚、制御部や画像処理部の各処理部が独立にCPUを有してもよい。4020は、CPU4010が実行する固定プログラムやパラメータを格納するROM、4030は、CPU4010が実行するアプリケーションプログラムをロードすると共に、データの一時記憶をするRAMである。
RAM4030には、復号方向判断部3023で判断した復号方向を記憶する復号フラグ4031、先行復号処理部3021で作成された復号テーブルを記憶する記憶領域4032、以下の他の実施形態で使用する画像の特徴量を記憶する特徴量テーブルの記憶領域4033、復号処理部3024で復号された切り出し領域の画像データを記憶する中間バッファ4043、中間バッファ4043の画像データに色処理部3025で色処理を行ない印刷ヘッド処理部2015に出力する画像データを記憶する出力用バッファ3028、そして、ディスク等の外部記憶装置に記憶されているアプリケーションプログラムをロードして、CPU4010により実行するためのプログラムロード領域4037が含まれる。
4040は、ディスク、CDなどの外部記憶装置で、RAM4030にロードされてCPU4010に実行される、印刷処理メインプログラム4041(図5及び図13参照)、復号方向判断モジュール4042(図7参照)、先行復号モジュール4043(図8及び図14参照)、復号処理モジュール4044(図12参照)、色処理モジュール4045、印刷制御モジュール4046を記憶している。
4050は入力インタフェースで、操作部1006からの入力や、メモリカード3020からの入力を制御する。4060は出力インタフェースで、表示部1011への出力、印刷ヘッド制御部2015への出力を制御する。
<本実施形態のフォトダイレクトプリンタ装置の動作例>
次に、上記構成の本実施形態のフォトダイレクトプリンタ装置の動作例を説明する。
次に、上記構成の本実施形態のフォトダイレクトプリンタ装置の動作例を説明する。
図5は、印刷処理のメインプログラムのフローチャートである。このフローチャートに従って、印刷処理を順に説明する。尚、印刷の元となる画像の大きさを2272×1704 [pixel]とする。また、JPEG画像は、サンプリングファクタ4:2:2である。具体例として、図9の例を用いて説明する。図9では、印刷を行う用紙サイズが127×89[mm]であり、画像データの切り取り領域の大きさは、1024×710 [pixel]である。データの展開の方向は、図中左下から上へ展開した後、左下の次の行に戻り、再度上方向へ展開を行う方向である。
(S100:画像情報、ユーザの切り出し指示情報の読み取り)
ユーザにより印刷処理が開始されると、まず、ユーザの切り出し情報を前述のU/I部2019を通じて制御部2010が読み取り、切り出し指示部3022に伝える。ここで伝わる情報は、画像中のデータの格納位置を原点とし、格納方向をX、もう一方をYとした切り出し位置(X,Y)と、切り出し領域の大きさ(W,H)である。この例の場合、切り出し位置(800,160)、領域の大きさ(1024,710)となっている。
ユーザにより印刷処理が開始されると、まず、ユーザの切り出し情報を前述のU/I部2019を通じて制御部2010が読み取り、切り出し指示部3022に伝える。ここで伝わる情報は、画像中のデータの格納位置を原点とし、格納方向をX、もう一方をYとした切り出し位置(X,Y)と、切り出し領域の大きさ(W,H)である。この例の場合、切り出し位置(800,160)、領域の大きさ(1024,710)となっている。
(S200:復号方向の判断)
次に、復号方向の判断が行われる。この判断は、印刷のために必要な復号の方向と、画像ファイルのデータが格納されている方向(符号化の方向)を調べることで、復号化じのデータ展開の方向(順序)を符号化の方向(順序)で行なえばよいのか、もしくは異なる方向で行なったほうがよいのかを判断する。
次に、復号方向の判断が行われる。この判断は、印刷のために必要な復号の方向と、画像ファイルのデータが格納されている方向(符号化の方向)を調べることで、復号化じのデータ展開の方向(順序)を符号化の方向(順序)で行なえばよいのか、もしくは異なる方向で行なったほうがよいのかを判断する。
この判断について、図4及び図7のフローチャートを用いて詳しく説明する。
まず、図4の(a),(b)において、外側の細い線の四角形は印刷対象となる画像をあらわしている。そして、この画像のデータの格納順、言い換えると符号化の順は、まず左上から始まり右方向へ順次格納されており、右端の画素を格納した後2行目の左端の画素を格納し右方向へと再度格納されている。一方、太い線の四角形で囲まれた領域が前述の切り出し枠である。(a)の場合は切り出し枠の長辺と元となる画像の長辺が平行になる切り出し方である。一方 (b)の場合は切り出し枠の長辺と元となる画像の長辺が直行する切り出し方である。
(a)において、印刷媒体の短辺が印刷のためのシリアルスキャンの方向(主走査方向)に沿っており、印刷媒体の搬送方向(副走査方向)と直行している。また、(b)は切り出しの方向が異なっており、印刷媒体の長辺が印刷のためのシリアルスキャンの方向(主走査方向)に沿っており、印刷媒体の搬送方向(副走査方向)と直行している。印刷における復号の方向は、シリアルプリンタであるため、主走査方向に沿ってデータの展開、言い換えるとデータの復号を進めていく必要がある。
従って、(a)の場合、左下から上方向へのデータの展開(復号)を行い、次に左下に戻り再度上方向へという順序で展開を進める必要がある。一方、(b)の場合、左上から右方向へ展開を行い、次に右上に戻り再度右方向へという順序で展開を進める必要がある。つまり、印刷データの格納方向と展開方向、言い換えると符号化と復号化の順序を考えると、(a)の場合は直交しており、(b)の場合は同じ方向であると言える。ステップS200では、このデータの格納方向と展開方向(符号化順と復号化順)が直交しているか、同じ方向なのかを判断する。
図7に従って、上記判断の手順を示す。
まず、ステップS201で元画像を復号した時のアスペクト比から、画像が縦長か横長かを判定する。横長であればステップS202に進んで、切り出す領域のアスペクト比から、切り出す領域が縦長か横長かを判定する。横長であればステップS203に進んで、印刷時の主走査方向と平行な印刷媒体の辺が、長い辺か短い辺かを判定する。短辺であれば、ステップS204で入力画像データの格納方向と印刷のための復号方向が異なるとして、復号方向フラグ4031に"1"を記憶する。
以下、元画像が横長*切り出す領域が横長*主走査方向が長辺の場合(S201→S202→S203→S205)は、入力画像データの格納方向と印刷のための復号方向が同じとして復号方向フラグ4031に"0"を記憶し、元画像が横長*切り出す領域が縦長*主走査方向が短辺の場合(S201→S202→S206→S205)は復号方向フラグ4031に"0"、元画像が横長*切り出す領域が縦長*主走査方向が長辺の場合(S201→S202→S206→S204)は復号方向フラグ4031に"1"、元画像が縦長*切り出す領域が横長*主走査方向が短辺の場合(S201→S207→S208→S204)は復号方向フラグ4031に"1"、元画像が縦長*切り出す領域が横長*主走査方向長辺の場合(S201→S207→S208→S205)は復号方向フラグ4031に"0"、元画像が縦長*切り出す領域が縦長*主走査方向が短辺の場合(S201→S207→S209→S205)は復号方向フラグ4031に"0"、元画像が縦長*切り出す領域が縦長*主走査方向が長辺の場合(S201→S207→S209→S204)は復号方向フラグ4031に"1"、を記憶することにより、復号方向が判断される。
具体的な例である図9について説明する。一般的にデジタルカメラで撮影を行なった場合、図9に示すように、長辺方向に沿って格納されている場合が多いため、本具体例でもその順で格納されている画像を印刷する場合を例に挙げて説明を行う。一方、印刷媒体は主走査方向と媒体の短辺が同一方向であり、副走査方向と長辺が同一方向で印刷される場合が多いため、本具体例でもこの方向で印刷を行う場合を例にあげて説明を行う。しかし、図7のフローチャートに示すように、本実施形態ではこの画像の格納方向や媒体の搬送方向が異なっていても、その効果に変わりがないことは明らかである。
図9で、入力時のデータの格納方向は、図示の方向であり、この場合のアスペクト比は、横2272[pixel] /縦1704[pixel]=1.33>1.0であるので、横長であるということがいえる。次に、切り出す領域のアスペクト比を判断する。データ格納時の符号化の方向を基準として横方向に取ったときのアスペクト比によって判断をする。図9においては、横方向 1024 [pixel] /縦方向 710 [pixel] =1.44>1.0であるため、横長と判断する。
次に、印刷装置と印刷媒体の関係について判断をする。印刷装置が、印刷媒体に印刷を行なう際の復号の方向は、シリアルスキャンの方向である主走査方向と等しい方向である。そのため、上記図7の手順に従って、印刷装置において印刷を行なう際の主走査方向と平行になる印刷媒体の辺が、印刷媒体の長辺なのか短辺なのかということを判断する。図9においては、印刷装置の主走査方向に平行な印刷媒体の辺は短辺であるため、図7のフローチャートに従って、S201→S202→S203→S204と分岐し、入力画像データの格納方向と印刷のための展開の方向が異なる場合となる。
一方、図10のように、切り出す領域のアスペクト比は、横方向 710 [pixel] /縦方向 1024 [pixel] =0.69<1.0であるため、横長と判断する。印刷においては、主走査方向に平行な印刷媒体の辺は短辺であるため、図7のフローチャートに従って、S201→S202→S206→S205と分岐し、入力画像データの格納方向と印刷のための展開の方向が同じ場合となる。
上述の判断結果を先行復号処理部3021に伝え、復号方向判断部3023の処理を終える。
(S300:先行復号処理)
次に、先行復号処理部3021が復号テーブル3026を作成するための復号処理を行う。JPEGの最も基本的な処理方式である基本DCT方式における復号処理は、「ハフマンテーブルによる可変長復号処理」「逆量子化処理」「逆離散コサイン変換処理」に分けられる。この先行復号処理部3021における処理では、画像中の画素の位置と、画像ファイル中のビット位置を対応付けることを目的としているため、逆量子化処理と逆離散コサイン変換の部分は必要としない。以下、この先行復号処理における「ハフマンテーブルによる可変長復号処理」のみの復号を「簡易復号」と呼ぶ。この先行復号処理部3021では、MCU毎にハフマン符号を復号化し、復号テーブルとして必要な画素を含むMCUである場合に、印刷のための復号処理に必要な情報として復号テーブル3026内に記憶することを行なう。
次に、先行復号処理部3021が復号テーブル3026を作成するための復号処理を行う。JPEGの最も基本的な処理方式である基本DCT方式における復号処理は、「ハフマンテーブルによる可変長復号処理」「逆量子化処理」「逆離散コサイン変換処理」に分けられる。この先行復号処理部3021における処理では、画像中の画素の位置と、画像ファイル中のビット位置を対応付けることを目的としているため、逆量子化処理と逆離散コサイン変換の部分は必要としない。以下、この先行復号処理における「ハフマンテーブルによる可変長復号処理」のみの復号を「簡易復号」と呼ぶ。この先行復号処理部3021では、MCU毎にハフマン符号を復号化し、復号テーブルとして必要な画素を含むMCUである場合に、印刷のための復号処理に必要な情報として復号テーブル3026内に記憶することを行なう。
処理の流れを、図8にフローチャートを用いて説明する。
まず、画像内に含まれるMCUの行数分のカウンタ値をセットして処理を開始する。ここで、簡易復号が行われる順の方向をMCU行と呼び、この方向と直行する方向をMCU列と呼ぶ。図9及び図10中において、MCU列は縦方向の1列であり、MCU行は横方向の1列である。MCU行の数は、画像の縦方向のMCUの数であり、図9及び図10においては、1704 [pixel] の画像であり、サンプリングファクタ4:2:2であるため、107(=1704/16)行のMCU行で構成されている。そのため、"107"をカウンタ値としてセットする(図8には図示せず)。
次に、ステップS301で、画像ファイル中に含まれる最初のMCUを簡易復号処理する。この先行復号処理では、MCU全体の値(DC成分)があれば良く、画素毎の信号値(AC成分)は必要でないため、簡易復号処理において逆量子化処理や逆離散コサイン変換は省かれることとなる。このMCUには、元の画像の画素位置で (0,0)-(16,16) の範囲の画素が含まれている(図9及び図10の左上端のMCU)。次に、ステップS302で簡易復号処理を行なったMCUが切り出し領域の中に入っているかどうかの判定を行なう。最初のMCUに含まれる範囲は(0,0)-(16,16)であり、これは、図9の切り出し領域(800,160)-(1824,870)内に含まれないため、ステップS303で1行分の簡易復号処理が終了したか否かを判定し、終了してなければステップS301に戻って引き続き同じ行の次のMCU(右隣りのMCU)の簡易復号処理を行う。1行分の簡易復号処理が終了したところで、ステップS303からS307に進んで、未処理のMCU行があるかを判断し(実際には、カウンタ値を1カウントダウンして0であるかを判断)、未処理のMCU行があればステップS301に戻って次のMCU行の先頭(左端)のMCUの簡易復号処理に戻る。
図9の例では、最初の10行(画素では1-160)のMCU行は切り出し領域(800,160)-(1824,870)に含まれない。11行目のMCU行から画像の 160 [pixel] 以降の処理に入り、51番目のMCU(=800/16+1)で簡易復号処理を行うMCUが切り出しの領域内に入る。切り出しの領域内に入った場合には、ステップS302からS304に進んで、復号テーブル3026にステップS301で簡易復号したMCUのデータを書き込む。
(復号テーブル)
作成される復号テーブルの例を図11に示す。復号テーブルは、切り出し画像中の一度に復号できる最小単位であるMCUの行の数だけの要素を有している。図9の例においては、列方向の画素数は710 [pixel] であり、サンプリングファクタが4:2:2であることから、一度に復号できる最小単位であるMCUを復号すると16×16 [pixel]のデータとなるため、45(=710/16)の要素をもつ復号テーブルが作成されることになる。1要素中の情報は、ファイル途中からの以下の復号処理を可能とするためのものである。具体的には、MCUのカウント値11aに従い、MCUのファイル中でのビット位置11b、バイト位置11c、サンプリング成分の数分の直流成分の値11dである。サンプリング成分は、スキャン内の画像成分のことであり、一般的にはY,Cb,Cr信号の3成分となる。さらに、デジタルカメラや、メモリカード3020内の画像ファイルをメモリ2014中にコピーしておき、そのメモリ記憶領域へのポインタ値11eも要素の値として保持しておく。
作成される復号テーブルの例を図11に示す。復号テーブルは、切り出し画像中の一度に復号できる最小単位であるMCUの行の数だけの要素を有している。図9の例においては、列方向の画素数は710 [pixel] であり、サンプリングファクタが4:2:2であることから、一度に復号できる最小単位であるMCUを復号すると16×16 [pixel]のデータとなるため、45(=710/16)の要素をもつ復号テーブルが作成されることになる。1要素中の情報は、ファイル途中からの以下の復号処理を可能とするためのものである。具体的には、MCUのカウント値11aに従い、MCUのファイル中でのビット位置11b、バイト位置11c、サンプリング成分の数分の直流成分の値11dである。サンプリング成分は、スキャン内の画像成分のことであり、一般的にはY,Cb,Cr信号の3成分となる。さらに、デジタルカメラや、メモリカード3020内の画像ファイルをメモリ2014中にコピーしておき、そのメモリ記憶領域へのポインタ値11eも要素の値として保持しておく。
尚、このメモリ領域中へ画像ファイルをコピーしておき、そのポインタ値を保持しておくことは、ファイルへのアクセス回数を減らす目的で行なっているため、本発明の実施にあたって必ずしも必要な要素ではないが、デジタルカメラやメモリカードからのデータ領域から読み込むよりも、メモリ2014からの読み込みのほうが高速に行えるため、実施したほうが望ましい。また、メモリ容量よりも大きな画像ファイルを扱う場合には、メモリカード3020のファイルポインタを指す情報を保持しておいてもよい。
上述の処理により、図9及び図10の(b)に示すように、切り出し領域の左端のMCU列の簡易復号データが復号テーブルに記憶されることとなる。
(S400:復号処理)
次に、復号処理部3024において実際の印刷のための復号処理を行う。印刷のための復号においては、前述の復号テーブルにしたがって復号処理を行う。
次に、復号処理部3024において実際の印刷のための復号処理を行う。印刷のための復号においては、前述の復号テーブルにしたがって復号処理を行う。
図12に、復号処理の一例をフローチャートで示す。
まず、ステップS401で、復号方向判断部3023(S200)での判断結果である復号フラグが1か0かにより分岐する。すなわち、復号フラグが1の場合は、図9のように符号化の方向と印刷時の復号方向が異なる場合であり、ステップS402に進む。復号フラグが0の場合は、図10のように符号化の方向と印刷時の復号方向が同じ場合であり、ステップS410に進む。
(1) 入力画像データの格納方向と印刷のための展開方向が異なる場合(図9参照)
ステップS402で、復号テーブル中の最終行(図9の(b)の最下)のMCUを最初に復号するMCUとして指示し、同時に復号テーブルの指すMCUを図9上における右方向へひとつ進めておく。ステップS403で指示したMCUの復号を行なう。このMCUの復号を行ったのち、ステップS404で復号テーブルの更新を行なう。次に、ステップS405で復号により画像の信号となったデータを90°回転させて、中間バッファ3027上に書き込む。ここまでの処理を、ステップS406で復号テーブルに含まれている要素数分が復号されたかを判断し、まだであればステップS403に戻って、上方のMCUの復号と復号テーブルの更新、中間バッファへの書き込みを繰り返して、1MCU列の復号処理を終了する。更にステップS407で、プリントヘッドのプリント幅の画像データが準備されたか否かを判断する。プリント幅が16ドット以内である場合は印刷処理に進むが、プリント幅が16ドットを越える場合は、ステップS407からS402に戻って、更に次の1MCU列の復号処理を行う。
ステップS402で、復号テーブル中の最終行(図9の(b)の最下)のMCUを最初に復号するMCUとして指示し、同時に復号テーブルの指すMCUを図9上における右方向へひとつ進めておく。ステップS403で指示したMCUの復号を行なう。このMCUの復号を行ったのち、ステップS404で復号テーブルの更新を行なう。次に、ステップS405で復号により画像の信号となったデータを90°回転させて、中間バッファ3027上に書き込む。ここまでの処理を、ステップS406で復号テーブルに含まれている要素数分が復号されたかを判断し、まだであればステップS403に戻って、上方のMCUの復号と復号テーブルの更新、中間バッファへの書き込みを繰り返して、1MCU列の復号処理を終了する。更にステップS407で、プリントヘッドのプリント幅の画像データが準備されたか否かを判断する。プリント幅が16ドット以内である場合は印刷処理に進むが、プリント幅が16ドットを越える場合は、ステップS407からS402に戻って、更に次の1MCU列の復号処理を行う。
図9の具体例においては、最終行のMCUは45行目のMCUであり、画像中の(800,864)-(816,880)の矩形領域の画素に対応するMCUである。まずこの領域の復号を行う。次に復号テーブルの更新を行なう。これは、現在指している復号テーブルの情報を次のMCUの復号のために更新する作業であり、画像中の(817,864)-(832,880)の矩形領域の画素に対応するMCUの情報に書き換えておく。これは、画像ファイルの符号化されている方向に沿った(右隣の)復号であるため、容易に行なうことができる。次に、MCUの復号により得られた16×16画素のデータを印刷の向きに回転(反時計方向に90°)させ、印刷指定領域内の画素のみを中間バッファ3027に書き込む。図9の場合、(800,864)-(816,880)の矩形領域の画素データが得られるが、印刷指定領域は、(800,160)-(1824,870)の矩形領域であるため、(800,871)-(816,880)の矩形範囲の画素データの中間バッファ3027への書き込みは行なわれず、(800,864)-(816,870)の矩形領域の画素データを回転させて中間バッファ3027へ書き込む。ここまでの処理で1MCU分の処理が終了し、次の44行目のMCUについても同様に処理を行なう。この処理を1番上のMCU(元画像の上から11番目)まで行なうことで、16プリントライン分の画素列が完成される。尚、上記のように、プリンタのヘッドのノズル数などにより、1走査のプリントに必要なライン文の画素列を準備する。
(2) 入力画像のデータの格納方向と印刷のための復号方向が同じ場合(図10参照)
上述の復号方向の判断において、入力画像のデータの格納方向と印刷のための復号方向が同じ場合となった場合は、まず、ステップS410で最初に復号するMCUとして復号テーブル中の最初のMCU(元画像の11行目で51番目のMCU)を指示する。ステップS411で指示されたMCUの復号を行なう。このMCUの復号を行ったのち、切り出す領域内の画素データを中間バッファ3027へ書き込む。MCUの行方向に復号を続けていき、切り出す領域から外れた時点で処理を終了する。
上述の復号方向の判断において、入力画像のデータの格納方向と印刷のための復号方向が同じ場合となった場合は、まず、ステップS410で最初に復号するMCUとして復号テーブル中の最初のMCU(元画像の11行目で51番目のMCU)を指示する。ステップS411で指示されたMCUの復号を行なう。このMCUの復号を行ったのち、切り出す領域内の画素データを中間バッファ3027へ書き込む。MCUの行方向に復号を続けていき、切り出す領域から外れた時点で処理を終了する。
図10においては、最初の行のMCUは画像中の(1200,80)-(1216,96)の矩形領域の画素に対応するMCUである。まずこの領域の復号を行う。復号が終了し画素のデータとなったものは、(1200,80)-(1216,96)の矩形領域のデータであり、このデータは切り出し領域(1200,80)-(1910,1104)の範囲にすべて含まれているため、この画素データを中間バッファ3027に格納する。ここで、まだ切り出す領域の終りまで処理は進んでいないので、次の(右隣の)MCUの復号を行なう。このように処理を進めていき、(1904,80)-(1920,96)まで処理が終了した時点で、MCU行の復号処理が1行分終了し、16プリントライン分の画素列が完成される。尚、上記のように、プリンタのヘッドのノズル数などにより、1走査のプリントに必要なライン文の画素列を準備する。
(S500:色処理・印刷処理)
次に、復号が終了した部分画像に対して色処理部3025で色処理を行い、印刷ヘッドを駆動させて記録動作を行う。尚、色処理及び印刷処理は、本発明の要旨ではないので説明は省く。
次に、復号が終了した部分画像に対して色処理部3025で色処理を行い、印刷ヘッドを駆動させて記録動作を行う。尚、色処理及び印刷処理は、本発明の要旨ではないので説明は省く。
図5のステップS600では、印刷終了を判定し、終了でない(すなわち、印刷媒体の副走査方向の印刷が終わっていない)場合は、ステップS400に戻って再度復号処理を行い、結果得られた部分画像に対して色処理を行い記録動作を行うという処理を、切り出し領域全体が印刷されるまで繰り返し、印刷動作を終了させる。
上記(1)(2)のいずれの場合においても、印刷のための復号の処理を行なうのは画像全体ではなく切り出す対象範囲だけであるので処理の高速化が実現できる。さらに、復号の前後にかかわらず画像ファイル全体を保持する必要がないため、小メモリ化も実現できる。
以上説明した処理によって、画像の一部分を切り出して印刷する際に、画像全体を復号化することがないため印刷に必要なメモリ容量を最小限にとどめることができ、画像ファイル中の印刷対象となっていない部分の復号をなくすことで処理の高速化を実現し、符号化装置に特別な処理をさせることもないためデバイス間の汎用性を損なわない印刷が可能となる。
<他の実施形態>
一般的に、デジタルカメラ等に代表される撮像機器で撮影された写真のような画像は色かぶりなどの画像の劣化要因を付帯している場合が少なくない。この劣化を補正するために、例えば特開2000−13625号公報に記載されている方法等により自動化する手法も開示されており、画像記録装置にも適応されている。特開2000−13625号公報では、原画像の画素データに基づき明るさに関するヒストグラムを作成し、所定の画素値から累積して所定度数に相当する画素データを検出し、ハイライト、シャドーポイントを求め、それらのポイントに基づき画像全体の色かぶりを補正する画像補正処理を行うことにより、処理負荷の少なく、かつ高品質な画像を実現している。上述のような補正処理を行なう際に原画像の明るさに関するヒストグラムを作成する処理が必要となってくる。
一般的に、デジタルカメラ等に代表される撮像機器で撮影された写真のような画像は色かぶりなどの画像の劣化要因を付帯している場合が少なくない。この劣化を補正するために、例えば特開2000−13625号公報に記載されている方法等により自動化する手法も開示されており、画像記録装置にも適応されている。特開2000−13625号公報では、原画像の画素データに基づき明るさに関するヒストグラムを作成し、所定の画素値から累積して所定度数に相当する画素データを検出し、ハイライト、シャドーポイントを求め、それらのポイントに基づき画像全体の色かぶりを補正する画像補正処理を行うことにより、処理負荷の少なく、かつ高品質な画像を実現している。上述のような補正処理を行なう際に原画像の明るさに関するヒストグラムを作成する処理が必要となってくる。
本実施形態は、先行復号時に画像補正を行なう処理を追加した実施形態であり、ヒストグラム作成の処理のための画像の復号の処理を、先行復号処理時に行なうことを特徴とする。
図13に、本実施形態の処理の流れのフローチャートを示す。先行復号処理と印刷用画像処理の部分以外は、先の実施形態(図5参照)と同様なので説明は省略する。
図13では、先行復号処理S350において、前述のヒストグラムに代表される画像の特徴量テーブルを算出する処理が追加されている。さらに、印刷用画像処理S550において、算出された特徴量に基づいて、色処理によって色かぶり等の補正処理を行なうことが異なる点である。ヒストグラムとしては、原画像の明るさに関するヒストグラム、原画像の色相に関するヒストグラムなどが考えられる。
(S350:先行復号処理)
本実施形態の先行復号処理について、図14のフローチャートを用いて詳細に説明する。
本実施形態の先行復号処理について、図14のフローチャートを用いて詳細に説明する。
処理を開始して、最初のMCU行の復号に入るところまでは、図5と同様である。ステップS351で、MCUの復号処理を行なう。ここでの復号処理は、図5の簡易復号処理の場合とは異なり、「ハフマンテーブルの復号」「逆量子化」「逆離散コサイン変換」という一般的なJPEGの復号処理をすべて行い、ステップS352でヒストグラムを作成する。ヒストグラムの作成方法については前述の特許文献にも記載されており公知であり、又ヒストグラムの作成方法が本実施形態の特徴ではないので、ここでの説明は省略する。ステップS353、S354及びS359で、切り出し領域内のMCUに成るまで復号(S351)及びヒストグラム作成(S352)を繰り返す。図9の場合は、11行目の50番目のMCUまでは上記処理を繰り返し、51番目のMCUからはステップS355に進む。図10の場合は、6行目の75番目のMCUまでは上記処理を繰り返し、76番目のMCUからはステップS355に進む。
ステップS355では、復号テーブルに復号されたデータを書き込む。書き込んだ後、ステップS356で復号処理したMCUが画像の右端にあたるかどうかをみて、MCUの復号(S357)とヒストグラムの作成(S358)を繰り返し、右端までたどり着いていたら、ステップS359からS351に戻って、次のMCU行の処理へと遷移する。上述のように復号テーブルを作成しながら先行復号処理を行なう。尚、図14ではヒストグラムを元画像全体から求めるように処理したが、切り出し領域のみから求めるようにすれば、切り出し領域の外では簡易復号処理で良いので処理の高速化が図れる。
次に、印刷のための復号処理(S400)を行ない、前述のヒストグラムデータから色処理を変更させて色処理を行なう(S550)ことによって、色かぶりの補正された画像を出力することが可能となる。
以上説明した処理によって、画像の一部分を切り出して印刷する際に、画像全体を復号化することがないため印刷に必要なメモリ容量を最小限にとどめることがで、画像ファイル中の印刷対象となっていない部分の復号をなくすことで処理の高速化を実現し、符号化装置に特別な処理をさせることもないためデバイス間の汎用性を損なわない印刷が可能となり、同時に画像のヒストグラムに代表される特徴量を算出する処理を行なうことができるため、高速な印刷が可能となる。
尚、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(又は記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることはいうまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。又、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることはいうまでもない。
又、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードを含むプログラムコードが格納されることになる。
更に、画像データの復号処理をはじめとして、各処理部はソフトウェアではなくハードウェアとして実装されてる場面も多いが、本発明はこれら処理部の実装の形態に限定されるものではない。
Claims (13)
- 符号化された画像データを入力する入力手段と、
前記符号化された画像データに対応する画像中の任意の矩形部分を指示するための指示手段と、
前記指示手段によって指示を受けた前記矩形部分の画像データを復号する順序を前記矩形部分の画像の出力順序に基づいて判断し、さらに該復号する順序と画像データが符号化された順序とが相違するか否かを判断する復号方向判断手段と、
前記矩形部分の復号を部分的に行うために必要な情報を有する復号用のテーブルを作成する復号テーブル作成手段と、
前記復号方向判断手段が判断した復号方向に従って、前記復号用のテーブルを参照しながら、前記矩形部分の画像データを画像の出力順序に復号する画像復号手段とを有することを特徴とする画像処理装置。 - 前記復号方向判断手段は、前記指示手段によって指示を受けた前記矩形部分の画像データを出力する出力媒体のアスペクト比と、前記矩形部分のアスペクト比とから復号する方向を判断することを特徴とする請求項1に記載の画像処理装置。
- 前記復号用のテーブルは、復号された画像中の画素の位置を示す情報を含むことを特徴とする請求項1に記載の画像処理装置。
- 前記復号用のテーブルは、前記画像データが符号化された方向における前記矩形部分の最先端の部分の情報を含むことを特徴とする請求項1又は3に記載の画像処理装置。
- 前記符号化された画像データは、JPEG形式であることを特徴とする請求項1に記載の画像処理装置。
- 前記復号用のテーブルは、JPEG形式の画像データ中のMCUの位置を示す情報を含むことを特徴とする請求項5に記載の画像処理装置。
- 前記復号テーブル作成手段は、ハフマンテーブルによる逆変換のみを行う簡易復号手段を有することを特徴とする請求項5に記載の画像処理装置。
- 前記復号テーブル作成手段は、さらに画像の特徴量を抽出することを特徴とする請求項1に記載の画像処理装置。
- 前記画像の特徴量は、原画像の明るさに関するヒストグラムであることを特徴とする請求項8に記載の画像処理装置。
- 前記画像の特徴量は、原画像の色相に関するヒストグラムであることを特徴とする請求項8に記載の画像処理装置。
- 符号化された画像データに対応する画像中の任意の矩形部分を部分的に復号する画像処理方法であって、
前記矩形部分の画像データを復号する順序を前記矩形部分の画像の出力順序に基づいて判断して、該復号する順序と画像データが符号化された順序とが相違するか否かを判断する復号方向判断工程と、
前記矩形部分の復号を部分的に行うために必要な情報を有する復号用のテーブルを作成する復号テーブル作成工程と、
前記復号方向判断工程で判断した復号方向に従って、前記復号用のテーブルを参照しながら、前記矩形部分の画像データを画像の出力順序に復号する画像復号工程とを有することを特徴とする画像処理方法。 - 符号化された画像データに対応する画像中の任意の矩形部分を部分的に復号するコンピュータ実行可能な画像処理プログラムであって、
前記矩形部分の画像データを復号する順序を前記矩形部分の画像の出力順序に基づいて判断して、該復号する順序と画像データが符号化された順序とが相違するか否かを判断する復号方向判断工程と、
前記矩形部分の復号を部分的に行うために必要な情報を有する復号用のテーブルを作成する復号テーブル作成工程と、
前記復号方向判断工程で判断した復号方向に従って、前記復号用のテーブルを参照しながら、前記矩形部分の画像データを画像の出力順序に復号する画像復号工程とを有することを特徴とする画像処理プログラム。 - 符号化された画像データに対応する画像中の任意の矩形部分を部分的に復号する画像処理プログラムをコンピュータ読出し可能に記憶する記憶媒体であって、
前記画像処理プログラムが、
前記矩形部分の画像データを復号する順序を前記矩形部分の画像の出力順序に基づいて判断して、該復号する順序と画像データが符号化された順序とが相違するか否かを判断する復号方向判断工程と、
前記矩形部分の復号を部分的に行うために必要な情報を有する復号用のテーブルを作成する復号テーブル作成工程と、
前記復号方向判断工程で判断した復号方向に従って、前記復号用のテーブルを参照しながら、前記矩形部分の画像データを画像の出力順序に復号する画像復号工程とを有することを特徴とする記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004221956A JP2006042169A (ja) | 2004-07-29 | 2004-07-29 | 画像処理方法及びその装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004221956A JP2006042169A (ja) | 2004-07-29 | 2004-07-29 | 画像処理方法及びその装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006042169A true JP2006042169A (ja) | 2006-02-09 |
Family
ID=35906638
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004221956A Withdrawn JP2006042169A (ja) | 2004-07-29 | 2004-07-29 | 画像処理方法及びその装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006042169A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010074410A (ja) * | 2008-09-17 | 2010-04-02 | Canon Inc | 画像処理装置及びその制御方法 |
JP2010161667A (ja) * | 2009-01-08 | 2010-07-22 | Canon Inc | 画像処理装置と制御方法及びプログラム |
-
2004
- 2004-07-29 JP JP2004221956A patent/JP2006042169A/ja not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010074410A (ja) * | 2008-09-17 | 2010-04-02 | Canon Inc | 画像処理装置及びその制御方法 |
JP2010161667A (ja) * | 2009-01-08 | 2010-07-22 | Canon Inc | 画像処理装置と制御方法及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7564487B2 (en) | Digital camera and control method for generating an image file using feature extraction data | |
US6741746B2 (en) | Method and apparatus for processing image files | |
US8503827B2 (en) | Apparatus and method for decoding image data | |
JP2000278685A (ja) | 可変長符号化バイナリ・ビットストリームの処理方法 | |
US20050213830A1 (en) | Image processing device and method | |
JP2005503080A (ja) | カメラと、画像のパースペクティブ補正及びことによると回転及び揺れ補正とを持つ画像装置 | |
JP2008035502A (ja) | 多機能プリンタ装置、及び画像処理方法 | |
JP2006129471A (ja) | 画像処理方法及び画像処理装置 | |
EP1370058B1 (en) | Image printing apparatus and image printing control method | |
US7720293B2 (en) | Image processing apparatus, printing apparatus and image processing method | |
US20080159650A1 (en) | Image processing apparatus and image processing method | |
US7570822B2 (en) | Image processing apparatus, printer and control method of the image processing | |
JP2006304243A (ja) | 画像処理装置、印刷装置、および、画像処理方法 | |
JP2006042169A (ja) | 画像処理方法及びその装置 | |
JP4136825B2 (ja) | 画像処理装置および画像処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム | |
JP2006313984A (ja) | 画像処理装置 | |
JP2003224734A (ja) | 画像表示装置、画像処理方法、記録媒体及びプログラム | |
JP2006340338A (ja) | 画像処理装置 | |
US8270002B1 (en) | Printing digital images with rotation | |
JP2006313985A (ja) | 画像処理装置 | |
JP2009194936A (ja) | 画像処理装置、印刷装置、および、画像処理方法 | |
US20110286663A1 (en) | Method And Apparatus Of Color Image Rotation For Display And Recording Using JPEG | |
JP2005244773A (ja) | 画像処理装置 | |
US8090217B2 (en) | Image processing apparatus, image processing method, and printing apparatus | |
JP2009130590A (ja) | プリンタ及びその制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20071002 |