JPS63116193A - Affine transformation system for image - Google Patents
Affine transformation system for imageInfo
- Publication number
- JPS63116193A JPS63116193A JP61261928A JP26192886A JPS63116193A JP S63116193 A JPS63116193 A JP S63116193A JP 61261928 A JP61261928 A JP 61261928A JP 26192886 A JP26192886 A JP 26192886A JP S63116193 A JPS63116193 A JP S63116193A
- Authority
- JP
- Japan
- Prior art keywords
- pixel
- image
- output
- line segment
- original
- 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.)
- Pending
Links
- 230000009466 transformation Effects 0.000 title claims description 32
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 title claims description 28
- 238000000034 method Methods 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 10
- 238000011426 transformation method Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 9
- 238000000844 transformation Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Landscapes
- Image Processing (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。(57) [Abstract] This bulletin contains application data before electronic filing, so abstract data is not recorded.
Description
【発明の詳細な説明】
(発明の属する技術分野)
本発明は、デジタル画像データを記憶し表示するディス
プレイ装置等において、画像データの拡大縮小、回転、
平行移動等を行う画像のアフィン変換方式に関するもの
である。Detailed Description of the Invention (Technical Field to which the Invention Pertains) The present invention relates to a display device that stores and displays digital image data.
This relates to an affine transformation method for images that performs parallel translation, etc.
(従来の技術)
一般に画像データの拡大縮小、回転等を行うアフィン変
換では、変換画像の各画素データを決定するために、ア
フィン変換を定める変換マトリクスに従って各変換画素
毎に対応する原画像上の各画素の座標値を計算する必要
があり、このため画像全体の変換処理時間が長くなると
いう問題がある。(Prior Art) In general, in affine transformation that performs scaling, rotation, etc. of image data, in order to determine each pixel data of the transformed image, a transformation matrix that defines the affine transformation is used to determine the corresponding pixel data on the original image for each transformed pixel. Since it is necessary to calculate the coordinate values of each pixel, there is a problem in that the conversion processing time for the entire image becomes long.
従来より、このような問題に対して、アフィン変換の中
でも拡大縮小1回転といった基本的な変換について、変
換の特殊性を利用した高速化手法が幾つか提案されてい
る。 。Conventionally, in response to such problems, several speed-up methods have been proposed that take advantage of the special characteristics of transformation for basic transformations such as scaling and one rotation among affine transformations. .
例えば、拡大縮小率、或いは回転に伴う縦横方向への変
分率を原画像の座標データに各座標軸に沿って逐次加算
することにより画素毎の座標変換を省略する方法(文献
1)、
格子座標の周期性に着目して、変換に必要な数値を予め
テーブルに格納し、これを逐次参照することにより画像
の拡大縮小を高速化する方法(文献2)、
回転を2つの斜交軸変換に分解し、この斜行軸変換を予
めテーブルに格納しておいた変換に必要な数値を参照し
て高速に行う方法(文献3)である。For example, a method of omitting coordinate transformation for each pixel by sequentially adding the scaling ratio or the variation rate in the vertical and horizontal directions due to rotation to the coordinate data of the original image along each coordinate axis (Reference 1), grid coordinate Focusing on the periodicity of , a method of accelerating image scaling by storing the values necessary for conversion in advance in a table and sequentially referencing this (Reference 2), converting rotation into two oblique axes This is a method (Reference 3) that decomposes and performs this oblique axis conversion at high speed by referring to numerical values necessary for conversion stored in a table in advance.
しかし、これらの方式では拡大縮小1回転、平行移動を
合成した任意のアフィン変換については、与えられた変
換を幾つかの基本変換に分解し、原画像に対して多段階
の変換処理を施さなければならないという問題がある。However, in these methods, for arbitrary affine transformations that combine scaling, rotation, and translation, it is necessary to decompose the given transformation into several basic transformations and perform multi-step transformation processing on the original image. There is a problem that it must be done.
また、これらの方式では、いずれも変換対象となる原画
像の形状が座標軸に平行な矩形であることを前提として
いるが、一般にアフィン変換後の画像の形状は平行四辺
形となるため、これに更に別のアフィン変換を施す場合
、或いは置換処理対象となる画像領域が座標軸に対して
傾いた長方形である場合等を考慮すると、処理対象とな
る原画像の形状が制約されるこという問題がある。In addition, all of these methods assume that the shape of the original image to be transformed is a rectangle parallel to the coordinate axes, but since the shape of the image after affine transformation is generally a parallelogram, this is not possible. When performing another affine transformation, or when considering cases where the image area to be replaced is a rectangle tilted with respect to the coordinate axis, there is a problem that the shape of the original image to be processed is restricted. .
〔文献1〕川上他「画像プロセッサMN8614の処理
方式」情報処理学会計算機アーキテク
チャ研究会資料、昭和58−11.51−4〔文献2〕
田畑他「格子座標の周期性を利用した画像拡大縮小の高
速化方式」情報処理
学会論文誌、 1983 Vol、24 No、5〔文
献3〕田畑他「ラスタ走査とテーブル参照による画像回
転の高速処理」電子通信学
会論文誌、 1986 Vol、I J69(発明の目
的)
本発明は、上記問題点を解決すべくなされたもので、任
意の平行四辺形で定義されたデジタル画像データを、与
えられた任意のアフィン変換について一度で高速に処理
する手段を提供することを目的とする。[Reference 1] Kawakami et al. "Processing method of image processor MN8614" Information Processing Society of Japan Computer Architecture Study Group Materials, November 51-4, 1982 [Reference 2]
Tabata et al. “High-speed image scaling method using periodicity of lattice coordinates” Transactions of the Information Processing Society of Japan, 1983 Vol. 24 No. 5 [Reference 3] Tabata et al. “High-speed processing of image rotation using raster scanning and table reference” ” Journal of the Institute of Electronics and Communication Engineers, 1986 Vol. The purpose of this invention is to provide a means for processing arbitrary affine transformations at once and at high speed.
(発明の構成)
(発明の特徴と従来の技術との差異)
本発明は、デジタル画像データのアフィン変換において
、原画像を定める平行四辺形の3点の座標値、及びその
3点をアフィン変換して得られる出力画像を定義する3
点の座標値とから、出力画像の第1点を始点とし第2点
を終点とする線分上の各画素について、1つ始点寄りの
出力画素に対するその出力画素の相対座標値、及び1つ
始点寄りの出力画素が対応する原画素に対するその出力
画素が対応する原画素の相対座標値を算出し記憶し、ま
た出力画像の第2点を始点とし第3点を終点とする線分
上の各画素について、1つ始点寄りの出力画素に対する
その出力画素の相対座標値、及び1つ始点寄りの出力画
素が対応する原画素に対するその出力画素が対応する原
画素の相対座標値を算出し記憶することにより、原画像
及び出力画像の双方を、各々の第1点と第2点を結ぶ線
分 ・上の各画素を始点として第2点と第3点とを結
ぶ線分に平行な線分画像の集合と見做し、画像データの
アフィン変換を以下に示す様な線分画像のアフィン変換
の繰り返しにより処理することを特徴とする。(Structure of the Invention) (Characteristics of the Invention and Differences from the Prior Art) In affine transformation of digital image data, the present invention provides affine transformation of the coordinate values of three points of a parallelogram that defines an original image, and of the three points. Define the output image obtained by
From the coordinate values of the point, for each pixel on the line segment with the first point as the starting point and the second point as the ending point in the output image, calculate the relative coordinate value of that output pixel with respect to the output pixel one position closer to the starting point, and one Calculates and stores the relative coordinate values of the original pixel to which the output pixel near the starting point corresponds to the original pixel to which the output pixel corresponds, and also calculates and stores the relative coordinate values of the original pixel to which the output pixel near the starting point corresponds, and For each pixel, calculate and store the relative coordinate value of the output pixel with respect to the output pixel one position closer to the starting point, and the relative coordinate value of the original pixel to which the output pixel corresponds with respect to the original pixel to which the output pixel one position closer to the starting point corresponds. By doing this, both the original image and the output image are divided into a line segment connecting the first point and the second point.・A line parallel to the line segment connecting the second point and the third point starting from each pixel above. It is characterized in that the image data is treated as a set of segment images, and the affine transformation of the image data is processed by repeating the affine transformation of line segment images as shown below.
即ち、アフィン変換画像の出力においては、出力面像及
び原画像の第1点と第2点とを結ぶ線分上の各画素を始
点として、第2点と第3点を結ぶ線分に並行な線分上の
各画素毎に、出力画素に対応する原画素の画像データを
その出力画素に設定する処理を繰り返すものとし、処理
対象となる線分上の出力画素及び原画素の座標値は、第
2点から第3点へ向かう方向に始点、から順番に現在処
理中の画素の座標値に次の画素の相対座標を逐次加算す
ることにより求め、各処理対象となる線分の始点座標は
、第1点から第2点へ向かう方向に現在処理中の線分の
始点座標に次の線分の始点の相対座標値を逐次加算して
求めるものである。That is, in outputting an affine transformed image, each pixel on the line segment connecting the first point and the second point of the output surface image and the original image is used as the starting point, and the pixels parallel to the line segment connecting the second point and the third point are For each pixel on a line segment, the process of setting the image data of the original pixel corresponding to the output pixel as the output pixel is repeated, and the coordinate values of the output pixel and original pixel on the line segment to be processed are , starting from the starting point in the direction from the second point to the third point, and sequentially adding the relative coordinates of the next pixel to the coordinate values of the pixel currently being processed, and the starting point coordinates of each line segment to be processed. is obtained by sequentially adding the relative coordinate value of the starting point of the next line segment to the starting point coordinate of the line segment currently being processed in the direction from the first point to the second point.
(実施例)
以下、図面を用いて本発明の一実施例について説明する
。(Example) Hereinafter, an example of the present invention will be described using the drawings.
第1図は本発明の一実施例を説明するための図である。FIG. 1 is a diagram for explaining one embodiment of the present invention.
同図において、1は原画像を定義する3点の座標値を格
納する原画像定義点座標レジスタ。In the figure, reference numeral 1 denotes an original image definition point coordinate register that stores the coordinate values of three points that define the original image.
2は出力画像を定義する3点の座標値を格納する出力画
像定義点座標レジスタ。2 is an output image definition point coordinate register that stores the coordinate values of three points that define the output image.
3は出力画像定義点座標レジスタ2に格納された座標デ
ータに基づき出力線分画像の始点を除いた画素数を算出
する出力線分画素数算出処理部。3 is an output line segment pixel number calculation processing unit that calculates the number of pixels of the output line segment image excluding the starting point based on the coordinate data stored in the output image definition point coordinate register 2;
4は相対座標値を算出する相対座標算出処理部、5はア
フィン変換処理を司る制御部。4 is a relative coordinate calculation processing unit that calculates relative coordinate values, and 5 is a control unit that controls affine transformation processing.
8.6はそれぞれ出力画像の第1点を始点とし第2点を
終点とする線分上の各画素について、1つ始点寄りの出
力画素に対するその出力画素の相対座標値、及び1つ始
点寄りの出力画素が対応する原画素に対するその出力画
素が対応する原画素の相対座標値を記憶するレジスタで
あり。8.6 is the relative coordinate value of the output pixel with respect to the output pixel that is one position closer to the start point, and the relative coordinate value of that output pixel that is one position closer to the start point, for each pixel on the line segment whose start point is the first point and whose end point is the second point of the output image. This register stores the relative coordinate values of the original pixel to which the output pixel corresponds with respect to the original pixel to which the output pixel corresponds.
6は原線分画像12相対座標テーブルレジスタ、8は出
力線分画像12相対座標テーブルレジスタを示す。Reference numeral 6 indicates an original line segment image 12 relative coordinate table register, and reference numeral 8 indicates an output line segment image 12 relative coordinate table register.
9.7は出力画像の第2点を始点とし第3点を終点とす
る線分上の各画素について、1つ始点寄りの出力画素に
対するその出力画素の相対座標値、及び1つ始点寄りの
出力画素が対応する原画素に対するその出力画素が対応
する原画素の相対座標値を記憶するレジスタであり。9.7 is the relative coordinate value of the output pixel with respect to the output pixel one position closer to the starting point, and the relative coordinate value of that output pixel with respect to the output pixel one position closer to the starting point, for each pixel on the line segment with the second point as the starting point and the third point as the ending point of the output image. This is a register that stores relative coordinate values of the original pixel to which the output pixel corresponds with respect to the original pixel to which the output pixel corresponds.
7は原線分画像23相対座標テーブルレジスタ、9は出
力線分画像23相対座標テーブルレジスタである。7 is an original line segment image 23 relative coordinate table register, and 9 is an output line segment image 23 relative coordinate table register.
第2図は第1図の動作を説明するための図であり、 P
I、 P2. P3は原画像を定義する3点、Ql、
Q2゜Q3は出力画像を定義する3点である。Figure 2 is a diagram for explaining the operation of Figure 1, and P
I, P2. P3 is the three points that define the original image, Ql,
Q2 and Q3 are three points that define the output image.
第3図(A)及び(B)は第2図に示した画像データの
アフィン変換処理において、第1図の相対座標を格納し
たレジスタ、
原線分画像12相対座標テーブルレジスタ6゜原線分画
像23相対座標テーブルレジスタ7゜出力線分画像12
相対座標テーブルレジスタ8、出力線分画像23相対座
標テーブルレジスタ9゜の具体的値を示したものである
。Figures 3 (A) and (B) show registers that store the relative coordinates in Figure 1 during the affine transformation process of the image data shown in Figure 2, and original line segment image 12 relative coordinate table register 6° original line segment. Image 23 Relative coordinate table register 7° Output line segment image 12
The specific values of the relative coordinate table register 8 and the output line segment image 23 relative coordinate table register 9° are shown.
いま第2図において、Pi、 P2. P3の3点で定
められる原画像を、Ql、 Q2. Q3の3点で定め
られる出力画像にアフィン変換する処理を考える。Now in FIG. 2, Pi, P2. The original image defined by the three points P3 is Ql, Q2. Consider the process of performing affine transformation on an output image determined by the three points Q3.
先ず、上位装置から与えられた原画像及び出力画像を定
める点PL、 P2. P3.及びQl、Q2.Q3の
座標データは、第1図の原画像定義点座標レジスタ1及
び出力画像定義点座標レジスタ2にデータバス21、2
2を通じて格納される。First, points PL, P2. which define the original image and output image given from the host device. P3. and Ql, Q2. The coordinate data of Q3 is transferred to the original image definition point coordinate register 1 and the output image definition point coordinate register 2 in FIG.
2.
そして点Ql、 Q2. Q3の座標データは出力画像
定義点座標レジスタ2よりデータバス23を通じて出力
線分画素数算出処理部3に送られる。出力線分画素数算
出処理部3では点Ql、 Q2. Q3の座標データよ
り出力線分画像IQI・Q21、及び IO2・Q31
上の始点を除く画素数ΔQ12.ΔQ23を求める。And points Ql, Q2. The coordinate data of Q3 is sent from the output image definition point coordinate register 2 to the output line segment pixel number calculation processing section 3 via the data bus 23. The output line segment pixel number calculation processing unit 3 calculates points Ql, Q2. Output line segment images IQI・Q21 and IO2・Q31 from the coordinate data of Q3
Number of pixels excluding the upper starting point ΔQ12. Find ΔQ23.
ここでΔQ12.ΔQ23を求めるには、例えば点Ql
。Here, ΔQ12. To find ΔQ23, for example, point Ql
.
Q2. Q3の座標データをQl(X、、、Y、l)、
Q2(X、、、Y、、)。Q2. The coordinate data of Q3 is Ql(X, , Y, l),
Q2(X, , Y, ,).
Q3(X、、、Y、3)として次式により算出すればよ
い。Q3(X, , Y, 3) may be calculated using the following formula.
ΔQ12 = wax <Ix、t LxL
IYqz Yqzl) ・=−(1)ΔQ
23 = wax (IX13 XqzL IYq3
Yqzl) ・−・・(2)但し、 (1)、 (2
)式中のmaxL )は()内の値のうち最大のものの
値を表す。ΔQ12 = wax <Ix, t LxL
IYqz Yqzl) ・=-(1)ΔQ
23 = wax (IX13 XqzL IYq3
Yqzl) ・-・・(2) However, (1), (2
maxL ) in the formula represents the maximum value among the values in parentheses.
本処理を行う出力線分画素数算出処理部3は汎用プロセ
ッサ、或いは差分器と比較判定器の組合せにより構成す
ることができる。The output line segment pixel number calculation processing unit 3 that performs this process can be configured by a general-purpose processor or a combination of a difference device and a comparison/determination device.
算出されたΔQ12.ΔQ23は第1図のデータバス2
4.25を通じて各々、相対座標算出部4、制御部5へ
送られる。Calculated ΔQ12. ΔQ23 is data bus 2 in Figure 1.
4.25, they are sent to the relative coordinate calculation section 4 and the control section 5, respectively.
次に、相対座標算出部4では、データバス24を通じて
読み出されるΔQ12.ΔQ23、及びデータバス26
.27を通じて1及び2から読み出される原画像と出力
画像の定義点Pi、 P2. P3. Ql、 Q2.
Q3の座標データとから、出力線分画像IQI・Q2
1、及び102・Q31上の始点を除く各出力画素につ
いて、1つ始点寄りの出力画素に対するその出力画素の
相対座標値、及び1つ始点寄りの出力画素が対応する原
画素に対するその出力画素が対応する原画素の相対座標
値を算出する。Next, in the relative coordinate calculation unit 4, ΔQ12. ΔQ23 and data bus 26
.. Definition points Pi of the original image and output image read from 1 and 2 through 27, P2. P3. Ql, Q2.
From the coordinate data of Q3, output line segment image IQI・Q2
For each output pixel except the starting point on Calculate the relative coordinate values of the corresponding original pixel.
そしてこれらの相対座標データは、それぞれ第1図の出
力線分画像12相対座標テーブルレジスタ8、出力線分
画像23相対座標テーブルレジスタ9、原線分画像12
相対座標テーブルレジスタ6、原線分画像23相対座標
テーブルレジスタ7にデータバス28を通じて設定され
る。These relative coordinate data are stored in the output line segment image 12, relative coordinate table register 8, output line segment image 23, relative coordinate table register 9, and original line segment image 12, respectively, in FIG.
The relative coordinate table register 6 and the original line segment image 23 are set in the relative coordinate table register 7 via the data bus 28.
ここで、これらの相対座標値を得るには次のような処理
を行なえば良い。Here, in order to obtain these relative coordinate values, the following processing may be performed.
即ち第2図の画像定義点の座標を
PL(Xpx−Ypt)、P2(XP2−YF3)−P
3(XP3−YF3)。That is, the coordinates of the image definition point in Fig. 2 are PL(Xpx-Ypt), P2(XP2-YF3)-P
3 (XP3-YF3).
Ql(X、1.’/、i)、 Q2(X、2.Y、、)
、 Q3(Xq3.Y、、)とすれば、線分IQI・Q
21上の始点からi番目の出力画素とそれに対応する原
画素の座標値を(Xqtz(1)yYq工2(i))、
[XP□z(1)yYp工、(i))。Ql(X, 1.'/, i), Q2(X, 2.Y,,)
, Q3(Xq3.Y,,), then the line segment IQI・Q
The coordinate values of the i-th output pixel from the starting point on 21 and the corresponding original pixel are (Xqtz(1)yYq 2(i)),
[XP□z(1)yYp工,(i)).
線分IQ2・Q31上の始点からj番目の出力画素とそ
れに対応する原画素の座標値を
CXqzx (j) rYqxa (j)) v (X
P23 (j) r YF23 (j))として、これ
らが次式で求まることから、
iを1からΔQ12まで、jを1からΔQ23まで変化
させてi−1及びj−1の値との差を取れば、それぞれ
相対座標値を求められる。但し、式(3)〜(10)の
sign (α)はαの符号を、〔β〕はβを越えない
最大整数を表す。第3図に第2図の例におけるそれぞれ
の相対座標値を示す。The coordinate values of the j-th output pixel from the starting point on line segments IQ2 and Q31 and the corresponding original pixel are CXqzx (j) rYqxa (j)) v (X
P23 (j) r YF23 (j)), and since these can be found using the following formula, change i from 1 to ΔQ12 and j from 1 to ΔQ23, and calculate the difference between the values of i-1 and j-1. If you take them, you can find the relative coordinate values for each. However, sign (α) in equations (3) to (10) represents the sign of α, and [β] represents the maximum integer not exceeding β. FIG. 3 shows the respective relative coordinate values in the example of FIG. 2.
次に本発明の要部である、テーブルレジスタ6゜7.8
.9に格納された相対座標値に基づいた画像データのア
フィン変換処理について説明する。Next, the main part of the present invention is the table register 6°7.8.
.. Affine transformation processing of image data based on the relative coordinate values stored in 9 will be explained.
ここで、第1図の14は画像データが読み出される原画
像上の現在処理対象となっている線分の始点座標を格納
する原画像始点座標レジスタ、15はその線分上の読み
出し画素の座標を格納する原画素座標レジスタである。Here, 14 in FIG. 1 is an original image starting point coordinate register that stores the starting point coordinates of the line segment currently being processed on the original image from which image data is read, and 15 is the coordinate of the read pixel on the line segment. This is an original pixel coordinate register that stores .
また、16は読み出された画素データの書き込み処理対
象となる出力線分画像の始点座標を格納する出力画像始
点座標レジスタ、17はその書き込み対象とななる画素
の座標データを格納する出力画素座標レジスタである。Further, 16 is an output image starting point coordinate register that stores the starting point coordinates of the output line segment image to which the read pixel data is to be written, and 17 is an output pixel coordinate register that stores the coordinate data of the pixel to be written. It is a register.
10、11.12.13は各線分上の処理対象となる現
座標データに、テーブルレジスタ6.7,8.9の相対
座標データを加算するための加算器、18゜19は15
.17のXY座標値を画像メモリ20上のアドレスに変
換するアドレス変換回路である。10, 11, 12, and 13 are adders for adding the relative coordinate data of table registers 6.7 and 8.9 to the current coordinate data to be processed on each line segment;
.. This is an address conversion circuit that converts the XY coordinate values of 17 into addresses on the image memory 20.
先ず、処理全体の制御を司る制御部5は制御線29上に
“第1始点座標ロード信号”を送出する。First, the control unit 5, which controls the entire process, sends a "first starting point coordinate load signal" onto the control line 29.
この信号に同期して、原画像定義点座標レジスタ1及び
出力画像定義点座標レジスタ2より、データバス31.
32を通して原画像始点座標レジスタ14、出力画像始
点座標レジスタ16に第2図の例でいうPL、 Qlの
座標データがロードされる。In synchronization with this signal, the data bus 31.
32, the coordinate data of PL and Ql in the example of FIG. 2 are loaded into the original image starting point coordinate register 14 and the output image starting point coordinate register 16.
このPL、 Qlの座標データは制御線30を通して制
御部5から送られてくる“始点座標ロード信号″に同期
して原画像始点座標レジスタ14、出力画像始点座標レ
ジスタ16からデータバス33.34を通して現原画素
座標レジスタ15.現出力画素座標レジスタ17にロー
ドされる。The coordinate data of PL and Ql is transmitted from the original image starting point coordinate register 14 and the output image starting point coordinate register 16 through the data bus 33.34 in synchronization with the "starting point coordinate load signal" sent from the control unit 5 through the control line 30. Current original pixel coordinate register 15. The current output pixel coordinate register 17 is loaded.
更に、この座標データはデータバス44.45を通して
アドレス変換回路18.19に送られ、画像メモリ上の
読み出しアドレス及び書き込みアドレスに変換され、こ
のアドレスに従って原画像上の画像テークが出力画像上
の画素に転送される。(第2図の例では、点P1の画像
データが点Q1に設定される。)
次に、制御部5は制御線30上に“次画素処理指示信号
″を送出し、この信号に同期して現原画素座標レジスタ
15からデータバス35を通して送られてくる現原画素
座標データと、相対座標テーブルレジスタ7からデータ
バス36を通して送られてくる次の処理対象原画素の相
対座標データとが加算器11で加算され、ここで算出さ
れた次の処理対象原画素の座標値がデータバス3フを通
して現原画素座標レジスタ15に設定される。Furthermore, this coordinate data is sent to the address conversion circuit 18.19 through the data bus 44.45 and converted into a read address and a write address on the image memory, and according to these addresses, the image take on the original image is changed to the pixel on the output image. will be forwarded to. (In the example of FIG. 2, the image data of point P1 is set to point Q1.) Next, the control unit 5 sends out a "next pixel processing instruction signal" on the control line 30, and synchronizes with this signal. The current original pixel coordinate data sent from the current original pixel coordinate register 15 through the data bus 35 and the relative coordinate data of the next processing target original pixel sent from the relative coordinate table register 7 through the data bus 36 are added. The coordinate values of the next original pixel to be processed calculated here are set in the current original pixel coordinate register 15 through the data bus 3.
また同様に、この″次画素処理指示信号″に同期して、
現出力画素座標レジスタ17からデータバス38を通し
て送られてくる現出力画素座標データと、相対座標テー
ブルレジスタ9からデータバス39を通して送られてく
る次の処理対象出力画素の相対座標データとが加算器1
3で加算され、ここで算出された次の処理対象出力画素
の座標値がデータバス40を通して現出力画素座標レジ
スタ17に設定される。そして、レジスタ15.17に
格納された新しい処理対象画素の座標データはデータバ
ス44゜46を通してアドレス変換回路18.19に送
られ、それぞれ画像メモリ上の読み出しアドレス及び書
き込みアドレスに変換され、このアドレスに従って原画
像上の画像データが再び出力画像上の画素に転送される
。(第2図の例では、点P′の画像データが点Q′に設
定される。)
この様に、制御部5は線分I02. Q31上の始点を
除く画素数分(即ち6023回)″次画素処理指示信号
”を制御線30上に送出し、これにより、出力画像の第
1点を始点として第2点と第3点とを結ぶ線分に平行な
線分上の各出力画素に、対応する原画像の画像データが
次々と設定される。(第2図の例では1点Q1とQ”を
結ぶ線分上の各画素に1点P1とP”を結ぶ線分上に対
応する画素データが設定される。第2図の口の部分)
次に、第一列目の線分画像の変換処理が済むと、制御部
5は制御線29上に“法線分画像処理信号″を送出する
。そしてこの信号に同期して原画像始点座標レジスタ1
4からデータバス41を通して送られてくる現原画像始
点座標データ、及び相対座標テーブルレジスタ6からデ
ータバス42を通して送られてくる次の処理対象原線分
画像の相対始点座標データとが加算器10で加算され、
ここで算出された次の処理対象原線分画像の始点座標デ
ータがデータバス43を通して原画像始点座標レジスタ
14に設定される。Similarly, in synchronization with this "next pixel processing instruction signal",
The current output pixel coordinate data sent from the current output pixel coordinate register 17 via the data bus 38 and the relative coordinate data of the next output pixel to be processed sent from the relative coordinate table register 9 via the data bus 39 are added to an adder. 1
3, and the coordinate value of the next output pixel to be processed calculated here is set in the current output pixel coordinate register 17 via the data bus 40. Then, the coordinate data of the new pixel to be processed stored in the register 15.17 is sent to the address conversion circuit 18.19 through the data bus 44.46, and is converted into a read address and a write address on the image memory, respectively. Accordingly, the image data on the original image is transferred again to the pixels on the output image. (In the example of FIG. 2, the image data of point P' is set to point Q'.) In this way, the control unit 5 controls line segment I02. The "next pixel processing instruction signal" is sent to the control line 30 for the number of pixels excluding the starting point on Q31 (that is, 6023 times), thereby starting from the first point of the output image and starting from the second and third points. The image data of the corresponding original image is successively set to each output pixel on a line segment parallel to the line segment connecting the . (In the example in Figure 2, pixel data corresponding to the line segment connecting points P1 and P'' is set for each pixel on the line segment connecting points Q1 and Q''.The mouth part in Figure 2 ) Next, when the conversion processing of the line segment image in the first column is completed, the control unit 5 sends a "normal line segment image processing signal" onto the control line 29. Then, in synchronization with this signal, the original image starting point coordinate register 1
The current original image starting point coordinate data sent from 4 through the data bus 41 and the relative starting point coordinate data of the next processing target original line segment image sent from the relative coordinate table register 6 through the data bus 42 are added to the adder 10. is added by
The starting point coordinate data of the next processing target original line segment image calculated here is set in the original image starting point coordinate register 14 via the data bus 43.
同様に、この信号に同期して出力画像始点座標レジスタ
16からデータバス44を通して送られてくる現出力画
像始点座標データ、及び相対座標テーブルレジスタ8か
らデータバス45を通して送られてくる次の処理対象出
力線分画像の相対始点座標データとが加算器12で加算
され、ここで算出された次の処理対象出力線分画像の始
点座標データがデータバス46を通して出力画像始点座
標レジスタ16に設定される。(第2図の例では、点p
jll、Q”1の座標データが第1図の14.16に設
定される。)次に、制御部5は、第一列目の線分画像の
変換処理と同様に、制御線30上に″′始点座標ロード
信号″を一度、゛′次画素処理指示信号″を4023回
送出し、これにより第二列目の出力線分画像に対応する
原画像上の画素データが設定される。Similarly, current output image start point coordinate data is sent from the output image start point coordinate register 16 via the data bus 44 in synchronization with this signal, and the next processing target is sent from the relative coordinate table register 8 via the data bus 45. The relative starting point coordinate data of the output line segment image is added by the adder 12, and the starting point coordinate data of the next output line segment image to be processed calculated here is set in the output image starting point coordinate register 16 through the data bus 46. . (In the example in Figure 2, point p
The coordinate data of jll, Q"1 is set at 14.16 in FIG. The ``start point coordinate load signal'' is sent once and the ``next pixel processing instruction signal'' is sent 4023 times, thereby setting the pixel data on the original image corresponding to the output line segment image of the second column.
(第2図の例では部の部分)
この様に、制御部5は一列分の線分画像の処理を行う度
に、制御線29上に″法線分画像処理信号″を一回、制
御線30上にパ始点座標ロード信号″を一回、″次画素
処理指示信号″を4023回送出して線分画像のアフィ
ン変換を行い、これを線分IQI、 Q21上の始点を
除く画素数分(即ちΔQ12)行うことにより、全画像
データのアフィン変換を行う。(In the example of FIG. 2, the part) In this way, the control unit 5 sends a "normal line segment image processing signal" once to the control line 29 every time it processes a line segment image for one column. The affine transformation of the line segment image is performed by sending the ``PA start point coordinate load signal'' once and the ``next pixel processing instruction signal'' 4023 times on the line 30, and converts this into the number of pixels excluding the starting point on the line segment IQI and Q21. (that is, ΔQ12), the entire image data is subjected to affine transformation.
(発明の効果)
以上説明したように、本発明においては画像のアフィン
変換処理を、各画素毎に4回の整数の加算処理で行うこ
とができるため、従来の各画素毎にマトリクス演算、即
ち実数の加算と乗算を4回ずつ行う方式に比較して、高
速に処理できる。(Effects of the Invention) As explained above, in the present invention, the affine transformation process of an image can be performed by four integer addition processes for each pixel, so that the conventional matrix operation for each pixel, that is, Compared to a method that performs addition and multiplication of real numbers four times each, it can process faster.
また、画像のアフィン変換を、画像を定義する平行四辺
形の各辺に平行な線分画像のアフィン変換の繰り返しに
より処理することにより、従来からある画像の拡大縮小
、回転の高速化手法に比較して、任意の平行四辺形で定
義されたデジタル画像データを、任意のアフィン変換に
ついて一度で処理できるという利点がある。In addition, by processing the affine transformation of the image by repeating the affine transformation of line segment images parallel to each side of the parallelogram that defines the image, we have compared it to conventional image scaling and rotation methods. This has the advantage that digital image data defined by any parallelogram can be processed at once for any affine transformation.
第1図は本発明の一実施例を説明するための図、第2図
は第1図の動作を説明するための図。
第3図は第2図に示した画像データのアフィン変換処理
において、第1図の相対座標を格納したレジスタの具体
的値を示したものである。
1 ・・・原画像定義点座標レジスタ、2・・・出力画
像定義点座標レジスタ、3 ・・・出力線分画素数算出
処理部、4・・・相対座標算出処理部、
5・・・制御部、
6 ・・・Mm分画像12相対座標テーブルレジスタ、
7・・・原線分画像23相対座標テーブルレジスタ、8
・・・出力線分画像12相対座標テーブルレジスタ、9
・・・出力線分画像23相対座標テーブルレジスタ、1
0、11.12.13・・・加算器、14・・・原画像
始点座標レジスタ、
15・・・原画素座標レジスタ、
16・・・出力画像始点座標レジスタ、17・・・出力
画素座標レジスタ。
18、19・・・アドレス変換回路、
20・・・画像メモリ、
PI、 P2. P3・・・原画像を定義する3点、Q
l、 Q2. Q3・・・出力画像を定義する3点。
特許出願人 日本電信電話株式会社
ゝ; 冒、ン
゛〈ユ4−゛
第2図
Y
第3図
(A)FIG. 1 is a diagram for explaining one embodiment of the present invention, and FIG. 2 is a diagram for explaining the operation of FIG. 1. FIG. 3 shows specific values of the registers storing the relative coordinates shown in FIG. 1 in the affine transformation processing of the image data shown in FIG. 1... Original image definition point coordinate register, 2... Output image definition point coordinate register, 3... Output line segment pixel number calculation processing section, 4... Relative coordinate calculation processing section, 5... Control Part, 6...Mm image 12 relative coordinate table register,
7... Original line segment image 23 relative coordinate table register, 8
...Output line segment image 12 relative coordinate table register, 9
...Output line segment image 23 relative coordinate table register, 1
0, 11.12.13... Adder, 14... Original image starting point coordinate register, 15... Original pixel coordinate register, 16... Output image starting point coordinate register, 17... Output pixel coordinate register . 18, 19... Address conversion circuit, 20... Image memory, PI, P2. P3...Three points that define the original image, Q
l, Q2. Q3: Three points that define the output image. Patent applicant: Nippon Telegraph and Telephone Corporation
Claims (1)
定める平行四辺形の3点の座標値、及びその3点をアフ
ィン変換して得られる出力画像を定義する3点の座標値
を記憶する手段と。 出力画像の第1点を始点とし第2点を終点とする線分上
の各画素について、1つ始点寄りの出力画素に対するそ
の出力画素の相対座標値、及び1つ始点寄りの出力画素
が対応する原画素に対するその出力画素が対応する原画
素の相対座標値を記憶する手段と、 出力画像の第2点を始点とし第3点を終点とする線分上
の各画素について、1つ始点寄りの出力画素に対するそ
の出力画素の相対座標値、及び1つ始点寄りの出力画素
が対応する原画素に対するその出力画素が対応する原画
素の相対座標値を記憶する手段と、 前記2線分上の各出力画素及び対応する原画素の相対座
標値を、原画像を定義する3点及び出力画像を定義する
3点の座標値に基づいて算出する手段とを有し、 アフィン変換画像の出力においては、出力画像及び原画
像の第1点と第2点とを結ぶ線分上の各画素を始点とし
て、第2点と第3点とを結ぶ線分に並行な線分上の各画
素毎に、出力画素に対応する原画素の画像データをその
出力画素に設定する処理を繰り返すものとし、 処理対象となる線分上の出力画素及び原画素の座標値は
、第2点から第3点へ向かう方向に始点から順番に現在
処理中の画素の座標値に次の画素の相対座標を逐次加算
することにより求め、各処理対象となる線分の始点座標
は、第1点から第2点へ向かう方向に現在処理中の線分
の始点座標に次の線分の始点の相対座標値を逐次加算し
て求めることを特徴とする画像のアフィン変換方式。[Claims] In affine transformation of digital image data, the coordinate values of three points of a parallelogram that define the original image and the coordinate values of three points that define the output image obtained by affine transformation of those three points are A means of remembering. For each pixel on a line segment with the first point as the starting point and the second point as the ending point in the output image, the relative coordinate value of that output pixel with respect to the output pixel one position closer to the starting point and the output pixel one position closer to the starting point correspond. means for storing the relative coordinate values of an original pixel to which the output pixel corresponds to the original pixel to which the output pixel corresponds; means for storing the relative coordinate value of the output pixel with respect to the output pixel of , and the relative coordinate value of the original pixel to which the output pixel corresponds with respect to the original pixel to which the output pixel one position closer to the starting point corresponds; means for calculating the relative coordinate values of each output pixel and the corresponding original pixel based on the coordinate values of three points defining the original image and three points defining the output image; , for each pixel on a line segment parallel to the line segment connecting the second and third points, starting from each pixel on the line segment connecting the first and second points of the output image and the original image. , the process of setting the image data of the original pixel corresponding to the output pixel to the output pixel is repeated, and the coordinate values of the output pixel and the original pixel on the line segment to be processed are changed from the second point to the third point. The coordinates of the starting point of each line segment to be processed are determined by sequentially adding the relative coordinates of the next pixel to the coordinates of the pixel currently being processed, starting from the starting point in the direction toward which the line is being processed. An affine transformation method for images, characterized in that the relative coordinates of the starting point of the next line segment are sequentially added to the starting point coordinates of the line segment currently being processed in the direction toward which the image is directed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61261928A JPS63116193A (en) | 1986-11-05 | 1986-11-05 | Affine transformation system for image |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61261928A JPS63116193A (en) | 1986-11-05 | 1986-11-05 | Affine transformation system for image |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63116193A true JPS63116193A (en) | 1988-05-20 |
Family
ID=17368656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61261928A Pending JPS63116193A (en) | 1986-11-05 | 1986-11-05 | Affine transformation system for image |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63116193A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63310267A (en) * | 1987-06-12 | 1988-12-19 | Canon Inc | Image processor |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62237581A (en) * | 1986-04-09 | 1987-10-17 | Hitachi Ltd | Image processor |
-
1986
- 1986-11-05 JP JP61261928A patent/JPS63116193A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62237581A (en) * | 1986-04-09 | 1987-10-17 | Hitachi Ltd | Image processor |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63310267A (en) * | 1987-06-12 | 1988-12-19 | Canon Inc | Image processor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4975976A (en) | Image transformation method and device | |
JPH03205976A (en) | Picture synthesizing system using special effector | |
JPH1079043A (en) | Texure data reader and rendering device | |
JPH0353668B2 (en) | ||
JPS63116193A (en) | Affine transformation system for image | |
JP4099830B2 (en) | Special effect device, image processing method, and target image generation method | |
JP2502274B2 (en) | Image converter | |
JP2747822B2 (en) | Graphic display device | |
JPS59224892A (en) | Rotation/movement control system for image data | |
JP3055024B2 (en) | Image data transfer device | |
JP2001022917A (en) | Method and device for compositing image | |
JPH0440176A (en) | Television special effect device | |
JP2998689B2 (en) | How to map image data | |
JP2938064B1 (en) | Image generation apparatus and image generation method thereof | |
JPH04354068A (en) | Method and device for interpolating picture data | |
JP3311905B2 (en) | Image processing device | |
JPH09128519A (en) | Image compositing device | |
JPH05324840A (en) | High-resolution image processor | |
JP2604711B2 (en) | Image conversion device | |
JP2664722B2 (en) | Image processing device | |
RU2038633C1 (en) | Apparatus for forming videosignal | |
JP2591424B2 (en) | Image memory device | |
JPS633372A (en) | Picture retrieving and display system | |
JPS62154177A (en) | Image converter | |
JPH11175709A (en) | Image deforming device and storage medium stored with program thereof |