JPH07200806A - 画像変形方法およびその装置 - Google Patents

画像変形方法およびその装置

Info

Publication number
JPH07200806A
JPH07200806A JP5350866A JP35086693A JPH07200806A JP H07200806 A JPH07200806 A JP H07200806A JP 5350866 A JP5350866 A JP 5350866A JP 35086693 A JP35086693 A JP 35086693A JP H07200806 A JPH07200806 A JP H07200806A
Authority
JP
Japan
Prior art keywords
dot
image data
data
line
lines
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.)
Abandoned
Application number
JP5350866A
Other languages
English (en)
Inventor
Tatsuya Iijima
達也 飯島
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP5350866A priority Critical patent/JPH07200806A/ja
Publication of JPH07200806A publication Critical patent/JPH07200806A/ja
Abandoned legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 ビット配列形式の画像データを、元の画像デ
ータのイメージを損わないように変形できる画像変形方
法およびその装置を提供する。 【構成】 まず、(a)に示す元画像データの中で変形
後に消滅させない部分として、顔の輪郭を形成するドッ
トの表示色(指定色)を予め設定する。次いで、元画像
データの20本の水平ラインの中から、縦方向に縮小す
べく、表示すべき14本の水平ラインを選択する。この
とき、選択されなかった水平ラインに指定色が含まれる
か否かを判別し、指定色が含まれる場合には、その前後
の表示すべき水平ラインに本来表示すべき色に代えて指
定色を表示させる。また、(b)に示す画像データの縦
方向の20ドット列の中から、横方向に縮小すべく、表
示すべき縦方向の14ドット列を選択する。そして、同
様に、選択されなかった横方向ドットに指定色C1が含
まれるか否かを判別して、同ラインの前後の表示すべき
ドットに反映する。この結果、元画像データのイメージ
を損わないように変形される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、画像変形に係わり、詳
しくはアニメーション、ゲーム等で用いられる、キャラ
クタデータ、背景データ等のドットで構成され、かつ各
ドット毎に表示色番号またはパレット番号を持つような
ビット配列形式の画像データを、元画像データのイメー
ジを壊すことなく変形する画像変形方法およびその装置
に関する。
【0002】
【従来の技術】従来、アニメーション、ゲーム等ではビ
ット配列形式の画像データを用いることが多く、この画
像データによりキャラクターや背景データを表示してい
る。そして、このビット配列形式の画像データはドット
で構成され、かつ各ドット毎に表示色番号あるいはパレ
ット番号を持つようになっている。
【0003】ここで、縦、横それぞれ20ピクセルから
構成される元画像データを、縦、横それぞれ14ピクセ
ルから構成される画像データに縮小する方法について説
明する。図10はビット配列形式の画像データの従来の
画像変形処理の原理を示す図である。図10(a)は、
ビット配列形式の元画像データ(この例では”顔”の
絵)を示す図である。図において、元画像データは、2
0×20ピクセルのドットデータから構成されており、
各ドットデータは、各ドット毎に表示色番号あるいはパ
レット番号を持っている。
【0004】次に、図10(b)は図10(a)に示す
元画像データを縦方向に縮小した画像データである。図
10(a)に示す元画像データの水平ライン数は20
本、図10(b)に示す縮小後の画像データの水平ライ
ン数は14本なので、縮小するには、元画像データの2
0本の水平ラインの中から、表示すべき14本の水平ラ
インを選択することになる。まず、元画像データの最初
の水平ライン(ライン[0])を無条件に選択するもの
とすると、その他の水平ラインの選択の方法は次のよう
になる。
【0005】まず、選択誤差(初期値0)eを決め、該
選択誤差eに誤差増分Δeを加え、これを新たな選択誤
差eとする。Δeは、(元の水平ライン数−1)/(縮
小後の水平ライン数−1)である。誤差増分Δeを加え
た新たな選択誤差eが、e≧1/2ならば、表示すべき
元画像データのライン番号を1つ進めると共に、選択誤
差eから[1]を引いて選択誤差を補正する。以降、e
<1/2の関係になるまで、表示すべきライン番号を順
次進め、選択誤差eを補正する動作を繰り返す。そし
て、e<1/2の関係になった時点のライン番号に対応
するラインを次に選択すべき水平ラインとする。
【0006】図10(a)においては、まず、ライン
[0]が無条件に選択される。この時点で、選択誤差e
は[0]、ライン番号は[0]になっている。また、誤
差増分Δeは、Δe=(20−1)/(14−1)=
1.46である。ここで、選択誤差e=0に、誤差増分
Δe=1.46を加えると、e=0+1.46=1.4
6≧1/2になるので、ライン番号を1つ進める(ライ
ン[1]になる)と共に、選択誤差eから[1]を引き
補正する(e=1.46−1=0.46<1/2)。こ
の時点で、選択誤差eが1/2より小さくなるので、次
に表示すべきラインとしてライン[1]が選択される。
【0007】同様に、ここまでの選択誤差e=0.46
に、誤差増分Δe=1.46を加えると(e=0.46
+1.46=1.92≧1/2)、1.92となり、1
/2以上になるので、ライン番号を1つ進める(ライン
[3]になる)と共に、さらに選択誤差eから[1]を
引き補正する(e=0.92−1=−0.08<1/
2)。この時点で、選択誤差が1/2より小さくなるの
で、次に表示すべきラインとしてライン[3]が選択さ
れる。
【0008】このように、選択誤差eに誤差増分Δeを
加え、その結果が1/2より大きいか小さいかによって
処理を選択するもので、選択誤差が1/2以上のときに
誤差を補正する。このようにすると、X座標を1ずつ変
えていったときに、少なくとも誤差増分Δeが[1]の
半分(1/2)より小さい場合にのみ、そのライン番号
のラインを選択するので、ライン毎の画像が滑らかにつ
ながることになる。
【0009】以上の計算を繰り返すことにより、表示す
べき14本の水平ライン(ライン[0]、[1]、
[3]、[4]、[6]、[7]、…)が選択される。
この方法はブレセンハム(Bresenham)のアルゴリズム
として、一般に知られている。そして、上述した処理に
よって選択された水平ラインにおけるドットを表示すれ
ば、図10(b)に示す縦方向に縮小された画像データ
が得られる。
【0010】次に、図10(b)の縦に縮小された画像
データを横方向に縮小する場合について説明する。図1
0(c)は図10(b)に示す画像データを横方向に縮
小した画像データである。図10(b)に示す画像デー
タの横方向は20ドット、縮小後の画像データの横方向
は14ドットであるので、図10(c)に示すような画
像データを得るには、図10(b)に示す画像データの
横方向の20ドット(縦列)の中から、表示すべき横方
向の14ドット(縦列)を選択することになる。図10
(b)に示す画像データの最初の縦方向のドット列(ド
ット[0])を無条件に選択するものとすると、その他
の縦方向のドット列の選択は、上述した水平ラインの選
択と全く同じ方法で求めることができる。
【0011】つまり、まず、選択誤差(初期値0)eを
決め、該選択誤差eに誤差増分Δeを加え、これを新た
な選択誤差eとする。Δeは、(元の横方向ドット数−
1)/(縮小後の横方向ドット数−1)である。誤差増
分Δeを加えた新たな選択誤差eが、e≧1/2なら
ば、表示すべき元画像データのドット番号を1つ進める
と共に、選択誤差eから[1]を引いて選択誤差を補正
するというように、選択誤差eが1/2より大きいか小
さいかによって、表示すべきドットを決めていけばよ
い。以上の計算を繰り返すことにより、表示すべき14
個のドット列(ドット[0]、[1]、[3]、
[4]、[6]、[7]、…)が選択される。そして、
上述した処理によって選択された縦方向におけるドット
列を表示すれば、図10(c)に示す横方向に縮小され
た画像データが得られる。
【0012】
【発明を解決するための課題】ところで、上述した従来
の画像変形方法では、アニメーション、ゲーム等で、キ
ャラクタまたは背景を縮小する場合、画像データを構成
する各ドットをすべて同等の扱いで縮小していたので、
縮小により、図10(b)および同図(c)に示すよう
に、キャラクタの輪郭線や、目、口等の少ないドット数
で構成されている部分、すなわちピクセル(12,
5)、(12,6)、(12,13)、および(12,
14)のドット、ならびに、ピクセル(8,2)、
(9,2)、(8,11)、および(9,11)のドッ
トが消滅してしまい、画像の輪郭線が消滅してしまうこ
とがあった。このため、縮小した結果が、元の画像デー
タのイメージからかけ離れたものなってしまい、元の画
像データのイメージを残した縮小画像を使いたい場合に
は、予めメモリに大小複数の画像データを持っておく方
法を取らざるを得なかった。
【0013】そこで、本発明は、ビット配列形式の画像
データを、元の画像データのイメージを損わないように
変形できる画像変形方法およびその装置を提供すること
を目的としている。
【0014】
【課題を解決するための手段】上記目的達成のため、請
求項1記載の発明による画像変形方法は、変形対象とな
るビット配列形式の元画像データの中で変形後に消滅さ
せない部分の表示色を少なくとも1つ予め設定し、前記
元画像データを変形する際、前記元画像データを複数の
ラインに分割し、前記複数のラインのうち、どのライン
を変形後の画像データとして用いるかを選択し、前記選
択されたラインを構成する複数のドットのうち、どのド
ットを変形後の画像データとして用いるかを選択し、前
記複数のラインのうち選択されなかったラインの中に、
前記消滅させない表示色を有するドットが含まれる場合
には、前記選択されたラインの対応するドットを前記消
滅させない表示色を有するドットに置き換えるととも
に、前記複数のドットのうち選択されなかったドットの
中に、前記消滅させない表示色を有するドットが含まれ
る場合には、前記選択されたドットを前記消滅させない
表示色を有するドットに置き換えて変形後の画像データ
を作成することを特徴とする。
【0015】また、好ましい態様として、例えば請求項
2記載のように、前記複数のラインのうち、どのライン
を変形後の画像データとして表示するかを選択する処理
は、変形前の前記元画像データのライン数、および変形
後の画像データのライン数に基づいて、変形前の画像デ
ータのラインを変形後の画像データのラインに順次指定
して配列したときの誤差を累算する処理と、この誤差が
所定値を超えるときには、現在指定されている元画像デ
ータのラインを1つずつ進めるとともに、前記累算され
た誤差から一定値を減算する動作を前記誤差が所定値以
下になるまで繰り返す処理と、前記誤差が所定値以下の
ときに、前記指定された元画像データのラインを変形後
の画像データのラインに転送して配置する処理とを有す
るようにしてもよい。例えば請求項3記載のように、前
記元画像データを複数のラインに分割し、前記複数のラ
インのうち、どのラインを変形後の画像データとして用
いるかを選択する際に、前記元画像データの上から検索
し、前記選択されなかったラインの中に、前記消滅させ
ない表示色を有するドットが含まれる場合には、前記選
択されたラインのうち、前記選択されなかったラインの
直下のラインの対応するドットを前記消滅させない表示
色を有するドットに置き換えて、変形後の画像データを
作成するようにしてもよい。
【0016】例えば請求項4記載のように、前記元画像
データを複数のラインに分割し、前記複数のラインのう
ち、どのラインを変形後の画像データとして用いるかを
選択する際に、前記元画像データの下から検索し、前記
選択されなかったラインの中に、前記消滅させない表示
色を有するドットが含まれる場合には、前記選択された
ラインのうち、前記選択されなかったラインの直上のラ
インの対応するドットを前記消滅させない表示色を有す
るドットに置き換えて、変形後の画像データを作成する
ようにしてもよい。例えば請求項5記載のように、前記
元画像データを複数のラインに分割し、前記複数のライ
ンのうち、どのラインを変形後の画像データとして用い
るかを選択する際に、前記元画像データの上下から検索
するようにしてもよい。例えば請求項6記載のように、
前記選択されたラインを構成する複数のドットのうち、
どのドットを変形後の画像データとして用いるかを選択
する際に、前記元画像データの左右から検索するように
してもよい。例えば請求項7記載のように、前記選択さ
れたラインを構成する複数のドットのうち、どのドット
を変形後の画像データとして用いるかを選択する際に、
前記元画像データの一方から検索するようにしてもよ
い。例えば請求項8記載のように、前記消滅させない表
示色は2つ以上の色であってもよい。例えば請求項9記
載のように、前記変形とは、縦方向または横方向へそれ
ぞれ任意の縮小率で縮小することであってもよい。例え
ば請求項10記載のように、前記消滅させない表示色は
ドットが有する表示色番号であってもよい。例えば請求
項11記載のように、前記消滅させない表示色はドット
が有するパレット番号であってもよい。
【0017】請求項12記載の発明による画像変形装置
は、変形対象となるビット配列形式の元画像データの中
で変形後に消滅させない部分の表示色を少なくとも1つ
予め設定する表示色設定手段と、前記元画像データを変
形する際、前記元画像データを複数のラインに分割する
ライン分割手段と、前記複数のラインのうち、どのライ
ンを変形後の画像データとして用いるかを選択するライ
ン選択手段と、前記選択されたラインを構成する複数の
ドットのうち、どのドットを変形後の画像データとして
用いるかを選択するドット選択手段と、前記複数のライ
ンのうち選択されなかったラインの中に、前記消滅させ
ない表示色を有するドットが含まれる場合には、前記選
択されたラインの対応するドットを前記消滅させない表
示色を有するドットに置き換えるとともに、前記複数の
ドットのうち選択されなかったドットの中に、前記消滅
させない表示色を有するドットが含まれる場合には、前
記選択されたドットを前記消滅させない表示色を有する
ドットに置き換えて、変形後の画像データを作成する変
形手段とを具備することを特徴とする。また、好ましい
態様として、例えば請求項13記載のように、前記変形
手段は、少なくとも、前記元画像データの処理対象とな
っているライン位置を指示する現在処理ライン番号と、
前記現在処理ライン番号によって指示されるラインのド
ットデータと、前記ドットデータのうち、現在処理対象
となっているドット位置を指示する現在処理ドット番号
と、前記ドット選択手段によって選択されたドットデー
タと、を格納する格納手段と、前記現在処理ドット番号
に対応するドットデータが前記消滅させない表示色であ
るか否かを判別する判別手段と、前記判別手段によって
前記ドットデータが前記消滅させない表示色であると判
別されたとき、前記格納手段に格納されたドットデータ
を、前記ドットデータに置き換える置換手段とを備える
ようにしてもよい。
【0018】例えば請求項14記載のように、前記元画
像データと、前記元画像データの変形程度を指示する変
形程度データと、前記消滅させない表示色を示す表示色
データとを記憶する記憶手段を、さらに有するようにし
てもよい。例えば請求項15記載のように、前記変形手
段に変形を指示する変形指示手段を備えるようにしても
よい。例えば請求項16記載のように、前記変形手段に
よって作成されたビット配列形式の変形後の画像データ
を、パレットデータにより実際に表示する色コードに変
換する変換手段を、さらに有するようにしてもよい。例
えば請求項17記載のように、前記変形手段によって作
成された変形後の画像データを表示する表示手段を、さ
らに有するようにしてもよい。
【0019】
【作用】本発明では、まず、変形対象となるビット配列
形式の元画像データの中で変形後に消滅させない部分の
表示色を少なくとも1つ予め設定しておき、次いで、元
画像データを複数のラインに分割する。そして、該複数
のラインのうち、どのラインを変形後の画像データとし
て用いるかを選択するとともに、該選択されたラインを
構成する複数のドットのうち、どのドットを変形後の画
像データとして用いるかを選択する。さらに、上記複数
のラインのうち選択されなかったラインの中に、消滅さ
せない表示色を有するドットが含まれる場合には、選択
されたラインの対応するドットを、消滅させない表示色
を有するドットに置き換える。また、上記複数のドット
のうち選択されなかったドットの中に、消滅させない表
示色を有するドットが含まれる場合には、選択されたド
ットを、消滅させない表示色を有するドットに置き換え
て、変形後の画像データを作成する。したがって、変形
対象の画像を形成する輪郭線や、少ないドット数で構成
されている部分等、縮小によって消滅させたくない部分
のドットが、変形後の画像データに反映されるため、全
く異なる全体の画像データを予め持つ必要がなくなり、
少ないメモリ容量で、ビット配列形式の画像データを、
元の画像データのイメージを損わないように変形でき
る。
【0020】
【実施例】以下、図面を参照して本発明の実施例につい
て説明する。本発明の原理説明 まず、本発明の原理から説明する。図1は画像変形方法
の原理を示す図である。図1(a)は従来と同様の変形
前の元画像データを示し、特にビット配列形式の画像デ
ータ(この例では”顔”の絵)を示す図である。該元画
像データは、20×20ピクセルのドットデータから構
成されており、各ドットデータは、各ドット毎に表示色
番号あるいはパレット番号を持っている。各ピクセル
は、X座標とY座標とによって(y,x)の形式で表わ
される。例えば、図示の左上角のピクセルは(0,0)
で表わされ、その右隣のピクセルは(0,1)で表わさ
れ、右下角のピクセルは(19,19)で表わされる。
また、横方向に並ぶピクセル列はライン番号で表わさ
れ、図示の場合、最上行のピクセル列のライン番号は
[0]、次のピクセル列のライン番号は「1」、その下
のピクセル列のライン番号は[2]と、下に行くにつれ
て、順次[1]ずつ大きくなり、最下行のピクセル列の
ライン番号が[19]となっている。
【0021】また、図1(b)は、同図(a)に示す元
画像データを本発明の画像変形方法によって縦方向に縮
小した画像データを示す図である。本発明の画像変形方
法では、前述した従来の画像変形方法に見られた問題を
なくすために、顔の輪郭線の表示色番号またはパレット
番号を指定して(指定色C1)、選択されなかった水平
ラインまたは横方向ドットに上記指定色C1が含まれる
場合には、その前後の表示すべき水平ラインまたは縦方
向のドット列に、本来表示すべき色に代えて指定色C1
を表示させるようにしている。また、図1(c)は、同
図(b)の縦方向に縮小した画像データを、さらに横方
向に縮小した画像データを示す図である。
【0022】まず、図1(a)に示す縦20ピクセルか
ら構成される元画像データを、図1(b)に示す縦14
ピクセルの画像データに縮小する場合を例にとって説明
する。図1(a)に示す元画像データの水平ライン数は
ライン[0]〜[19]までの20本であり、縮小後の
画像データの水平ライン数は14本であるので、前述し
た説明と同様に、元画像データの20本の水平ラインの
中から、表示すべき14本の水平ラインを選択すること
になる。水平ラインの選択には、従来の変形処理と全く
同じ方法が使える。
【0023】まず、縮小した時に”顔”の輪郭線が消滅
しないように、”顔”の輪郭線部分のパレット番号を指
定色C1として設定する。図1では、顔の輪郭を形成し
ている■印で示すドットが指定色C1に相当する。次
に、従来の変形処理と全く同じ手法により表示すべき水
平ラインを順次選択し、図1(c)に示すような縦方向
に縮小した画像データを得る。このとき、指定色C1を
消滅させない本願発明の変形処理においては、選択され
なかった水平ラインに指定色C1が含まれるか否かを判
別し、指定色C1が含まれる場合には、その前後の表示
すべき水平ラインに本来表示すべき色に代えて指定色C
1を表示させる。すなわち、水平ラインの選択において
は、前述した処理により、14本のライン[0]、
[1]、[3]、[4]、[6]、[7]、…が選択さ
れ、それ以外のライン[2]、[5]、[8]、[1
1]、[14]、および[17]が選択されない。そこ
で、選択されず、本来表示されないライン[2]に含ま
れる指定色C1はライン[3]に反映され、以下、ライ
ン[5]はライン[6]に、ライン[8]はライン
[9]に、ライン[11]はライン[12]に、ライン
[14]はライン[15]に、ライン[17]はライン
[18]に反映される。
【0024】例えば、従来の変形処理のようにライン
[17]を反映しないと、図10(b)に示すように、
ピクセル(12、5)、(12、6)、(12、1
3)、(12、14)に表示されるであろう輪郭線が消
滅してしまう。しかし、本願発明のように、ライン[1
7]に含まれる指定色C1(図1(a)に示すピクセル
(17、5)、(17、6)、(17、13)、(1
7、14))をライン[18]に反映すれば、図1
(b)に示すようにピクセル(12、5)、(12、
6)、(12、13)、(12、14)にドットが表示
され、結果として”顔”の輪郭線が表示される。
【0025】次に、図1(b)に示す画像データを横方
向に縮小する場合について説明する。図1(b)に示す
画像データの横方向は20ドット、縮小後の画像データ
の横方向は14ドットなので、図1(b)の画像データ
の縦方向の20ドット列の中から、表示すべき縦方向の
14ドット列を選択することになる。このドット列の選
択には、従来の変形処理と全く同じ方法を用いればよ
い。
【0026】まず、縮小した時に”顔”の輪郭線が消滅
しないように、”顔”の輪郭線部分のパレット番号を指
定色C1として設定する。次に、従来の変形処理と全く
同じ手法により表示すべき縦方向のドット列を順次選択
し、図1(c)に示すような縦方向に縮小した画像デー
タを得る。このとき、指定色C1を消滅させない縮小処
理においては、選択されなかった横方向ドットに指定色
C1が含まれるか否かを判別して、同ラインの前後の表
示ドットに反映する。すなわち、縦方向のドット列の選
択においては、表示すべき縦方向の14列のドット列、
ドット[0]、[1]、[3]、[4]、[6]、
[7]、…が選択され、ドット[2]、[5]、
[8]、[11]、[14]、および[17]が選択さ
れない。そこで、選択されず、本来表示されないドット
[2]が指定色C1である時には、同ラインのドット
[3]に反映され、以下、ドット[5]はドット[6]
に、ドット[8]はドット[9]に、ドット[11]は
ドット[10]に、ドット[14]はドット[13]
に、ドット[17]はドット[16]に反映される。
【0027】例えば、図1(c)のように横方向に縮小
する場合、図1(b)に示すライン9を、従来の変形処
理のようにドット[2](図1(b)のピクセル(9、
2))を反映せずに縮小すると、図1(c)において、
ピクセル(9、2)に表示されるであろう輪郭線が消滅
してしまう。しかし、ドット[2]の指定色C1(図1
(b)のピクセル(9、2))を、ドット[3]に反映
すれば、図1(c)に示すように、ピクセル(9、2)
に輪郭線が表示される。このように、ビット配列形式の
画像データを、元画像データのイメージを損わないよう
に、縮小することができる。
【0028】次に、上記原理に基づく本発明の具体的な
実施例について説明する。画像変形装置の構成 図2は、本発明に係る画像変形方法を実現する画像変形
装置の一実施例の構成を示すブロック図である。図2に
おいて、画像位置決定装置は、大きく分けて、CPU3
1、入力操作子32、記憶装置33、画像信号発生回路
(Video Display Prosseser:以下VDPという)3
4、VRAM35およびTVディスプレイ36によって
構成される。CPU31は装置全体を制御するもので、
入力操作子32の縮小スイッチ(後述)が押されたこと
を検知し、その指令情報に対応すべく内部のメモリに格
納されている制御プログラムに基づいて、記憶装置33
に記憶されているビット配列形式の画像データを読み出
して、指定部分を消滅させない縮小処理を施して縮小し
た後、縮小後のビット配列形式の画像データをVDP3
4に出力する。また、CPU31は内部レジスタ(格納
手段)31aを有している。図3はCPU31の内部レ
ジスタ31aに記憶されるデータを説明するための図で
ある。図3において、内部レジスタ31aは、ラインバ
ッファ50、表示データレジスタ51、ラインバッファ
作成用レジスタ52、表示データ作成用レジスタ53、
およびフラグ54からなる。
【0029】上記ラインバッファ50は、縦方向に縮小
した時の1水平ライン分ドットデータを作成するために
用いられる。図示の例では、ピクセル(y,0)〜
(y,19)のドットデータが格納される。表示データ
レジスタ51は、ラインバッファ50を横方向に縮小す
るときに、表示すべき1ドット分のデータを作成するた
めに用いる画像データの左半分と右半分用との2つの表
示データ(左側表示データ、右側表示データ)を格納す
る。ラインバッファ作成用レジスタ52は、前述した水
平ラインを選択する際に用いられる、元画像データの現
在処理中のラインを示す現在処理ライン番号、元画像デ
ータの表示すべきラインを選択する時に用いるライン選
択誤差e1と、ライン選択誤差増分Δe1とを格納す
る。また、表示データ作成用レジスタ53は、画像デー
タの左半分における現在処理中のドットを示す現在処理
左側ドット番号と、画像データの右半分における現在処
理中のドットを示す現在処理右側ドット番号と、表示デ
ータを作成する時に用いるドット選択誤差e2と、ドッ
ト選択誤差増分Δe2とを格納する。上記ライン選択誤
差e1と、ライン選択誤差増分Δe1とは、画像データ
を縦方向に縮小する際に、どの水平ラインを選択するか
を決定するために用いられる。また、上記ドット選択誤
差e2と、ドット選択誤差増分Δe2とは、画像データ
を横方向に縮小する際に、どのドット列を選択するかを
決定するために用いられる。さらに、フラグ54は、表
示データを作成する時に表示データにデータが書かれて
いるか否かを示す表示データ上書きフラグと、ラインバ
ッファ50を作成する時にラインバッファにデータが書
かれているか否かを示すラインバッファ上書きフラグと
からなる。
【0030】入力操作子32は、オペレータによって操
作されるものであり、縮小処理を行わせるきっかけを与
えるための縮小スイッチ(変形指示手段)32aを有し
ている。なお、縮小スイッチ32aは、単独操作のプッ
シュスイッチでもよいし、あるいは複数のスイッチから
なるスイッチボード、キーボード等でもよい。また、入
力操作子32としてスイッチボード等の他に、マウス、
トラックボール等を用いてもよい。
【0031】記憶装置(記憶手段)33には、縮小の対
象となるビット配列形式の画像データ41、その縮小率
を表す縮小率データ42、消滅させないパレット番号を
示す指定色データ43(指定色C1)が記憶されてい
る。画像データ41は図1(a)に示す画像データであ
る。また、縮小率データ42は、変形対象となる画像デ
ータを縦横方向にどの程度縮小するかを示す縮小率であ
る。さらに、指定色データ43は、変形させたくない部
分の色を指定するものである。VDP(変換手段)34
はCPU31から与えられた変形前のビット配列形式の
画像データや変形後のビット配列形式の画像データを、
パレットデータ50により実際に表示する色コードに変
換してVRAM35に書き込む。VRAM35として
は、例えば半導体メモリが用いられ、表示する画像を1
画面単位で記憶する。VRAM35に書き込まれた画像
データはTVディスプレイ(表示手段)36によって表
示される。上記CPU31は変形手段、判別手段、置換
手段、ライン分割手段、ライン選択手段、ドット選択手
段を構成するとともに、さらに、表示色設定手段を構成
する。
【0032】次に、作用を説明する。メインプログラム 図4および図5は画像変形処理のメインプログラムを示
すフローチャートである。メインプログラムがスタート
すると、まずステップS10でキー情報取り込み処理を
行う。これは、入力操作子32における縮小スイッチ3
2a等のスイッチの操作情報を入力するものである。次
いで、ステップS12で縮小スイッチ32aが押された
か否かを判別し、押されていなければ、NOへ抜けて今
回のルーチンを終了し、次回のルーチンで再びステップ
S10を実行する。一方、縮小スイッチ32aが押され
ていると、ステップS12からYESへ抜けてステップ
S14以降のラインバッファ作成用レジスタ52の初期
設定処理へ進む。
【0033】ステップS14では、現在処理ライン番号
を[0]に初期設定する。次に、ステップS16でライ
ン選択誤差e1を[0]に初期設定する。さらに、ステ
ップS18において、ライン選択誤差増分Δe1を
[1.46(20×20ドットを14×14ドットに縮
小する場合)]に初期設定する。そして、ステップS2
0において、記憶装置33内にあるビット配列形式の元
画像データ41から、ライン[0]の1ライン分のドッ
トデータを読み出し、内部レジスタ31aのラインバッ
ファ50に格納するとともに、そのドットデータのう
ち、ドット[0]のドットデータを表示データレジスタ
51の左側表示データとして格納し、ドット[19]の
ドットデータを右側表示データとして格納する。
【0034】以下、ラインバッファに格納された1ライ
ン分の画像データを、横方向に縮小する処理である。ま
ず、ステップS22において、表示データ作成用レジス
タ53の現在処理左側ドット番号、現在処理右側ドット
番号をそれぞれ[0]、[19]に初期設定する。次
に、ステップS24で、表示データ作成用レジスタ53
のドット選択誤差e2を[0]に初期設定する。そし
て、ステップS26で、記憶装置33内の縮小率データ
42に従って、ドット選択誤差増分Δe2を[1.46
(20×20ドットを14×14ドットに縮小する場
合)]に初期設定する。次に、ステップS28で、ステ
ップS20で表示データレジスタ51に格納した左側表
示データと、右側表示データとをVDP34に出力す
る。この場合、初期設定において、左側表示データとし
てドット[0]のドットデータが格納され、右側表示デ
ータとしてドット[19]のドットデータが格納されて
いるため、VDP34には、ドット[0]、ドット[1
9]のドットデータが出力され、表示ディスプレイ(表
示手段)36に表示される。
【0035】ステップS28におけるVDP34へ左側
表示データおよび右側表示データの転送が終わると、ス
テップS30以降の処理で、ドット選択誤差e2を用い
て、次に表示すべきデータを作成する。まず、ステップ
S30において、内部レジスタ31a内のフラグ54に
おける表示データ上書きフラグを[0]にする。次に、
ステップS32へ進み、前述したように、表示データ作
成用レジスタ53内のドット選択誤差e2にドット選択
誤差増分Δe2を加える。そして、ステップS34で、
ドット選択誤差e2が1/2以上であるか否かを判別す
る。そして、ドット選択誤差e2が1/2以上であれ
ば、処理すべきドットでないと判断し、YESに抜けて
ステップS36へ進む。ステップS36では、ドット選
択誤差e2から[1]を減算して補正し、これを新たな
ライン選択誤差e2とする。次に、ステップS38にお
いて、現在処理左側ドット番号を[1]だけインクリメ
ントするとともに、現在処理右側ドット番号を[1]だ
けデクリメントする。したがって、この場合、現在処理
左側ドット番号は[1]となり、現在処理右側ドット番
号は[18]となる。
【0036】次に、ステップS40において、内部レジ
スタ31aのフラグ54における表示データ上書きフラ
グが[1]であるか否かを判別する。この場合、ステッ
プS30において、表示データ上書きフラグを[0]に
初期設定しているので、ステップS40からNOに抜け
てステップS42へ進む。ステップS42では、現在処
理左側ドット番号に相当するラインバッファ50内のド
ットデータを左側表示データとして、現在処理右側ドッ
ト番号に相当するラインバッファ50内のドットデータ
を右側表示データとして、表示データエリア51に格納
する。この場合、ステップS38で現在処理左側ドット
番号および現在処理右側ドット番号を更新しているの
で、左側表示データは、ライン[0]のドット[1(ピ
クセル(0,1))]となり、右側表示データは、ライ
ン[0]のドット[18(ピクセル(0,18)]とな
る。そして、ステップS44で、内部レジスタ31aの
表示データ上書きフラグを[1]とし、ステップS34
へ戻る。すなわち、表示データ上書きフラグが[0]で
あれば、表示データレジスタには未だデータが存在しな
いので、ラインバッファ50のドットデータから、更新
された現在処理左側ドット番号および現在処理右側ドッ
ト番号に相当するドットデータを読み取って表示データ
レジスタ51に格納し、表示データ上書きフラグを
[1]にする。
【0037】一方、ステップS40において、表示デー
タ上書きフラグが[1]であるときにはYESへ抜けて
ステップS46へ進む。ステップS46では、現在処理
左側ドット番号に相当するラインバッファ50内のドッ
トデータが指定色C1であれば、左側表示データに上書
きするとともに、現在処理右側ドット番号に相当するラ
インバッファ50内のドットデータが指定色C1であれ
ば、右側表示データに上書きする。さらに、表示データ
が指定色C1でなく、ラインバッファ50内のドットデ
ータも指定色C1でない場合にも上書きし、ステップS
34へ戻る。
【0038】このように、ドット選択誤差e2が1/2
より小さくなるまで、現在処理左側ドット番号を進める
とともに、現在処理右側ドット番号を戻しながら、ドッ
ト選択誤差e2を補正し、現在処理左側ドット番号、ま
たは、現在処理右側ドット番号に相当するラインバッフ
ァ50内のドットデータが指定色C1であれば、現在処
理左側ドット番号に対応するドットデータを左側表示デ
ータに上書きするとともに、現在処理右側ドット番号に
対応するドットデータを右側表示データに上書きする。
さらに、左側、右側表示データが指定色C1でなく、ラ
インバッファ50内のドットデータも指定色C1でない
場合にも上書きする。したがって、ドット選択誤差e2
が1/2より小さくなり、表示すべきドットを選択した
ときには、表示データレジスタ51には、前回表示した
ドットから現在処理対象となっているドットまでのデー
タのうち、指定色C1を優先したドットデータが格納さ
れていることになる。すなわち、指定色C1がある場合
には、左側表示データ、または右側表示データには、そ
の指定色C1が格納されている。一方、指定色C1が無
い場合には、左側表示データには現在左処理ドット番号
のドットデータが格納されており、また、右側表示デー
タには現在右側処理ドット番号のドットデータが格納さ
れている。
【0039】そして、ステップS34において、ドット
選択誤差e2が1/2より小さくなると、NOに抜けて
ステップS48へ進む。ステップS48では、ラインバ
ッファ50内の全てのドットデータを処理したか否かを
判別する。そして、未処理のドットデータがある場合に
はNOへ抜けてステップS28へ戻る。以下、ステップ
S28〜S46を繰り返し実行する。したがって、左側
表示データおよび右側表示データ、すなわち前回表示し
たドットから現在処理対象となっているドットデータま
でのうち、指定色C1がある場合にはその指定色C1の
ドットデータが表示ディスプレイ36に表示され、一
方、指定色C1が無い場合には、現在左処理ドット番号
および現在右側処理ドット番号によって指示される現在
処理対象となっているドットデータが表示ディスプレイ
36に表示される。以下、ラインバッファ50内の全て
のドットデータの処理が終了するまで、上述したよう
な、ラインバッファに格納された1ライン分の画像デー
タを、横方向に縮小する処理を繰り返す。
【0040】そして、ラインバッファ50内の全てのド
ットデータの処理が終了すると、ステップS48からN
Oへ抜けて、図5に示すステップ50へ進む。ステップ
S50以降では、次に処理すべきラインのドットデータ
を作成する。まず、ステップS50で、ラインバッファ
上書きフラグを[0]にする。次に、ステップS52に
おいて、前述したように、ライン選択誤差e1にライン
選択誤差増分Δe1を加える。そして、ステップS54
で、ライン選択誤差e1が1/2以上であるか否かを判
別する。ライン選択誤差e1が1/2以上である場合に
は、表示すべきラインではないので、YESに抜けてス
テップS56へ進む。ステップS56では、ライン選択
誤差e1から[1]を引いてライン選択誤差e1を補正
する。次に、ステップS58へ進み、ラインバッファ作
成用レジスタ52の現在処理ライン番号を[1]だけイ
ンクリメントする。したがって、現在処理ライン番号が
[0]である場合には、次に表示すべき元画像データの
ライン番号として[1]が設定される。
【0041】次に、ステップS60で、ラインバッファ
上書きフラグが[1]であるか否かを判別する。新たな
ラインに対しての処理のときには、上述したステップS
50において、上記ラインバッファ上書きフラグは
[0]に設定されているので、この場合、NOへ抜けて
ステップS62へ進む。ステップS62では、現在処理
ライン番号に相当するラインのドットデータを画像デー
タから読み出してラインバッファ50へ格納する。この
場合であれば、ライン[1]のドットデータがラインバ
ッファ50に格納される。次に、ステップS64で、ラ
インバッファ上書きフラグを[1]にする。一方、ステ
ップS60において、ラインバッファ上書きフラグが
[1]であるときにはYESへ抜けてステップS66へ
進む。ステップS66では、現在処理ライン番号に相当
する画像データのラインに、指定色C1のドットデータ
があれば、ラインバッファ50内のドットデータに上書
きする。また、ラインバッファ50内のドットデータの
うち、指定色C1でないドットに対応する画像データの
ドットが指定色C1でない場合にも、ラインバッファ5
0内のドットデータに上書きし、ステップS54へ戻
る。以下、ステップS54〜S66を繰り返し実行す
る。
【0042】このように、ライン選択誤差e1が1/2
より小さくなるまで、現在処理ライン番号を進めるとと
もに、ライン選択誤差e1を補正する。この時、ライン
バッファ上書きフラグが[0]であれば、ラインバッフ
ァ50には未だデータが存在しないので、記憶装置33
に格納されているビット配列形式の画像データから現在
処理ライン番号に相当する水平ラインのドットデータを
読み取り、ラインバッファ50に格納して、ラインバッ
ファ上書きフラグを1にする。一方、ラインバッファ上
書きフラグが[1]であれば、ラインバッファ50には
既にデータが存在するので、記憶装置33内の画像デー
タの現在処理ライン番号に相当する水平ラインに、指定
色C1のドットデータが存在する時は、ラインバッファ
50内の対応するドットデータを指定色C1のドットデ
ータで上書きする。それ以外でも、ラインバッファ50
内のドットデータが指定色C1でない場合には、記憶装
置33内の画像データの対応するドットデータで上書き
する。
【0043】したがって、ライン選択誤差e1が1/2
より小さくなり、表示すべきラインを選択したときに
は、ラインバッファ50には、前回処理したラインから
現在処理ライン番号のラインまでのデータの内、指定色
C1を優先したデータが格納されていることになる。す
なわち、複数のラインの同一ドット(垂直方向ライン)
に指定色C1がある場合にはその指定色C1が格納され
ており、一方、複数のラインの同一ドットに指定色C1
が無い場合には、現在処理ライン番号のライン内のドッ
トデータが格納されている。
【0044】そして、ステップS54において、ライン
選択誤差e1が1/2より小さくなると、NOに抜けて
ステップS68へ進む。ステップS68では、画像デー
タの全てのラインの処理が終了したか否かを判別し、処
理が終了していなければ、NOへ抜けてステップS70
へ進む。ステップS70では、ラインバッファ50のド
ット[0]のドットデータを左側表示データに格納する
とともに、ドット[19]のドットデータを右側表示デ
ータに格納する。そして、図4に示すステップS22へ
戻る。以下、新たに選択したライン、すなわちラインバ
ッファ50に格納したラインのドットデータに対して、
上述したような、1ライン分の画像データを横方向に縮
小する処理を繰り返す。
【0045】次に、上述した処理について図6および図
7を参照して具体的に説明する。図6(a)は記憶装置
33に格納されている画像データ41を示す図であり、
同図(b)は、ラインバッファ50に格納していく時の
ラインバッファ50内のデータが変化する様子を示す図
である。また、図7(a)は(左側)表示データに上書
きする処理を説明する図であり、同図(b)は(左側)
表示データレジスタの内容が変化する様子を示す図であ
る。まず、図6(a)において、今回処理する水平ライ
ンは〜であるとする。水平ラインに対する処理で
は、該水平ラインが最初のラインであるので、ライン
バッファ上書きフラグは[0]となっている。したがっ
て、この場合には、図6(b)に示すように、記憶装置
33内の画像データにおける水平ラインのドットデー
タは、そのままラインバッファ30に格納される。次
に、水平ライン〜に対する処理では、ラインバッフ
ァ上書きフラグが[1]となっているので、記憶装置3
3内の画像データが指定色C1の場合と、ラインバッフ
ァ50内のドットデータと記憶装置33内の画像データ
におけるドットデータが共に指定色C1でない場合に
は、画像データのドットデータをラインバッファ50に
上書きする。
【0046】例えば、ドット列[2]に注目すると、図
6(a)に示す水平ラインのドットデータD1は指定
色C1であるため、それ以降の水平ライン〜の処理
でも、図6(b)に示すように、そのまま優先的に残
る。次に、ドット列[3]に注目すると、水平ライン
のドットデータD2は指定色C1でないが、水平ライン
のドットデータD3が指定色C1であるため、水平ラ
インの処理のときに、ドットデータD3が上書きさ
れ、そのドットデータD3がそのまま優先的に残る。次
に、ドット列[4]に注目すると、このドット列[4]
には、水平ライン〜のいずれのラインにも指定色C
1がないので、水平ラインが処理される度に、処理対象
となっているラインのドットデータが上書きされる。ド
ット列[5]、および[7]も同様である。次に、ドッ
ト列[6]に注目すると、水平ラインのドットデータ
D4は、指定色C1ではないが、水平ラインのドット
データD5が指定色C1であるため、ドット列[2]と
同様に、水平ラインの処理のときに、ドットデータD
5が上書きされ、そのドットデータD5がそのまま優先
的に残る。したがって、水平ラインの処理が終了した
時点で、ラインバッファ50には、図6(b)に示すド
ットデータが完成する。
【0047】次に、図7(a)に示すラインバッファ5
0内のドットデータを(左側)表示データレジスタに格
納していく時の動作について説明する。図において、今
回処理するドットデータを〜とする。ドットデータ
に対する処理では、表示データ上書きフラグが[0]
であるので、ラインバッファ50内のドットデータを
そのまま(左側)表示データレジスタに格納する。そし
て、ドットデータ〜の処理では、表示データ上書き
フラグが[1]であるので、ラインバッファ50内のド
ットデータ〜が指定色C1の場合と、(左側)表示
データレジスタ内のドットデータとラインバッファ50
内のドットデータが共に指定色C1でない場合には、ラ
インバッファ50のドットデータを(左側)表示データ
に上書きする。
【0048】例えば、ドットデータに対する処理で
は、そのまま(左側)表示データレジスタに格納される
ため、表示データレジスタ51には、図7(b)に示す
ように、ドットデータが格納される。次に、ドットデ
ータに対する処理では、該ドットデータは指定色C
1でなく、かつ(左側)表示データレジスタ51内のド
ットデータも指定色C1でないため、表示データレジ
スタ51には、図7(b)に示すように、ドットデータ
が上書きされる(×印を参照)。次に、ドットデータ
に対する処理では、該ドットデータが指定色C1で
あるため、図7(b)に示すように、優先的に(左側)
表示データレジスタ51に上書きされる(■印を参
照)。次に、ドットデータに対する処理では、該ドッ
トデータは指定色C1でないが、(左側)表示データ
レジスタ51のドットデータが指定色C1であるた
め、上書きされない。したがって、(左側)表示データ
レジスタ51には、図7(b)に示すように、ドットデ
ータがそのまま残る。ドットデータに対する処理も
同様である。ドットデータの処理が終了した時点で、
(左側)表示データが完成する。
【0049】以上、指定色C1を消滅させない縮小処理
の例として、従来の変形処理では表示されなかった水平
ライン(ライン[2]、[5]、[8]、[11]、
[14]、[17])をその下の水平ラインに反映させ
るとともに、各水平ライン内の、従来表示されなかった
左半分のドット(ドット[2]、[5]、[8])をそ
の右のドットに反映させ、右半分のドット(11、1
4、17)をその左のドットに反映させることにより、
アニメーション、ゲーム等のキャラクタまたは背景等、
ビット配列形式の画像データを、元の画像データのイメ
ージを損わないように、縮小することができる。
【0050】第2の実施例 また、上述した実施例では、指定色C1は1色だけであ
ったが、これに限定されることなく、複数の色を指定色
として指定することもできる。ここで、第2の実施例と
して、2色の指定色C1,C2を用いた例について図8
および図9を参照して説明する。図8(a)は記憶装置
33に記憶されている画像データを示す図であり、同図
(b)はラインバッファ50に格納していく時のライン
バッファ50内のデータが変化する様子を示す図であ
る。また、図9(a)は(左側)表示データに上書きす
る処理を説明する図であり、同図(b)は(左側)表示
データレジスタの内容が変化する様子を示す図である。
本変形例では、指定色C1(■印)と指定色C2(□
印)を用いた場合の様子を示すが、この場合、前に格納
されていた指定色が、他の指定色で上書きされることに
なり、フローチャート等は前に説明したものをそのまま
使うことができる。まず、図8(a)において、今回処
理する水平ラインは〜であるとする。水平ライン
に対する処理では、該水平ラインが最初のラインであ
るので、ラインバッファ上書きフラグは[0]となって
いる。したがって、この場合には、図8(b)に示すよ
うに、記憶装置33内の画像データにおける水平ライン
のドットデータは、そのままラインバッファ30に格
納される。次に、水平ライン〜に対する処理では、
ラインバッファ上書きフラグが[1]となっているの
で、記憶装置33内の画像データが指定色C1もしくは
C2の場合と、ラインバッファ50内のドットデータと
記憶装置33内の画像データにおけるドットデータが共
に指定色C1もしくはC2でない場合に、画像データの
ドットデータをラインバッファ50に上書きする。
【0051】例えば、ドット列[2]に注目すると、図
8(a)に示す水平ラインのドットデータD10は指
定色C1であるため、それ以降の水平ライン〜の処
理でも、図8(b)に示すように、そのまま優先的に残
る。次に、ドット列[3]に注目すると、水平ライン
のドットデータD11は指定色でないが、水平ライン
のドットデータD12が指定色C1であるため、水平ラ
インの処理のときに、ドットデータD12が上書きさ
れ、そのドットデータD12がそのまま優先的に残る。
次に、ドット列[4]に注目すると、このドット列
[4]には、水平ライン〜のいずれのラインにも指
定色がないので、水平ラインが処理される度に、処理対
象となっているラインのドットデータが上書きされる。
ドット列[5]、および[7]も同様である。次に、ド
ット列[6]に注目すると、水平ラインのドットデー
タD13は、指定色ではないが、水平ラインのドット
データD14が指定色C1であるため、ドット列[2]
と同様に、水平ラインの処理のときに、ドットデータ
D14が上書きされ、そのドットデータD14がそのま
ま優先的に残る。次に、ドット列[8]に注目すると、
水平ラインのドットデータD15が指定色C1である
が、水平ラインのドッドデータD16が指定色C2で
あるため、水平ラインの処理のときに、ドットデータ
D16が上書きされ、そのドットデータD16がそのま
ま優先的に残る。したがって、水平ラインの処理が終
了した時点で、ラインバッファ50には、図8(b)に
示すドットデータが完成する。
【0052】次に、図9(a)に示すラインバッファ5
0内のドットデータを(左側)表示データレジスタ51
に格納していく時の動作について説明する。図におい
て、今回処理するドットデータを〜とする。ドット
データに対する処理では、表示データ上書きフラグが
[0]であるので、図9(b)に示すように、ラインバ
ッファ50内のドットデータをそのまま(左側)表示
データレジスタ51に格納する。そして、ドットデータ
〜の処理では、表示データ上書きフラグが[1]で
あるので、ラインバッファ50内のドットデータ〜
が指定色C1もしくはC2の場合と、(左側)表示デー
タレジスタ51内のドットデータとラインバッファ50
内のドットデータが共に指定色C1,C2でない場合
に、ラインバッファ50のドットデータを(左側)表示
データに上書きする。
【0053】例えば、ドットデータに対する処理で
は、そのまま(左側)表示データレジスタ51に格納さ
れるため、表示データレジスタ51には、図9(b)に
示すように、ドットデータが格納される。次に、ドッ
トデータに対する処理では、該ドットデータは指定
色C1でもC2でもなく、かつ(左側)表示データレジ
スタ51内のドットデータも指定色C1でもC2でも
ないため、表示データレジスタ51には、図9(b)に
示すように、ドットデータが上書きされる(×印を参
照)。次に、ドットデータに対する処理では、該ドッ
トデータは指定色C1であるため、図9(b)に示す
ように、優先的に(左側)表示データレジスタ51に上
書きされる(■印を参照)。次に、ドットデータに対
する処理では、該ドットデータは指定色C1でもC2
でもないが、(左側)表示データレジスタ51のドット
データが指定色C1であるため、上書きされずに、ド
ットデータがそのまま保持される。次に、ドットデー
タに対する処理では、該ドットデータは指定色C2
であるため、図9(b)に示すように、(左側)表示デ
ータレジスタ51に上書きされる(□印を参照)。この
ようにして、(左側)表示データレジスタ51には、図
9(b)に示すように、ドットデータの処理が終了し
た時点で、(左側)表示データが完成する。
【0054】なお、上述した実施例では、縮小対象の左
右で、左右対象の反映方法を用いているが、これは、縮
小の対象となる画像データ(”顔”の絵)がほぼ左右対
象のデータなので、左右すべてのドットで異なる反映方
法を用いた場合に比べて、縮小がきれいに行われるため
である。また、変形対象となる画像データによっては、
左右全てのドットで反映方法を変えてもよい。また、左
右対象の反映方法を用いた場合には、選択誤差eの計算
を、画像データの左側半分あるいは右側半分だけについ
て行えばよいので、処理時間を短縮できる。
【0055】同様に、従来表示されなかった水平ライン
の反映についても、この例のように必ずしも下の水平ラ
インに反映させる必要はなく、その時々に応じて、上の
水平ラインに反映させても、また上半分、下半分で反映
のさせ方を変えてもよい。また、上述した実施例におい
ては、ビット配列形式画像データは、そのデータとして
各ピクセルごとのパレット番号をもっていて、VDP3
4内で実際の表示色コードに変換しているので、”顔”
の輪郭色と”目”の色が共に同じ黒であっても、両者の
パレット番号さえ変えて置けば、”顔”の輪郭線に対し
ては消滅しない縮小処理を施し、”目”に対しては従来
の縮小処理を施すという使い分けができる。
【0056】
【発明の効果】本発明によれば、まず、変形対象となる
ビット配列形式の元画像データの中で変形後に消滅させ
ない部分の表示色を少なくとも1つ予め設定しておき、
次いで、元画像データを複数のラインに分割し、該複数
のラインのうち、どのラインを変形後の画像データとし
て用いるかを選択するとともに、該選択されたラインを
構成する複数のドットのうち、どのドットを変形後の画
像データとして用いるかを選択し、さらに、上記複数の
ラインのうち選択されなかったラインの中に、消滅させ
ない表示色を有するドットが含まれる場合には、選択さ
れたラインの対応するドットを、消滅させない表示色を
有するドットに置き換えるとともに、上記複数のドット
のうち選択されなかったドットの中に、消滅させない表
示色を有するドットが含まれる場合には、選択されたド
ットを、消滅させない表示色を有するドットに置き換え
て、変形後の画像データを作成するようにしたため、以
下の効果を得ることができる。 アニメーション、ゲーム等のキャラクタまたは背景
等、ビット配列形式の画像データを、元の画像データの
イメージを損わないように、縮小することができる。こ
のため、1つの元画像データから、元画像データを縦横
任意の縮小率で縮小した、大小複数の同一イメージの画
像データを作ることができる。 変形対象である元画像データを、対象の大きさが変化
するアニメーションに適用する場合、従来のように、少
しずつその大きさの異なる複数の画像データを、予めメ
モリにもっておかなくても、一定時間毎に元画像データ
をこの縮小方法を用いて縮小してやれば、少ないメモリ
で従来と同等のアニメーションを行うことができる。 変形対象である元画像データをゲーム等のキャラクタ
とすれば、大小複数のキャラクタを登場させる場合に
も、1つのキャラクタの画像データから、全く同様のイ
メージの、大きさの異なる複数のキャラクタを作成こと
ができる。 変形対象である元画像データをゲーム等のキャラクタ
とすれば、ゲーム等に登場するキャラクタの一部分
(目、鼻、手、足等のパーツ)の大きさを変える場合に
も、元となる1つの画像データだけを持っているだけ
で、種々の大きさの構成パーツを作成することができ
る。 変形対象である元画像データをゲーム等の背景画像と
すれば、ゲームの背景等を縮小して背景が遠退くような
効果を付加する場合にも、従来の縮小に比べて、遥かに
きれいな縮小が行えるので、従来よりリアルな効果が得
ることができる。 以上のように、少ないメモリで従来と同等のことがで
き、更にそれを上回る効果を得ることができる。また、
本来表示されないドットに指定色が含まれている場合、
左右対称または上下対称の反映方法を用いれば、左右対
称、上下対称の画像データの縮小がきれいに行われると
共に、処理時間を短縮できる。
【図面の簡単な説明】
【図1】本発明による画像変形方法の原理を示す図であ
る。
【図2】本発明に係る画像変形装置の一実施例の構成図
である。
【図3】同実施例のCPUの内部レジスタに記憶される
データを説明するための図である。
【図4】同実施例の画像変形処理のメインプログラムを
示すフローチャートである。
【図5】同実施例の画像変形処理のメインプログラムを
示すフローチャートである。
【図6】同実施例のラインバッファにおける動作を説明
するための図である。
【図7】同実施例の表示データレジスタにおける動作を
説明するための図である。
【図8】本発明の第2の実施例として、複数の色を指定
色として指定した場合のラインバッファにおける動作を
説明するための図である。
【図9】同第2の実施例の表示データレジスタにおける
動作を説明するための図である。
【図10】従来の画像変形方法を説明するための図であ
る。
【符号の説明】
31 CPU(変形手段、判別手段、置換手段、ライン
分割手段、ライン選択手段、ドット選択手段、表示色設
定手段) 31a 内部レジスタ(格納手段) 33 記憶装置(記憶手段) 32a 縮小スイッチ(変形指示手段) 34 VDP(変換手段) 35 VRAM 36 表示ディスプレイ(表示手段) 41 元画像データ 42 縮小率データ 43 指定色データ 49 パレットデータ 50 ラインバッファ 51 表示データレジスタ 52 ラインバッファ作成用レジスタ 53 表示データ作成用レジスタ 54 フラグ

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 変形対象となるビット配列形式の元画像
    データの中で変形後に消滅させない部分の表示色を少な
    くとも1つ予め設定し、 前記元画像データを変形する際、前記元画像データを複
    数のラインに分割し、前記複数のラインのうち、どのラ
    インを変形後の画像データとして用いるかを選択し、 前記選択されたラインを構成する複数のドットのうち、
    どのドットを変形後の画像データとして用いるかを選択
    し、 前記複数のラインのうち選択されなかったラインの中
    に、前記消滅させない表示色を有するドットが含まれる
    場合には、前記選択されたラインの対応するドットを前
    記消滅させない表示色を有するドットに置き換えるとと
    もに、前記複数のドットのうち選択されなかったドット
    の中に、前記消滅させない表示色を有するドットが含ま
    れる場合には、前記選択されたドットを前記消滅させな
    い表示色を有するドットに置き換えて、変形後の画像デ
    ータを作成することを特徴とする画像変形方法。
  2. 【請求項2】 前記複数のラインのうち、どのラインを
    変形後の画像データとして表示するかを選択する処理
    は、 変形前の前記元画像データのライン数、および変形後の
    画像データのライン数に基づいて、変形前の画像データ
    のラインを変形後の画像データのラインに順次指定して
    配列したときの誤差を累算する処理と、 この誤差が所定値を超えるときには、現在指定されてい
    る元画像データのラインを1つずつ進めるとともに、前
    記累算された誤差から一定値を減算する動作を前記誤差
    が所定値以下になるまで繰り返す処理と、 前記誤差が所定値以下のときに、前記指定された元画像
    データのラインを変形後の画像データのラインに転送し
    て配置する処理とを有することを特徴とする請求項1記
    載の画像変形方法。
  3. 【請求項3】 前記元画像データを複数のラインに分割
    し、前記複数のラインのうち、どのラインを変形後の画
    像データとして用いるかを選択する際に、前記元画像デ
    ータの上から検索し、 前記選択されなかったラインの中に、前記消滅させない
    表示色を有するドットが含まれる場合には、前記選択さ
    れたラインのうち、前記選択されなかったラインの直下
    のラインの対応するドットを前記消滅させない表示色を
    有するドットに置き換えて、変形後の画像データを作成
    することを特徴とする請求項1記載の画像変形方法。
  4. 【請求項4】 前記元画像データを複数のラインに分割
    し、前記複数のラインのうち、どのラインを変形後の画
    像データとして用いるかを選択する際に、前記元画像デ
    ータの下から検索し、 前記選択されなかったラインの中に、前記消滅させない
    表示色を有するドットが含まれる場合には、前記選択さ
    れたラインのうち、前記選択されなかったラインの直上
    のラインの対応するドットを前記消滅させない表示色を
    有するドットに置き換えて、変形後の画像データを作成
    することを特徴とする請求項1記載の画像変形方法。
  5. 【請求項5】 前記元画像データを複数のラインに分割
    し、前記複数のラインのうち、どのラインを変形後の画
    像データとして用いるかを選択する際に、前記元画像デ
    ータの上下から検索することを特徴とする請求項1記載
    の画像変形方法。
  6. 【請求項6】 前記選択されたラインを構成する複数の
    ドットのうち、どのドットを変形後の画像データとして
    用いるかを選択する際に、前記元画像データの左右から
    検索することを特徴とする請求項1記載の画像変形方
    法。
  7. 【請求項7】前記選択されたラインを構成する複数のド
    ットのうち、どのドットを変形後の画像データとして用
    いるかを選択する際に、前記元画像データの一方から検
    索することを特徴とする請求項1記載の画像変形方法。
  8. 【請求項8】 前記消滅させない表示色は2つ以上の色
    であることを特徴とする請求項1記載の画像変形方法。
  9. 【請求項9】 前記変形とは、縦方向または横方向へそ
    れぞれ任意の縮小率で縮小することであることを特徴と
    する請求項1記載の変形方法。
  10. 【請求項10】 前記消滅させない表示色はドットが有
    する表示色番号であることを特徴とする請求項1記載の
    画像変形変形方法。
  11. 【請求項11】 前記消滅させない表示色はドットが有
    するパレット番号であることを特徴とする請求項1記載
    の画像変形方法。
  12. 【請求項12】 変形対象となるビット配列形式の元画
    像データの中で変形後に消滅させない部分の表示色を少
    なくとも1つ予め設定する表示色設定手段と、 前記元画像データを変形する際、前記元画像データを複
    数のラインに分割するライン分割手段と、 前記複数のラインのうち、どのラインを変形後の画像デ
    ータとして用いるかを選択するライン選択手段と、 前記選択されたラインを構成する複数のドットのうち、
    どのドットを変形後の画像データとして用いるかを選択
    するドット選択手段と、 前記複数のラインのうち選択されなかったラインの中
    に、前記消滅させない表示色を有するドットが含まれる
    場合には、前記選択されたラインの対応するドットを前
    記消滅させない表示色を有するドットに置き換えるとと
    もに、前記複数のドットのうち選択されなかったドット
    の中に、前記消滅させない表示色を有するドットが含ま
    れる場合には、前記選択されたドットを前記消滅させな
    い表示色を有するドットに置き換えて、変形後の画像デ
    ータを作成する変形手段とを具備することを特徴とする
    画像変形装置。
  13. 【請求項13】 前記変形手段は、少なくとも、 前記元画像データの処理対象となっているライン位置を
    指示する現在処理ライン番号と、前記現在処理ライン番
    号によって指示されるラインのドットデータと、前記ド
    ットデータのうち、現在処理対象となっているドット位
    置を指示する現在処理ドット番号と、前記ドット選択手
    段によって選択されたドットデータと、を格納する格納
    手段と、 前記現在処理ドット番号に対応するドットデータが前記
    消滅させない表示色であるか否かを判別する判別手段
    と、 前記判別手段によって前記ドットデータが前記消滅させ
    ない表示色であると判別されたとき、前記格納手段に格
    納されたドットデータを、前記ドットデータに置き換え
    る置換手段とを備えることを特徴とする請求項1記載の
    画像変形装置。
  14. 【請求項14】 前記元画像データと、前記元画像デー
    タの変形程度を指示する変形程度データと、前記消滅さ
    せない表示色を示す表示色データとを記憶する記憶手段
    を、さらに有することを特徴とする請求項12記載の画
    像変形装置。
  15. 【請求項15】 前記変形手段に変形を指示する変形指
    示手段を備えることを特徴とする請求項12記載の画像
    変形装置
  16. 【請求項16】 前記変形手段によって作成されたビッ
    ト配列形式の変形後の画像データを、パレットデータに
    より実際に表示する色コードに変換する変換手段を、さ
    らに有することを特徴とする請求項12記載の画像変形
    装置。
  17. 【請求項17】 前記変形手段によって作成された変形
    後の画像データを表示する表示手段を、さらに有するこ
    とを特徴とする請求項12記載の画像変形装置。
JP5350866A 1993-12-30 1993-12-30 画像変形方法およびその装置 Abandoned JPH07200806A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5350866A JPH07200806A (ja) 1993-12-30 1993-12-30 画像変形方法およびその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5350866A JPH07200806A (ja) 1993-12-30 1993-12-30 画像変形方法およびその装置

Publications (1)

Publication Number Publication Date
JPH07200806A true JPH07200806A (ja) 1995-08-04

Family

ID=18413425

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5350866A Abandoned JPH07200806A (ja) 1993-12-30 1993-12-30 画像変形方法およびその装置

Country Status (1)

Country Link
JP (1) JPH07200806A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104036453A (zh) * 2014-07-03 2014-09-10 上海斐讯数据通信技术有限公司 图像局部变形方法及其适用的图像局部变形系统及手机

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104036453A (zh) * 2014-07-03 2014-09-10 上海斐讯数据通信技术有限公司 图像局部变形方法及其适用的图像局部变形系统及手机

Similar Documents

Publication Publication Date Title
EP0104431B1 (en) Image display system
US6373462B1 (en) Method and apparatus for displaying higher color resolution on a hand-held LCD device
US4529978A (en) Method and apparatus for generating graphic and textual images on a raster scan display
JPH0850659A (ja) フルモーション動画のntsc式表示装置および方法
JPH11219355A (ja) 文書色付け編集装置
US6369827B1 (en) Method and apparatus for displaying higher color resolution on a hand-held LCD device
JPH0325792B2 (ja)
JPH07200806A (ja) 画像変形方法およびその装置
EP0062669A1 (en) GRAPHICS AND TEXT IMAGE GENERATOR FOR A GRID SCAN DISPLAY.
JPS60172085A (ja) 図形処理装置
JPH09138683A (ja) 画像表示制御装置
JP3533472B2 (ja) 画像変形方法およびその装置
JP3551459B2 (ja) 画像変形方法およびその装置
JP2562540B2 (ja) 図形処理方法
JP3473079B2 (ja) 画像表示位置決定方法およびその装置
JP3846142B2 (ja) 画像データ転送装置及び画像表示処理システム
JP3139805B2 (ja) 画像処理方法及びその装置
JP3508182B2 (ja) 画像表示装置及び画像表示方法
JPS6385978A (ja) 図形編集装置
JP4048731B2 (ja) 画像データ転送装置及び画像表示処理システム
JPS63247868A (ja) 三次元図形表示装置
JPS6385977A (ja) 図形編集装置
JPS6355097B2 (ja)
JP3514763B2 (ja) スクロール画面表示回路
JPS6117189A (ja) 図形処理装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040108

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040120

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20040312