JPH0525143B2 - - Google Patents

Info

Publication number
JPH0525143B2
JPH0525143B2 JP61080109A JP8010986A JPH0525143B2 JP H0525143 B2 JPH0525143 B2 JP H0525143B2 JP 61080109 A JP61080109 A JP 61080109A JP 8010986 A JP8010986 A JP 8010986A JP H0525143 B2 JPH0525143 B2 JP H0525143B2
Authority
JP
Japan
Prior art keywords
line
conversion
pixels
image
source image
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
JP61080109A
Other languages
Japanese (ja)
Other versions
JPS62237581A (en
Inventor
Makoto Fujita
Yasushi Fukunaga
Kazuyoshi Koga
Shuichi Senda
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP61080109A priority Critical patent/JPS62237581A/en
Publication of JPS62237581A publication Critical patent/JPS62237581A/en
Publication of JPH0525143B2 publication Critical patent/JPH0525143B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、画像データの拡大、縮小、回転等の
線形変換を行うための画像処理装置に関するもの
である。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an image processing device for performing linear transformation such as enlargement, reduction, rotation, etc. of image data.

〔従来の技術〕[Conventional technology]

複数の画素によつて形成される画像データの線
形変換とは、第2図に示すように、ソース画像
(図中の実線で示した“A”)を移動、拡大,縮
小、回転した変換画像(図中の破線で示した
“A”)に変換することである。第1図において、
イは移動、ロは拡大、ハは回転、ニは移動、拡
大、回転を組合せた一般的な線形変換の例を示し
ている。
As shown in Figure 2, linear transformation of image data formed by multiple pixels is a transformed image in which the source image ("A" indicated by a solid line in the figure) is moved, enlarged, reduced, or rotated. (“A” indicated by a broken line in the figure). In Figure 1,
A shows movement, B shows enlargement, C shows rotation, and D shows an example of a general linear transformation that combines movement, enlargement, and rotation.

これらの線形変換は、ソース画像上の座標を
(X,Y)とし,(X,Y)に対応する変換画像上
の座標を(x,y)としたとき、式(1)で定義され
る。
These linear transformations are defined by equation (1), where the coordinates on the source image are (X, Y) and the coordinates on the transformed image corresponding to (X, Y) are (x, y). .

x y=PQ RSX−Xo Y−Yo+xo yo …(1) ここで、P,Q,R,Sは変換係数、Xo,Yo
は、ソース画像の原点座標、xo,yoは変換画像
の平行移動量である。
x y=PQ RSX-Xo Y-Yo+xo yo...(1) Here, P, Q, R, S are conversion coefficients, Xo, Yo
is the origin coordinate of the source image, and xo and yo are the translation amounts of the converted image.

この線形変換を行う従来装置には、ソース画像
上の各画素を順に、その画素の座標(X,Y)か
ら式(1)で算出される変換画像上の(x,y)の位
置へ転送するというものがあつた(特開昭59−
229669参照)。また、別の従来装置では、式(1)の
変換行列の逆行列を求め、あらかじめ式(1)から求
めた変換画像上の格子点の座標(x,y)から、
対応するソース画像上の座標(X,Y)を、上記
の逆行列から決定し、(X,Y)あるいは、その
周辺の画素データから何らかの手段で決定した画
素データを(x,y)の画素データとする(特開
昭56−76683参照)。
Conventional equipment that performs this linear transformation has a method of sequentially transferring each pixel on the source image to the (x, y) position on the transformed image calculated from the coordinates (X, Y) of that pixel using equation (1). There was a thing called
229669). In addition, in another conventional device, the inverse matrix of the transformation matrix of equation (1) is obtained, and from the coordinates (x, y) of the lattice point on the transformed image obtained in advance from equation (1),
The coordinates (X, Y) on the corresponding source image are determined from the above inverse matrix, and the pixel data determined by some means from (X, Y) or the surrounding pixel data is used as the pixel at (x, y). data (see Japanese Patent Application Laid-Open No. 56-76683).

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

上記第1の従来装置の場合には、変換画像上の
格子点の座標(x,y)を求め、これに最も近い
格子点の座標に丸める処理を行うため、変換画像
上の全ての格子点を発生することができないとい
う問題があつた。一方上記第2の従来装置の場合
には、変換画像上の格子点座標から、対応するソ
ース画像の画素データを求めるため、第1の従来
装置のように変換画像上の画素の欠落は生じな
い。しかし、ソース画像をランダムにアクセスす
ることになるため、ソース画像がシーケンシヤル
に取り込まれる場合、すなわち高速化のために、
FIFOレジスタを介してDMAコントローラ等に
よつてある決まつた順序でソース画像を転送する
構成を取つた場合、非常に効率が悪くなり高速性
が得られないという欠点があつた。
In the case of the first conventional device described above, the coordinates (x, y) of the grid point on the converted image are calculated and rounded to the coordinates of the grid point closest to the coordinates (x, y), so all the grid points on the converted image are There was a problem that it could not be generated. On the other hand, in the case of the second conventional device described above, pixel data of the corresponding source image is obtained from the grid point coordinates on the converted image, so unlike the first conventional device, missing pixels on the converted image do not occur. . However, since the source images are accessed randomly, if the source images are captured sequentially, i.e. for faster speeds,
When a configuration is adopted in which source images are transferred in a fixed order by a DMA controller or the like via a FIFO register, the efficiency is extremely low and high speed cannot be achieved.

本発明の目的は、ソース画像データを高速に取
り込むことができ、かつ変換画像の画素の欠落も
生じないように線形変換処理を行う画像処理装置
を提供するにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide an image processing apparatus that can capture source image data at high speed and performs linear transformation processing so that no pixel of the transformed image is lost.

〔問題点を解決するための手段〕[Means for solving problems]

上記の目的は、ソース画像上の1ラインに対応
する変換画像上の直線を構成する格子点の座標列
を、ソース画像上の1ラインの始点、終点の座標
を式(1)で変換した2点を4連結あるいは8連結モ
ードで連結するように補間して順次発生するため
の第1のデイジタル微分解析器(以下DDAと略
記する)と、ソース画像上のラインに含まれる画
素データの数とこのライン対応の変換画像上の画
素数とから、ソース画像の読み出し信号と、それ
によつて読み出した画素データを前記第1の
DDAの発生した座標に書き込むためのライト信
号を発生する第2のDDAとを用いてソース画像
を1ラインずつ変換する画像変換手段を構成する
とともに、ソース画像上のあるラインの始点とそ
の次のラインの始点の各変換画像上の対応点の座
標の間の連結モードを、上記第1のDDAによる
2点間の補間が8連結モードである時には4連結
モードとなるようにし、上記補間が4連結モード
である時には8連結モードとなるように各始点を
生成する始点の発生手段を設けることにより達成
される。但し4連結とは、第3図イに示すよう
に、2つの格子点が方向a〜dのいずれかで隣接
関係にあることを言い、8連結とは、同図ロに示
すように、2つの格子点がa〜hの8方向のいず
れかで隣接関係にあると言う。
The purpose of the above is to convert the coordinate string of the grid points that constitute the straight line on the transformed image corresponding to one line on the source image into 2 A first digital differential analyzer (hereinafter abbreviated as DDA) for interpolating and sequentially generating points so as to connect them in a 4-connection or 8-connection mode, and the number of pixel data included in a line on a source image. Based on the number of pixels on the converted image corresponding to this line, the readout signal of the source image and the pixel data readout thereby are converted into the first
A second DDA that generates a write signal for writing to the coordinates generated by the DDA constitutes an image conversion means that converts the source image line by line. The connection mode between the coordinates of corresponding points on each converted image of the starting point of the line is set to 4 connection mode when the interpolation between two points by the first DDA is 8 connection mode, and the above interpolation is 4 connection mode. This is achieved by providing a starting point generating means that generates each starting point so that when the connected mode is in the 8 connected mode. However, 4-connection means that two lattice points are adjacent to each other in any of the directions a to d, as shown in Figure 3A, and 8-connection means that two lattice points are adjacent to each other in any of the directions a to d, as shown in Figure 3B. It is said that the two lattice points are adjacent in any of the eight directions a to h.

〔作用〕[Effect]

DDAは、「プリンシプルズ オブ インタラク
テイブ コンピユータ グラフイツクス」セカン
ド エデイシヨン、マクグローヒル コーガクシ
ヤ 1979年刊 第21頁から第27頁
(“PRINCIPLES OF INTERACTIVE
COMPUTER GRAPHICS”Second Edition,
McGRAW−HILL KOGAKUSHA,LTD.PP21
−27)に詳しく記載されている。その動作は、今
任意の傾きをもつた二次元平面(x,y)上の直
線の傾斜と始点、終点の座標とが与えられたとす
る。その直線のx,y成分の長い方をx、短い方
をyとすると、直線に沿つてxを1ずつ変化させ
た時のyの値は、直線の傾斜によつて1より小さ
いステツプ幅で変化し、一般には整数値にはなら
ない。そこでDDAはこのyの値を丸めた整数値
に変換して整数座標(x,y)として出力するも
ので、格子点(整数座標の点)で直線を近似して
出力する機能をもつものである。そこで第1の
DDAでは変換画像上の各ラインを8/4連結で
連結するための格子点の座標を生成し、第2の
DDAでソース側のラインの画素数と変換画像側
のラインの画素数の多い方に対し少ない方を重複
して割当てる制御を上記の機能を利用して実現す
る。更に始点の発生手段によつて始点間を4/8
連結となるようにするから、変換画像上の各ライ
ン始点間が4/8連結で各ライン内が8/4連結
になり、変換画像上の全画素に必ずデータが与え
られる。しかもこの2個のDDAによる動作はラ
インに沿つて順次動作して座標の発生とそこへの
データ書き込み制御が行われ、ソース画像上から
とり出されるデータの順はソース画像のラインの
順のままでよいから、FIFOレジスタが使えて高
速処理が可能となる。
DDA is the second edition of "Principles of Interactive Computer Graphics", published by McGraw-Hill, 1979, pages 21 to 27 ("PRINCIPLES OF INTERACTIVE").
COMPUTER GRAPHICS”Second Edition,
McGRAW−HILL KOGAKUSHA, LTD.PP21
-27) is described in detail. For this operation, assume that the slope of a straight line on a two-dimensional plane (x, y) with an arbitrary slope and the coordinates of the starting point and ending point are given. If the longer one of the x and y components of the straight line is x and the shorter one is y, then when x is changed by 1 along the straight line, the value of y will change in steps smaller than 1 depending on the slope of the straight line. variable and generally not an integer value. Therefore, DDA converts this y value into a rounded integer value and outputs it as integer coordinates (x, y), and has the function of approximating and outputting a straight line using grid points (points with integer coordinates). be. So the first
In DDA, coordinates of grid points are generated to connect each line on the converted image with 8/4 connection, and the second
Using the above function, DDA realizes control to redundantly allocate the smaller number of pixels to the line with the larger number of pixels on the source side and the line on the converted image side. Furthermore, by using the starting point generation means, the distance between the starting points is 4/8.
Since they are connected, there is a 4/8 connection between the starting points of each line on the converted image, and an 8/4 connection within each line, so that data is always provided to all pixels on the converted image. Moreover, the operations by these two DDAs operate sequentially along the line to generate coordinates and control data writing there, and the order of data extracted from the source image remains the same as the line order of the source image. This allows the use of FIFO registers and enables high-speed processing.

〔実施例〕〔Example〕

以下、本発明を実施例によつて詳細に説明す
る。
Hereinafter, the present invention will be explained in detail with reference to Examples.

(実施例の構成) 第4図は、本発明の画像処理装置の全体構成を
示したもので、CPU1は、ソース画像を蓄える
メインメモリ2より、ソース画像上の画素データ
を読み出し、バス3を介してFIFOレジスタ4に
書き込む。
(Configuration of Embodiment) FIG. 4 shows the overall configuration of the image processing device of the present invention, in which the CPU 1 reads pixel data on the source image from the main memory 2 that stores the source image, and connects the bus 3. Write to FIFO register 4 via

画像変換装置5は、CPU1からバス3を介し
後述するソース画像の大きさ、変換された画像の
大きさ位置等のパラメータを与えられ、更に変換
処理実行の起動がかけられると、ソース画像上の
画素データを読み出すためにFIFOレジスタ4に
対しリード信号54を送出し、リードデータ45
を受け取る。更に、この受け取つたソース画像上
の画素データを、変換画像としてフレームメモリ
6上へ信号線56を介して書き込む。
The image conversion device 5 receives parameters such as the size of the source image, the size and position of the converted image, which will be described later, from the CPU 1 via the bus 3, and is further started to execute the conversion process. In order to read pixel data, a read signal 54 is sent to the FIFO register 4, and read data 45 is sent to the FIFO register 4.
receive. Furthermore, the pixel data on the received source image is written onto the frame memory 6 via the signal line 56 as a converted image.

フレームメモリ6は、デイスプレイ7へ表示す
る画像データを蓄える記憶装置であり、常時その
内容は読み出されてデイスプレイ7に送出され、
表示される。この表示機構は本発明には関係がな
いので説明を省略する。
The frame memory 6 is a storage device that stores image data to be displayed on the display 7, and its contents are constantly read out and sent to the display 7.
Is displayed. This display mechanism is not related to the present invention, so a description thereof will be omitted.

さて、メインメモリ2に蓄えられているソース
画像上の画素データは、CPU1により任意の順
序でFIFOレジスタ4へ入力できるが、以下では
簡単のために、ソース画像の画素データの座標
(X,Y)は直交座標であつて、かつX,Yとも
に整数値である格子点とし、更にFIFOレジスタ
4に送出される画素の順序は、与えられたソース
画像でCPU1が後述する手段によつて定められ
るY座標をもつもののうち、X座標の最小となる
格子点上の画素から、X座標を1つずつ増加し、
X座標の最大となる格子点上の画素の順で、1ラ
イン分の画素データとなるように送出されるもの
とする。
Now, the pixel data on the source image stored in the main memory 2 can be input to the FIFO register 4 in any order by the CPU 1, but below, for simplicity, we will explain the coordinates (X, Y) of the pixel data of the source image. ) are rectangular coordinates, and are grid points where both X and Y are integer values, and the order of pixels sent to the FIFO register 4 is determined by the CPU 1 using the given source image by means described later. Among those with Y coordinates, increase the X coordinate by one starting from the pixel on the grid point with the minimum X coordinate,
It is assumed that one line of pixel data is transmitted in the order of pixels on the grid point with the maximum X coordinate.

第1図は、本発明の特徴とする画像変換装置5
の一実施例を示したものであつて、シーケンス制
御回路504はCPU1からの起動信号に従つて、
初期FIFOレジスタリード信号508、変換開始
信号507、及び変換実行信号505を発生す
る。Xカウンタ502及びYカウンタ503は変
換画像上に書き込む画素の座標をそのカウント値
として保持する。DDA8はXカウンタ502,
Yカウンタ503の更新のための信号を発生し、
DDA9はFIFOレジスタ4へのリード信号54と
フレームメモリ6への書き込み信号506とを発
生する。方向レジスタ501はDDA8,DDA
9,Xカウンタ502,Yカウンタ503を制御
する信号を保持する。これらの回路へは、CPU
1が、バス3を介し任意の値を設定することがで
きる。
FIG. 1 shows an image conversion device 5 that is a feature of the present invention.
In this example, the sequence control circuit 504 operates according to the activation signal from the CPU 1.
An initial FIFO register read signal 508, a conversion start signal 507, and a conversion execution signal 505 are generated. The X counter 502 and the Y counter 503 hold the coordinates of pixels to be written on the converted image as their count values. DDA8 is the X counter 502,
Generates a signal for updating the Y counter 503,
The DDA 9 generates a read signal 54 to the FIFO register 4 and a write signal 506 to the frame memory 6. Direction register 501 is DDA8, DDA
9, holds signals for controlling the X counter 502 and Y counter 503. To these circuits, the CPU
1 can set any value via bus 3.

DDA8とDDA9の内部は同一構成であつて、
その構成例を第5図に示す。同図に於いて、傾き
レジスタ102は1以下の値を保持するレジスタ
で、その値はCPU1からバス3、端子BIN経由
で設定される。誤差レジスタ101は、1より小
さい値を保持するレジスタで、EBL端子へイネ
ーブル信号が与えられた時、加算器104のS端
子出力値が設定される。セレクタ103は、
INIT端子からの変換開始信号507が変換開始
を示していない時(レベルが“φ”の時)誤差レ
ジスタ101の内容を選択し、変換開始信号50
7が変換開始している時(レベルが“1”の時)
0.5を選択して出力する。加算器104はこのセ
レクタ103の出力と傾きレジスタ102の内容
とを加算し、S端子へはその加算結果の小数部を
(これをイネーブル信号によりレジスタ101へ
セツトされる)、C端子へはその加算結果の整数
部(キヤリイ信号)を出力する。この後者のキヤ
リー信号はオアゲート105,106へ入力され
る。オアゲート105のもう一方の入力には、
DIR端子からの制御信号がノツトゲート107経
由で印加され、オアゲート106のもう一方の入
力には制御信号が入力されていて、制御信号が
“0”の時はキヤリイ信号がなくてもオアゲート
105出力を1とし、制御信号が“1”の時はオ
アゲート106出力をキヤリイ信号がなくても1
とする。
The internal configuration of DDA8 and DDA9 is the same,
An example of its configuration is shown in FIG. In the figure, the slope register 102 is a register that holds a value of 1 or less, and the value is set from the CPU 1 via the bus 3 and the terminal BIN. The error register 101 is a register that holds a value smaller than 1, and when an enable signal is applied to the EBL terminal, the S terminal output value of the adder 104 is set. The selector 103 is
When the conversion start signal 507 from the INIT terminal does not indicate the start of conversion (when the level is "φ"), the contents of the error register 101 are selected, and the conversion start signal 507
When 7 is starting to convert (when the level is “1”)
Select 0.5 and output. The adder 104 adds the output of the selector 103 and the contents of the slope register 102, sends the fractional part of the addition result to the S terminal (this is set in the register 101 by an enable signal), and sends the fractional part to the C terminal. Outputs the integer part (carry signal) of the addition result. This latter carry signal is input to OR gates 105 and 106. The other input of the OR gate 105 is
The control signal from the DIR terminal is applied via the not gate 107, and the control signal is input to the other input of the OR gate 106. When the control signal is "0", the OR gate 105 outputs even if there is no carry signal. 1, and when the control signal is "1", the OR gate 106 output is set to 1 even if there is no carry signal.
shall be.

以上のような構成のDDAは、前述の文献に示
されているように、二次元空間に於ける第1象限
で、傾き45°以下(制御信号0の時)又は45°以上
(制御信号1の時)のベクトル(原点を始点とす
る直線)を与えた時に、ベクトル上でx座標を+
1した時y座標がいくら増えるか(整数の増分)
を求める機能を持ち、+1増える毎にその値が、
イネーブル信号によりアンドゲート108,10
9が開となつた時にXup,Yup端子から出力され
る。なお、第2〜第4象限のベクトルの場合に
は、第1図の方向レジスタ501のX,Y端子の
値によりXカウンタ502,Yカウンタ503を
アツプカウンタモードとするかダウンカウンタモ
ードとするかの制御を行うことで対処できる。
As shown in the above-mentioned literature, the DDA with the above configuration has an inclination of 45° or less (when the control signal is 0) or 45° or more (when the control signal is 1) in the first quadrant in the two-dimensional space. ) when given a vector (a straight line starting from the origin), the x coordinate on the vector is +
How much does the y-coordinate increase when it is 1 (integer increment)
It has a function to calculate the value, and each time it increases by +1, the value becomes
AND gates 108, 10 by enable signal
When 9 is open, outputs are output from the X up and Y up terminals. In the case of vectors in the second to fourth quadrants, the values of the X and Y terminals of the direction register 501 in FIG. 1 determine whether the X counter 502 and Y counter 503 are set to up counter mode or down counter mode. This can be dealt with by controlling the

(実施例の動作) 次に、以上示したハードウエアを用いて、メイ
ンメモリ2上にあるソース画像を変換し、フレー
ムメモリ6に書き込む手順について述べる。
(Operation of the Embodiment) Next, a procedure for converting the source image on the main memory 2 and writing it into the frame memory 6 using the hardware described above will be described.

第6図は、被変換画像であるソース画像と変換
画像との関係を示した図である。メインメモリ2
には、ある任意のアドレスから順に、2次元空間
上の格子点a,b,d,cで定義される長方形2
1の各格子点上の画素情報が、格子点aから始ま
るベクトル22にそつて、格子点dまで格納されて
いる。第4図の画像処理装置は、式(1)によつて格
子点a,b,d,cを変換したフレームメモリ上
の座標A,B,D,Cで定義された平行四辺形6
1に含まれる全画素に対し、ソース画像上の画素
情報を写像する。即ち、画像変換装置5は、まず
ソース画像21上の水平1ラインであるベクトル
22上に含まれる画素データを、変換画像上の座標
Aから座標Bを結ぶベクトル62上の画素に写像す
る処理を行う。CPU1は、1つの水平ライン対
応の変換処理が終る毎に次の水平ライン対応の処
理を画像変換装置5へ指示し、これによつてソー
ス画像上のベクトルcdが変換されて変換画像上
のベクトルCDに写されるまで処理が実行される。
FIG. 6 is a diagram showing the relationship between a source image, which is an image to be converted, and a converted image. Main memory 2
, a rectangle 2 defined by grid points a, b, d, c on a two-dimensional space is created in order from a certain arbitrary address.
Pixel information on each grid point of 1 is stored along a vector 22 starting from grid point a up to grid point d. The image processing device shown in FIG.
Pixel information on the source image is mapped to all pixels included in 1. That is, the image conversion device 5 first converts a vector that is one horizontal line on the source image 21 to
Processing is performed to map pixel data included on 22 to pixels on a vector 62 connecting coordinates A to B on the transformed image. Every time the conversion process for one horizontal line is completed, the CPU 1 instructs the image conversion device 5 to process the next horizontal line, and thereby the vector cd on the source image is converted and the vector cd on the converted image is Processing continues until the image is copied to a CD.

そこで、最初にソース画像上の水平1ライン分
の変換処理を説明する。今長方形21の格子点
a,b間の画素数をL、格子点a,c間の画素数
をM、平行四辺形61の格子点A,B,C,Dの
座標(この座標は、格子点a,b,c,dを前記
第1式に代入して求める。)を各々(xA,yA),
(xB,yB),(xC,yC),(xD,yD)とする。CPU1
は、これらの値から、次のように各レジスタにデ
ータをセツトして第5図に示したDDA8,9の
初期設定を行う。
Therefore, first, the conversion process for one horizontal line on the source image will be explained. Now, the number of pixels between grid points a and b of rectangle 21 is L, the number of pixels between grid points a and c is M, and the coordinates of grid points A, B, C, and D of parallelogram 61 (these coordinates are (x A , y A ),
Let (x B , y B ), (x C , y C ), (x D , y D ). CPU1
From these values, data is set in each register as follows to initialize the DDAs 8 and 9 shown in FIG.

(イ) |(xB−xA)|≧|(yB−yA)|の時(ベクトル
62が45°以下) DDA8の傾きレジスタ102に|(yB−yA
|/|(xB−xA)|≦1をセツトし、方向レジ
スタ501のL端子に出力されるビツトに
“0”をセツトする。
(a) When |(x B −x A )|≧|(y B −y A )| (vector
62 is 45° or less) In the tilt register 102 of DDA8 | (y B −y A )
|/|(x B −x A )|≦1 is set, and the bit output to the L terminal of the direction register 501 is set to “0”.

|(xB−xA)|<|(yB−yA)|の時(ベクトル
62が45°をこえる) DDA8の傾きレジスタ102に|(xB−xA
|/|(yB−yA)|<1をセツトし、方向レジス
タ501のL端子に出力されるビツトに“1”
をセツトする。
When |(x B −x A )|<|(y B −y A )| (vector
62 exceeds 45°) In the tilt register 102 of DDA8 | (x B −x A )
|/|(y B −y A )|<1 is set, and the bit output to the L terminal of the direction register 501 is set to “1”.
Set.

(ロ) xB−xA≧0の時(ベクトル62が第1,4象
限) 方向レジスタ501のX端子に出力されるビ
ツトに“0”をセツトする。
(b) When x B −x A ≧0 (vector 62 is in the 1st and 4th quadrants) Set the bit output to the X terminal of the direction register 501 to “0”.

xB−xA<0の時(ベクトル62が第2,3象
限) 方向レジスタ501のX端子に出力されるビ
ツトに“1”をセツトする。
When x B −x A <0 (vector 62 is in the second and third quadrants), the bit output to the X terminal of direction register 501 is set to “1”.

yB−yA≧0の時(ベクトル62が第1、第2象
限) 方向レジスタ501のY端子に出力されるビ
ツトに“0”をセツトする。
When y B −y A ≧0 (vector 62 is in the first and second quadrants), the bit output to the Y terminal of the direction register 501 is set to “0”.

yB−yA<0の時(ベクトル62が第3、第4象
限) 方向レジスタ501のY端子に出力されるビ
ツトに“1”をセツトする。
When y B -y A <0 (vector 62 is in the third and fourth quadrants), the bit output to the Y terminal of the direction register 501 is set to "1".

(ハ) xAをXカウンタ502にyAをYカウンタ5
03にセツトする。
(c) x A to X counter 502 y A to Y counter 5
Set to 03.

(ニ) α=MAX(|xB−xA|,|yB−yA|)…(2) とした時、 L−1≦α ならばDDA9の傾きレジスタ102に拡大率
の逆数である(L−1)/αをセツトし、方向
レジスタ501のS端子に出力されるビツトに
“0”をセツトする。ここで(2)のαは、8連結
モードで生成された変換画像上のベクトル62の
画素数(この画素数は、変換画像の1ラインの
距離つまり終点座標から始点座標を引いた結果
の画素数であり、始点位置の画素は数えていな
い数字である。)を表わしている。
(d) When α=MAX(|x B −x A |, |y B −y A |)…(2), if L−1≦α, the reciprocal of the magnification rate is stored in the slope register 102 of DDA9. (L-1)/α is set, and the bit output to the S terminal of the direction register 501 is set to “0”. Here, α in (2) is the number of pixels of vector 62 on the converted image generated in 8-concatenation mode (this number of pixels is the distance of one line of the converted image, that is, the number of pixels that is the result of subtracting the starting point coordinates from the ending point coordinates). (The pixel at the starting point is an uncounted number.)

L−1>αの時 DDA9の傾きレジスタ102に縮小率であ
るα/(L−1)をセツトし、方向レジスタ5
01のS端子に出力されるビツトに“1”をセ
ツトする。
When L-1>α, set the reduction ratio α/(L-1) in the slope register 102 of DDA9, and set the direction register 5
The bit output to the S terminal of 01 is set to "1".

(ホ) シーケンス制御回路504内のカウンタに
MAX(L,α)をセツトする。
(e) To the counter in the sequence control circuit 504
Set MAX(L, α).

以上のDDA初期設定が終わると、CPU1はメ
インメモリ2からベクトル22に沿つた画素データ
を順次読み出してFIFOレジスタ4へ書き込み、
画像変換装置5へ起動をかける。但しレジスタ4
の持つワード数がベクトル22の1ライン分のデ
ータ数より小さい時は画像変換装置5への起動を
かけた後に残つた分を転送する。
When the above DDA initial settings are completed, the CPU 1 sequentially reads out pixel data along the vector 22 from the main memory 2 and writes it to the FIFO register 4.
The image conversion device 5 is activated. However, register 4
When the number of words possessed by the vector 22 is smaller than the number of data for one line of the vector 22, the remaining portion after starting up the image conversion device 5 is transferred.

CPU1が画像変換装置5への起動をかけると、
シーケンス制御回路504の起動レジスタがアク
セスされ、これによつて、シーケンス制御回路5
04は、最初の第1タイミングでリード信号50
8を出力し、これはオアゲート10を介してリー
ド信号54として送出される。FIFOレジスタ4
は、リード信号54を受け取ると、次の第2タイ
ミングで、最初に入力されたデータすなわちソー
ス画像の格子点aに対応する画素データをリード
データ45として返送する。
When the CPU 1 activates the image conversion device 5,
The startup register of the sequence control circuit 504 is accessed, thereby causing the sequence control circuit 5
04 is the read signal 50 at the first timing.
8, which is sent out as a read signal 54 via the OR gate 10. FIFO register 4
When it receives the read signal 54, it returns the first input data, that is, the pixel data corresponding to the grid point a of the source image, as the read data 45 at the next second timing.

起動がかけられた次のタイミングで、シーケン
ス制御回路504は初期リード信号508をオフ
とし、代りに変換開始信号507と変換実行信号
505をオンとする。この両信号のオンによつて
DDAが動作を開始する。このうちDDA9の動作
は、次の通りである。もしL−1≦αであれば、
第6図ベクトル22上の画素データよりベクトル62
上の画素データの方が多いので、ベクトル22上の
同一データを複数回使つてベクトル62上の画素に
対応させる必要がある。この時は前述の初期設定
(ニ)によつて方向レジスタ501のS端子が“0”
にセツトされ、これがDDA9のDIR端子へ入力
されるから、第5図のオアゲート105出力は必
ず1で、変換実行信号505がEBL端子へ与え
られていることでXupは必ず1になる。一方。
Yupの方は加算器104からキヤリーが出力され
た時だけ1となる。このDDA9のXupは第1図の
ようにフレームメモリ6(変換画像)への書き込
み信号WEBLとなり、YupはFIFOレジスタ4か
らの次の画素データのリード信号となるから、今
の場合は必ずフレームメモリ6への書き込みが行
われ(Xup=1),FIFOレジスタ4からの読み出
しはキヤリイ信号が1になつた時だけとなる。キ
ヤリイ信号が0の時は次のソース画像のデータは
リードされずに、前回にリードされたデータがそ
のまま次回にもフレームメモリ6、つまりベクト
ル62上のデータとして書き込まれる。このように
してDDA9は、ベクトル22上の少ないデータを
使つてベクトル62上の全画素にデータを与える制
御を行う。逆にL−1>αの時は方向レジスタの
S端子が“1”に初期設定されるから、今度は
Yupが必ず1になつて画素数の多いベクトル22は
必ずFIFOレジスタ4からリードされ、逆にXup
はキヤリイ信号が1の時のみでこの時のみフレー
ムメモリ6への書き込みが行われ、キヤリイが0
の時はベクトル22上からリードしたデータはすて
られる。このようにDDA9は、ベクトル22上の
多いデータを、より少ない画素数のベクトル62上
へ与える制御を行う。
At the next timing after activation, the sequence control circuit 504 turns off the initial read signal 508 and turns on the conversion start signal 507 and conversion execution signal 505 instead. By turning on both signals,
DDA starts working. Among these, the operation of DDA9 is as follows. If L-1≦α,
Figure 6 Vector 62 from the pixel data on vector 22
Since there is more pixel data on the top, it is necessary to use the same data on vector 22 multiple times to correspond to the pixels on vector 62. At this time, use the initial settings mentioned above.
Due to (d), the S terminal of the direction register 501 is “0”
Since this is input to the DIR terminal of the DDA 9, the output of the OR gate 105 in FIG. 5 is always 1, and since the conversion execution signal 505 is applied to the EBL terminal, X up is always 1. on the other hand.
Y up becomes 1 only when the adder 104 outputs a carry. This DDA9's X up becomes the write signal WEBL to the frame memory 6 (converted image) as shown in Figure 1, and Y up becomes the read signal for the next pixel data from the FIFO register 4, so in this case it is always Writing to the frame memory 6 is performed (X up =1), and reading from the FIFO register 4 is performed only when the carry signal becomes 1. When the carry signal is 0, the data of the next source image is not read, and the previously read data is written as data on the frame memory 6, that is, the vector 62, the next time as well. In this way, the DDA 9 performs control to provide data to all pixels on the vector 62 using a small amount of data on the vector 22. Conversely, when L-1>α, the S terminal of the direction register is initially set to “1”, so this time
Y up is always 1, vector 22 with a large number of pixels is always read from FIFO register 4, and conversely
is only when the carry signal is 1. Writing to frame memory 6 is performed only at this time, and the carry signal is 0.
When , the data read from vector 22 is discarded. In this way, the DDA 9 controls giving more data on the vector 22 to the vector 62 with a smaller number of pixels.

一方DDA8は、DDA9がXup=1を出力して
フレームメモリ6への書き込みを指示した時、こ
の信号をEBL端子へ受けてイネーブルとなり、
Xup,Yupを出力する。この出力は、前述の初期
設定(イ),(ロ)により、ベクトル62のx,y成分の内
長い方に対応するXup、又はYupを必ず1とし
(方向レジスタL端子のセツト)、短い方のXup
はYupはキヤリイ信号1の時のみ1とし、これら
Xup,Yupによつて対応するカウンタ502,5
03の更新を行う。カウンタ502,503は初
期設定(ハ)によつてA点の座標(xA,yA)を与え
られているから、上記カウンタの更新によつてベ
クトル62のx,y成分の内長い方は必ず1更新さ
れ、短い方はキヤリイ1の時のみ更新されてベク
トル62のa点の次のアドレスが設定される。これ
はDDA8の8連結モードでのA,B間を補間す
る座標を発生する動作であり、この発生された座
標に、前述のDDA9の制御によつてFIFOからの
画素データが巻き込まれる。
On the other hand, when DDA9 outputs X up = 1 and instructs writing to frame memory 6, DDA8 receives this signal to the EBL terminal and becomes enabled.
Outputs X up and Y up . This output is made by setting X up or Y up corresponding to the longer of the x and y components of vector 62 to 1 (setting the direction register L terminal) according to the initial settings (a) and (b) above. The shorter X up or Y up is 1 only when the carry signal is 1, and these
Counters 502 and 5 corresponding to X up and Y up
Update 03. Since the counters 502 and 503 are given the coordinates (x A , y A ) of point A by the initial setting (c), by updating the counters, the longer of the x and y components of the vector 62 is It is always updated by 1, and the shorter one is updated only when it is a carry 1, and the next address of point a of vector 62 is set. This is an operation of generating coordinates for interpolating between A and B in the 8-connection mode of the DDA8, and pixel data from the FIFO is involved in the generated coordinates under the control of the DDA9 described above.

以上で1つの画素データのリード/ライトが終
わると、シーケンス制御回路504は変換開始信
号507をオフとして以降は各DDA8,9内の
セレクタ103に誤差レジスタ101の内容を選
択させる状態とし、また初期設定(ホ)でセツトされ
た値つまり1ライン処理の画像数を−1して次の
画素の変換処理へ進む。
When the reading/writing of one pixel data is completed in the above manner, the sequence control circuit 504 turns off the conversion start signal 507, and thereafter makes the selector 103 in each DDA 8, 9 select the contents of the error register 101, and also The value set in setting (e), that is, the number of images for one line processing, is decreased by 1 and the process proceeds to the next pixel conversion process.

以上の動作をくり返して制御回路504は、内
蔵カウンタの値が0になると、変換実行信号50
5もオフとし、1ライン分の変換処理を終了す
る。
By repeating the above operations, when the value of the built-in counter becomes 0, the control circuit 504 outputs the conversion execution signal 50.
5 is also turned off, and the conversion process for one line is completed.

以上の1ライン分の変換処理が1回の画像変換
装置5への起動で行われて終了すると、CPU1
は2番目の水平ラインの変換処理を画像変換装置
5へ指示するが、この時には第6図のベクトル62
の位置が変るのと等価であるから、その始点、終
点の座標(xA,yA)等を変えて、改めて初期設
定を行う。この場合、第2水平ライン、更にはそ
の先のソース画像上の水平ラインに対応する変換
画像上の始点は、第6図AC上にあるが、正確に
は直線ACに近い格子点(整数座標の点)を始点
として定めねばならず、これは丁度ベクトル62対
応の格子点を2個のDDAで8連結モードで生成
したのと同様な処理を必要とする。
When the above conversion process for one line is completed by starting the image conversion device 5 once, the CPU 1
instructs the image conversion device 5 to convert the second horizontal line, but at this time the vector 62 in FIG.
This is equivalent to changing the position of , so change the coordinates (x A , y A ) of the start point and end point, etc., and perform initial settings again. In this case, the starting point on the converted image corresponding to the second horizontal line and the horizontal line beyond it on the source image is on AC in Figure 6, but more precisely, it is a grid point close to the straight line AC (integer coordinates ) must be determined as the starting point, and this requires processing similar to generating grid points corresponding to vector 62 using two DDAs in 8-connection mode.

第7図は第6図の変換画像61を拡大したもの
で、第1水平ライン22に対しては前述のように
画素63に対応する格子点からベクトル62方向へ
の変換処理が行われた。ソース画像の第2の水平
線以降の変換処理に於ける始点は、本実施例では
4連結モードで連結した格子点から成るようにす
る。このように始点を4連結とし、各ライン対応
の格子点は前述のように8連結モードとすると、
変換画像のABDC内の全格子点にもれなくデー
タが書き込まれてぬけが生じないからである。例
えば、第8図ロにおいて、変換したラインが右上
がり45度の直線とし、各ラインが8連結モードつ
まり斜めの画素の連続を許すモードの場合、各始
点も8連結モードであると、各ラインの始点座標
は(−2,2),(−1,1),(0,0)となる。
しかし、これらの始点から右上がりの直線を斜め
画素の連続のみで描画すると、座標(−1,2),
(0,3),(1,4)のライン、(0,1),(1,
2),(2,3)のラインの各画素が抜けてしまう
ことになる。しかるに、始点の連結モードを4連
結モードにすると、座標(−1,2),(0,1)
も始点となるため、画素抜けは生じない。そして
4連結補間はDDA8,Xカウンタ502,Yカ
ウンタ503による8連結補間と同様な構成で
X,Y各カウンタが同時に1更新されないように
構成すればよい。即ち両カウンタが同時に更新さ
れなければ、第3図ロのb,d,f,h方向の隣
接格子点は生じないので、第3図イのように4連
結になる。このような4連結補間はハードウエア
で構成してもよいが、本実施例においては、
CPU1のソフトウエアによつてこれを実現する
ものとする。但しこの処理内容は、ハードウエア
による前述の8連結補間とほぼ同様なので省略す
る。
FIG. 7 is an enlarged version of the converted image 61 in FIG. 6, in which the first horizontal line 22 has been converted from the grid point corresponding to the pixel 63 in the direction of the vector 62 as described above. In this embodiment, the starting points in the conversion process after the second horizontal line of the source image are made up of grid points connected in a 4-connection mode. If the starting point is set to 4 connections in this way, and the grid points corresponding to each line are set to 8 connection mode as described above, then
This is because data is written to all grid points in ABDC of the converted image without omission. For example, in Figure 8B, if the converted line is a straight line with an upward angle of 45 degrees to the right, and each line is in 8-connection mode, that is, a mode that allows diagonal pixel succession, and each starting point is also in 8-connection mode, each line The starting point coordinates of are (-2, 2), (-1, 1), (0, 0).
However, if you draw a straight line upward to the right from these starting points using only a series of diagonal pixels, the coordinates (-1, 2),
(0,3), (1,4) line, (0,1), (1,
2), each pixel in the lines (2, 3) will be missed. However, if the starting point connection mode is set to 4 connection mode, the coordinates (-1, 2), (0, 1)
Also serves as the starting point, so no missing pixels occur. The 4-concatenated interpolation may have the same configuration as the 8-concatenated interpolation using the DDA 8, the X counter 502, and the Y counter 503, so that the X and Y counters are not updated by 1 at the same time. That is, unless both counters are updated at the same time, adjacent grid points in the b, d, f, and h directions shown in FIG. 3B will not occur, resulting in 4 connections as shown in FIG. 3A. Although such four-connected interpolation may be configured by hardware, in this embodiment,
This is assumed to be realized by the software of CPU1. However, since the contents of this process are almost the same as the above-mentioned 8-connected interpolation using hardware, a description thereof will be omitted.

更に、変換画像上の第2ライン以降の始点が上
述のように定められて画像変換装置への初期設定
が行われたのち、そのとき読み出すソース画像上
の水平ラインは以下により決定される。まず、ソ
ース画像上の長方形21のac間の画素数はMで
あり、変換画像上の平行四辺形61の格子点Aと
C間の画素数Nは、4連結であるので、 N=|xC−xA|+|yB−yA|+1 …(3) である。従つて変換画像の第ライン目を、ソー
ス画像の何ライン目の画素列から生成するかを決
める処理時には、ソース画像の格子点aから、 0.5+(M−1)/(N−1) …(4) を整数に丸めたライン数分だけ下のラインとして
決めこれをCPU1が読み出してFIFOレジスタ4
に転送すればよい。
Furthermore, after the starting points of the second and subsequent lines on the converted image are determined as described above and the initial settings of the image conversion apparatus are performed, the horizontal line on the source image to be read at that time is determined as follows. First, the number of pixels between ac of rectangle 21 on the source image is M, and the number of pixels N between lattice points A and C of parallelogram 61 on the converted image is 4-connected, so N=|x C −x A |+|y B −y A |+1 …(3). Therefore, when determining from which pixel column of the source image the first line of the converted image is generated, from the grid point a of the source image, 0.5+(M-1)/(N-1)... (4) is rounded to an integer and is set as the lower line. CPU1 reads this and stores it in FIFO register 4.
You can transfer it to

このようにして、変換画像上の第2ライン以降
の始点とその時FIFOレジスタ4へセツトすべき
ソース画像上のラインをCPU1が決定し、画像
変換装置5へ初期設定をしたのち起動をかける、
という動作を順次くり返せばソース画像21の変
換画像61への変換処理が完了する。
In this way, the CPU 1 determines the starting point of the second and subsequent lines on the converted image and the line on the source image that should be set in the FIFO register 4 at that time, initializes the image conversion device 5, and then activates it.
By sequentially repeating this operation, the conversion process of the source image 21 into the converted image 61 is completed.

以上の動作による線形変換の具体例を第8図に
示す。同図イのソース画像が同図ロのように変換
される。ソース画像の格子点(0,0),(0,
3)を第1式で線形変換して得た変換座標(0,
0),(−2,2)間の画素数Nは、第3式から、
N=2+2+1=5となる。この各画素の座標
は、第8図ロの(0,0),(0,1),(−1,
1),(−1,2),(−2,2)であり、これらを
始点としてラインを描画することになる。次に、
第4式より、これらの各始点画素から変換を始め
るソース画像のラインをどのラインにするかを決
める。ソース画像のライン数Mは“4”であるの
で、変換画像の(0,0)を始点とする最初のラ
イン(0番目のライン)は、 第0ライン:0.5+0×3/4=0 となり、以下、同様に、 第1ライン:0.5+1×3/4=1 第2ライン:0.5+2×3/4=2 第3ライン:0.5+3×3/4=2 第4ライン:0.5+4×3/4=3 となる。つまり、始点(0,0)の変換ライン
は、ソース画像のY=0のライン(画素13,14,
15,16)を用いて生成し、始点(0,1)の変換
ラインは、ソース画像のY=1のライン(画素
9,10,11,12)を用いて生成する。始点(−
1,1)及び(−1,2)の各変換ラインは共に
ソース画像のY=2のライン(画素5,6,7,
8)を用いて生成し、始点(−2,2)の変換ラ
インはソース画像のY=3のライン(画素1,
2,3,4)を用いて生成する。以上の動作によ
り、点線で囲まれた変換画像のエリア内のすべて
の画素に画素データが与えられることになる。
FIG. 8 shows a specific example of linear transformation based on the above operation. The source image in A of the same figure is converted as shown in B of the same figure. Source image grid points (0,0), (0,
3) using the first equation to obtain the transformed coordinates (0,
The number of pixels N between 0) and (-2, 2) is given by the third equation,
N=2+2+1=5. The coordinates of each pixel are (0,0), (0,1), (-1,
1), (-1, 2), (-2, 2), and a line will be drawn using these as starting points. next,
From the fourth equation, it is determined which line of the source image to start conversion from each of these starting point pixels. Since the number of lines M in the source image is "4", the first line (0th line) starting at (0,0) of the converted image is 0th line: 0.5 + 0 x 3/4 = 0. , and so on. 1st line: 0.5 + 1 x 3/4 = 1 2nd line: 0.5 + 2 x 3/4 = 2 3rd line: 0.5 + 3 x 3/4 = 2 4th line: 0.5 + 4 x 3 /4=3. In other words, the conversion line at the starting point (0,0) is the line at Y=0 in the source image (pixels 13, 14,
15, 16), and the conversion line at the starting point (0, 1) is generated using the Y=1 line (pixels 9, 10, 11, 12) of the source image. Starting point (−
1, 1) and (-1, 2) are both the Y=2 line of the source image (pixels 5, 6, 7,
8), and the conversion line at the starting point (-2, 2) is the line at Y=3 of the source image (pixels 1, 2).
2, 3, 4). Through the above operations, pixel data is given to all pixels within the area of the converted image surrounded by the dotted line.

なお、以上の説明では変換画像上の1ラインは
8連結モード連結され、各ラインの始点は4連結
モードで連結されるようにしたが、これを逆にし
て1ライン上は4連結モードとし、始点間は8連
結モードとしても変換画像上の全格子点にデータ
が与えられることは明らかである。
Note that in the above explanation, one line on the converted image is connected in 8-connection mode, and the start point of each line is connected in 4-connection mode, but this is reversed, and one line on the converted image is connected in 4-connection mode. It is clear that data is given to all grid points on the converted image even in the 8-connected mode between the starting points.

〔発明の効果〕〔Effect of the invention〕

以上の実施例によれば、ソース画像の各ライン
上のデータはランダムではなく順番に変換処理さ
れるので、FIFOレジスタの利用が可能となり、
CPU1がメインメモリ2からソース画像21を
読み出してFIFOレジスタ4に転送し、画像変換
装置5のレジスタ等に与えるデータを計算する処
理と、画像変換装置5がFIFOレジスタ4を読み
出し、フレームメモリ6に変換画像を書き込む処
理とを並列に実行できるから、高速な線形変換処
理が行えるという効果があり、しかも変換画像上
の全画素にデータを与えられる。また、画像変換
装置5は、フレームメモリ6の座標系における2
点間を補間してFIFOレジスタ4からの読出しデ
ータを書き込む処理が行えるから、他の目的での
通常の直線発生装置としても使うことができ、ハ
ードウエアの使用効果が良いという利点もある。
According to the above embodiment, the data on each line of the source image is converted sequentially rather than randomly, so it is possible to use the FIFO register.
The CPU 1 reads the source image 21 from the main memory 2, transfers it to the FIFO register 4, and calculates the data to be given to the registers of the image conversion device 5, and the image conversion device 5 reads the FIFO register 4 and transfers it to the frame memory 6. Since the process of writing the converted image can be executed in parallel, there is an effect that high-speed linear conversion processing can be performed, and data can be applied to all pixels on the converted image. Further, the image conversion device 5 is configured to convert 2 in the coordinate system of the frame memory 6.
Since it is possible to interpolate between points and write the data read from the FIFO register 4, it can also be used as a normal straight line generator for other purposes, and has the advantage of being efficient in terms of hardware usage.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の特徴とする画像変換装置の一
実施例を示す図、第2図は線形変換の説明図、第
3図は4連結及び8連結の詳細図、第4図は本発
明の画像処理装置の全体構成を示す図、第5図は
デジタル微分解析機(DDA)の内部構成を示す
図、第6図及び第7図は線形変換処理の処理方法
の説明図、第8図は画像の変換例を示す図であ
る。 1……CPU、2……メインメモリ、3……バ
ス、4……FIFOレジスタ、5……画像変換装置、
6……フレームメモリ、7……デイスプレイ、8
……DDA、9……DDA、501……方向レジス
タ、502,503……カウンタ、504……シ
ーケンス制御回路。
FIG. 1 is a diagram showing an embodiment of an image conversion device that is a feature of the present invention, FIG. 2 is an explanatory diagram of linear transformation, FIG. 3 is a detailed diagram of 4-connection and 8-connection, and FIG. 4 is a diagram of the present invention. Figure 5 is a diagram showing the internal configuration of the digital differential analyzer (DDA), Figures 6 and 7 are explanatory diagrams of the linear transformation processing method, and Figure 8 is a diagram showing the overall configuration of the image processing device. FIG. 2 is a diagram showing an example of image conversion. 1... CPU, 2... Main memory, 3... Bus, 4... FIFO register, 5... Image conversion device,
6...Frame memory, 7...Display, 8
...DDA, 9 ...DDA, 501 ... Direction register, 502, 503 ... Counter, 504 ... Sequence control circuit.

Claims (1)

【特許請求の範囲】 1 ソース画像を囲む所定格子点に対し平行移
動、拡大、縮小、回転のうちの1つ又は複数の組
み合わせの線形変換処理を施して前記所定格子点
の変換格子点位置を求め、前記ソース画像の各画
素を前記変換格子点で囲まれる変換領域に一ライ
ン単位で写像して変換画像を生成し画面に表示す
る画像処理装置において、画素の隣接関係が上下
左右及び斜め方向のいずれかで隣接するモードを
8連結モードとし、上下左右方向のみで隣接する
モードを4連結モードとした場合、変換後の各ラ
インを8連結モードで生成するときは変換後の隣
接する各ラインの始点を4連結モードで生成し、
変換後の各ラインを4連結モードで生成するとき
は変換後の隣接する各ラインの始点を8連結モー
ドで生成する手段と、ソース画像一ラインの画素
数に対して変換後の一ラインの画素数が多い場合
にソース画像の当該ラインの1つ又は複数の画素
の夫々を変換後の一ラインの連続する複数画素に
写像して変換後の当該ラインの全画素をソース画
像の当該ラインの画素に対応させる手段とを備え
ることを特徴とする画像処理装置。 2 ソース画像を囲む所定格子点に対し平行移
動、拡大、縮小、回転のうちの1つ又は複数の組
み合わせの線形変換処理を施して前記所定格子点
の変換格子点位置を求め、前記ソース画像の各画
素を前記変換格子点で囲まれる変換領域に一ライ
ン単位で写像して変換画像を生成し画面に表示す
る画像処理装置において、画素の隣接関係が上下
左右及び斜め方向のいずれかで隣接するモードを
8連結モードとし、上下左右方向のみで隣接する
モードを4連結モードとした場合、変換後の各ラ
インを8連結モードで生成するときは変換後の隣
接する各ラインの始点を4連結モードで生成し、
変換後の各ラインを4連結モードで生成するとき
は変換後の隣接する各ラインの始点を8連結モー
ドで生成する手段と、ソース画像一ラインの画素
数に対して変換後の一ラインの画素数が少ない場
合にこの少ない画素数だけソース画像の当該ライ
ンの画素データを破棄し残りの画素を変換後のラ
インに対応させる手段とを備えることを特徴とす
る画像処理装置。
[Scope of Claims] 1. Linear transformation processing of one or more combinations of translation, enlargement, reduction, and rotation is performed on predetermined lattice points surrounding a source image to obtain transformed lattice point positions of the predetermined lattice points. In an image processing device that generates a converted image by mapping each pixel of the source image line by line to a conversion area surrounded by the conversion grid points and displays the converted image on the screen, the adjacency relationship of pixels is determined in the vertical, horizontal, and diagonal directions. If the adjacent mode is set to 8-connection mode in any of Generate the starting point of in 4-connection mode,
When each line after conversion is generated in 4-connection mode, means for generating the start point of each adjacent line after conversion in 8-connection mode, and the number of pixels in one line after conversion for the number of pixels in one line of the source image. If the number of pixels is large, each of one or more pixels in the line of the source image is mapped to a plurality of consecutive pixels of the line after conversion, and all pixels of the line after conversion are converted into pixels of the line of the source image. An image processing device characterized by comprising: means for making it compatible with the above. 2 Perform linear transformation processing of one or more combinations of translation, enlargement, reduction, and rotation on predetermined lattice points surrounding the source image to obtain the transformed lattice point positions of the predetermined lattice points, and In an image processing device that maps each pixel line by line to a conversion area surrounded by the conversion grid points to generate a converted image and displays it on the screen, the adjacency of pixels is that they are adjacent in either the vertical, horizontal, or diagonal directions. If the mode is set to 8-connected mode and the mode that is adjacent only in the vertical and horizontal directions is set to 4-connected mode, when each line after conversion is generated in 8-connected mode, the starting point of each adjacent line after conversion is set to 4-connected mode. Generate with
When each line after conversion is generated in 4-connection mode, means for generating the start point of each adjacent line after conversion in 8-connection mode, and the number of pixels in one line after conversion for the number of pixels in one line of the source image. An image processing apparatus comprising means for discarding the pixel data of the line of the source image by the small number of pixels and making the remaining pixels correspond to the line after conversion.
JP61080109A 1986-04-09 1986-04-09 Image processor Granted JPS62237581A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61080109A JPS62237581A (en) 1986-04-09 1986-04-09 Image processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61080109A JPS62237581A (en) 1986-04-09 1986-04-09 Image processor

Publications (2)

Publication Number Publication Date
JPS62237581A JPS62237581A (en) 1987-10-17
JPH0525143B2 true JPH0525143B2 (en) 1993-04-12

Family

ID=13709016

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61080109A Granted JPS62237581A (en) 1986-04-09 1986-04-09 Image processor

Country Status (1)

Country Link
JP (1) JPS62237581A (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0679335B2 (en) * 1986-06-13 1994-10-05 富士ゼロックス株式会社 Image rotation device
JPH0661103B2 (en) * 1986-07-22 1994-08-10 日本電気株式会社 Rotational figure generator
JPS63116193A (en) * 1986-11-05 1988-05-20 日本電信電話株式会社 Affine transformation system for image
JPH02287684A (en) * 1989-04-28 1990-11-27 Ibm Japan Ltd Device and method for image processing

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60230273A (en) * 1984-04-27 1985-11-15 Matsushita Electric Ind Co Ltd Expansion/reduction memory device
JPS60251474A (en) * 1984-05-28 1985-12-12 Matsushita Electric Ind Co Ltd Picture data processor

Also Published As

Publication number Publication date
JPS62237581A (en) 1987-10-17

Similar Documents

Publication Publication Date Title
EP0360155A2 (en) Image transformation method and device
JPH0628485A (en) Texture address generator, texture pattern generator, texture plotting device and texture address generating method
JPS60239796A (en) Circuit and apparatus for altering data in display memory
US5263135A (en) Image processing apparatus
JPH1049666A (en) Fragment generator and fragment generating method
JP4532746B2 (en) Method and apparatus for stretch blitting using a 3D pipeline
JPH0525143B2 (en)
JPH0481231B2 (en)
US5745123A (en) Method for resizing an image by a factor of two
JP3154741B2 (en) Image processing apparatus and system
JP3818951B2 (en) Data array conversion apparatus, display control apparatus using the same, and data array conversion method
US6489967B1 (en) Image formation apparatus and image formation method
KR100283071B1 (en) Fast Texture Mapping Method
JPS60129889A (en) Image processing device
JP2753349B2 (en) Arbitrary angle rotation image data input / output method, input / output circuit thereof, and electronic file device using the same
JPS5822473A (en) Picture processor
JP4482996B2 (en) Data storage apparatus and method and image processing apparatus
EP0917102A2 (en) Free deformation of image data
JPH1153573A (en) Three-dimensional image processing apparatus and video window generation method
JP4661112B2 (en) Image information processing apparatus and image information processing method
JPH0229834A (en) Image processor
JP3358891B2 (en) Z-value perspective transformation processing method and image processing apparatus
JPS6349983A (en) Data processor
JPS6349972A (en) data processing equipment
JPS63296089A (en) Image display device

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees