[go: up one dir, main page]

JP2008109389A - 画像処理装置および画像処理装置の制御方法 - Google Patents

画像処理装置および画像処理装置の制御方法 Download PDF

Info

Publication number
JP2008109389A
JP2008109389A JP2006290197A JP2006290197A JP2008109389A JP 2008109389 A JP2008109389 A JP 2008109389A JP 2006290197 A JP2006290197 A JP 2006290197A JP 2006290197 A JP2006290197 A JP 2006290197A JP 2008109389 A JP2008109389 A JP 2008109389A
Authority
JP
Japan
Prior art keywords
block
encoding
encoded
image
data
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.)
Pending
Application number
JP2006290197A
Other languages
English (en)
Inventor
Hirokazu Ishii
宏和 石井
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 JP2006290197A priority Critical patent/JP2008109389A/ja
Priority to US11/923,170 priority patent/US20080100876A1/en
Publication of JP2008109389A publication Critical patent/JP2008109389A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

【課題】画像データ端部だけでなく、画像データ中に存在する画像矩形の端部に発生する画質劣化を低減することができる画像処理装置および画像処理装置の制御方法を提供することを目的とする。
【解決手段】入力した画像データ中に存在する画像矩形の端部と、符号化処理における符号化ブロックの端部とが一致するように、符号化ブロックを設定し、この設定した符号化ブロックに関する情報を生成し、上記設定した符号化ブロックを符号化し、上記符号化ブロック情報と上記符号化した符号化データとに基づいて、上記符号化データのうちで重複した領域を削除して、上記符号化データを復号化する画像処理装置である。
【選択図】図4

Description

本発明は、符号化装置と復号化装置とを有し、上記符号化装置から供給される符号化データに基づいて、復号化装置が符号化データを復号化する画像処理装置および画像処理装置の制御方法に関する。
従来、ホスト端末等に保存されているデータを、プリンタで印刷する場合、ホスト端末でプリンタ処理が可能なデータ形式に変換し、この変換後のデータをプリンタに送信し、プリンタは、必要があれば、データ列の並べ替えや解像度変換を行い、印刷する。
この場合、ホスト端末が行う処理として、色空間変換処理や量子化処理等があり、用紙の種類や、印刷品位等の印刷設定に応じて、上記ホスト端末が行う処理は、互いに異なることが一般的である。
しかし、近年、プリンタの高性能化や高機能化に伴い、プリンタが、色空間変換処理や量子化処理等を実行することが可能である。
そこで、ホスト端末が、データの符号化処理のみを実行し、符号化後のデータを、プリンタに送信し、プリンタが、復号化処理や色空間変換処理、量子化処理、解像度変換処理等を実行し、印刷するシステムも存在している。
この場合、ホスト端末が符号化処理する際の符号化方式として、JPEG(Joint Photographic Experts Group)が用いられることがある。このJPEGは、デジタルカメラ等の記録方式として広く普及し、一般的なデータ形式であり、また、圧縮率が高く、転送するデータサイズを小さくすることができる。さらに、プリンタにはコピー機能を実現するために、ハードウェアのJPEGデコーダを搭載しているものがあり、JPEGは、高速に復号化処理が可能である。
このJPEGは、高周波成分に関して敏感でないという人間の視覚特性に着目し、画像信号を、空間領域から周波数領域に変換した後に、高周波成分を削減することによって、高圧縮を実現している。なお、周波数領域への変換処理は、MCUと呼ばれるブロック単位で行われる。
このようなブロック単位で符号化処理を行う際に画質劣化を低減するシステムが知られている(たとえば、特許文献1、特許文献2参照)。
特許文献1には、ブロック単位で行う符号化処理において、画像データ端部でブロック内の画像データが不足する場合、画像データの端部を繰り返し用いることによって、画像データ端部の画質劣化を低減するシステムが記載されている。
特許文献2には、ブロック単位で行う符号化処理において、画像データの端部でブロック内の画像データが不足する場合、画像データ外に存在するデータを用いることによって、画像データ端部の画質劣化を低減するシステムが記載されている。
特開2000−69293号公報 特開2003−289440号公報
しかし、上記特許文献1記載の発明では、画像データ端部の画質劣化を低減することはできるが、画像データ中に存在する画像矩形の端部に発生する画質劣化を低減することができないという問題がある。
つまり、相関のない複数の画像矩形から構成されるブロックに対して、周波数領域への変換を行うと、このブロックに高周波成分を持たせることになり、この結果、高周波成分を削減する符号処理において、画質が劣化するという問題がある。
また、上記特許文献2記載の発明では、特許文献1記載の発明と同様に、画像データ中に存在する画像矩形の端部に発生する画質劣化を低減することができないという問題がある。さらに、画像データの外側に有効なデータがない場合、画像データ端部の画質劣化を低減することができないという問題がある。
本発明は、画像データ端部だけでなく、画像データ中に存在する画像矩形の端部に発生する画質劣化を低減することができる画像処理装置および画像処理装置の制御方法を提供することを目的とする。
本発明は、画像データ入力手段を介して入力した画像データ中に存在する画像矩形の端部と、符号化処理における符号化ブロックの端部とが一致するように、符号化ブロックを設定する符号化ブロック設定手段を有する。また、本発明は、上記符号化ブロック設定手段が設定した符号化ブロックに関する情報を生成する符号化ブロック情報生成手段と、上記符号化ブロック設定手段が設定した符号化ブロックを符号化する符号化手段とを有する。さらに、本発明は、上記符号化ブロック情報と上記符号化手段が符号化した符号化データとに基づいて、上記符号化データのうちで重複した領域を削除して、上記符号化データを復号化する復号化手段を有する画像処理装置である。
本発明によれば、符号化処理部と復号化処理部とを連携して処理するので、画像データの端部だけでなく、画像データ中に存在する画像矩形の端部に発生する画質劣化を低減することができるという効果を奏する。
つまり、本発明によれば、符号化時に画質が劣化しないように、符号化ブロックを移動して符号化し、復号化時に、符号化データを重複した領域を削除して復号化するので、画像データの端部の画質劣化を低減することができるという効果を奏する。
発明を実施するための最良の形態は、次の実施例である。
図1は、本発明の実施例1である画像処理システムにおけるホスト端末100の構成を示すブロック図である。
ホスト端末100は、画像処理装置の例であり、CPU101と、表示部102と、操作指示入力手段としてのマウス103と、キーボード104と、ROM105と、RAM106と、外部記憶装置107とを有する。また、ホスト端末100は、インタフェース部108を有し、プリンタ200と接続されている。
外部記憶装置107は、ハードディスクやFlush ROMによって構成され、印刷データの生成と、プリンタ200を制御するプリンタドライバプログラム109とを格納している。
なお、外部記憶装置がなければ、プリンタドライバプログラム109を、ROM105に格納するようにしてもよい。
プリンタドライバプログラム109は、直交変換方式の1つであるDCT変換、量子化、およびハフマン符号化等を用いてJPEG符号化処理を行い、符号化されたデータとその他付加情報をプリントデータとして、プリンタ200に転送する。なお、上記符号化処理は、MCU(Minimum Coded Unit)と呼ばれる8ライン×8画素のブロック単位で行われる。
図2は、実施例1である画像処理システムにおけるプリンタ200の構成を示すブロック図である。
プリンタ200は、CPU201と、表示部202と、操作指示入力手段としての操作部203と、ROM204と、RAM205と、不揮発性RAM206と、記録部207と、読取部208と、駆動部209と、センサ部210とを有する。また、プリンタ200は、インタフェース部211を有し、インタフェース部211を介して、ホスト端末100と接続されている。
ROM204は、符号化された印刷データを復号化するための復号化処理と、色空間変換、量子化処理等を行う画像処理プログラム212とを格納している。
画像処理プログラム212は、複数の画素によって構成されているブロック単位で、JPEG符号化された印刷データを、ハフマン復号化、逆量子化、逆DCT変換等を用いて画像データを復号化する。この復号化された画像データを、色空間変換と、量子化処理等の変換処理とを行い、この変換処理された印刷データを、記録部207に供給する。
不揮発性RAM206は、バッテリバックアップされたSRAM等であり、画像記録装置200に固有のデータ等を記憶する。記録部207は、画像処理プログラム212が生成した印刷データが、記録動作するために必要な所定量に達すると、記録動作を実行する。読取部208は、原稿画像を読み取り、赤(R)、緑(G)および青(B)色の輝度データを出力する。
駆動部209は、記録部207、読取部208のそれぞれの動作において、給排紙ローラを駆動するためのステッピングモータ、ステッピングモータの駆動力を伝達するギヤと、ステッピングモータとを制御するドライバ回路等によって構成されている。
センサ部210は、記録紙幅センサ、記録紙有無センサ、原稿幅センサ、原稿有無センサ、記録媒体検知センサ等によって構成されている。CPU201は、これらセンサ部210が出力した情報に基づいて、原稿と記録紙との状態を検知する。
次に、ホスト端末100のプリンタドライバプログラム109が実行する符号化処理について説明する。
図3は、ホスト端末100のプリンタドライバプログラム109が実行する符号化処理を示すフローチャートである。
まず、S301で、プリンタドライバプログラム109の符号化処理部に画像データを供給する。S302で、画等データを符号化するために、画像データに対して符号化ブロック設定処理を行う。なお、この符号化ブロック設定処理について、図4を用いて後述する。S303では、S302で設定された縦方向の符号化ブロックに対する符号化処理が全て終了したかどうかを判断する。S303で、縦方向の符号化ブロックに対する符号化処理が全て終了したと判断すると、S306に進む。
一方、S303で縦方向の符号化ブロックに対する符号化処理が全て終了していないと判断すると、S304に進む。S304では、S302で設定された横方向の符号化ブロックに対する符号化処理が全て終了したかどうかを判断する。S304で、横方向の符号化ブロックに対する符号化処理が全て終了したと判断すると、S303に戻る。
S304で横方向の符号化ブロックに対する符号化処理が全て終了していないと判断すると、S305に進む。S305でその符号化ブロックに対して、DCT変換、量子化処理、ハフマン符号化が行われ符号化処理が実行され、S304に戻る。
S303〜S305の処理が繰り返され、全ての符号化ブロックに対する符号化処理が終了すると、S306に進む。S306では、S305で生成した符号化データの先頭にJPEGヘッダデータを挿入し、JPEG形式の符号化データとする。
このヘッダデータには、ハフマン符号化時に使用したハフマンテーブル、量子化処理時に使用した量子化テーブル等、JPEG復号化処理に必要なデータが含まれている。
最後に、S307で、JPEGデータと、後述する重複領域情報700とを出力し、処理を終了する。
図4は、符号化ブロック設定処理(S302)を示すフローチャートである。
なお、符号化ブロックは、8ライン×8画素によって構成され、画像データの左上端から右方向に順に設定される。横方向の設定が終了すると、下方向に移動し、左端から右方向に順に設定される。最後は、画像データの右下端に設定される。
まず、S401で、符号化ブロックカウンタに1が設定される。このように、符号化ブロックカウンタに1が設定されるのは、現在処理している符号化ブロックが、画像データに対して何番目に設定した符号化ブロックであるかを管理するためである。
S402で、画像データに対する縦方向の符号化ブロック設定が全て終了したかどうかを判断する。S402で縦方向の符号化ブロック設定が全て終了したと判断すると、S409に進む。
一方、S402で縦方向の符号化ブロック設定が全て終了していないと判断すると、S403に進む。S403で、画像データに対する横方向の符号化ブロック設定が全て終了したかどうかを判断する。S403で横方向の符号化ブロック設定が全て終了したと判断すると、S402に戻る。
一方、S403で横方向の符号化ブロック設定が全て終了していないと判断すると、S404に進む。S404で、符号化ブロックが設定されていない領域に対して、8ライン×8画素の符号化ブロックが設定される。S405で、符号化ブロックカウンタの値を1加算する。
S406では、S404で設定された符号化ブロックに、画像矩形の端部が含まれているかどうかを判断する。つまり、符号化ブロックが複数の画像矩形から構成されているかどうかを判断する。
S406で画像矩形の端部が含まれていないと判断すると、つまり、符号化ブロックが単一の画像矩形から構成されていると判断すると、S403に戻る。
一方、S406で画像矩形の端部が含まれていると判断すると、つまり、符号化ブロックが複数の画像矩形から構成されていると判断すると、S407に進む。S407で、符号化ブロックの端部と画像矩形の端部とが一致するように、符号化ブロックを再設定する。このときに、符号化ブロックの端部と画像矩形の端部とが一致するまで、左方向または上方向に符号化ブロックを移動し(符号化ブロックの符号化対象画素を変更し)、符号化ブロックが既に設定されている領域を含むように再設定する。
つまり、画像データを構成する全ての画素に対して、符号化ブロックを設定する必要があり、右方向または下方向に符号化ブロックを移動すると、符号化ブロックが設定されない領域が発生する。したがって、この領域を含むように、左方向または上方向に符号化ブロックを移動して、符号化ブロックを再設定する。
なお、符号化ブロックの再設定については、図5、図6を用いて後述する。
S408で、重複領域情報700を生成する。重複領域情報700については、図7に関して説明する。
S402〜S408の処理が繰り返され、全ての領域に対して符号化ブロック設定処理が終了すると、S409で、符号化ブロック設定情報、重複領域情報700が出力され、処理を終了する。
図5は、S407で行われる符号化ブロック再設定処理を説明する図であり、画像データからある領域を切り出した状態を示す図である。
図5に示す領域に接する上方向および左方向の領域には、既に符号化ブロックが設定されているとする。
図5に示す領域には、画素(0、0)、(11、0)、(0、7)、(11、7)で囲まれた画像矩形Aと、画素(12、0)、(19、0)、(12、7)、(19、7)で囲まれた画像矩形Bとが含まれている。画像矩形Aは、たとえば黒や他の色のついた文字や線の画像であり、全白画像のような背景部分ではない画像である。矩形領域Bは、たとえば全白画像や淡い色のついた背景部分である。
まず、画素(0、0)、(7、0)、(0、7)、(7、7)で囲まれている領域に対して、符号化ブロックを設定する。この符号化ブロックは、画像矩形Aのデータのみによって構成されているので、符号化ブロックの再設定を行わない。
次に、画素(8、0)、(15、0)、(8、7)、(15、7)で囲まれている領域501に、符号化ブロックを設定する。この符号化ブロック501は、画像矩形Aのデータと画像矩形Bのデータとによって構成されているので、符号化ブロックを再設定する。すなわち、符号化ブロックを移動する(符号化ブロックの符号化対象の画素を変更する)。つまり、符号化ブロックの端部と、画像矩形Aの端部とが一致するように、符号化ブロック501を左方向に4画素、移動する。
これによって、画素(4、0)、(11、0)、(4、7)、(11、7)で囲まれている領域502に、符号化ブロックを再設定する。
最後に、まだ、符号化ブロックが設定されていない領域、つまり画素(12、0)、(19、0)、(12、7)、(19、7)で囲まれている領域について、符号化ブロックを設定する。この符号化ブロックは、画像矩形Bのデータのみによって構成されるので、符号化ブロックを再設定する必要がない。
図6は、S407で行われる符号化ブロック再設定処理を説明する図であり、画像データからある領域を切り出した状態を示す図である。
画素(0、0)、(7、0)、(0、7)、(7、7)で囲まれている領域と、この領域に接する左方向の領域とには、符号化ブロックが既に設定されているとする。
また、この領域には、画素(0、0)、(7、0)、(0、11)、(7、11)で囲まれている画像矩形Cと、画素(0、12)、(7、12)、(0、15)、(7、15)で囲まれている画像矩形Dとが含まれている。画像矩形Cは、たとえば黒や他の色のついた文字や線の画像であり、全白画像のような背景部分ではない画像である。矩形領域Dは、たとえば全白画像や淡い色のついた背景部分である。
まず、画素(0、8)、(7、8)、(0、15)、(7、15)で囲まれている領域601に、符号化ブロックを設定する。
この符号化ブロック601は、画像矩形Cと画像矩形Dとのデータによって構成されているので、符号化ブロックを再設定する。つまり、符号化ブロックの端部と画像矩形Cの端部とが一致するように、符号化ブロックを、上方向に4画素移動する(符号化ブロックの設定対象を、上方向に、4画素変更する)。
これによって、画素(0、4)、(7、4)、(0、11)、(7、11)で囲まれている領域602に対して、符号化ブロックを再設定する。なお、画素(0、12)、(7、12)、(0、15)、(7、15)で囲まれている領域に対しては、次回の横方向の符号化ブロック設定処理で設定される。
図7は、S408で生成される重複領域情報700のデータ構造を示す図である。
重複領域情報700は、符号化ブロック識別子710と、重複領域特定情報720とを有する。符号化ブロック識別子710は、重複領域(符号化ブロックが重複して設定されている領域)を符号化の対象としている符号化ブロックを識別する識別子である。
符号化ブロック識別子710は、画像データ左上端の符号化ブロックを1とし、次に設定した符号化ブロックの識別子を2というように、符号化ブロックを設定する毎に、1ずつ加算する。つまり、符号化ブロックカウンタが、上記加算を実行する。
この符号化ブロック識別子710の後に、重複領域特定情報720が格納される。重複領域特定情報720は、重複領域開始X座標721と、重複領域開始Y座標722と、重複領域横画素数723と、重複領域縦画素数724とによって構成されている。なお、符号化ブロックの左上端の画素を(X、Y)=(0、0)とする。
図8は、重複領域情報700の具体例を示す図である。
画像データにおいて、重複領域(符号化ブロックが重複して設定されている領域)を符号化の対象としている符号化ブロックが、10番目に設定された符号化ブロックであれば、符号化ブロック識別子710に「10」が格納される。
重複領域開始X座標値721、Y座標値722として、それぞれ0を格納し、また、重複領域横画素数723として、4を格納し、縦画素数724として、8を格納する。
図9は、ホスト端末100のプリンタドライバプログラム109で行われる印刷データ制御を示すフローチャートである。
まず、S901で、ホスト端末100上で動作する不図示のオペレーティングシステムやアプリケーションプログラムから、プリンタドライバプログラム109に、印刷対象となる画像データが供給される。
S902で、図3に示す画像データ符号化処理を実行する。符号化処理を行った結果、JPEGデータと重複領域情報700とが生成される。
S903で、インタフェース部108を介して、オペレーティングシステムやアプリケーションプログラムから指定された印刷設定情報を、プリンタ200へ転送する。この印刷設定情報は、たとえば、印刷用紙や印刷品位等の情報である。
S904で、インタフェース部108を介して、重複領域情報700を、プリンタ200へ転送する。重複領域情報700は、重複領域を特定する情報であり、具体的には、符号化ブロック識別子と、符号化ブロック内の重複領域開始X座標と、符号化ブロック内の重複領域開始Y座標と、重複領域横画素数と、重複領域縦画素数とを有する。S905で、インタフェース部108を介して、JPEGデータをプリンタ200へ転送し、処理を終了する。
図10は、印刷設定情報と重複領域情報700とJPEGデータとを、プリンタ200に転送する際のコマンド形式を示す図である。
プリンタ200に転送されるコマンドは、コマンドヘッダ部1001と、コマンドデータ部1002とによって構成されている。
コマンドヘッダ部1001には、コマンドデータ部1002に格納されているデータの種類(印刷設定情報、重複領域情報700、JPEGデータ)の何れであるかを判別する識別子や、データのサイズ等が格納されている。
コマンドデータ部1002には、コマンドヘッダの種類に応じて、印刷設定情報、重複領域情報700、JPEGデータが格納されている。
図11は、プリンタ200で行われる復号化処理を示すフローチャートである。
S1101で、プリンタ200のインタフェース部211を介して、画像処理プログラム212の復号化処理部に、JPEGデータと重複領域情報700とが供給される。
S1102で、符号化ブロックカウンタに1を設定する。この「符号化ブロックカウンタ」は、現在処理している符号化ブロックが、JPEGデータにおける何番目の符号化ブロックであるかを管理するカウンタである。
復号化処理は、符号化ブロックが格納されている順に処理するので、上記符号化ブロックカウンタを用いて、重複領域情報700を検索することができる。
S1103で、JPEGデータのヘッダを解析する。この「JPEGヘッダ」には、復号化に必要な情報が含まれている。
S1104で、縦方向の全ての符号化ブロックに対する復号化処理が終了したかどうかを判断する。S1104で縦方向の全ての符号化ブロックに対する復号化処理が終了したと判断すると、処理を終了する。
一方、S1104で縦方向の全ての符号化ブロックに対する復号化処理が終了していないと判断すると、S1105で、横方向の全ての符号化ブロックに対する復号化処理が終了したかどうかを判断する。S1105で横方向の全ての符号化ブロックに対する復号化処理が終了したと判断すると、S1104に戻る。
一方、S1105で、横方向の全ての符号化ブロックに対する復号化処理が終了していないと判断すると、S1106で、ハフマン復号化、逆量子化、逆DCT変換等の復号化処理を実行し、S1107に進む。
S1107で、今回処理した符号化ブロックに対する重複領域情報700があるかどうかを判定する。つまり、現在の符号化ブロックカウンタと一致する符号化ブロック識別子を検索し、重複領域情報700を検索する。
S1107で重複領域情報700が存在しないと判断すると、S1110に進む。
一方、S1107で重複領域情報700が存在していると判断すると、S1108で、重複領域情報700を取得する。取得する重複領域情報700は、S1107で検索した「今回処理した符号化ブロックに対する重複領域情報」である。
S1109で、S1108で取得した重複領域情報700に従い、符号化ブロックを復号化したデータのうちで、重複領域を削除する。
重複領域の削除については、図12を用いて後述する。
最後に、S1110で、符号化ブロックカウンタの値に1が加算される。
S1104〜S1110の処理が繰り返され、全ての符号化ブロックに対する復号化処理が終了すると、処理が終了する。
次に、S1109で行われる重複領域削除処理について説明する。
図12は、図5で説明した領域を符号化した符号化データを示す図である。
まず、符号化ブロック1201を復号化処理する。この符号化ブロック1201については、重複領域が設定されていないので、全てのデータを出力する。
次に、符号化ブロック1202を復号化処理する。この符号化ブロック1202には、図8に示す重複領域情報700が設定されているので、この設定されている重複領域情報700に従って、重複領域に対応する符号化データを削除する。
つまり、重複領域情報700に、符号化ブロック内の重複領域開始X座標値として、「0」が格納され、符号化ブロック内の重複領域開始Y座標値として、「0」が格納されている。そして、重複領域横画素数として、「4」が格納され、重複領域縦画素数として、「8」が格納されている。
よって、符号化ブロック1202において、符号化ブロック内の重複領域開始の座標は、符号化ブロック内の左上の画素位置である(0、0)であり、横に4画素分、縦に8画素分が、重複領域である。これは、図12の符号化ブロック1202内の画素(4、0)、(7、0)、(4、7)、(7、7)で囲まれた領域であるので、この領域を削除し、画素(8、0)、(11、0)、(8、7)、(11、7)で囲まれた領域のデータのみを出力する。
最後に、符号化ブロック1203の復号化処理を行う。この符号化ブロック1203について、重複領域が設定されていないので、全てのデータを出力する。
図13は、プリンタ200の画像処理プログラム212に基づいて行われる印刷データ制御を示すフローチャートである。
まず、S1301で、画像処理プログラム212に、印刷設定情報、重複領域情報700、JPEGデータが入力される。S1302で、図11に示すJPEGデータの復号化処理を実行する。S1303で、印刷設定情報に従って復号化されたデータについて、色空間変換処理を実行する。
S1304で、印刷設定情報に従い、量子化処理を実行する。最後に、S1305で、記録部207に量子化データを転送し、処理を終了する。
上記実施例1では、符号化時に、画質が劣化しないように、符号化ブロックを移動して符号化し、復号化時に、符号化ブロックの移動を考慮して復号化処理するので、画像データの端部の画質劣化を低減することができる。
また、上記実施例1によれば、画像データ中に存在する画像矩形の端部に発生する画質劣化を低減することができる。
次に、本発明の実施例2について説明する。
実施例2は、JPEGヘッダのアプリケーションデータセグメント、またはコメントセグメントに、重複領域情報700を格納する実施例である。
実施例2において、ホスト端末100の構成を示すブロック図、プリンタ200の構成を示すブロック図は、実施例1と同様であるので、その説明を省略する。
また、実施例2に係わる符号化ブロック設定処理についても、実施例1と同様であるので、図4を引用し、その説明を省略する。
図14は、実施例2において、ホスト端末100のプリンタドライバプログラム109で行われる符号化処理を示すフローチャートである。
まず、S1401で、プリンタドライバプログラム109の符号化処理部に、画像データが供給される。S1402で、画等データを符号化するために、画像データに、符号化ブロック設定処理を行う。
S1403では、S1402で設定された縦方向の符号化ブロックに対する符号化処理が全て終了したかどうかを判断する。S1403で縦方向の全ての符号化ブロックについて、符号化処理が終了していないと判断すると、S1404では、S1402で設定された横方向の全ての符号化ブロックに対する符号化処理が終了したかどうかを判断する。S1404で横方向の全ての符号化ブロックに対する符号化処理が終了したと判断すると、S1403に戻る。
一方、S1404で横方向の全ての符号化ブロックに対する符号化処理が終了していないと判断すると、S1405で、その符号化ブロックについて、DCT変換、量子化処理、ハフマン符号化が行われ、符号化処理を実行し、S1404に戻る。
S1403〜S1405の処理が繰り返され、全ての符号化ブロックに対する符号化処理を終了すると、S1406で、JPEGヘッダのアプリケーションデータセグメント、またはコメントセグメントに、重複領域情報700を格納する。上記アプリケーションデータセグメント、コメントセグメントは、アプリケーション固有の情報を自由に格納できる領域である。
S1407では、S1405で生成した全符号化データの先頭に、JPEGヘッダデータを挿入し、JPEG形式の符号化データとする。上記JPEGヘッダデータには、ハフマン符号化時に使用したハフマンテーブル、量子化処理時に使用した量子化テーブル等、JPEG復号化処理に必要なデータが含まれている。また、上記JPEGヘッダデータには、S1406で格納した重複領域情報700をも含んでいる。
最後に、S1408で、JPEGデータを出力し、処理を終了する。
図15は、ホスト端末100のプリンタドライバプログラム109が実行する印刷データ制御を示すフローチャートである。
まず、S1501で、ホスト端末100上で動作する不図示のオペレーティングシステムやアプリケーションプログラムから、プリンタドライバプログラム109に、印刷対象である画像データが供給される。S1502で、図3に示す画像データ符号化処理が実行され、符号化処理を行った結果、JPEGデータが生成される。
S1503で、インタフェース部108を介して、オペレーティングシステムやアプリケーションプログラムから指定された印刷設定情報を、プリンタ200へ転送する。印刷設定情報として、たとえば、印刷用紙や印刷品位等の情報を転送する。
最後に、S1504で、インタフェース部108を介して、JPEGデータをプリンタ200へ転送し、処理を終了する。このときに、JPEGデータのヘッダに格納されている重複領域情報700をも転送する。
図16は、プリンタ200で行われる復号化処理を示すフローチャートである。
S1601で、プリンタ200のインタフェース部211を介して、画像処理プログラム212の復号化処理部にJPEGデータを供給する。
S1602で、符号化ブロックカウンタに「1」を設定する。つまり、現在処理している符号化ブロックが、JPEGデータにおける1番目の符号化ブロックであることを管理するために、符号化ブロックカウンタに「1」を設定する。
符号化ブロックが格納された順に、復号化処理するので、この符号化ブロックカウンタの値に基づいて、重複領域情報700を検索することができる。
S1603で、JPEGデータのヘッダを解析し、このJPEGヘッダには、復号化に必要な情報が含まれている。S1604では、S1603で解析したJPEGヘッダから、重複領域情報700を抽出する。なお、重複領域情報700は、コメントセグメント、またはアプリケーションデータセグメントに格納されている。
S1605で、縦方向の全ての符号化ブロックに対する復号化処理が終了したかどうかを判断する。S1605で縦方向の全ての符号化ブロックに対する復号化処理が終了したと判断すると、処理を終了する。
一方、S1605で縦方向の全ての符号化ブロックに対する復号化処理が終了していないと判断すると、S1606で、横方向の全ての符号化ブロックに対する復号化処理が終了したかどうかを判断する。S1606で横方向の全ての符号化ブロックに対する復号化処理が終了したと判断すると、S1605に戻る。
一方、S1606で横方向の全ての符号化ブロックに対する復号化処理が終了していないと判断すると、S1607で、ハフマン復号化、逆量子化、逆DCT変換等の復号化処理を実行し、S1608に進む。S1608で、今回処理した符号化ブロックに対する重複領域情報700があるかどうかを判定する。つまり、現在の符号化ブロックカウンタと一致する符号化ブロック識別子があるかどうかを調べるために、重複領域情報700を検索する。
S1608で重複領域情報700がないと判断すると、S1611に進む。
一方、S1608で、重複領域情報700があると判断すると、S1609で、重複領域情報700を取得する。取得する重複領域情報700は、S1608で検索した情報である。
S1610で、符号化ブロックを復号化したデータについて、S1609で取得した重複領域情報700に基づいて、重複領域を削除する。
最後に、S1611で、符号化ブロックカウンタの値に1を加算する。
上記S1605〜S1611の処理を繰り返し、全ての符号化ブロックに対する復号化処理が終了すると、処理が終了する。
図17は、プリンタ200の画像処理プログラム212が実行する印刷データ制御を示すフローチャートである。
まず、S1701で、画像処理プログラム212に、印刷設定情報、JPEGデータを入力する。このJPEGデータのヘッダには、重複領域情報700が格納されている。S1702で、図16に示すJPEGデータの復号化処理を実行する。
S1703で、印刷設定情報に応じて復号化されたデータを、色空間変換処理する。S1704で、印刷設定情報に基づいて、量子化処理を実行する。
最後に、S1705で、記録部207に量子化データを転送し、処理を終了する。
なお、実施例1、実施例2では、符号化処理と復号化処理とを、異なる機器上で実行するが、符号化処理と復号化処理とを、同一の機器上で動作させるようにしてもよい。たとえば、コピー機において、読み取り時に、原稿データに符号化処理し、内部メモリ上に蓄積し、記録時に、内部メモリ上の符号化されたデータに復号化処理を行い、印刷を行うシステムに、上記実施例を適用するようにしてもよい。
上記実施例によれば、符号化処理部と復号化処理部とを連携して処理するので、画像データの端部だけでなく、画像データ中に存在する画像矩形の端部に発生する画質劣化を低減することができる。つまり、上記実施例によれば、符号化時に画質が劣化しないように、符号化ブロックを移動して符号化し、復号化時に、符号化データを重複した領域を削除して復号化するので、画像データの端部の画質劣化を低減することができる。
また、上記実施例によれば、画像データや、画像データ中に存在する画像矩形の端部の画質劣化を低減するために、特殊な符号化処理装置や復号化処理装置を準備する必要がないので、容易かつ安価にシステムを構築することができる。
本発明の実施例1である画像処理システムにおけるホスト端末100の構成を示すブロック図である。 実施例1である画像処理システムにおけるプリンタ200の構成を示すブロック図である。 ホスト端末100のプリンタドライバプログラム109が実行する符号化処理を示すフローチャートである。 符号化ブロック設定処理(S302)を示すフローチャートである。 S407で行われる符号化ブロック再設定処理を説明する図であり、画像データからある領域を切り出した状態を示す図である。 S407で行われる符号化ブロック再設定処理を説明する図であり、画像データからある領域を切り出した状態を示す図である。 S408で生成される重複領域情報700のデータ構造を示す図である。 重複領域情報700の具体例を示す図である。 ホスト端末100のプリンタドライバプログラム109で行われる印刷データ制御を示すフローチャートである。 印刷設定情報と重複領域情報700とJPEGデータとを、プリンタ200に転送する際のコマンド形式を示す図である。 プリンタ200で行われる復号化処理を示すフローチャートである。 図5で説明した領域を符号化した符号化データを示す図である。 プリンタ200の画像処理プログラム212で行われる印刷データ制御を示すフローチャートである。 実施例2において、ホスト端末100のプリンタドライバプログラム109で行われる符号化処理を示すフローチャートである。 ホスト端末100のプリンタドライバプログラム109が実行する印刷データ制御を示すフローチャートである。 プリンタ200で行われる復号化処理を示すフローチャートである。 プリンタ200の画像処理プログラム212が実行する印刷データ制御を示すフローチャートである。
符号の説明
100…ホスト端末、
200…プリンタ、
501、502…符号化ブロック、
A、B、C、D…画像矩形、
710…符号化ブロック識別子、
720…重複領域特定情報、
1001…コマンドヘッダ部、
1002…コマンドデータ部、
1201、1202、1203…符号化ブロック。

Claims (6)

  1. 符号化と復号化とを行う画像処理装置において、
    画像データを入力する画像データ入力手段と;
    上記画像データ入力手段を介して入力した画像データ中に存在する画像矩形の端部と、符号化処理における符号化ブロックの端部とが一致するように、符号化ブロックが重複して設定されることも許容して、符号化ブロックを設定する符号化ブロック設定手段と;
    上記符号化ブロック設定手段が設定した符号化ブロックに関する情報を生成する符号化ブロック情報生成手段と;
    上記符号化ブロック設定手段が設定した符号化ブロックを符号化する符号化手段と;
    上記符号化ブロック情報と上記符号化手段が符号化した符号化データとに基づいて、上記符号化データのうちで重複した領域を削除して、上記符号化データを復号化する復号化手段と;
    を有することを特徴とする画像処理装置。
  2. 請求項1において、
    上記符号化ブロックは、複数の画素によって構成されている符号化ブロックであることを特徴とする画像処理装置。
  3. 請求項1において、
    上記符号化ブロック情報は、符号化ブロック識別子と重複領域情報とが含まれている情報であることを特徴とする画像処理装置。
  4. 請求項1において、
    上記符号化データは、JPEG形式に符号化されたデータであることを特徴とする画像処理装置。
  5. 符号化と復号化とを行う画像処理装置の制御方法において、
    画像データを入力する画像データ入力工程と;
    上記画像データ入力工程で入力した画像データ中に存在する画像矩形の端部と、符号化処理における符号化ブロックの端部とが一致するように、符号化ブロックが重複して設定されることも許容して、符号化ブロックを設定する符号化ブロック設定工程と;
    上記符号化ブロック設定工程で設定された符号化ブロックに関する情報を生成する符号化ブロック情報生成工程と;
    上記符号化ブロック設定工程で設定された符号化ブロックを符号化する符号化工程と;
    上記符号化ブロック情報と上記符号化工程で符号化された符号化データとに基づいて、上記符号化データのうちで重複した領域を削除して、上記符号化データを復号化する復号化工程と;
    を有することを特徴とする画像処理装置の制御方法。
  6. 画像データを入力する画像データ入力手段と、上記画像データ入力手段を介して入力した画像データ中に存在する画像矩形の端部と、符号化処理における符号化ブロックの端部とが一致するように、符号化ブロックが重複して設定されることも許容して、符号化ブロックを設定する符号化ブロック設定手段と、上記符号化ブロック設定手段が設定した符号化ブロックに関する情報を生成する符号化ブロック情報生成手段と、上記符号化ブロック設定手段が設定した符号化ブロックを符号化する符号化手段と、上記符号化ブロック情報と上記符号化手段が符号化した符号化データとに基づいて、上記符号化データのうちで重複した領域を削除して、上記符号化データを復号化する復号化手段とを具備する画像処理装置と;
    印刷装置と;
    を有することを特徴とする印刷システム。
JP2006290197A 2006-10-25 2006-10-25 画像処理装置および画像処理装置の制御方法 Pending JP2008109389A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006290197A JP2008109389A (ja) 2006-10-25 2006-10-25 画像処理装置および画像処理装置の制御方法
US11/923,170 US20080100876A1 (en) 2006-10-25 2007-10-24 Image processing apparatus and control method of image processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006290197A JP2008109389A (ja) 2006-10-25 2006-10-25 画像処理装置および画像処理装置の制御方法

Publications (1)

Publication Number Publication Date
JP2008109389A true JP2008109389A (ja) 2008-05-08

Family

ID=39329730

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006290197A Pending JP2008109389A (ja) 2006-10-25 2006-10-25 画像処理装置および画像処理装置の制御方法

Country Status (2)

Country Link
US (1) US20080100876A1 (ja)
JP (1) JP2008109389A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011040970A (ja) * 2009-08-10 2011-02-24 Canon Inc データ処理装置、および、データ処理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02100466A (ja) * 1988-10-06 1990-04-12 Fuji Xerox Co Ltd 画像符号化・復号化装置
JPH11220732A (ja) * 1998-02-03 1999-08-10 Ricoh Co Ltd 画像通信方法、送信器、受信器、画像通信装置および画像処理装置
JP2002369143A (ja) * 2001-06-07 2002-12-20 Olympus Optical Co Ltd 画像記録装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6141446A (en) * 1994-09-21 2000-10-31 Ricoh Company, Ltd. Compression and decompression system with reversible wavelets and lossy reconstruction
US6549666B1 (en) * 1994-09-21 2003-04-15 Ricoh Company, Ltd Reversible embedded wavelet system implementation
US5881176A (en) * 1994-09-21 1999-03-09 Ricoh Corporation Compression and decompression with wavelet style and binary style including quantization by device-dependent parser
KR0171120B1 (ko) * 1995-04-29 1999-03-20 배순훈 특징점 기반 움직임 보상을 이용한 비디오 신호 부호화에서의 움직임 영역 설정방법 및 장치
US5774597A (en) * 1995-09-05 1998-06-30 Ge Medical Systems, Inc. Image compression and decompression using overlapped cosine transforms
US6014466A (en) * 1997-07-10 2000-01-11 Hughes Electronics Corporation Object-based video coding of arbitrarily shaped objects using lapped orthogonal transforms (LOTs) defined on rectangular and L-shaped regions
AU717480B2 (en) * 1998-08-01 2000-03-30 Korea Advanced Institute Of Science And Technology Loop-filtering method for image data and apparatus therefor
JP4150112B2 (ja) * 1998-08-24 2008-09-17 ソニー株式会社 画像データ処理方法および画像データ処理装置
US6678423B1 (en) * 2000-03-13 2004-01-13 International Business Machines Corporation Shift and/or merge of transformed data along two axes
US7054367B2 (en) * 2001-12-31 2006-05-30 Emc Corporation Edge detection based on variable-length codes of block coded video
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
JP4213646B2 (ja) * 2003-12-26 2009-01-21 株式会社エヌ・ティ・ティ・ドコモ 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、及び画像復号プログラム。
US8275209B2 (en) * 2008-10-10 2012-09-25 Microsoft Corporation Reduced DC gain mismatch and DC leakage in overlap transform processing

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02100466A (ja) * 1988-10-06 1990-04-12 Fuji Xerox Co Ltd 画像符号化・復号化装置
JPH11220732A (ja) * 1998-02-03 1999-08-10 Ricoh Co Ltd 画像通信方法、送信器、受信器、画像通信装置および画像処理装置
JP2002369143A (ja) * 2001-06-07 2002-12-20 Olympus Optical Co Ltd 画像記録装置

Also Published As

Publication number Publication date
US20080100876A1 (en) 2008-05-01

Similar Documents

Publication Publication Date Title
US8150179B2 (en) Image processing apparatus
JP6508616B2 (ja) 印刷デバイス、プログラム及び方法
JP2007206644A (ja) 画像表示システム,画像表示方法,画像表示プログラム,記録媒体,データ処理装置,画像表示装置
JP2000278685A (ja) 可変長符号化バイナリ・ビットストリームの処理方法
CN101102384A (zh) 多功能打印机和图像处理方法
KR101028655B1 (ko) 화상 형성 장치, 화상 형성 방법, 및 기억 매체
KR20110037856A (ko) 화상 처리 장치 및 그 장치의 제어 방법
JP2008042688A (ja) 画像処理装置およびその制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
JP4405878B2 (ja) 画像処理装置、画像処理方法、ならびにプログラム、記憶媒体
CN107977172B (zh) 信息处理装置
US20040218817A1 (en) Image processing apparatus that decomposites composite images
JP2011040970A (ja) データ処理装置、および、データ処理方法
KR20200022491A (ko) 영상을 인코딩 및 디코딩하기 위한 방법, 인코딩 및 디코딩 장치, 및 해당 컴퓨터 프로그램
JP2006044169A (ja) 印刷装置、及びその制御方法
US7373000B2 (en) Image processing apparatus
JP2008109389A (ja) 画像処理装置および画像処理装置の制御方法
JP2003046789A (ja) 画像符号化装置及び画像復号化装置
JP2003143413A (ja) 画像処理装置およびその方法、媒体、プログラム
US20110228306A1 (en) Image processing device and program
US8139876B2 (en) Image processing apparatus, control method for image processing apparatus, program, and storage medium
JP4259283B2 (ja) 画像処理装置および画像処理システム
JP4262276B2 (ja) 画像処理装置、その制御方法、プログラム、記憶媒体
JP2002051221A (ja) 画像符号化装置、画像復号化装置、システム、及びその方法並びに記憶媒体
JP2004297772A (ja) 画像処理システム、画像形成装置、画像処理方法、プログラム及び記憶媒体
JP2024034228A (ja) 情報処理システム、携帯端末と画像処理装置の制御方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110401

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110531

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110617