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

Image processing apparatus and image processing method Download PDF

Info

Publication number
JP4115073B2
JP4115073B2 JP2000106878A JP2000106878A JP4115073B2 JP 4115073 B2 JP4115073 B2 JP 4115073B2 JP 2000106878 A JP2000106878 A JP 2000106878A JP 2000106878 A JP2000106878 A JP 2000106878A JP 4115073 B2 JP4115073 B2 JP 4115073B2
Authority
JP
Japan
Prior art keywords
pixel
pattern
information
image
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2000106878A
Other languages
Japanese (ja)
Other versions
JP2001188900A (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 JP2000106878A priority Critical patent/JP4115073B2/en
Publication of JP2001188900A publication Critical patent/JP2001188900A/en
Application granted granted Critical
Publication of JP4115073B2 publication Critical patent/JP4115073B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
この発明は、プリンタ、複写機あるいはファクシミリなどの画像形成装置や情報処理装置の表示画像の画像処理や、デジタルカメラ画像、インターネットホームページなどモニタ解像度レベルの画像を高解像度化してプリントアウトしたり表示したりする場合の画像処理に好適で、比較的低階調の連続調のカラー画像データを比較的高階調の画像に拡大する処理に適用される画像処理装置及び方法に関する。
【0002】
【従来の技術】
この種の従来例としては、例えば
A.特開平5−094521号公報
B.特開平6−189116号公報
C.特開平7−050752号公報
D.特開平7−093563号公報
E.特開平7−105359号公報
F.特開平7−221976号公報
G.特開平7−221977号公報
H.特開平7−262351号公報
I.特開平7−288693号公報
J.特開平10−126609号公報
などの各公報に開示された発明が知られている。
【0003】
このうち、パターンマッチングによる密度変換に関するものとして、特開平7−221976号公報(F)には、2値画像データをテンプレートとマッチングをとり、マッチングしたパターンに対応するスムージング拡大パターンにより着目画素を2値拡大ドット群にスムージング拡大し、それを拡大率に応じて1つ以上の画素に分割し、その画像毎に平滑化処理して多値化し、その際使用するテンプレートパターンを複数の平滑化パターン群に分け、パターン群に分けその群に応じてマッチングする優先順位を設定するようにしたことが開示されている。また、特開平7−221977号公報(G)には、2値画像データをFAXで受信したとき、その受信データに応じて変倍率を算出する手段と、前記2値画像データに対して着目画素を中心とする所定領域毎にテンプレートマッチング処理を施す手段と、テンプレートマッチング処理の結果、マッチングしたテンプレートパターンに応じて前記着目画素を複数の多値のスムージング拡大画素に変換する演算手段と、演算手段で使用する多値のスムージング拡大画素のデータを算出された変倍率に応じて予め内部のRAMに転送する手段とを設け、FAXで受信した2値画像データのスムージング拡大処理を確実に行えるようにしたことが開示されている。
【0004】
また、特開平7−50752号公報(C)には、ブロックの各画素のデータに基づいて、ブロック内のエッジを検出し、パターンを満足した場合、密度変換を行うように構成したものが開示され、特開平7−288693号公報(I)には、パターンマッチングの高速化を図るために、目標画素に隣接するx*y画素のブロックを、埋めこむパターンの検索用として用いるようにした技術が開示されている。しかし、前記(C)の従来技術では、プリンタドライバなど、ソフトウエアにおける実現の際のパターン検索の高速化に関しては開示されていない。
【0005】
また、特開平10−126609号公報(J)には、像域分離手段を持ち、分離結果で処理を切り替えて拡大し、所定の解像度のファクシミリ2値画像をスムージング拡大処理する方法が開示されている。また、特開平7−262351号公報(H)における「従来の技術」の欄には、特願平6−4424号を挙げて輝度信号のエッジの微小成分をパターンマッチングすることにより全ての特徴点を見つけ出し、個々の特徴点を結ぶベクトルを抽出してこのベクトルを拡大率に応じて補正し、補正後のベクトルにしたがって輪郭を描画して塗りつぶす方法についての記載がある。
【0006】
また、特開平5−94521号公報(A)には、入力画像または部分に適した変倍方法を判別し、拡大する技術、言い換えれば画像に応じて適切な拡大処理を行う技術が開示され、特開平6−189116号公報(B)には、加算結果の小数部と拡大率とを加算する手段を持ち、加算結果の整数部に応じた拡大を行い、主走査方向及び副走査方向とも任意倍率で拡大する技術が開示されている。
【0007】
また、特開平7−093563号公報(D)には、入力画像データを輝度・色差データに変換し、輝度データでエッジを生成し、この情報を基に色差データのエッジを生成して拡大する技術、言い換えれば、入力画像と別の色空間のデータに変換後、拡大する技術が開示されている。この従来技術では、輝度エッジビットマップを作成し、これに基づいて色差成分の最大値、最小値を配置し、輝度・色差のエッジを生成するようになっているが、この技術では、ブロック内のエッジと色の組み合わせによっては、色ずれが生じる場合がある。
【0008】
さらに、特開平7−105359号公報(E)には、線形補間とその補間結果を2値化したものを加算合成して拡大する技術が開示されているが、拡大後のデータを2値化し、2値化前のデータと加算合成する工程を備えているので、処理の高速化については、改善の余地がある。
【0009】
【発明が解決しようとする課題】
ところで、前記(F)及び(G)の従来技術は、2値画像を変倍する技術に関するもので、フルカラー画像を対象とする場合の処理については特に開示されてはいない。
【0010】
また、前記(I)の従来技術では、拡大用の全パターンを保持するので、ジャギー低減効果を得るために、パターンサイズを大きくする場合の検索方法に課題が残ってしまう。
【0011】
さらに、前記(F)及び(J)の従来技術では、値が「0」、「255」のような白地上の黒文字、線画の2値画像の拡大時のジャギーを低減するのみであるので、写真画像のような中間調画像をスムージング拡大処理することができない。このため、デジタルスチルビデオカメラの画像やインターネットのホームページに見られる72dpi程度の低解像度の画像を600程度の高解像度のプリンタにより出力する場合に、ジャギーやボケを低減することができない。また、写真と比べてエッジが目立つビットマップ状のグラフィック画像に対しても同様である。また、前記(J)の従来技術は、あくまで2値画像に関する技術であり、RGBなどのカラー要素からなる画像の変倍については何ら配慮されておらず、また、開示もない。
【0012】
また、前記(H)の従来技術では、ベクトル演算によりスムージング拡大処理するので、計算負荷が高くなってしまう。
【0013】
また、前記(A)の従来技術では、前述のように画質に応じた拡大処理を行う技術が開示されているが、ジャギー低減効果のある低解像度を拡大する技術については開示がない。なお、ここでいうジャギー(jaggy)とは、デジタル画像において、斜めの線を表現したときに生じる階段状のギザギザのことである。ジャギーは画像の解像度が低いと発生しやすく、デジタル画像がピクセルを単位としている限り、本質的にジャギーは不可避である。このジャギーを目立たなくする方法として、例えばアンチエイリアシング(anti-aliasing)という手法が知られている。この手法には、解像度を上げることによって実質的にジャギーを見えにくくする方法と、ジャギーの発生しているピクセルの周囲をぼかすことによってジャギーを目立たなくさせる方法とがある。
【0014】
また、前記(B)の従来技術は、2段階に分けて変倍を行う技術であるが、単純拡大を基本とする技術であり、ジャギー低減やエッジ部の色ずれなどは配慮されていない。
【0015】
本発明は、このような背景に鑑みてなされたもので、その目的は、フルカラー画像について高速に任意の整数倍率の拡大が実現できるようにすることにある。
【0020】
【課題を解決するための手段】
前記目的を達成するため、第1の手段は、入力された画像データに対して画像を拡大する処理を行う画像処理装置において、
補正対象のパターン毎、かつ、倍率毎に拡大画素のドット配置情報を保持し、パターンマッチング結果及び倍率から1つのドット配置情報を抽出するため、予め複数のパターンを格納したパターンファイルのパターン毎に、どのように注目画素の拡大画素を配置するかが整数倍率毎の情報として格納されたドット配置ファイルと、
前記ドット配置ファイルに予め設定され、入力されたRGB画像データの注目画素を含むM×N((M,N≧2の整数)画素ブロックのどの位置の画素情報で拡大画素を埋めるかという画素参照情報が格納された画像参照ファイルと、
前記RGB画像データから画素ブロックを切り出し、輝度色差信号データへ変換し、輝度色差信号データの輝度データを用いて予め登録されているパターンファイル中のパターンとパターンマッチングを行う手段と、
前記パターンマッチングにより一致するパターンがある場合、一致したパターンファイルに対応するドット配置ファイルに応じた画像参照ファイルを特定し、前記ドット配置ファイル中の各拡大画素毎に、特定された画像参照ファイルの画素参照情報に該当する前記RGB画像データ中の画素RGB値によって拡大画素を埋め込むことで補正対象画素を拡大して埋め込み、一致するパターンがない場合、入力されたRGB画像データのM×N画素ブロック中の補正対象画素のRGB値そのもので単純拡大して埋め込む手段と、
を備えていることを特徴とする。
この場合、前記M×Nの画素ブロックを複数のブロックに分割し、分割されたブロックの1つの画素ブロックの全画素について2バイトコードを生成し、残りの画素ブロックの情報を用いて1つのパターンを形成し、また、入力画像データをT(T≧2の整数)値化する手段をさらに備え、前記T値化する手段によりM×N画素の輝度信号に基づいて閾値を算出し、この閾値により前記輝度信号をT値化濃度データに変換し、前記パターンマッチングする手段は(T−1)回のパターンマッチング処理を行い、前記埋め込む手段は前記パターンマッチング処理の処理過程でマッチング処理結果が一致の場合には一致したパターンに対応したテンプレートを参照して画素データを埋め込み、不一致の場合には注目画素データを一時的に埋め込む処理を実行し、前記(T−1)回のパターンマッチング処理が終了した後、拡大処理して埋め込み、また、前記ドット配置情報の抽出は、予め設定された倍率における拡大画素のドット配置情報に基づいて、他の倍率の拡大画素ドット配置情報を作成するようにすると良い。
さらに、前記埋め込む手段は、拡大部と、強調処理部と、特徴情報算出部とからなり、
拡大対象である画像から、注目画素を囲むM×N画素ブロックの画像情報が拡大部と特徴情報算出部に入力され、同ブロックの特徴を示す特徴情報を特徴情報算出部で算出し、前記拡大部で注目画素はP×Q(P,Q≧2)画素ブロックに拡大され、前記算出された特徴情報に応じて、前記強調処理部で全画素P×Q画素ブロックの強調処理を、注目画素を1画素毎にずらしていき、全画素分繰り返すようにする。
また、前記埋め込む手段は、画像サイズと倍率とに基づいて拡大する整数倍率を算出する整数倍率算出部と、算出された整数倍率に基づいて前記成形倍率算出部から得られた間引き、整形なし、追加の情報から間引き、追加の整形を要する場合の画素数と整形ピッチを算出し、拡大した画素をカウントしていき、整形ピッチの整数値と一致したとき、間引き、あるいは追加の処理を行うことようにする。
また、前記拡大処理を複数設定し、M×N画素における色数、色相の一致または類似、輝度データに基づく画素の連結判定の三者の組み合わせによって切り替えるようにすることもできる。
第2の手段は、入力された画像データに対して画像を拡大する処理を行う画像処理方法において、補正対象のパターン毎、かつ、倍率毎に拡大画素のドット配置情報を保持し、パターンマッチング結果及び倍率から1つのドット配置情報を抽出するため、予め複数のパターンを格納したパターンファイルのパターン毎に、どのように注目画素の拡大画素を配置するかが整数倍率毎の情報として格納されたドット配置ファイルと、前記ドット配置ファイルに予め設定され、入力されたRGB画像データのM×N((M,N≧2の整数)画素ブロックのどの位置の画素情報で拡大画素を埋めるかという画素参照情報が格納された画像参照ファイルと、を有し、前記RGB画像データから画素ブロックを切り出し、輝度色差信号データへ変換し、輝度色差信号データを用いて予め登録されているパターンファイル中のパターンとパターンマッチングを行い、前記パターンマッチングにより一致するパターンがある場合、一致したパターンファイルに対応するドット配置ファイルに応じた画像参照ファイルを特定し、特定された画像参照ファイルの画素参照情報に該当するRGB画像データの値によって補正対象画素を拡大して埋め込むことを特徴とする。
第3の手段は、入力された画像データに対して画像を拡大する処理を行うコンピュータで実行するための画像処理プログラムにおいて、補正対象のパターン毎、かつ、倍率毎に拡大画素のドット配置情報を保持し、パターンマッチング結果及び倍率から1つのドット配置情報を抽出するため、予め複数のパターンを格納したパターンファイルのパターン毎に、どのように注目画素の拡大画素を配置するかが整数倍率毎の情報として格納されたドット配置ファイルと、前記ドット配置ファイルに予め設定され、入力されたRGB画像データのM×N((M,N≧2の整数)画素ブロックのどの位置の画素情報で拡大画素を埋めるかという画素参照情報が格納された画像参照ファイルと、を有し、前記RGB画像データから画素ブロックを切り出し、輝度色差信号データへ変換し、輝度色差信号データを用いて予め登録されているパターンファイル中のパターンとパターンマッチングを行う処理と、前記パターンマッチングにより一致するパターンがある場合、一致したパターンファイルに対応するドット配置ファイルに応じた画像参照ファイルを特定し、特定された画像参照ファイルの画素参照情報に該当するRGB画像データの値によって補正対象画素を拡大して埋め込み、一致するパターンがない場合、入力されたRGB画像データのM×N画素の補正対象画素の値そのもので単純拡大して埋め込む処理とを備えていることを特徴とする。
第4の手段は、第3の手段に係る画像処理プログラムがコンピュータによって読み取られ、実行可能に記録媒体に記録されていることを特徴とする。
【0045】
【発明の実施の形態】
以下、図面を参照し、本発明の実施形態について説明する。
【0046】
<第1の実施形態>
図1は本発明の実施形態に係る画像処理装置の拡大処理を行う処理部の要部を示すブロック図である。同図において、拡大処理部100は、ファイル部110、パターン生成部120、パターン検索部130、及び埋め込み処理部140からなり、ファイル部110にはさらにパターンファイル111、ドット配置ファイル112及び画素参照ファイル113が設けられ、埋め込み処理部140には、埋め込み部141と単純埋め込み部142とが設けられている。
【0047】
前記ドット配置ファイル112には図示しない操作部から整数倍率を指示する指示信号150が入力され、画素参照ファイル113とパターン生成部120には画素ブロックを示す信号160が入力される。パターン検索部130には前記パターン生成部120で生成した信号が入力され、前記パターンファイル111との参照に応じて前記埋め込み処理部140の埋め込み部141または単純埋め込み部142のいずれかの出力をスイッチ170の切り替えにより選択して、埋め込み処理部140から拡大画像を出力するようになっている。なお、埋め込み処理部140には、前記ドット配置ファイル112あるいは画素参照ファイル113からの信号が入力される。
【0048】
パターンファイル111には、後述の図3に示すようなパターンが、ドット配置ファイル112には、整数倍率に応じて後述の図3に示すようなパターンが、画素参照ファイル113には、図3に示すような画素に対応したファイルがそれぞれ格納されている。
【0049】
なお、前記各ファイルは図示しない記憶部に設定され、前記各処理部および各ファイルの制御は図示しないROMに格納されたプログラムにしたがい、前記CPUによって実行される。以下の各実施形態においても同様である。
【0050】
このように大略構成された拡大処理部の処理手順を図2のフローチャートに示す。
【0051】
この処理では、まず、入力された整数倍率に対応するドット配置ファイル112を選択し(ステップ201)、原画からM×N画素ブロックを切り出し、パターンを生成する(ステップ202)。ドット配置ファイル112は図3では8倍の例を示しているが、図1において2倍からZsで示される各整数倍に対応するドッド配置パターンが格納されている。
【0052】
パターン検索部130では生成したパターンがパターンファイル(PAT0からPATx-1の全x個)111中に一致するものがあるか、ないかを検索する。すなわち、x個のパターンPAT0〜PATx-1毎に、どのように注目画素の拡大画素を配置するかの情報であるドット配置ファイル112が整数倍率毎に格納されており、入力された整数倍率150(例えば8倍)により、対応するドット配置ファイル112が1つ選択される(ステップ203)。また、パターンが一致したとき(ステップ204でY)、この結果と整数倍率から、1つのドット配置ファイル112が決まる。さらに、このドット配置ファイル112には、画素ブロックのどの位置の画素情報で拡大画素を埋めるかという画素参照情報が格納されているため、ドット配置情報が決まると同時に、1つの画素参照情報が決まる。そこで、パターンが一致したとき、埋め込み部141でドット配置情報、画素参照情報を選択し(ステップ205)、拡大画素を生成して画素を埋める(ステップ206)。また、非一致のときには、単純埋め込み部142で画素ブロックの注目画素を用いて整数倍率分の画素を埋める(ステップ207)。これを、原画全画素に対して実行する。
【0053】
ここで、図3の説明図を参照し、各ファイルと埋め込みの関係について説明する。
【0054】
パターンファイル111において、各丸記号は、
○:0、●:1、他:白でも黒でもよい(don't care)
を意味する。
【0055】
各パターン毎にドット配置情報が対応している。すなわち、PAT0からPATx-1の各パターンごとに、ドット配置情報が対応しており、図3に示した例では主副走査方向同倍率の8倍のドット配置ファイル112である。ドット配置ファイル112は前述のように装置でサポートする整数倍率毎に保持されている。さらに、同様にx個のパターン情報に1対1で画素参照情報(画素参照ファイル113)が保持されている。そこで、i番目のPATiに注目すると、パターン情報の中心にある注目画素は「白」すなわち「0」である。このことは、ドット配置情報(ドット配置ファイル112)における「0」部を埋めるblt0情報は、パターン情報5×5(M=N=5)の座標(2,2)に位置する原画の画素ブロック値で埋めるという情報を示している。また、blt1情報はドット配置情報の「1」部に相当する画素を同様に(2,3)の値で埋めるという情報を示している。なお、座標(j,k)の原点は、図3のパターンファイルにおける左上であって、blt0及びblt1情報は(0,0)から(4,4)で5×5の25画素に対応している。
【0056】
図4はRGB各画素ブロック5×5の中心である(2,2)の画素を8倍する例である。
RGB原画(第1色空間)から5×5画素ブロックを切り出し,第2色空間へ変換する。この図4の例は、輝度色差信号の輝度データを使う例である。変換の結果、図4(a)に示す原画RGB3ブロックから図4(b)に示す輝度1ブロックが得られる。今、輝度ブロックがパターンファイルPATiと一致したとする。パターンファイルには1つのドット配置パターンと画像参照ファイルblt0,blt1が対応している。5×5の中心1画素は図4(c)に示す最下の8×8画素に拡大される。このとき,拡大R’ブロック○,●の塗り潰しは原画における座標blt0,blt1に相当するデータR0,R1で行なう。G及びBも同様である。
【0057】
前述の様に、パターン検索部130で検索した結果、一致したパターンがある場合、原画の画素ブロックにおいて画素参照情報(画素参照ファイル113)に該当する画素データRGB値でドット配置情報(ドット配置ファイル112)に従って拡大画素を埋める。一致するパターンがないときは、画素ブロック中央の注目画素のRGB値で全拡大画素分を埋める。前者の場合には、埋め込み部141が選択され、後者の場合には単純埋め込み部142が選択され、各部で前記処理を実行する。
【0058】
前記ドット配置情報の作成について、図5のフローチャートを参照して説明する。例えば、図3にある8倍用のドット配置ファイルのみを保持し(基本パターンをセット−ステップ501)、ファイル部110ではこの基本パターンから、幅8画素×高さ(8画素×x個)画素のイメージ:0→0、1→255とし、B/W8bitに変換する(ステップ502)。幅、または高さをサポートする整数倍率に相当する画素値で線形補間し(ステップ503)、2値化を行う(ステップ504)。最後に、0→0、255→1への逆変換で他の整数倍率用パターンを生成し、拡大に使用する。
【0059】
パターン生成部120におけるパターンの生成は、以下のようにして行われる。すなわち、RGBから輝度、色相、彩度への変換例としてHSV、HLSなどのカラーモデルがあり、輝度・色差信号への変換例としてYIQ、YUVなどのカラーモデルが知られている。ここで、HSV色空間を例に挙げ説明する。この色空間では色相H:0〜360°、彩度S:0〜1の値を取る。したがって、色相の場合、M=N=5の25画素から、Hの最大値、最小値を求め、その平均値でM×N画素ブロックを2値化し、パターンを生成する。彩度や他の要素についても同様である。
【0060】
YIQ各プレーンの場合も同様に、各プレーン毎に最大値、最小値、その平均値を求め、平均値で2値化し、パターンを生成後にパターンマッチングを行う。なお、このRGBからHSV,HLSなどへの変換の手法や、YIQ、YUVなどへの変換の手法などは、例えば、今宮淳美訳「コンピュータ・グラフィクス」(日本コンピュータ協会昭和59年7月15日発行)の第622頁ないし第629頁に詳しく述べてあるので、ここでの説明は省略する。また、パターン検索部130におけるパターン検索のハードウエアによる方法としては特開平7−221977号公報に一つの例が開示されている。
【0061】
このパターンマッチングを、プリンタドライバに組み込んでPC上で実行させるときは、ソフトウエアによる高速化を図る必要がある。すなわち、MとNのブロックサイズが大きくなると、検索の計算負荷が増大する。また、図3のパターン情報を見ると、「0」、「1」のどちらでも良いdon't careが存在するため、M×N画素の全画素を2進数化し、検索すると膨大なメモリが必要となる。そこで、図6の説明図に示すように、M×N画素ブロックを複数に分ける。この図6では2分割した例を挙げた。この図6を参照しながら説明する。
【0062】
すなわち、M=N=5画素ブロックから太枠で示した3×3の9画素=9bitを用いて、2byteコードを生成する。前述の図3におけるPATiはdon't careを考慮し、
2進数:001001111→10進数:79、
2進数:101001111→10進数:335
となる。x個全パターンの2byteコードを生成する。当然、図7に示すように1つの2byteコードに複数のパターンが存在することもある。この9画素の情報により、多くのパターンの中から絞込みが行える(同図中のPAT番号欄)。次に、残りの16画素の情報を用いて、1つのパターンを決定する。
【0063】
この残りの16画素の情報を用いて1つのパターンを決定する場合には、図7に示したように中央の9画素からパターンの候補が絞られる。例えば、10進数で79のときはPAT9,PAT24の2つのパターンに絞られることになる。そこで、残り16画素からPAT9及びPAT24、それ以外を決定する。このとき、パターンは絞られているから、残り16画素を1画素ずつ一致、不一致で調べる必要はない。すなわち、PAT9における周囲画素でdon't care以外の特徴ある画素のみを参照すれば済む。例えば、PATiのときは、(3,0)が○であるか否かで決まる。この様に、周囲の特徴画素をパターン毎に登録しておき、参照することで高速化が図れる。途中、不一致となった場合は、以降の画素の検索を終える。他に、中央の9画素同様、パターンマッチングを取る手法もある。
【0064】
<第2の実施形態>
以下、図面を参照して本発明の実施の形態を説明する。図8は本発明に係るカラー画像処理装置の一実施形態を示すブロック図、図9は図8のM×Nバッファの構成を示す説明図、図10は図8の2値化部の処理例を示す説明図、図11は図8の埋め込み部の埋め込み処理を示す説明図、図12は図8のカラー画像処理装置のスムージング拡大処理手順を示すフローチャートである。
【0065】
図8において、RGB/YIQ変換部801は入力画像であるRGBデータを明るさ成分と色成分に変換し、ここでは次式(1)
【数1】

Figure 0004115073
により多値のYIQ信号に変換する。YIQ信号はNTSC方式のテレビジョンに順する輝度信号(明るさ成分)Yと色差信号(色成分)I、Qにより構成され、輝度信号YはM×Nバッファ2に印加され、色差信号I、Qは色成分拡大部7に印加される。なお、他の明るさ成分と色成分として、PAL方式のYUV(明るさ成分Y、色成分U、V)や、均等色空間CIELAB、CIELUV(明るさ成分L*、色成分a*、b*又はu*、v*)や、三刺激値XYZ(明るさ成分Y、色成分X、Y)を用いてもよい。
【0066】
M×Nバッファ2は例えば図9に示すように、RGB/YIQ変換部1により変換された多値の輝度信号Yの5×5画素分(中心画素「*」が注目画素)を一時記憶する。2値化部3はM×Nバッファ2に記憶されている5×5画素の輝度信号Yの最大値maxと最小値minを抽出して次式(2)
th=(max+min)/2 …(2)
のように2値化用閾値thを算出し、この閾値thにより例えば5×5画素の多値輝度信号Yを2値化濃度データに変換する(Y>thの場合に2値化濃度データ=0、他の場合に2値化濃度データ=1)。
【0067】
したがって、例えば図10(a)に示すように5×5画素の領域において左上に高輝度画素(低濃度画素)が分布し、右下に低輝度画素(高濃度画素)が分布する場合には、図10(b)に示すように左上に2値化濃度データ=0が分布し、右下に2値化濃度データ=1が分布する2値化濃度データに変換される。
【0068】
パターンマッチング処理部4は2値化部3により変換された2値化濃度データと、例えば図11(a)に示すようにパターン記憶部5に予め記憶されている5×5画素の2値化濃度データの複数のパターンとマッチングして、ジャギーが発生するエッジ等か否かを示す一致/不一致信号を出力する。なお、図11(a)における「−」は「0」、「1」を問わない(don't care)ことを示し、また、図11(b)は縦8倍×横8倍の拡大時の埋め込み処理を示している。
【0069】
埋め込み部806はパターンマッチング処理部4によりマッチングが「不一致」の場合に単純埋め込み部4−1による処理を選択し、他方、「一致」の場合にテンプレート埋め込み部806−2及びテンプレート記憶部806−3による処理を選択して、倍率演算部810により指定された整数倍率に応じて2値化濃度データを拡大する。単純埋め込み部806−1は図11(a),(b)の上側に示すように、拡大後の例えば8×8画素に対しては全て注目画素の2値化濃度データ=1を埋め込む。
【0070】
テンプレート埋め込み部806−2はテンプレート記憶部806−3に記憶されている2値テンプレートに基づいてジャギーが発生しないように2値濃度データの埋め込みを行い、例えば図11(a),(b)の下側に示す図面は、右上コーナー部を白画素(2値化濃度データ=0)で埋め込むことを示している。このとき、図11(b)における2値化濃度データ=1は注目画素の2値化データで埋め込み、2値化濃度データ=0の画素については、注目画素に隣接する5×5画素における画素〔1〕、〔2〕、〔3〕に該当する2値化濃度データで埋め込む(単純に画素〔1〕で埋め込むなど)。なお、この隣接画素からどのデータを活用して埋め込むかは、予めパターン毎に決められている。
【0071】
色成分拡大部807はRGB/YIQ変換部801により変換された多値の色差信号I、Qを倍率演算部810により指定された整数倍率に応じて、例えばニアレストネイバー法やバイリニア法のような公知の拡大方法で拡大する。YIQ/RGB変換部808は埋め込み部806により拡大された2値化濃度信号及び色成分拡大部807により拡大された色差信号I、Qと式(1)により、元のRGB信号に逆変換してこれを端数変倍部809に印加する。
【0072】
ここで、入力倍率zoomは整数倍とは限らない。そこで、倍率演算部810は入力倍率zoomに基づいて次式(3)、(4)
zoom1=INT(zoom+0.5) …(3)
zoom2=zoom/zoom1 …(4)
により整数倍率zoom1と端数倍率zoom2を演算し、整数倍率zoom1を埋め込み部806および色成分拡大部807に印加し、また、端数倍率zoom2を端数変倍部9に印加する。例えば指定倍率または指定画像サイズに基づいて8.33倍が与えられた場合、zoom1=8、zoom2=1.041となる。端数変倍部809はYIQ/RGB変換部808により変換されたRGB信号をこの端数倍率zoom2に応じてニアレストネイバー法(後述)で拡大する。
【0073】
次に図12を参照してスムージング拡大処理手順について説明する。この処理では、まず、倍率演算部810により入力倍率zoomから整数倍率zoom1と端数倍率zoom2を算出し(ステップ1201)、次いで整数倍率zoom1に相当するテンプレートをテンプレート記憶部806−3からテンプレート埋め込み部806−2にセットし(ステップ1202)、次いで端数倍率zoom2を端数変倍部809にセットする(ステップ1203)。次いで全画像の処理が終了した場合にはこのスムージング拡大処理を終了し、全画像の処理が終了していない場合にはステップ1204からステップ1205に進む。
【0074】
ステップ1205ではバンド処理が終了した場合には端数変倍処理を行い(ステップ1206)、次いでステップ1204に戻る。ステップ1205においてバンド処理が終了していない場合にはステップ1207に進む。ここで、「バンド処理」とは、対象画素を縦方向に分割して処理することである。ステップ1207では明るさ成分(2値化濃度データ)の拡大処理が終了している場合には色成分(色差信号I、Q)の拡大処理を行い(ステップ1208)、次いでステップ1205に戻る。
【0075】
ステップ1207において明るさ成分(2値化濃度データ)の拡大処理が終了していない場合には、RGB/YIQ変換部801によりRGB信号をYIQ信号に変換してY信号をM×Nバッファ802に保持し(ステップ1209)、次いで2値化部803によりM×N画素のY信号に基づいて2値化用閾値thを算出し(ステップ1210)、この閾値thによりM×N画素のY信号を2値化濃度データに変換する(ステップ1211)。
【0076】
次いでパターンマッチング処理部4によりマッチング処理を行い(ステップ1212)、次いでマッチング処理結果が「一致」の場合には一致したパターンに対応したテンプレートを参照して画素データを埋め込み(ステップ1213→1214)、「不一致」の場合には注目画素データを埋め込む(ステップ1213→1215)。次いでステップ1207に戻って明るさ成分(2値化濃度データ)の拡大処理が終了するまでステップ1209〜1215における処理を繰り返す。
【0077】
<第3の実施形態>
図13は輝度信号YをT(>2の整数)値化を行ってスムージング拡大処理を行う第3の実施形態の構成を示している。この実施形態は図8に示した第2の実施形態に対して2値化部803をT値化部803aに変更し、埋め込み部806の後段に合成部811を付加したもので、その他の構成は図8に示した第2の実施形態と同等に構成されている。
【0078】
図13に示すT値化部803aは、M×Nバッファ802に記憶されている5×5画素の輝度信号Yの最大値maxと最小値minを抽出して次式
th(T−1)={t×max+(T−t)×min}/T …(5)
但し、t=T−1,…,1
により(T−1)個のT値化用閾値th(T−1)を算出し、これにより輝度信号YをT値化濃度データに変換する。
【0079】
図14はT値化の例として3値化処理を示している。図14(a)に示すように5×5画素の輝度信号Yが
max=240
min=60
の場合には、高輝度(低濃度)側の閾値
th1=180、
低輝度(高濃度)側の閾値
th2=120
となる。次いで3値化を行ってY>th1の場合に「0」、Y≦th1の場合に「1」とすると図14(b)に示す濃度データとなり、また、次いでY>th2の場合に「0」、Y≦th2の場合に「1」とすると図14(c)に示す濃度データとなる。
【0080】
ここで、注目画素が閾値th1、th2毎にパターンと一致する組み合わせは、
(1)0,0
(2)0,1
(3)1,0
(4)1,1
の4通り(1)〜(4)である。そこで、上記(1)の場合には双方ともに「不一致」であるので「単純埋め込み処理」を実行し、上記(2)、(3)の場合には「一致」であるので、対応するテンプレートを基づいて「テンプレート埋め込み処理」を実行する。上記(4)の場合にはパターンマッチング処理を2回行って合成部11により埋め込みデータを合成する。合成処理については、低濃度(高輝度)画素から埋め込み、閾値th2に対応する高濃度側では「1」の画素のみをオーバライトする。これにより、図15に示すような拡大画素において3種類の明るさを処理することができるので、影付き文字についても高画質で拡大処理することができる。
【0081】
次に図16を参照して第3の実施形態におけるスムージング拡大処理手順について説明する。まず、ステップ1601〜1609における処理は、第2の実施形態における図12のフローチャートのステップ1201〜1209における処理と同じである。次いでT値化部803aによりM×N画素のY信号に基づいて閾値thを算出し(ステップ1610)、この閾値thによりY信号をT値化濃度データに変換する(ステップ1611)。
【0082】
次いでステップ1612において(T−1)回のパターンマッチング処理が終了していない場合にステップ1613以下に進み、終了している場合にステップ1617に進む。ステップ1613以下ではまず、パターンマッチング処理部804によりマッチング処理を行い(ステップ1613)、次いでマッチング処理結果が「一致」の場合には一致したパターンに対応したテンプレートを参照して画素データを埋め込み(ステップ1614→1615)、「不一致」の場合には注目画素データを一時的に埋め込む(ステップ1614→1616)。次いでステップ1612に戻って(T−1)回のパターンマッチング処理が終了するまでステップ1613〜1615における処理を繰り返す。そして、(T−1)回のパターンマッチング処理が終了すると合成処理を行い(ステップ1617)、ステップ1607に戻る。
【0083】
次にニアレストネイバー法とバイリニア法について説明する。ニアレストネイバー法は、例えば図17(a)に示すような4×4画素における注目画素「*」は4角の画素a、b、c、d中の最も近い画素(この例では画素a)のデータで埋める方法である。バイリニア法は例えば図17(b)に示すような4×4画素における注目画素「*」は4角の画素a、b、c、dと注目画素「*」の重みi、jに基づいて埋める方法である。例えば、図17(b)の例では、
*=(i−1)・(j−1)・a+i・(j−1)・b+(i−1)・j・c+i・j・d
というようにして埋めるものである。なお、バイリニア方法の詳細は図31を参照して後述する。
【0084】
また、この実施形態で説明した処理は、デジタルカメラの画像を高解像度化して大画像をプリントする場合に、転送時間を節約するため送り側コンピュータで単純に間引いて相手先のプリンタやコンピュータに直接又はネットワークを介して転送し、相手先のプリンタ内のコントローラや相手先のコンピュータのソフトウエアによりスムージング拡大処理する場合にも適用することができる。
【0085】
<第4の実施形態>
図18は第4の実施形態に係る画像処理装置の構成を示すブロック図である。
【0086】
同図において、画処理装置は、RGBの原画像データが入力されるM×N画素ブロック抽出部1801と、抽出された画素ブロックが入力される第1の色空データ変換部1802と、第1の色空間データ変換部1802で変換された色空間データが入力される第1ないし第4の拡大手段1803,1804,1805,1806と、第1ないし第4の拡大手段1803,1804,1805,1806のいずれかの出力を選択する選択部1807と、選択部1807で選択されたデータをさらに変換する第2の色空間データ変換部1808と、抽出された前記M×N画素ブロックから注目画素に関する特徴量を算出し、その特徴量に応じて前記選択部1807を介して拡大手段1803〜1806を選択させる特徴部算出部1809とから構成されている。
【0087】
このように構成された画像処理装置の動作は図19のフローチャートに示すようになる。すなわち、M×N画素ブロック抽出部1801で入力されたRGBの原画像データからM×Nの画素ブロックを抽出し(ステップ1901)、異なる拡大方法をとる第1ないし第4の拡大手段1803〜1806への入力となる各色空間データへ、第1の色空間データ変換部1802で変換する(ステップ1902)。特徴量算出部1809では、前述のようにM×N画素ブロック1801から特徴量を算出し(ステップ1903)、拡大に適した拡大方法を第1ないし第4の拡大手段1803〜1806から1つ選択し(ステップ1904)、注目画素を拡大する。その後、第2の色空間データ変換部1808で所望の色空間データへと変換する(ステップ1905)。この処理を全画素で繰り返す。
【0088】
すなわち、この実施形態では、まず第1工程で、M×N画素ブロック抽出部1801で入力されたRGBの原画像データからM×Nの画素ブロックを抽出し、第2工程で、異なる拡大方法をとる第1ないし第4の拡大手段1803〜1806への入力となる各色空間データへ、第1の色空間データ変換部1802で変換する。一方、第3工程でM×N画素ブロック抽出部1801から特徴量を算出し、第4工程で、拡大に適した拡大手段を第1ないし拡大手段1803〜1806から1つ選択して注目画素を拡大する。その後、第5工程で第2の色空間データ変換部1808で所望の色空間データへと変換して出力する。
【0089】
なお、この実施形態は、本発明の最も基本的な動作原理の一例を示すもので、第1ないし第4の拡大手段1803〜1806としては、第5の実施形態において詳述するようにRGBデータを拡大する機能を有するものや、RGBデータをRGB多値データに拡大する機能を有するものなどが採用され、特徴量に応じて処理するに適した拡大手段1803〜1806が適宜設定され、用意される。
【0090】
特徴量としては、例えばM×N画素ブロックの最大値と最小値の差などが使用される。また、選択部1807における選択も、後述の第5の実施形態で詳述するような色数、色相などに応じて設定された拡大法が前記特徴量に基づいて選択される。
【0091】
<第5の実施形態>
第5の実施形態に係る画像処理装置の構成を図20のブロック図に示す。この実施形態は、RGB色空間、YIQ色空間(輝度・色差信号、他にYUV信号など、これに準じる信号を指す)のデータを拡大する複数の拡大手段を持つ例である。
【0092】
同図において、第5の実施形態に係る画像処理装置は、RGB画像データが入力され、M×Nの画素ブロックを抽出するRGB:M×N画素ブロック抽出部2001、このM×N画素ブロック抽出部2001からの画像データに基づいて画像の特徴量を算出する画像特徴量算出部2002、RGB原画像データが入力されRGBデータからYIQデータに変換するRGB/YIQ変換部2003、このRGB/YIQ変換部2003で変換されたYIQデータから輝度Yに関するM×N画素ブロックを抽出する輝度Y:M×N画素ブロック抽出部2004、RGB:M×N画素ブロック抽出部2001からのデータと輝度Y:M×N画素ブロック2004からのデータが入力される整数倍拡大部2005、前記画像特徴量算出部2002での算出結果に応じて整数倍拡大部2005の第1〜第4の拡大手段20051,20052,20053,20054を選択する選択部2006、整数倍率による拡大画像の大きさを所望の拡大画像の大きさに整形する情報を生成し、整形を行う整形部2007、整形部2007に選択部2006の選択に応じてYIQ/RGB変換データを変換して入力するYIQ/RGB変換部2008、および画像サイズと倍率とから拡大する整数倍率を算出し、整数倍拡大部2005と整形部2007とに倍率を出力する整数倍率算出部2009から構成されている。
なお、拡大部、特徴量、整数倍率算出部、および整形部については後述する。
【0093】
このように構成された画像処理装置の処理手順を図21のフローチャートに示す。この処理では、まず、整数倍率算出部2009で入力された画像サイズと倍率とに基づいて拡大する整数倍率を算出し(ステップ2101)、整形部2007で所望の大きさにする情報を生成する(ステップ2102)。次いで、RGB原画像をYIQデータに変換する(ステップ2103)。この変換はRGB/YIQ変換部2003で行なわれる。そして、注目画素を囲むM×N画素ブロックから特徴量を算出し(ステップ2105)、算出した特徴量に基づいて第1ないし第4の拡大手段20051〜20054から1つの拡大手段を選択する(ステップ2106)。拡大手段が選択されると、その選択した拡大手段によって注目画素を拡大し(ステップ2107)、YIQ空間からRGB空間への変換が必要かどうかをチェックし(ステップ2108)、変換が必要であれば、YIQ/RGB変換部2008で前記変換を実行し(ステップ2109)、不要であれば、直接、整形が必要かどうかをチェックする(ステップ2110)。このチェックで整形が必要であれば、整形を実行し(後述)、不要であれば整形を行なわないでステップ2104で全画素に対してステップ2105からステップ2111までの処理が終了したかどうかを確認する。そして、全画素に対して前記処理が終わった時点で拡大処理を終える。
【0094】
この実施形態において、前記整数倍拡大部2005は、前述のように第1ないし第4の拡大手段20051〜20054を備えている。第1の拡大手段20051はRGBデータを拡大する機能を備えており、例えば、前述のニアレストネイバー法、バイリニア法などが使用できる。第2の拡大手段20052はYIQデータを拡大する機能を備え、輝度データ拡大部200521と色差データ拡大部200522とを有し、輝度信号(Yデータ)に対しては輝度データ拡大部200521でバイリニア法が適用され、色差信号(I,Qデータ)に対しては色差データ拡大部20522でアレストネイバー法が適用される。第3の拡大手段20053はRGBデータをRGB多値データに拡大する機能を備えており、例えば、特開平7−221976号公報あるいは特開平7−221977号公報に開示された方法が採用される。また、第4の拡大手段20054はRGBデータを拡大する機能、例えば第3の拡大手段20053を変形した拡大機能を備えている。このような拡大手段によって当該拡大手段が有する拡大機能に応じて必要な画像データが入力される。なお、このような種々の拡大機能は画像の状態や色空間の種類など応じて公知の手法が適用され、組み合わされる。前述の拡大手段の機能はその一例である。
【0095】
前述の図20のブロック図および図21のフローチャートから分かるように、整数倍率算出部2009では、入出力画像サイズ、倍率などの情報から整数倍率を算出し、特徴算出部2002では、抽出された画素ブロックから、拡大手段の選択に必要な特徴情報を算出する。そして、整数倍拡大部2005で算出された特徴情報を基に、1つの拡大手段を拡大手段選択部2006で選択する。そして、選択された注目画素を整数倍拡大する。
【0096】
整形部2007では整数倍率による拡大画像の大きさを所望する拡大画像の大きさに整形する情報を生成し、整形を行う。
【0097】
整数倍拡大部2005における拡大手段の選択例の処理手順を図22、図23及び図24のフローチャートに示す。この選択は特徴量算出部2002における色数/色相の検出部20021と画素の連結情報生成部20022における算出結果に応じて行われる。この実施形態は最大色数が4であり、図22ないし図24のフローチャートはこの色数を前提としている。この内、図22は色数、図23はは色数と色相、図24は色数、色相、画素の連結情報による選択例である。これにより、複数ある拡大手段20051〜20054から1つの拡大手段が選択される。
【0098】
具体的には、図22のフローチャートでは、まず、色数が1であれば(ステップ2201でY)選択部2006のSW0がオンになり、第1の拡大手段20051からのRGBデータが整形部2007に入力される。色数が2であれば(ステップ2202でY)、選択部2006のSW1がオンになり第3の拡大手段20053からのRGBデータと輝度データ(Yデータ)が整形部2007に入力される。色数が3であれば(ステップ2203でY)、選択部2006のSW2がオンになり、第4の拡大手段20054からのRGBデータと輝度データ(Yデータ)が整形部2007に入力される。色数が4であれば(ステップ2203でN)、選択部2006のSW3がオンになり、第2の拡大手段20052からの輝度データ(Yデータ)と色差データ(Iデータ及びQデータ)が選択され、YIQ/RGB変換部2008でRGBデータに変換した上で、整形部2007に入力される。なお、ステップ2203の判定で色数が3でなければ、SW3がオンになり第2の拡大手段20052が選択される。
【0099】
このように処理すると、色数のみの少ない特徴情報で複数の拡大法を選択し、ジャギー低減と共に画素の拡大を行うことができる。
【0100】
図23のフローチャートでは、色数が1であれば(ステップ2301でY)選択部2006のSW0がオンになり、第1の拡大手段20051からのRGBデータが整形部2007に入力される。色数が2であれば(ステップ2302でY)、選択部2006のSW1がオンになり第3の拡大手段20053からのRGBデータと輝度データ(Yデータ)が整形部2007に入力される。色数が3であれば(ステップ2303でY)、さらに全色相が一致するかまたは類似するかをチェックし(ステップ2304)、一致または類似すればSW3をオンし、一致も類似もしなければSW1をオンにする。色数が4であれば(ステップ2305でY)、さらに全色相が一致するかまたは類似するかを調べ、一致または類似すればSW3をオンし、一致も類似もしなければSW1をオンにする。ステップ2305の判定で色数が4でなければ、SW3をオンする。なお、この図23のフローチャートで選択されたSWは図20のブロック図に示した拡大手段20051〜20054を選択して整形部2007に入力する。
【0101】
このように処理すると、色数と色相の組み合わせにより、アンチエイリアシング文字/線画に対してもジャギー低減と共に拡大ができる。
【0102】
図24のフローチャートでは、色数が1であれば(ステップ2401でY)選択部2006のSW0がオンになり、第1の拡大手段20051からのRGBデータが整形部2007に入力される。色数が2であれば(ステップ2402)、選択部2006のSW1がオンになり第3の拡大手段20053からのRGBデータと輝度データ(Yデータ)が整形部2007に入力される。色数が3であれば(ステップ2403でY)、さらに全色相が一致するかまたは類似するかをチェックし(ステップ2404)、一致も類似もしなければSW1をオンにし、一致または類似すれば、後述の画素の連結情報を生成する(ステップ2405)。画素の連結情報は特徴量算出部2002で生成される。そして、生成された画素の連結情報から連結ありと判断されれば、SW2をオンし、連結なしと判断されればSW3をオンする。また、色数が4であれば(ステップ2407でY)、さらに全色相が一致するかまたは類似するかを判断し(ステップ2408)、一致または類似すればSW3をオンし、一致も類似もしなければSW1をオンにする。ステップ2407の判定で色数が4でなければ、SW3をオンする。なお、この図24のフローチャートで選択されたSWは図20のブロック図に示した拡大手段20051〜20054を選択して整形部2007に入力する。
【0103】
なお、色数が1の場合は、例えば第1の拡大手段20051は、図28に示すように、RGB1画素を整数倍率Zsに応じて単純に拡大する。単純に拡大するとは、例えば、Zs=3のとき、Zs×Zs画素全ての値を原画その値で埋めるという単純に拡大する手法である。
【0104】
このように処理すると、色数と色相、画素の連結の組み合わせにより、アンチエイリアシング文字/線画、さらに影付き文字/線画に対してもジャギー低減と共に画素の拡大を行うことができる。
【0105】
ステップ2405における画素の連結情報の生成は以下のようにして行われる。すなわち、図25に示すように、注目画素*を囲むM×N画素(図では5×5画素)において、輝度データで画素の連結判定が行われる。輝度のM×N画素は色数=3、つまり、輝度は最大値Ymax、最小値Ymin、中央値Ymidで構成されている。そこで、Ymid値と一致する画素を1、それ以外を0とすれば、Ymidの連結情報が得られる。図25に示した例では、縦に1画素の繋がりがある例である。また、幅2画素、かつ、2連結で連結ありとしてもよい。
【0106】
図26は整数倍率算出部2009の動作を説明するための説明図である。整数倍率算出部2009では、所望する整数倍率を予め2〜Zmax(倍)と設定しておく。 ここでは、簡単のため主副同倍率での例で説明する。
【0107】
入力X方向(主走査方向)画素数をXin、出力X方向画素数をXout、また、入力倍率を Zinとしたとき、入力倍率は、
Zin=Xout/Xin
であり、この値は2〜Zmax間にある。このとき、図26に示す階段特性により整数倍率Zsを算出する。また、特性を±0.5とずらしても良い。このZsの倍率に応じて整数倍拡大部は拡大を行う。この例では、倍率Zが、
2.5≦Z<3.5
のとき、
Zs=3
として算出され、この整数倍率「3」が整数倍拡大部305と整形部307に出力される。
【0108】
図27は整形部2007の動作について説明するための説明図である。整形部2007では、図26に示した整数倍率算出部2009の特性から、例えば
2.5倍≦Zin<3.0倍 → 間引き
Zin=3.0倍 → 整形なし:整数拡大そのまま
3.0倍<Zin<3.5倍 → 追加
の情報が既知である。よって、間引き、追加の整形を要する場合の画素数Spixは、
Spix=Xin×|Zin−Zs|
となり、整形ピッチpitは、
pit=Zs/|Zin−Zs|
で求めることができる。そして、拡大した画素をカウントしていき、整形ピッチpitの整数値と一致 したとき、間引き、あるいは追加を行う。一致後、整形ピッチpitは自らの値を加算する。
【0109】
図27は倍率が3近辺の時を示している。Zin=3は整形なしで1画素が3×3画素に拡大された例である(図27(a))。間引きのときは、図27(b)で点線でに示すように
1:縦3画素
2:横3画素
3:縦横3画素
がそれぞれ間引かれる。追加の場合は、図27(c)に示すように斜線部に当たる部分を、
1:左画素の値を単純にコピーして埋める。
2:上画素の値を単純にコピーして埋める。
3:左画素の値をコピーして埋め、さらに上画素の値をコピーして埋める。
というようにして追加を行う。これによりジャギーの低減を図ることができる。
【0110】
このように整数倍率拡大部2005のいずれかの拡大手段20051〜20054によって整数倍率で拡大された画像を整形部2007で所望の大きさに合わせるので、整数倍された拡大画像をジャギー低減の効果を失うことなく、所望する任意のサイズに変形することができる。また、エッジ部の色ずれも起こらない。
【0111】
<第6の実施形態>
この実施形態は、従来において拡大後のデータを2値化し、2値化前のデータと加算合成する工程が必要であり、処理の高速化に対応できていなかったことに鑑み、更に高速な処理を実現できるように構成したものである。
【0112】
この第6の実施形態に係る画像処理装置の構成を図29のブロック図に、この画像処理装置の処理手順を図30のフローチャートにそれぞれ示す。
【0113】
図29において、画像処理装置は、拡大部2901と、強調処理部2902と、特徴情報算出部2903とからなり、拡大対象である画像から、注目画素*を囲むM×N画素ブロックが拡大部2901と特徴情報算出部2903に入力され、同ブロックの特徴を示す特徴情報を特徴情報算出部2903で算出し(ステップ3001)、また、拡大部2901で注目画素はP×Q画素ブロックに拡大され(ステップ3002)、特徴情報に応じて、強調処理部2902で全画素P×Qの強調処理が行われる(ステップ3003)。注目画素を1画素毎にずらしていき、この処理を全画素分繰り返す。
【0114】
このように処理すると、注目画素を含む画素ブロックから特徴情報を算出し、注目画素を拡大した後、前記特徴情報に応じた変換を行うので、低解像度画像の拡大において、鮮鋭度を保持し、ジャギー低減を実現できる。
【0115】
拡大部2901においては線形補間法による拡大を行う。この線形補間法として一般に知られているバイリニア法に前にも簡単に触れているが、さらに詳しく図31を用いて説明する。
【0116】
図31に示すように、例えばM=N=3とする3×3画素ブロックがP0〜P8で与えられ、注目画素がP4であり、この注目画素P4が、例えば4倍に拡大される場合(P=Q=4)、拡大後の画素PxはP400〜P433の16画素となる。16画素の補間の際、P0〜 P8のうち、どの画素を用いて補間するのかは、
P400、P401、P410、P411については、P0、P1、P3、P4、
P402、P403、P412、P413については、P1、P2、P4、P5、
P420、P421、P430、P431については、P3、P4、P6、P7、
P422、P423、P432、P433については、P4、P5、P7、P8、
のそれぞれ4点を使用し、拡大後の画素は、この4点と、その距離i、jを重みとする係数a、b、c、dから線形式
P400=(1−i)(1−j)P0/a+i(1−j)P1/b+(1−i)jP3/c+ij/dP4・・・(6)
で算出される。
【0117】
他の拡大法としてはバイキュービック法などがある。バイキュービック法はバイリニア法より高画質が得られるが、計算負荷が高い。なお、このバイキュービック法自体は公知なので、ここでの説明は省略する。
【0118】
特徴情報算出部2903では、M×N画素ブロック内の最大値Max、最小値Minを抽出し、その差分
Range=Max−Min
を算出し、この差分Rangeを特徴情報とする。
【0119】
このように特徴情報が画素ブロックにおける最大値と最小値の差分なので、各ブロックにおけるこれらの情報を用いることにより、ブロック単位に的確な強調処理を掛けることができる。
【0120】
強調処理部2902では、図32のフローチャートに示すように拡大部2901で拡大した全画素Pxを特徴量により正規化する。そして、正規化後の画素データPx'を
Px'=(Px−Min)/Range ・・・(7)
で求める(ステップ3201)。
【0121】
次いで、特徴情報である差分Rangeに応じて、変換特性(後述)を生成し(ステップ3202)、Px‘を変換しPx“を得る(ステップ3203)。さらに、
Pxout=Px“×Range+Min ・・・(8)
で逆正規化を行い、拡大後の強調データPxoutを求める(ステップ3204)。
【0122】
この強調処理部2902の変換特性は図33のようになる。すなわち、入出力は共に正規化された値なので縦軸、横軸共に0〜1のレンジを取る。特徴情報Rangeの大きさにより、図33(a)から(c)へと変換特性を適応的に生成する。
【0123】
Rangeが小さいときは図33(a)に示すようなスルー特性
Px“=Px‘ ・・・(9)
で変換し、大きいときは図33(c)に示すような
Figure 0004115073
という2値特性で変換する。中間的な変換特性は図33(b)に示すようなものとなる。
【0124】
可変の仕方はRangeと対応させて、予め関数を定義する方法と何段階か特性を用意し、Rangeの値に応じて1つ選択する方法がある。前者の方法では無段階特性が実現できる。
【0125】
関数の一例:
0≦Px‘<0.5のときPx“=(−0.6×Range+1)×Px’
それ以外
Px“=(−0.6×Range+1)×Px’+0.6*Range・・・(11)
このように、Rangeの大きさと対応付けを行っておく。
【0126】
また、例で挙げた0.5のしきい値、及び、直線0−t1、直線t2−t3の傾きをRangeに応じて可変することも可能である。
【0127】
他に、何段階か特性を用意し、Rangeの値に応じて1つ選択する方法としては、例えば 大中小の3つに分類し、小:図33(a)、中:図33(b)、大:図33(c)を選択するように設定しておくことで実現できる。Rangeを細かくしていくと、当然ながら、無段階の関数定義に近づく。
【0128】
前記拡大部2901では、このようにして生成された変換特性で拡大画素を変換するので、特徴情報に応じて、適応的に強調処理が行え、鮮鋭度を落とすことなく画像データを拡大することができる。
【0129】
本実施形態によれば、変換時に使用する複数の変換テーブルを備え、特徴情報に応じて1つの変換テーブルを選択し、選択された変換テーブルに基づいて拡大した画素を変換するので、強調処理を行う際に、高速で処理することが可能になる。
【0130】
<第7の実施形態>
この実施形態は、輝度信号と色差信号を使用して拡大処理を行なう例である。
【0131】
この実施形態に係る画像処理装置は、拡大部3401、強調処理部3402及び特徴情報算出部3403からなり、前記拡大部3401はさらに、Y信号拡大部34011とI,Q信号拡大部34012とからなる。
【0132】
Y信号拡大部34011には、輝度Y信号(以下、「Y信号」と称す。)の注目画素*を囲むM×N画素ブロック(図34では、3×3)が入力され、拡大される。I,Q信号拡大部17012には、色差I、Q信号(以下、「I信号、Q信号」と称する。)が入力され、同様に拡大される。
【0133】
このときの処理手順を図35のフローチャートに示す。すなわち、この処理では、まず、Y信号M×N画素ブロックから特徴情報算出部3403で特徴情報を算出する(ステップ3501)。特徴情報は、
・最大値Ymax
・最小値Ymin
・差Yrange=Ymax−Ymin
の3つの情報である。
【0134】
そして、算出した特徴情報を強調処理部3402にセットし、Y信号を拡大する(ステップ3503)。次いで、拡大したY信号を強調処理し(ステップ3504)、I,Q信号を拡大する(ステップ3505)。
【0135】
YIQ信号の拡大については、
1)Y信号、I、Q信号について線形補間法(例:バイリニア法など)を使用する。
2)Y信号について線形補間法(例:バイリニア法など)によって拡大し、I、Q信号については単純拡大法(同じ値でコピーする)を使用する。
などの方法がある。
【0136】
その際、Y信号の拡大法が線形補間法であり、かつ、注目画素の拡大倍率が固定であるとき、図31における重み係数i、j(図では16画素毎の4つの重み係数)は定数となる。つまり、i、jを毎回計算する必要はない。
【0137】
また、拡大部3401で拡大する倍率が例えば2〜15倍(ここでは主走査、副走査方向は同倍率とする)である場合は、図36に示すように拡大部3401に対して重み係数設定部3404で前記倍率間の整数倍に当たる重み係数を予め算出しておき、倍率の入力に応じて、拡大部3401に重み係数をセットして拡大するようにすれば処理の高速化を図ることができる。
【0138】
この実施形態によれば、画像情報は輝度・色差信号であり、前記拡大部3401における輝度信号の拡大は線形補間によって行われ、特徴情報算出部3403では特徴情報が輝度信号(Y信号)から生成され、前記特徴情報に応じた変換は、拡大後の輝度信号に対して行うので、輝度、色差信号による拡大で色ずれが発生することはない。また、強調処理部3402における強調処理は輝度信号のみで行うため、高速で処理することができる。
【0139】
【発明の効果】
本発明は、以上に説明したように構成されているので、フルカラー画像について高速に任意の整数倍率の拡大が実現できる。
【0141】
請求項3記載の発明によれば、原画である第1色空間データから画素ブロックを切り出し、異なる第2色の空間データへ変換し、第2色空間データを用いてパターンマッチングを行うとともに、パターン毎にパターン内のどの画素情報で拡大した画素を埋めるかの情報を有し、この情報と一致する第1色空間の画素データを用いて拡大画素を埋めるので、入力色空間が例えばRGBの場合、RGB各プレーンでパターンマッチングを行うと色ずれが生じるが、適した色空間へ変換することで、この色ずれを防止することができる。
【0142】
請求項4記載の発明によれば、第2色空間データは輝度(=明度)、色相、彩度の3要素を表す色空間であり、パターンマッチングは前記3要素のうちの少なくとも1つの要素を用いて行うので、画素ブロック内の色相が異なる2色で塗りつぶされているとき、色相1プレーンで2色を分離できる。また、同色相で構成されている影付き文字/線画は彩度が異なるため、彩度1プレーンで2色を分離でき、的確にパターンマッチングを行うことができる。
【0143】
請求項5記載の発明によれば、第2色空間データは輝度、色差の3要素(輝度:1要素、色差:2要素)を表す色空間であり、パターンマッチングは前記3要素のうちの少なくとも1つの要素を用いて行うので、色ずれを防止することができる。
【0144】
請求項6記載の発明によれば、画素ブロックをN分割し、分割したブロックの情報で注目画素を含む画素ブロックのパターン検索を行うので、ソフトエウアでの実現の際、画素ブロックの大型化、パターン情報のdon't care対応などの増大する要因に対応が可能で、的確に1つのパターンを高速に検索できる。
【0145】
請求項7記載の発明によれば、比較的低階調の連続調のカラー画像データを画素毎にT(≧2)値化し、T値化された画像データとジャギーが発生するパターンをマッチングして一致するか否かを判定し、ジャギーが発生するパターンと判定された場合に、T値化された画像データに対して画素データをジャギーが発生しないように埋め込んでスムージング拡大処理して比較的高階調の拡大画像を生成するようにしたので、2値画像と中間調画像の両方のスムージング拡大処理を計算負荷が高くなることなく行うことができる。
【0146】
請求項8記載の発明によれば、拡大倍率に応じて整数倍率と端数倍率を演算して、整数倍率でスムージング拡大処理した後に端数倍率で拡大処理するので、実数変倍に対応することができる。
【0147】
請求項9記載の発明によれば、スムージング拡大処理後の整数倍率毎の複数の画素埋め込みパターンに基づいてスムージング拡大処理するので、処理を高速化することができる。
【0148】
請求項10記載の発明によれば、RGBデータを明るさ成分の信号と色成分の信号に変換して変換後の信号をパターンマッチングし、変換後の信号をスムージング拡大処理した後に元のRGBデータに逆変換するので、エッジの色相が変化することを防止することができる。
【0149】
請求項11記載の発明によれば、明るさ成分の信号のみをT値の濃度信号に変換してパターンマッチングするので、処理を高速化することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係る画像処理装置の要部の拡大処理部を示すブロック図である。
【図2】図1における拡大処理部における処理手順を示すフローチャートである。
【図3】図1におけるパターン処理部の各ファイルの具体的な内容を示す説明図である。
【図4】第1色空間から第2色空間に原画の画素ブロックを変換し、原画を拡大するときの手法を示す説明図である。
【図5】ドット配置情報の作成手順を示すフローチャートである。
【図6】画素ブロックを分割し、分割したブロックの情報で注目画素を含む画像ブロックのパターン検索を行うときの分割状態を示す説明図である。
【図7】分割した画素ブロックの画素を用いて2byteコードを生成したときの10進数との関係を示す図である。
【図8】本発明の第2の実施形態に係るカラー画像処理装置を示すブロック図である。
【図9】図8のM×Nバッファの構成を示す説明図である。
【図10】図8の2値化部の処理例を示す説明図である。
【図11】図8の埋め込み部の埋め込み処理を示す説明図である。
【図12】図8のカラー画像処理装置のスムージング拡大処理手順を示すフローチャートである。
【図13】本発明の第3の実施形態に係るカラー画像処理装置を示すブロック図である。
【図14】第3の実施形態における3値化処理を示す説明図である。
【図15】第3の実施形態におけるスムージング拡大処理を示す説明図である。
【図16】第3の実施形態におけるスムージング拡大処理の処理手順を示すフローチャートである。
【図17】ニアレストネイバー法とバイリニア法を示す説明図である。
【図18】本発明の第4の実施形態に係る画像処理装置の構成を示すブロック図である。
【図19】第4の実施形態に係る画像処理装置の処理手順を示すフローチャートである。
【図20】本発明の第5の実施形態に係る画像処理装置の構成を示すブロック図である。
【図21】第5の実施形態に係る画像処理装置の処理手順を示すフローチャートである。
【図22】第5の実施形態の整数倍拡大部における拡大手段の色数だけから選択する場合の処理手順を示すフローチャートである。
【図23】第5の実施形態の整数倍拡大部における拡大手段の色数と色相から選択する場合の処理手順を示すフローチャートである。
【図24】第5の実施形態の整数倍拡大部における拡大手段の色数、色相、画素の連結情報から選択する場合の処理手順を示すフローチャートである。
【図25】画素の連結情報の生成について説明するための図である。
【図26】整数倍率算出部の動作を説明するための図である。
【図27】整形部の動作を説明するための図である。
【図28】RGB1画素を整数倍率に応じて単純に拡大するときの拡大方法の一例を示す図である。
【図29】本発明の第6の実施形態に係る画像処理装置の構成を示すブロック図である。
【図30】第6の実施形態に係る画像処理装置の処理手順を示すフローチャートである。
【図31】拡大部におけるバイリニア法として知られた拡大方法の詳細を説明するための図である。
【図32】拡大部で拡大した全画素を特徴量により正規化する強調処理部の処理手順を示すフローチャートである。
【図33】強調処理部の変換特性を示す説明図である。
【図34】本発明の第7の実施形態に係る画像処理装置の構成を示すブロック図である。
【図35】第7の実施形態に係る画像処理装置の処理手順を示すフローチャートである。
【図36】倍率間の整数倍に当たる重み係数を予め算出しておき、倍率の入力に応じて、拡大部に重み係数を設定して拡大する構成を示すブロック図である。
【符号の説明】
100 拡大処理部
110 ファイル部
111 パターンファイル
112 ドット配置ファイル
113 画素参照ファイル
120 パターン生成部
130 パターン検索部
140 埋め込み処理部
141 埋め込み部
142 単純埋め込み部
150 整数倍率
160 画素ブロック
801 RGB/YIQ変換部
802 M×Nバッファ
803 2値化部
803a T値化部
804 パターンマッチング処理部
805 パターン記憶部
806 埋め込み部
806−1 単純埋め込み部
806−2 テンプレート埋め込み部
806−3 テンプレート記憶部
807 色成分拡大部
808 YIQ/RGB変換部
809 端数変倍部
810 倍率演算部
811 合成部
1801 M×N画素ブロック
1802 第1の色空間データ変換部
1803 第1の拡大手段
1804 第2の拡大手段
1805 第3の拡大手段
1806 第4の拡大手段
1807,2006 選択部
1808 第2の色空間データ変換部
1809,2002 特徴量算出部
2001 RGB:M×N画素ブロック
2003 RGB/YIQ変換部
2004 輝度Y:M×N画素ブロック
2005 整数倍拡大部
20051 第1の拡大手段
20052 第2の拡大手段
20053 第3の拡大手段
20054 第4の拡大手段
2007 整形部
2008 YIQ/RGB変換部
2009 整数倍率算出部
2901,3401 拡大部
29011 Y信号拡大部
29012 I,Q信号拡大部
2902,3402 強調処理部
2903 特徴情報演算部
3403 特徴情報算出部
3404 重み係数設定部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to image processing of display images of image forming apparatuses such as printers, copiers and facsimiles, and information processing apparatuses, and print-out and display of high-resolution images of monitor resolution levels such as digital camera images and Internet homepages. The present invention relates to an image processing apparatus and method that are suitable for image processing in a case where the image data is continuous, and that is applied to processing for expanding relatively low tone continuous tone color image data to a relatively high tone image.
[0002]
[Prior art]
As this type of conventional example, for example,
A. JP-A-5-094521
B. JP-A-6-189116
C. Japanese Patent Laid-Open No. 7-050752
D. JP-A-7-093563
E. JP 7-105359 A
F. JP-A-7-221976
G. Japanese Patent Laid-Open No. 7-221977
H. JP-A-7-262351
I. JP-A-7-288893
J. et al. JP-A-10-126609
The invention disclosed in each of the publications is known.
[0003]
Among them, as for density conversion by pattern matching, Japanese Patent Application Laid-Open No. 7-221976 (F) discloses that binary image data is matched with a template, and a target pixel is set to 2 by a smoothing enlarged pattern corresponding to the matched pattern. Smoothing enlargement to a value enlargement dot group, dividing it into one or more pixels according to the enlargement ratio, smoothing each image and making it multi-valued, and using a plurality of smoothing patterns for the template pattern used at that time It is disclosed that it is divided into groups and divided into pattern groups, and matching priority is set according to the groups. Japanese Patent Laid-Open No. 7-221977 (G) discloses means for calculating a scaling factor according to received data when binary image data is received by FAX, and a pixel of interest for the binary image data. Means for performing template matching processing for each predetermined region centered on the image, computing means for converting the pixel of interest into a plurality of multi-value smoothing enlarged pixels according to the template pattern matched as a result of template matching processing, and computing means Means for transferring the multi-value smoothing enlarged pixel data used in the above to the internal RAM in advance in accordance with the calculated scaling factor, so that the smoothing enlargement processing of the binary image data received by FAX can be reliably performed. It has been disclosed.
[0004]
Japanese Laid-Open Patent Publication No. 7-50752 (C) discloses an apparatus configured to detect an edge in a block based on data of each pixel of the block and perform density conversion when the pattern is satisfied. Japanese Patent Laid-Open No. 7-288893 (I) discloses a technique in which a block of x * y pixels adjacent to a target pixel is used for searching a pattern to be embedded in order to speed up pattern matching. Is disclosed. However, the prior art of (C) does not disclose speeding up of the pattern search when implemented in software such as a printer driver.
[0005]
Japanese Laid-Open Patent Publication No. 10-126609 (J) discloses a method of having an image area separation unit, switching and enlarging a process according to a separation result, and performing a smoothing enlargement process on a facsimile binary image having a predetermined resolution. Yes. In addition, in the column “Prior Art” in Japanese Patent Application Laid-Open No. 7-262351 (H), Japanese Patent Application No. 6-4424 is cited, and all feature points are obtained by pattern matching the minute components of the edge of the luminance signal. There is a description of a method for extracting a vector connecting individual feature points, correcting the vector according to the enlargement ratio, and drawing and painting a contour according to the corrected vector.
[0006]
Japanese Patent Application Laid-Open No. 5-94521 (A) discloses a technique for determining and enlarging a scaling method suitable for an input image or a part, in other words, a technique for performing an appropriate enlargement process according to an image. Japanese Patent Laid-Open No. 6-189116 (B) has means for adding the fractional part of the addition result and the enlargement ratio, performs enlargement in accordance with the integer part of the addition result, and arbitrarily selects both the main scanning direction and the sub-scanning direction. A technique for enlarging at a magnification is disclosed.
[0007]
Japanese Patent Laid-Open No. 7-093563 (D) converts input image data into luminance / color difference data, generates an edge from the luminance data, generates an edge of the color difference data based on this information, and enlarges it. A technique, in other words, a technique for enlarging after converting to data in a color space different from the input image is disclosed. In this conventional technology, a luminance edge bitmap is created, and based on this, the maximum and minimum values of the color difference component are arranged to generate edges of luminance and color difference. Depending on the edge and color combination, color misregistration may occur.
[0008]
Furthermore, Japanese Patent Laid-Open No. 7-105359 (E) discloses a technique for adding and synthesizing linear interpolation and a binarized result of the interpolation, and binarizing the enlarged data. Since there is a step of adding and synthesizing with the data before binarization, there is room for improvement in speeding up the processing.
[0009]
[Problems to be solved by the invention]
By the way, the prior arts (F) and (G) described above relate to a technique for scaling a binary image, and the processing in the case of targeting a full color image is not particularly disclosed.
[0010]
In the conventional technique (I), since all the patterns for enlargement are held, there remains a problem in the search method when the pattern size is increased in order to obtain the jaggy reduction effect.
[0011]
Furthermore, in the prior arts of (F) and (J), the values are merely reduced jaggies at the time of enlargement of black characters on the ground such as “0” and “255” and binary images of line drawings. A halftone image such as a photographic image cannot be smoothed and enlarged. For this reason, when a low-resolution image of about 72 dpi found on an image of a digital still video camera or an Internet homepage is output by a high-resolution printer of about 600, jaggy and blur cannot be reduced. The same applies to a bitmapped graphic image in which an edge is conspicuous compared to a photograph. The conventional technique (J) is a technique related to a binary image, and does not give any consideration to scaling of an image made up of color elements such as RGB and does not disclose it.
[0012]
In the prior art (H), since the smoothing enlargement process is performed by vector calculation, the calculation load increases.
[0013]
In the prior art (A), a technique for performing enlargement processing according to image quality as described above is disclosed, but there is no disclosure of a technique for enlarging a low resolution with a jaggy reduction effect. Note that the term “jaggy” as used herein refers to a stepped jagged shape that occurs when an oblique line is expressed in a digital image. Jaggy is likely to occur when the image resolution is low, and as long as the digital image is in units of pixels, it is essentially inevitable. As a method of making this jaggy inconspicuous, for example, a method called anti-aliasing is known. This method includes a method of making the jaggy substantially invisible by increasing the resolution and a method of making the jaggy inconspicuous by blurring around the pixel where the jaggy is generated.
[0014]
The prior art (B) is a technique for performing zooming in two stages, but is a technique based on simple enlargement, and does not take into account jaggy reduction or color misregistration at the edge portion.
[0015]
The present invention has been made in view of such a background. Eyes For full color images about Fast To be able to achieve any integer magnification There is to do.
[0020]
[Means for Solving the Problems]
In order to achieve the object, the first means is an image processing apparatus that performs processing for enlarging an image on input image data.
In order to hold the dot arrangement information of the enlarged pixels for each pattern to be corrected and for each magnification, and to extract one dot arrangement information from the pattern matching result and the magnification, for each pattern of the pattern file storing a plurality of patterns in advance A dot arrangement file stored as information for each integer magnification how to arrange the enlarged pixel of the target pixel;
Preset and input RGB image data of the dot arrangement file Includes pixel of interest An image reference file in which pixel reference information indicating which pixel information in an M × N ((M, N ≧ 2)) pixel block is filled with enlarged pixel information is stored;
A pixel block is cut out from the RGB image data, converted into luminance color difference signal data, and luminance color difference signal data is obtained. Brightness data Means for performing pattern matching with a pattern in a pattern file registered in advance using
If there is a matching pattern by the pattern matching, specify an image reference file corresponding to the dot arrangement file corresponding to the matched pattern file, For each enlarged pixel in the dot placement file, Corresponds to the pixel reference information of the specified image reference file Said RGB image data Middle pixel of RGB By value By embedding enlarged pixels If the correction target pixel is enlarged and embedded, and there is no matching pattern, M × N pixels of the input RGB image data Blocking Of the pixel to be corrected RGB Means to simply enlarge and embed the value itself,
It is characterized by having.
In this case, the M × N pixel block is divided into a plurality of blocks, a 2-byte code is generated for all pixels of one pixel block of the divided block, and one pattern is generated using information of the remaining pixel blocks. And a means for converting the input image data into T (integer of T ≧ 2) values, and calculating a threshold value based on the luminance signal of M × N pixels by the T value conversion means. The luminance signal is converted into T-valued density data by the above, the pattern matching means performs (T-1) pattern matching processing, and the embedding means matches the matching processing result in the pattern matching processing. In this case, the pixel data is embedded with reference to the template corresponding to the matched pattern, and in the case of mismatch, the target pixel data is temporarily embedded. After the (T-1) pattern matching processing is completed, enlargement processing is performed and embedding is performed, and extraction of the dot arrangement information is performed on the dot arrangement information of the enlarged pixels at a preset magnification. Based on this, it is preferable to create enlarged pixel dot arrangement information of other magnifications.
Further, the means for embedding includes an enlargement unit, an enhancement processing unit, and a feature information calculation unit,
The image information of the M × N pixel block surrounding the target pixel is input to the enlargement unit and the feature information calculation unit from the image to be enlarged, and the feature information indicating the feature of the block is calculated by the feature information calculation unit, and the enlargement is performed. The pixel of interest is expanded to a P × Q (P, Q ≧ 2) pixel block, and the enhancement processing unit performs enhancement processing of all pixels P × Q pixel block according to the calculated feature information. Are shifted for each pixel and repeated for all pixels.
Further, the embedding means includes an integer magnification calculator that calculates an integer magnification that is enlarged based on the image size and magnification, and thinning obtained from the molding magnification calculator based on the calculated integer magnification, no shaping, Decimation from additional information, calculate the number of pixels and shaping pitch when additional shaping is required, count the enlarged pixels, and perform decimation or additional processing when it matches the integer value of the shaping pitch Like that.
It is also possible to set a plurality of enlargement processes and switch between them according to a combination of the number of colors in M × N pixels, matching or similarity of hues, and pixel connection determination based on luminance data.
In the image processing method for performing an image enlargement process on input image data, the second means holds dot arrangement information of enlarged pixels for each pattern to be corrected and for each magnification, and a pattern matching result In order to extract one dot arrangement information from the magnification and the dot, the dot stored as information for each integer magnification how to arrange the enlarged pixel of the target pixel for each pattern of the pattern file in which a plurality of patterns are stored in advance A pixel reference which is pre-set in the arrangement file and the dot arrangement file and which pixel information is to be filled with pixel information in the M × N ((M, N ≧ 2)) pixel block of the input RGB image data An image reference file in which information is stored, a pixel block is cut out from the RGB image data, converted into luminance color difference signal data, When pattern matching is performed with a pattern in a pattern file registered in advance using color difference signal data, and there is a matching pattern by the pattern matching, an image reference file corresponding to the dot arrangement file corresponding to the matched pattern file is displayed. The correction target pixel is enlarged and embedded by the value of RGB image data corresponding to the pixel reference information of the specified image reference file.
A third means is an image processing program to be executed by a computer that performs a process of enlarging an image with respect to input image data. In the image processing program, the dot arrangement information of the enlarged pixels is obtained for each pattern to be corrected and for each magnification. In order to hold and extract one dot arrangement information from the pattern matching result and the magnification, how to arrange the enlarged pixel of the target pixel for each pattern of the pattern file that stores a plurality of patterns in advance for each integer magnification Pixel arrangement file stored as information, and pixel information at which position in the M × N ((M, N ≧ 2)) pixel block of the RGB image data set in advance and input to the dot arrangement file An image reference file in which pixel reference information indicating whether to fill the image is stored, and a pixel block is cut out from the RGB image data When the pattern matching with the pattern in the pattern file registered in advance using the luminance color difference signal data and pattern matching is performed using the luminance color difference signal data, and there is a pattern that matches by the pattern matching, When the image reference file corresponding to the corresponding dot arrangement file is specified, the correction target pixel is enlarged and embedded by the value of the RGB image data corresponding to the pixel reference information of the specified image reference file, and there is no matching pattern, And a process of simply enlarging and embedding the value itself of the correction target pixel of M × N pixels of the input RGB image data.
The fourth means is characterized in that the image processing program according to the third means is read by a computer and recorded on a recording medium in an executable manner.
[0045]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0046]
<First Embodiment>
FIG. 1 is a block diagram illustrating a main part of a processing unit that performs an enlargement process of an image processing apparatus according to an embodiment of the present invention. In the figure, the enlargement processing unit 100 includes a file unit 110, a pattern generation unit 120, a pattern search unit 130, and an embedding processing unit 140. The file unit 110 further includes a pattern file 111, a dot arrangement file 112, and a pixel reference file. 113, and the embedding processing unit 140 includes an embedding unit 141 and a simple embedding unit 142.
[0047]
The dot arrangement file 112 receives an instruction signal 150 for instructing an integer magnification from an operation unit (not shown), and the pixel reference file 113 and the pattern generation unit 120 receive a signal 160 indicating a pixel block. The pattern search unit 130 receives the signal generated by the pattern generation unit 120 and switches the output of either the embedding unit 141 or the simple embedding unit 142 of the embedding processing unit 140 according to the reference to the pattern file 111. The enlarged image is output from the embedding processing unit 140 by selecting by switching 170. A signal from the dot arrangement file 112 or the pixel reference file 113 is input to the embedding processing unit 140.
[0048]
The pattern file 111 has a pattern as shown in FIG. 3 to be described later, the dot arrangement file 112 has a pattern as shown in FIG. 3 to be described later according to the integer magnification, and the pixel reference file 113 has a pattern as shown in FIG. Files corresponding to the pixels shown are stored.
[0049]
Each file is set in a storage unit (not shown), and the control of each processing unit and each file is executed by the CPU according to a program stored in a ROM (not shown). The same applies to the following embodiments.
[0050]
The processing procedure of the enlargement processing unit thus roughly configured is shown in the flowchart of FIG.
[0051]
In this process, first, the dot arrangement file 112 corresponding to the input integer magnification is selected (step 201), and an M × N pixel block is cut out from the original image to generate a pattern (step 202). In the dot arrangement file 112, an example of 8 times is shown in FIG. 3, but a dot arrangement pattern corresponding to each integer multiple indicated by 2 to Zs in FIG. 1 is stored.
[0052]
The pattern search unit 130 searches the pattern file (all x patterns from PAT0 to PATx-1) 111 to see if there is a match or not. That is, the dot arrangement file 112 that is information on how to arrange the enlarged pixels of the pixel of interest for each of the x patterns PAT0 to PATx-1 is stored for each integer magnification. (For example, 8 times), one corresponding dot arrangement file 112 is selected (step 203). When the patterns match (Y in step 204), one dot arrangement file 112 is determined from this result and the integer magnification. Further, since the dot arrangement file 112 stores pixel reference information indicating which pixel information in the pixel block is to be used to fill the enlarged pixel, the dot arrangement information is determined and one pixel reference information is determined at the same time. . Therefore, when the pattern matches, the embedding unit 141 selects dot arrangement information and pixel reference information (step 205), generates an enlarged pixel, and fills the pixel (step 206). If they do not match, the simple embedding unit 142 embeds pixels for integer magnification using the target pixel of the pixel block (step 207). This is executed for all pixels in the original image.
[0053]
Here, the relationship between each file and embedding will be described with reference to the explanatory diagram of FIG.
[0054]
In the pattern file 111, each circle symbol is
○: 0, ●: 1, others: white or black (don't care)
Means.
[0055]
The dot arrangement information corresponds to each pattern. That is, dot arrangement information corresponds to each pattern from PAT0 to PATx-1, and in the example shown in FIG. 3, the dot arrangement file 112 is 8 times the same magnification in the main and sub scanning directions. As described above, the dot arrangement file 112 is held for each integer magnification supported by the apparatus. Further, similarly, pixel reference information (pixel reference file 113) is held on a one-to-one basis for x pieces of pattern information. Accordingly, when attention is paid to the i-th PATi, the target pixel at the center of the pattern information is “white”, that is, “0”. This means that the blt0 information that fills the “0” part in the dot arrangement information (dot arrangement file 112) is the pixel block of the original image located at the coordinates (2, 2) of the pattern information 5 × 5 (M = N = 5) It shows the information of filling with values. The blt1 information indicates information that the pixel corresponding to the “1” portion of the dot arrangement information is similarly filled with the value (2, 3). The origin of coordinates (j, k) is the upper left in the pattern file of FIG. 3, and blt0 and blt1 information correspond to 25 pixels of 5 × 5 from (0, 0) to (4, 4). Yes.
[0056]
FIG. 4 shows an example in which the (2, 2) pixel at the center of each RGB pixel block 5 × 5 is multiplied by eight.
A 5 × 5 pixel block is cut out from the RGB original image (first color space) and converted to the second color space. The example of FIG. 4 is an example using the luminance data of the luminance color difference signal. As a result of the conversion, a luminance 1 block shown in FIG. 4B is obtained from the original RGB 3 block shown in FIG. Assume that the luminance block matches the pattern file PATi. One dot arrangement pattern and image reference files blt0 and blt1 correspond to the pattern file. The center pixel of 5 × 5 is enlarged to the bottom 8 × 8 pixel shown in FIG. At this time, the enlarged R ′ blocks ○ and ● are filled with data R0 and R1 corresponding to the coordinates blt0 and blt1 in the original image. The same applies to G and B.
[0057]
As described above, when there is a matched pattern as a result of searching by the pattern search unit 130, dot arrangement information (dot arrangement file) is represented by pixel data RGB values corresponding to pixel reference information (pixel reference file 113) in the pixel block of the original image. 112) Fill in the enlarged pixels according to 112). When there is no matching pattern, all the enlarged pixels are filled with the RGB value of the target pixel at the center of the pixel block. In the former case, the embedding unit 141 is selected, and in the latter case, the simple embedding unit 142 is selected, and the above processing is executed in each unit.
[0058]
The creation of the dot arrangement information will be described with reference to the flowchart of FIG. For example, only the 8 × dot arrangement file shown in FIG. 3 is held (set basic pattern—step 501), and the file unit 110 uses the basic pattern to obtain 8 pixels in width × height (8 pixels × x) pixels. Image: 0 → 0, 1 → 255, and converted to B / W 8 bits (step 502). Linear interpolation is performed with pixel values corresponding to integer magnifications that support the width or height (step 503), and binarization is performed (step 504). Finally, another integer magnification pattern is generated by inverse transformation from 0 → 0, 255 → 1, and used for enlargement.
[0059]
The pattern generation in the pattern generation unit 120 is performed as follows. That is, color models such as HSV and HLS are examples of conversion from RGB to luminance, hue, and saturation, and color models such as YIQ and YUV are known as examples of conversion to luminance / color difference signals. Here, the HSV color space will be described as an example. In this color space, the hue H is 0 to 360 ° and the saturation S is 0 to 1. Therefore, in the case of hue, the maximum value and minimum value of H are obtained from 25 pixels with M = N = 5, and the M × N pixel block is binarized with the average value to generate a pattern. The same applies to saturation and other factors.
[0060]
Similarly, in the case of each YIQ plane, the maximum value, the minimum value, and the average value are obtained for each plane, binarized by the average value, and pattern matching is performed after the pattern is generated. The conversion method from RGB to HSV, HLS, etc., the conversion method from YIQ, YUV, etc., for example, is translated into “Computer Graphics” (Japan Computer Association, issued July 15, 1984). ) Page 622 to page 629, the description thereof is omitted here. Japanese Patent Laid-Open No. 7-221977 discloses an example of a pattern search hardware method in the pattern search unit 130.
[0061]
When this pattern matching is incorporated into a printer driver and executed on a PC, it is necessary to increase the speed by software. That is, as the block sizes of M and N increase, the search calculation load increases. In addition, looking at the pattern information in FIG. 3, since there is a don't care that can be either “0” or “1”, all the M × N pixels are binarized and a large amount of memory is required when searching. It becomes. Therefore, as shown in the explanatory diagram of FIG. 6, the M × N pixel block is divided into a plurality. FIG. 6 shows an example in which the image is divided into two. This will be described with reference to FIG.
[0062]
That is, a 2-byte code is generated using 3 × 3 9 pixels = 9 bits indicated by a thick frame from M = N = 5 pixel blocks. The above-mentioned PATi in FIG. 3 considers don't care,
Binary number: 001001111 → Decimal number: 79,
Binary number: 101001111 → Decimal number: 335
It becomes. x-pattern 2 byte code is generated. Naturally, as shown in FIG. 7, a plurality of patterns may exist in one 2-byte code. With the information of 9 pixels, it is possible to narrow down from many patterns (PAT number column in the figure). Next, one pattern is determined using the information of the remaining 16 pixels.
[0063]
When one pattern is determined using the information of the remaining 16 pixels, pattern candidates are narrowed down from the central 9 pixels as shown in FIG. For example, when the decimal number is 79, it is narrowed down to two patterns of PAT9 and PAT24. Therefore, PAT9 and PAT24 are determined from the remaining 16 pixels. At this time, since the pattern is narrowed down, it is not necessary to check the remaining 16 pixels by matching or mismatching one by one. That is, only the characteristic pixels other than the don't care among the surrounding pixels in the PAT 9 need be referred to. For example, in the case of PATi, it is determined by whether or not (3, 0) is ◯. In this manner, peripheral feature pixels can be registered for each pattern and referenced to increase the speed. If there is a mismatch, the subsequent pixel search is terminated. In addition, there is a method of pattern matching as well as the central nine pixels.
[0064]
<Second Embodiment>
Embodiments of the present invention will be described below with reference to the drawings. 8 is a block diagram showing an embodiment of a color image processing apparatus according to the present invention, FIG. 9 is an explanatory diagram showing the configuration of the M × N buffer of FIG. 8, and FIG. 10 is a processing example of the binarization unit of FIG. FIG. 11 is an explanatory diagram showing an embedding process of the embedding unit of FIG. 8, and FIG. 12 is a flowchart showing a smoothing enlargement process procedure of the color image processing apparatus of FIG.
[0065]
In FIG. 8, an RGB / YIQ conversion unit 801 converts RGB data, which is an input image, into a brightness component and a color component. Here, the following equation (1)
[Expression 1]
Figure 0004115073
To convert to a multi-value YIQ signal. The YIQ signal is composed of a luminance signal (brightness component) Y and color difference signals (color components) I and Q in accordance with NTSC television. The luminance signal Y is applied to the M × N buffer 2 and the color difference signals I, Q is applied to the color component enlargement unit 7. As other brightness components and color components, PAL YUV (brightness component Y, color components U, V), uniform color space CIELAB, CIEUV (brightness component L *, color components a *, b *) Alternatively, u *, v *) or tristimulus values XYZ (brightness component Y, color components X, Y) may be used.
[0066]
For example, as illustrated in FIG. 9, the M × N buffer 2 temporarily stores 5 × 5 pixels of the multi-value luminance signal Y converted by the RGB / YIQ conversion unit 1 (the center pixel “*” is the target pixel). . The binarization unit 3 extracts the maximum value max and the minimum value min of the luminance signal Y of 5 × 5 pixels stored in the M × N buffer 2, and the following equation (2)
th = (max + min) / 2 (2)
The threshold value th for binarization is calculated as follows, and a multi-value luminance signal Y of, for example, 5 × 5 pixels is converted into binarized density data based on this threshold value th (when Y> th, binarized density data = 0, otherwise binarized concentration data = 1).
[0067]
Therefore, for example, as shown in FIG. 10A, in a 5 × 5 pixel region, high luminance pixels (low density pixels) are distributed in the upper left and low luminance pixels (high density pixels) are distributed in the lower right. As shown in FIG. 10 (b), binarized density data = 0 is distributed in the upper left and binarized density data = 1 is distributed in the lower right.
[0068]
The pattern matching processing unit 4 binarizes the binarized density data converted by the binarizing unit 3 and, for example, 5 × 5 pixels stored in advance in the pattern storage unit 5 as shown in FIG. A match / mismatch signal indicating whether or not an edge or the like where jaggy occurs is output by matching with a plurality of patterns of density data. Note that “−” in FIG. 11A indicates that “0” or “1” is not a concern (don't care), and FIG. 11B shows an enlargement of 8 times vertical × 8 times horizontal. Shows the embedding process.
[0069]
The embedding unit 806 selects the processing by the simple embedding unit 4-1 when the pattern matching processing unit 4 matches “mismatch”, while the template embedding unit 806-2 and the template storage unit 806 when “matching”. 3 is selected, and the binarized density data is expanded according to the integer magnification designated by the magnification calculator 810. As shown on the upper side of FIGS. 11A and 11B, the simple embedding unit 806-1 embeds the binarized density data = 1 of the pixel of interest for all the enlarged 8 × 8 pixels, for example.
[0070]
The template embedding unit 806-2 embeds binary density data so as not to generate jaggy based on the binary template stored in the template storage unit 806-3. For example, FIG. The drawing shown on the lower side shows that the upper right corner is embedded with white pixels (binarized density data = 0). At this time, the binarized density data = 1 in FIG. 11B is embedded with the binarized data of the pixel of interest, and the pixels in the 5 × 5 pixels adjacent to the pixel of interest are binarized density data = 0. Embedding with binarized density data corresponding to [1], [2], [3] (simply embedding with pixel [1], etc.). Note that data to be used for embedding from the adjacent pixels is determined in advance for each pattern.
[0071]
The color component enlargement unit 807 converts the multivalued color difference signals I and Q converted by the RGB / YIQ conversion unit 801 according to the integer magnification designated by the magnification calculation unit 810, for example, the nearest neighbor method or the bilinear method. Enlarge with a known enlargement method. The YIQ / RGB conversion unit 808 performs inverse conversion to the original RGB signal based on the binarized density signal enlarged by the embedding unit 806 and the color difference signals I and Q enlarged by the color component enlargement unit 807 and Expression (1). This is applied to the fraction scaling unit 809.
[0072]
Here, the input magnification zoom is not necessarily an integer multiple. Therefore, the magnification calculation unit 810 uses the following expressions (3) and (4) based on the input magnification zoom.
zoom1 = INT (zoom + 0.5) (3)
zoom2 = zoom / zoom1 (4)
Then, the integer magnification zoom1 and the fraction magnification zoom2 are calculated, the integer magnification zoom1 is applied to the embedding unit 806 and the color component enlargement unit 807, and the fraction magnification zoom2 is applied to the fraction scaling unit 9. For example, when 8.33 times is given based on the designated magnification or the designated image size, zoom1 = 8 and zoom2 = 1.041. The fraction scaling unit 809 enlarges the RGB signal converted by the YIQ / RGB conversion unit 808 by the nearest neighbor method (described later) according to the fraction magnification zoom2.
[0073]
Next, the smoothing enlargement processing procedure will be described with reference to FIG. In this process, first, the magnification calculator 810 calculates an integer magnification zoom1 and a fraction magnification zoom2 from the input magnification zoom (step 1201), and then a template corresponding to the integer magnification zoom1 is sent from the template storage unit 806-3 to the template embedding unit 806. -2 (step 1202), and then the fraction magnification zoom2 is set in the fraction scaling unit 809 (step 1203). Next, when the processing of all images is completed, the smoothing enlargement processing is ended, and when the processing of all images is not completed, the process proceeds from step 1204 to step 1205.
[0074]
In step 1205, when the band process is completed, a fraction scaling process is performed (step 1206), and then the process returns to step 1204. If band processing has not ended in step 1205, the process proceeds to step 1207. Here, “band processing” is processing by dividing the target pixel in the vertical direction. In step 1207, when the enlargement process of the brightness component (binarized density data) is completed, the enlargement process of the color components (color difference signals I and Q) is performed (step 1208), and then the process returns to step 1205.
[0075]
If the enlargement process of the brightness component (binarized density data) is not completed in step 1207, the RGB / YIQ converter 801 converts the RGB signal into a YIQ signal and converts the Y signal into the M × N buffer 802. Then, the binarization unit 803 calculates a binarization threshold th based on the Y signal of the M × N pixel (step 1210), and the Y signal of the M × N pixel is calculated based on the threshold th. Conversion into binarized density data (step 1211).
[0076]
Next, matching processing is performed by the pattern matching processing unit 4 (step 1212), and if the matching processing result is “match”, the pixel data is embedded by referring to the template corresponding to the matched pattern (step 1213 → 1214), In the case of “mismatch”, the target pixel data is embedded (steps 1213 → 1215). Next, the processing returns to step 1207 and the processing in steps 1209 to 1215 is repeated until the brightness component (binarized density data) enlargement processing is completed.
[0077]
<Third Embodiment>
FIG. 13 shows a configuration of the third embodiment in which the luminance signal Y is converted into a T (> 2 integer) value and the smoothing enlargement process is performed. In this embodiment, the binarization unit 803 is changed to a T-value conversion unit 803a with respect to the second embodiment shown in FIG. 8, and a synthesis unit 811 is added after the embedding unit 806. Is configured in the same way as the second embodiment shown in FIG.
[0078]
The T-value conversion unit 803a illustrated in FIG. 13 extracts the maximum value max and the minimum value min of the luminance signal Y of 5 × 5 pixels stored in the M × N buffer 802 and calculates the following equation:
th (T−1) = {t × max + (T−t) × min} / T (5)
However, t = T-1, ..., 1
(T-1) T-value threshold values th (T-1) are calculated by the above, and the luminance signal Y is converted into T-value density data.
[0079]
FIG. 14 shows ternary processing as an example of T-value conversion. As shown in FIG. 14A, the luminance signal Y of 5 × 5 pixels is
max = 240
min = 60
In the case of, the threshold value on the high luminance (low density) side
th1 = 180,
Low brightness (high density) threshold
th2 = 120
It becomes. Next, ternarization is performed. When Y> th1, “0” is set, and when Y ≦ th1, “1” is set, the density data shown in FIG. 14B is obtained. Then, when Y> th2, “0” is set. ", If Y≤th2," 1 "results in the density data shown in FIG.
[0080]
Here, the combination in which the target pixel matches the pattern for each of the thresholds th1 and th2 is:
(1) 0,0
(2) 0, 1
(3) 1, 0
(4) 1,1
There are four ways (1) to (4). Therefore, in the case of (1), since both are “mismatch”, “simple embedding process” is executed, and in the cases of (2) and (3), “match”, so the corresponding template is selected. Based on this, the “template embedding process” is executed. In the case of (4) above, the pattern matching process is performed twice, and the combining unit 11 combines the embedded data. As for the composition processing, embedding is performed from the low density (high luminance) pixel, and only the pixel of “1” is overwritten on the high density side corresponding to the threshold th2. As a result, since three types of brightness can be processed in the enlarged pixel as shown in FIG. 15, the shadowed character can be enlarged with high image quality.
[0081]
Next, the smoothing enlargement processing procedure in the third embodiment will be described with reference to FIG. First, the processing in steps 1601 to 1609 is the same as the processing in steps 1201 to 1209 in the flowchart of FIG. 12 in the second embodiment. Next, the threshold value th is calculated by the T-value conversion unit 803a based on the Y signal of M × N pixels (step 1610), and the Y signal is converted into T-value density data by this threshold value th (step 1611).
[0082]
Next, in step 1612, if (T-1) times of pattern matching processing has not been completed, the process proceeds to step 1613 and subsequent steps, and if completed, the process proceeds to step 1617. In step 1613 and subsequent steps, first, the pattern matching processing unit 804 performs matching processing (step 1613). If the matching processing result is “match”, the pixel data is embedded with reference to the template corresponding to the matched pattern (step 1613). 1614 → 1615), in the case of “mismatch”, the target pixel data is temporarily embedded (steps 1614 → 1616). Next, returning to step 1612, the processing in steps 1613 to 1615 is repeated until (T-1) times of pattern matching processing is completed. When (T-1) times of pattern matching processes are completed, a synthesis process is performed (step 1617), and the process returns to step 1607.
[0083]
Next, the nearest neighbor method and the bilinear method will be described. In the nearest neighbor method, for example, the pixel of interest “*” in 4 × 4 pixels as shown in FIG. 17A is the closest pixel among the four corner pixels a, b, c, and d (pixel a in this example). It is a method of filling with data. In the bilinear method, for example, the pixel of interest “*” in 4 × 4 pixels as shown in FIG. 17B is filled based on the four pixels a, b, c, d and the weights i, j of the pixel of interest “*”. Is the method. For example, in the example of FIG.
* = (I-1). (J-1) .a + i. (J-1) .b + (i-1) .j.c + i.j.d
It is to be filled up like this. Details of the bilinear method will be described later with reference to FIG.
[0084]
In addition, the processing described in this embodiment is performed by simply thinning the image on the sending computer to directly transfer to the destination printer or computer in order to save the transfer time when the resolution of the digital camera image is increased to print a large image. Alternatively, the present invention can also be applied to a case where data is transferred via a network and subjected to smoothing enlargement processing by a controller in the partner printer or software of the partner computer.
[0085]
<Fourth Embodiment>
FIG. 18 is a block diagram illustrating a configuration of an image processing apparatus according to the fourth embodiment.
[0086]
In the figure, the image processing apparatus includes an M × N pixel block extraction unit 1801 to which RGB original image data is input, a first color space data conversion unit 1802 to which the extracted pixel block is input, The first to fourth enlargement means 1803, 1804, 1805, 1806 and the first to fourth enlargement means 1803, 1804, 1805, 1806 to which the color space data converted by the color space data conversion unit 1802 is input. A selection unit 1807 that selects any one of the outputs, a second color space data conversion unit 1808 that further converts the data selected by the selection unit 1807, and a feature relating to the pixel of interest from the extracted M × N pixel block A feature calculation unit 1809 that calculates an amount and selects enlargement means 1803-1806 via the selection unit 1807 according to the feature value Has been.
[0087]
The operation of the image processing apparatus configured in this way is as shown in the flowchart of FIG. That is, M × N pixel blocks are extracted from the RGB original image data input by the M × N pixel block extraction unit 1801 (step 1901), and first to fourth enlargement means 1803-1806 taking different enlargement methods. The first color space data conversion unit 1802 converts each color space data to be input to (step 1902). As described above, the feature amount calculation unit 1809 calculates the feature amount from the M × N pixel block 1801 (step 1903), and selects one of the first to fourth enlargement units 1803-1806 as an enlargement method suitable for enlargement. (Step 1904), the target pixel is enlarged. Thereafter, the second color space data conversion unit 1808 converts the data into desired color space data (step 1905). This process is repeated for all pixels.
[0088]
That is, in this embodiment, first, in the first step, M × N pixel blocks are extracted from the RGB original image data input by the M × N pixel block extraction unit 1801, and in the second step, different enlargement methods are used. The first color space data conversion unit 1802 converts each color space data to be input to the first to fourth enlargement means 1803 to 1806. On the other hand, the feature amount is calculated from the M × N pixel block extraction unit 1801 in the third step, and in the fourth step, one enlargement unit suitable for enlargement is selected from the first to enlargement units 1803 to 1806 to select the pixel of interest. Expanding. Thereafter, in the fifth step, the second color space data conversion unit 1808 converts the data into desired color space data and outputs it.
[0089]
This embodiment shows an example of the most basic operation principle of the present invention, and the first to fourth enlargement means 1803-1806 are RGB data as will be described in detail in the fifth embodiment. That have the function of enlarging the image data, and those that have the function of enlarging the RGB data into the RGB multi-value data are adopted. Enlargement means 1803-1806 suitable for processing according to the feature amount are appropriately set and prepared. The
[0090]
As the feature amount, for example, the difference between the maximum value and the minimum value of the M × N pixel block is used. Also, in the selection by the selection unit 1807, an enlargement method set according to the number of colors, hue, and the like as described in detail in a fifth embodiment described later is selected based on the feature amount.
[0091]
<Fifth Embodiment>
The configuration of the image processing apparatus according to the fifth embodiment is shown in the block diagram of FIG. This embodiment is an example having a plurality of enlargement means for enlarging data in an RGB color space and a YIQ color space (luminance / color difference signals, other signals such as YUV signals, etc.).
[0092]
In the figure, the image processing apparatus according to the fifth embodiment receives RGB image data and extracts an M × N pixel block, an RGB: M × N pixel block extraction unit 2001, and this M × N pixel block extraction. An image feature amount calculation unit 2002 that calculates an image feature amount based on image data from the unit 2001, an RGB / YIQ conversion unit 2003 that receives RGB original image data and converts the RGB data into YIQ data, and this RGB / YIQ conversion Data from luminance Y: M × N pixel block extraction unit 2004 and RGB: M × N pixel block extraction unit 2001 for extracting an M × N pixel block related to luminance Y from YIQ data converted by unit 2003 and luminance Y: M Calculation by the integer multiple enlargement unit 2005 to which data from the × N pixel block 2004 is input and the image feature amount calculation unit 2002 A selection unit 2006 that selects the first to fourth enlargement units 20051, 20052, 20053, and 20054 of the integer magnification enlargement unit 2005 according to the result, and shapes the size of the enlarged image by the integer magnification to a desired size of the enlarged image Information to be generated and shaped from the shaping unit 2007, the YIQ / RGB conversion unit 2008 that converts and inputs YIQ / RGB conversion data to the shaping unit 2007 according to the selection of the selection unit 2006, and the image size and magnification It is composed of an integer magnification calculator 2009 that calculates an integer magnification to be enlarged and outputs the magnification to an integer magnification enlarger 2005 and a shaping unit 2007.
The enlargement unit, the feature amount, the integer magnification calculation unit, and the shaping unit will be described later.
[0093]
The processing procedure of the image processing apparatus configured as described above is shown in the flowchart of FIG. In this process, first, an integer magnification to be enlarged is calculated based on the image size and the magnification input by the integer magnification calculator 2009 (step 2101), and information to make a desired size is generated by the shaping unit 2007 ( Step 2102). Next, the RGB original image is converted into YIQ data (step 2103). This conversion is performed by the RGB / YIQ conversion unit 2003. Then, a feature amount is calculated from the M × N pixel block surrounding the target pixel (step 2105), and one enlargement unit is selected from the first to fourth enlargement units 20051 to 20054 based on the calculated feature amount (step 2105). 2106). When the enlargement means is selected, the pixel of interest is enlarged by the selected enlargement means (step 2107), and it is checked whether or not conversion from the YIQ space to the RGB space is necessary (step 2108). The YIQ / RGB conversion unit 2008 executes the conversion (step 2109), and if not necessary, directly checks whether or not shaping is necessary (step 2110). If shaping is necessary in this check, shaping is performed (described later), and if unnecessary, shaping is not performed, and it is confirmed in step 2104 whether the processing from step 2105 to step 2111 has been completed for all pixels. To do. Then, the enlargement process is completed when the process is completed for all the pixels.
[0094]
In this embodiment, the integer multiple enlargement unit 2005 includes first to fourth enlargement means 20051 to 20054 as described above. The first enlarging means 20051 has a function of enlarging the RGB data, and for example, the above-mentioned nearest neighbor method, bilinear method or the like can be used. The second enlarging means 20052 has a function of enlarging the YIQ data, and has a luminance data enlarging unit 200521 and a color difference data enlarging unit 200522, and for the luminance signal (Y data), the luminance data enlarging unit 200521 uses a bilinear method. The color difference data enlargement unit 20522 applies the arrest neighbor method to the color difference signal (I, Q data). The third enlarging means 20053 has a function of enlarging RGB data into RGB multi-valued data. For example, a method disclosed in Japanese Patent Laid-Open No. 7-221976 or Japanese Patent Laid-Open No. 7-221977 is employed. The fourth enlargement unit 20054 has a function of enlarging the RGB data, for example, an enlargement function obtained by modifying the third enlargement unit 20053. The image data necessary for the enlargement function of the enlargement means is input by such enlargement means. Note that these various enlargement functions are combined by applying known techniques according to the state of the image, the type of color space, and the like. The function of the above-described enlargement means is an example.
[0095]
As can be seen from the block diagram of FIG. 20 and the flowchart of FIG. 21, the integer magnification calculator 2009 calculates an integer magnification from information such as the input / output image size and magnification, and the feature calculator 2002 extracts the extracted pixels. From the block, feature information necessary for selecting the enlargement means is calculated. Then, based on the feature information calculated by the integer multiple enlargement unit 2005, one enlargement unit is selected by the enlargement unit selection unit 2006. Then, the selected pixel of interest is enlarged by an integral multiple.
[0096]
The shaping unit 2007 generates information for shaping the size of the enlarged image at an integer magnification to the size of the desired enlarged image, and performs shaping.
[0097]
The processing procedure of the selection example of the enlargement means in the integer multiple enlargement unit 2005 is shown in the flowcharts of FIGS. This selection is performed according to the calculation results in the number of colors / hue detection unit 20001 in the feature amount calculation unit 2002 and the pixel connection information generation unit 20022. In this embodiment, the maximum number of colors is 4, and the flowcharts of FIGS. 22 to 24 are based on this number of colors. Of these, FIG. 22 shows the number of colors, FIG. 23 shows the number of colors and hues, and FIG. 24 shows a selection example based on the number of colors, hues, and pixel connection information. Thereby, one enlargement means is selected from a plurality of enlargement means 20051 to 20054.
[0098]
Specifically, in the flowchart of FIG. 22, first, if the number of colors is 1 (Y in Step 2201), SW0 of the selection unit 2006 is turned on, and the RGB data from the first enlargement unit 20051 is converted into the shaping unit 2007. Is input. If the number of colors is 2 (Y in Step 2202), SW1 of the selection unit 2006 is turned on, and RGB data and luminance data (Y data) from the third enlargement unit 20053 are input to the shaping unit 2007. If the number of colors is 3 (Y in Step 2203), SW2 of the selection unit 2006 is turned on, and RGB data and luminance data (Y data) from the fourth enlargement unit 20054 are input to the shaping unit 2007. If the number of colors is 4 (N in step 2203), SW3 of the selection unit 2006 is turned on, and the luminance data (Y data) and color difference data (I data and Q data) from the second enlargement means 20052 are selected. After being converted into RGB data by the YIQ / RGB conversion unit 2008, the data is input to the shaping unit 2007. If the number of colors is not 3 in the determination at step 2203, SW3 is turned on and the second enlargement means 20052 is selected.
[0099]
By processing in this way, it is possible to select a plurality of enlargement methods with feature information having only a small number of colors, and to perform pixel enlargement along with jaggy reduction.
[0100]
In the flowchart of FIG. 23, if the number of colors is 1 (Y in Step 2301), SW0 of the selection unit 2006 is turned on, and RGB data from the first enlargement unit 20051 is input to the shaping unit 2007. If the number of colors is 2 (Y in Step 2302), SW1 of the selection unit 2006 is turned on, and RGB data and luminance data (Y data) from the third enlargement unit 20053 are input to the shaping unit 2007. If the number of colors is 3 (Y in step 2303), it is further checked whether all the hues match or are similar (step 2304). If they match or are similar, SW3 is turned on. Turn on. If the number of colors is 4 (Y in step 2305), it is further checked whether or not all hues match or are similar. If they match or are similar, SW3 is turned on, and if neither matches or resembles, SW1 is turned on. If the number of colors is not 4 in the determination in step 2305, SW3 is turned on. Note that the SW selected in the flowchart of FIG. 23 selects the enlargement means 20051 to 20054 shown in the block diagram of FIG.
[0101]
By processing in this way, the combination of the number of colors and the hue enables the anti-aliasing character / line drawing to be enlarged while reducing jaggies.
[0102]
In the flowchart of FIG. 24, if the number of colors is 1 (Y in Step 2401), SW0 of the selection unit 2006 is turned on, and RGB data from the first enlargement unit 20051 is input to the shaping unit 2007. If the number of colors is 2 (step 2402), SW1 of the selection unit 2006 is turned on, and RGB data and luminance data (Y data) from the third enlargement unit 20053 are input to the shaping unit 2007. If the number of colors is 3 (Y in step 2403), it is further checked whether all hues match or are similar (step 2404). If neither matches nor similar, SW1 is turned on. The pixel connection information described later is generated (step 2405). Pixel connection information is generated by a feature amount calculation unit 2002. Then, if it is determined that there is connection from the generated pixel connection information, SW2 is turned on, and if it is determined that there is no connection, SW3 is turned on. If the number of colors is 4 (Y in step 2407), it is further determined whether all the hues match or are similar (step 2408). If they match or are similar, SW3 is turned on, and the match must be similar. SW1 is turned on. If it is determined in step 2407 that the number of colors is not 4, SW3 is turned on. Note that the SW selected in the flowchart of FIG. 24 selects the enlargement means 20051 to 20054 shown in the block diagram of FIG.
[0103]
When the number of colors is 1, for example, the first enlargement unit 20051 simply enlarges one RGB pixel according to the integer magnification Zs as shown in FIG. The simple enlargement is a method of simply enlarging, for example, when Zs = 3, all the values of Zs × Zs pixels are filled with the original image values.
[0104]
By performing processing in this way, jaggy reduction and pixel enlargement can be performed for anti-aliasing characters / line drawings and shadowed characters / line drawings by combining the number of colors, hue, and pixel connection.
[0105]
The generation of the pixel connection information in step 2405 is performed as follows. That is, as shown in FIG. 25, pixel connection determination is performed with luminance data in M × N pixels (5 × 5 pixels in the figure) surrounding the target pixel *. The luminance M × N pixel has the number of colors = 3, that is, the luminance is composed of a maximum value Ymax, a minimum value Ymin, and a median value Ymid. Therefore, if the pixel matching the Ymid value is set to 1 and the other pixels are set to 0, Ymid connection information is obtained. The example shown in FIG. 25 is an example in which one pixel is vertically connected. Moreover, it is good also as having connection with 2 pixels width and 2 connection.
[0106]
FIG. 26 is an explanatory diagram for explaining the operation of the integer magnification calculator 2009. In the integer magnification calculator 2009, a desired integer magnification is set in advance as 2 to Zmax (times). Here, for the sake of simplicity, an example with the main and sub-magnification will be described.
[0107]
When the number of pixels in the input X direction (main scanning direction) is Xin, the number of pixels in the output X direction is Xout, and the input magnification is Zin, the input magnification is
Zin = Xout / Xin
This value is between 2 and Zmax. At this time, the integer magnification Zs is calculated from the staircase characteristics shown in FIG. Further, the characteristics may be shifted from ± 0.5. The integer multiple enlargement unit performs enlargement according to the magnification of Zs. In this example, the magnification Z is
2.5 ≦ Z <3.5
When,
Zs = 3
This integer magnification “3” is output to the integer multiple enlargement unit 305 and the shaping unit 307.
[0108]
FIG. 27 is an explanatory diagram for explaining the operation of the shaping unit 2007. In the shaping unit 2007, from the characteristics of the integer magnification calculator 2009 shown in FIG.
2.5 times ≤ Zin <3.0 times → thinning
Zin = 3.0 times → No shaping: Integer expansion as it is
3.0 times <Zin <3.5 times → Add
Information is known. Therefore, the number of pixels Spix when thinning and additional shaping are required is
Spix = Xin × | Zin−Zs |
The shaping pitch pit is
pit = Zs / | Zin-Zs |
Can be obtained. Then, the enlarged pixels are counted, and when they coincide with the integer value of the shaping pitch pit, thinning or addition is performed. After the match, the shaping pitch pit adds its own value.
[0109]
FIG. 27 shows a time when the magnification is around 3. Zin = 3 is an example in which one pixel is enlarged to 3 × 3 pixels without shaping (FIG. 27A). When thinning out, as shown by the dotted line in FIG.
1: Vertical 3 pixels
2: 3 horizontal pixels
3: 3 pixels vertically and horizontally
Are thinned out. In the case of addition, as shown in FIG.
1: The value of the left pixel is simply copied and filled.
2: The value of the upper pixel is simply copied and filled.
3: Copy and fill the value of the left pixel, and further copy and fill the value of the upper pixel.
Add like this. As a result, jaggy can be reduced.
[0110]
As described above, since the image enlarged at the integer magnification by any one of the enlargement means 20051 to 20054 of the integer magnification enlargement unit 2005 is adjusted to a desired size by the shaping unit 2007, the enlarged image multiplied by the integer can be reduced in jaggy. It can be transformed to any desired size without loss. Further, no color shift occurs at the edge portion.
[0111]
<Sixth Embodiment>
This embodiment requires a process of binarizing the enlarged data and adding and synthesizing with the data before binarization in the past, and in view of the fact that it has not been able to cope with the speeding up of processing, it is possible to perform higher speed processing. It is comprised so that can be implement | achieved.
[0112]
The configuration of the image processing apparatus according to the sixth embodiment is shown in the block diagram of FIG. 29, and the processing procedure of the image processing apparatus is shown in the flowchart of FIG.
[0113]
In FIG. 29, the image processing apparatus includes an enlargement unit 2901, an enhancement processing unit 2902, and a feature information calculation unit 2903, and an M × N pixel block surrounding the target pixel * is enlarged from the image to be enlarged. Is input to the feature information calculation unit 2903, the feature information indicating the feature of the block is calculated by the feature information calculation unit 2903 (step 3001), and the pixel of interest is enlarged to the P × Q pixel block by the enlargement unit 2901 ( In step 3002), the enhancement processing unit 2902 performs enhancement processing for all the pixels P × Q in accordance with the feature information (step 3003). The target pixel is shifted for each pixel, and this process is repeated for all pixels.
[0114]
By processing in this way, the feature information is calculated from the pixel block including the target pixel, and after the target pixel is enlarged, conversion is performed according to the feature information, so that the sharpness is maintained in the expansion of the low resolution image, It is possible to reduce jaggy.
[0115]
An enlargement unit 2901 performs enlargement using a linear interpolation method. The bilinear method, which is generally known as the linear interpolation method, has been briefly described before, but will be described in more detail with reference to FIG.
[0116]
As shown in FIG. 31, for example, a 3 × 3 pixel block with M = N = 3 is given by P0 to P8, the target pixel is P4, and this target pixel P4 is enlarged by, for example, four times ( P = Q = 4), and the enlarged pixel Px is 16 pixels P400 to P433. When interpolating 16 pixels, which pixel among P0 to P8 is used for interpolation,
For P400, P401, P410, and P411, P0, P1, P3, P4,
For P402, P403, P412, and P413, P1, P2, P4, P5,
For P420, P421, P430, P431, P3, P4, P6, P7,
For P422, P423, P432, P433, P4, P5, P7, P8,
Each of the four points is used, and the enlarged pixel is expressed in linear form from these four points and the coefficients a, b, c, d with the distances i, j as weights.
P400 = (1-i) (1-j) P0 / a + i (1-j) P1 / b + (1-i) jP3 / c + ij / dP4 (6)
Is calculated by
[0117]
Other expansion methods include the bicubic method. The bicubic method can obtain higher image quality than the bilinear method, but the calculation load is higher. Since this bicubic method itself is publicly known, description thereof is omitted here.
[0118]
The feature information calculation unit 2903 extracts the maximum value Max and the minimum value Min in the M × N pixel block, and the difference between them is extracted.
Range = Max−Min
And the difference Range is used as feature information.
[0119]
Thus, since the feature information is the difference between the maximum value and the minimum value in the pixel block, by using these pieces of information in each block, it is possible to perform an accurate enhancement process for each block.
[0120]
In the enhancement processing unit 2902, as shown in the flowchart of FIG. 32, all the pixels Px enlarged by the enlargement unit 2901 are normalized by the feature amount. Then, the normalized pixel data Px ′ is
Px ′ = (Px−Min) / Range (7)
(Step 3201).
[0121]
Next, a conversion characteristic (described later) is generated according to the difference Range that is the feature information (step 3202), and Px ′ is converted to obtain Px ″ (step 3203).
Pxout = Px “× Range + Min (8)
In step 3204, denormalization is performed to obtain the enhanced data Pxout after enlargement.
[0122]
The conversion characteristics of the enhancement processing unit 2902 are as shown in FIG. That is, since the input and output are both normalized values, the vertical axis and the horizontal axis have a range of 0 to 1. Conversion characteristics are adaptively generated from FIG. 33A to FIG. 33C according to the size of the feature information range.
[0123]
When the range is small, the through characteristics as shown in FIG.
Px "= Px '(9)
If the value is large, as shown in FIG.
Figure 0004115073
The binary characteristic is converted. The intermediate conversion characteristics are as shown in FIG.
[0124]
There are two ways to make the variable corresponding to the Range: a method of defining a function in advance and several steps of characteristics, and a method of selecting one according to the value of the Range. The former method can achieve stepless characteristics.
[0125]
Example function:
When 0 ≦ Px ′ <0.5, Px “= (− 0.6 × Range + 1) × Px ′
other than that
Px “= (− 0.6 × Range + 1) × Px ′ + 0.6 * Range (11)
In this way, the range is associated with the size.
[0126]
It is also possible to vary the threshold value of 0.5 mentioned in the example and the slopes of the straight lines 0-t1 and t2-t3 according to the range.
[0127]
In addition, as a method of preparing several characteristics and selecting one according to the value of Range, for example, it is classified into three, large, medium and small, small: FIG. 33 (a), medium: FIG. 33 (b) Large: This can be realized by setting so as to select FIG. As the range is made finer, of course, it approaches the stepless function definition.
[0128]
Since the enlargement unit 2901 converts the enlarged pixels with the conversion characteristics generated in this way, the enhancement process can be adaptively performed according to the feature information, and the image data can be enlarged without reducing the sharpness. it can.
[0129]
According to the present embodiment, a plurality of conversion tables used at the time of conversion are provided, one conversion table is selected according to the feature information, and the enlarged pixel is converted based on the selected conversion table. When performing, it becomes possible to process at high speed.
[0130]
<Seventh Embodiment>
This embodiment is an example in which enlargement processing is performed using a luminance signal and a color difference signal.
[0131]
The image processing apparatus according to this embodiment includes an enlargement unit 3401, an enhancement processing unit 3402, and a feature information calculation unit 3403. The enlargement unit 3401 further includes a Y signal enlargement unit 34011 and an I and Q signal enlargement unit 34012. .
[0132]
An M × N pixel block (3 × 3 in FIG. 34) surrounding the target pixel * of the luminance Y signal (hereinafter referred to as “Y signal”) is input to the Y signal expansion unit 34011 and is expanded. The color difference I and Q signals (hereinafter referred to as “I signal and Q signal”) are input to the I and Q signal enlargement unit 17012 and are similarly enlarged.
[0133]
The processing procedure at this time is shown in the flowchart of FIG. That is, in this process, first, feature information is calculated by the feature information calculation unit 3403 from the Y signal M × N pixel block (step 3501). Feature information
・ Maximum value Ymax
・ Minimum value Ymin
・ Difference Yrange = Ymax-Ymin
These are three pieces of information.
[0134]
Then, the calculated feature information is set in the enhancement processing unit 3402, and the Y signal is expanded (step 3503). Next, the enlarged Y signal is enhanced (step 3504), and the I and Q signals are enlarged (step 3505).
[0135]
Regarding the expansion of the YIQ signal,
1) A linear interpolation method (eg, bilinear method) is used for Y, I, and Q signals.
2) The Y signal is enlarged by a linear interpolation method (eg, bilinear method), and the simple enlargement method (copying with the same value) is used for the I and Q signals.
There are methods.
[0136]
At this time, when the Y signal enlargement method is a linear interpolation method and the enlargement magnification of the pixel of interest is fixed, the weight coefficients i and j in FIG. 31 (four weight coefficients for every 16 pixels in the figure) are constants. It becomes. That is, it is not necessary to calculate i and j every time.
[0137]
Further, when the magnification to be enlarged by the enlargement unit 3401 is, for example, 2 to 15 times (here, the same magnification is used in the main scanning and sub-scanning directions), a weighting factor is set for the enlargement unit 3401 as shown in FIG. If the unit 3404 calculates in advance a weighting factor corresponding to an integral multiple between the magnifications, and sets the weighting factor in the enlargement unit 3401 according to the input of the magnification, the processing speed can be increased. it can.
[0138]
According to this embodiment, the image information is a luminance / color difference signal, the luminance signal is enlarged by the enlargement unit 3401 by linear interpolation, and the feature information calculation unit 3403 generates feature information from the luminance signal (Y signal). Since the conversion according to the feature information is performed on the enlarged luminance signal, no color shift occurs due to the enlargement by the luminance and color difference signals. In addition, since the enhancement processing in the enhancement processing unit 3402 is performed only with the luminance signal, it can be processed at high speed.
[0139]
【The invention's effect】
The present invention is as described above. Configured as described in Because The A random color image can be magnified at an arbitrary integer magnification at high speed.
[0141]
According to the third aspect of the present invention, a pixel block is cut out from the first color space data that is the original image, converted into space data of a different second color, pattern matching is performed using the second color space data, Each pixel has information on which pixel information in the pattern is used to fill the enlarged pixel and fills the enlarged pixel using pixel data in the first color space that matches this information. When color matching is performed on each of the RGB planes, color misregistration occurs. However, this color misregistration can be prevented by converting to a suitable color space.
[0142]
According to the fourth aspect of the present invention, the second color space data is a color space representing three elements of luminance (= lightness), hue, and saturation, and pattern matching includes at least one of the three elements. Therefore, when the hue in the pixel block is filled with two different colors, the two colors can be separated by one plane of hue. In addition, since shaded characters / line drawings composed of the same hue have different saturations, two colors can be separated by one saturation plane, and pattern matching can be performed accurately.
[0143]
According to the invention of claim 5, the second color space data is a color space representing three elements of luminance and color difference (luminance: 1 element, color difference: 2 elements), and the pattern matching is at least one of the 3 elements. Since it is performed using one element, color misregistration can be prevented.
[0144]
According to the sixth aspect of the present invention, the pixel block is divided into N, and the pattern search of the pixel block including the target pixel is performed using the information of the divided block. It is possible to cope with increasing factors such as correspondence of don't care of information, and it is possible to accurately retrieve one pattern at high speed.
[0145]
According to the seventh aspect of the invention, the continuous tone color image data with relatively low gradation is converted into T (≧ 2) values for each pixel, and the T-valued image data is matched with a pattern in which jaggy occurs. If the pattern is determined to be a pattern that causes jaggies, the pixel data is embedded in the T-valued image data so that jaggies do not occur and the smoothing enlargement process is performed. Since an enlarged image with high gradation is generated, smoothing enlargement processing for both a binary image and a halftone image can be performed without increasing the calculation load.
[0146]
According to the eighth aspect of the present invention, since the integer magnification and the fraction magnification are calculated according to the magnification, and the smoothing enlargement processing is performed with the integer magnification and then the enlargement processing is performed with the fraction magnification, it is possible to deal with real number magnification. .
[0147]
According to the ninth aspect of the invention, since the smoothing enlargement process is performed based on the plurality of pixel embedding patterns for each integer magnification after the smoothing enlargement process, the process can be speeded up.
[0148]
According to the tenth aspect of the present invention, the RGB data is converted into a brightness component signal and a color component signal, the converted signal is subjected to pattern matching, and the converted signal is subjected to smoothing enlargement processing and then the original RGB data. Therefore, it is possible to prevent the hue of the edge from changing.
[0149]
According to the eleventh aspect of the present invention, since only the brightness component signal is converted into a T-value density signal and pattern matching is performed, the processing speed can be increased.
[Brief description of the drawings]
FIG. 1 is a block diagram showing an enlargement processing unit of a main part of an image processing apparatus according to a first embodiment of the present invention.
FIG. 2 is a flowchart showing a processing procedure in an enlargement processing unit in FIG. 1;
FIG. 3 is an explanatory diagram showing specific contents of each file in the pattern processing unit in FIG. 1;
FIG. 4 is an explanatory diagram illustrating a method for enlarging an original image by converting a pixel block of the original image from a first color space to a second color space.
FIG. 5 is a flowchart showing a procedure for creating dot arrangement information.
FIG. 6 is an explanatory diagram showing a division state when a pixel block is divided and a pattern search of an image block including a target pixel is performed using information on the divided blocks.
FIG. 7 is a diagram illustrating a relationship with a decimal number when a 2-byte code is generated using pixels of a divided pixel block.
FIG. 8 is a block diagram showing a color image processing apparatus according to a second embodiment of the present invention.
FIG. 9 is an explanatory diagram showing a configuration of the M × N buffer of FIG. 8;
FIG. 10 is an explanatory diagram illustrating a processing example of the binarization unit in FIG. 8;
FIG. 11 is an explanatory diagram showing an embedding process of the embedding unit in FIG. 8;
12 is a flowchart showing a smoothing enlargement processing procedure of the color image processing apparatus of FIG. 8;
FIG. 13 is a block diagram showing a color image processing apparatus according to a third embodiment of the present invention.
FIG. 14 is an explanatory diagram showing a ternarization process in the third embodiment.
FIG. 15 is an explanatory diagram illustrating smoothing expansion processing according to the third embodiment.
FIG. 16 is a flowchart illustrating a processing procedure of smoothing expansion processing according to the third embodiment.
FIG. 17 is an explanatory diagram showing a nearest neighbor method and a bilinear method.
FIG. 18 is a block diagram illustrating a configuration of an image processing apparatus according to a fourth embodiment of the present invention.
FIG. 19 is a flowchart illustrating a processing procedure of the image processing apparatus according to the fourth embodiment.
FIG. 20 is a block diagram illustrating a configuration of an image processing apparatus according to a fifth embodiment of the present invention.
FIG. 21 is a flowchart illustrating a processing procedure of the image processing apparatus according to the fifth embodiment.
FIG. 22 is a flowchart illustrating a processing procedure in the case of selecting only from the number of colors of the enlargement unit in the integer multiple enlargement unit of the fifth embodiment.
FIG. 23 is a flowchart showing a processing procedure when selecting from the number of colors and hue of the enlargement means in the integer multiple enlargement unit of the fifth embodiment.
FIG. 24 is a flowchart showing a processing procedure when selecting from the number of colors, hue, and pixel connection information of the enlargement means in the integer multiple enlargement unit of the fifth embodiment.
FIG. 25 is a diagram for explaining generation of pixel connection information;
FIG. 26 is a diagram for explaining the operation of the integer magnification calculator.
FIG. 27 is a diagram for explaining the operation of the shaping unit;
FIG. 28 is a diagram illustrating an example of an enlargement method for simply enlarging one RGB pixel in accordance with an integer magnification.
FIG. 29 is a block diagram illustrating a configuration of an image processing apparatus according to a sixth embodiment of the present invention.
FIG. 30 is a flowchart illustrating a processing procedure of the image processing apparatus according to the sixth embodiment.
FIG. 31 is a diagram for explaining details of an enlargement method known as a bilinear method in an enlargement unit;
FIG. 32 is a flowchart illustrating a processing procedure of an enhancement processing unit that normalizes all pixels enlarged by an enlargement unit using feature amounts.
FIG. 33 is an explanatory diagram illustrating conversion characteristics of the enhancement processing unit.
FIG. 34 is a block diagram showing a configuration of an image processing apparatus according to a seventh embodiment of the present invention.
FIG. 35 is a flowchart illustrating a processing procedure of the image processing apparatus according to the seventh embodiment.
FIG. 36 is a block diagram illustrating a configuration in which a weighting factor corresponding to an integral multiple between magnifications is calculated in advance, and a weighting factor is set in an enlargement unit according to the input of the magnification, and enlarged.
[Explanation of symbols]
100 Enlargement processing section
110 File section
111 pattern files
112 dot layout file
113 pixel reference file
120 pattern generator
130 Pattern search section
140 Embedded processing unit
141 Embedding part
142 Simple embedding part
150 integer magnification
160 pixel block
801 RGB / YIQ converter
802 M × N buffer
803 binarization unit
803a T-value conversion unit
804 Pattern matching processing unit
805 Pattern storage unit
806 Embedded part
806-1 Simple embedding part
806-2 Template embedding part
806-3 Template storage unit
807 Color component enlargement section
808 YIQ / RGB converter
809 fraction scaling unit
810 Magnification calculator
811 Combining part
1801 M × N pixel block
1802 First color space data converter
1803 First enlargement means
1804 Second enlargement means
1805 Third enlargement means
1806 Fourth enlargement means
1807, 2006 selection unit
1808 Second color space data converter
1809, 2002 Feature amount calculation unit
2001 RGB: M × N pixel block
2003 RGB / YIQ converter
2004 Luminance Y: M × N pixel block
2005 Integer multiple enlargement part
20051 First enlargement means
20052 Second enlargement means
20053 Third enlargement means
20054 Fourth enlargement means
2007 shaping department
2008 YIQ / RGB converter
2009 Integer magnification calculator
2901, 3401 Enlarged part
29011 Y signal expansion section
29012 I and Q signal expansion section
2902, 3402 Enhancement processing unit
2903 Feature information calculation unit
3403 Feature information calculation unit
3404 Weight coefficient setting unit

Claims (10)

入力された画像データに対して画像を拡大する処理を行う画像処理装置において、
補正対象のパターン毎、かつ、倍率毎に拡大画素のドット配置情報を保持し、パターンマッチング結果及び倍率から1つのドット配置情報を抽出するため、予め複数のパターンを格納したパターンファイルのパターン毎に、どのように注目画素の拡大画素を配置するかが整数倍率毎の情報として格納されたドット配置ファイルと、
前記ドット配置ファイルに予め設定され、入力されたRGB画像データの注目画素を含むM×N((M,N≧2の整数)画素ブロックのどの位置の画素情報で拡大画素を埋めるかという画素参照情報が格納された画像参照ファイルと、
前記RGB画像データから画素ブロックを切り出し、輝度色差信号データへ変換し、輝度色差信号データの輝度データを用いて予め登録されているパターンファイル中のパターンとパターンマッチングを行う手段と、
前記パターンマッチングにより一致するパターンがある場合、一致したパターンファイルに対応するドット配置ファイルに応じた画像参照ファイルを特定し、前記ドット配置ファイル中の各拡大画素毎に、特定された画像参照ファイルの画素参照情報に該当する前記RGB画像データ中の画素RGB値によって拡大画素を埋め込むことで補正対象画素を拡大して埋め込み、一致するパターンがない場合、入力されたRGB画像データのM×N画素ブロック中の補正対象画素のRGB値そのもので単純拡大して埋め込む手段と、
を備えていることを特徴とする画像処理装置。
In an image processing apparatus that performs processing for enlarging an image on input image data,
In order to hold the dot arrangement information of the enlarged pixels for each pattern to be corrected and for each magnification, and to extract one dot arrangement information from the pattern matching result and the magnification, for each pattern of the pattern file storing a plurality of patterns in advance A dot arrangement file stored as information for each integer magnification how to arrange the enlarged pixel of the target pixel;
Pixel reference of which pixel information is to be filled with pixel information in an M × N ((M, N ≧ 2)) pixel block that is preset in the dot arrangement file and includes the target pixel of the input RGB image data An image reference file containing the information,
Means for extracting a pixel block from the RGB image data, converting the pixel block into luminance color difference signal data, and performing pattern matching with a pattern in a pattern file registered in advance using luminance data of the luminance color difference signal data;
If there is a matching pattern by the pattern matching, an image reference file corresponding to the dot arrangement file corresponding to the matched pattern file is specified, and for each enlarged pixel in the dot arrangement file, the specified image reference file embedding an enlarged correction object pixel by embedding enlarged pixel by the RGB values of the pixels in the RGB image data corresponding to the pixel reference information, if there is no matching pattern, M × N pixels of the RGB image data input Means for simply enlarging and embedding the RGB value itself of the correction target pixel in the block ;
An image processing apparatus comprising:
前記M×Nの画素ブロックを複数のブロックに分割し、分割されたブロックの1つの画素ブロックの全画素について2バイトコードを生成し、残りの画素ブロックの情報を用いて1つのパターンを形成することを特徴とする請求項1記載の画像処理装置。  The M × N pixel block is divided into a plurality of blocks, a 2-byte code is generated for all the pixels of one pixel block of the divided blocks, and one pattern is formed using information of the remaining pixel blocks The image processing apparatus according to claim 1. 入力画像データをT(T≧2の整数)値化する手段を備え、前記T値化する手段によりM×N画素の輝度信号に基づいて閾値を算出し、この閾値により前記輝度信号をT値化濃度データに変換し、前記パターンマッチングする手段は(T−1)回のパターンマッチング処理を行い、前記埋め込む手段は前記パターンマッチング処理の処理過程でマッチング処理結果が一致の場合には一致したパターンに対応したテンプレートを参照して画素データを埋め込み、不一致の場合には注目画素データを一時的に埋め込む処理を実行し、前記(T−1)回のパターンマッチング処理が終了した後、拡大処理して埋め込むことを特徴とする請求項1記載の画像処理装置。  Means for converting the input image data into T values (integer of T ≧ 2), calculates a threshold value based on the luminance signal of M × N pixels by the T-value conversion means, and converts the luminance signal into a T value based on the threshold value; The pattern matching means performs (T-1) pattern matching processing, and the embedding means matches the pattern when the matching processing result is the same in the process of the pattern matching processing. The pixel data is embedded with reference to the template corresponding to, and when there is a mismatch, the process of temporarily embedding the pixel data of interest is executed, and after the (T-1) times of the pattern matching process, the enlargement process is performed. The image processing apparatus according to claim 1, wherein the image processing apparatus is embedded. 前記ドット配置情報の抽出は、予め設定された倍率における拡大画素のドット配置情報に基づいて、他の倍率の拡大画素ドット配置情報を作成することを特徴とする請求項1ないし3のいずれか1項に記載の画像処理装置。  The extraction of the dot arrangement information creates enlarged pixel dot arrangement information of other magnifications based on dot arrangement information of enlarged pixels at a preset magnification. The image processing apparatus according to item. 前記埋め込む手段は、拡大部と、強調処理部と、特徴情報算出部とからなり、拡大対象である画像から、注目画素を囲むM×N画素ブロックの画像情報が拡大部と特徴情報算出部に入力され、同ブロックの特徴を示す特徴情報を特徴情報算出部で算出し、前記拡大部で注目画素はP×Q(P,Q≧2)画素ブロックに拡大され、前記算出された特徴情報に応じて、前記強調処理部で全画素P×Q画素ブロックの強調処理を、注目画素を1画素毎にずらしていき、全画素分繰り返すことを特徴とする請求項1記載の画像処理装置。  The embedding unit includes an enlargement unit, an enhancement processing unit, and a feature information calculation unit. From the image to be enlarged, image information of an M × N pixel block surrounding the target pixel is supplied to the enlargement unit and the feature information calculation unit. The feature information indicating the feature of the same block is input and calculated by the feature information calculation unit. The enlargement unit expands the target pixel into a P × Q (P, Q ≧ 2) pixel block, and the calculated feature information The image processing apparatus according to claim 1, wherein the enhancement processing unit repeats the enhancement process for all pixels P × Q pixel blocks by shifting the target pixel for each pixel and repeating the process for all pixels. 前記埋め込む手段は、画像サイズと倍率とに基づいて拡大する整数倍率を算出する整数倍率算出部と、算出された整数倍率に基づいて前記成形倍率算出部から得られた間引き、整形なし、追加の情報から間引き、追加の整形を要する場合の画素数と整形ピッチを算出し、拡大した画素をカウントしていき、整形ピッチの整数値と一致したとき、間引き、あるいは追加の処理を行うことを特徴とする請求項1記載の画像処理装置。  The embedding means includes an integer magnification calculation unit that calculates an integer magnification that is enlarged based on an image size and a magnification, and thinning obtained from the molding magnification calculation unit based on the calculated integer magnification, no shaping, and additional Thinning out information, calculating the number of pixels and shaping pitch when additional shaping is required, counting the enlarged pixels, and performing thinning or additional processing when it matches the integer value of the shaping pitch The image processing apparatus according to claim 1. 前記拡大処理が複数設定され、M×N画素における色数、色相の一致または類似、輝度データに基づく画素の連結判定の三者の組み合わせによって切り替えられることを特徴とする請求項1記載の画像処理装置。  2. The image processing according to claim 1, wherein a plurality of enlargement processes are set and are switched according to a combination of the number of colors in M × N pixels, hue matching or similarity, and pixel connection determination based on luminance data. apparatus. 入力された画像データに対して画像を拡大する処理を行う画像処理方法において、
補正対象のパターン毎、かつ、倍率毎に拡大画素のドット配置情報を保持し、パターンマッチング結果及び倍率から1つのドット配置情報を抽出するため、予め複数のパターンを格納したパターンファイルのパターン毎に、どのように注目画素の拡大画素を配置するかが整数倍率毎の情報として格納されたドット配置ファイルと、
前記ドット配置ファイルに予め設定され、入力されたRGB画像データのM×N((M,N≧2の整数)画素ブロックのどの位置の画素情報で拡大画素を埋めるかという画素参照情報が格納された画像参照ファイルと、
を有し、
前記RGB画像データから画素ブロックを切り出し、輝度色差信号データへ変換し、輝度色差信号データを用いて予め登録されているパターンファイル中のパターンとパターンマッチングを行い、
前記パターンマッチングにより一致するパターンがある場合、一致したパターンファイルに対応するドット配置ファイルに応じた画像参照ファイルを特定し、特定された画像参照ファイルの画素参照情報に該当するRGB画像データの値によって補正対象画素を拡大して埋め込み、一致するパターンがない場合、入力されたRGB画像データのM×N画素の補正対象画素の値そのもので単純拡大して埋め込むことを特徴とする画像処理方法。
In an image processing method for performing an image enlargement process on input image data,
In order to hold the dot arrangement information of the enlarged pixels for each pattern to be corrected and for each magnification, and to extract one dot arrangement information from the pattern matching result and the magnification, for each pattern of the pattern file storing a plurality of patterns in advance A dot arrangement file stored as information for each integer magnification how to arrange the enlarged pixel of the target pixel;
Pixel reference information indicating in which position the pixel information in the M × N ((M, N ≧ 2)) pixel block of the input RGB image data is filled with the enlarged pixel is stored in advance in the dot arrangement file. Image reference files,
Have
A pixel block is cut out from the RGB image data, converted to luminance color difference signal data, pattern matching with a pattern file registered in advance using the luminance color difference signal data is performed,
When there is a matching pattern by the pattern matching, an image reference file corresponding to the dot arrangement file corresponding to the matched pattern file is specified, and depending on the value of RGB image data corresponding to the pixel reference information of the specified image reference file An image processing method characterized by enlarging and embedding a correction target pixel, and embedding by simply enlarging and embedding the value of the correction target pixel of M × N pixels of input RGB image data when there is no matching pattern.
入力された画像データに対して画像を拡大する処理を行うコンピュータで実行するための画像処理プログラムにおいて、
補正対象のパターン毎、かつ、倍率毎に拡大画素のドット配置情報を保持し、パターンマッチング結果及び倍率から1つのドット配置情報を抽出するため、予め複数のパターンを格納したパターンファイルのパターン毎に、どのように注目画素の拡大画素を配置するかが整数倍率毎の情報として格納されたドット配置ファイルと、
前記ドット配置ファイルに予め設定され、入力されたRGB画像データのM×N((M,N≧2の整数)画素ブロックのどの位置の画素情報で拡大画素を埋めるかという画素参照情報が格納された画像参照ファイルと、
を有し、
前記RGB画像データから画素ブロックを切り出し、輝度色差信号データへ変換し、輝度色差信号データを用いて予め登録されているパターンファイル中のパターンとパターンマッチングを行う処理と、
前記パターンマッチングにより一致するパターンがある場合、一致したパターンファイルに対応するドット配置ファイルに応じた画像参照ファイルを特定し、特定された画像参照ファイルの画素参照情報に該当するRGB画像データの値によって補正対象画素を拡大して埋め込み、一致するパターンがない場合、入力されたRGB画像データのM×N画素の補正対象画素の値そのもので単純拡大して埋め込む処理と、
を備えていることを特徴とする画像処理プログラム。
In an image processing program to be executed by a computer that performs processing for enlarging an image with respect to input image data,
In order to hold the dot arrangement information of the enlarged pixels for each pattern to be corrected and for each magnification, and to extract one dot arrangement information from the pattern matching result and the magnification, for each pattern of the pattern file storing a plurality of patterns in advance A dot arrangement file stored as information for each integer magnification how to arrange the enlarged pixel of the target pixel;
Pixel reference information indicating in which position the pixel information in the M × N ((M, N ≧ 2)) pixel block of the input RGB image data is filled with the enlarged pixel is stored in advance in the dot arrangement file. Image reference files,
Have
A process of cutting out a pixel block from the RGB image data, converting it into luminance color difference signal data, and performing pattern matching with a pattern in a pattern file registered in advance using the luminance color difference signal data;
When there is a matching pattern by the pattern matching, an image reference file corresponding to the dot arrangement file corresponding to the matched pattern file is specified, and depending on the value of RGB image data corresponding to the pixel reference information of the specified image reference file If the correction target pixel is enlarged and embedded, and there is no matching pattern, the process of simply enlarging and embedding the correction target pixel value of the M × N pixel of the input RGB image data itself;
An image processing program comprising:
請求項9記載の画像処理プログラムがコンピュータによって読み取られ、実行可能に記録されていることを特徴とする記録媒体。  A recording medium, wherein the image processing program according to claim 9 is read by a computer and recorded so as to be executable.
JP2000106878A 1999-05-06 2000-04-07 Image processing apparatus and image processing method Expired - Fee Related JP4115073B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000106878A JP4115073B2 (en) 1999-05-06 2000-04-07 Image processing apparatus and image processing method

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
JP11-126021 1999-05-06
JP12602199 1999-05-06
JP11-276996 1999-09-29
JP27699699 1999-09-29
JP11-295819 1999-10-18
JP29581999 1999-10-18
JP2000106878A JP4115073B2 (en) 1999-05-06 2000-04-07 Image processing apparatus and image processing method

Publications (2)

Publication Number Publication Date
JP2001188900A JP2001188900A (en) 2001-07-10
JP4115073B2 true JP4115073B2 (en) 2008-07-09

Family

ID=27471165

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000106878A Expired - Fee Related JP4115073B2 (en) 1999-05-06 2000-04-07 Image processing apparatus and image processing method

Country Status (1)

Country Link
JP (1) JP4115073B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3973602B2 (en) 2002-07-10 2007-09-12 株式会社リコー Image processing apparatus, image processing method, and software program
JP4802853B2 (en) 2006-05-18 2011-10-26 富士ゼロックス株式会社 Image processing apparatus and image processing program
JP4506854B2 (en) * 2008-03-04 2010-07-21 富士ゼロックス株式会社 Image processing apparatus and image forming apparatus

Also Published As

Publication number Publication date
JP2001188900A (en) 2001-07-10

Similar Documents

Publication Publication Date Title
US6058248A (en) Computerized method for improving data resolution
EP0949585B1 (en) Apparatus and method for image data interpolation
EP0650287B1 (en) Image processing method and apparatus
JP2000228715A (en) Method for readjusting pixel in continuous gradation picture data
KR100526279B1 (en) Image data compressing method and restoring method
JP3075269B2 (en) Image data interpolation method, image data interpolation device, and medium recording image data interpolation program
US6898332B2 (en) Image processing device and image processing method
US6289136B1 (en) Image processing method and apparatus
JP4115073B2 (en) Image processing apparatus and image processing method
JP3888090B2 (en) Image processing apparatus and image processing method
JPH07334648A (en) Method and device for processing image
JP4265363B2 (en) Image processing device
JP3045134B2 (en) Image data interpolation apparatus, image data interpolation method, and medium recording image data interpolation program
JP4400760B2 (en) Image data interpolation apparatus, image data printing apparatus, image data interpolation method, and medium on which image data interpolation program is recorded
JP3173496B2 (en) Image data interpolation apparatus, computer for image data interpolation processing, image data interpolation method, and medium recording image data interpolation program
JP4171902B2 (en) Object pixel extraction device, object pixel extraction method, medium on which object pixel extraction program is recorded, and object pixel extraction program
JP2001268349A (en) Device and method for deciding object pixel and medium with object pixel decision program recorded and the same program and device and method for extracting object pixel and medium with object pixel extraction program recorded and the same program
JP3201338B2 (en) Image data interpolation apparatus, image data interpolation method, and medium recording image data interpolation program
JP2001177719A (en) Image processor and print system and image display system
JP3054299B2 (en) Image processing apparatus and method
JP4517288B2 (en) Image processing apparatus, image processing method, and program thereof
JP3054338B2 (en) Image processing apparatus and method
JPH07210669A (en) Image processor and its control method
JP4081628B2 (en) Image data interpolation method, image data interpolation device, and computer readable recording medium recording image data interpolation program
JPH07262351A (en) Image processor and control method for the same

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040715

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070724

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070925

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080310

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080318

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080415

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

Free format text: PAYMENT UNTIL: 20110425

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110425

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120425

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130425

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140425

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees