Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4470775B2 - 画素補間装置及び画素補間プログラム - Google Patents
[go: Go Back, main page]

JP4470775B2 - 画素補間装置及び画素補間プログラム - Google Patents

画素補間装置及び画素補間プログラム Download PDF

Info

Publication number
JP4470775B2
JP4470775B2 JP2005079561A JP2005079561A JP4470775B2 JP 4470775 B2 JP4470775 B2 JP 4470775B2 JP 2005079561 A JP2005079561 A JP 2005079561A JP 2005079561 A JP2005079561 A JP 2005079561A JP 4470775 B2 JP4470775 B2 JP 4470775B2
Authority
JP
Japan
Prior art keywords
pixel
value
interpolation point
original
distance value
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
JP2005079561A
Other languages
English (en)
Other versions
JP2006262306A (ja
Inventor
健 宮下
弘典 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2005079561A priority Critical patent/JP4470775B2/ja
Priority to US11/378,451 priority patent/US7826686B2/en
Publication of JP2006262306A publication Critical patent/JP2006262306A/ja
Application granted granted Critical
Publication of JP4470775B2 publication Critical patent/JP4470775B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

本発明は、画像の画素間に画素を補って画像の解像度を高める画素補間装置と、このような画素補間装置としてコンピュータを動作させる画素補間プログラムとに、関する。
周知のように、画像の解像度を高めることによって画像を拡大する場合、原画像を構成する原画素の間に新たな画素を幾つか補う必要がある。新たな画素を原画素間に補う場合、新たな画素の画素値を、それに最も近い座標にある原画素の画素値をコピーしたものとする方法があるが、その方法によって解像度が高められた画像は、虫眼鏡で拡大して見たときのようなモザイク状となってしまう。そこで、拡大画像を滑らかな画像にするため、通常は、原画像を構成する原画素の間隙に新たな画素のものとして定義した各座標(これを補間点という)での画素値を、その補間点の周囲にある幾つかの原画素の画素値から数学的に推定するという方法が、採られている。
そして、補間点での画素値を数学的に推定する方法としては、双三次補間法(バイキュービック法)と双一次補間法(バイリニア法)とが、良く知られている。何れの補間法とも、基本的には、一つの補間点の周囲に配置されている幾つかの原画素の画素値のそれぞれに対し、それら原画素からその補間点までの距離に応じた重みを付け、重み付けがなされた各画素値の総和をその補間点の画素値とするものとなっている。
具体的には、双三次補間法は、補間関数(sinπz)/πzのテイラー展開式における四次以降の項を無視してなる三次式の変数zに対して距離値を代入することによってその原画素の画素値に対する重みを算出するという演算を、縦方向と横方向とについて行い、縦方向の重みと横方向の重みとを互いに乗じて得た値を、その原画素の画素値に乗ぜられる最終的な重みとするというものである。そして、この双三次補間法においては、このような重み付けの対象が補間点の周囲にある16個の原画素となっており、それら16個の原画素のそれぞれについて縦成分の三次の演算と横成分の三次の演算とを行うようになっている。このため、この双三次補間法によると、演算に非常に時間が掛かるものの、補間精度が高く滑らかな画像が得られる。
一方、双一次補間法は、4個の原画素にて補間点が囲まれる矩形領域の縦方向と横方法の距離とをそれぞれ1に規格化し、原画素から補間点までの逆距離(その原画素の対角側にある原画素とその補間点との距離)を算出するという演算を、縦方向と横方向とについて行い、縦方向の重みと横方向の重みとを互いに乗じて得た値を、その原画素の画素値に乗ぜられる最終的な重みとするというものである。つまり、この双一次補間法は、補間点を囲む4個の原画素の画素値についてのその補間点でのいわゆる逆距離加重平均を算出する方法である。そして、前述したように、この双一次補間法においては、このような重み付けの対象が補間点の周囲にある4個の原画素となっており、それら4個の原画素のそれぞれについて縦成分の一次の演算と横成分の一次の演算と行うようになっている。このため、この双一次補間法によれば、補間精度はさほど高くないものの、演算を比較的早く終えることができる。
なお、新たな画素を原画素間に補充する場合において、原画像内での補間点の座標の採り方によって、拡大画像の境界(辺縁)に隣接する位置に原画素が配置されない場合がある。この場合、原画素と境界との間に幾つかの補間点が存在することとなるが、このような補間点について上記の双一次補間法を用いて画素値を演算しようにも、その補間点の周囲に4個の原画素が揃っていないため、画素値を算出できない。そこで、このように原画素と境界との間に隣接する補間点については、周囲にある原画素と同じ画素値を持つ原画素が、境界の外側にあるものと仮定して、4個の原画素の画素値についてのその補間点での逆距離加重平均が算出されることとなる。このような処理は、境界値処理と称されている。
特許第3045134号公報
ところで、プリンタのようなメモリの容量が十分でない情報処理装置において、画像の拡大を行う場合、原画像の画像データに対して一度に画素補間処理を行うことができないことがある。この場合、情報処理装置は、原画像の画像データを幾つかに分割し、分割された画像データのそれぞれに対して順に前述の画素補間処理を行うことがある。
ところが、分割された画像データのそれぞれに対して別々に画素補間処理を行ってしまうと、処理後の各画像データによる画像を一つの拡大画像として結合したときに、その拡大画像に、画像の繋ぎ目が現れてしまう場合がある。
例えば、図18(a)に示されるような横縞と縦縞とからなる画像を、E−E線に沿って二分割し、分割後の画像をそれぞれ双一次補間法を用いて別個に拡大し、拡大後の画像を結合すると、図18(b)に示されるように、結合後の拡大画像内の縦縞模様におけるE−E線上にある白縞と黒縞との境界が、他の境界における濃淡の変化と異なる濃淡の変化を持ってしまい、繋ぎ目が目立ってしまう。この繋ぎ目が現れる現象は、縦縞における白縞と黒縞との境界で画像の分割が行われ、なおかつ、その分割線に隣接する補間点において前述した境界値処理が行われると、生じてしまう。従って、この現象は、図18(a)に示されるような市松模様だけでなく、例えば、図21に示されるような市松模様においても生じ得る。
本発明は、前述したような従来技術の有する問題点に鑑みてなされたものであり、その課題は、濃淡の変化が鋭い画像におけるその濃淡の境界部分において画像が分割されて、その分割された画像をそれぞれを双一次補間法を用いて拡大してから互いに結合するという場合であっても、最終的な拡大画像において、画像の繋ぎ目をできるだけ目立たせないようにすることにある。
上記の課題を解決するために発明された画素補間装置は、二次元的に配列された多数の画素により構成される原画像の画像データを処理対象として取得する画像データ取得部, 前記画像データ取得部が取得した画像データの原画像についての拡大倍率を取得する倍率取得部,前記倍率取得部が取得した拡大倍率により定まる出力画像の座標における補間点の座標値を、前記倍率取得部が取得した拡大倍率に基づいて算出した逆変換倍率を用いて前記原画像の座標における座標値に変換し、原画像の半画素分だけ左側及び上側にずらすことにより補間点を前記原画像の座標上に定義する補間点定義部,前記補間点定義部が定義した全ての補間点のそれぞれについて、その補間点の周囲にある4個の原画素にて規定される矩形領域の縦方向の距離と横方向の距離とに基づいて、それら4個の原画素からその補間点までの縦方向の逆距離の値と横方向の逆距離の値とを算出する処理を行う逆距離値生成部,前記補間点定義部が定義した全ての補間点のうち、前記原画像を構成する原画素が占める領域の外側にあって、なおかつ、周囲の4個の原画素の画素値に所定の濃度差がある補間点については、逆距離値と補正逆距離値とを対応付けて記憶する記憶装置から、その補間点のために前記逆距離値生成部が算出した逆距離値に対応する補正逆距離値を読み出して、その逆距離値を補正逆距離値に置換する逆距離値補正部,前記補間点定義部が定義した全ての補間点のそれぞれについて、その補間点のために前記逆距離値生成部が算出した逆距離値,又は、前記逆距離値補正部によって置換された後の補正逆距離値と、その補間点の周囲の4個の原画素の画素値とに基づいて、その補間点の逆距離加重平均を算出する処理を行う画素値生成部,及び、前記画素値生成部が前記各補間点について生成した画素値からなる画像データを、拡大画像の画像データとして出力する画像データ出力部を備えることを、特徴としている。
このように、一つの補間点について画素値を生成する際に、その補間点が、原画像を構成する原画素が占める領域の外側にあって、なおかつ、その周囲にある4個の原画素の画素値に所定の濃度差がある場合には、一般的な双一次補間法によって求まる逆距離値の代わりに、補正された逆距離値を使うようにすれば、拡大後の画像における濃淡が変化する境界と画像の分割線とが重なった部分における濃淡の変化が緩和され、最終的な拡大画像における画像の繋ぎ目がさほど目立たなくなる。
また、上記の課題を解決するために発明された画素補間プログラムは、コンピュータを、 二次元的に配列された多数の画素により構成される原画像の画像データを処理対象として取得する画像データ取得手段,前記画像データ取得手段によって取得された画像データの原画像についての拡大倍率を取得する倍率取得手段,前記倍率取得手段によって取得された拡大倍率により定まる出力画像の座標における補間点の座標値を、前記倍率取得手段が取得した拡大倍率に基づいて算出した逆変換倍率を用いて前記原画像の座標における座標値に変換し、原画像の半画素分だけ左側及び上側にずらすことにより補間点を前記原画像の座標上に定義する補間点定義手段,前記補間点定義手段によって定義された全ての補間点のそれぞれについて、その補間点の周囲にある4個の原画素にて規定される矩形領域の縦方向の距離と横方向の距離とに基づいて、それら4個の原画素からその補間点までの縦方向の逆距離の値と横方向の逆距離の値とを算出する処理を行う逆距離値生成手段,
前記補間点定義手段によって定義された全ての補間点のうち、前記原画像を構成する原画素が占める領域の外側にあって、なおかつ、周囲の4個の原画素の画素値に所定の濃度差がある補間点については、逆距離値と補正逆距離値とを対応付けて記憶する記憶装置から、その補間点のために前記逆距離値生成手段によって算出された逆距離値に対応する補正逆距離値を読み出して、その逆距離値を補正逆距離値に置換する逆距離値補正手段,
前記補間点定義手段によって定義された全ての補間点のそれぞれについて、その補間点のために前記逆距離値生成手段によって算出された逆距離値,又は、前記逆距離値補正手段によって置換された後の補正逆距離値と、その補間点の周囲の4個の原画素の画素値とに基づいて、その補間点の逆距離加重平均を算出する処理を行う画素値生成手段,及び、 前記画素値生成手段によって前記各補間点について生成された画素値からなる画像データを、拡大画像の画像データとして出力する画像データ出力手段として機能させることを、特徴としている。
従って、この画素補間プログラムは、前述した本発明による画素補間装置と同等に機能する装置としてコンピュータを動作させることができることになる。
このようなことから、本発明によれば、濃淡の変化が鋭い絵柄を含む画像におけるその濃淡の境界部分において画像が分割されて、その分割された画像をそれぞれを双一次補間法を用いて拡大してから互いに結合するという場合であっても、最終的な拡大画像において、画像の繋ぎ目がさほど目立たなくなるようになる。
以下、添付図面に基づいて、本発明を実施するための一つの形態である印刷装置について説明する。
図1は、本実施形態の印刷装置10の構成図である。印刷装置10は、図示せぬホストコンピュータから印刷要求を受信したり図示せぬ外部機器から画像データを受信したりして印刷を行う装置である。
なお、図示せぬ外部機器としては、カメラ装置,及び、スキャナがある。このうち、カメラ装置は、静止画の画像データを取得することができるUSBポート付き装置であり、具体的には、デジタルスチルカメラ,デジタルビデオカメラ,カメラ付き携帯電話機などである。また、スキャナは、原稿台上に載置された原稿から画像を読み取って画像データに変換する装置である。印刷装置10は、図示せぬスキャナに接続されたときには、複写機又は複合機における印刷を行うユニットとして機能する。
この印刷装置10は、主要な構成として、外部I/F装置11,操作表示盤12,給紙機構13,印刷機構14,DRAM15,ROM16,CPU17,EEPROM18,及び、ASIC19を、内蔵している。
外部I/F装置11は、図示せぬホストコンピュータからの印刷要求の受信,又は、図示せぬ外部機器からの画像データの受信を行うためのいわゆる通信インターフェースポートである。具体的には、外部I/F装置11は、IEEE1284規格に従った通信を行うためのパラレルポート,セントロニクス仕様のパラレルポート,イーサネット(米ゼロックス社,米インテル社,米コンパックコンピュータ社商標)仕様のLANボード,IEEE1394規格に従った通信を行うためのシリアルポート,USB規格に従った通信を行うためのUSBポートなどである。
操作表示盤12は、利用者からの各種の指示を受け付けたり各種の画面を表示したりするための機器であり、押しボタンやタッチスクリーンを備えている。
給紙機構13は、印刷機構14に一種類以上の用紙を供給する機構であり、用紙カセットが着脱自在に装着されるスロットを幾つか備えている。印刷機構14は、給紙機構13から供給された用紙に対して実際に印刷を行なう機構である。
DRAM[Dynamic Random Access Memory]15は、図示せぬホストコンピュータからの印刷要求,又は、図示せぬ外部機器からの画像データの一時的な保管領域として、及び、その画像データについて各種の処理が行われる際の作業領域として使用される揮発性メモリである。
ROM[Read Only Memory]16は、印刷装置10を制御するためのプログラムや、印刷要求中の印刷データに基づいて画像データを生成する際に使用されるフォントデータを記憶した不揮発性メモリである。
CPU[Central Processing Unit]17は、ROM16内のプログラムに従って各部を統合的に制御する制御回路である。具体的には、このCPU17は、この印刷装置10の上面に設けられている操作表示盤12のボタンやタッチスクリーンに対する操作を通じて利用者から実行すべき処理についての指示を取得する処理,図示せぬホストコンピュータからの印刷要求又は図示せぬ外部機器からの画像データに基づいて印刷機構14へ引き渡すべき画像データを生成する処理,その画像データに基づく画像の印刷が行われるよう印刷機構14を制御する印刷制御処理を、行うものとなっている。
EEPROM[Electrically Erasable and Programmable Read Only Memory]18は、印刷に係る各種の設定を電源切断後にも保持しておくためのいわゆるフラッシュメモリである。
ASIC[Application Specific Integrated Circuit]19は、各ハードウエア11〜18間のデータや指示の遣り取りを制御する半導体集積回路であり、各ハードウエア11〜18に接続されている。このASIC19は、各ハードウエア11〜18との間のインターフェースとして、ビデオコントローラ191,IOコントローラ192,及び、メモリコントローラ193を、備えている。
ビデオコントローラ191は、印刷機構14へ供給すべき画像データをその印刷機構14内の図示せぬ走査ユニットが処理可能な形態の電気信号に変換するための回路モジュールである。
IOコントローラ192は、外部I/F装置11,操作表示盤12,及び、給紙機構13を制御するための回路モジュールである。なお、このIOコントローラ192は、図示せぬホストコンピュータから送信されてきた印刷要求や、図示せぬ外部機器から送信されてきた画像データを、外部I/F装置11からDRAM15へ直接転送する処理を行う回路モジュールにもなっている。
メモリコントローラ193は、DRAM15に対するプログラムやデータの読み書きを制御する機能,ROM16からのプログラムやデータの読み出しを制御する機能,及び、印刷機構14内の図示せぬコントローラを制御する機能を有する回路モジュールである。
以上のようなハードウエアにて構成されている本実施形態の印刷装置10では、DRAM15の記憶容量が十分でないため、その記憶容量で対処できるように、処理内容が適宜構築されている。具体的には、ページ記述言語にて作成された印刷データを含む印刷要求が図示せぬホストコンピュータから送られてきたときには、1頁分の画像データを生成してからビデオコントローラ191へ出力するのではなく、その画像データの一部を生成してからビデオコントローラ191へ出力するという処理を、その画像データの各部について順に行うようになっている。
同様に、画像データを含む印刷要求が図示せぬホストコンピュータが送られてきたときには、その画像データの一部の受信してビデオコントローラ191へ出力するという処理を、その画像データの各部について順に行うようになっている。また、図示せぬ外部機器から画像データが送られてきた場合においても、同様である。
なお、このように、印刷要求から画像データを生成する処理,及び、図示せぬホストコンピュータや図示せぬ外部機器から送られてきた画像データをDRAM15に取り込む処理は、前述した画像データ取得手段に相当している。また、これら処理を実行するCPU17,外部I/F装置11,IOコントローラ121は、前述した画像データ取得部に相当している。
ところで、図示せぬホストコンピュータからの印刷要求中の画像データに基づく画像や、図示せぬ外部機器からの画像データに基づく画像において、その解像度が低すぎて、ビデオコントローラ191へ出力するのに適さない場合がある。この場合、CPU17は、ROM16から所定のプログラムを読み込んで、この画像データに基づく画像の解像度を高める処理を行うようになっている。図2は、この処理の流れを示す図である。
処理開始後、CPU17は、解像度を高める対象となる画像(以下、原画像と表記する)の大きさ(ここでは、横の画素数をIh、縦の画素数をIvと定義する)を示す情報を、その原画像の画像データのヘッダから取得する(S101)。
続いて、CPU17は、ビデオコントローラ191へ出力するのに最適なものとして設定されている画像の大きさ(ここでは、横の画素数をOh、縦の画素数をOvと定義する)を示す情報を、EEPROM18などから取得する(S102)。
その後、CPU17は、取得した大きさの情報に基づいて、縦方向と横方向の拡大倍率を算出するとともに、算出した拡大倍率に基づいて、逆変換倍率を算出する(S103)。
ここで、逆変換倍率について説明する。なお、ここでの説明においては、原画像の各画素の座標を(x,y)と表現し、拡大後の出力画像の各画素の座標を(X,Y)と表現する。また、出力画像のX,Y座標値は、何れも、最小単位を1とする整数をとるものとする(隣接する画素同士の間の距離が1であるという意味である)。
原画像の拡大を行う場合、通常、出力画像の各画素のX座標値とY座標値にそれぞれ拡大倍率(Oh/Ih,Ov/Iv)の逆数を乗じることによって原画像における対応するx座標値とy座標値とが算出され、それらx座標値とy座標値がともに整数であった場合には、原画像におけるその座標(x,y)の画素値が出力画像の座標(X,Y)の画素値として決定され、それらx座標値とy座標値の何れか又は両方が小数であった場合には、その座標(x,y)を補間点として、その座標(x,y)の画素値が後述のように推定され、その推定された画素値が出力画像の座標(X,Y)の画素値として決定されるようになっている。
但し、出力画像のX,Y座標値の最小単位が1であると、x,y座標値が、小数点より上の値が小さい小数となってしまう場合がある。すると、これらx,y座標値に基づいて双一次補間法による重みを算出する際に、処理に負荷が掛かることとなる。このため、本実施形態では、前述した拡大倍率の逆数に256という数値を乗じてなる数を、逆変換倍率として規定している。
この256という数値は、実質的には、原画像において隣接する画素同士の間の長さを1ではなく256として表現するものとして機能する。このように原画像における一区間の長さが256と表現されると、拡大倍率が16以下である場合において、出力画像の座標(X,Y)に対応する原画像の座標(x,y)の座標値における小数点より上の値を大きくすることができ、小数点以下の値を切り捨てて演算することができるようになる。但し、原画像におけるx,y座標値が、256という値を累積したものとして表現してしまうと、x,y座標値が極端に大きくなってしまう。このため、以下の処理では、x,y座標値が256に達するたびに、それら値を0にリセットして、256という値を、隣接画素同士の一区間の長さのみを表すものとして限定的に使用している(二区間以上の長さを表すのに用いない)。
なお、ステップS101〜S103は、前述した倍率取得手段に相当し、これらステップS101〜S103を実行するCPU17は、前述した倍率取得部に相当している。
以上に説明した逆変換倍率((Ih/Oh)×256,(Iv/Ov)×256)を算出した後(S103)、CPU17は、原画像の画像データが所定の大きさ毎に分割されたうちの一つ(以下、分割原画像データと表記する)を記憶しておくための記憶領域をDRAM15内に確保し(S104),その分割原画像データをその記憶領域に取り込む(S105)。
続いて、CPU17は、DRAM15内の上記記憶領域に取り込まれた分割原画像データに基づいて後述のように作成される画像データ(以下、分割出力画像データと表記する)を記憶するための記憶領域を確保する(S106)。
その後、CPU17は、DRAM15に取り込んだ分割原画像データについて、後述の画素補間処理を実行する(S107)。
そして、この画素補間処理の実行が終了すると、CPU17は、完成した分割出力画像データをビデオコントローラ191へ出力する処理を実行し(S108)、次の分割原画像データの有無を判別する(S109)。CPU17は、次の分割原画像データがあれば(S109;NO)、再度、その分割原画像データの記憶領域の確保(S104)、その分割原画像データの取り込み(S105),及び、分割出力画像データの記憶領域の確保(S106)を行って、その分割原画像データについての後述の画素補間処理を実行する(S107)。そして、このような処理を繰り返すことによって、処理すべき分割原画像データがなくなると(S109;YES)、CPU17は、図2に係る処理を終了する。
なお、ステップS108は、前述した画像データ出力手段に相当しており、このステップS108を実行するCPU17は、前述した画像データ出力部に相当している。
次に、画素補間処理について説明する。図3乃至図8は、画素補間処理の流れを示す図である。
まず、CPU17は、図3に示されるように、変数Xにゼロを代入するとともに、変数Yにゼロを代入する(S201)。
続いて、CPU17は、分割出力画像における座標値Yに対応する分割原画像でのy座標値を算出する(S202)。具体的には、CPU17は、座標値Xに横方向の逆変換倍率((Ih/Oh)×256)を乗じ、その結果からさらに128を引いて得られる値を、y座標値とする。
なお、この128という値は、256に0.5を乗じて得た値であり、すなわち、互いに隣接する原画素同士の一区間の半分(半画素)を示している。つまり、逆変換後の座標値から128を引くことによって、出力画像の座標(X,Y)について参照する原画素の座標を、半画素分だけ負側(左側)にずらしていることになる。
ここで、半画素分だけ負側にずらす理由について説明する。なお、ここでは、理解し易くするため、原画像の座標値に256を乗じない状態で説明する。例えば、図9(a)に示されるように原画像が3×3個の画素からなるとして、この原画像を縦三倍横三倍に拡大するときに、図9(b)に示されるように、出力画像の座標(0,0)に対応する原画像での座標が(0,0)にあると規定したとする(図9(b)の座標(0,0)に黒丸が配置されているのが、この規定を意味する)。この場合において、原画像の座標(0,1)の画素Aと座標(2,1)の画素Bとに注目する。図9(b)において白丸にて示される補間点は、双一次補間法においては、原画像上における原画素(黒丸)との距離に反比例した重みをその原画素の画素値に乗じて得た値を、自己の画素値の一部として取得する。従って、逆に言えば、例えば画素Bは、自己の右上,右下,左上,左下の領域にある補間点(図9(b)において一点鎖線で囲まれた補間点)に、自己の画素値を分配することとなる。一方、画素Aは、自己の右上,右下の領域にある補間点(図9(b)において破線で囲まれた補間点)にしか、自己の画素値を分配しない。すなわち、画素Aは、自己の画素値の半分しか、補間点の画素値の積み上げに利用しないこととなる。このため、本実施形態では、図9(c)に示されるように、出力画像の座標(X,Y)に対応する原画素の座標を半画素分だけ負側(左側及び上側)ずらすことによって、画素Aに対しても、画素値を分配すべき補間点のある左上,左下領域を、与えるようにしている。この結果、出力画像の座標(0,0)に対応する原画像での座標は、(−0.5,−0.5)となり、また、出力画像上の補間点は、原画像におけるx,y座標値がともに整数である座標上に、必ずしも、対応する座標を持たないこととなる。
続いて、CPU17は、分割出力画像における座標値Yに対応するx座標値を算出する(S203)。具体的には、CPU17は、座標値Xに縦方向の逆変換倍率((Iv/Ov)×256)を乗じ、その結果からさらに128を引いて得られる値を、x座標値とする。
なお、これらステップS202,S203は、前述した補間点定義手段に相当しており、これらステップS202,S203を実行するCPU17は、前述した補間点定義部に相当している。
続いて、CPU17は、原画像における座標(X,Y)に対応する座標(x,y)の画素値を双一次補間法によって算出する際に参照すべき原画素の座標を特定するためのサブルーチンを行う(S204)。図10は、このサブルーチンの流れを示す図である。
このサブルーチンの開始後、CPU17は、原画像上における整数(負を含む)の座標値を持つ座標のうち、座標(x,y)を囲む4つの座標を特定した後、それら4つの座標のうち、座標(x,y)の左上及び左下にある座標のx座標値を、処理対象範囲左端位置を示す変数xlに代入し、座標(x,y)の右上及び右下にある座標のx座標値を、処理対象範囲右端位置を示す変数xrに代入し、座標(x,y)の左上及び右上にある座標のy座標値を、処理対象範囲上端位置を示す変数ytに代入し、座標(x,y)の左下及び右下にある座標のy座標値を、処理対象範囲下端位置を示す変数ybに代入する(S301)。
続いて、CPU17は、処理対象範囲左端位置を示す変数xlが0よりも小さいか否かを、判別する(S302)。そして、変数xlが0よりも小さかった場合(S302;YES)、CPU17は、処理対象範囲左端位置を示す変数xlの代入値と処理対象範囲右端位置を示す変数xrの代入値とを1だけ増やす(S303)。一方、変数xlが0よりも小さくなかった場合(S302;NO)、CPU17は、処理対象範囲右端位置を示す変数xrが分割原画像のx方向の最大値xmaxよりも大きいか否かを、判別する(S304)。そして、CPU17は、処理対象範囲右端位置を示す変数xrが最大値xmaxよりも大きかった場合(S304;YES)、処理対象範囲左端位置を示す変数xlの代入値と処理対象範囲右端位置を示す変数xrの代入値とを1だけ減らし(S305)、処理対象範囲右端位置を示す変数xrが最大値xmaxよりも大きくなかった場合(S304;NO)、処理対象範囲左端位置を示す変数xlの代入値と処理対象範囲右端位置を示す変数xrの代入値とをそのままにする。
続いて、CPU17は、処理対象範囲上端位置を示す変数ytが0よりも小さいか否かを、判別する(S306)。そして、変数ytが0よりも小さかった場合(S306;YES)、CPU17は、処理対象範囲上端位置を示す変数ytの代入値と処理対象範囲下端位置を示す変数ybの代入値とを1だけ増やす(S307)。一方、変数ytが0よりも小さくなかった場合(S306;NO)、CPU17は、処理対象範囲下端位置を示す変数ybが分割原画像のy方向の最大値ymaxよりも大きいか否かを、判別する(S308)。そして、CPU17は、処理対象範囲下端位置を示す変数ybが最大値xmaxよりも大きかった場合(S308;YES)、処理対象範囲上端位置を示す変数ytの代入値と処理対象範囲下端位置を示す変数ybの代入値とを1だけ減らし(S309)、処理対象範囲下端位置を示す変数ybが最大値ymaxよりも大きくなかった場合(S308;NO)、処理対象範囲上端位置を示す変数ytの代入値と処理対象範囲下端位置を示す変数ybの代入値とをそのままにする。
CPU17は、以上のようにして、変数xl,xr,yt,ybの代入値を特定して、図10に係る処理を終了する。なお、この図10に示される参照原画素特定サブルーチンは、前述した逆距離生成手段に相当しており、このサブルーチンを実行するCPU17は、前述した逆距離生成部に相当している。
図10に係る処理の終了後、CPU17は、図3に示されるように、ROM16に記録されている三つのテーブルのうちの何れを以降の処理に使用するかを決定するテーブル決定処理を行う(S205〜S209)。
なお、ROM16に記録されている三つのテーブルは、何れも、x座標値からxl座標値を差し引いて得られる距離値(これは、x座標値からxr座標値を差し引いて得られる距離値を256から引いた値(逆距離値)に等しい),及び、y座標値からyt座標値を差し引いて得られる距離値(これは、y座標値からyb座標値を差し引いて得られる距離値を256から引いた値(逆距離値)に等しい)を、別の値に置換する際に使用されるテーブルである。これら三つのテーブルは、後述するように、座標(x,y)の原画像内での位置の違いに応じて、使い分けられることとなる。
具体的に説明すると、CPU17は、まず、x座標値とy座標値の何れか一方が0より小さい値であるか否かを、判別する(S205)。
そして、x座標値とy座標値の何れか一方が0より小さかった場合(S205;YES)、CPU17は、ROM16に記録されている後述の三つのテーブルのうち、原画像の左縁又は上縁にある補間点に対して用いるための左上縁用テーブルを後述の距離値決定処理に使用することを、決定する(S207)。なお、原画像の左縁とは、原画像のx方向の最小値0を下回る領域を言い、図9(c)の例で言えば、座標(0,0)〜座標(0,8)と座標(1,0)〜(1,8)とがある領域である。また、原画像の上縁とは、原画像のy方向の最小値0を下回る領域を言い、図9(c)の例で言えば、座標(0,0)〜座標(8,0)と座標(0,1)〜(8,1)とがある領域である。
一方、x座標値とy座標値の何れもが0より小さくなかった場合(S205;NO)、CPU17は、x座標値がxmaxよりも大きいか、y座標値がymaxよりも大きい状態にあるか否かを、判別する(S206)。
そして、x座標値がxmaxよりも大きいか、y座標値がymaxよりも大きい状態にあった場合(S206;YES)、CPU17は、ROM16に記録されている後述の三つのテーブルのうち、原画像の右縁又は下縁にある補間点に対して用いるための右下縁用テーブルを後述の距離値決定処理に使用することを、決定する(S208)。なお、原画像の右縁とは、原画像のx方向の最大値xmaxを上回る領域を言い、図9(c)の例で言えば、座標(8,2)〜座標(8,8)がある領域である。また、原画像の下縁とは、原画像のy方向の最大値ymaxを上回る領域を言い、図9(c)の例で言えば、座標(2,8)〜座標(8,8)がある領域である。
一方、x座標値がxmaxよりも大きくなく、且つ、y座標値がymaxよりも大きくない状態にあった場合(S206;NO)、CPU17は、ROM16に記録されている後述の三つのテーブルのうち、原画像の内部にある補間点に対して用いるための内部用テーブルを後述の距離置換処理に使用することを、決定する(S209)。なお、原画像の内部とは、原画像のx方向の最小値0から最大値xmaxまでの範囲であって、なおかつ、原画像のy方向の最小値0から最大値ymaxまでの範囲にある領域を言う。図9(c)の例で言えば、座標(2,2)〜(7,7)がある領域を言う。
以上のようにして、後述の距離値決定処理に使用するテーブルを決定した後、CPU17は、図4に示されるように、座標(xl,yt),(xr,yt),(xl,yb),(xr,yb)におけるRGBの各色成分の画素値を、分割原画素データの記憶領域から読み取る(S210)。
続いて、CPU17は、x方向エッジフラグ情報とy方向エッジフラグ情報とを、オフを示す状態でDRAM15内に記録する(S211)。なお、エッジフラグ情報とは、これ以降の判定処理(S212〜S235)における判定結果を記憶するためのフラグ情報となっている。その判定処理とは、詳しくは後述するが、簡単に説明すると、座標(x,y)の周囲にある4個の原画素からなる微少画像において画素値の濃度差が、図11に示されるようなパターンの何れかにあるか否かを判定するための処理を言う。
このようにオフの状態のエッジフラグ情報をDRAM15に記録した後(S211)、CPU17は、左上座標(xl,yt)にある原画素のR画素値及びG画素値の和と、右上座標(xr,yt)にある原画素のR画素値及びG画素値の和とについて、差分の絶対値を算出する(S212)。
その後、CPU17は、その絶対値が所定の閾値を超えているか否かを、判別する(S213)。そして、CPU17は、その絶対値が所定の閾値を超えていた場合(S213;YES)、x方向エッジフラグ情報をオフ状態からオン状態に切り替え(S214)、その絶対値が所定の閾値を超えていなかった場合(S213;NO)、x方向エッジフラグ情報をオフ状態のままにする。
続いて、CPU17は、左上座標(xl,yt)にある原画素のR画素値及びG画素値の和と、左下座標(xl,yb)にある原画素のR画素値及びG画素値の和とについて、差分の絶対値を算出する(S215)。
その後、CPU17は、その絶対値が所定の閾値を超えているか否かを、判別する(S216)。そして、CPU17は、その絶対値が所定の閾値を超えていた場合(S216;YES)、y方向エッジフラグ情報をオフ状態からオン状態に切り替え(S217)、その絶対値が所定の閾値を超えていなかった場合(S216;NO)、y方向エッジフラグ情報をオフ状態のままにする。
続いて、CPU17は、図5に示されるように、左下座標(xl,yb)にある原画素のR画素値及びG画素値の和と、右下座標(xr,yb)にある原画素のR画素値及びG画素値の和とについて、差分の絶対値を算出する(S218)。
その後、CPU17は、その絶対値が所定の閾値を超えているか否かを、判別する(S219)。そして、CPU17は、その絶対値が所定の閾値を超えていた場合(S219;YES)、x方向エッジフラグ情報の状態をオン状態に切り替え(S220)、その絶対値が所定の閾値を超えていなかった場合(S219;NO)、x方向エッジフラグ情報の状態を変更しない。
続いて、CPU17は、右上座標(xr,yt)にある原画素のR画素値及びG画素値の和と、右下座標(xr,yb)にある原画素のR画素値及びG画素値の和とについて、差分の絶対値を算出する(S221)。
その後、CPU17は、その絶対値が所定の閾値を超えているか否かを、判別する(S222)。そして、CPU17は、その絶対値が所定の閾値を超えていた場合(S222;YES)、y方向エッジフラグ情報の状態をオン状態に切り替え(S223)、その絶対値が所定の閾値を超えていなかった場合(S222;NO)、y方向エッジフラグ情報の状態を変更しない。
続いて、CPU17は、左上座標(xl,yt)にある原画素のG画素値及びB画素値の和と、右上座標(xr,yt)にある原画素のG画素値及びB画素値の和とについて、差分の絶対値を算出する(S224)。
その後、CPU17は、その絶対値が所定の閾値を超えているか否かを、判別する(S225)。そして、CPU17は、その絶対値が所定の閾値を超えていた場合(S225;YES)、x方向エッジフラグ情報の状態をオン状態に切り替え(S226)、その絶対値が所定の閾値を超えていなかった場合(S225;NO)、x方向エッジフラグ情報の状態を変更しない。
続いて、CPU17は、図6に示されるように、左上座標(xl,yt)にある原画素のG画素値及びB画素値の和と、左下座標(xl,yb)にある原画素のG画素値及びB画素値の和とについて、差分の絶対値を算出する(S227)。
その後、CPU17は、その絶対値が所定の閾値を超えているか否かを、判別する(S228)。そして、CPU17は、その絶対値が所定の閾値を超えていた場合(S228;YES)、y方向エッジフラグ情報の状態をオン状態に切り替え(S229)、その絶対値が所定の閾値を超えていなかった場合(S228;NO)、y方向エッジフラグ情報の状態を変更しない。
続いて、CPU17は、左下座標(xl,yb)にある原画素のG画素値及びB画素値の和と、右下座標(xr,yb)にある原画素のG画素値及びB画素値の和とについて、差分の絶対値を算出する(S230)。
その後、CPU17は、その絶対値が所定の閾値を超えているか否かを、判別する(S231)。そして、CPU17は、その絶対値が所定の閾値を超えていた場合(S231;YES)、x方向エッジフラグ情報の状態をオン状態に切り替え(S232)、その絶対値が所定の閾値を超えていなかった場合(S231;NO)、x方向エッジフラグ情報の状態を変更しない。
続いて、CPU17は、右上座標(xr,yt)にある原画素のG画素値及びB画素値の和と、右下座標(xr,yb)にある原画素のG画素値及びB画素値の和とについて、差分の絶対値を算出する(S233)。
その後、CPU17は、その絶対値が所定の閾値を超えているか否かを、判別する(S234)。そして、CPU17は、その絶対値が所定の閾値を超えていた場合(S234;YES)、y方向エッジフラグ情報の状態をオン状態に切り替え(S235)、その絶対値が所定の閾値を超えていなかった場合(S234;NO)、y方向エッジフラグ情報の状態を変更しない。
以上に示した判定処理(S212〜S235)を終えた後、CPU17は、図7に示されるように、座標(x,y)からその周囲にある4個の原画素までの距離の値を決定する距離決定処理を行う(S236〜S243)。
具体的に説明すると、CPU17は、まず、x方向エッジフラグ情報がオン状態にあるかオフ状態にあるかを、判別する(S236)。
そして、x方向エッジフラグ情報がオフ状態にあった場合(S236;YES)、CPU17は、x座標値からxl座標値を差し引き、その結果を256で割って得られる値を、距離値として変数pに代入する(S237)。
一方、x方向エッジフラグ情報がオン状態にあった場合(S236;NO)、CPU17は、ROM16に記録されている三つのテーブルのうち、この時点で使用することを決定しているテーブル(S205〜S209参照)を参照して、x座標値からxl座標値を差し引いて得られる値に対応する値を読み取り(S238)、読み取った値を256で割って得られる値を、距離値として変数pに代入する(S239)。
続いて、CPU17は、y方向エッジフラグ情報がオン状態にあるかオフ状態にあるかを、判別する(S240)。
そして、y方向エッジフラグ情報がオフ状態にあった場合(S240;YES)、CPU17は、y座標値からyt座標値を差し引き、その結果を256で割って得られる値を、距離値として変数qに代入する(S241)。
一方、y方向エッジフラグ情報がオン状態にあった場合(S240;NO)、CPU17は、ROM16に記録されている三つのテーブルのうち、この時点で使用することを決定しているテーブル(S205〜S209参照)を参照して、y座標値からyt座標値を差し引いて得られる値に対応する値を読み取り(S242)、読み取った値を256で割って得られる値を、距離値として変数qに代入する(S243)。
なお、ステップS237,S241は、前述した逆距離値生成手段に相当しており、ステップS212〜S235,S238,S239,S242,S243は、前述した逆距離値補正手段に相当している。また、ステップS237,S241を実行するCPU17は、前述した逆距離値生成部に相当しており、ステップS212〜S235,S238,S239,S242,S243を実行するCPU17は、前述した逆距離値補正部に相当している。
以上のようにして、変数p,qの代入値を決定した後、CPU17は、これら変数p,qを用いて、座標(x,y)の画素値をRGBの各成分について算出する(S244)。なお、算出式は、一般的な双一次補間法に用いられる算出式『補間点の画素値=(1−p)(1−9)×(左上原画素の画素値)+p(1−q)×(右上原画素の画素値)+(1−p)q×(左下原画素の画素値)+pq×(右下原画素の画素値)』と同じである。
なお、pの値は、右上原画素と右下原画素のx方向の逆距離値であり、(1−p)の値は、左上原画素と左下原画素のx方向の逆距離値である。また、qの値は、左下原画素と右下原画素のy方向の逆距離値であり、(1−q)の値は、左上原画素と右上原画素のy方向の逆距離値である。
そして、CPU17は、算出したRGBの画素値を、分割出力画像データの記憶領域としてDRAM15に確保した領域における当該座標(x,y)の位置に、保存する(S245)。
なお、ステップS244,S245は、前述した画素値生成手段に相当しており、ステップS244,S245を実行するCPU17は、前述した画素値生成部に相当している。
その後、CPU17は、図8に示されるように、変数Xが分割出力画像のX方向の最大値Xmaxに達しているか否かを、判別する(S246)。このとき、変数Xが最大値Xmaxに達していなかった場合(S246;NO)、CPU17は、変数Xの代入値を1だけ増やして(S247)、再度、ステップS203〜S245の処理を実行する。
そして、ステップS203〜S247の処理を繰り返し行うことによって、変数Xが最大値Xmaxに達したときには(S246;YES)、CPU17は、変数Xに0を代入して(S248)、変数Yが分割出力画像のY方向の最大値Ymaxに達しているか否かを、判別する(S249)。このとき、変数Yが最大値Ymaxに達していなかった場合(S249;NO)、CPU17は、変数Yの代入値を1だけ増やして(S250)、再度、ステップS202〜S248の処理を実行する。
そして、ステップS202〜S250の処理を繰り返し行うことによって、変数Yが最大値Ymaxに達したときには(S249;YES)、CPU17は、図3乃至図8に係る処理を終了する。
本実施形態の印刷装置10は、以上に説明したような処理が行われるように構成されているため、以下に説明するような作用及び効果を有する。
前述したように、本実施形態の印刷装置10において、分割原画像データがDRAM15に取り込まれると、その分割原画像の各画素の画素値に基づいて、分割出力画像の各画素の画素値が順次生成される(S201〜S250)。
このとき、その分割原画像が、風景画のように濃淡の変化が緩やかな部分を含む場合、その部分には、濃淡が鋭く変化する境界部分がないため、印刷装置10は、その部分における何れの補間点についても、その補間点の画素値を作成するために参照される4個の原画素の濃度差がないと判断する(S213;NO,S216;NO,S219;NO,S222;NO,S225;NO,S228;NO,S231;NO,且つ、S234;NO)。このため、この場合には、x方向エッジフラグ情報もy方向エッジフラグ情報も何れもオフ状態のままとなるため、一つの補間点の画素値を作成するために4個の原画素の画素値に乗ぜられる重みには、一般的な双一次補間法と同様に、距離に反比例する逆距離値が、用いられることとなる(S237,S241)。
一方、その分割原画像が、市松模様や漫画などのベタ画のような部分を含む場合、その部分には、濃淡が鋭く変化する境界部分があるため、印刷装置10は、その部分における何れかの補間点について、その補間点の画素値を作成するために参照される4個の原画素の濃度差があると判断する(S213;YES,S216;YES,S219;YES,S222;YES,S225;YES,S228;YES,S231;YES,又は、S234;YES)。このため、このように判断された補間点については、x方向エッジフラグ情報かy方向エッジフラグ情報の何れか、若しくは、双方がオン状態となるため、その補間点の画素値を作成するために4個の原画素の画素値に乗ぜられる重みには、一般的な双一次補間法と同様の距離に反比例する逆距離値が用いられるのではなく、補正された逆距離値が用いられるようになる(S238,S239,S242,S243)。
図12及び図13は、逆距離値の補正に用いられるテーブルの値を座標上にプロットしてなるグラフを示している。これらグラフにおいて、横軸は、補正前の逆距離値、縦軸は、補正後の逆距離値を示している。
このうち、図12の破線のグラフは、原画像の内部にある補間点について補正を行うときの補正前の逆距離値と補正後の逆距離値との関係を示している。この図12の破線にて示される内部用テーブルによると、原画素と補間点との距離の値が約80を下回っているときには、その逆距離値がそれより小さい逆距離値となるように補正され、逆距離値が約175を上回っているときには、その逆距離値がそれより大きい逆距離値となるように補正される。なお、図12の実線のグラフは、比較のため、テーブルを使用した補正を行わないときの逆距離値の関係(仮に補正の手続を踏んだとした場合の補正前の逆距離値と補正後の逆距離値との関係)を示している。
原画像の内部にある補間点について、原画素の画素値に対する重みを算出するための逆距離値が、このように補正されると、拡大後の画像における濃淡が変化する境界部分(エッジ)がさほど暈けないようになる。例えば、図14(a)に示されるような市松模様が、原画像の内部に存在したとして、この原画像を本実施形態の印刷装置10が拡大すると、拡大後の画像は、図14(b)に示されるような画像となる。この図14(b)の画像と、一般的な双一次補間法により拡大した結果を示す図16(b)の拡大画像とを比較して明らかなように、図14(b)の拡大画像では、白格子と黒格子との境界がやや強調されている。
また、図15は、図14(b)に示される拡大画像のC線上での画素値分布を示したグラフである。この図15に示される画素値分布と、図16の一般的な双一次補間法による拡大画像のD線上での画素値分布として図17に示されるものとを比較して明らかなように、本実施形態の印刷装置10によると、白格子と黒格子との境界及びその近傍にある画素の画素値が正弦曲線状に分布している。このグラフからも、白格子と黒格子との境界に現れる暈けの程度が低減されていることが明らかとなっている。
また、図13の実線のグラフは、原画像の左縁又は上縁にある補間点について補正を行うときの補正前の逆距離値と補正後の逆距離値との関係を示している。この図13の実線のグラフにて示される左上縁用テーブルによると、原画素と補間点との逆距離値が約50を下回っているときには、その逆距離値がそれより大きい逆距離値となるように補正され、逆距離値が約175を上回っているときにも、その逆距離値がそれより大きい逆距離値となるように補正される。
さらに、図13の破線のグラフは、原画像の右縁又は下縁にある補間点について補正を行うときの補正前の逆距離値と補正後の逆距離値との関係を示している。この図13の破線にて示される右下縁用テーブルによると、原画素と補間点との逆距離値が約80を下回っているときには、その逆距離値がそれより小さい逆距離値となるように補正され、逆距離値が約210を上回っているときにも、その逆距離値がそれより小さい逆距離値となるように補正される。
原画像の左右縁及び上下縁にある補間点について、原画素の画素値に対する重みを算出するための逆距離値が、これらのように補正されると、濃淡の変化が鋭い絵柄を含む画像におけるその濃淡の境界部分において画像が分割されて、その分割された画像をそれぞれ別個に拡大してから互いに結合するという場合であっても、最終的な拡大画像において、画像の繋ぎ目がさほど目立たなくなるようになる。例えば、図18(a)に示されるように、横縞模様と縦縞模様とからなる原画像がE−E線(縦線)に沿って分割されて、分割された画像がそれぞれ一般的な双一次補間法にて別個に拡大されて、その後互いに結合されると、図18(b)及びその拡大図である図19(a)に示されるように、結合後の拡大画像内の縦縞模様におけるE−E線上にある白縞と黒縞との境界が、他の境界における濃淡の変化と異なる濃淡の変化を持ってしまい、繋ぎ目が目立ってしまう。しかし、同じ原画像について、本実施形態の印刷装置10が、同様の処理(分割,別個に拡大,結合)を行って得た拡大画像においては、図19(b)に示されるように、E−E線の左側にある白縞の灰色部分の領域が広がり、また、E−E線の右側にある黒縞の黒の濃さがやや薄くなっている。
また、図20は、図18(b)に示される拡大画像のF線上での画素値分布を示したグラフである。この図20には、実線のグラフと破線のグラフとが示されているが、実線のグラフは、一般的な双一次補間法を用いて得た拡大画像(すなわち図19(a)の拡大画像)の画素値分布を示し、破線のグラフは、本実施形態の印刷装置10にて得た拡大画像(すなわち図19(b)の拡大画像)の画素値分布を示している。この図20に示されるように、本実施形態の印刷装置10によると、白縞が原画像の右縁にあるときには、その白縞の明るさが低減され、黒縞が原画像の左縁にあるときには、その黒縞の暗さが低減される。逆に、図示していないが、黒縞が原画像の右縁にあるときには、その黒縞の暗さが低減され、白縞が原画像の右縁にあるときには、その白縞の明るさが低減される。つまり、左上縁用テーブルと右下縁用テーブルを用いると、分割線を挟む両側の画像におけるその分割線近傍の部分の濃淡の変化が緩やかとなり、分割線による繋ぎ目が余り目立たなくなる。
なお、左上縁用テーブルと右下縁用テーブルとを用いた補正は、繋ぎ目における濃淡の変化を緩めるように作用するものであるが、これに対し、前述した内部用テーブルを用いた補正は、濃淡の変化を目立たせるように作用するものである。従って、左上縁用テーブルと右下縁用テーブルとを用いた補正は、内部用テーブルを用いた補正とは、逆に作用するものとなっている。
本実施形態の印刷装置の構成図 画像データに基づく画像の解像度を高める処理の流れを示す図 画素補間処理の流れを示す図 画素補間処理の流れを示す図 画素補間処理の流れを示す図 画素補間処理の流れを示す図 画素補間処理の流れを示す図 画素補間処理の流れを示す図 原画像上の補間点の座標を逆変換倍率で求めたあと半画素分ずらす理由の説明図 参照原画素特定処理の流れを示す図 4個の原画素の濃度差のパターンを示す図 原画像の内部にある補間点についての距離値を補正する際に用いられる内部用テーブルの値を座標上にプロットしてなるグラフを示す図 原画像の左上縁及び右下縁にある補間点についての距離値を補正する際に用いられる左上縁用テーブル及び右下縁用テーブルの値をそれぞれ座標上にプロットしてなるグラフを示す図 本実施形態の印刷装置によって市松模様の画像を拡大する前と拡大した後の状態を示す図 拡大した市松模様の画像のC線上の画素値分布のグラフを示す図 一般的な双一次補間法を用いて市松模様の画像を拡大する前と拡大した後の状態を示す図 一般的な双一次補間法を用いて拡大した市松模様の画像のD線上での画素値分布のグラフを示す図 横縞と縦縞とからなる画像を本実施形態の印刷装置によって拡大する前と拡大した後の状態を示す図 一般的な双一次補間法を用いた場合と本実施形態の印刷装置による場合とにおけるE−E線上にある白縞と黒縞との境界部分の拡大図 縦縞と横縞とからなる拡大画像のF線上での画素値分布のグラフを示す図 市松模様の画像を分割して別々に拡大して結合したときの状態を示す図
符号の説明
10 印刷装置
11 外部I/F装置
12 操作表示盤
13 給紙機構
14 印刷機構
15 DRAM
16 ROM
17 CPU
18 EEPROM
19 ASIC

Claims (3)

  1. 二次元的に配列された多数の画素により構成される原画像の画像データを処理対象として取得する画像データ取得部,
    前記画像データ取得部が取得した画像データの原画像についての拡大倍率を取得する倍率取得部,
    前記倍率取得部が取得した拡大倍率により定まる出力画像の座標における補間点の座標値を、前記倍率取得部が取得した拡大倍率に基づいて算出した逆変換倍率を用いて前記原画像の座標における座標値に変換し、原画像の半画素分だけ左側及び上側にずらすことにより補間点を前記原画像の座標上に定義する補間点定義部,
    前記補間点定義部が定義した全ての補間点のそれぞれについて、その補間点の周囲にある4個の原画素にて規定される矩形領域の縦方向の距離と横方向の距離とに基づいて、それら4個の原画素からその補間点までの縦方向の逆距離の値と横方向の逆距離の値とを算出する処理を行う逆距離値生成部,
    前記補間点定義部が定義した全ての補間点のうち、前記原画像を構成する原画素が占める領域の外側にあって、なおかつ、周囲の4個の原画素の画素値に所定の濃度差がある補間点については、逆距離値と補正逆距離値とを対応付けて記憶する記憶装置から、その補間点のために前記逆距離値生成部が算出した逆距離値に対応する補正逆距離値を読み出して、その逆距離値を補正逆距離値に置換する逆距離値補正部,
    前記補間点定義部が定義した全ての補間点のそれぞれについて、その補間点のために前記逆距離値生成部が算出した逆距離値,又は、前記逆距離値補正部によって置換された後の補正逆距離値と、その補間点の周囲の4個の原画素の画素値とに基づいて、その補間点の逆距離加重平均を算出する処理を行う画素値生成部,及び、
    前記画素値生成部が前記各補間点について生成した画素値からなる画像データを、拡大画像の画像データとして出力する画像データ出力部
    を備えることを特徴とする画素補間装置。
  2. 前記画素値生成部は、前記原画像を構成する原画素が占める領域の外側にある補間点については、その補間点の逆距離加重平均を算出するための原画素の画素値として、その補間点の内側にある原画素の画素値と、さらにその内側にある原画素の画素値とを、使用する
    ことを特徴とする請求項1記載の画素補間装置。
  3. コンピュータを、
    二次元的に配列された多数の画素により構成される原画像の画像データを処理対象として取得する画像データ取得手段,
    前記画像データ取得手段によって取得された画像データの原画像についての拡大倍率を取得する倍率取得手段,
    前記倍率取得手段によって取得された拡大倍率により定まる出力画像の座標における補間点の座標値を、前記倍率取得手段が取得した拡大倍率に基づいて算出した逆変換倍率を用いて前記原画像の座標における座標値に変換し、原画像の半画素分だけ左側及び上側にずらすことにより補間点を前記原画像の座標上に定義する補間点定義手段,
    前記補間点定義手段によって定義された全ての補間点のそれぞれについて、その補間点の周囲にある4個の原画素にて規定される矩形領域の縦方向の距離と横方向の距離とに基づいて、それら4個の原画素からその補間点までの縦方向の逆距離の値と横方向の逆距離の値とを算出する処理を行う逆距離値生成手段,
    前記補間点定義手段によって定義された全ての補間点のうち、前記原画像を構成する原画素が占める領域の外側にあって、なおかつ、周囲の4個の原画素の画素値に所定の濃度差がある補間点については、逆距離値と補正逆距離値とを対応付けて記憶する記憶装置から、その補間点のために前記逆距離値生成手段によって算出された逆距離値に対応する補正逆距離値を読み出して、その逆距離値を補正逆距離値に置換する逆距離値補正手段,
    前記補間点定義手段によって定義された全ての補間点のそれぞれについて、その補間点のために前記逆距離値生成手段によって算出された逆距離値,又は、前記逆距離値補正手段によって置換された後の補正逆距離値と、その補間点の周囲の4個の原画素の画素値とに基づいて、その補間点の逆距離加重平均を算出する処理を行う画素値生成手段,及び、 前記画素値生成手段によって前記各補間点について生成された画素値からなる画像データを、拡大画像の画像データとして出力する画像データ出力手段
    として機能させる
    ことを特徴とする画素補間プログラム。
JP2005079561A 2005-03-18 2005-03-18 画素補間装置及び画素補間プログラム Expired - Fee Related JP4470775B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005079561A JP4470775B2 (ja) 2005-03-18 2005-03-18 画素補間装置及び画素補間プログラム
US11/378,451 US7826686B2 (en) 2005-03-18 2006-03-20 Pixel interpolation apparatus and pixel interpolation program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005079561A JP4470775B2 (ja) 2005-03-18 2005-03-18 画素補間装置及び画素補間プログラム

Publications (2)

Publication Number Publication Date
JP2006262306A JP2006262306A (ja) 2006-09-28
JP4470775B2 true JP4470775B2 (ja) 2010-06-02

Family

ID=37101016

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005079561A Expired - Fee Related JP4470775B2 (ja) 2005-03-18 2005-03-18 画素補間装置及び画素補間プログラム

Country Status (1)

Country Link
JP (1) JP4470775B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109919842A (zh) * 2019-01-28 2019-06-21 努比亚技术有限公司 图像放大控制方法、终端及计算机可读存储介质
CN113284050A (zh) * 2021-06-25 2021-08-20 江苏新通达电子科技股份有限公司 图像像素值模型、高分辨率显示方法、系统及汽车仪表
JP7845109B2 (ja) * 2022-08-22 2026-04-14 セイコーエプソン株式会社 画像処理装置、印刷システム、及び、画像処理方法

Also Published As

Publication number Publication date
JP2006262306A (ja) 2006-09-28

Similar Documents

Publication Publication Date Title
JP5094601B2 (ja) 画像処理装置及び画像処理方法ならびにプログラム
JP5493438B2 (ja) 投影装置および投影像補正プログラム
US20140177010A1 (en) Image scanning apparatus, image compensation method and computer-readable recording medium
JP5388559B2 (ja) 画像処理装置及び画像処理方法並びに画像処理方法を実行するプログラム及び記憶媒体
JP4470775B2 (ja) 画素補間装置及び画素補間プログラム
JP2006262305A (ja) 画素補間装置及び画素補間プログラム
US7826686B2 (en) Pixel interpolation apparatus and pixel interpolation program product
JP4274238B2 (ja) 画像処理装置及び画像処理方法、並びにコンピュータ・プログラム
JP6985931B2 (ja) 画像処理装置、画像処理プログラム、画像処理方法および当該画像処理装置を備える画像形成装置
JP5340021B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP4687667B2 (ja) 画像処理プログラムおよび画像処理装置
JP7541862B2 (ja) 画像処理装置、画像処理方法
JP6444049B2 (ja) 画像処理装置、方法およびプログラム
JP5134585B2 (ja) 変倍画像生成装置および変倍画像生成法
JP4710508B2 (ja) 画像処理プログラム、画像処理装置
JP4345027B2 (ja) 画像処理プログラムおよび画像処理装置
JP4407218B2 (ja) 画像処理プログラムを記録した媒体、画像処理装置および画像処理方法
JP2016095667A (ja) 画像処理装置および電子機器
JP2008300974A (ja) データ補間方法及び画像変倍方法画像形成装置
JP6157234B2 (ja) 画像処理装置、画像処理方法およびプログラム
JP2000076430A (ja) 画像データ補間装置、画像データ補間方法および画像データ補間プログラムを記録した媒体
JP2012205190A (ja) 画像処理装置およびプログラム
JP4353234B2 (ja) 画像処理プログラムおよび画像処理装置
JP2011135302A (ja) 画像処理装置、及び画像処理プログラム
JP2009265896A (ja) 画像処理装置

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071115

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071207

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091006

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100115

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100222

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

Free format text: PAYMENT UNTIL: 20130312

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140312

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees