JP6451221B2 - Image processing apparatus and image processing method - Google Patents

Image processing apparatus and image processing method Download PDF

Info

Publication number
JP6451221B2
JP6451221B2 JP2014223573A JP2014223573A JP6451221B2 JP 6451221 B2 JP6451221 B2 JP 6451221B2 JP 2014223573 A JP2014223573 A JP 2014223573A JP 2014223573 A JP2014223573 A JP 2014223573A JP 6451221 B2 JP6451221 B2 JP 6451221B2
Authority
JP
Japan
Prior art keywords
pixel
prediction
target
value
pixels
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.)
Active
Application number
JP2014223573A
Other languages
Japanese (ja)
Other versions
JP2016092552A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2014223573A priority Critical patent/JP6451221B2/en
Publication of JP2016092552A publication Critical patent/JP2016092552A/en
Application granted granted Critical
Publication of JP6451221B2 publication Critical patent/JP6451221B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、画像処理装置及び画像処理方法に関する。   The present invention relates to an image processing apparatus and an image processing method.

プリンタ装置等の画像形成装置では、入力された画像データを一時的にメモリに記憶し、このメモリに記憶された画像データを所定のタイミングで読み出して、印刷することが行われている。この場合、画像データをそのままメモリに格納しようとすると、大容量のメモリが必要になり装置のコストが嵩んでしまう。そのため、一般的には、入力された画像データを圧縮してメモリに格納することが行われている。   In an image forming apparatus such as a printer, input image data is temporarily stored in a memory, and the image data stored in the memory is read at a predetermined timing and printed. In this case, if the image data is stored in the memory as it is, a large-capacity memory is required and the cost of the apparatus increases. Therefore, generally, input image data is compressed and stored in a memory.

また、上記した画像形成装置では、予測符号化を用いた圧縮方式が一般的に用いられる。予測符号化は、画像において、隣接する画素同士の相関が高いという性質を利用し、符号化済みの画素の画素値から符号化対象である注目画素の画素値を予測し、予測値と注目画素の画素値との差分を、エントロピー符号化により符号化する。   In the image forming apparatus described above, a compression method using predictive coding is generally used. Predictive coding uses the property that the correlation between adjacent pixels is high in an image, predicts the pixel value of a target pixel to be encoded from the pixel values of the encoded pixels, and predicts the predicted value and the target pixel. The difference from the pixel value is encoded by entropy encoding.

この予測符号化に従来から用いられる方法として、平面予測方式やLOCO−I(LOw COmplexity LOssless COmpression for Images)方式等が知られている。平面予測方式は、JPEG(Joint Photographic Experts Group)の可逆符号化モードに採用されている。また、LOCO−I方式は、国際標準化された圧縮符号化方式であるJPEG−LS(Joint Photographic Experts Group-LS)に採用されている。例えば、特許文献1には、LOCO−I方式を用いて画像データの圧縮を行う技術が開示されている。   As a method conventionally used for this predictive coding, a plane prediction method, a LOCO-I (LOw COmplexity Lossless Compression for Images) method, and the like are known. The plane prediction method is adopted in a lossless encoding mode of JPEG (Joint Photographic Experts Group). The LOCO-I system is adopted in JPEG-LS (Joint Photographic Experts Group-LS), which is an international standardized compression encoding system. For example, Patent Document 1 discloses a technique for compressing image data using the LOCO-I method.

しかしながら、上記した平面予測方式やLOCO−I方式等の予測符号化技術は、予測符号化の処理手順や、復号の処理手順は明らかにされているものの、集積回路への実装方法については明らかにされていない。そのため、上記の手法を集積回路に単純に実装した場合には、画像の符号化や復号に係る処理を効率的に行うことができない可能性があった。   However, the predictive coding techniques such as the above-described plane prediction method and LOCO-I method have been clarified as to the method of mounting on an integrated circuit, although the processing procedure of predictive coding and the processing procedure of decoding have been clarified. It has not been. Therefore, when the above method is simply implemented in an integrated circuit, there is a possibility that processing relating to image encoding and decoding cannot be performed efficiently.

本発明は、上記に鑑みてなされたものであって、画像の符号化及び復号に係る処理を効率的に行うことが可能な画像処理装置及び画像処理方法を提供することを目的とする。   The present invention has been made in view of the above, and an object of the present invention is to provide an image processing apparatus and an image processing method capable of efficiently performing processing related to image encoding and decoding.

上述した課題を解決し、目的を達成するために、本発明は、少なくとも2ライン分以上の画素値を記憶可能な記憶手段と、前記記憶手段から、処理対象のライン上に配列された複数の注目画素の画素値と、当該注目画素周辺の周辺画素の画素値とを読み出す読出手段と、前記注目画素の各々を処理対象とし、前記読出手段が読み出した当該注目画素周辺の周辺画素の画素値を用いて、当該注目画素の画素値をそれぞれ予測する複数の予測手段と、前記注目画素の各々を処理対象とし、前記読出手段が読み出した当該注目画素の画素値と当該注目画素について前記予測手段が予測した予測値との差分から予測誤差値をそれぞれ算出する複数の第1算出手段と、前記第1算出手段で算出された前記予測誤差値の各々を圧縮する圧縮手段と、前記圧縮手段で圧縮された前記予測誤差値の各々を復号する復号手段と、前記注目画素の各々を処理対象とし、当該注目画素について前記予測手段が予測した予測値と前記復号手段が復号した予測誤差値とを加算することで、当該注目画素の画素値をそれぞれ復号する複数の第2算出手段と、を備え、前記第2算出手段は、復号した注目画素の画素値を、当該注目画素を前記周辺画素とする前記予測手段に入力するIn order to solve the above-described problems and achieve the object, the present invention includes a storage unit capable of storing pixel values of at least two lines or more, and a plurality of arrays arranged on a processing target line from the storage unit. Reading means for reading out the pixel value of the target pixel and the pixel values of the peripheral pixels around the target pixel, and pixel values of the peripheral pixels around the target pixel read out by the reading means, each of the target pixels being processed A plurality of prediction means for predicting the pixel value of the pixel of interest , and the prediction means for the pixel value of the pixel of interest and the pixel of interest read by the reading means, each of the pixels of interest being processed. A plurality of first calculation means for calculating a prediction error value from a difference from the prediction value predicted by the first calculation means, a compression means for compressing each of the prediction error values calculated by the first calculation means, and the pressure A decoding means for decoding each of the prediction error values compressed by the means; a prediction value predicted by the prediction means for the target pixel and a prediction error value decoded by the decoding means for each target pixel; And a plurality of second calculation means for decoding the pixel value of the target pixel, respectively, and the second calculation means determines the pixel value of the decoded target pixel as the peripheral value of the target pixel. It inputs into the said prediction means used as a pixel .

本発明によれば、画像の符号化及び復号に係る処理を効率的に行うことができるという効果を奏する。   According to the present invention, it is possible to efficiently perform processing related to image encoding and decoding.

図1は、実施形態に係るカラープリンタの構成例を示す図である。FIG. 1 is a diagram illustrating a configuration example of a color printer according to an embodiment. 図2は、カラープリンタの電装・制御装置の構成例を示すブロック図である。FIG. 2 is a block diagram illustrating a configuration example of the electrical / control device of the color printer. 図3は、メインメモリのフォーマットの一例を示す図である。FIG. 3 is a diagram showing an example of the format of the main memory. 図4は、カラープリンタにおける画像処理の一例を概略的に示すフローチャートである。FIG. 4 is a flowchart schematically showing an example of image processing in the color printer. 図5は、符号化部の構成例を示す図である。FIG. 5 is a diagram illustrating a configuration example of the encoding unit. 図6は、第1バンドデータ格納領域からの画像バンドデータの読み出し順を説明するための図である。FIG. 6 is a diagram for explaining the reading order of the image band data from the first band data storage area. 図7は、予測処理で用いる画素を説明するための図である。FIG. 7 is a diagram for explaining pixels used in the prediction process. 図8は、LOCO−I方式による予測処理の例を示すフローチャートである。FIG. 8 is a flowchart illustrating an example of prediction processing by the LOCO-I method. 図9は、平面予測方式による予測処理の例を示すフローチャートである。FIG. 9 is a flowchart illustrating an example of a prediction process using the planar prediction method. 図10は、復号部の構成例を示す図である。FIG. 10 is a diagram illustrating a configuration example of the decoding unit. 図11は、予測符号化処理部の回路構成を示す図である。FIG. 11 is a diagram illustrating a circuit configuration of the predictive coding processing unit. 図12は、予測符号化処理部の動作を説明するためのタイミングチャートである。FIG. 12 is a timing chart for explaining the operation of the predictive coding processing unit. 図13は、予測復号処理部の回路構成を示す図である。FIG. 13 is a diagram illustrating a circuit configuration of the predictive decoding processing unit. 図14は、予測復号処理部の動作を説明するためのタイミングチャートである。FIG. 14 is a timing chart for explaining the operation of the predictive decoding processing unit.

以下に添付図面を参照して、この発明に係る画像処理装置及び画像処理方法の実施形態を詳細に説明する。図1は、本実施形態に係るカラープリンタの構成例を示す図である。なお、本実施形態では、本発明に係る画像処理装置及び画像処理方法をカラープリンタである画像形成装置に適用した例について説明するが、画像に画像処理を施すものであれば、これに限定するものではない。例えば、本発明は、複写機、ファクシミリ、複合機等の画像処理装置にも適用することができる。   Embodiments of an image processing apparatus and an image processing method according to the present invention will be described below in detail with reference to the accompanying drawings. FIG. 1 is a diagram illustrating a configuration example of a color printer according to the present embodiment. In this embodiment, an example in which the image processing apparatus and the image processing method according to the present invention are applied to an image forming apparatus that is a color printer will be described. However, the present invention is limited to this as long as image processing is performed on an image. It is not a thing. For example, the present invention can be applied to an image processing apparatus such as a copying machine, a facsimile machine, and a multifunction machine.

図1のカラープリンタ100は、4色(Y、M、C、K)の画像をそれぞれ独立の作像系1Y、1M、1C、1Kで形成し、この4色の画像を合成する4ドラムタンデムエンジンタイプの画像形成装置である。各作像系1Y、1M、1C、1Kは、像担持体としての感光体、例えば小径のOPC(有機感光体)ドラム2Y、2M、2C、2Kを有する。また、各作像系1Y、1M、1C、1Kは、OPCドラム2Y、2M、2C、2Kの周辺に、帯電ローラ3Y、3M、3C、3K、現像装置4Y、4M、4C、4K、クリーニング装置5Y、5M、5C、5K、除電装置6Y、6M、6C、6K等を有する。帯電ローラ3Y、3M、3C、3Kは、OPCドラム2Y、2M、2C、2Kのそれぞれを帯電させる帯電手段として機能する。現像装置4Y、4M、4C、4Kは、OPCドラム2Y、2M、2C、2K上の静電潜像をそれぞれ現像剤で現像してY、M、C、K各色のトナー像とする。   The color printer 100 in FIG. 1 forms four-color (Y, M, C, K) images with independent image forming systems 1Y, 1M, 1C, and 1K, and synthesizes these four-color images. This is an engine type image forming apparatus. Each of the image forming systems 1Y, 1M, 1C, and 1K includes a photoconductor as an image carrier, for example, a small-diameter OPC (organic photoconductor) drum 2Y, 2M, 2C, and 2K. The image forming systems 1Y, 1M, 1C, and 1K are provided around the OPC drums 2Y, 2M, 2C, and 2K, charging rollers 3Y, 3M, 3C, and 3K, developing devices 4Y, 4M, 4C, and 4K, and cleaning devices. 5Y, 5M, 5C, 5K, static eliminators 6Y, 6M, 6C, 6K, and the like. The charging rollers 3Y, 3M, 3C, and 3K function as a charging unit that charges each of the OPC drums 2Y, 2M, 2C, and 2K. The developing devices 4Y, 4M, 4C, and 4K develop the electrostatic latent images on the OPC drums 2Y, 2M, 2C, and 2K with a developer, respectively, to form toner images of Y, M, C, and K colors.

各現像装置4Y、4M、4C、4Kの脇には、Yトナー、Mトナー、Cトナー、Kトナーをそれぞれ現像装置4Y、4M、4C、4Kへ補給するトナーボトルユニット7Y、7M、7C、7Kが配置されている。また、各作像系1Y、1M、1C、1Kには、各々独立した光書き込み装置8Y、8M、8C、8Kが配置される。光書き込み装置8Y、8M、8C、8Kは、レーザ光源としてのレーザダイオード(LD)光源9Y、9M、9C、9Kや、コリメートレンズ10Y、10M、10C、10K、fθレンズ11Y、11M、11C、11K、といった光学部品を有する。また、光書き込み装置8Y、8M、8C、8Kは、偏光走査手段としてのポリゴンミラー12Y、12M、12C、12K、折り返しミラー13Y、13M、13C、13K、14Y、14M、14C、14K等を有する。   Beside each developing device 4Y, 4M, 4C, 4K, toner bottle units 7Y, 7M, 7C, 7K for supplying Y toner, M toner, C toner, K toner to the developing devices 4Y, 4M, 4C, 4K, respectively. Is arranged. In addition, independent optical writing devices 8Y, 8M, 8C, and 8K are disposed in the image forming systems 1Y, 1M, 1C, and 1K, respectively. The optical writing devices 8Y, 8M, 8C, and 8K are laser diode (LD) light sources 9Y, 9M, 9C, and 9K as laser light sources, collimating lenses 10Y, 10M, 10C, and 10K, and fθ lenses 11Y, 11M, 11C, and 11K. , And other optical components. The optical writing devices 8Y, 8M, 8C, and 8K include polygon mirrors 12Y, 12M, 12C, and 12K as polarization scanning units, folding mirrors 13Y, 13M, 13C, 13K, 14Y, 14M, 14C, and 14K.

各作像系1Y、1M、1C、1Kは垂直に配列され、その右側には転写ベルトユニット15がOPCドラム2Y、2M、2C、2Kに接する形で配置される。転写ベルトユニット15は、転写ベルト16がローラ17〜20に張架されて図示しない駆動源により回転駆動される。装置下側には転写材としての転写紙が収納された給紙トレイ21が配置され、装置上部に定着装置22、排紙ローラ23及び排紙トレイ24が配設される。   The image forming systems 1Y, 1M, 1C, and 1K are arranged vertically, and the transfer belt unit 15 is arranged on the right side so as to be in contact with the OPC drums 2Y, 2M, 2C, and 2K. The transfer belt unit 15 is rotationally driven by a drive source (not shown) with the transfer belt 16 stretched around rollers 17 to 20. A paper feed tray 21 storing transfer paper as a transfer material is disposed on the lower side of the apparatus, and a fixing device 22, a paper discharge roller 23, and a paper discharge tray 24 are disposed at the top of the apparatus.

作像時には、各作像系1Y、1M、1C、1Kにおいて、それぞれ、OPCドラム2Y、2M、2C、2Kが図示しない駆動源により回転駆動され、帯電ローラ3Y、3M、3C、3KによりOPCドラム2Y、2M、2C、2Kが一様に帯電される。そして、光書き込み装置8Y、8M、8C、8Kが、各色の画像データに基づきOPCドラム2Y、2M、2C、2Kに光書込みを行うことによって、OPCドラム2Y、2M、2C、2K上に静電潜像が形成される。   At the time of image formation, in each image forming system 1Y, 1M, 1C, 1K, the OPC drums 2Y, 2M, 2C, 2K are rotationally driven by a driving source (not shown), and the OPC drums by the charging rollers 3Y, 3M, 3C, 3K. 2Y, 2M, 2C and 2K are uniformly charged. Then, the optical writing devices 8Y, 8M, 8C, and 8K perform optical writing on the OPC drums 2Y, 2M, 2C, and 2K on the basis of the image data of the respective colors, thereby electrostatically forming on the OPC drums 2Y, 2M, 2C, and 2K. A latent image is formed.

このOPCドラム2Y、2M、2C、2K上の静電潜像はそれぞれ現像装置4Y、4M、4C、4Kにより現像されてY、M、C、K各色のトナー像となる。一方、給紙トレイ21から給紙ローラ25により転写紙が水平方向に給紙されて搬送系により作像系1Y、1M、1C、1K方向へ垂直に搬送された後、転写ベルト16に静電的に吸着保持されて転写ベルト16により搬送される。そして、図示しない転写バイアス印加手段により転写バイアスが印加されてOPCドラム2Y、2M、2C、2K上のY、M、C、K各色のトナー像が順次に重ねて転写されることで、転写紙上にフルカラー画像が形成される。フルカラー画像が形成された転写紙は、定着装置22によりフルカラー画像が定着されて排紙ローラ23により排紙トレイ24へ排出される。   The electrostatic latent images on the OPC drums 2Y, 2M, 2C, and 2K are developed by developing devices 4Y, 4M, 4C, and 4K, respectively, and become toner images of Y, M, C, and K colors. On the other hand, the transfer paper is fed in the horizontal direction from the paper feed tray 21 by the paper feed roller 25 and conveyed vertically in the image forming systems 1Y, 1M, 1C, and 1K by the transport system, and then electrostatically applied to the transfer belt 16. Is attracted and held and conveyed by the transfer belt 16. Then, a transfer bias is applied by a transfer bias applying means (not shown), and toner images of each color of Y, M, C, and K on the OPC drums 2Y, 2M, 2C, and 2K are sequentially superimposed and transferred onto the transfer paper. A full-color image is formed at the same time. The transfer sheet on which the full-color image is formed is fixed on the full-color image by the fixing device 22 and discharged to the discharge tray 24 by the discharge roller 23.

上述した、カラープリンタ100における各部の制御は、電装・制御装置26により行われる。   The control of each part in the color printer 100 described above is performed by the electrical / control device 26.

図2は、カラープリンタ100の電装・制御装置26の構成例を示すブロック図である。図2の例では、電装・制御装置26は、CPU(Central Processing Unit)200、ASIC(Application Specific Integrated Circuit)230及びメインメモリ210を備える。ASIC230は、CPU I/F201、メインメモリアービタ(ARB)202、メインメモリコントローラ203、符号化部204、復号部205、階調処理部206、エンジンコントローラ207及び通信コントローラ208を含む。   FIG. 2 is a block diagram illustrating a configuration example of the electrical / control device 26 of the color printer 100. In the example of FIG. 2, the electrical / control device 26 includes a CPU (Central Processing Unit) 200, an ASIC (Application Specific Integrated Circuit) 230, and a main memory 210. The ASIC 230 includes a CPU I / F 201, a main memory arbiter (ARB) 202, a main memory controller 203, an encoding unit 204, a decoding unit 205, a gradation processing unit 206, an engine controller 207, and a communication controller 208.

CPU200は、メインメモリ210に格納されるプログラムに従い、このカラープリンタ100の全体の動作を制御する。CPU200は、CPU I/F201を介してメインメモリアービタ202に接続される。メインメモリアービタ202は、CPU200、符号化部204、復号部205及び通信コントローラ208の、メインメモリ210に対するアクセスを調停する。   The CPU 200 controls the overall operation of the color printer 100 according to a program stored in the main memory 210. The CPU 200 is connected to the main memory arbiter 202 via the CPU I / F 201. The main memory arbiter 202 arbitrates access to the main memory 210 by the CPU 200, the encoding unit 204, the decoding unit 205, and the communication controller 208.

メインメモリ210は、メインメモリコントローラ203を介してメインメモリアービタ202に接続される。メインメモリコントローラ203は、メインメモリ210に対するアクセスの制御を行う。メインメモリ210は、上述した、CPU200が動作するためのプログラムや、CPU200から出力される描画コマンドが格納される。メインメモリ210は、さらに、バンドデータや、ページの圧縮データ等の各種データを格納する。   The main memory 210 is connected to the main memory arbiter 202 via the main memory controller 203. The main memory controller 203 controls access to the main memory 210. The main memory 210 stores the above-described program for operating the CPU 200 and drawing commands output from the CPU 200. The main memory 210 further stores various data such as band data and page compression data.

符号化部204は、メインメモリ210に格納される画像バンドデータを符号化する。符号化された画像バンドデータ(符号化バンドデータ)は、メインメモリアービタ202及びメインメモリコントローラ203を介してメインメモリ210に供給され、後述するページ符号格納領域303に書き込まれる。復号部205は、後述するプリンタエンジン211に同期して、符号化部204で符号化されメインメモリ210に書き込まれた符号化バンドデータをメインメモリ210から読み出して復号する。復号された画像バンドデータは、階調処理部206に供給される。階調処理部206は、復号部205から供給された画像バンドデータに対して階調処理を施してエンジンコントローラ207に転送する。   The encoding unit 204 encodes image band data stored in the main memory 210. The encoded image band data (encoded band data) is supplied to the main memory 210 via the main memory arbiter 202 and the main memory controller 203 and is written in a page code storage area 303 described later. The decoding unit 205 reads out the encoded band data encoded by the encoding unit 204 and written in the main memory 210 from the main memory 210 in synchronization with a printer engine 211 described later. The decoded image band data is supplied to the gradation processing unit 206. The gradation processing unit 206 performs gradation processing on the image band data supplied from the decoding unit 205 and transfers the image band data to the engine controller 207.

エンジンコントローラ207は、プリンタエンジン211を制御する。図2では、プリンタエンジン211としてC版を記載し、M版、Y版、K版については煩雑さを避けるために省略している。   The engine controller 207 controls the printer engine 211. In FIG. 2, the C version is shown as the printer engine 211, and the M, Y, and K versions are omitted to avoid complication.

通信コントローラ208は、ネットワーク221を介しての通信を制御する。例えば、コンピュータ220から出力されたPDL(Page Description Language)データは、ネットワーク221を介して通信コントローラ208により受信される。通信コントローラ208は、受信したPDLデータを、メインメモリアービタ202及びメインメモリコントローラ203を介してメインメモリ210に転送する。   The communication controller 208 controls communication via the network 221. For example, PDL (Page Description Language) data output from the computer 220 is received by the communication controller 208 via the network 221. The communication controller 208 transfers the received PDL data to the main memory 210 via the main memory arbiter 202 and the main memory controller 203.

なお、ネットワーク221は、LAN(Local Area Network)等の所定の範囲内で通信を行うものでもよいし、インターネット等より広範囲に通信可能なものでもよい。また、ネットワーク221は、有線通信に限らず無線通信を用いたものでもよい。また、ネットワーク221は、USB(Universal Serial Bus)やIEEE(Institute of Electrical and Electronics Engineers)1394といったシリアル通信を行うものでもよい。   The network 221 may perform communication within a predetermined range such as a LAN (Local Area Network), or may be capable of communicating over a wider range than the Internet. The network 221 is not limited to wired communication, and may be wireless communication. Further, the network 221 may perform serial communication such as USB (Universal Serial Bus) or IEEE (Institute of Electrical and Electronics Engineers) 1394.

図3は、メインメモリ210のフォーマットの一例を示す図である。プログラム格納領域300は、CPU200が動作するためのプログラムが格納される。PDLデータ格納領域301は、例えばコンピュータ220から供給されたPDLデータを格納する。第1バンドデータ格納領域302には、圧縮符号化の対象となる画像バンドデータが格納される。ページ符号格納領域303には、画像バンドデータが圧縮符号化された符号データが格納される。ページ符号格納領域303は、複数ページ分の符号データを記憶可能とされている。第2バンドデータ格納領域304は、圧縮符号が復号化された画像バンドデータが格納される。   FIG. 3 is a diagram illustrating an example of the format of the main memory 210. The program storage area 300 stores a program for the CPU 200 to operate. The PDL data storage area 301 stores PDL data supplied from the computer 220, for example. The first band data storage area 302 stores image band data to be compressed and encoded. The page code storage area 303 stores code data obtained by compressing and encoding image band data. The page code storage area 303 can store code data for a plurality of pages. The second band data storage area 304 stores image band data obtained by decoding the compression code.

本実施形態において、第1バンドデータ格納領域302及び第2バンドデータ格納領域304には、A(属性)と、R、G、Bの各色成分の色値とを保持するARGBの画像バンドデータが格納される。本実施形態において、ARGBの画像バンドデータは、属性と各色成分の画素とがそれぞれ8ビットのビット深度を有する32ビットの多値ピクセル画像データ(多値画像)である。なお、第1バンドデータ格納領域302と第2バンドデータ格納領域304とは、同一の格納領域であってもよい。   In the present embodiment, the first band data storage area 302 and the second band data storage area 304 include ARGB image band data holding A (attribute) and color values of R, G, and B color components. Stored. In the present embodiment, the ARGB image band data is 32-bit multi-value pixel image data (multi-value image) in which each attribute and each color component pixel has a bit depth of 8 bits. Note that the first band data storage area 302 and the second band data storage area 304 may be the same storage area.

図4は、カラープリンタ100における画像処理の一例を概略的に示すフローチャートである。この図4のフローチャートを用い、上述した図2を参照しながら、カラープリンタ100の動作について概略的に説明する。   FIG. 4 is a flowchart schematically showing an example of image processing in the color printer 100. The operation of the color printer 100 will be schematically described with reference to the above-described FIG. 2 using the flowchart of FIG.

例えばコンピュータ220で生成されたPDLデータがネットワーク221を介して通信コントローラ208に受信され、メインメモリ210のPDLデータ格納領域301に記憶される(ステップS1)。CPU200は、メインメモリ210のPDLデータ格納領域301からPDLデータを読み出し、PDLを解析することで(ステップS2)、A(属性)と、RGBの各色成分の色値とを保持するARGBのバンド画像を描画する(ステップS3)。描画されたバンド画像による画像バンドデータは、メインメモリ210の第1バンドデータ格納領域302に格納される(ステップS4)。この画像バンドデータは、上述したように、各画素が32ビットのビット深度を有する多値画像である。   For example, PDL data generated by the computer 220 is received by the communication controller 208 via the network 221 and stored in the PDL data storage area 301 of the main memory 210 (step S1). The CPU 200 reads the PDL data from the PDL data storage area 301 of the main memory 210, analyzes the PDL (step S2), and holds the A (attribute) and the ARGB band image that holds the color values of the respective RGB color components. Is drawn (step S3). The image band data based on the drawn band image is stored in the first band data storage area 302 of the main memory 210 (step S4). As described above, this image band data is a multi-value image in which each pixel has a bit depth of 32 bits.

符号化部204は、第1バンドデータ格納領域302から画像バンドデータを読み出して、後述する予測符号化方法に従い圧縮符号化する(ステップS5)。圧縮符号化された符号データは、メインメモリ210のページ符号格納領域303に格納される(ステップS6)。   The encoding unit 204 reads the image band data from the first band data storage area 302 and performs compression encoding according to a predictive encoding method described later (step S5). The compression-encoded code data is stored in the page code storage area 303 of the main memory 210 (step S6).

復号部205は、ページ符号格納領域303から圧縮符号化された符号データを読み出して復号する(ステップS7)。復号された画像バンドデータは、メインメモリ210の第2バンドデータ格納領域304に書き出され、階調処理部206に供給される。階調処理部206は、復号部205から供給された画像バンドデータに対して、CMYKへの変換や各種の階調処理を施す(ステップS8)。階調処理された画像バンドデータは、例えばエンジンコントローラ207を介してプリンタエンジン211に供給される(ステップS9)。プリンタエンジン211は、供給された画像バンドデータに基づきプリント出力を行う。   The decoding unit 205 reads and decodes the compression encoded data from the page code storage area 303 (step S7). The decoded image band data is written into the second band data storage area 304 of the main memory 210 and supplied to the gradation processing unit 206. The gradation processing unit 206 performs conversion to CMYK and various gradation processes on the image band data supplied from the decoding unit 205 (step S8). The image band data subjected to gradation processing is supplied to the printer engine 211 via the engine controller 207, for example (step S9). The printer engine 211 performs print output based on the supplied image band data.

以下、符号化部204及び復号部205の詳細について説明する。   Details of the encoding unit 204 and the decoding unit 205 will be described below.

図5は、符号化部204の構成例を示す図である。符号化部204において、画像読込処理部400は、メインメモリ210の第1バンドデータ格納領域302から、画像バンドデータをライン毎に読み込む。このとき、画像読込処理部400は、図6に例示されるように、第1バンドデータ格納領域302からスキャンライン毎に順次、画素単位で画像バンドデータを読み込む。ここで、図6は、第1バンドデータ格納領域302からの画像バンドデータの読み出し順(スキャン順序)を説明するための図である。   FIG. 5 is a diagram illustrating a configuration example of the encoding unit 204. In the encoding unit 204, the image reading processing unit 400 reads image band data from the first band data storage area 302 of the main memory 210 for each line. At this time, as illustrated in FIG. 6, the image reading processing unit 400 sequentially reads image band data in units of pixels from the first band data storage area 302 for each scan line. Here, FIG. 6 is a diagram for explaining the reading order (scanning order) of the image band data from the first band data storage area 302.

予測符号化処理部401は、本実施形態の読出手段として機能する。画像読込処理部400により読み出された画像バンドデータを、ラインメモリ402に格納する。ラインメモリ402は、本実施形態の記憶手段に対応し、少なくとも2ライン分の画像バンドデータ(画素値)を記憶可能な記憶容量を有する。   The predictive coding processing unit 401 functions as a reading unit of the present embodiment. The image band data read by the image reading processing unit 400 is stored in the line memory 402. The line memory 402 corresponds to the storage means of this embodiment, and has a storage capacity capable of storing image band data (pixel values) for at least two lines.

ラインメモリ402は、予測符号化処理部401の制御の下、今回供給されたデータを格納すると共に、直前に格納した1ライン分のデータを保持する。例えば、ラインメモリ402は、それぞれ1ライン分の画素を記憶可能な第1及び第2の領域を有する。そして、ラインメモリ402は、1ライン分の画素データの符号化が終了すると、この符号化が終了した領域の画素データを保持し、他方の領域に次のラインの画素データを書き込むように制御される。   The line memory 402 stores the data supplied this time under the control of the predictive coding processing unit 401 and holds the data for one line stored immediately before. For example, the line memory 402 has first and second areas each capable of storing pixels for one line. When the encoding of the pixel data for one line is completed, the line memory 402 is controlled to hold the pixel data of the area where the encoding is completed and write the pixel data of the next line to the other area. The

また、予測符号化処理部401は、画像バンドデータをラインメモリ402に蓄積しながら、処理の対象となる画素(注目画素)周辺の周辺画素を用いて予測処理を行う。   In addition, the predictive coding processing unit 401 performs prediction processing using peripheral pixels around a pixel to be processed (target pixel) while accumulating image band data in the line memory 402.

図7は、予測処理で用いる画素を説明するための図である。予測符号化処理部401は、ラインメモリ402から、注目画素の画素値と、当該注目画素周辺の周辺画素a、b、cの画素値を読み出す。ここでラインメモリ402から読み出される周辺画素a、b、cは、既に圧縮符号化が完了した画素である。具体的に、周辺画素aは、注目画素と同一ライン(現ライン)の隣接画素である。また、周辺画素b、cは、現ライン上での注目画素及び周辺画素aの画素位置(列)に対応する前ラインの画素である。   FIG. 7 is a diagram for explaining pixels used in the prediction process. The predictive coding processing unit 401 reads out the pixel value of the target pixel and the pixel values of peripheral pixels a, b, and c around the target pixel from the line memory 402. Here, the peripheral pixels a, b, and c read from the line memory 402 are pixels that have already been compressed and encoded. Specifically, the peripheral pixel a is an adjacent pixel on the same line (current line) as the target pixel. The peripheral pixels b and c are pixels on the previous line corresponding to the pixel position (column) of the target pixel and the peripheral pixel a on the current line.

予測符号化処理部401は、周辺画素a、b、cの画素値を用いて、注目画素の画素値を予測する予測処理を実行し、予測値を算出する。また、予測符号化処理部401は、注目画素の実際の画素値と算出した予測値とを比較し、その差分値を予測誤差値として算出する。   The predictive coding processing unit 401 performs a prediction process of predicting the pixel value of the target pixel using the pixel values of the surrounding pixels a, b, and c, and calculates a predicted value. Further, the predictive coding processing unit 401 compares the actual pixel value of the target pixel with the calculated predicted value, and calculates the difference value as a prediction error value.

ここで、予測符号化処理部401が実行する予測処理の方式について説明する。本実施形態の予測符号化処理部401は、予測方式として、LOCO−I方式又は平面予測方式を用いる。   Here, a prediction processing method executed by the prediction encoding processing unit 401 will be described. The predictive coding processing unit 401 according to the present embodiment uses a LOCO-I method or a planar prediction method as a prediction method.

以下では、図7に示したように、注目画素の左に隣接する画素を周辺画素a、注目画素の上に隣接する画素を周辺画素b、注目画素の左上に接する画素を周辺画素cとして説明する。また、画素の符号化を画素単位では画像の左から右(水平方向)へ向けて行い、ライン単位では画像の上から下(垂直方向)に向けて行うとして説明する。   Hereinafter, as illustrated in FIG. 7, the pixel adjacent to the left of the target pixel is described as the peripheral pixel a, the pixel adjacent above the target pixel is the peripheral pixel b, and the pixel in contact with the upper left of the target pixel is the peripheral pixel c To do. Further, description will be made assuming that pixel encoding is performed from the left to the right (horizontal direction) of the image in pixel units, and is performed from the top to the bottom (vertical direction) of the image in line units.

まず、LOCO−I方式について説明する。LOCO−I方式は、周辺画素cの画素値と周辺画素a及び周辺画素bの画素値とを比較した結果に応じて、予測値の算出方法を切り替える。図8は、LOCO−I方式による予測処理の例を示すフローチャートである。まず、予測符号化処理部401は、周辺画素cの画素値が周辺画素aの画素値以上であり、且つ周辺画素cの画素値が周辺画素bの画素値以上であるか否かを判定する(ステップS11)。   First, the LOCO-I system will be described. In the LOCO-I method, the prediction value calculation method is switched according to the result of comparing the pixel value of the peripheral pixel c with the pixel values of the peripheral pixel a and the peripheral pixel b. FIG. 8 is a flowchart illustrating an example of prediction processing by the LOCO-I method. First, the predictive coding processing unit 401 determines whether or not the pixel value of the peripheral pixel c is equal to or greater than the pixel value of the peripheral pixel a and the pixel value of the peripheral pixel c is equal to or greater than the pixel value of the peripheral pixel b. (Step S11).

予測符号化処理部401は、周辺画素cの画素値がステップS11の条件を満たしていると判定した場合(ステップS11;Yes)、ステップS12に移行する。このステップS12において、予測符号化処理部401は、周辺画素aの画素値と周辺画素bの画素値とを比較し、値が小さい方の画素値を予測値とする(ステップS12)。   If the predictive coding processing unit 401 determines that the pixel value of the peripheral pixel c satisfies the condition of step S11 (step S11; Yes), the process proceeds to step S12. In step S12, the predictive coding processing unit 401 compares the pixel value of the peripheral pixel a with the pixel value of the peripheral pixel b, and sets the smaller pixel value as the predicted value (step S12).

また、予測符号化処理部401は、周辺画素cの画素値がステップS11の条件を満たしていないと判定した場合(ステップS11;No)、予測符号化処理部401は、ステップS13に移行する。ステップS13では、予測符号化処理部401は、周辺画素cの画素値が周辺画素aの画素値未満であり、且つ、周辺画素cの画素値が周辺画素bの画素値未満であるか否かを判定する(ステップS13)。   When the predictive coding processing unit 401 determines that the pixel value of the peripheral pixel c does not satisfy the condition of step S11 (step S11; No), the predictive coding processing unit 401 proceeds to step S13. In step S13, the predictive coding processing unit 401 determines whether or not the pixel value of the peripheral pixel c is less than the pixel value of the peripheral pixel a and the pixel value of the peripheral pixel c is less than the pixel value of the peripheral pixel b. Is determined (step S13).

予測符号化処理部401は、周辺画素cの画素値がステップS13の条件を満たしていると判定した場合(ステップS13;Yes)、ステップS14に移行する。このステップS14において、予測符号化処理部401は、周辺画素aの画素値と周辺画素bの画素値とを比較し、値が大きい方の画素値を予測値とする(ステップS14)。   When the predictive coding processing unit 401 determines that the pixel value of the peripheral pixel c satisfies the condition in step S13 (step S13; Yes), the process proceeds to step S14. In step S14, the predictive coding processing unit 401 compares the pixel value of the peripheral pixel a and the pixel value of the peripheral pixel b, and sets the pixel value having the larger value as the predicted value (step S14).

また、予測符号化処理部401は、周辺画素cの画素値がステップS13の条件を満たしていないと判定した場合(ステップS13;No)、ステップS15に移行する。これは、換言すれば、周辺画素a及び周辺画素bのうち何れか一方の画素値が周辺画素cの画素値以上であり、他方の画素値が周辺画素cの画素値未満であることを意味する。ステップS15において、予測符号化処理部401は、周辺画素a、b及びcの画素値について次式(1)の演算を行い、得られた値pを予測値とする(ステップS15)。
p=a+b−c …(1)
Further, when the predictive coding processing unit 401 determines that the pixel value of the peripheral pixel c does not satisfy the condition of Step S13 (Step S13; No), the process proceeds to Step S15. In other words, this means that one of the peripheral pixel a and the peripheral pixel b has a pixel value greater than or equal to the pixel value of the peripheral pixel c, and the other pixel value is less than the pixel value of the peripheral pixel c. To do. In step S15, the predictive coding processing unit 401 calculates the following expression (1) for the pixel values of the peripheral pixels a, b, and c, and sets the obtained value p as a predicted value (step S15).
p = a + b−c (1)

次に、平面予測方式について説明する。図9は、平面予測方式による予測処理の例を示すフローチャートである。平面予測方式の場合、予測符号化処理部401は、上記式(1)を用いることで周辺画素a、b、cから値pを算出し、算出した値pを予測値とする(ステップS21)。   Next, the plane prediction method will be described. FIG. 9 is a flowchart illustrating an example of a prediction process using the planar prediction method. In the case of the plane prediction method, the predictive coding processing unit 401 calculates the value p from the surrounding pixels a, b, and c by using the above formula (1), and uses the calculated value p as a predicted value (step S21). .

そして、予測符号化処理部401は、注目画素の画素値と、上記の予測処理で求めた予測値との差分を予測誤差値として算出する。この予測誤差値は、ハフマン符号化処理部403に供給される。   Then, the predictive coding processing unit 401 calculates a difference between the pixel value of the target pixel and the predicted value obtained by the prediction process as a prediction error value. This prediction error value is supplied to the Huffman encoding processing unit 403.

ハフマン符号化処理部403は、本実施形態の圧縮手段として機能する。ハフマン符号化処理部403は、予測符号化処理部401から供給される予測誤差値を、ハフマン符号化フォーマットに従い圧縮符号化する。符号書込処理部404は、ハフマン符号化処理部403で圧縮符号化された予測誤差値の符号データを、メインメモリ210のページ符号格納領域303に格納する。   The Huffman encoding processing unit 403 functions as a compression unit of this embodiment. The Huffman encoding processing unit 403 compresses and encodes the prediction error value supplied from the prediction encoding processing unit 401 according to the Huffman encoding format. The code writing processing unit 404 stores the code data of the prediction error value compressed and encoded by the Huffman coding processing unit 403 in the page code storage area 303 of the main memory 210.

次に、復号部205について説明する。図10は、復号部205の構成例を示す図である。復号部205は、符号化部204で圧縮符号化された画像バンドデータの復号を行う。   Next, the decoding unit 205 will be described. FIG. 10 is a diagram illustrating a configuration example of the decoding unit 205. The decoding unit 205 decodes the image band data compressed and encoded by the encoding unit 204.

具体的に、符号読込処理部500は、メインメモリ210のページ符号格納領域303から、符号データをライン毎に読み込む。ハフマン復号処理部501は、本実施形態の復号手段に対応する。ハフマン復号処理部501は、符号読込処理部500が読み込んだ符号データを、ハフマン復号化フォーマットに従い復号することで予測誤差値を取得する。この予測誤差値は、予測復号処理部502に供給される。   Specifically, the code reading processing unit 500 reads code data from the page code storage area 303 of the main memory 210 for each line. The Huffman decoding processing unit 501 corresponds to the decoding unit of this embodiment. The Huffman decoding processing unit 501 acquires the prediction error value by decoding the code data read by the code reading processing unit 500 according to the Huffman decoding format. This prediction error value is supplied to the prediction decoding processing unit 502.

予測復号処理部502は、本実施形態の読出手段に対応する。予測復号処理部502は、復号化対象の画素(注目画素)周辺の周辺画素を用いて注目画素の画素値を復号し、復号した画素値(画像ラインデータ)をラインメモリ503に順次格納する。ラインメモリ503は、本実施形態の記憶手段に対応し、少なくとも2ライン(現ライン、前ライン)分の画像バンドデータを記憶可能な記憶容量を有する。   The predictive decoding processing unit 502 corresponds to the reading unit of this embodiment. The predictive decoding processing unit 502 decodes the pixel value of the target pixel using peripheral pixels around the pixel to be decoded (target pixel), and sequentially stores the decoded pixel value (image line data) in the line memory 503. The line memory 503 corresponds to the storage unit of this embodiment, and has a storage capacity capable of storing image band data for at least two lines (current line and previous line).

ラインメモリ503は、予測復号処理部502の制御の下、復号されたデータを格納すると共に、直前に格納した1ライン分のデータを保持する。例えば、ラインメモリ503は、それぞれ1ライン分の画素を記憶可能な第1及び第2の領域を有する。そして、ラインメモリ503は、1ライン分の画素データの復号が終了すると、この復号が終了した領域の画素データを保持し、他方の領域に次のラインの画素データを書き込むように制御される。   The line memory 503 stores the decoded data under the control of the predictive decoding processing unit 502 and holds the data for one line stored immediately before. For example, the line memory 503 has first and second areas each capable of storing pixels for one line. When the decoding of the pixel data for one line is completed, the line memory 503 is controlled to hold the pixel data of the area where the decoding is completed and write the pixel data of the next line to the other area.

具体的に、予測復号処理部502は、ラインメモリ503から、図7で説明した注目画素の画素値と、当該注目画素周辺の周辺画素a、b、cの画素値を読み出し、上述した予測処理を用いることで予測値を算出する。ここでラインメモリ503から読み出される周辺画素a、b、cは、既に復号が完了した画素である。   Specifically, the predictive decoding processing unit 502 reads out the pixel value of the target pixel described in FIG. 7 and the pixel values of the peripheral pixels a, b, and c around the target pixel from the line memory 503, and performs the above-described prediction process. Is used to calculate the predicted value. Here, the peripheral pixels a, b, and c read from the line memory 503 are pixels that have already been decoded.

予測復号処理部502は、周辺画素a、b、cから算出した注目画素の予測値と、ハフマン復号処理部501から供給される当該注目画素の予測誤差値とを基に、注目画素の画素値を復号する。具体的に、予測復号処理部502は、注目画素の予測値と、予測誤差値とを加算することで注目画素の画素値を復号(復元)する。   The predictive decoding processing unit 502 calculates the pixel value of the target pixel based on the predicted value of the target pixel calculated from the surrounding pixels a, b, and c and the prediction error value of the target pixel supplied from the Huffman decoding processing unit 501. Is decrypted. Specifically, the prediction decoding processing unit 502 decodes (restores) the pixel value of the target pixel by adding the prediction value of the target pixel and the prediction error value.

また、予測復号処理部502は、復号により生成される1ライン分の注目画素、つまり1ライン分の画像バンドデータを、ラインメモリ503に格納する。ラインメモリ503に格納された画像バンドデータは、次のラインの復号(予測処理)に利用される。   Also, the predictive decoding processing unit 502 stores the target pixel for one line generated by decoding, that is, image band data for one line, in the line memory 503. The image band data stored in the line memory 503 is used for decoding (prediction processing) of the next line.

画像書込処理部504は、予測復号処理部502が復号した画像バンドデータを、第2バンドデータ格納領域304に格納する。   The image writing processing unit 504 stores the image band data decoded by the predictive decoding processing unit 502 in the second band data storage area 304.

ところで、本実施形態の符号化部204(予測符号化処理部401)は、画像の符号化に係る処理を複数の画素(注目画素)について並列で行うことが可能な回路構成を有する。また、本実施形態の復号部205(予測復号処理部502)は、画像の復号に係る処理を複数の画素(注目画素)について並列で行うことが可能な回路構成を有する。以下、予測符号化処理部401及び予測復号処理部502の回路構成について説明する。   By the way, the encoding unit 204 (predictive encoding processing unit 401) of the present embodiment has a circuit configuration capable of performing processing related to image encoding for a plurality of pixels (target pixel) in parallel. In addition, the decoding unit 205 (predictive decoding processing unit 502) of the present embodiment has a circuit configuration that can perform processing related to image decoding in parallel for a plurality of pixels (target pixel). Hereinafter, circuit configurations of the prediction encoding processing unit 401 and the prediction decoding processing unit 502 will be described.

まず、図11を用いて、予測符号化処理部401の回路構成について説明する。ここで、図11は、予測符号化処理部401の回路構成を示す図である。   First, the circuit configuration of the predictive coding processing unit 401 will be described with reference to FIG. Here, FIG. 11 is a diagram illustrating a circuit configuration of the predictive coding processing unit 401.

図11に示すように、予測符号化処理部401は、4つの画像処理回路410a、410b、410c、410dを有する。画像処理回路410a、410b、410c、410dは、現ラインに連続して配列された互いに異なる画素を注目画素とする。以下では、画像処理回路410a、410b、410c、410dの各々を区別しない場合、単に画像処理回路410と表記する。   As shown in FIG. 11, the predictive coding processing unit 401 includes four image processing circuits 410a, 410b, 410c, and 410d. The image processing circuits 410a, 410b, 410c, and 410d use different pixels arranged continuously in the current line as the target pixel. Hereinafter, when the image processing circuits 410a, 410b, 410c, and 410d are not distinguished from each other, they are simply referred to as the image processing circuit 410.

画像処理回路410の各々は、本実施形態の予測手段に対応する予測処理部411と、本実施形態の第1算出手段に対応する予測誤差算出部412との組をそれぞれ有する。予測処理部411及び予測誤差算出部412は、ラインメモリ402に格納された2ライン分(現ライン、前ライン)の画像バンドデータを用いて、予測値及び予測誤差値の算出を行う。   Each of the image processing circuits 410 includes a set of a prediction processing unit 411 corresponding to the prediction unit of the present embodiment and a prediction error calculation unit 412 corresponding to the first calculation unit of the present embodiment. The prediction processing unit 411 and the prediction error calculation unit 412 calculate a prediction value and a prediction error value by using image band data for two lines (current line and previous line) stored in the line memory 402.

画像処理回路410aに着目すると、画像処理回路410aは、現ラインの画素a2を注目画素としている。そのため、予測符号化処理部401は、画像処理回路410aの予測処理部411に対し、画素a2周辺の画素a1、b1、c1の画素値を、図7で説明した周辺画素a、b、cの画素値として入力する。また、予測符号化処理部401は、画像処理回路410aの予測誤差算出部412に対し、画素a2の画素値を注目画素の画素値として入力する。   Focusing on the image processing circuit 410a, the image processing circuit 410a uses the pixel a2 in the current line as the pixel of interest. Therefore, the predictive coding processing unit 401 gives the pixel values of the pixels a1, b1, and c1 around the pixel a2 to the prediction processing unit 411 of the image processing circuit 410a and the pixel values of the peripheral pixels a, b, and c described in FIG. Input as pixel value. Also, the predictive coding processing unit 401 inputs the pixel value of the pixel a2 as the pixel value of the target pixel to the prediction error calculation unit 412 of the image processing circuit 410a.

画像処理回路410aの予測処理部411は、画素a1、b1、c1の画素値について、上述した予測処理を実行することで予測値Pa2を算出する。画像処理回路410aの予測誤差算出部412は、画素a2の画素値から予測値Pa2を減算することで、その差分値となる予測誤差値Ea2を算出する。   The prediction processing unit 411 of the image processing circuit 410a calculates the predicted value Pa2 by executing the above-described prediction processing on the pixel values of the pixels a1, b1, and c1. The prediction error calculation unit 412 of the image processing circuit 410a calculates a prediction error value Ea2 as a difference value by subtracting the prediction value Pa2 from the pixel value of the pixel a2.

また、画像処理回路410bは、現ラインの画素a3を注目画素としている。そのため、予測符号化処理部401は、画像処理回路410bの予測処理部411に対し、画素a3周辺の画素a2、b2、b1の画素値を、図7で説明した周辺画素a、b、cの画素値として入力する。また、予測符号化処理部401は、画像処理回路410bの予測誤差算出部412に対し、画素a3の画素値を注目画素の画素値として入力する。   The image processing circuit 410b uses the pixel a3 on the current line as a target pixel. Therefore, the predictive coding processing unit 401 gives the pixel values of the pixels a2, b2, and b1 around the pixel a3 to the prediction processing unit 411 of the image processing circuit 410b and the pixel values of the peripheral pixels a, b, and c described in FIG. Input as pixel value. Also, the predictive coding processing unit 401 inputs the pixel value of the pixel a3 as the pixel value of the target pixel to the prediction error calculation unit 412 of the image processing circuit 410b.

画像処理回路410bの予測処理部411は、画素a2、b2、b1の画素値について、上述した予測処理を実行することで予測値Pa3を算出する。画像処理回路410bの予測誤差算出部412は、画素a3の画素値から予測値Pa3を減算することで、その差分値となる予測誤差値Ea3を算出する。   The prediction processing unit 411 of the image processing circuit 410b calculates the prediction value Pa3 by executing the above-described prediction processing on the pixel values of the pixels a2, b2, and b1. The prediction error calculation unit 412 of the image processing circuit 410b calculates a prediction error value Ea3 that is a difference value by subtracting the prediction value Pa3 from the pixel value of the pixel a3.

また、予測符号化処理部401は、画像処理回路410a、410bと同様に画像処理回路410c、410dに対しても画素値を入力する。これにより、画像処理回路410c、410dの予測処理部411は、注目画素(画素a4、a5)周辺の周辺画素の画素値から、予測値Pa4、Pa5をそれぞれ算出する。また、画像処理回路410c、410dの予測誤差算出部412は、注目画素(画素a4、a5)の画素値から予測値Pa4、Pa5を減算することで、予測誤差値Ea4、Ea5をそれぞれ算出する。   The predictive coding processing unit 401 also inputs pixel values to the image processing circuits 410c and 410d in the same manner as the image processing circuits 410a and 410b. Thereby, the prediction processing unit 411 of the image processing circuits 410c and 410d calculates the prediction values Pa4 and Pa5 from the pixel values of the peripheral pixels around the target pixel (pixels a4 and a5), respectively. Further, the prediction error calculation unit 412 of the image processing circuits 410c and 410d calculates the prediction error values Ea4 and Ea5 by subtracting the prediction values Pa4 and Pa5 from the pixel value of the target pixel (pixels a4 and a5), respectively.

ところで、現ライン上において隣接する画素を注目画素とする画像処理回路410間では、同一の画素の画素値を用いて予測値及び予測誤差値を算出することになる。例えば、前ライン上での画素b1の画素値は、画像処理回路410aの予測処理部411において周辺画素bの画素値として用いられるとともに、画像処理回路410bの予測処理部411において周辺画素cの画素値として用いられる。また、現ライン上での画素a2の画素値は、画像処理回路410aの予測誤差算出部412において注目画素の画素値として用いられるとともに、画像処理回路410bの予測処理部411において周辺画素aの画素値として用いられる。   By the way, between the image processing circuits 410 that use adjacent pixels on the current line as the target pixel, the prediction value and the prediction error value are calculated using the pixel value of the same pixel. For example, the pixel value of the pixel b1 on the previous line is used as the pixel value of the peripheral pixel b in the prediction processing unit 411 of the image processing circuit 410a, and the pixel of the peripheral pixel c in the prediction processing unit 411 of the image processing circuit 410b. Used as a value. Further, the pixel value of the pixel a2 on the current line is used as the pixel value of the target pixel in the prediction error calculation unit 412 of the image processing circuit 410a, and the pixel of the peripheral pixel a in the prediction processing unit 411 of the image processing circuit 410b. Used as a value.

そこで、本実施形態の予測符号化処理部401は、同一の画素を周辺画素とする予測処理部411の各々に対し、当該画素の画素値を同時に入力する。また、本実施形態の予測符号化処理部401は、同一の画素を周辺画素とする予測処理部411と、当該画素を注目画素とする予測誤差算出部412とに対し、当該画素の画素値を同時に入力する。このように、本実施形態では、予測符号化処理部401の全体が、画像処理回路410を並列に複数段配置した1つの組み合わせ回路として動作する。   Therefore, the predictive coding processing unit 401 according to the present embodiment inputs the pixel value of each pixel simultaneously to each of the prediction processing units 411 having the same pixel as a peripheral pixel. In addition, the predictive coding processing unit 401 of the present embodiment sets the pixel value of the pixel to the prediction processing unit 411 that uses the same pixel as a peripheral pixel and the prediction error calculation unit 412 that uses the pixel as a target pixel. Input simultaneously. Thus, in the present embodiment, the entire predictive coding processing unit 401 operates as one combinational circuit in which a plurality of image processing circuits 410 are arranged in parallel.

図12は、予測符号化処理部401の動作を説明するためのタイミングチャートである。同図において、「clk」は基準クロックを意味する。また、同図では、図11に示した前ラインの画素c1、b1−b4に続いて画素b5−b12が配列されているとする。また、現ラインの画素a1−a5に続いて画素a6−a13が配列され、図11に示した矢印の順に処理が行われるものとする。   FIG. 12 is a timing chart for explaining the operation of the predictive coding processing unit 401. In the figure, “clk” means a reference clock. Also, in the figure, it is assumed that pixels b5-b12 are arranged subsequent to the pixels c1, b1-b4 on the previous line shown in FIG. Further, it is assumed that the pixels a6-a13 are arranged following the pixels a1-a5 on the current line, and the processing is performed in the order of the arrows shown in FIG.

予測符号化処理部401は、基準クロックに同期して、ラインメモリ402に格納された画像バンドデータから画素値を読み出し、画像処理回路410に入力する。画素値の読み出し元となる画素は、予測符号化処理部401が備える画像処理回路410の個数や各画像処理回路410が注目画素とした画素位置に応じて定まる。   The prediction encoding processing unit 401 reads out pixel values from the image band data stored in the line memory 402 in synchronization with the reference clock, and inputs the pixel values to the image processing circuit 410. The pixel from which the pixel value is read is determined according to the number of image processing circuits 410 included in the predictive coding processing unit 401 and the pixel position where each image processing circuit 410 is the target pixel.

ここで、予測符号化処理部401が、画像処理回路410を4つ備え(図11参照)、これらの画像処理回路410が現ラインでの連続する4画素を注目画素とする場合を想定する。この場合、予測符号化処理部401は、今回の処理で符号化の対象となる各注目画素の画素値と、当該注目画素に隣接し且つ直前の処理で符号化された画素(以下、直前画素という)の画素値とを現ラインから読み出し、対応する画像処理回路410に入力する。また、予測符号化処理部401は、各注目画素と直前画素との画素位置に対応する前ライン上の画素から画素値を読み出し、対応する画像処理回路410に入力する。   Here, it is assumed that the predictive coding processing unit 401 includes four image processing circuits 410 (see FIG. 11), and these image processing circuits 410 use four consecutive pixels on the current line as a target pixel. In this case, the predictive coding processing unit 401 uses the pixel value of each target pixel to be encoded in the current process and the pixel adjacent to the target pixel and encoded in the previous process (hereinafter referred to as the previous pixel). Are read from the current line and input to the corresponding image processing circuit 410. Further, the predictive coding processing unit 401 reads out pixel values from pixels on the previous line corresponding to the pixel positions of each pixel of interest and the previous pixel, and inputs the pixel values to the corresponding image processing circuit 410.

例えば、クロックT1において、画素a2−a5を注目画素とした場合、予測符号化処理部401は、前ラインから画素c1、b1−b4の5画素分の画素値を読み出し、現ラインから画素a1−a5の5画素分の画素値を読み出す。また、次のクロックT2において、画素a6−a9を注目画素とした場合、予測符号化処理部401は、前ラインから画素b4−b8の5画素分の画素値を読み出し、現ラインから画素a5−a9の5画素分の画素値を読み出す。また、次のクロックT3において、画素a10−a13を注目画素とした場合、予測符号化処理部401は、前ラインから画素b8−b12の5画素分の画素値を読み出し、現ラインから画素a9−a13の5画素分の画素値を読み出す。なお、直前の処理で前ライン及び現ラインから読み出した最終画素値(例えばクロックT1での画素b4、a5の画素値)を、次のクロック(クロックT2)での処理に用いることで、同一画素の多重読み出しを防ぐ構成としてもよい。   For example, when the pixel a2-a5 is the target pixel in the clock T1, the predictive coding processing unit 401 reads out the pixel values for the five pixels c1 and b1-b4 from the previous line, and the pixel a1- Read pixel values of 5 pixels a5. Also, in the next clock T2, when the pixel a6-a9 is the target pixel, the predictive coding processing unit 401 reads out the pixel values for five pixels b4-b8 from the previous line, and the pixel a5- Read out pixel values of 5 pixels a9. In addition, in the next clock T3, when the pixel a10-a13 is the target pixel, the predictive coding processing unit 401 reads out the pixel values for the five pixels b8-b12 from the previous line and the pixel a9- from the current line. Read out pixel values of 5 pixels of a13. Note that the final pixel values read from the previous line and the current line in the previous process (for example, the pixel values of the pixels b4 and a5 at the clock T1) are used for the process at the next clock (clock T2), so that the same pixel It may be configured to prevent multiple reading.

画像処理回路410の各々が備える予測処理部411は、予測手段として機能する。予測処理部411は、注目画素の各々を処理対象とし、予測符号化処理部401から入力される画素値に基づき上述した予測処理を行うことで、注目画素の予測値をそれぞれ算出する。例えば、予測処理部411は、クロックT1で入力された画素値に基づき、注目画素(画素a2−a5)についての予測値Pa2−Pa5をそれぞれ算出する。また、予測処理部411は、クロックT2で入力された画素値に基づき、注目画素(画素a6−a9)についての予測値Pa6−Pa9をそれぞれ算出する。また、予測処理部411は、クロックT3で入力された画素値に基づき、注目画素(画素a10−a13)についての予測値Pa10−Pa13をそれぞれ算出する。   The prediction processing unit 411 included in each of the image processing circuits 410 functions as a prediction unit. The prediction processing unit 411 calculates each predicted value of the target pixel by performing the above-described prediction processing based on the pixel value input from the prediction encoding processing unit 401, with each target pixel as a processing target. For example, the prediction processing unit 411 calculates predicted values Pa2 to Pa5 for the target pixel (pixels a2 to a5) based on the pixel value input at the clock T1. In addition, the prediction processing unit 411 calculates predicted values Pa6-Pa9 for the target pixel (pixels a6-a9) based on the pixel value input at the clock T2. In addition, the prediction processing unit 411 calculates the predicted values Pa10-Pa13 for the target pixel (pixels a10-a13) based on the pixel value input at the clock T3.

また、画像処理回路410の各々が備える予測誤差算出部412は、第1算出手段として機能する。予測誤差算出部412は、注目画素の各々を処理対象とし、予測符号化処理部401から入力される注目画素の画素値と、対応する予測処理部411での算出結果(予測値)との差分から、予測誤差値をそれぞれ算出する。例えば、予測誤差算出部412は、クロックT1で入力された注目画素(画素a2−a5)の画素値と、当該注目画素の予測値Pa2−Pa5とから、予測誤差値Ea2−Ea5をそれぞれ算出する。また、予測誤差算出部412は、クロックT2で入力された注目画素(画素a6−a9)の画素値と、当該注目画素の予測値Pa6−Pa9とから、予測誤差値Ea6−Ea9をそれぞれ算出する。また、予測誤差算出部412は、クロックT3で入力された注目画素(画素a10−a13)の画素値と、当該注目画素の予測値Pa10−Pa13とから、予測誤差値Ea10−Ea13をそれぞれ算出する。   Further, the prediction error calculation unit 412 included in each of the image processing circuits 410 functions as a first calculation unit. The prediction error calculation unit 412 treats each target pixel as a processing target, and the difference between the pixel value of the target pixel input from the prediction encoding processing unit 401 and the calculation result (prediction value) in the corresponding prediction processing unit 411 From these, a prediction error value is calculated. For example, the prediction error calculation unit 412 calculates the prediction error values Ea2-Ea5 from the pixel value of the target pixel (pixel a2-a5) input at the clock T1 and the prediction value Pa2-Pa5 of the target pixel. . Also, the prediction error calculation unit 412 calculates the prediction error values Ea6-Ea9 from the pixel value of the target pixel (pixels a6-a9) input at the clock T2 and the prediction values Pa6-Pa9 of the target pixel. . Further, the prediction error calculation unit 412 calculates prediction error values Ea10-Ea13 from the pixel value of the target pixel (pixels a10-a13) input at the clock T3 and the predicted value Pa10-Pa13 of the target pixel, respectively. .

このように、本実施形態の予測符号化処理部401では、画像処理回路410の各々が独立して動作することで、現ラインを構成する複数の画素(注目画素)の符号化(予測値及び予測誤差値の算出)を個別に行う。これにより、動作の基準となる時間(基準クロック)内において、複数の注目画素の符号化を並列で行うことが可能となるため、画像の符号化に係る処理を効率的に行うことができる。   As described above, in the predictive coding processing unit 401 according to the present embodiment, each of the image processing circuits 410 operates independently, thereby encoding (predicting values and pixels of) a plurality of pixels (target pixels) constituting the current line. Calculation of prediction error value) is performed individually. Accordingly, since it is possible to encode a plurality of pixels of interest in parallel within a time (reference clock) serving as an operation reference, it is possible to efficiently perform processing related to image encoding.

次に、図13を用いて、予測復号処理部502の回路構成について説明する。ここで、図13は、予測復号処理部502の回路構成を示す図である。   Next, the circuit configuration of the predictive decoding processing unit 502 will be described with reference to FIG. Here, FIG. 13 is a diagram illustrating a circuit configuration of the predictive decoding processing unit 502.

図13に示すように、予測復号処理部502は、予測符号化処理部401と同様に、4つの画像処理回路510a、510b、510c、510dを有する。以下、画像処理回路510a、510b、510c、510dの各々を区別しない場合には、単に画像処理回路510と表記する。また、図13では、画素a2−a5の画素値を、対応する画素の画素名を用いて表している。   As illustrated in FIG. 13, the predictive decoding processing unit 502 includes four image processing circuits 510a, 510b, 510c, and 510d, similarly to the predictive encoding processing unit 401. Hereinafter, when the image processing circuits 510a, 510b, 510c, and 510d are not distinguished from each other, they are simply referred to as the image processing circuit 510. In FIG. 13, the pixel values of the pixels a2-a5 are represented using the pixel names of the corresponding pixels.

画像処理回路510の各々は、本実施形態の予測手段に対応する予測処理部511と、本実施形態の第2算出手段に対応する復号処理部512との組をそれぞれ有する。予測処理部511及び復号処理部512は、ラインメモリ503に格納された2ライン分(現ライン、前ライン)の画像バンドデータを用いて、予測値の算出及び画素値の復号を行う。なお、ラインメモリ503に格納される現ラインの画像バンドデータについては、注目画素の復号が完了する度に、その復号された画素の画素値が更新(追加)されるものとする。   Each of the image processing circuits 510 includes a set of a prediction processing unit 511 corresponding to the prediction unit of the present embodiment and a decoding processing unit 512 corresponding to the second calculation unit of the present embodiment. The prediction processing unit 511 and the decoding processing unit 512 use the image band data for two lines (current line and previous line) stored in the line memory 503 to calculate a prediction value and decode a pixel value. As for the image band data of the current line stored in the line memory 503, the pixel value of the decoded pixel is updated (added) every time decoding of the pixel of interest is completed.

画像処理回路510aに着目すると、画像処理回路510aは、現ラインの画素a2を注目画素としている。そのため、予測復号処理部502は、画像処理回路510aの予測処理部511に対し、画素a2周辺の画素a1、b1、c1の画素値を、図7で説明した周辺画素a、b、cの画素値として入力する。画像処理回路510aの予測処理部511は、画素a1、b1、c1の画素値について、上述した予測処理を実行することで予測値Pa2を算出する。   Focusing on the image processing circuit 510a, the image processing circuit 510a uses the pixel a2 in the current line as the target pixel. Therefore, the predictive decoding processing unit 502 uses the pixel values of the pixels a1, b1, and c1 around the pixel a2 as the pixels of the peripheral pixels a, b, and c described in FIG. 7 with respect to the prediction processing unit 511 of the image processing circuit 510a. Enter as a value. The prediction processing unit 511 of the image processing circuit 510a calculates the prediction value Pa2 by executing the above-described prediction processing on the pixel values of the pixels a1, b1, and c1.

画像処理回路510aの復号処理部512は、予測値Pa2に、ハフマン復号処理部501で復号された画素a2についての予測誤差値Ea2を加算することで、注目画素である画素a2の画素値を復元する。   The decoding processing unit 512 of the image processing circuit 510a restores the pixel value of the pixel a2 that is the target pixel by adding the prediction error value Ea2 for the pixel a2 decoded by the Huffman decoding processing unit 501 to the prediction value Pa2. To do.

ここで、予測復号処理部502は、予測符号化処理部401と同様、同一の画素を周辺画素b、cとする予測処理部511の各々に対し、共通する経路を介して当該画素の画素値を供給することで、当該画素の画素値を同時に入力する。また、画像処理回路510aの復号処理部512は、復号した注目画素(画素a2)の画素値を、当該注目画素を周辺画素aとする次段(画像処理回路510b)の予測処理部511に供給することで、復号結果を次段での処理にフィードバック入力する。   Here, similarly to the predictive encoding processing unit 401, the predictive decoding processing unit 502 performs pixel values of the pixels through a common path for each of the prediction processing units 511 having the same pixel as the surrounding pixels b and c. By supplying the pixel value of the pixel at the same time. The decoding processing unit 512 of the image processing circuit 510a supplies the decoded pixel value of the target pixel (pixel a2) to the prediction processing unit 511 of the next stage (image processing circuit 510b) that uses the target pixel as the peripheral pixel a. By doing so, the decoding result is fed back to the processing in the next stage.

また、画像処理回路510bは、現ラインの画素a3を注目画素としている。画像処理回路510bの予測処理部511は、画素a3周辺の画素a2、b2、b1の画素値を必要とするが、画素a2の画素値については前段(画像処理回路510a)の予測処理部511から入力される。そのため、予測復号処理部502は、画像処理回路510bの予測処理部511に対し、画素a3周辺の画素b2、b1の画素値を、図7で説明した周辺画素b、cの画素値として入力する。   The image processing circuit 510b uses the pixel a3 on the current line as a target pixel. The prediction processing unit 511 of the image processing circuit 510b needs the pixel values of the pixels a2, b2, and b1 around the pixel a3, but the pixel value of the pixel a2 is determined from the prediction processing unit 511 of the previous stage (image processing circuit 510a). Entered. Therefore, the predictive decoding processing unit 502 inputs the pixel values of the pixels b2 and b1 around the pixel a3 as the pixel values of the peripheral pixels b and c described in FIG. 7 to the prediction processing unit 511 of the image processing circuit 510b. .

画像処理回路510bの予測処理部511は、画素a2、b2、b1の画素値について、上述した予測処理を実行することで予測値Pa3を算出する。画像処理回路510bの復号処理部512は、予測値Pa3に、ハフマン復号処理部501で復号された画素a3についての予測誤差値Ea3を加算することで、注目画素である画素a3の画素値を復元する。また、画像処理回路510bの復号処理部512は、復号した注目画素(画素a3)の画素値を、次段(画像処理回路510c)の予測処理部511に供給することで、復号結果を次段での処理にフィードバック入力する。   The prediction processing unit 511 of the image processing circuit 510b calculates the predicted value Pa3 by executing the above-described prediction processing on the pixel values of the pixels a2, b2, and b1. The decoding processing unit 512 of the image processing circuit 510b restores the pixel value of the pixel a3 that is the target pixel by adding the prediction error value Ea3 for the pixel a3 decoded by the Huffman decoding processing unit 501 to the prediction value Pa3. To do. Also, the decoding processing unit 512 of the image processing circuit 510b supplies the decoded pixel value of the target pixel (pixel a3) to the prediction processing unit 511 of the next stage (image processing circuit 510c), so that the decoding result is output to the next stage. Input feedback to the process.

また、予測復号処理部502は、画像処理回路510bと同様に画像処理回路510c、510dに対しても画素値を入力する。これにより、画像処理回路510c、510dの予測処理部511は、注目画素(画素a4、a5)周辺の周辺画素の画素値から、予測値Pa4、Pa5をそれぞれ算出する。また、画像処理回路510c、510dの復号処理部512は、注目画素(画素a4、a5)の画素値をそれぞれ復元する。さらに、画像処理回路510c、510dの復号処理部512は、復号した注目画素(画素a4、a5)の画素値を、次段の予測処理部511に供給する。なお、図13では図示していないが、画像処理回路510dの復号処理部512から、画像処理回路510aの予測処理部511へ周辺画素aの画素値を供給する供給経路を設けてもよい。この場合、注目画素となった画素a5の次の画素(画素a6)を画像処理回路510aが注目画素とする場合、画像処理回路510dの復号処理部512が復元した結果を用いることが可能となる。   The predictive decoding processing unit 502 also inputs pixel values to the image processing circuits 510c and 510d in the same manner as the image processing circuit 510b. Accordingly, the prediction processing units 511 of the image processing circuits 510c and 510d calculate the prediction values Pa4 and Pa5 from the pixel values of the peripheral pixels around the target pixel (pixels a4 and a5), respectively. Also, the decoding processing units 512 of the image processing circuits 510c and 510d restore the pixel values of the target pixels (pixels a4 and a5), respectively. Further, the decoding processing unit 512 of the image processing circuits 510c and 510d supplies the decoded pixel value of the target pixel (pixels a4 and a5) to the prediction processing unit 511 at the next stage. Although not shown in FIG. 13, a supply path for supplying the pixel value of the peripheral pixel a from the decoding processing unit 512 of the image processing circuit 510d to the prediction processing unit 511 of the image processing circuit 510a may be provided. In this case, when the image processing circuit 510a sets the pixel next to the pixel a5 that has become the target pixel (pixel a6) as the target pixel, the result restored by the decoding processing unit 512 of the image processing circuit 510d can be used. .

上記したように、本実施形態の予測復号処理部502は、同一の画素を周辺画素とする予測処理部511に対し、当該画素の画素値を同時に入力する。また、画像処理回路510の各々が備える復号処理部512は、自己の画像処理回路510での処理結果(注目画素の画素値)を、次段の画像処理回路510(予測処理部511)に供給する。このように、本実施形態では、予測復号処理部502の全体が、画像処理回路510を並列に複数段配置した1つの組み合わせ回路として動作する。   As described above, the predictive decoding processing unit 502 according to the present embodiment inputs the pixel values of the pixels simultaneously to the prediction processing unit 511 having the same pixel as a peripheral pixel. In addition, the decoding processing unit 512 included in each of the image processing circuits 510 supplies the processing result (the pixel value of the target pixel) in the image processing circuit 510 of itself to the next-stage image processing circuit 510 (prediction processing unit 511). To do. Thus, in the present embodiment, the entire predictive decoding processing unit 502 operates as one combinational circuit in which a plurality of image processing circuits 510 are arranged in parallel.

図14は、予測復号処理部502の動作を説明するためのタイミングチャートである。同図において、「clk」は基準クロックを意味する。また、同図では、図13に示した前ラインの画素c1、b1−b4に続いて画素b5−b12が配列されているとする。また、現ラインの画素a1に続いて画素a2−a13が配列され、図14に示した矢印の順に処理が行われるものとする。なお、図14では、画素a2−a13の画素値を、対応する画素の画素名を用いて表している。   FIG. 14 is a timing chart for explaining the operation of the predictive decoding processing unit 502. In the figure, “clk” means a reference clock. Also, in the figure, it is assumed that pixels b5-b12 are arranged subsequent to the pixels c1, b1-b4 on the previous line shown in FIG. Further, it is assumed that pixels a2 to a13 are arranged following the pixel a1 on the current line, and processing is performed in the order of the arrows shown in FIG. In FIG. 14, the pixel values of the pixels a2-a13 are represented using the pixel names of the corresponding pixels.

また、図14の予測値PAは、図13に示した画像処理部510aの予測処理部511が予測した予測値を示し、同様に予測値PB−PDは、画像処理部510b−510dの予測処理部511が予測した予測値をそれぞれ示す。また、図14の画素値VAは、図13に示した画像処理部510aの復号処理部512が復号した画素値を示し、同様に画素値VB−VDは、画像処理部510b−510dの復号処理部512が復号した画素値をそれぞれ示す。   14 indicates the prediction value predicted by the prediction processing unit 511 of the image processing unit 510a illustrated in FIG. 13, and similarly, the prediction value PB-PD is the prediction processing of the image processing units 510b-510d. Each of the predicted values predicted by the unit 511 is shown. 14 indicates the pixel value decoded by the decoding processing unit 512 of the image processing unit 510a shown in FIG. 13, and similarly, the pixel value VB-VD indicates the decoding processing of the image processing units 510b-510d. Each of the pixel values decoded by the unit 512 is shown.

予測復号処理部502は、基準クロックに同期して、ラインメモリ503に格納された画像バンドデータから画素値を読み出し、画像処理回路510に入力する。画素値の読み出し元となる画素は、予測復号処理部502が備える画像処理回路510の個数や各画像処理回路510が注目画素とした画素位置に応じて定まる。   The prediction decoding processing unit 502 reads out pixel values from the image band data stored in the line memory 503 in synchronization with the reference clock, and inputs the pixel values to the image processing circuit 510. The pixel from which the pixel value is read out is determined according to the number of image processing circuits 510 provided in the predictive decoding processing unit 502 and the pixel position that each image processing circuit 510 uses as a target pixel.

ここで、予測復号処理部502が4つの画像処理回路510を備え(図13参照)、当該画像処理回路510が現ラインでの連続する4画素を注目画素とする場合を想定する。この場合、予測復号処理部502は、今回の処理で復号の対象となる各注目画素の画素値と、当該注目画素に隣接し且つ直前の処理で復号された画素(以下、直前画素という)の画素値とを現ラインから読み出し、対応する画像処理回路510に入力する。   Here, it is assumed that the predictive decoding processing unit 502 includes four image processing circuits 510 (see FIG. 13), and the image processing circuit 510 uses four consecutive pixels on the current line as a target pixel. In this case, the predictive decoding processing unit 502 calculates the pixel value of each target pixel to be decoded in the current process and the pixel adjacent to the target pixel and decoded in the immediately previous process (hereinafter referred to as the previous pixel). The pixel value is read from the current line and input to the corresponding image processing circuit 510.

また、予測復号処理部502は、現ライン上において2番目以降に処理を行う画像処理回路510について、当該画像処理回路510が注目画素とする画素とこの注目画素の直前画素との画素位置に対応する前ラインの2画素から画素値を読み出す。そして、予測復号処理部502は、読み出した画素値を、対応する画像処理回路510に入力する。   In addition, the predictive decoding processing unit 502 corresponds to the pixel positions of the pixel that the image processing circuit 510 performs as the pixel of interest and the pixel immediately before the pixel of interest for the image processing circuit 510 that performs the second and subsequent processes on the current line. The pixel values are read from the two pixels on the previous line. Then, the predictive decoding processing unit 502 inputs the read pixel value to the corresponding image processing circuit 510.

その結果、例えば、最初の処理となるクロックT1において、画素a2−a5を注目画素とした場合、予測復号処理部502は、現ラインから画素a1の画素値を読み出すとともに、前ラインから画素c1、b1−b4の画素値を読み出す。また、クロックT2において、続く画素a6−a9を注目画素とした場合、予測復号処理部502は、前ラインから画素b4−b8の画素値を読み出す。また、クロックT3において、続く画素a10−a13を注目画素とした場合、予測復号処理部502は、前ラインから画素b8−b12の画素値を読み出す。なお、2番目以降の処理については、先の処理で復号された注目画素(直前画素)の画素値が、フィードバック入力される。なお、直前の処理で前ライン及び現ラインから読み出した最終画素値(例えばクロックT1での画素b4の画素値)を、次のクロック(クロックT2)での処理に用いることで、同一画素の多重読み出しを防ぐ構成としてもよい。   As a result, for example, when the pixel a2-a5 is the target pixel in the clock T1, which is the first process, the predictive decoding processing unit 502 reads out the pixel value of the pixel a1 from the current line, and the pixel c1, Read out the pixel values of b1-b4. In addition, in the clock T2, when the subsequent pixels a6-a9 are set as the target pixel, the predictive decoding processing unit 502 reads out the pixel values of the pixels b4-b8 from the previous line. In addition, in the clock T3, when the subsequent pixels a10 to a13 are the target pixels, the predictive decoding processing unit 502 reads the pixel values of the pixels b8 to b12 from the previous line. In the second and subsequent processes, the pixel value of the target pixel (previous pixel) decoded in the previous process is input as feedback. Note that the last pixel value read from the previous line and the current line in the immediately preceding process (for example, the pixel value of the pixel b4 at the clock T1) is used for the process at the next clock (clock T2), thereby multiplexing the same pixel It may be configured to prevent reading.

ハフマン復号処理部501は、基準クロックに同期して、注目画素についての予測誤差値の復号結果を、予測復号処理部502に入力する。例えば、最初の処理となるクロックT1において、ハフマン復号処理部501は、画素a2−a5の予測誤差値Ea2−Ea5を、予測復号処理部502に入力する。また、クロックT2において、ハフマン復号処理部501は、画素a6−a9の予測誤差値Ea6−Ea9を、予測復号処理部502に入力する。また、クロックT3において、ハフマン復号処理部501は、画素a10−a13の予測誤差値Ea10−Ea13を、予測復号処理部502に入力する。   The Huffman decoding processing unit 501 inputs the decoding result of the prediction error value for the target pixel to the prediction decoding processing unit 502 in synchronization with the reference clock. For example, the Huffman decoding processing unit 501 inputs the prediction error values Ea2 to Ea5 of the pixels a2 to a5 to the prediction decoding processing unit 502 at the clock T1 that is the first process. At clock T2, the Huffman decoding processing unit 501 inputs the prediction error values Ea6-Ea9 of the pixels a6-a9 to the prediction decoding processing unit 502. Also, at clock T3, the Huffman decoding processing unit 501 inputs the prediction error values Ea10-Ea13 of the pixels a10-a13 to the prediction decoding processing unit 502.

画像処理回路510の各々が備える予測処理部511は、入力された画素値に基づき上述した予測処理を並行して行うことで、注目画素の予測値を算出する。例えば、現ライン上で最初に処理を行う画像処理回路510aの予測処理部511は、クロックT1で入力された画素a1、b1、c1の画素値から、注目画素(画素a2)についての予測値Pa2を算出する。また、画像処理回路510aの復号処理部512は、予測値Pa2と予測誤差値Ea2とを加算することで、注目画素である画素a2の画素値を復号する。そして、復号された画素a2の画素値は、次に処理を行う次段の画像処理回路510bに入力される。   The prediction processing unit 511 included in each of the image processing circuits 510 calculates the predicted value of the target pixel by performing the above-described prediction processing in parallel based on the input pixel value. For example, the prediction processing unit 511 of the image processing circuit 510a that performs processing first on the current line uses the prediction value Pa2 for the target pixel (pixel a2) from the pixel values of the pixels a1, b1, and c1 input at the clock T1. Is calculated. In addition, the decoding processing unit 512 of the image processing circuit 510a decodes the pixel value of the pixel a2, which is the target pixel, by adding the predicted value Pa2 and the predicted error value Ea2. Then, the decoded pixel value of the pixel a2 is input to the next-stage image processing circuit 510b that performs the next processing.

次段の画像処理回路510bでは、予測処理部511が、入力された画素値に基づき上述した予測処理を行うことで、注目画素の予測値を算出する。例えば、画素a3を注目画素として処理する画像処理回路510bの予測処理部511は、先の処理で復号された画素a2の画素値と、クロックT1で入力された画素b2、b1の画素値から、注目画素(画素a3)についての予測値Pa3を算出する。また、画像処理回路510bの復号処理部512は、予測値Pa3と予測誤差値Ea3とを加算することで、注目画素である画素a3の画素値を復号する。そして、復号された画素a3の画素値は、次に処理を行う次段の画像処理回路510cに入力される。   In the next-stage image processing circuit 510b, the prediction processing unit 511 performs the above-described prediction processing based on the input pixel value, thereby calculating the predicted value of the target pixel. For example, the prediction processing unit 511 of the image processing circuit 510b that processes the pixel a3 as the pixel of interest uses the pixel value of the pixel a2 decoded in the previous process and the pixel values of the pixels b2 and b1 input at the clock T1. A predicted value Pa3 for the pixel of interest (pixel a3) is calculated. The decoding processing unit 512 of the image processing circuit 510b decodes the pixel value of the pixel a3 that is the target pixel by adding the prediction value Pa3 and the prediction error value Ea3. The decoded pixel value of the pixel a3 is input to the next-stage image processing circuit 510c that performs the next processing.

また、以降の処理においても、画像処理回路510では、直前の処理で復号された画素値を利用しながら注目画素の予測値を算出し、当該注目画素の画素値を復号する。   Also in the subsequent processing, the image processing circuit 510 calculates the predicted value of the pixel of interest while using the pixel value decoded in the immediately preceding processing, and decodes the pixel value of the pixel of interest.

このように、本実施形態の予測復号処理部502では、画像処理回路510の各々が独立して動作することで、現ラインを構成する複数の画素(注目画素)の復元を個別に行う。これにより、動作の基準となる時間(基準クロック)内において、複数の注目画素の復号をパイプライン処理的に行うことが可能となるため、画像の復号に係る処理を効率的に行うことができる。   As described above, in the predictive decoding processing unit 502 of the present embodiment, each of the image processing circuits 510 operates independently, thereby individually restoring a plurality of pixels (target pixel) constituting the current line. This makes it possible to decode a plurality of pixels of interest in a pipeline process within a time (reference clock) serving as a reference for operation, so that a process related to decoding of an image can be performed efficiently. .

以上、本発明の実施形態を説明したが、上記実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。上記実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更、追加等を行うことができる。また、上記実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。   As mentioned above, although embodiment of this invention was described, the said embodiment was shown as an example and is not intending limiting the range of invention. The above embodiment can be implemented in various other forms, and various omissions, replacements, changes, additions, and the like can be made without departing from the scope of the invention. Moreover, the said embodiment and its deformation | transformation are included in the range of the invention, the summary, and the invention described in the claim, and its equal range.

例えば、上記実施形態では、本発明をカラープリンタ100に適用した例を説明したが、これに限らず、複写機やプリンタ機能を備えたMFP(MultiFunction Peripheral)等の装置に適用してもよい。   For example, in the above-described embodiment, the example in which the present invention is applied to the color printer 100 has been described. However, the present invention is not limited to this, and may be applied to an apparatus such as a copying machine or an MFP (Multi Function Peripheral) having a printer function.

また、上記実施形態では、画像処理回路410や画像処理回路510の個数、つまり組み合わせ回路を構成する処理の段数を4としたが、これに限らないものとする。なお、メモリ管理に関するアーキテクチャの観点から、画像処理回路410や画像処理回路510の個数を4の倍数とすることが好ましい。   In the above embodiment, the number of the image processing circuits 410 and the image processing circuits 510, that is, the number of processing stages constituting the combinational circuit is four. However, the present invention is not limited to this. Note that it is preferable that the number of the image processing circuits 410 and the image processing circuits 510 is a multiple of four from the viewpoint of the architecture related to memory management.

100 カラープリンタ
204 符号化部
205 復号部
400 画像読込処理部
401 予測符号化処理部
402 ラインメモリ
403 ハフマン符号化処理部
404 符号書込処理部
410 画像処理回路
411 予測処理部
412 予測誤差算出部
500 符号読込処理部
501 ハフマン復号処理部
502 予測復号処理部
503 ラインメモリ
504 画像書込処理部
510 画像処理回路
511 予測処理部
512 復号処理部
DESCRIPTION OF SYMBOLS 100 Color printer 204 Encoding part 205 Decoding part 400 Image reading process part 401 Prediction encoding process part 402 Line memory 403 Huffman encoding process part 404 Code writing process part 410 Image processing circuit 411 Prediction process part 412 Prediction error calculation part 500 Code reading processing unit 501 Huffman decoding processing unit 502 Predictive decoding processing unit 503 Line memory 504 Image writing processing unit 510 Image processing circuit 511 Prediction processing unit 512 Decoding processing unit

特開2011−019095号公報JP 2011-019095 A

Claims (5)

少なくとも2ライン分以上の画素値を記憶可能な記憶手段と、
前記記憶手段から、処理対象のライン上に配列された複数の注目画素の画素値と、当該注目画素周辺の周辺画素の画素値とを読み出す読出手段と、
前記注目画素の各々を処理対象とし、前記読出手段が読み出した当該注目画素周辺の周辺画素の画素値を用いて、当該注目画素の画素値をそれぞれ予測する複数の予測手段と、
前記注目画素の各々を処理対象とし、前記読出手段が読み出した当該注目画素の画素値と当該注目画素について前記予測手段が予測した予測値との差分から予測誤差値をそれぞれ算出する複数の第1算出手段と、
前記第1算出手段で算出された前記予測誤差値の各々を圧縮する圧縮手段と、
前記圧縮手段で圧縮された前記予測誤差値の各々を復号する復号手段と、
前記注目画素の各々を処理対象とし、当該注目画素について前記予測手段が予測した予測値と前記復号手段が復号した予測誤差値とを加算することで、当該注目画素の画素値をそれぞれ復号する複数の第2算出手段と、
を備え、
前記第2算出手段は、復号した注目画素の画素値を、当該注目画素を前記周辺画素とする前記予測手段に入力する、
画像処理装置。
Storage means capable of storing pixel values of at least two lines or more;
Reading means for reading out the pixel values of a plurality of target pixels arranged on the processing target line and the pixel values of peripheral pixels around the target pixel from the storage unit;
A plurality of prediction means for processing each of the target pixels and predicting pixel values of the target pixels using pixel values of peripheral pixels around the target pixel read by the reading unit;
Each of the target pixels is a processing target, and a plurality of first error values are calculated from the difference between the pixel value of the target pixel read by the reading unit and the prediction value predicted by the prediction unit for the target pixel. A calculation means;
Compression means for compressing each of the prediction error values calculated by the first calculation means;
Decoding means for decoding each of the prediction error values compressed by the compression means;
A plurality of pixels for decoding each pixel value of the pixel of interest by adding each of the pixel of interest as a processing target and adding the prediction value predicted by the prediction unit and the prediction error value decoded by the decoding unit for the pixel of interest Second calculating means of
With
The second calculation unit inputs the decoded pixel value of the target pixel to the prediction unit using the target pixel as the peripheral pixel.
Image processing device.
前記予測手段と前記第1算出手段との組を並列に複数段配置した組み合わせ回路を備える請求項に記載の画像処理装置。 The image processing apparatus according to claim 1 , further comprising a combinational circuit in which a plurality of sets of the prediction unit and the first calculation unit are arranged in parallel. 前記予測手段と前記第2算出手段との組を並列に複数段配置した組み合わせ回路を備える請求項に記載の画像処理装置。 The image processing apparatus according to claim 1 , further comprising a combinational circuit in which a plurality of sets of the prediction unit and the second calculation unit are arranged in parallel. 前記組み合わせ回路を構成する前記組の段数が4の倍数である請求項又はに記載の画像処理装置。 The image processing apparatus according to claim 2 or 3 , wherein the number of stages of the set constituting the combinational circuit is a multiple of four. 画像処理装置で実行される画像処理方法であって、
前記画像処理装置は、少なくとも2ライン分以上の画素値を記憶可能な記憶手段を備え、
前記記憶手段から、処理対象のライン上に配列された複数の注目画素の画素値と、当該注目画素周辺の周辺画素の画素値とを読み出す読出工程と、
前記注目画素の各々を処理対象とし、前記読出工程で読み出された当該注目画素周辺の周辺画素の画素値を用いて、当該注目画素の画素値をそれぞれ予測する複数の予測工程と、
前記注目画素の各々を処理対象とし、前記読出工程が読み出した当該注目画素の画素値と当該注目画素について前記予測工程が予測した予測値との差分から予測誤差値をそれぞれ算出する複数の第1算出工程と、
前記第1算出工程で算出された前記予測誤差値の各々を圧縮する圧縮工程と、
前記圧縮工程で圧縮された前記予測誤差値の各々を復号する復号工程と、
前記注目画素の各々を処理対象とし、当該注目画素について前記予測工程が予測した予測値と前記復号工程が復号した予測誤差値とを加算することで、当該注目画素の画素値をそれぞれ復号する複数の第2算出工程と、
を含み、
前記第2算出工程は、復号した注目画素の画素値を、当該注目画素を前記周辺画素とする前記予測工程に入力する、
画像処理方法。
An image processing method executed by an image processing apparatus,
The image processing apparatus includes storage means capable of storing pixel values of at least two lines or more,
A reading step of reading out pixel values of a plurality of target pixels arranged on the processing target line and pixel values of peripheral pixels around the target pixel from the storage unit;
A plurality of prediction steps for setting each of the target pixels as a processing target and using the pixel values of peripheral pixels around the target pixel read in the reading step to predict the pixel value of the target pixel;
Each of the target pixels is a processing target, and a plurality of first error values are calculated from the difference between the pixel value of the target pixel read by the reading step and the predicted value predicted by the prediction step for the target pixel. A calculation process;
A compression step of compressing each of the prediction error values calculated in the first calculation step;
A decoding step of decoding each of the prediction error values compressed in the compression step;
A plurality of pixels for decoding each pixel value of the target pixel by adding each of the target pixels to be processed and adding the prediction value predicted by the prediction step and the prediction error value decoded by the decoding step for the target pixel A second calculation step of
Including
In the second calculation step, the pixel value of the decoded target pixel is input to the prediction step using the target pixel as the peripheral pixel.
Image processing method.
JP2014223573A 2014-10-31 2014-10-31 Image processing apparatus and image processing method Active JP6451221B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014223573A JP6451221B2 (en) 2014-10-31 2014-10-31 Image processing apparatus and image processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014223573A JP6451221B2 (en) 2014-10-31 2014-10-31 Image processing apparatus and image processing method

Publications (2)

Publication Number Publication Date
JP2016092552A JP2016092552A (en) 2016-05-23
JP6451221B2 true JP6451221B2 (en) 2019-01-16

Family

ID=56019040

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014223573A Active JP6451221B2 (en) 2014-10-31 2014-10-31 Image processing apparatus and image processing method

Country Status (1)

Country Link
JP (1) JP6451221B2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07114369B2 (en) * 1985-08-30 1995-12-06 富士通株式会社 Parallel processing plane prediction circuit
JP5217972B2 (en) * 2008-12-01 2013-06-19 富士ゼロックス株式会社 Image expansion device
JP2011019096A (en) * 2009-07-09 2011-01-27 Ricoh Co Ltd Image processor and image processing method

Also Published As

Publication number Publication date
JP2016092552A (en) 2016-05-23

Similar Documents

Publication Publication Date Title
JP5369982B2 (en) Image processing apparatus and image processing method
US8351718B2 (en) Image data processing apparatus, image forming apparatus provided with the same, image data processing program, and image data processing method
JP2005309865A (en) Image processing apparatus and method, and computer readable recording medium for recording program for causing computer to implement this method
US8712174B2 (en) Image processing apparatus and image processing method
JP6451221B2 (en) Image processing apparatus and image processing method
JP2012134929A (en) Image processing system and image processing method
JP5218332B2 (en) Image processing apparatus and image processing method
JP4568685B2 (en) Image processing apparatus, image processing method, and computer-readable recording medium storing a program for causing a computer to execute the image processing method
JP5201040B2 (en) Image processing apparatus, image processing method, and program
JP2011019096A (en) Image processor and image processing method
JP4490783B2 (en) Image processing apparatus, image processing method, and computer-readable recording medium storing a program for causing a computer to execute the image processing method
JP2009169584A (en) Image processing apparatus, image processing method and program
JP2010219777A (en) Apparatus and method for processing image, and program
JP4833770B2 (en) Image processing system and image processing method
JP6337494B2 (en) Image processing apparatus, image processing method, and program
JP2011019095A (en) Image processor and image processing method
JP4773223B2 (en) Image processing apparatus, image processing method, and computer-readable recording medium
US8400675B2 (en) Image forming apparatus, image forming method, computer readable medium storing image forming program and recording medium for performing control to change the number of color materials used for at least the rim portion of the recording medium
JP2008044236A (en) Image processor, image processing method, and program for being executed by computer
JP2012134659A (en) Image processing device and image processing method
JP2018094750A (en) Image formation apparatus, image formation system, program and image formation control apparatus
JP2010219776A (en) Image processing apparatus and method, and program
JP2005260872A (en) Image processor and image processing method, and computer-readable recording medium with program for allowing computer to execute image processing method recorded thereon
JP2020077292A (en) Data generation device, data generation system, and data generation program
JP2019216372A (en) Image processing apparatus, image processing method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171010

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180528

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180605

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180730

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181126

R151 Written notification of patent or utility model registration

Ref document number: 6451221

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151