JP3522211B2 - 画像拡大縮小方式 - Google Patents

画像拡大縮小方式

Info

Publication number
JP3522211B2
JP3522211B2 JP2000323117A JP2000323117A JP3522211B2 JP 3522211 B2 JP3522211 B2 JP 3522211B2 JP 2000323117 A JP2000323117 A JP 2000323117A JP 2000323117 A JP2000323117 A JP 2000323117A JP 3522211 B2 JP3522211 B2 JP 3522211B2
Authority
JP
Japan
Prior art keywords
output
image
processing
input
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2000323117A
Other languages
English (en)
Other versions
JP2002135573A (ja
Inventor
大輔 森脇
幸司 石田
Original Assignee
Necビューテクノロジー株式会社
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 Necビューテクノロジー株式会社 filed Critical Necビューテクノロジー株式会社
Priority to JP2000323117A priority Critical patent/JP3522211B2/ja
Publication of JP2002135573A publication Critical patent/JP2002135573A/ja
Application granted granted Critical
Publication of JP3522211B2 publication Critical patent/JP3522211B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報処理システム
において画像の拡大処理や縮小処理を行う画像拡大縮小
方式に関する。
【0002】
【従来の技術】図13および図14は、従来の一般的な
画像拡大縮小方式における画像拡大処理および画像縮小
処理の態様の具体例を示した図である。
【0003】図13に示すように、従来の画像拡大縮小
方式における画像拡大処理では、隣接する2つの画素の
画素値の平均を求める方法(当該画素値を直線的に補間
する方法)が行われるのが一般的であった。
【0004】また、図14に示すように、従来の画像拡
大縮小方式における画像縮小処理では、縮小倍率に基づ
き、複数の入力画素の画素値の平均(除算によって算出
する平均)を1つの出力画素の画素値として出力する方
法が行われるのが一般的であった。したがって、画像縮
小処理の際には、情報処理システムの処理速度が遅くな
る除算が必要になっていた。
【0005】ここで、上記の画像拡大処理および画像縮
小処理の2種の処理方法は、それぞれアルゴリズムが異
なるため、画像の拡大であるか縮小であるかに応じて、
アルゴリズムの場合分けを要し、画像拡大処理および画
像縮小処理のそれぞれについて異なったプログラムを記
述する必要が生じていた。
【0006】
【発明が解決しようとする課題】上述した従来の画像拡
大縮小方式には、次のような問題点があった。
【0007】第1の問題点は、画像拡大縮小処理を実現
するためのプログラムのコードサイズが大きくなるとい
うことである。このような問題点が生じる理由は、拡大
処理と縮小処理とでアルゴリズムが異なるためである。
【0008】第2の問題点は、処理速度が遅くなるとい
うことである。このような問題点が生じる理由は、特
に、画像縮小処理において対象の画素の全ての平均をと
るための除算が用いられているからである。
【0009】第3の問題点は、処理の際に必要となるメ
モリ領域の容量が大きくなるということである。このよ
うな問題点が生じる理由は、処理の過程における補間の
ため等のバッファ領域(入力画像や出力画像の画像デー
タを保持するためのメモリ領域)が必要になるためであ
る。
【0010】本発明の目的は、上述の点に鑑み、除算を
必要とせず、かつ拡大処理と縮小処理とで同一となるア
ルゴリズムを採用し、任意の入力画像に対して自由な倍
率で画像の拡大縮小を行うことができ、処理に要するメ
モリ容量の削減を可能とし、処理速度が高速となり、小
さなコードサイズで処理を実現できる画像拡大縮小方式
を提供することにある。
【0011】
【課題を解決するための手段】本発明の画像拡大縮小方
式は、画像の拡大および縮小を行う情報処理システムに
おいて、Xという入力画像横幅およびYという入力画像
縦幅を有する入力画像を示す入力画像データを入力する
入力装置と、出力画像データに基づいてXOutという
出力画像横幅およびYOutという出力画像縦幅を有す
る出力画像を出力する出力装置と、前記入力装置により
入力された入力画像データを記憶するための入力画像デ
ータバッファ領域と前記出力装置に送出される出力画像
データを生成するための出力画像データバッファ領域と
を有する記憶装置と、XOut/Xという水平方向の倍
率とYOut/Yという垂直方向の倍率とに基づき、前
記入力装置により入力された入力画像データ中の入力画
素値を処理対象として、重複点以外の出力画素値につい
ては入力画素値を出力画素値に複写する処理である複写
処理によって出力画素値を算出し、重複点の出力画素値
については隣接画素群の連続した偏重的な平均値算出処
理である連続偏重平均処理(「連続偏重平均処理」の処
理内容については後に詳述する)によって出力画素値を
算出し、これらの算出処理によって前記出力装置に送出
される出力画像データ中の出力画素値を算出し、拡大処
理と縮小処理とを除算を用いない同一アルゴリズムの演
算で実現して出力画像データを生成するデータ処理装置
内の画像拡大縮小手段とを有する。
【0012】また、本発明の画像拡大縮小方式は、画像
の拡大および縮小を行う情報処理システムにおいて、X
という入力画像横幅およびYという入力画像縦幅を有す
る入力画像を示す入力画像データを入力する入力装置
と、出力画像データに基づいてXOutという出力画像
横幅およびYOutという出力画像縦幅を有する出力画
像を出力する出力装置とが存在することを前提として、
データ処理装置を、XOut/Xという水平方向の倍率
とYOut/Yという垂直方向の倍率とに基づき、前記
入力装置により入力された入力画像データ中の入力画素
を処理対象として、重複点以外の出力画素値について
は入力画素値を出力画素値に複写する処理である複写処
理によって出力画素値を算出し、重複点の出力画素値に
ついては隣接画素群の連続した偏重的な平均値算出処理
である連続偏重平均処理によって出力画素値を算出し、
これらの算出処理によって前記出力装置に送出される出
力画像データ中の出力画素値を算出し、拡大処理と縮小
処理とを除算を用いない同一アルゴリズムの演算で実現
して出力画像データを生成する画像拡大縮小手段として
機能させるためのプログラムを記録した記録媒体として
実現することも可能である。
【0013】さらに、本発明は、入力画像の基準位置を
Vで表し、出力画像の基準位置をVRで表し、水平方向
画素処理フラグをXDataWriteFlagで表
し、垂直方向画素処理フラグをYDataWriteF
lagで表し、出力画像横幅カウンタをXCounte
rで表し、出力画像縦幅カウンタをYCounterで
表し、出力画素横ポインタをXOutPointerで
表し、出力画素縦ポインタをYOutPointerで
表し、入力画素横ポインタをXPointerで表し、
入力画素縦ポインタをYPointerで表し、出力画
像横幅をXOutで表し、出力画像縦幅をYOutで表
し、入力画像横幅をXで表し、入力画像縦幅をYで表
し、C言語による記述方法を採用した場合(ただし、C
言語の条件判断式中の「==」という記述は「=」によ
って示している)に、「YDataWriteFlag
=0」,「YOutPointer=VR」,「YPo
inter=V」,および「YCounter=YOu
t」という処理を行う第1のステップと、前記第1のス
テップの処理後および第19のステップで「YES」と
判定した場合に、「XOutPointer=YOut
Pointer」,「XPointer=YPoint
er」,「XDataWriteFlag=YData
WriteFlag」,および「XCounter=X
Out」という処理を行う第2のステップと、前記第2
のステップの処理後および第12のステップで「YE
S」と判定した場合に、「XDataWriteFla
g=0」であるか否かの判定を行う第3のステップと、
前記第3のステップで「YES」と判定した場合に、
「*XOutPointer=*XPointer」お
よび「XDataWriteFlag=1」という処理
を行う第4のステップと、前記第3のステップで「N
O」と判定した場合に、「*XOutPointer=
(*XOutPointer+*XPointer)>
>1」という処理を行う第5のステップと、前記第4の
ステップの処理後および前記第5のステップの処理後
に、「XCounter−=X」という処理を行う第6
のステップと、前記第6のステップの処理後に、「XC
ounter<0」であるか否かの判定を行う第7のス
テップと、前記第7のステップで「NO」と判定した場
合に、「XCounter=0」であるか否かの判定を
行う第8のステップと、前記第7のステップで「YE
S」と判定した場合に、「XCounter+=X」,
「XCounter+=XOut」,および「XPoi
nter++」という処理を行う第9のステップと、前
記第8のステップで「YES」と判定した場合に、「X
Counter+=XOut」,「XOutPoint
er++」,「XDataWriteFlag=YDa
taWriteFlag」,および「XPointer
++」という処理を行う第10のステップと、前記第8
のステップで「NO」と判定した場合に、「XOutP
ointer++」,および「XDataWriteF
lag=YDataWriteFlag」という処理を
行う第11のステップと、前記第9のステップの処理
後,前記第10のステップの処理後,および前記第11
のステップの処理後に、「XOutPointer<
(YOutPointer+XOut)」であるか否か
の判定を行う前記第12のステップと、前記第12のス
テップで「NO」と判定した場合に、「YDataWr
iteFlag=0」および「YCounter−=
Y」という処理を行う第13のステップと、前記第13
のステップの処理後に、「YCounter<0」であ
るか否かの判定を行う第14のステップと、前記第14
のステップで「NO」と判定した場合に、「YCoun
ter=0」であるか否かの判定を行う第15のステッ
プと、前記第14のステップで「YES」と判定した場
合に、「YDataWriteFlag=1」,「YC
ounter+=Y」,「YCounter+=YOu
t」,および「YPointer+=X」という処理を
行う第16のステップと、前記第15のステップで「Y
ES」と判定した場合に、「YCounter+=YO
ut」,「YOutPointer+=XOut」,お
よび「YPointer+=X」という処理を行う第1
7のステップと、前記第15のステップで「NO」と判
定した場合に、「YOutPointer+=XOu
t」という処理を行う第18のステップと、前記第16
のステップの処理後,前記第17のステップの処理後,
および前記第18のステップの処理後に、「YOutP
ointer<(VR+(XOut*YOut))」で
あるか否かの判定を行い、「NO」と判定した場合には
全体の処理を終了させる前記第19のステップとを有す
る画像拡大縮小方法として実現することも可能である
(当該方法の処理手順は図2および図3の流れ図に示す
処理手順に該当する)。なお、上記の記述中の「C言語
による記述方法を採用した場合に」という文言の意味
は、C言語による記述方法を採用した場合に、本発明の
処理内容を上記のように表現できるということである。
すなわち、上記と同一の処理内容をC言語以外のプログ
ラム言語によって記述することによっても、本発明を実
現できることはいうまでもない。
【0014】
【発明の実施の形態】次に、本発明について図面を参照
して詳細に説明する。
【0015】(1) 第1の実施の形態
【0016】図1は、本発明の第1の実施の形態に係る
画像拡大縮小方式の構成を示すブロック図である。
【0017】図1を参照すると、本実施の形態に係る画
像拡大縮小方式は、入力画像(拡大縮小処理の対象とな
る元画像)の画像データである入力画像データを入力す
るための入力装置10と、出力画像(拡大縮小処理後の
画像)の画像データである出力画像データを出力するた
めの装置でありディスプレイ装置や印刷装置等によって
実現される出力装置20と、プログラム制御により動作
するデータ処理装置30と、入力画像データを一時的に
記憶するためのバッファ領域(入力画像データバッファ
領域41)および出力画像データを生成するためのバッ
ファ領域(最終的な出力画像データを含む拡大縮小処理
の過程における状態の画像データを一時的に記憶するバ
ッファ領域である出力画像データバッファ領域42)を
有する記憶装置40とを含んで構成されている。
【0018】データ処理装置30は、以下のa〜dに示
す画像拡大縮小処理を行う画像拡大縮小手段31を含ん
で構成されている。
【0019】a.入力画像データを入力装置10から入
力し、記憶装置40内の入力画像データバッファ領域4
1に格納する。
【0020】b.入力画像横幅(入力画像における水平
方向の画素数)と出力画像横幅(出力画像における水平
方向の画素数)とから認識できる水平方向の倍率と、入
力画像縦幅(入力画像における垂直方向の画素数)と出
力画像縦幅(出力画像における垂直方向の画素数)とか
ら認識できる垂直方向の倍率とに基づき、入力画像デー
タ中の画素値(入力画素値)から出力画像データにおけ
る画素値(出力画素値)を順次算出していく。その際
に、入力画素値に対する和算(加算)およびビットシフ
トのみを用いる演算(除算を用いない演算)により、入
力画素値に対する複写処理および連続偏重平均処理を実
現して、水平方向と垂直方向とが異なった倍率となるこ
とを許容して、かつ拡大処理と縮小処理とを同一アルゴ
リズムの演算で行って出力画像データ中の各出力画素値
を算出する。なお、本発明でいう「連続偏重平均処理」
とは、画像拡大縮小処理における、隣接画素群の連続し
た偏重的な平均値算出処理をいう(具体的には、例え
ば、図7中の「Z5’=(((Z1+Z2)/2+Z
3)/2+Z4)/2」や図8中の「Z1’=(((Z
1+Z2)/2+Z4)/2+Z5)/2」という計算
式によって出力画素値を算出する処理が該当する)。
【0021】c.上記bの処理によって算出した出力画
素値を記憶装置40内の出力画像データバッファ領域4
2に書き込んでいく(同一出力画素値への上書きも行わ
れうる)。
【0022】d.最終的に生成された出力画像データ
(記憶装置40内の出力画像データバッファ領域42中
の最終的な内容)を出力装置20に出力する(例えば、
出力装置20上のVRAM(Video Random
Access Memory)に出力する)。
【0023】なお、画像拡大縮小手段31は、入力装置
10から入力画像データ中の画素値を直接的に入力する
ことや、出力装置20上のVRAM等において直接的に
出力画像データを生成していくことも可能である。この
場合には、本発明の画像拡大縮小方式は、画像データの
バッファ領域としての記憶装置40上のメモリ領域を必
要としないことになる。
【0024】図2および図3は、本実施の形態に係る画
像拡大縮小方式の処理を示す流れ図である。この処理
は、初期設定ステップA1と、水平方向初期設定ステッ
プA2と、水平方向画素処理フラグ判定ステップA3
と、画素値複写ステップA4と、画素値ビットシフトス
テップA5と、出力画像横幅カウンタ減算ステップA6
と、第1出力画像横幅カウンタ判定ステップA7と、第
2出力画像横幅カウンタ判定ステップA8と、「XCo
unter<0」時処理ステップA9と、「XCoun
ter=0」時処理ステップA10と、「XCount
er>0」時処理ステップA11と、垂直方向処理移行
要否判定ステップA12と、垂直方向画素処理フラグ設
定および出力画像縦幅カウンタ減算ステップA13と、
第1出力画像縦幅カウンタ判定ステップA14と、第2
出力画像縦幅カウンタ判定ステップA15と、「YCo
unter<0」時処理ステップA16と、「YCou
nter=0」時処理ステップA17と、「YCoun
ter>0」時処理ステップA18と、処理終了判定ス
テップA19とからなる。
【0025】なお、図2および図3中の記述は、C言語
による記述方法を採用している(条件判断式中の「=
=」という記述は「=」によって示している)。ただ
し、本発明を実現する上でのプログラム(ソフトウェ
ア)の記述がC言語による記述に限定されるものでない
ことはいうまでもない。
【0026】図4〜図8は、本実施の形態、ひいては本
発明の画像拡大縮小方式のアルゴリズムを説明するため
の図である。
【0027】図9〜図11は、本実施の形態に係る画像
拡大縮小方式の具体的な動作を説明するための図であ
る。
【0028】次に、図1〜図11を参照して、上記のよ
うに構成された本実施の形態に係る画像拡大縮小方式の
全体の動作について詳細に説明する。
【0029】初めに、図4〜図6を参照して、本実施の
形態、ひいては本発明の画像拡大縮小方式で採用される
アルゴリズムの基本的な考え方を説明する。
【0030】なお、本発明における画像拡大縮小アルゴ
リズムは、水平方向の処理と垂直方向の処理とについて
同等の考え方であるため、ここでは水平方向についての
説明のみを行う。すなわち、簡単のために、入力画像縦
幅および出力画像縦幅が1の場合について説明する。
【0031】図4に示すように、入力画像に対する出力
画像の水平方向の倍率は、出力画像横幅をXOutと
し、入力画像横幅をXとすると「XOut/X」とな
る。
【0032】まず、図4中の(a)に示すように、出力
画像が入力画像よりも大きい場合の処理、すなわち画像
拡大処理におけるアルゴリズムの基本的な考え方につい
て説明する。
【0033】図4中の(a)を参照すると、以下の式が
成立する(R<Xであり、XOut,n,Xは正整数で
あり、Rは自然数である)。 XOut = n×X−R
【0034】本アルゴリズムの基本となる考え方に則る
と、まず、出力画素を基準位置(ここでは、左端)から
n個ずつグループ化する。その際に、図4中のR部分が
存在する場合には、重複点(2つのグループに属する画
素)がR個存在するように設定する。ここで、R個の重
複点の位置(左端の位置を「1」とするときの位置)
は、αがα=1,…,Rに該当する正整数とするとき
に、「(n−1)×α+1」という式で表現することが
できる。
【0035】その上で、重複点以外の出力画素値を入力
画素値の複写処理によって算出し、重複点の出力画素値
は隣接する入力画素値の連続偏重平均処理(実際の処理
としては、既に算出されている出力画素値と入力画素値
との和に対するビットシフト処理により実現される)に
よって算出する。なお、連続偏重平均処理においても、
処理対象の最初の入力画像については、当該入力画素値
を出力画素値に複写する複写処理が行われる。
【0036】例えば、X=2,XOut=5,n=3,
R=1の場合には図5中の「例1」に示すようになり、
X=3,XOut=7,n=3,R=2の場合には図5
中の「例2」に示すようになり、X=3,XOut=
8,n=3,R=1の場合には図5中の「例3」に示す
ようになる。
【0037】なお、「(XOut/m) = n×(X
/m)−(R/m)」において、m,(XOut/
m),(X/m),(R/m)が正整数となるmが存在
する場合(mが複数存在する場合にはそれらの中の最大
値をmとして採用する)には、重複点の位置は、βがβ
=0,…,(m−1)に該当する自然数とし、γがγ=
1,…,(R/m)に該当する正整数とするときに、
「β×(XOut/m)+(n−1)×γ+1」という
式で表現することができる(当該式で、m=1の場合
が、先に述べた「(n−1)×α+1」という式に該当
する)。
【0038】例えば、X=4,XOut=6,n=2,
R=2,m=2の場合には、図5中の「例4」に示すよ
うになる。
【0039】次に、図4中の(b)を参照して、出力画
像が入力画像よりも小さい場合の処理、すなわち画像縮
小処理におけるアルゴリズムの基本的な考え方について
説明する。
【0040】図4中の(b)を参照すると、以下の式が
成立する(S<XOutであり、X,n,XOutは正
整数であり、Sは自然数である)。 X = n×XOut−S
【0041】本アルゴリズムの基本となる考え方に則る
と、まず、入力画素を基準位置(ここでは、左端)から
n個ずつグループ化する。その際に、図4中のS部分が
存在する場合には、重複点(2つのグループに属する画
素)がS個存在するように設定する。ここで、S個の重
複点の位置(左端の位置を「1」とするときの位置)
は、αがα=1,…,Sに該当する正整数とするとき
に、「(n−1)×α+1」という式で表現することが
できる。
【0042】その上で、グループ化したn個の入力画素
値に対する連続偏重平均処理(実際の処理としては、既
に算出されている出力画素値と入力画素値との和に対す
るビットシフト処理により実現される)によって、各グ
ループに対する出力画素値を算出する。ここで、上記の
連続偏重平均処理において、処理対象の最初の入力画素
値については、当該入力画素値を出力画素値に複写する
複写処理が行われる。したがって、縮小処理において
も、先に述べた拡大処理と同様の処理が行われることに
なる。
【0043】なお、「(X/m) = n×(XOut
/m)−(S/m)」において、m,(X/m),(X
Out/m),(S/m)が正整数となるmが存在する
場合(mが複数存在する場合にはそれらの中の最大値を
mとして採用する)には、重複点の位置は、βがβ=
0,…,m−1に該当する自然数とし、γがγ=1,
…,(S/m)に該当する正整数とするときに、「β×
(X/m)+(n−1)×γ+1」という式で表現する
ことができる(当該式で、m=1の場合が、先に述べた
「(n−1)×α+1」という式に該当する)。
【0044】例えば、X=5,XOut=2,n=3,
S=1の場合には図6中の「例5」に示すようになり、
X=7,XOut=3,n=3,S=2の場合には図6
中の「例6」に示すようになり、X=8,XOut=
3,n=3,S=1の場合には図6中の「例7」に示す
ようになり(「例5」〜「例7」においてはm=1であ
る)、X=6,XOut=4,n=2,S=2,m=2
の場合には図6中の「例8」に示すようになる。
【0045】上記の画像拡大処理および画像縮小処理の
両者は、共に、画素値の複写処理,和算処理,およびビ
ットシフト処理だけによって成立するアルゴリズム(画
素値の除算を用いないアルゴリズム)を採用しており、
拡大と縮小とについて同一のアルゴリズムで行うことが
可能となる。したがって、処理速度を速くでき、拡大処
理と縮小処理とを区別することなく行うことが可能にな
る。
【0046】なお、入力画像縦幅および出力画像縦幅が
1でない場合の画像拡大処理および画像縮小処理の考え
方を具体的に示す図を、図7および図8に示す。
【0047】次に、図2および図3を参照して、本実施
の形態に係る画像拡大縮小方式の処理の流れ(画像拡大
縮小手段31の処理内容)について説明する。
【0048】データ処理装置30内の画像拡大縮小手段
31は、入力装置10から入力画像データを入力し、当
該入力画像データを記憶装置40内の入力画像データバ
ッファ領域41に格納し、各変数(垂直方向画素処理フ
ラグ,出力画素縦ポインタ,入力画素縦ポインタ,出力
画像縦幅カウンタ,水平方向画素処理フラグ,出力画素
横ポインタ,入力画素横ポインタ,および出力画像横幅
カウンタ)の存在を前提として、以下に示すような処理
を行う。
【0049】なお、入力画像データ中の入力画素や出力
画像データ中の出力画素を指し示すポインタの値(入力
(出力)画素横(縦)ポインタに設定される値)は、図
9に示すように右方向に進む順で、さらに下方向に進む
順で、1ずつ値が増加する昇順となる(基準位置(左
上)の値が図9に示すような「1」に限定されないこと
はいうまでもない)。
【0050】まず、各変数の初期化を行う(図2のステ
ップA1およびステップA2)。ここで、ステップA1
は処理全体の初期化であり、ステップA2は行単位の初
期化(ステップA3〜ステップA12に示す1行分の水
平方向の処理)に関する初期化である。
【0051】すなわち、垂直方向画素処理フラグ(YD
ataWriteFlag)に0を設定し、出力画素縦
ポインタ(YOutPointer)に出力画像の基準
位置(図9中の「1」の位置。ここでは、VRとする)
を設定し、入力画素縦ポインタ(YPointer)に
入力画像の基準位置(図9中の「1」の位置。ここで
は、Vとする)を設定し、出力画像縦幅カウンタ(YC
ounter)に出力画像縦幅(YOut)を設定する
(ステップA1)。
【0052】また、水平方向画素処理フラグ(XDat
aWriteFlag)にYDataWriteFla
gと同一の値の0を設定し、出力画素横ポインタ(XO
utPointer)にYOutPointerと同一
の値のVRを設定し、入力画素横ポインタ(XPoin
ter)にYPointerと同一の値のVを設定し、
出力画像横幅カウンタ(XCounter)に出力画像
横幅(XOut)を設定する(ステップA2)。
【0053】次に、「XDataWriteFlag=
0」であるか否かの判定を行う(ステップA3)。
【0054】ステップA3で「XDataWriteF
lag=0である」と判定した場合には、次に複写処理
を行うべきことを意味しているので、XPointer
で位置が特定される入力画素の画素値をXOutPoi
nterで位置が特定される出力画素の画素値にそのま
ま書き込み(複写し)、XDataWriteFlag
の値を1にする(ステップA4)。なお、初回の処理で
は、ステップA3の水平方向画素処理フラグの条件判断
では、必ず「XDataWriteFlag=0」とな
り、ステップA4の処理に進む。
【0055】一方、ステップA3で「XDataWri
teFlag=0でない(XDataWriteFla
g=1である)」と判定した場合には、次にビットシフ
ト処理を行うべきことを意味しているので、XOutP
ointerで位置が特定される出力画素について、当
該出力画素にその時点で格納されている画素値とXPo
interで位置が特定される入力画素の画素値との和
の平均をとるためのシフト処理を行う(ステップA
5)。これにより、結果として、複数の入力画素値の連
続偏重平均処理によって算出される値を当該出力画素値
とすることができる。
【0056】水平方向に処理が1画素ずつ進む毎(図2
の流れ図上でステップA3〜ステップA12のループ処
理が繰り返される毎)に、XCounterから入力画
像横幅(X)を減算していく(ステップA6)。なお、
縮小処理の際には、初回のステップA6の処理で、XC
ounterの値は必ず負の値になる。
【0057】その上で、ステップA6の減算後のXCo
unterの値による場合分け(負であるか0であるか
正であるかによる場合分け)を行う(ステップA7およ
びステップA8)。
【0058】ここで、画像拡大処理の場合には、上記の
場合分けに基づき、以下のa〜cに示すような処理を行
う。
【0059】a.XCounterが負になった場合に
は、図4中の(a)におけるR部分が発生したことにな
るので、XCounterの値を元に戻し(Xを加
え)、さらにXCounterにXOutを加える(ス
テップA9)。その際に、次回のステップA3〜ステッ
プA12のループ処理でステップA5におけるビットシ
フト処理を行わせるために、XDataWriteFl
agの値を1のままにしておく(XDataWrite
Flag=0とする処理を行わない)。
【0060】b.XCounterが0になった場合に
は、XCounterの値に再びXOutを加え、次の
入力画素および出力画素に関する処理に進む(XPoi
nterおよびXOutPointerに1を加算す
る)(ステップA10)。その際に、次回のステップA
3〜ステップA12のループ処理で次の入力画素値をそ
のまま次の出力画素値とするための処理(ステップA4
における複写処理)を行わせるように、XDataWr
iteFlagにYDataWriteFlagの値を
設定する。ここで、YDataWriteFlagの値
は、垂直方向に関するシフト処理の必要がない限りは、
ステップA1やステップA13の処理によって0となっ
ている。したがって、「XDataWriteFlag
にYDataWriteFlagの値を設定する」とい
う処理は、垂直方向に関するシフト処理の必要がない限
りは、「XDataWriteFlagに0を設定す
る」という処理に該当する(ステップA11についても
同様)。
【0061】c.XCounterが正になった場合に
は、次の出力画素に関する処理に進む(XOutPoi
nterに1を加算する)(ステップA11)。その際
に、次回のステップA3〜ステップA12のループ処理
で前回と同じ入力画素値をそのまま次の出力画素値とす
るための処理(ステップA4における複写処理)を行わ
せるように、XDataWriteFlagにYDat
aWriteFlagの値を設定する。
【0062】また、画像縮小処理の場合には、上記の場
合分けに基づき、以下のd〜fに示すような処理を行
う。
【0063】d.XCounterが負になった場合に
は、XCounterの値を元に戻し(Xを加え)、さ
らにXCounterにXOutを加える(ステップA
9)。その際に、次回のステップA3〜ステップA12
のループ処理でステップA5におけるビットシフト処理
を行わせるために、XDataWriteFlagの値
を1のままにしておく(XDataWriteFlag
=0とする処理を行わない)。このようにして、XCo
unterの値が0または正の値になるまで、隣接する
入力画素群(図6に示すようなグループ化された入力画
素群)の各画素について順次その画素値と出力画素値
(XOutPointerで位置が特定される出力画素
の画素値)との平均を取るためのビットシフト処理を行
い、連続偏重平均処理による当該出力画素値の算出を実
現する。
【0064】e.XCounterが0になった場合に
は、XCounterの値に再びXOutを加え、次の
入力画素および出力画素に関する処理に進む(XPoi
nterおよびXOutPointerに1を加算す
る)(ステップA10)。その際に、次回のステップA
3〜ステップA12のループ処理で次の入力画素値をそ
のまま次の出力画素値とするための処理(ステップA4
における複写処理)を行わせるように、XDataWr
iteFlagにYDataWriteFlagの値を
設定する。ここで、YDataWriteFlagの値
は、垂直方向に関するシフト処理の必要がない限りは、
ステップA1やステップA13の処理によって0となっ
ている。したがって、「XDataWriteFlag
にYDataWriteFlagの値を設定する」とい
う処理は、垂直方向に関するシフト処理の必要がない限
りは、「XDataWriteFlagに0を設定する
処理」に該当する(ステップA11についても同様)。
【0065】f.XCounterが正になった場合に
は、図4中の(b)においてXOutのn倍がXを超え
たことを意味する(図4中の(b)におけるS部分が発
生していることになる)ので、前回と同じ入力画素につ
いて次の出力画素に関する処理に進む(次の出力画素の
画素値として前回も処理対象であった入力画素の画素値
を複写し、それ以降に続く入力画素については、当該出
力画素値の算出に関する連続偏重平均処理の対象とす
る)(ステップA11)。その際に、次回のステップA
3〜ステップA12のループ処理で前回と同じ入力画素
値をそのまま次の出力画素値とするための処理(ステッ
プA4における複写処理)を行わせるように、XDat
aWriteFlagにYDataWriteFlag
の値を設定する。
【0066】ステップA9〜ステップA11における各
場合分けの処理が終了した後に、「XOutPoint
er<(YOutPointer+XOut)」に該当
するか否かの判定により、ある行について処理対象の出
力画素の位置が出力画像横幅(XOut)の範囲内であ
るか否かを判定する(ステップA12)。
【0067】ステップA12で「XOutPointe
r<(YOutPointer+XOut)に該当す
る」と判定した場合には、出力画像における現在処理中
の行についてまだ水平方向の処理が完了していないと判
断し、ステップA3に戻り、ステップA3〜ステップA
12の処理および判定を繰り返す。
【0068】一方、ステップA12で「XOutPoi
nter<(YOutPointer+XOut)に該
当しない」と判定した場合には、ステップA13(図3
参照)に進み、垂直方向の処理に移る。
【0069】すなわち、YDataWriteFlag
に0を設定し、XDataWriteFlagから入力
画像縦幅(Y)を減算した上で(図3のステップA1
3)、YCounterの値による場合分け(負である
か0であるか正であるかによる場合分け)を行う(ステ
ップA14およびステップA15)。
【0070】この場合分けに基づく処理の考え方は、垂
直方向の処理も水平方向の処理と同等の考え方である。
ただし、ステップA16〜ステップA18の処理はステ
ップA9〜ステップA11の処理と比べて以下のaおよ
びbに示すような特異性を有する。
【0071】a.ステップA9〜ステップA11におけ
るポインタの値の増加は画素を水平方向に1つ進めるた
めに「XPointer++」や「XOutPoint
er++」のように1ずつ増加させているが、ステップ
A16〜ステップA18におけるポインタの値の増加は
画素を垂直方向に1つ進めるために「YPointer
+=X」や「YOutPointer+=XOut」の
ように1行分ずつ増加させている。
【0072】b.画素処理フラグの変更制御に関して、
水平方向の処理では、ステップA10およびステップA
11で「XDataWriteFlag=YDataW
riteFlag」の設定が行われ、ステップA9では
XDataWriteFlagの値の変更が行われてい
ない。これに対して、垂直方向の処理では、ステップA
13で「YDataWriteFlag=0」の設定が
行われているので、ステップA16で「YDataWr
iteFlag=1」の設定が行われ、ステップA17
およびステップA18ではYDataWriteFla
gの値の変更が行われない。
【0073】このような処理(YCounterの値に
よる場合分けに基づく処理)の結果、YDataWri
teFlagの値が変化して1になった場合には、水平
方向の処理ステップであるステップA2,ステップA1
0,およびステップA11において、XDataWri
teFlagが1となるため、ステップA3の判定を経
てステップA5のビットシフト処理が行われることとな
る。
【0074】画像拡大縮小手段31は、以上のようにし
て処理を続け、全ての入力画素および出力画素について
処理が終了したか否かを、「YOutPointer<
(VR+(XOut*YOut))」(「XOut*Y
Out」はXOutとYOutとの積を示す)に該当し
なくなったかどうかによって判定し(ステップA1
9)、「YOutPointer<(VR+(XOut
*YOut))に該当しなくなった」と判定した場合に
は全体の処理を終了する。
【0075】最後に、上記のような動作の具体例とし
て、従来技術に関する図13および図14に示す態様と
対応させて、本実施の形態における拡大縮小処理の態様
(処理結果の出力画素値例等)を、図10および図11
に示す。
【0076】ここで、図10は、従来技術に関する図1
3と対比させて、画像拡大処理時の態様を示す図であ
る。
【0077】また、図11は、従来技術に関する図14
と対比させて、画像縮小処理時の態様を示す図である。
【0078】(2) 第2の実施の形態
【0079】次に、本発明の第2の実施の形態に係る画
像拡大縮小方法について説明する。
【0080】本実施の形態に係る画像拡大縮小方法は、
入力画像の基準位置をVで表し、出力画像の基準位置を
VRで表し、水平方向画素処理フラグをXDataWr
iteFlagで表し、垂直方向画素処理フラグをYD
ataWriteFlagで表し、出力画像横幅カウン
タをXCounterで表し、出力画像縦幅カウンタを
YCounterで表し、出力画素横ポインタをXOu
tPointerで表し、出力画素縦ポインタをYOu
tPointerで表し、入力画素横ポインタをXPo
interで表し、入力画素縦ポインタをYPoint
erで表し、出力画像横幅をXOutで表し、出力画像
縦幅をYOutで表し、入力画像横幅をXで表し、入力
画像縦幅をYで表し、C言語による記述方法を採用した
場合に、「YDataWriteFlag=0」,「Y
OutPointer=VR」,「YPointer=
V」,および「YCounter=YOut」という処
理を行う第1のステップと、前記第1のステップの処理
後および第19のステップで「YES」と判定した場合
に、「XOutPointer=YOutPointe
r」,「XPointer=YPointer」,「X
DataWriteFlag=YDataWriteF
lag」,および「XCounter=XOut」とい
う処理を行う第2のステップと、前記第2のステップの
処理後および第12のステップで「YES」と判定した
場合に、「XDataWriteFlag=0」である
か否かの判定を行う第3のステップと、前記第3のステ
ップで「YES」と判定した場合に、「*XOutPo
inter=*XPointer」および「XData
WriteFlag=1」という処理を行う第4のステ
ップと、前記第3のステップで「NO」と判定した場合
に、「*XOutPointer=(*XOutPoi
nter+*XPointer)>>1」という処理を
行う第5のステップと、前記第4のステップの処理後お
よび前記第5のステップの処理後に、「XCounte
r−=X」という処理を行う第6のステップと、前記第
6のステップの処理後に、「XCounter<0」で
あるか否かの判定を行う第7のステップと、前記第7の
ステップで「NO」と判定した場合に、「XCount
er=0」であるか否かの判定を行う第8のステップ
と、前記第7のステップで「YES」と判定した場合
に、「XCounter+=X」,「XCounter
+=XOut」,および「XPointer++」とい
う処理を行う第9のステップと、前記第8のステップで
「YES」と判定した場合に、「XCounter+=
XOut」,「XOutPointer++」,「XD
ataWriteFlag=YDataWriteFl
ag」,および「XPointer++」という処理を
行う第10のステップと、前記第8のステップで「N
O」と判定した場合に、「XOutPointer+
+」,および「XDataWriteFlag=YDa
taWriteFlag」という処理を行う第11のス
テップと、前記第9のステップの処理後,前記第10の
ステップの処理後,および前記第11のステップの処理
後に、「XOutPointer<(YOutPoin
ter+XOut)」であるか否かの判定を行う前記第
12のステップと、前記第12のステップで「NO」と
判定した場合に、「YDataWriteFlag=
0」および「YCounter−=Y」という処理を行
う第13のステップと、前記第13のステップの処理後
に、「YCounter<0」であるか否かの判定を行
う第14のステップと、前記第14のステップで「N
O」と判定した場合に、「YCounter=0」であ
るか否かの判定を行う第15のステップと、前記第14
のステップで「YES」と判定した場合に、「YDat
aWriteFlag=1」,「YCounter+=
Y」,「YCounter+=YOut」,および「Y
Pointer+=X」という処理を行う第16のステ
ップと、前記第15のステップで「YES」と判定した
場合に、「YCounter+=YOut」,「YOu
tPointer+=XOut」,および「YPoin
ter+=X」という処理を行う第17のステップと、
前記第15のステップで「NO」と判定した場合に、
「YOutPointer+=XOut」という処理を
行う第18のステップと、前記第16のステップの処理
後,前記第17のステップの処理後,および前記第18
のステップの処理後に、「YOutPointer<
(VR+(XOut*YOut))」であるか否かの判
定を行い、「NO」と判定した場合には全体の処理を終
了させる前記第19のステップとからなる。
【0081】ここで、先に述べた図2および図3は、本
発明の第2の実施の形態に係る画像拡大縮小方法の処理
手順を示す流れ図にも該当する。
【0082】この場合に、上記の第1のステップ〜第1
2のステップは図2中のステップA1〜ステップA12
に該当し、第13のステップ〜第19のステップは図3
中のステップA13〜ステップA19に該当する。
【0083】なお、本実施の形態に係る画像拡大縮小方
法の動作は、上記の第1の実施の形態に係る画像拡大縮
小方式の説明で述べた図2および図3に示す動作(処
理)の内容と同様のものになる。
【0084】(3) 第3の実施の形態
【0085】図12は、本発明の第3の実施の形態に係
る画像拡大縮小方式の構成を示すブロック図である。
【0086】図12を参照すると、本発明の第3の実施
の形態に係る画像拡大縮小方式は、図1に示した第1の
実施の形態に係る画像拡大縮小方式に対して、画像拡大
縮小処理プログラムを記録した記録媒体100を備える
点が異なっている。この記録媒体100は、磁気ディス
ク,半導体メモリ,その他の記録媒体であってよい。
【0087】画像拡大縮小処理プログラムは、記録媒体
100からデータ処理装置30に読み込まれ、当該デー
タ処理装置30の動作を画像拡大縮小手段31として制
御する。画像拡大縮小処理プログラムの制御による画像
拡大縮小手段31の動作は、第1の実施の形態における
画像拡大縮小手段31の動作(図2および図3に示す流
れ図に示す処理)と全く同様になるので、その詳しい説
明を割愛する。
【0088】
【発明の効果】以上説明したように、本発明では、以下
に示すような効果が生じる。
【0089】第1の効果は、同一ルーチンで拡大処理と
縮小処理との両者を記述でき、コードサイズを小さくす
ることができることにある。このような効果が生じる理
由は、縮小処理も拡大処理と同等のアルゴリズムの演算
で実現できるためである。
【0090】第2の効果は、自由な倍率(水平方向と垂
直方向とで異なる倍率となることを含む)の拡大縮小処
理(相似的な拡大縮小はもとより、縦横比の異なった拡
大縮小を含む拡大縮小処理)を容易かつ高速に処理でき
ることにある。このような効果が生じる理由は、画像縮
小処理において対象の画素の全ての平均をとるための除
算を使用する必要がないからである。
【0091】第3の効果は、記憶装置における拡大縮小
処理のためのメモリ容量の必要量を削減できることにあ
る。このような効果が生じる理由は、演算が簡易である
ため等に基づき、わずかなメモリがあれば、画像データ
の拡大縮小に関する演算を行うことができるためであ
る。
【0092】第4の効果は、上記のような効果を挙げつ
つ、かつモアレの除去ができること(画像縮小時におけ
るモアレ縞の発生を低減できること)にある。このよう
な効果が生じる理由は、画像縮小時や画像拡大時におけ
る繋ぎ目において、隣接する画素値の連続偏重平均処理
が行われているためである。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係る画像拡大縮小
方式の構成を示すブロック図である。
【図2】図1に示す画像拡大縮小方式の処理を示す流れ
図であり、本発明の第2の実施の形態に係る画像拡大縮
小方法の処理手順を示す流れ図でもある。
【図3】図1に示す画像拡大縮小方式の処理を示す流れ
図であり、本発明の第2の実施の形態に係る画像拡大縮
小方法の処理手順を示す流れ図でもある。
【図4】本発明の画像拡大縮小方式で採用されるアルゴ
リズムの考え方を説明するための図である。
【図5】本発明の画像拡大縮小方式で採用されるアルゴ
リズムの考え方を説明するための図である。
【図6】本発明の画像拡大縮小方式で採用されるアルゴ
リズムの考え方を説明するための図である。
【図7】本発明の画像拡大縮小方式で採用されるアルゴ
リズムの考え方を説明するための図である。
【図8】本発明の画像拡大縮小方式で採用されるアルゴ
リズムの考え方を説明するための図である。
【図9】図1に示す画像拡大縮小方式の具体的な動作を
説明するための図である。
【図10】図1に示す画像拡大縮小方式の具体的な動作
を説明するための図である。
【図11】図1に示す画像拡大縮小方式の具体的な動作
を説明するための図である。
【図12】本発明の第3の実施の形態に係る画像拡大縮
小方式の構成を示すブロック図である。
【図13】従来の画像拡大縮小方式の動作を説明するた
めの図である。
【図14】従来の画像拡大縮小方式の動作を説明するた
めの図である。
【符号の説明】
10 入力装置 20 出力装置 30 データ処理装置 31 画像拡大縮小手段 40 記憶装置 41 入力画像データバッファ領域 42 出力画像データバッファ領域 100 記録媒体 A1 初期設定ステップ A2 水平方向初期設定ステップ A3 水平方向画素処理フラグ判定ステップ A4 画素値複写ステップ A5 画素値ビットシフトステップ A6 出力画像横幅カウンタ減算ステップ A7 第1出力画像横幅カウンタ判定ステップ A8 第2出力画像横幅カウンタ判定ステップ A9 「XCounter<0」時処理ステップ A10 「XCounter=0」時処理ステップ A11 「XCounter>0」時処理ステップ A12 垂直方向処理移行要否判定ステップ A13 垂直方向画素処理フラグ設定および出力画像縦
幅カウンタ減算ステップ A14 第1出力画像縦幅カウンタ判定ステップ A15 第2出力画像縦幅カウンタ判定ステップ A16 「YCounter<0」時処理ステップ A17 「YCounter=0」時処理ステップ A18 「YCounter>0」時処理ステップ A19 処理終了判定ステップ
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H04N 1/38 - 1/393

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】 画像の拡大および縮小を行う情報処理シ
    ステムにおいて、 Xという入力画像横幅およびYという入力画像縦幅を有
    する入力画像を示す入力画像データを入力する入力装置
    と、 出力画像データに基づいてXOutという出力画像横幅
    およびYOutという出力画像縦幅を有する出力画像を
    出力する出力装置と、 前記入力装置により入力された入力画像データを記憶す
    るための入力画像データバッファ領域と前記出力装置に
    送出される出力画像データを生成するための出力画像デ
    ータバッファ領域とを有する記憶装置と、 XOut/Xという水平方向の倍率とYOut/Yとい
    う垂直方向の倍率とに基づき、前記入力装置により入力
    された入力画像データ中の入力画素値を処理対象とし
    て、重複点以外の出力画素値については入力画素値を出
    力画素値に複写する処理である複写処理によって出力画
    素値を算出し、重複点の出力画素値については隣接画素
    群の連続した偏重的な平均値算出処理である連続偏重平
    均処理によって出力画素値を算出し、これらの算出処理
    によって前記出力装置に送出される出力画像データ中の
    出力画素値を算出し、拡大処理と縮小処理とを除算を用
    いない同一アルゴリズムの演算で実現して出力画像デー
    タを生成するデータ処理装置内の画像拡大縮小手段とを
    有することを特徴とする画像拡大縮小方式。
  2. 【請求項2】 記憶装置上に入力画像データバッファ領
    域を設けず、入力装置から入力画像データ中の画素値を
    直接的に入力することを特徴とする請求項1記載の画像
    拡大縮小方式。
  3. 【請求項3】 記憶装置上に出力画像データバッファ領
    域を設けず、出力装置において直接的に出力画像データ
    を生成することを特徴とする請求項1または請求項2記
    載の画像拡大縮小方式。
  4. 【請求項4】 入力画像の基準位置をVで表し、出力画
    像の基準位置をVRで表し、水平方向画素処理フラグを
    XDataWriteFlagで表し、垂直方向画素処
    理フラグをYDataWriteFlagで表し、出力
    画像横幅カウンタをXCounterで表し、出力画像
    縦幅カウンタをYCounterで表し、出力画素横ポ
    インタをXOutPointerで表し、出力画素縦ポ
    インタをYOutPointerで表し、入力画素横ポ
    インタをXPointerで表し、入力画素縦ポインタ
    をYPointerで表し、出力画像横幅をXOutで
    表し、出力画像縦幅をYOutで表し、入力画像横幅を
    Xで表し、入力画像縦幅をYで表し、C言語による記述
    方法を採用した場合に、「YDataWriteFla
    g=0」,「YOutPointer=VR」,「YP
    ointer=V」,および「YCounter=YO
    ut」という処理を行う第1のステップと、前記第1の
    ステップの処理後および第19のステップで「YES」
    と判定した場合に、「XOutPointer=YOu
    tPointer」,「XPointer=YPoin
    ter」,「XDataWriteFlag=YDat
    aWriteFlag」,および「XCounter=
    XOut」という処理を行う第2のステップと、前記第
    2のステップの処理後および第12のステップで「YE
    S」と判定した場合に、「XDataWriteFla
    g=0」であるか否かの判定を行う第3のステップと、
    前記第3のステップで「YES」と判定した場合に、
    「*XOutPointer=*XPointer」お
    よび「XDataWriteFlag=1」という処理
    を行う第4のステップと、前記第3のステップで「N
    O」と判定した場合に、「*XOutPointer=
    (*XOutPointer+*XPointer)>
    >1」という処理を行う第5のステップと、前記第4の
    ステップの処理後および前記第5のステップの処理後
    に、「XCounter−=X」という処理を行う第6
    のステップと、前記第6のステップの処理後に、「XC
    ounter<0」であるか否かの判定を行う第7のス
    テップと、前記第7のステップで「NO」と判定した場
    合に、「XCounter=0」であるか否かの判定を
    行う第8のステップと、前記第7のステップで「YE
    S」と判定した場合に、「XCounter+=X」,
    「XCounter+=XOut」,および「XPoi
    nter++」という処理を行う第9のステップと、前
    記第8のステップで「YES」と判定した場合に、「X
    Counter+=XOut」,「XOutPoint
    er++」,「XDataWriteFlag=YDa
    taWriteFlag」,および「XPointer
    ++」という処理を行う第10のステップと、前記第8
    のステップで「NO」と判定した場合に、「XOutP
    ointer++」,および「XDataWriteF
    lag=YDataWriteFlag」という処理を
    行う第11のステップと、前記第9のステップの処理
    後,前記第10のステップの処理後,および前記第11
    のステップの処理後に、「XOutPointer<
    (YOutPointer+XOut)」であるか否か
    の判定を行う前記第12のステップと、前記第12のス
    テップで「NO」と判定した場合に、「YDataWr
    iteFlag=0」および「YCounter−=
    Y」という処理を行う第13のステップと、前記第13
    のステップの処理後に、「YCounter<0」であ
    るか否かの判定を行う第14のステップと、前記第14
    のステップで「NO」と判定した場合に、「YCoun
    ter=0」であるか否かの判定を行う第15のステッ
    プと、前記第14のステップで「YES」と判定した場
    合に、「YDataWriteFlag=1」,「YC
    ounter+=Y」,「YCounter+=YOu
    t」,および「YPointer+=X」という処理を
    行う第16のステップと、前記第15のステップで「Y
    ES」と判定した場合に、「YCounter+=YO
    ut」,「YOutPointer+=XOut」,お
    よび「YPointer+=X」という処理を行う第1
    7のステップと、前記第15のステップで「NO」と判
    定した場合に、「YOutPointer+=XOu
    t」という処理を行う第18のステップと、前記第16
    のステップの処理後,前記第17のステップの処理後,
    および前記第18のステップの処理後に、「YOutP
    ointer<(VR+(XOut*YOut))」で
    あるか否かの判定を行い、「NO」と判定した場合には
    全体の処理を終了させる前記第19のステップとを有す
    ることを特徴とする画像拡大縮小方法。
  5. 【請求項5】 請求項4記載の画像拡大縮小方法のアル
    ゴリズムによって画像拡大縮小処理を行う画像拡大縮小
    手段を有することを特徴とする請求項1,請求項2,ま
    たは請求項3記載の画像拡大縮小方式。
  6. 【請求項6】 画像の拡大および縮小を行う情報処理シ
    ステムにおいて、Xという入力画像横幅およびYという
    入力画像縦幅を有する入力画像を示す入力画像データを
    入力する入力装置と、出力画像データに基づいてXOu
    tという出力画像横幅およびYOutという出力画像縦
    幅を有する出力画像を出力する出力装置とが存在するこ
    とを前提として、データ処理装置を、XOut/Xとい
    う水平方向の倍率とYOut/Yという垂直方向の倍率
    とに基づき、前記入力装置により入力された入力画像デ
    ータ中の入力画素値を処理対象として、重複点以外の出
    力画素値については入力画素値を出力画素値に複写する
    処理である複写処理によって出力画素値を算出し、重複
    点の出力画素値については隣接画素群の連続した偏重的
    な平均値算出処理である連続偏重平均処理によって出力
    画素値を算出し、これらの算出処理によって前記出力装
    置に送出される出力画像データ中の出力画素値を算出
    し、拡大処理と縮小処理とを除算を用いない同一アルゴ
    リズムの演算で実現して出力画像データを生成する画像
    拡大縮小手段として機能させるためのプログラムを記録
    した記録媒体。
  7. 【請求項7】 画像拡大縮小手段が請求項4記載の画像
    拡大縮小方法のアルゴリズムによって画像拡大縮小処理
    を行うことを特徴とする請求項6記載の記録媒体。
JP2000323117A 2000-10-23 2000-10-23 画像拡大縮小方式 Expired - Fee Related JP3522211B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000323117A JP3522211B2 (ja) 2000-10-23 2000-10-23 画像拡大縮小方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000323117A JP3522211B2 (ja) 2000-10-23 2000-10-23 画像拡大縮小方式

Publications (2)

Publication Number Publication Date
JP2002135573A JP2002135573A (ja) 2002-05-10
JP3522211B2 true JP3522211B2 (ja) 2004-04-26

Family

ID=18800861

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000323117A Expired - Fee Related JP3522211B2 (ja) 2000-10-23 2000-10-23 画像拡大縮小方式

Country Status (1)

Country Link
JP (1) JP3522211B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100594073B1 (ko) * 2002-09-17 2006-07-03 삼성전자주식회사 내장형 시스템의 디지털 영상 스케일링방법

Also Published As

Publication number Publication date
JP2002135573A (ja) 2002-05-10

Similar Documents

Publication Publication Date Title
US5793379A (en) Method and apparatus for scaling images having a plurality of scan lines of pixel data
JP3276886B2 (ja) 拡大宛先画像のピクセル値の生成方法
US6035075A (en) Image deforming method and apparatus
US7043091B2 (en) Method and apparatus for increasing spatial resolution of an image
US6360029B1 (en) Method and apparatus for variable magnification of an image
KR100594073B1 (ko) 내장형 시스템의 디지털 영상 스케일링방법
JP3466661B2 (ja) 画像処理装置及びその方法
JPS6380375A (ja) テクスチヤマツピング装置
US5649082A (en) Efficient method and apparatus for determining texture coordinates for lines and polygons
US5263135A (en) Image processing apparatus
US5491769A (en) Method and apparatus for variable minification of an image
US6741759B2 (en) Method and apparatus for interpolation
EP0574245A2 (en) Method and apparatus for variable expansion and variable shrinkage of an image
JP3522211B2 (ja) 画像拡大縮小方式
JP3394551B2 (ja) 画像変換処理方法及び画像変換処理装置
NL8501413A (nl) Weergave-interpolator.
US6670965B1 (en) Single-pass warping engine
US6211885B1 (en) Apparatus for outputting an image in which data of points on texture pattern are mapped to data of dots on display plane
JP3110041B2 (ja) 画像情報処理装置
JP3332511B2 (ja) 画像データ処理方法及び装置及びグラフィックシステム
JPS6188374A (ja) 画像デ−タ回転処理装置
EP0339758B1 (en) Image processing apparatus for performing projective transformations
JPH06124189A (ja) 画像表示装置および画像表示制御方法
JP2001013934A (ja) 記憶装置制御手段、制御方法及び処理装置
JP2803576B2 (ja) 画像処理装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040203

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090220

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100220

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100220

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110220

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120220

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120220

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130220

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130220

Year of fee payment: 9

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

Year of fee payment: 9

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

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20140220

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees