JP3582540B2 - Resolution conversion device and resolution conversion method - Google Patents

Resolution conversion device and resolution conversion method Download PDF

Info

Publication number
JP3582540B2
JP3582540B2 JP08961295A JP8961295A JP3582540B2 JP 3582540 B2 JP3582540 B2 JP 3582540B2 JP 08961295 A JP08961295 A JP 08961295A JP 8961295 A JP8961295 A JP 8961295A JP 3582540 B2 JP3582540 B2 JP 3582540B2
Authority
JP
Japan
Prior art keywords
pixel
pixels
interpolation
image
block
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
JP08961295A
Other languages
Japanese (ja)
Other versions
JPH08286658A (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.)
Renesas Technology Corp
Original Assignee
Renesas Technology 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 Renesas Technology Corp filed Critical Renesas Technology Corp
Priority to JP08961295A priority Critical patent/JP3582540B2/en
Priority to TW085103666A priority patent/TW377431B/en
Priority to KR1019960011176A priority patent/KR100229516B1/en
Priority to US08/633,310 priority patent/US6002810A/en
Publication of JPH08286658A publication Critical patent/JPH08286658A/en
Priority to US09/452,169 priority patent/US6151425A/en
Priority to US09/636,059 priority patent/US6389180B1/en
Priority to US10/099,951 priority patent/US6587602B2/en
Application granted granted Critical
Publication of JP3582540B2 publication Critical patent/JP3582540B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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)
  • Editing Of Facsimile Originals (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Processing (AREA)
  • Digital Computer Display Output (AREA)
  • Television Systems (AREA)

Description

【0001】
【産業上の利用分野】
本発明は、文字、グラフィックス、自然画像で構成した静止画像や動画像のデジタル画像情報を異なる画素数の画像情報に変換して、ディスプレイに表示する解像度変換装置に係り、特に、マルチメディアの動画像表示において、入力した画像情報を異なる解像度を有する表示装置やウインドウ環境で表示するのに良好な解像度変換装置および解像度変換方法に関する。
【0002】
【従来の技術】
デジタル画像の解像度変換において、原画像の画素数を増やす場合、同じ表示装置上であれば原画像の拡大表示となる。よって、ウインドウの拡大表示等に有効である。また、原画像の解像度に比べて高い解像度を有する表示装置に表示することが可能になる。そこで、最も簡単な方法としては、原画像の1画素に対して、同一画素を水平方向および垂直方向に埋めていくことで原画像の画素数を増やす方法がある。
【0003】
また、特開平6−124189号公報に記載されている「画像表示装置および画像表示制御方法」には、原画像の水平方向と垂直方向との画素データの平均化を行い、原画像の画素数を減らす方法がある。この方法は、従来技術として知られている直線描画アルゴリズムを用いて描画し、原画像の直線は、少なくとも1ドット以上のy個の水平成分でそれぞれ表され、縮小の場合、直線の傾きは45度以下となる。各水平成分の長さは、VRAMに書き込む縮小スケーリング後の1画素データに対応する画像入力の画素データの個数を表すと考えることができる。各水平成分の長さは異なる場合もあるし、全て同一の場合も存在するが、nドット分の画素データの平均化を行うことで、水平方向の縮小スケーリングを行っている。垂直方向についても同様である。この直線の傾きを45度以上にすることにより、拡大処理が可能となり、水平方向、垂直方向の拡大スケーリングを行っている。
【0004】
また、単純に同一画素を埋めるのではなく、埋めていく際に、図18および図22に示すように、原画像の画素間の階調値を直線で結ぶように補間画素の階調値を算出し、画素を埋めていくことで原画像の画素数を増やす方法が従来からある。図18および図22には、水平方向の各画素位置における階調値を示している。
【0005】
さらに、原画像を任意に解像度変換する方法を図17に示す。1701は、原画像データであり、1702は、原画像を縦にL1倍、横にM1倍する処理を示し、1703は、拡大された画像データである。1704は、拡大された画像データを縦に1/L2倍、横に1/M2倍する処理を示し、1705は、縮小された画像データである。ここで、L1、L2、M1およびM2は、正の整数である。この処理は、L1>L2,M1>M2ならば、画像の拡大に、またL1<L2,M1<M2ならば、画像の縮小に相当する。このように、画像サイズの拡大処理と縮小処理とを組み合わせることにより、画像サイズをより自由に変換できる。
【0006】
【発明が解決しようとする課題】
《課題1》上記従来方法の原画像の画素数を増やす場合、原画像の1画素に対して、同一画素を水平方向および垂直方向に埋めていくことで原画像の画素数を増やす方法では、モザイク状のギザギザが目立つ画像となり、画質が劣化する問題がある。
【0007】
《課題2》上記従来方法の原画像の画素数を増やす場合、単純に同一画素を埋めるのではなく、埋めていく際に、図18や図22に示すように、原画像の両端画素の階調値を直線で結ぶように補間画素の階調値を算出し、画素を埋めていくことで原画像の画素数を増やす方法では、モザイク状のギザギザが目立つ画像とはならないが、濃淡の境界がはっきりとした画像の輪郭部分等の高周波成分が平滑化されて、画像全体がぼやけてしまう問題がある。
【0008】
《課題3》上記従来方法の原画像の画素数を増やす場合、画像サイズの拡大処理と縮小処理とを組み合わせることにより、画像サイズをより自由に変換する方法では、画像の拡大処理を行ってからから縮小処理を行うので、解像度変換処理に時間がかかるという問題がある。
【0009】
そこで、本発明の第1の目的は、原画像の画素数を増やす解像度変換において、モザイク状のギザギザが目立つ画像を防止し、高品質な画像を実現することである。
【0010】
また、本発明の第2の目的は、原画像の画素数を増やす解像度変換において、濃淡の境界がはっきりとした画像の輪郭部分等の高周波成分を保存し、高品質な画像を実現することである。
【0011】
さらに、本発明の第3の目的は、原画像の画素数を増やす解像度変換において、デジタル動画像処理を満足する高速な解像度変換処理を実現することである。
【0012】
【課題を解決するための手段】
本発明の目的を達成するために、デジタル原画像を、指定された変換倍率に応じて異なる画素数のデジタル画像に変換する解像度変換装置において、
前記デジタル原画像の予め定めた画素数のブロックごとに、前記デジタル原画像の前記ブロックに対して補間する補間画素の補間位置を前記変換倍率に応じて決定する決定手段と、
前記デジタル原画像の前記ブロックごとに、当該ブロックのそれぞれの画素の画素位置および画素データにより係数が決定される予め定めた補間式に従って、前記決定手段により決定される前記補間位置に補間する画素の画像データを生成し、前記デジタル原画像の画素の画像データと当該生成した補間する画素の画像データとから変換後のデジタル画像を出力する生成部とを有する。
【0013】
また、デジタル原画像を、指定された変換倍率に応じて異なる画素数のデジタル画像に変換する解像度変換装置において、
前記デジタル原画像の予め定めた画素数のブロックごとに、前記デジタル原画像の前記ブロックに対して補間する補間画素の補間位置を前記変換倍率に応じて決定する決定手段と、
前記デジタル原画像の前記ブロックごとに、当該ブロックのそれぞれの画素の画素位置および画素データと、当該ブロックに隣接する画素の画素位置および画素データとにより係数が決定される予め定めた補間式に従って、前記決定手段により決定される前記補間位置に補間する画素の画像データを生成し、前記デジタル原画像の画素の画像データと当該生成した補間する画素の画像データとから変換後のデジタル画像を出力する生成部とを有するようにしてもよい。
【0014】
【作用】
本発明における解像度変換装置は、決定手段がデジタル原画像の予め定めた画素数のブロックごとに、前記デジタル原画像の前記ブロックに対して補間する補間画素の補間位置を前記変換倍率に応じて決定する。この場合、例えば、変換倍率ごとに補間位置をテーブルに規定しておき、このテーブルを参照し、変換倍率に従って補間位置を決定することができる。また、単位ブロックは、8×8画素のブロックとすることができる。
【0015】
生成部は、デジタル原画像の前記ブロックごとに、当該ブロックのそれぞれの画素の画素位置および画素データにより係数が決定される予め定めた補間式に従って、前記決定手段により決定される前記補間位置に補間する画素の画像データを生成し、前記デジタル原画像の画素の画像データと当該生成した補間する画素の画像データとから変換後のデジタル画像を出力する。補間式は、スプライン関数やベジェ関数とすることができる。
【0016】
これにより補間画素の画素データを最適化することができる。
【0017】
本発明によれば、原画像の画素数を増やす解像度変換において、モザイク状のギザギザが目立つ画像を防止し、輪郭のはっきりとしない自然画像等に対して高品質な画像を実現することができ、また、輪郭のはっきりとした文字、図形に対しては、濃淡の境界がはっきりとした画像の輪郭部分等の高周波成分を保存し、高品質な画像を実現することができる。
【0018】
また、補間するブロックと隣接するブロックとの画素間に補間位置を設ける場合には、当該ブロックの画素位置および画素データに加えて、当該補間するブロックに隣接する画素の画素位置および画素データをさらに用いて前記補間式の係数を決定することができる。これにより、単位ブロックと単位ブロックとが隣接する部分の画素間、つまり、単位ブロックの画素の外側の位置において、補間画素を発生させることができ、単位ブロックの隣接部分においても画素データが不連続にならないようにすることができる。
【0019】
さらに、決定手段は、前記変換倍率を、水平方向と垂直方向との変換倍率とし、生成部は、前記補間する画素の画像データの生成を、前記水平方向について行う水平方向生成手段と、前記垂直方向について行う垂直方向生成手段とを備える場合には、それぞれの生成手段において生成を行うことができるので高速化が実現できる。
【0020】
【実施例】
以下、本発明の実施例を詳細に説明する。
【0021】
まず初めに、本発明の大まかな構成と処理の流れを説明してから、その次に、課題を解決するための詳細な構成と処理の流れを説明する。
【0022】
本実施例においては、補間画素を発生して画素数を増やして拡大画像に変換するものであり、予め定めた画素数の単位画素ブロックごとに、倍率に応じて補間する画素数と画素を補間する位置とを規定しておき、ブロックの画素位置と画素データとにより係数が決定される予め定めた補間式に従って、補間位置における補間する画素の画像データを生成する。すなわち、補間画素の階調値は、単位ブロック内の画素の階調値を所定の関数(補間式)で示したときに、補間する画素の位置についてその関数上の階調値により求められる。
【0023】
図1に、デジタル原画像を異なる画素数のデジタル画像に変換するハードウエア構成のブロック図を示す。また、図2に、画素変換の様子を示す。本実施例における装置は、図1に示すような構成に限定する必要はなく、マイクロコンピュータ周辺機器としてLSI化した単体素子であっても、ソフトウエアによりシステム化した装置であってもよい。ここで、静止画像や動画像等のデジタル原画像データとは、JPEG、MPEG等の圧縮データが伸長されたものや、NTSC等の信号をデジタル化したものである。
【0024】
図1において、水平方向スケーリング演算部101は、入力された原画像データに対して、水平方向に画素数の変換を行う。水平方向スケーリング演算部101は、原画像データを8×8画素の単位ブロックに分割された画像データに対して、水平方向に1ライン分の8画素分の原画像データ103を入力して画素数変換を順に行う。また、水平方向スケーリング演算部101は、原画像を水平方向に対して何画素増やすかを示すための水平方向倍率を表わす制御信号105を入力する。図2に示すように、水平方向スケーリング演算部101は、8×8画素の単位ブロック201に分割された原画像データのうち、水平方向に1ライン8画素分の原画像データ202を入力し、1ライン8±n画素分の画像データ203を出力する。図2において、1ライン8±n画素分の画像データ203のうち、ハッチングを施した画素C1およびC2が、水平方向スケーリング演算部101により生成された補間画素である。
【0025】
つぎに、垂直方向スケーリング演算部102は、水平方向スケーリング演算部101が出力した水平方向に画素数変換された画像データに対して、垂直方向に画素数の変換を行う。垂直方向スケーリング演算部102は、水平方向スケーリング演算部101が出力した水平方向に1ライン8+n画素分の画像データ104を1ラインずつ順に8ライン分入力し、垂直方向に8+nライン分の画像データ107を出力する。また、垂直方向スケーリング演算部102は、原画像を垂直方向に対して何画素増やすかを示すための垂直方向倍率を表わす制御信号106を入力する。図2に示すように、垂直方向スケーリング演算部102は、水平方向に画素数変換された1ライン8+n画素分の画像データ203を8ライン分入力し、垂直方向に画素数変換された画像データ204を出力する。図2において、ハッチングを施した画素P1〜P10が、垂直方向スケーリング演算部102よって生成された補間画素データあり、垂直方向スケーリング演算部102は、補間ライン205および206を生成し、8×8画素の単位ブロックに分割された原画像データを、10×10画素の単位ブロックの画像データ207に画素数変換する。
【0026】
図7に、本発明を適用したシステム構成例を示す。CPU701は情報を処理する中央演算処理装置である。画像データ入力部702は圧縮されたデジタル静止画像データや、動画データを入力する。バッファメモリ703は、画像データを記憶し、例えば画像データがMPEG圧縮動画データである場合に、伸長する際に伸長する前と伸長した後との画像データを記憶するのに利用し、メモリ容量としては少なくとも8×8画素を格納できる容量を持つ。画像処理LSI704は、前述した図1に示すような解像度変換を行う。VRAM705は、解像度変換を行った後の画像データを格納する。表示制御部706は、VRAM705に格納した解像度変換を行った後の画像データを読み出して液晶パネルに表示する。D/A708は、音声出力用のデジタル/アナログ変換器である。システムバス709は、データバス、アドレスバス、コントロールバスからなる。入力部710は、解像度変換の倍率等の指示を受付ける。
【0027】
本システム構成において、CPU701、バッファメモリ703、本発明のスケーリングを行なう画像処理LSI704、および、表示制御706は、一つのLSI化した単体素子であってもよい。
【0028】
つぎに、解像度変換の詳細を図3および図7を参照して説明する。図3に、本実施例の解像度変換における処理フローを示す。
【0029】
図3において、原画像に対して水平方向に何倍するかまた垂直方向に何倍するかを決める解像度変換の倍率を図7に示す本装置の入力部710で受付ける(S301)。CPU701は、画像処理LSI704のパラメータを設定するためのパラメータレジスタに解像度変換の倍率のデータを設定する。画像データ入力部702では、画像データを受け付け、8×8画素の単位ブロックに分割し、バッファメモリ703に分割した単位ブロックごとに画像データを記憶させる。つぎに、画像処理LSI704は、バッファメモリ703に記憶する8×8画素の単位ブロックに分割された原画像データの水平方向1ライン分の8画素データを入力する(S302)。画像処理LSI704は、入力された水平方向1ライン分の8画素データに対して、水平方向に補間画素を発生し、水平方向の8ライン分のスケーリング演算処理を行う(S303)。つぎに、画像処理LSI704は、水平方向のスケーリング演算処理された8ライン分のデータに対して、垂直方向に補間画素を発生し、一度に補間ラインを生成し、垂直方向のスケーリング演算処理を行う(S304)。最後に、水平方向および垂直方向のスケーリング演算処理後の単位画素ブロック毎に表示メモリであるVRAM705へライトする(S305)。
【0030】
つぎに、倍率に応じて補間する画素数と画素を補間する位置とついて、詳細に説明する。
【0031】
図4は、図1に示す水平方向スケーリング演算部101が、水平方向に補間画素を生成し、水平方向のスケーリング演算処理を行うための水平方向倍率と、それに対応する補間画素生成点数との関係を示す水平方向補間画素生成テーブルの一例を示している。原画像データに対して8×8画素の単位ブロックに分割された原画像データの水平方向のライン毎に補間画素を生成することから、入力画素数は8画素である。例えば、カラー表示でRGBの各8ビットであれば、1画素あたり24ビットのデータ長となる。また、各画素の画像データは、輝度と色差で表わされたYUVのデジタルデータでもよい。図4に示すように、入力画素数の8画素に対して、倍率ごとに生成画素生成点数を1点ずつ増やしていくことにより水平方向のスケーリングを実現する。例えば、水平方向の倍率を1.625倍に設定した場合、補間画素の生成点数は5点であり、出力画素数は13画素となる。水平方向の倍率から補間画素の生成点数は指定できるが、補間画素の発生位置が画質に影響を及ぼす。補間画素発生位置については後で説明する。
【0032】
図5は、図1に示す垂直方向スケーリング演算部102が、垂直方向に補間画素を生成し、垂直方向のスケーリング演算処理を行うための垂直方向倍率と、それに対応する補間画素生成ライン数との関係を示す垂直方向補間画素生成テーブルの一例を示している。原画像データに対して8×8画素の単位ブロックに分割された原画像データの垂直方向に補間画素を生成し、補間ラインを生成することから、入力ライン数は8ラインである。図5に示すように、入力ライン数の8ラインに対して、生成ライン数を倍率ごとに1ラインずつ増やしていくことにより垂直方向のスケーリングを実現する。例えば、垂直方向の倍率を1.375倍に設定した場合、補間画素の生成ライン数は3ラインであり、出力ライン数は11ラインとなる。水平方向スケーリングと同様に、垂直方向の倍率から補間画素の生成ライン数は指定できるが、補間画素のラインの発生位置が画質に影響を及ぼす。
【0033】
そこで、図6を参照して、水平方向の倍率から補間画素の生成点数を指定し、その補間画素の発生位置について説明する。
【0034】
図6は、原画像データに対して、8×8画素の単位ブロックに分割された水平方向に1ライン8画素の原画像データから補間画素を生成したときに、その発生位置を補間画素数nごとに例示したものである。補間画素の発生位置についてはこれに限らなくてもよいし、ユーザが自分で発生位置を指定できるようにしてもよい。図6において、白枠の長方形の部分は、8×8画素の単位ブロックに分割された、原画像データの1ライン8画素の各画素を示している。また、ハッチングされた四角形の部分は、補間画素であり、その発生位置を示している。nは、0以上の整数であって、補間画素の発生点数を示している。600は、補間画素の発生点数がn=0であり、水平方向に原画像の画素1、画素2の順に画素8まで並んでいる様子を示している。601は、補間画素の発生点数がn=1であり、水平方向に原画像の画素1と画素2との間に補間画素を1画素分発生している。602は、補間画素の発生点数がn=2であり、水平方向に原画像の画素1と画素2との間に補間画素を1画素分発生し、画素5と画素6との間に補間画素を1画素分発生している。このときの水平方向倍率は、図4における水平方向補間画素生成テーブルに示すように1.25倍である。さらに、水平方向倍率を上げていくと、608では、補間画素の発生点数がn=8であり、水平方向に原画像の画素1と画素2との間に補間画素を2画素分発生し、画素2と画素3との間に補間画素を1画素分発生し、画素3と画素4との間に補間画素を1画素分発生し、画素4と画素5との間に補間画素を1画素分発生し、画素5と画素6との間に補間画素を1画素分発生し、画素6と画素7との間に補間画素を1画素分発生し、画素7と画素8との間に補間画素を1画素分発生している。このときの水平方向倍率は、図4における水平方向補間画素生成テーブルに示すように2倍である。同様にして、補間画素の発生点数nに対して、603〜624に示すように補間画素を発生する。
【0035】
このように、倍率に応じて生成する補間画素の数と発生位置とを予め規定しておくことができる。
【0036】
また、上述した説明は、水平方向の補間画素の発生位置に関するものであるが、垂直方向についても同様に補間画素を補間ラインに置き換えればよい。すなわち、垂直方向の倍率から補間画素の生成ライン数を規定し、その補間画素のラインの発生位置についても同様に規定しておくことができる。
【0037】
つぎに、水平・垂直方向のスケーリング演算処理方法について具体的に説明する。図8に、図1に示す水平方向スケーリング演算部101において、水平方向に1.25倍に拡大する場合のフローチャートを示す。1.25倍する場合には、図4に示すように、生成点数n=2であり、1ライン8画素分の画素データは10画素に画素数変換される。
【0038】
図8において、まず、水平方向スケーリング演算部101は、画素数変換後の画素数分である10画素分の画素データを格納するメモリ(配列)エリアを確保し(S801)、1ライン分のデータを入力し、確保したメモリに格納する(S802)。このとき、図4および図6に示す水平方向補間画素生成テーブルに従って補間画素を挿入する場所、つまり1画素と2画素の間、5画素と6画素の間を空けて格納する。そして、S803で入力された8画素分の画素データの間にスプライン関数による曲線を発生させ、補間画素を生成し、先程空けておいたメモリエリア(配列)の中に格納する。
【0039】
この曲線の発生方法について図9を参照して説明する。図9に、水平方向のスケーリング演算処理によって画素数変換されるときの画素位置に対する画素データを示している。横軸は画素データの位置(ならび)を表わし、縦軸は画素データの値(輝度)を表わす。
【0040】
図9において、901が画素数変換前の8画素分の画素データであり、902は画素数変換後の10画素分の画素データを示している。前述した図8に示すS802において、図4および図6に示す水平方向補間画素生成テーブルに従って図9における903に示すように、補間画素を挿入する位置を空けて8画素分の画素データを並べる。そして、図9における904に示すように、その8画素データからスプライン関数による曲線905を発生させる。ここで、スプライン関数とは、図20に示すような区分的多項式関数であり、小区間内ではそれぞれ、たかだかm次の違った多項式曲線で定義され、それらは互いにできるだけ滑らかにつながっているようなものである。この曲線905と、補間画素の発生位置C1とC2とのそれぞれの交点の値が補間画素データの値(輝度)906および907となる。水平方向スケーリング演算部101は、このようにして補間画素データ906および907を生成し、1ライン分のスケーリング演算処理が終わり、垂直方向スケーリング演算部102へ1ライン10画素分の画素データ902を出力する。このように、水平方向スケーリング演算処理部101では、順次1ラインずつスケーリング演算処理を行い、垂直方向スケーリング演算処理部102へ出力する。
【0041】
また、図10および図11を参照して垂直方向の解像度変換処理について説明する。図10に、図1に示す垂直方向スケーリング演算部102において、垂直方向に1.25倍に拡大する場合のフローチャートを示す。図11に、垂直方向のスケーリング演算処理によって画素数変換されるときの画素位置に対する画素データを示している。1.25倍する場合には、図4に示すように、生成ライン数n=2であり、8ライン分の画素データが10ライン分の画素データに画素数変換される。
【0042】
あらかじめ、垂直方向スケーリング演算処理部102内には、(水平方向拡大後の画素数8+n)×(8ライン)分のメモリが確保されており、ここでは生成点数n=2であるから、10×8=80画素分のメモリが確保されている。垂直方向スケーリング演算処理部102は、図11に示すように、水平方向スケーリング演算処理部101から順に送られてくる、水平方向の画素数変換後の8ライン分の画素データ1101〜1108をメモリに格納していき、8ライン分格納されると垂直方向のスケーリング演算処理を開始する。
【0043】
図10において、垂直方向スケーリング演算処理部102は、メモリに格納されている8ライン分の列ごとの画素データ、例えば、図11に示すような、列単位での8画素分の画素データ1112を入力する(S1001)。そして、垂直方向スケーリング演算処理部102は、各列ごとに補間画素データを生成する(S1002)。図11において、X11、X21、X31、X41、X51、X61、X71、X81の垂直方向の同じ列に当たる画素データ8画素分1112から、水平方向と同様にスプライン関数による曲線1109を求める。このとき、図5に示す垂直方向補間画素生成テーブルに従って補間ラインを挿入する場所、つまり、1ラインと2ラインの間(D11)と、5ラインと6ラインの間(D21)とに補間画素を発生させる。このとき曲線1109と、D11およびD21との交点1110、1111の値がそれぞれ補間画素データの値となる。これらX11、X21、X31、X41、X51、X61、X71、X81と補間画素データD11、D21をVRAMに直接書き込み、次のC11〜C81からまた同じようにして補間画素データを生成する。図12に、単位ブロックの画素数変換後の画素データを示す。図12に示すように、C11〜C811201、C12〜C821202、D11〜D201203、D21〜D301204の補間画素データが生成される。このようにして、水平方向の10画素分、列ごとに補間画素データを生成し、8×8画素が10×10画素の単位ブロックに変換され、スケーリング演算処理が終了する。この処理を原画像データの解像度分繰り返す。例えば、原画像データの解像度が160×120画素のデータであれば、図13に示すように、8×8画素単位のブロックが20×15=300個存在するので、8×8画素単位のスケーリング演算処理を300回繰り返せばよい。これにより、200×150画素の画像データに変換される。
【0044】
次に、具体的な例を用いて詳細に説明する。図23(1)は、8×8画素の“A”という原画像データである。画像データは、8ビットデータ(0〜255)とし、図中の数値はその画素の輝度値を表している。この画像データを、1.25倍に拡大処理する場合、従来の直線補間法で補間画素を生成した拡大画像を図23(2)に、本実施例のスプライン関数による曲線補間で補間画素を生成した拡大画像を図23(3)に示す。拡大後の補間画素の輝度値を比較すると、(2)の直線補間法で生成した補間画素より(3)のスプライン関数による曲線補間法で生成した補間画素の方がより隣接画素の輝度値に近いことがわかる。したがって、スプライン関数による曲線補間法で補間画素を生成した方が、画像の輪郭部などにおいて、拡大処理後もぼやけの少ない画像を実現することができる。
【0045】
本実施例によれば、予め補間する画素数と補間位置とを倍率に応じて規定しておくことができる。また、単位ブロックの水平方向または垂直方向の画素の画像データからスプライン関数による曲線を求め、この求めた曲線上に補間画素の画像データを決定することができる。本実施例によれば、原画像の画素数を増やす解像度変換において、モザイク状のギザギザが目立つ画像を防止し、高品質な画像を実現することができる。さらに、デジタル動画像処理を満足する高速な解像度変換処理を実現することができる。また、最小限のハードウエア規模で任意の解像度変換処理を実現することができる。
【0046】
つぎに、第2の実施例を説明する。第1の実施例においては、単位ブロックの画素内に補間画素を生成させる場合について説明したが、第2の実施例においては、単位ブロックと単位ブロックとが隣接する部分の画素間、つまり、単位ブロックの画素の外側の位置において、補間画素を発生させ、単位ブロックの隣接部分においても画素データが不連続にならないようにしている。
【0047】
図14に、8画素データを水平方向に3倍に拡大するときの第2の実施例における補間画素の発生位置のパターンの一例を示す。図14においては、原画像の画像データ1〜8から、3次スプライン曲線1409に基づいて補間画素データ1401〜1408を生成する場合を示す。この場合、補間画素データ1408は、原画像データ8の外側に発生させる。補間画素データをスプライン関数で曲線補間して生成するとき、原画素データ1〜8から3次スプライン曲線1409を発生させるため、原画素データ1〜8の間に挟まれる補間画素データ1401〜1407までは生成できるが、補間画素データ1408は原画素データ1〜8の間に挟まれないので、次の点1410が存在しないと曲線補間ができない。曲線補間法で補間画素を生成するために、次ぎの点1410の位置の画素データの値を、画素7の画素データの値として利用するとすると、つぎに入力される8×8画素の画素データとのつなぎ目が不連続になる可能性がある。
【0048】
そこで、本実施例においては、図15に示すように、画素ブロック1〜300までのあるときに、水平・垂直方向の補間画素データを生成する場合、8×8画素単位の画素ブロック1と、その右隣の画素ブロック2の一番左端の1列分の画素データ1501と、画素ブロック21の上端のラインの画素データ1502と、画素ブロック22の左上端の画素データ1503とからスプライン関数による曲線補間で画素ブロック1のスケーリング処理を行なう。
【0049】
この処理について、図16に示すフローチャートを参照して説明する。図16に示すフローチャートは、160×120画素(単位ブロック数300)の原画素データをm×n倍に拡大する場合のスケーリング処理の単位ブロックにおける処理手順を表したものである。
【0050】
図16において、図1に示す水平方向スケーリング演算処理部101は、図15に示すブロック1と、その右隣の画素ブロック2の一番左端の1列分の画素データ1501と、画素ブロック21の上端のラインの画素データ1502と、画素ブロック22の左上端の画素データ1503とを少なくとも格納するためのメモリ(メモリ1)を確保する。また、画素データをブロックごとに順番に出力している場合には、ブロック1〜ブロック22までの22ブロック分の画素(8×8×22=1408画素)の原画素データを格納するメモリ(メモリ1)を確保し(S1601)、データを格納するようにしてもよい。また、垂直方向スケーリング演算処理部102は、垂直方向スケーリング演算結果格納用メモリとして、水平方向に変換後のブロック1からブロック20までの画素とブロック21〜40の1ライン目の画素{8×(横方向拡大率m)}×(8+1)分の原画素データを格納するメモリ(メモリ2)を確保する(S1602)。
【0051】
そして、水平方向スケーリング演算処理部101は、メモリ1からブロック1の画素データと、ブロック2の左端1列分の画素データとを読み込み、1ライン9画素分の原画素データから水平方向スケーリング演算処理をそれぞれのラインについて行い、このようにして求めた水平方向スケーリング演算結果をメモリ2に格納する(S1603)。また、水平方向スケーリング演算処理部101は、メモリ1からブロック21の上端1行分の画素データ1502とブロック22の左上端の画素データ1503の計9画素分の画素データを読み込み、この9画素分の画素データから水平方向スケーリング演算処理を行い、メモリ2に格納する(S1604)。これにより、メモリ2には、図19に示すように、水平方向にm倍に拡大処理された9ライン分のデータが格納されていることになる。この時、原画素データの9画素目にあたるブロック2の左端1列分の画素データ1501はメモリ2には格納しない。そして、垂直方向スケーリング演算処理部102は、メモリ2に格納されている水平方向演算結果から、水平方向と同様に垂直方向スケーリング演算処理をそれぞれの列について行い、図7に示すVRAMに書き込んでいく(S1605)。これで、ブロック1の拡大処理が終了する。つぎに、ブロック2の拡大処理を同様に行う。このようにして、各ブロックごとに拡大処理を行っていき、全てのブロックについて拡大処理を行う。
【0052】
また、図15に示す1504において、一番右端のブロックにあたる20ブロックや40ブロックなどの場合、右隣の21ブロック目が存在しないので、図15に示す左端の1列分の画素データ1501と、画素ブロック22の左上端の画素データ1503に相当する画素データが存在しないことがある。この場合には、例えば、ブロック20の7画素目にあたる画像データの値を、平行移動して9画素目の画像データの値とすることにより、曲線補間による水平方向のスケーリング処理を行うようにしてもよい。同様に、垂直方向に関しても、図15に示す1504において、ブロック281〜ブロック300はその下のブロックが存在しないため、図15に示す上端のラインの画素データ1502にあたる画素データが存在しない。そのため、ブロック281〜300の7ライン目にあたる画像データの値を平行移動して9ライン目の画像データの値とすることにより、曲線補間による垂直方向のスケーリング処理を行うことができる。
【0053】
本実施例によれば、単位ブロックと単位ブロックとが隣接する部分の画素間、つまり、単位ブロックの画素の外側の位置において、補間画素を発生させることができ、単位ブロックの隣接部分においても画素データが不連続にならないようにすることができる。
【0054】
上述した第1および第2の実施例では、曲線補間を行う場合、図20に示すようなスプライン関数による曲線補間を行ったが、スプライン関数はこれに限らずm次スプライン関数を簡易化した混合スプライン関数や、ベーススプライン関数を用いてもよいし、又、図21に示すように、4つの補間点から始終点のみを通るような3次ベジェ曲線を用いて曲線補間を行ってもよいし、他の補間式を用いて補間を行ってもよい。
【0055】
【発明の効果】
本発明によれば、デジタル原画像を異なる画素数のデジタル画像に変換して、ディスプレイに表示する解像度変換装置および方法において、高品質な画像を再現することができる。さらに、解像度変換処理の高速化および低価格化が図れる。
【図面の簡単な説明】
【図1】画像拡大スケーリング処理方法のブロック図である。
【図2】画像拡大スケーリング処理方法の説明図である。
【図3】画像拡大スケーリング処理方法のフローチャートである。
【図4】水平方向補間画素生成テーブルの説明図である。
【図5】垂直方向補間画素生成テーブルの説明図である。
【図6】画像拡大スケーリング処理方法の説明図である。
【図7】画像拡大スケーリング処理におけるシステム構成図である。
【図8】水平方向スケーリング演算処理のフローチャートである。
【図9】水平方向スケーリング演算処理の補間画素データ生成の説明図である。
【図10】垂直方向スケーリング演算処理のフローチャートである。
【図11】垂直方向スケーリング演算処理の補間画素データ生成の説明図である。
【図12】1.25倍に画素数変換後の画素データ模式図である。
【図13】160×120画素の画素データにおける8×8画素単位ブロック分けの説明図である。
【図14】画像拡大スケーリング処理方法の説明図である。
【図15】画像拡大スケーリング処理方法の説明図である。
【図16】画像拡大スケーリング処理方法を説明するフローチャートである。
【図17】従来の画像拡大スケーリング処理方法のブロック図である。
【図18】直線補間による補間画素データ生成の説明図である。
【図19】メモリ2の構造を説明する図である。
【図20】m次スプライン関数の模式図である。
【図21】3次ベジェ関数の模式図である。
【図22】直線補間の模式図である。
【図23】拡大画像データ例である。
【符号の説明】
101…水平方向スケーリング演算部、102…垂直方向スケーリング演算部、701…CPU、702…画像入力部、703…バッファメモリ、704…スケーリング制御部、705…VRAM、706…表示制御部、707…液晶パネル。
[0001]
[Industrial applications]
The present invention relates to a resolution conversion apparatus that converts digital image information of a still image or a moving image composed of characters, graphics, and natural images into image information having different numbers of pixels and displays the image information on a display. The present invention relates to a resolution conversion device and a resolution conversion method suitable for displaying input image information in a display device having a different resolution or a window environment in moving image display.
[0002]
[Prior art]
When converting the resolution of a digital image to increase the number of pixels of the original image, the original image is enlarged and displayed on the same display device. Therefore, it is effective for enlarged display of a window. In addition, it is possible to display on a display device having a higher resolution than the resolution of the original image. Therefore, the simplest method is to increase the number of pixels in the original image by filling the same pixel in the horizontal and vertical directions for one pixel of the original image.
[0003]
Japanese Patent Application Laid-Open No. 6-124189 discloses an "image display device and an image display control method" in which pixel data in the horizontal direction and the vertical direction of an original image are averaged, and the number of pixels of the original image is reduced. There are ways to reduce this. In this method, a line is drawn by using a line drawing algorithm known as a conventional technique, and a straight line of an original image is represented by y horizontal components of at least one dot. Degrees or less. The length of each horizontal component can be considered to represent the number of pixel data of image input corresponding to one pixel data after reduced scaling written in the VRAM. Although the length of each horizontal component may be different or the same in all cases, reduction scaling in the horizontal direction is performed by averaging pixel data for n dots. The same applies to the vertical direction. By making the inclination of this straight line 45 degrees or more, enlargement processing becomes possible, and enlargement scaling in the horizontal and vertical directions is performed.
[0004]
Further, instead of simply filling the same pixel, when filling the same pixel, as shown in FIGS. 18 and 22, the gradation values of the interpolation pixels are connected so that the gradation values between the pixels of the original image are connected by a straight line. Conventionally, there is a method of increasing the number of pixels of the original image by calculating and filling the pixels. FIGS. 18 and 22 show the gradation values at each pixel position in the horizontal direction.
[0005]
FIG. 17 shows a method for arbitrarily converting the resolution of an original image. Reference numeral 1701 denotes original image data, reference numeral 1702 denotes processing for vertically multiplying the original image by L1 times and width to M1 times, and reference numeral 1703 denotes enlarged image data. Reference numeral 1704 denotes processing for expanding the enlarged image data by 1 / L2 times vertically and 1 / M2 times horizontally, and 1705 denotes reduced image data. Here, L1, L2, M1 and M2 are positive integers. This processing corresponds to image enlargement if L1> L2, M1> M2, and image reduction if L1 <L2, M1 <M2. As described above, the image size can be more freely converted by combining the image size enlargement process and the image size reduction process.
[0006]
[Problems to be solved by the invention]
<< Problem 1 >> In the case of increasing the number of pixels of the original image according to the conventional method, the method of increasing the number of pixels of the original image by filling the same pixel in the horizontal direction and the vertical direction with respect to one pixel of the original image includes: A mosaic-like jagged image becomes conspicuous, and there is a problem that image quality is deteriorated.
[0007]
<< Problem 2 >> When increasing the number of pixels of the original image according to the above-described conventional method, the same pixels are not simply filled, but when the same pixels are filled, as shown in FIGS. In the method of calculating the gradation value of the interpolation pixel so as to connect the tonal values with a straight line and increasing the number of pixels of the original image by filling the pixels, the image does not become a mosaic-like jagged image, but the boundary of shading There is a problem that high-frequency components such as contour portions of an image in which the image is clear are smoothed, and the entire image is blurred.
[0008]
<< Problem 3 >> In the case of increasing the number of pixels of the original image according to the above-described conventional method, in a method of more freely converting the image size by combining the image size enlargement process and the image size reduction process, the image enlargement process is performed. , The resolution conversion process takes a long time.
[0009]
Therefore, a first object of the present invention is to prevent a mosaic jagged image from being noticeable in a resolution conversion for increasing the number of pixels of an original image and realize a high-quality image.
[0010]
Further, a second object of the present invention is to realize high-quality images by preserving high-frequency components such as outline portions of images having sharp gray-scale boundaries in resolution conversion for increasing the number of pixels of an original image. is there.
[0011]
Further, a third object of the present invention is to realize high-speed resolution conversion processing that satisfies digital moving image processing in resolution conversion for increasing the number of pixels of an original image.
[0012]
[Means for Solving the Problems]
In order to achieve the object of the present invention, in a resolution conversion device that converts a digital original image into a digital image having a different number of pixels according to a specified conversion magnification,
For each block of a predetermined number of pixels of the digital original image, determining means for determining an interpolation position of an interpolation pixel to be interpolated with respect to the block of the digital original image according to the conversion magnification,
For each block of the digital original image, according to a predetermined interpolation formula in which a coefficient is determined by a pixel position and pixel data of each pixel of the block, a pixel to be interpolated to the interpolation position determined by the determination unit is determined. A generating unit that generates image data and outputs a converted digital image from the image data of the pixels of the digital original image and the generated image data of the pixels to be interpolated.
[0013]
Further, in a resolution conversion device that converts a digital original image into a digital image having a different number of pixels according to a designated conversion magnification,
For each block of a predetermined number of pixels of the digital original image, determining means for determining an interpolation position of an interpolation pixel to be interpolated with respect to the block of the digital original image according to the conversion magnification,
For each block of the digital original image, the pixel position and pixel data of each pixel of the block, and according to a predetermined interpolation formula whose coefficient is determined by the pixel position and pixel data of the pixel adjacent to the block, Generating image data of a pixel to be interpolated at the interpolation position determined by the determining unit, and outputting a digital image after conversion from the image data of the pixel of the digital original image and the generated image data of the pixel to be interpolated; And a generation unit.
[0014]
[Action]
In the resolution conversion apparatus according to the present invention, the determination unit determines, for each block of a predetermined number of pixels of the digital original image, an interpolation position of an interpolation pixel to be interpolated with respect to the block of the digital original image according to the conversion magnification. I do. In this case, for example, an interpolation position can be defined in a table for each conversion magnification, and the interpolation position can be determined according to the conversion magnification with reference to this table. Also, the unit block can be a block of 8 × 8 pixels.
[0015]
The generating unit interpolates, for each block of the digital original image, the interpolation position determined by the determination unit according to a predetermined interpolation formula in which a coefficient is determined by a pixel position and pixel data of each pixel of the block. The image data of the pixel to be converted is generated, and the converted digital image is output from the image data of the pixel of the digital original image and the generated image data of the pixel to be interpolated. The interpolation formula can be a spline function or a Bezier function.
[0016]
Thereby, the pixel data of the interpolation pixel can be optimized.
[0017]
According to the present invention, in the resolution conversion for increasing the number of pixels of the original image, it is possible to prevent a mosaic jagged image from being conspicuous, and realize a high-quality image with respect to a natural image or the like whose contour is not clear. In addition, for characters and figures with clear contours, high-frequency components such as contours of the image with sharp boundaries are preserved, and high-quality images can be realized.
[0018]
When an interpolation position is provided between pixels of a block to be interpolated and an adjacent block, in addition to the pixel position and pixel data of the block, the pixel position and pixel data of a pixel adjacent to the block to be interpolated are further determined. Can be used to determine the coefficients of the interpolation formula. Accordingly, an interpolated pixel can be generated between pixels in a portion where the unit block is adjacent to the unit block, that is, in a position outside the pixel of the unit block, and pixel data is also discontinuous in the adjacent portion of the unit block. Can be avoided.
[0019]
Further, the determining unit sets the conversion magnification as a conversion ratio between a horizontal direction and a vertical direction, and the generation unit generates the image data of the pixel to be interpolated in the horizontal direction. In the case where the apparatus is provided with the vertical direction generating means for performing the direction, the generation can be performed in each of the generating means, so that the speed can be increased.
[0020]
【Example】
Hereinafter, embodiments of the present invention will be described in detail.
[0021]
First, a general configuration and a processing flow of the present invention will be described, and then, a detailed configuration and a processing flow for solving the problem will be described.
[0022]
In the present embodiment, an interpolated pixel is generated, the number of pixels is increased, and the image is converted into an enlarged image.For each unit pixel block having a predetermined number of pixels, the number of pixels to be interpolated according to the magnification and the number of pixels are interpolated. The image data of the pixel to be interpolated at the interpolation position is generated according to a predetermined interpolation formula in which a coefficient is determined based on the pixel position of the block and the pixel data. That is, when the gradation value of the pixel in the unit block is represented by a predetermined function (interpolation formula), the gradation value of the interpolated pixel is obtained by the gradation value on the function for the position of the pixel to be interpolated.
[0023]
FIG. 1 shows a block diagram of a hardware configuration for converting a digital original image into a digital image having a different number of pixels. FIG. 2 shows how pixel conversion is performed. The device in this embodiment need not be limited to the configuration as shown in FIG. 1 and may be a single element formed as an LSI as a microcomputer peripheral device or a device systemized by software. Here, the digital original image data such as a still image or a moving image is obtained by expanding compressed data such as JPEG or MPEG or digitizing a signal such as NTSC.
[0024]
In FIG. 1, a horizontal scaling operation unit 101 converts the number of pixels in the input original image data in the horizontal direction. The horizontal direction scaling operation unit 101 inputs the original image data 103 of eight pixels for one line in the horizontal direction with respect to the image data obtained by dividing the original image data into unit blocks of 8 × 8 pixels, and Perform the conversion in order. Further, the horizontal scaling operation unit 101 inputs a control signal 105 indicating a horizontal scaling factor for indicating how many pixels are added to the original image in the horizontal direction. As shown in FIG. 2, the horizontal scaling operation unit 101 inputs the original image data 202 for eight pixels in one line in the horizontal direction among the original image data divided into unit blocks 201 of 8 × 8 pixels, The image data 203 for 8 ± n pixels per line is output. In FIG. 2, hatched pixels C <b> 1 and C <b> 2 in the image data 203 of 8 ± n pixels per line are interpolation pixels generated by the horizontal scaling operation unit 101.
[0025]
Next, the vertical scaling operation unit 102 converts the number of pixels in the vertical direction with respect to the image data output from the horizontal scaling operation unit 101 and converted in the horizontal direction. The vertical scaling operation unit 102 inputs the image data 104 of 8 + n pixels for one line in the horizontal direction outputted by the horizontal scaling operation unit 101 for eight lines one by one, and the image data 107 for 8 + n lines in the vertical direction. Is output. In addition, the vertical direction scaling operation unit 102 inputs a control signal 106 indicating a vertical scale factor for indicating how many pixels are added to the original image in the vertical direction. As shown in FIG. 2, the vertical scaling operation unit 102 inputs eight lines of image data 203 for one line 8 + n pixels whose number of pixels has been converted in the horizontal direction, and outputs image data 204 whose number of pixels has been converted in the vertical direction. Is output. In FIG. 2, hatched pixels P1 to P10 are interpolated pixel data generated by the vertical scaling operation unit 102. The vertical scaling operation unit 102 generates interpolation lines 205 and 206, and outputs 8 × 8 pixels. The number of pixels is converted from the original image data divided into the unit blocks of the above into image data 207 of the unit block of 10 × 10 pixels.
[0026]
FIG. 7 shows a system configuration example to which the present invention is applied. The CPU 701 is a central processing unit that processes information. An image data input unit 702 inputs compressed digital still image data or moving image data. The buffer memory 703 stores image data. For example, when the image data is MPEG-compressed moving image data, the buffer memory 703 is used to store image data before and after decompression when decompressing. Has a capacity to store at least 8 × 8 pixels. The image processing LSI 704 performs resolution conversion as shown in FIG. The VRAM 705 stores the image data after the resolution conversion. The display control unit 706 reads out the image data after the resolution conversion stored in the VRAM 705 and displays the image data on the liquid crystal panel. D / A 708 is a digital / analog converter for audio output. The system bus 709 includes a data bus, an address bus, and a control bus. The input unit 710 receives an instruction such as a resolution conversion magnification.
[0027]
In the present system configuration, the CPU 701, the buffer memory 703, the image processing LSI 704 for performing the scaling of the present invention, and the display control 706 may be a single element made into one LSI.
[0028]
Next, the details of the resolution conversion will be described with reference to FIGS. FIG. 3 shows a processing flow in the resolution conversion of the present embodiment.
[0029]
In FIG. 3, the magnification of the resolution conversion for determining how many times the original image is to be multiplied in the horizontal and vertical directions is received by the input unit 710 of the apparatus shown in FIG. 7 (S301). The CPU 701 sets the resolution conversion magnification data in a parameter register for setting the parameters of the image processing LSI 704. The image data input unit 702 receives the image data, divides it into 8 × 8 pixel unit blocks, and stores the image data in the buffer memory 703 for each of the divided unit blocks. Next, the image processing LSI 704 inputs 8-pixel data of one line in the horizontal direction of original image data divided into unit blocks of 8 × 8 pixels stored in the buffer memory 703 (S302). The image processing LSI 704 generates an interpolated pixel in the horizontal direction with respect to the input eight-pixel data for one horizontal line, and performs a scaling operation for eight horizontal lines (S303). Next, the image processing LSI 704 generates interpolation pixels in the vertical direction with respect to the eight lines of data that have been subjected to the horizontal scaling operation, generates an interpolation line at a time, and performs the vertical scaling operation. (S304). Finally, the data is written to the VRAM 705, which is a display memory, for each unit pixel block after the horizontal and vertical scaling operations (S305).
[0030]
Next, the number of pixels to be interpolated according to the magnification and the position at which the pixels are interpolated will be described in detail.
[0031]
FIG. 4 is a diagram illustrating a relationship between a horizontal scaling factor for the horizontal scaling operation unit 101 illustrated in FIG. 1 to generate an interpolation pixel in the horizontal direction and perform a horizontal scaling operation process, and a corresponding number of interpolation pixel generation points. 5 shows an example of a horizontal direction interpolation pixel generation table showing the following. Since an interpolation pixel is generated for each horizontal line of the original image data divided into unit blocks of 8 × 8 pixels with respect to the original image data, the number of input pixels is eight. For example, in the case of 8 bits for each of RGB in color display, the data length is 24 bits per pixel. The image data of each pixel may be YUV digital data represented by luminance and color difference. As shown in FIG. 4, scaling in the horizontal direction is realized by increasing the number of generated pixel generation points by one for each magnification for eight input pixels. For example, when the horizontal magnification is set to 1.625, the number of generated interpolation pixels is 5, and the number of output pixels is 13. The number of interpolation pixels to be generated can be specified from the horizontal magnification, but the position at which the interpolation pixels are generated affects the image quality. The position where the interpolation pixel is generated will be described later.
[0032]
FIG. 5 shows the vertical scaling factor for the vertical scaling operation unit 102 shown in FIG. 1 to generate interpolation pixels in the vertical direction and perform vertical scaling operation processing, and the number of interpolation pixel generation lines corresponding thereto. 6 shows an example of a vertical direction interpolation pixel generation table showing the relationship. Since the interpolation pixels are generated in the vertical direction of the original image data divided into unit blocks of 8 × 8 pixels with respect to the original image data and the interpolation lines are generated, the number of input lines is eight. As shown in FIG. 5, the scaling in the vertical direction is realized by increasing the number of generated lines by one for each magnification for eight input lines. For example, when the magnification in the vertical direction is set to 1.375 times, the number of generated lines of the interpolation pixel is three, and the number of output lines is eleven. As in the case of horizontal scaling, the number of lines for generating interpolation pixels can be specified based on the magnification in the vertical direction.
[0033]
Therefore, referring to FIG. 6, the number of interpolation pixel generation points is specified based on the horizontal magnification, and the generation position of the interpolation pixel will be described.
[0034]
FIG. 6 shows a case where interpolation pixels are generated from original image data of eight pixels per line in the horizontal direction divided into unit blocks of 8 × 8 pixels with respect to the original image data. It is illustrated for each case. The generation position of the interpolation pixel is not limited to this, and the user may be allowed to specify the generation position by himself. In FIG. 6, a rectangular portion of a white frame indicates each pixel of 8 pixels per line of the original image data divided into unit blocks of 8 × 8 pixels. The hatched quadrangular portion is an interpolated pixel, and indicates the generation position. n is an integer equal to or greater than 0, and indicates the number of occurrence points of the interpolation pixel. Reference numeral 600 denotes a state in which the number of occurrence points of the interpolation pixels is n = 0 and pixels 1 and 2 of the original image are arranged in order in the horizontal direction up to pixel 8. Reference numeral 601 indicates that the number of generated interpolation pixels is n = 1, and one interpolation pixel is generated between pixel 1 and pixel 2 of the original image in the horizontal direction. Numeral 602 indicates that the number of interpolated pixels is n = 2, one interpolated pixel is generated between pixel 1 and pixel 2 of the original image in the horizontal direction, and the interpolated pixel is between pixel 5 and pixel 6. For one pixel. The horizontal magnification at this time is 1.25, as shown in the horizontal interpolation pixel generation table in FIG. Further, when the horizontal magnification is increased, in 608, the number of generated interpolation pixels is n = 8, and two interpolation pixels are generated between pixel 1 and pixel 2 of the original image in the horizontal direction. One interpolated pixel is generated between pixel 2 and pixel 3, one interpolated pixel is generated between pixel 3 and pixel 4, and one interpolated pixel is generated between pixel 4 and pixel 5. , An interpolated pixel is generated between pixel 5 and pixel 6 for one pixel, an interpolated pixel is generated for one pixel between pixel 6 and pixel 7, and an interpolated pixel is generated between pixel 7 and pixel 8. One pixel is generated. The horizontal magnification at this time is twice as shown in the horizontal interpolation pixel generation table in FIG. Similarly, an interpolated pixel is generated with respect to the number n of interpolated pixel occurrence points as indicated by 603 to 624.
[0035]
As described above, the number of interpolation pixels to be generated and the generation position can be defined in advance according to the magnification.
[0036]
Further, the above description relates to the generation position of the interpolation pixel in the horizontal direction. However, the interpolation pixel in the vertical direction may be similarly replaced with the interpolation line. That is, the number of generation lines of the interpolation pixel can be defined based on the magnification in the vertical direction, and the generation position of the line of the interpolation pixel can be similarly defined.
[0037]
Next, the horizontal and vertical scaling operation processing method will be specifically described. FIG. 8 shows a flowchart in the case where the horizontal scaling operation unit 101 shown in FIG. 1 enlarges the image by 1.25 times in the horizontal direction. In the case of multiplying by 1.25, as shown in FIG. 4, the number of generated points is n = 2, and the pixel data of eight pixels per line is converted into ten pixels.
[0038]
In FIG. 8, first, the horizontal scaling operation unit 101 secures a memory (array) area for storing pixel data of 10 pixels, which is the number of pixels after pixel number conversion (S801), and data of one line Is input and stored in the secured memory (S802). At this time, the interpolation pixels are stored according to the horizontal interpolation pixel generation tables shown in FIGS. Then, a curve based on a spline function is generated between the pixel data of eight pixels input in S803, an interpolation pixel is generated, and the interpolation pixel is stored in the memory area (array) that has been previously opened.
[0039]
A method of generating this curve will be described with reference to FIG. FIG. 9 shows pixel data for a pixel position when the number of pixels is converted by horizontal scaling operation processing. The horizontal axis represents the position (order) of the pixel data, and the vertical axis represents the value (luminance) of the pixel data.
[0040]
In FIG. 9, reference numeral 901 denotes pixel data of eight pixels before pixel number conversion, and reference numeral 902 denotes pixel data of ten pixels after pixel number conversion. In S802 shown in FIG. 8 described above, pixel data for eight pixels is arranged with a position where an interpolation pixel is inserted, as shown at 903 in FIG. 9, according to the horizontal interpolation pixel generation tables shown in FIGS. Then, as shown by 904 in FIG. 9, a curve 905 is generated from the eight pixel data by a spline function. Here, the spline function is a piecewise polynomial function as shown in FIG. 20, and is defined by different polynomial curves of at most m degrees within a small section, and these are connected as smoothly as possible to each other. Things. The values at the intersections between the curve 905 and the positions C1 and C2 where the interpolation pixels are generated are the values (luminance) 906 and 907 of the interpolation pixel data. The horizontal scaling operation unit 101 generates the interpolation pixel data 906 and 907 in this manner, ends the scaling operation processing for one line, and outputs the pixel data 902 for ten pixels per line to the vertical scaling operation unit 102. I do. As described above, the horizontal scaling operation processing unit 101 sequentially performs the scaling operation processing on a line-by-line basis, and outputs the result to the vertical direction scaling operation processing unit 102.
[0041]
The vertical resolution conversion processing will be described with reference to FIGS. FIG. 10 shows a flowchart in the case where the vertical scaling operation unit 102 shown in FIG. 1 enlarges the image vertically by 1.25 times. FIG. 11 shows pixel data for a pixel position when the number of pixels is converted by vertical scaling operation processing. In the case of multiplying by 1.25, as shown in FIG. 4, the number of generated lines is n = 2, and the pixel data of eight lines is converted into the pixel data of ten lines.
[0042]
A memory for (number of pixels 8 after enlargement in the horizontal direction + n) × (8 lines) is secured in advance in the vertical scaling operation processing unit 102. Here, since the number of generated points is n = 2, 10 × A memory for 8 = 80 pixels is secured. As shown in FIG. 11, the vertical scaling operation processing unit 102 stores, in the memory, pixel data 1101 to 1108 for eight lines after the horizontal pixel number conversion, which are sequentially sent from the horizontal direction scaling operation unit 101. The data is stored, and when eight lines are stored, the scaling operation in the vertical direction is started.
[0043]
In FIG. 10, the vertical scaling operation processing unit 102 stores pixel data for each column of eight lines stored in the memory, for example, pixel data 1112 of eight pixels for each column as shown in FIG. An input is made (S1001). Then, the vertical scaling operation processing unit 102 generates interpolation pixel data for each column (S1002). In FIG. 11, X 11 , X 21 , X 31 , X 41 , X 51 , X 61 , X 71 , X 81 , A curve 1109 based on a spline function is obtained from eight pixels of pixel data 1112 corresponding to the same column in the vertical direction. At this time, a place where an interpolation line is inserted according to the vertical direction interpolation pixel generation table shown in FIG. 5, that is, between one line and two lines (D 11 ) And between lines 5 and 6 (D 21 ) And generate an interpolation pixel. At this time, the curve 1109 and D 11 And D 21 At the intersections 1110 and 1111 are the values of the interpolated pixel data. These X 11 , X 21 , X 31 , X 41 , X 51 , X 61 , X 71 , X 81 And interpolation pixel data D 11 , D 21 Is written directly into the VRAM, and the next C 11 ~ C 81 And generates the interpolation pixel data in the same manner. FIG. 12 shows the pixel data of the unit block after the pixel number conversion. As shown in FIG. 11 ~ C 81 1201, C 12 ~ C 82 1202, D 11 ~ D 20 1203, D 21 ~ D 30 Interpolated pixel data of 1204 is generated. In this way, interpolated pixel data for 10 pixels in the horizontal direction is generated for each column, 8 × 8 pixels are converted into a unit block of 10 × 10 pixels, and the scaling operation process ends. This process is repeated for the resolution of the original image data. For example, if the resolution of the original image data is 160 × 120 pixel data, there are 20 × 15 = 300 blocks in 8 × 8 pixel units as shown in FIG. The arithmetic processing may be repeated 300 times. Thereby, the image data is converted into image data of 200 × 150 pixels.
[0044]
Next, a specific example will be described in detail. FIG. 23A shows original image data of “A” of 8 × 8 pixels. The image data is 8-bit data (0 to 255), and the numerical values in the figure represent the luminance values of the pixels. When this image data is enlarged by a factor of 1.25, an enlarged image in which interpolation pixels are generated by the conventional linear interpolation method is shown in FIG. 23 (2), and interpolation pixels are generated by curve interpolation using the spline function of the present embodiment. The enlarged image obtained is shown in FIG. Comparing the luminance values of the interpolated pixels after the enlargement, the interpolated pixels generated by the curve interpolation method using the spline function of (3) are more likely to have luminance values of adjacent pixels than the interpolated pixels generated by the linear interpolation method of (2). It turns out that it is close. Therefore, when the interpolation pixels are generated by the curve interpolation method using the spline function, it is possible to realize an image with little blurring even after the enlargement processing in the contour portion of the image.
[0045]
According to this embodiment, the number of pixels to be interpolated and the interpolation position can be defined in advance according to the magnification. Further, a curve based on a spline function is obtained from the image data of the pixels in the unit block in the horizontal direction or the vertical direction, and the image data of the interpolation pixel can be determined on the obtained curve. According to this embodiment, in resolution conversion for increasing the number of pixels of an original image, an image in which mosaic jaggies are conspicuous can be prevented, and a high-quality image can be realized. Further, high-speed resolution conversion processing that satisfies digital moving image processing can be realized. Also, an arbitrary resolution conversion process can be realized with a minimum hardware scale.
[0046]
Next, a second embodiment will be described. In the first embodiment, the case where the interpolation pixel is generated within the pixel of the unit block has been described. However, in the second embodiment, the unit block and the unit block are located between adjacent pixels, that is, the unit block. Interpolated pixels are generated at positions outside the pixels of the block so that the pixel data does not become discontinuous even in an adjacent portion of the unit block.
[0047]
FIG. 14 shows an example of the pattern of the generation positions of the interpolated pixels in the second embodiment when the 8-pixel data is enlarged three times in the horizontal direction. FIG. 14 shows a case where interpolated pixel data 1401 to 1408 are generated from image data 1 to 8 of an original image based on a cubic spline curve 1409. In this case, the interpolation pixel data 1408 is generated outside the original image data 8. When generating interpolated pixel data by curve interpolation using a spline function, to generate a cubic spline curve 1409 from the original pixel data 1 to 8, the interpolation pixel data 1401 to 1407 sandwiched between the original pixel data 1 to 8 are generated. Can be generated, but since the interpolated pixel data 1408 is not sandwiched between the original pixel data 1 to 8, the curve interpolation cannot be performed unless the next point 1410 exists. If the value of the pixel data at the next point 1410 is used as the value of the pixel data of the pixel 7 in order to generate the interpolation pixel by the curve interpolation method, the pixel data of the next input 8 × 8 pixel is Joints may be discontinuous.
[0048]
Accordingly, in the present embodiment, as shown in FIG. 15, when there are pixel blocks 1 to 300, when generating horizontal and vertical interpolated pixel data, a pixel block 1 in units of 8 × 8 pixels, A curve based on a spline function is obtained from the pixel data 1501 of the leftmost column of the pixel block 2 on the right side, the pixel data 1502 of the line on the upper end of the pixel block 21, and the pixel data 1503 on the upper left of the pixel block 22. The scaling processing of the pixel block 1 is performed by interpolation.
[0049]
This processing will be described with reference to the flowchart shown in FIG. The flowchart illustrated in FIG. 16 illustrates a processing procedure in a unit block of a scaling process when the original pixel data of 160 × 120 pixels (300 unit blocks) is enlarged by m × n times.
[0050]
In FIG. 16, the horizontal scaling operation processing unit 101 illustrated in FIG. 1 includes the block 1 illustrated in FIG. 15, the pixel data 1501 of the leftmost one column of the pixel block 2 on the right side thereof, and the pixel data 21 of the pixel block 21. A memory (memory 1) for storing at least the pixel data 1502 of the top line and the pixel data 1503 of the top left of the pixel block 22 is secured. When pixel data is sequentially output for each block, a memory (memory) for storing original pixel data of pixels (8 × 8 × 22 = 1408 pixels) of 22 blocks from block 1 to block 22 1) may be secured (S1601) and data may be stored. In addition, the vertical scaling operation processing unit 102 serves as a memory for storing the result of the vertical scaling operation, the pixels of the blocks 1 to 20 after the horizontal conversion and the pixels of the first line of the blocks 21 to 40 {8 × ( A memory (memory 2) for storing original pixel data for (horizontal magnification m)} × (8 + 1) is secured (S1602).
[0051]
Then, the horizontal scaling operation processing unit 101 reads the pixel data of the block 1 from the memory 1 and the pixel data of the leftmost column of the block 2, and performs the horizontal scaling operation processing on the original pixel data of 9 pixels per line. Is performed for each line, and the horizontal scaling operation result thus obtained is stored in the memory 2 (S1603). Further, the horizontal scaling operation processing unit 101 reads pixel data of a total of 9 pixels, that is, pixel data 1502 of the upper end one row of the block 21 and pixel data 1503 of the upper left end of the block 22 from the memory 1, and reads the pixel data of the 9 pixels. The horizontal scaling operation is performed from the pixel data of (1) and stored in the memory 2 (S1604). As a result, as shown in FIG. 19, nine lines of data that have been horizontally enlarged by a factor of m are stored in the memory 2. At this time, the pixel data 1501 for the leftmost column of the block 2 corresponding to the ninth pixel of the original pixel data is not stored in the memory 2. Then, the vertical scaling operation processing unit 102 performs vertical scaling operation processing on each column in the same manner as in the horizontal direction from the horizontal operation result stored in the memory 2 and writes the result in the VRAM shown in FIG. (S1605). Thus, the enlargement processing of block 1 is completed. Next, the enlargement processing of block 2 is performed in the same manner. In this way, the enlarging process is performed for each block, and the enlarging process is performed for all blocks.
[0052]
In addition, in the case of a block at the right end, such as 20 block or 40 block, there is no 21st block on the right side in 1504 shown in FIG. 15, so pixel data 1501 for one column at the left end shown in FIG. Pixel data corresponding to the pixel data 1503 at the upper left corner of the pixel block 22 may not exist. In this case, for example, the horizontal scaling processing by curve interpolation is performed by moving the value of the image data corresponding to the seventh pixel of the block 20 in parallel to obtain the value of the image data of the ninth pixel. Is also good. Similarly, in the vertical direction, in block 1504 shown in FIG. 15, there is no block below block 281 to block 300, and thus there is no pixel data corresponding to pixel data 1502 in the top line shown in FIG. 15. Therefore, by performing parallel translation of the value of the image data corresponding to the seventh line of the blocks 281 to 300 to obtain the value of the image data of the ninth line, vertical scaling processing by curve interpolation can be performed.
[0053]
According to the present embodiment, an interpolated pixel can be generated between pixels in a portion where a unit block and a unit block are adjacent to each other, that is, at a position outside the pixel of the unit block. Data can be prevented from being discontinuous.
[0054]
In the above-described first and second embodiments, when performing the curve interpolation, the curve interpolation using the spline function as shown in FIG. 20 was performed. However, the spline function is not limited to this, and the mixed order obtained by simplifying the m-order spline function is used. A spline function or a base spline function may be used, or, as shown in FIG. 21, curve interpolation may be performed using a cubic Bezier curve passing only from the four interpolation points to the start and end points. Interpolation may be performed using another interpolation formula.
[0055]
【The invention's effect】
According to the present invention, a high-quality image can be reproduced by a resolution conversion apparatus and method for converting a digital original image into a digital image having a different number of pixels and displaying the digital image on a display. Further, the resolution conversion processing can be speeded up and reduced in cost.
[Brief description of the drawings]
FIG. 1 is a block diagram of an image enlargement scaling processing method.
FIG. 2 is an explanatory diagram of an image enlargement scaling processing method.
FIG. 3 is a flowchart of an image enlargement scaling processing method.
FIG. 4 is an explanatory diagram of a horizontal interpolation pixel generation table.
FIG. 5 is an explanatory diagram of a vertical direction interpolation pixel generation table.
FIG. 6 is an explanatory diagram of an image enlargement scaling processing method.
FIG. 7 is a system configuration diagram in an image enlargement scaling process.
FIG. 8 is a flowchart of a horizontal scaling operation process.
FIG. 9 is a diagram illustrating generation of interpolated pixel data in horizontal scaling operation processing.
FIG. 10 is a flowchart of a vertical scaling operation process.
FIG. 11 is an explanatory diagram of generation of interpolation pixel data in vertical scaling operation processing.
FIG. 12 is a schematic diagram of pixel data after the number of pixels has been converted to 1.25 times.
FIG. 13 is an explanatory diagram of block division of 8 × 8 pixels in pixel data of 160 × 120 pixels.
FIG. 14 is an explanatory diagram of an image enlargement scaling processing method.
FIG. 15 is an explanatory diagram of an image enlargement scaling processing method.
FIG. 16 is a flowchart illustrating an image enlargement scaling processing method.
FIG. 17 is a block diagram of a conventional image enlargement scaling processing method.
FIG. 18 is a diagram illustrating generation of interpolated pixel data by linear interpolation.
FIG. 19 is a diagram illustrating the structure of a memory 2.
FIG. 20 is a schematic diagram of an m-order spline function.
FIG. 21 is a schematic diagram of a cubic Bezier function.
FIG. 22 is a schematic diagram of linear interpolation.
FIG. 23 is an example of enlarged image data.
[Explanation of symbols]
Reference numeral 101: horizontal scaling calculator, 102: vertical scaling calculator, 701: CPU, 702: image input unit, 703: buffer memory, 704: scaling controller, 705: VRAM, 706: display controller, 707: liquid crystal panel.

Claims (5)

デジタル原画像を、指定された変換倍率に応じて異なる画素数のデジタル画像に変換する解像度変換装置において、
前記デジタル原画像の予め定めた画素数のブロックごとに、前記デジタル原画像の前記ブロックに対して補間する補間画素の補間位置を前記変換倍率に応じて決定する決定手段と、
前記デジタル原画像の前記ブロックごとに、当該ブロックのそれぞれの画素の画素位置および画素データにより係数が決定される予め定めた補間式に従って、前記決定手段により決定される前記補間位置に補間する画素の画像データを生成し、前記デジタル原画像の画素の画像データと当該生成した補間する画素の画像データとから変換後のデジタル画像を出力する生成部と、を有し、
前記決定手段は、前記補間位置の少なくとも一つを、当該補間するブロックと隣接するブロックとの画素間に設けるように決定し、
前記生成手段は、前記補間する画素の画素データを、当該補間するブロックに隣接する画素の画素位置と画素データとをさらに用いて前記補間式の係数を決定することにより生成することを特徴とする解像度変換装置。
In a resolution conversion device that converts a digital original image into a digital image having a different number of pixels according to a specified conversion magnification,
For each block of a predetermined number of pixels of the digital original image, determining means for determining an interpolation position of an interpolation pixel to be interpolated with respect to the block of the digital original image according to the conversion magnification,
For each block of the digital original image, according to a predetermined interpolation formula in which a coefficient is determined by a pixel position and pixel data of each pixel of the block, a pixel to be interpolated to the interpolation position determined by the determination unit is determined. A generating unit that generates image data and outputs a digital image after conversion from the image data of the pixel of the digital original image and the image data of the generated pixel to be interpolated ,
The determining means determines that at least one of the interpolation positions is provided between pixels of a block to be interpolated and an adjacent block,
The generation means generates the pixel data of the pixel to be interpolated by determining a coefficient of the interpolation formula further using a pixel position and pixel data of a pixel adjacent to the block to be interpolated. Resolution converter.
請求項1において、前記補間式は、スプライン関数であることを特徴とする解像度変換装置。2. The resolution conversion device according to claim 1, wherein the interpolation formula is a spline function. 請求項1において、前記補間式は、ベジェ関数であることを特徴とする解像度変換装置。2. The resolution conversion device according to claim 1, wherein the interpolation formula is a Bezier function. 請求項1において、前記決定手段は、前記変換倍率を、水平方向と垂直方向との変換倍率とし、
前記生成部は、前記補間する画素の画像データの生成を、前記水平方向について行う水平方向生成手段と、前記垂直方向について行う垂直方向生成手段とを備えることを特徴とする解像度変換装置。
2. The method according to claim 1, wherein the determining unit sets the conversion magnification as a conversion magnification between a horizontal direction and a vertical direction.
The resolution conversion apparatus according to claim 1, wherein the generation unit includes a horizontal direction generation unit that generates the image data of the pixel to be interpolated in the horizontal direction and a vertical direction generation unit that performs the vertical direction.
デジタル原画像を、指定された変換倍率に応じて異なる画素数のデジタル画像に変換する解像度変換装置において、
前記デジタル原画像の予め定めた画素数のブロックごとに、前記デジタル原画像の前記ブロックに対して補間する補間画素の補間位置を前記変換倍率に応じて決定する決定手段と、
前記デジタル原画像の前記ブロックごとに、当該ブロックのそれぞれの画素の画素位置および画素データと、当該ブロックに隣接する画素の画素位置および画素データとにより係数が決定される予め定めた補間式に従って、前記決定手段により決定される前記補間位置に補間する画素の画像データを生成し、前記デジタル原画像の画素の画像データと当該生成した補間する画素の画像データとから変換後のデジタル画像を出力する生成部とを有することを特徴とする解像度変換装置。
In a resolution conversion device that converts a digital original image into a digital image having a different number of pixels according to a specified conversion magnification,
For each block of a predetermined number of pixels of the digital original image, determining means for determining an interpolation position of an interpolation pixel to be interpolated with respect to the block of the digital original image according to the conversion magnification,
For each block of the digital original image, the pixel position and pixel data of each pixel of the block, and according to a predetermined interpolation formula whose coefficient is determined by the pixel position and pixel data of the pixel adjacent to the block, Generating image data of a pixel to be interpolated at the interpolation position determined by the determining unit, and outputting a digital image after conversion from the image data of the pixel of the digital original image and the generated image data of the pixel to be interpolated; A resolution conversion device comprising: a generation unit.
JP08961295A 1995-04-14 1995-04-14 Resolution conversion device and resolution conversion method Expired - Fee Related JP3582540B2 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP08961295A JP3582540B2 (en) 1995-04-14 1995-04-14 Resolution conversion device and resolution conversion method
TW085103666A TW377431B (en) 1995-04-14 1996-03-27 Method and apparatus for changing resolution
KR1019960011176A KR100229516B1 (en) 1995-04-14 1996-04-13 Resolution conversion apparatus and method
US08/633,310 US6002810A (en) 1995-04-14 1996-04-15 Resolution conversion system and method
US09/452,169 US6151425A (en) 1995-04-14 1999-12-01 Resolution conversion system and method
US09/636,059 US6389180B1 (en) 1995-04-14 2000-08-10 Resolution conversion system and method
US10/099,951 US6587602B2 (en) 1995-04-14 2002-03-19 Resolution conversion system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP08961295A JP3582540B2 (en) 1995-04-14 1995-04-14 Resolution conversion device and resolution conversion method

Publications (2)

Publication Number Publication Date
JPH08286658A JPH08286658A (en) 1996-11-01
JP3582540B2 true JP3582540B2 (en) 2004-10-27

Family

ID=13975581

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08961295A Expired - Fee Related JP3582540B2 (en) 1995-04-14 1995-04-14 Resolution conversion device and resolution conversion method

Country Status (1)

Country Link
JP (1) JP3582540B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4258976B2 (en) 1999-03-24 2009-04-30 パナソニック株式会社 Image processing apparatus and processing method
KR100988481B1 (en) * 2009-06-01 2010-10-18 전자부품연구원 Input method and apparatus for mode transformed image
JP6054788B2 (en) * 2013-03-26 2016-12-27 Necプラットフォームズ株式会社 Storage battery residual quantity estimation device and residual quantity estimation method

Also Published As

Publication number Publication date
JPH08286658A (en) 1996-11-01

Similar Documents

Publication Publication Date Title
KR100229516B1 (en) Resolution conversion apparatus and method
US20020167523A1 (en) Pixel engine
JP2002024815A (en) Image conversion method for converting into enlarged image data, image processing device, and image display device
KR100818718B1 (en) Image processing device, and computer-readable recording medium having recorded thereon image processing program
JP3449142B2 (en) Image reduction apparatus and control method thereof
JP4022935B2 (en) Image processing apparatus and processing method
JPH0660173A (en) Method and apparatus for reducing picture
JP3599413B2 (en) Resolution conversion device and resolution conversion method
US20010048771A1 (en) Image processing method and system for interpolation of resolution
JP3582540B2 (en) Resolution conversion device and resolution conversion method
JP2005077522A (en) Image processor and image processing method
JP2004213464A (en) Image processor
KR100463552B1 (en) Cubic convolution interpolation apparatus and method
JP4118030B2 (en) Image compression apparatus / image expansion apparatus, image compression method / image expansion method, and information recording medium for realizing the method
JP4024643B2 (en) Image signal processing device
JP4684074B2 (en) Image processing device
JPH03236097A (en) Method and device for image display
JPH10320569A (en) Image processing device, method therefor, rendering device and method therefor
JP2002149105A (en) Image magnification controller
JPH04141787A (en) Expanding/reducing system for color picture
JP3826861B2 (en) Image processing apparatus, image forming apparatus, and image processing method
JPH08272351A (en) Picture processor
JP2007188337A (en) Image processor
US20030142107A1 (en) Pixel engine
JPH11187360A (en) Image processor

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20031225

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20040311

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040622

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040716

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040720

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

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20080806

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20080806

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20080806

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090806

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100806

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100806

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 7

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 7

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

Free format text: JAPANESE INTERMEDIATE CODE: R313121

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20110806

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120806

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120806

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130806

Year of fee payment: 9

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees