JPH0442709B2 - - Google Patents

Info

Publication number
JPH0442709B2
JPH0442709B2 JP60063762A JP6376285A JPH0442709B2 JP H0442709 B2 JPH0442709 B2 JP H0442709B2 JP 60063762 A JP60063762 A JP 60063762A JP 6376285 A JP6376285 A JP 6376285A JP H0442709 B2 JPH0442709 B2 JP H0442709B2
Authority
JP
Japan
Prior art keywords
memory
image
address
rectangle
buffer
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 - Lifetime
Application number
JP60063762A
Other languages
Japanese (ja)
Other versions
JPS61223986A (en
Inventor
Mitsuhiko Yamada
Shigeru Miki
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.)
Dainippon Screen Manufacturing Co Ltd
Original Assignee
Dainippon Screen Manufacturing 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 Dainippon Screen Manufacturing Co Ltd filed Critical Dainippon Screen Manufacturing Co Ltd
Priority to JP60063762A priority Critical patent/JPS61223986A/en
Priority to EP85810430A priority patent/EP0184547B1/en
Priority to DE8585810430T priority patent/DE3584718D1/en
Priority to CA000491421A priority patent/CA1244961A/en
Priority to US06/780,563 priority patent/US4790025A/en
Priority to CN85108635A priority patent/CN1008021B/en
Publication of JPS61223986A publication Critical patent/JPS61223986A/en
Publication of JPH0442709B2 publication Critical patent/JPH0442709B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Image Input (AREA)
  • Image Processing (AREA)

Description

【発明の詳細な説明】 (本発明の利用分野) 本発明は、画像処理装置や印刷製版用のレイア
ウトスキヤナによつて処理される高密度画像の処
理方法に関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Application of the Invention) The present invention relates to a method of processing high-density images processed by an image processing device or a layout scanner for printing plate making.

(従来技術) 最近、カラー製版用装置として、コンピユータ
による画像処理装置を用いて、複数の原画個々に
画像処理を施し、それらを集合(集版と称する)
して、1ページのレイアウトされたものを作るレ
イアウトスキヤナシステム(トータルスキヤナシ
ステムともいう)が出現してきている。
(Prior art) Recently, as a color plate making device, a computer-based image processing device is used to perform image processing on each of a plurality of original drawings and assemble them (referred to as a collection).
As a result, layout scanner systems (also referred to as total scanner systems) that create one-page layouts are emerging.

従来のレイアウトスキヤナシステムにおいて
は、スキヤナによつて得られる高密度画像の画素
についてのある種の画像処理(例えば回転、変
倍、変形)は、オペレータの操作段階で、モニタ
に画像を表示できる分だけ、固定された2次元形
状のバツフアメモリの容量に応じて分割し、それ
を1つの画像に対して、バツフアメモリの容量に
応じた分毎に、繰り返し処理することが行うか、
又は、高密度画像の画素を間引いたり、あるい
は、複数画素を平均したりして圧縮された画像
を、カラーモニタを利用して表示し、その表示さ
れた画像に、必要に応じて、所要の画像処理を施
し、その後、コンピユータを利用して、実際の高
密度画像がもつ細かい画素のレベルで、前記モニ
ターを介して、オペレータが操作した内容に基づ
いて再度画像処理していた。
In conventional layout scanner systems, some kind of image processing (e.g. rotation, scaling, transformation) on the pixels of the high-density image obtained by the scanner is performed during the operator's operation stage so that the image can be displayed on the monitor. Is it possible to divide a fixed two-dimensional shape into parts according to the capacity of the buffer memory and repeatedly process the divided images for each minute according to the capacity of the buffer memory?
Alternatively, display an image compressed by thinning out the pixels of a high-density image or averaging multiple pixels using a color monitor, and add the required information to the displayed image as necessary. After image processing is performed, the image is processed again using a computer at the fine pixel level of an actual high-density image based on the contents operated by the operator via the monitor.

そして、画像処理された結果の画像について、
1ページ全体に所要の集版を行つて、精度の高い
ページ印刷物を作るということが行なわれてい
る。
Then, regarding the image as a result of image processing,
Highly accurate page prints are produced by performing the necessary compilation on the entire page.

しかし、上記画像処理において、回転や変形、
変倍等を行うと、その処理に、多大の時間がかか
る。
However, in the above image processing, rotation, deformation,
When changing the magnification, etc., it takes a lot of time.

(本発明が解決しようとする問題点) この発明の目的は、上記前提における処理方式
において、実際の高密度画素の画像において、回
転、変形、変倍等のアフイン変換処理を行う場合
でも、処理時間を短縮できる方法を提供すること
である。
(Problems to be Solved by the Present Invention) An object of the present invention is to provide a processing method based on the above premise, even when performing affine transformation processing such as rotation, transformation, and scaling on an actual high-density pixel image. The purpose is to provide a method that can save time.

すなわち、従来画像処理用バツフアメモリは、
固定の2次元形状であるため、1つの画像をいく
つかに分割して、繰返し処理する時の、バツフア
メモリの効率的利用がなされず、またメモリ容量
より大きな画像の分割を単純に行うことから、回
転等を行つた時、有効画像領域が、場合によつて
は非常に少くなるという欠点を解決するものであ
る。
In other words, the conventional buffer memory for image processing is
Because it has a fixed two-dimensional shape, buffer memory cannot be used efficiently when one image is divided into several parts and processed repeatedly, and images that are larger than the memory capacity are simply divided. This solves the drawback that when rotation or the like is performed, the effective image area becomes extremely small in some cases.

(問題点を解決するための技術手段) 上記問題点を解決するために、本発明は、次の
とおり構成されている。
(Technical means for solving the problems) In order to solve the above problems, the present invention is configured as follows.

入力デイスクメモリに収容された画像データを
複数の部分に分割し、 その分割部分ごとの画像データを読み出して第
1のバツフアメモリに書き込み、 この第1のバツフアメモリの画像データに回転
を含むアフイン変換を施し、アフイン変換後の画
像データを第2のバツフアメモリに転送し、 この第2のバツフアメモリの画像データを読み
出して出力デイスクメモリに収容する画像の処理
方法において、 前記第1、第2のバツフアメモリのそれぞれを
2次元配列として、そのXアドレス長およびYア
ドレス長を(X+Y=一定)の条件の下で可変と
し、 前記Xアドレス長とYアドレス長とを定めるア
ドレスビツトモードを予め複数設定し、 前記第1、第2のバツフアメモリのそれぞれに
ついて、前記アドレスビツトモードを順次選択し
て、選択されたアドレスビツトモードにおけるX
アドレス長およびYアドレス長で決まる2次元配
列の矩形を設定し、 前記アドレスビツトモードごとに、第1のバツ
フアメモリの矩形をアフイン変換させたものと第
2のバツフアメモリの矩形との重なり多角形を求
め、 この重なり多角形の面積が最大であるときの第
1、第2のバツフアメモリのアドレスビツトモー
ドをそれぞれ特定し、 これら特定されたアドレスビツトモードにおけ
るXアドレス長およびYアドレス長を、前記第
1、第2のバツフアメモリのそれぞれに適用し、 前記面積が最大の重なり多角形に内接して面積
が最大の矩形を求めて、この内接矩形を第2のバ
ツフアメモリに対応する出力分割サイズとし、 この内接矩形を逆アフイン変換したときの多角
形に外装する矩形を求めて、この外接矩形を第1
のバツフアメモリに対応する入力分割サイズとす
ることを特徴とする画像の処理方法。
The image data stored in the input disk memory is divided into a plurality of parts, the image data for each divided part is read out and written to a first buffer memory, and the image data in the first buffer memory is subjected to affine transformation including rotation. , an image processing method in which image data after affine conversion is transferred to a second buffer memory, and the image data in the second buffer memory is read out and stored in an output disk memory, each of the first and second buffer memories being As a two-dimensional array, the X address length and Y address length are variable under the condition of (X+Y=constant), a plurality of address bit modes defining the X address length and Y address length are set in advance, and the first address bit mode is set in advance. , and the second buffer memory, the address bit mode is sequentially selected, and the X in the selected address bit mode is set.
A two-dimensional array rectangle determined by the address length and Y address length is set, and for each address bit mode, an overlapping polygon is found between the rectangle of the first buffer memory subjected to affine transformation and the rectangle of the second buffer memory. , specify the address bit modes of the first and second buffer memories when the area of this overlapping polygon is maximum, and calculate the X address length and Y address length in these specified address bit modes as the first and second buffer memories. Apply to each of the second buffer memories, find a rectangle with the largest area inscribed in the overlapping polygon with the largest area, and use this inscribed rectangle as the output division size corresponding to the second buffer memory; Find the rectangle that encloses the polygon when the enclosing rectangle is inversely transformed, and use this enclosing rectangle as the first
An image processing method characterized in that the input division size corresponds to the buffer memory of.

(実施例) 第1図は、本発明が適用される画像処理装置を
中心に含むレイアウトスキヤナシステムの基本構
成図である。
(Embodiment) FIG. 1 is a basic configuration diagram of a layout scanner system mainly including an image processing device to which the present invention is applied.

入力デイスクメモリ(1)には、図示を省略したカ
ラースキヤナによつて画像走査された、高密度画
像データが収納されている。
The input disk memory (1) stores high-density image data scanned by a color scanner (not shown).

入力デイスクメモリ(1)より読み出された画像
は、インタフエイス(2)を介して、第1のメモリ4
のデータI/Oレジスタ3に入り、通常の手段に
よる第1のメモリ4のアドレスに従つて、第1の
バツフアメモリ4(以下、第1のメモリ4と略称
する内に記憶される。
The image read from the input disk memory (1) is transferred to the first memory 4 via the interface (2).
The data is stored in the first buffer memory 4 (hereinafter simply referred to as the first memory 4) according to the address of the first memory 4 by conventional means.

記憶した画像を表示する場合には、第1のメモ
リ4から、ビデオ周波数によつて読み出された画
像が、表示制御回路5へ送られ、カラーモニタ6
へ映像として表示される。
When displaying a stored image, the image read out from the first memory 4 at the video frequency is sent to the display control circuit 5 and displayed on the color monitor 6.
displayed as an image.

表示は、場合によつて、第2のバツフアメモリ
10(以下、第2のメモリ10と略称するや、コ
ントロールメモリ15の内容と同時に読み出され
て、合成表示やマスク制御として、コントロール
メモリ15の内容が用いられ表示される。
Depending on the case, the display may be read simultaneously with the contents of the second buffer memory 10 (hereinafter referred to as the second memory 10), and the contents of the control memory 15 may be read out at the same time as the contents of the control memory 15 for composite display or mask control. is used and displayed.

これら表示に関しては、図示を省略してある
が、一般的な技術手段であり、本発明の本質とは
関係ないため、説明を省略する。
Although these displays are not shown in the drawings, they are common technical means and are not related to the essence of the present invention, so their explanations will be omitted.

表示を行う場合に用いられる第1のメモリ4や
他のメモリの2次元形状は、表示画面に一致させ
られる。ここでの説明では、正方形を用いること
とする。なお、後述するメモリの利用方法で、2
次元的に形状を変化させるモードは用いずに行う
ものである。
The two-dimensional shape of the first memory 4 and other memories used for displaying is made to match the display screen. In the description here, a square is used. In addition, in the memory usage method described later, 2
This is done without using a mode that changes the shape dimensionally.

また、一般的に利用出来るメモリサイズとして
は、1024×1024画素容量を持つものとして説明す
る。
Furthermore, the description will be made on the assumption that a generally usable memory size has a capacity of 1024×1024 pixels.

これに対して、印刷用に用いられるカラースキ
ヤナで色分解し、センプリングされた画像の画素
寸法は、一般に50μm程度であり、10cm角の絵で
も、2000×2000画素となり、画像全体を、メモリ
上に全て、記憶させることはできないのが普通で
ある。したがつて、ここでもそのような普通の場
合について説明する。
On the other hand, the pixel size of an image separated and sampled by a color scanner used for printing is generally about 50 μm, and even a 10 cm square picture has 2000 x 2000 pixels, so the entire image can be stored in memory. It is normal that you cannot remember everything. Therefore, such a common case will be explained here as well.

このため、インタフエイス2では、画像を間引
いたり、又は複数個の画素データを平均して、1
つの画素データにして圧縮したりする機能を持た
せ、画像全体を、カラーモニタにて目視出来るよ
うにする。しかし、画像に対する最終的な演算処
理は、この様な間引いたり又は圧縮した画像で行
なうことは出来ず、高密度な画素全部に対して、
処理する必要がある。
For this reason, the interface 2 thins out the image or averages multiple pieces of pixel data.
It has a function of compressing it into one pixel data, and makes the entire image visible on a color monitor. However, the final arithmetic processing on the image cannot be performed on such a thinned out or compressed image;
need to be processed.

従つて、画像を分割して、繰返し処理しなけれ
ばならないことが発生する。この方法についての
本発明の実施例は後述する。
Therefore, it may be necessary to divide the image and process it repeatedly. Examples of the present invention regarding this method will be described later.

第1図において、さらにレイアウトスキヤナシ
ステム全体の動作を説明する。
Referring to FIG. 1, the operation of the entire layout scanner system will be further explained.

第1のメモリ4へ記憶された画像データは、必
要に応じて、画像処理がなされる。
The image data stored in the first memory 4 is subjected to image processing as necessary.

第1のメモリ4の画像データが順次読み出さ
れ、データI/Oレジスタ3を介して演算回路7
へ入り、必要な処理が加えられたのち、データ
I/Oレジスタ11を介して、第2のメモリ10
へ書き込まれる。
The image data in the first memory 4 is sequentially read out and sent to the arithmetic circuit 7 via the data I/O register 3.
After the necessary processing is performed, the data is transferred to the second memory 10 via the data I/O register 11.
is written to.

全メモリ領域について、データが順次転送さ
れ、処理が完了する。
Data is sequentially transferred for all memory areas, and processing is completed.

演算回路7は、たとえば第2図に示すような構
成となつている。
The arithmetic circuit 7 has a configuration as shown in FIG. 2, for example.

第2図において、入力データライン24から入
つたデータは、演算回路7にて演算される。たと
えば、階調変更を行う場合には、一般にルツクア
ツプテーブルが利用され、ルツクアツプテーブル
19には、CPU16により必要とするデータが
記憶される。そして、演算モードとして、CPU
16がバツフア21をオープンするコマンドを出
力しておく、このとき、他のバツフア20,22
はデイスエイブルであり、データを通さない。
In FIG. 2, data input from an input data line 24 is operated on by an arithmetic circuit 7. As shown in FIG. For example, when changing the gradation, a lookup table is generally used, and data required by the CPU 16 is stored in the lookup table 19. Then, as the calculation mode, the CPU
16 outputs a command to open buffer 21. At this time, other buffers 20 and 22
is disabled and does not pass data.

演算モードは、数ビツトのコードとして送ら
れ、デコーダ23でデコードされ、必要なバツフ
アをイネーブルする。
The operation mode is sent as a code of several bits and is decoded by decoder 23 to enable the necessary buffers.

次に、画像データが、入力データライン24を
通つて、ルツクアツプテーブル19に入り、必要
な処理が加えられて、バツフア21から出力デー
タライン25へ出力される。これら演算回路は、
パイプライン動作を行う。
The image data then enters the lookup table 19 through the input data line 24, undergoes any necessary processing, and is output from the buffer 21 to the output data line 25. These arithmetic circuits are
Perform pipeline operation.

バツフア20は、演算を行なわないパスモード
の時にイネーブルされる。これは、たとえば、ア
フイン変換処理で第1のメモリ4のある一部のデ
ータを、第2のメモリ10に記憶させる場合等
に、このパスモードを用いる。
The buffer 20 is enabled in the pass mode in which no calculations are performed. This pass mode is used, for example, when a certain portion of data in the first memory 4 is to be stored in the second memory 10 in an affine conversion process.

他の演算を行うための回路26が設けられてい
るが、これらは、必要に応じて増設される。それ
ら増設に応じて、対応するバツフア22等が増設
される。
A circuit 26 for performing other calculations is provided, but these can be added as necessary. Corresponding buffers 22 and the like are added in accordance with these additions.

この様にして演算された結果は、第2のメモリ
10へ記憶される。
The results calculated in this way are stored in the second memory 10.

第1のメモリ4の内容をモニタ6に表示した
り、第2のメモリ10の内容をモニタ6に表示し
たりすれば、処理前後の状態が見られる。
By displaying the contents of the first memory 4 on the monitor 6 and the contents of the second memory 10 on the monitor 6, the state before and after processing can be seen.

特定の領域のみを処理したい場合には、コント
ロールメモリ15へ、あらかじめCPU16によ
つて、1bitの「0」又は「1」によるマスクデー
タを記憶させておき、第1のメモリ4とコントロ
ールメモリ15から、同時にデータを読み出し
て、演算回路にて、たとえばコントロールメモリ
15からのデータが「1」のときには、演算処理
するべく、ルツクアツプテーブル19、バツフア
21または演算回路26、バツフア22を介し
て、データが「0」のときは、バツフア20を介
して、演算処理せずに、パスモードを用いて、第
2のメモリ10へ送つて記憶させる等の制御をす
ることも可能である。
If you want to process only a specific area, mask data of 1 bit "0" or "1" is stored in advance in the control memory 15 by the CPU 16, and the mask data is stored in the control memory 15 from the first memory 4 and the control memory 15. , the data is simultaneously read out and processed by the arithmetic circuit. For example, when the data from the control memory 15 is "1", the data is read out via the lookup table 19 and the buffer 21 or the arithmetic circuit 26 and the buffer 22 for arithmetic processing. When is "0", it is also possible to perform control such as sending the data to the second memory 10 and storing it via the buffer 20 without performing arithmetic processing using the pass mode.

このとき、コントロールメモリ15よりのデー
タは、データI/Oレジスタ14を介して、演算
回路7のデコーダ23へ、他の演算モードと共に
送られる。
At this time, data from the control memory 15 is sent to the decoder 23 of the arithmetic circuit 7 via the data I/O register 14 together with other arithmetic modes.

コントロールメモリ15へのデータは、CPU
16により作られる訳であるが、CPU16は、
タブレツト17やキーボード18からのオペレー
タの入力する命令や座標値指示に従つて、たとえ
ば円を作成し、その内部を塗りつぶして、外側を
「0」内側を「1」というデータをコントロール
メモリ15に作る。このとき座標は、カラーモニ
タ6へメモリ領域に対応するカーソル等を表示し
て、オペレータの希望する座標を得ることが出来
る。
The data to the control memory 15 is transferred to the CPU
16, but CPU16 is
In accordance with commands and coordinate values input by the operator from the tablet 17 or keyboard 18, for example, a circle is created, the inside of the circle is filled in, and data is created in the control memory 15, with the outside being "0" and the inside being "1". . At this time, the operator can obtain the desired coordinates by displaying a cursor or the like corresponding to the memory area on the color monitor 6.

このコントロールメモリ15は、又別の用途と
して、レイアウトスキヤナの1つの主要な機能で
あるページ上への複数の画像配置、即ち集版にも
利用される。
The control memory 15 is also used for arranging a plurality of images on a page, which is one of the main functions of the layout scanner, that is, for collection.

集版の方法も、前記と同様のコントールメモリ
の利用方法であり、あらかじめオペレータによつ
てCPU16で作られている輪郭を、利用して、
たとえばコントロールメモリ15の「1」の部分
のみへ、第1のメモリ4からの画像を第2のメモ
リ10上へ転送し、いろいろな画像と輪郭につい
て、繰返し処理し、第2のメモリ10上へ画像集
合させたページを作つてゆく。
The collection method also uses the same control memory as described above, and uses the contours created by the operator in advance on the CPU 16.
For example, the image from the first memory 4 is transferred to only the "1" part of the control memory 15 onto the second memory 10, various images and contours are repeatedly processed, and the image is transferred onto the second memory 10. Create a page with a collection of images.

第2のメモリ10は、上述の様に利用された
り、又2つの画像を合成するとき、あらかじめ1
つの画像を入力デイスク1からインタフエイス
2、データI/Oレジスタ3、演算回路7のパス
モード、データI/Oレジスタ11を介して、第
2のメモリ10上へ記憶させる。
The second memory 10 is used as described above, or when combining two images, the second memory 10 is used as a
Two images are stored from the input disk 1 onto the second memory 10 via the interface 2, the data I/O register 3, the pass mode of the arithmetic circuit 7, and the data I/O register 11.

ついで、第1のメモリ4から、別の画像の必要
部分をコントロールメモリ15を用いて、第2の
メモリ10へ書き込み、2つの画像を合成する。
Next, a necessary part of another image is written from the first memory 4 to the second memory 10 using the control memory 15, and the two images are combined.

さらに、第2のメモリ10上にある処理結果を
出力デイスク13へ記憶させる。このときは、第
2のメモリ10から、データI/Oレジスタ11
を介してインタフエイス12へ入り、出力デイス
クメモリ13へ記憶させる。この出力デイスクの
最終結果は、図示しないカラースキヤナへ出力さ
れ、印刷用原板フイルムとして用いられる。
Furthermore, the processing results on the second memory 10 are stored on the output disk 13. At this time, data is transferred from the second memory 10 to the data I/O register 11.
The data enters the interface 12 via the interface 12 and is stored in the output disk memory 13. The final result of this output disk is output to a color scanner (not shown) and used as an original film for printing.

アドレス発生回路9は、第1のメモリ4、第2
のメモリ10、コントロールメモリ15のアドレ
スを発生する。
The address generation circuit 9 is connected to the first memory 4, the second memory
The addresses of the memory 10 and control memory 15 are generated.

アクセスタイムの遅いメモリ素子を用いる場
合、ビデオ周波数に対応するため、メモリからの
読み出しを、パラレルに行つた後、シリアルの画
像データに変換して用いる。そのため、メモリア
ドレスが、前記処理の場合と異るが、これは一般
技術手段であり、ここでは述べることを省略す
る。
When using a memory element with a slow access time, in order to correspond to the video frequency, reading from the memory is performed in parallel and then converted into serial image data for use. Therefore, the memory address is different from that in the above process, but this is a general technical means and will not be described here.

本発明にかかわるアドレス発生回路部分につい
ては後述する。
The address generation circuit portion related to the present invention will be described later.

アフイン変換回路8は、アドレス発生回路9に
おいて発生したアドレスを、アフイン変換処理を
行う場合に利用され、アフイン変換後のアドレス
が、第1のメモリ4へ与えられる。このことは、
第1のメモリ4にある画像をアフイン変換する場
合に、変換後の第2のメモリ10上のアドレスを
発生して、逆アフイン変換し、第1のメモリ4上
のアドレスを求めて、画像データを読み出し、第
2のメモリ10上へ転送することになる。
The affine conversion circuit 8 is used to perform affine conversion processing on the address generated by the address generation circuit 9, and the address after affine conversion is provided to the first memory 4. This means that
When performing affine transformation on the image in the first memory 4, the address on the second memory 10 after conversion is generated, the inverse affine transformation is performed, the address on the first memory 4 is obtained, and the image data is is read out and transferred onto the second memory 10.

次に、本発明にかかる変換処理の概略について
述べる。
Next, an outline of the conversion process according to the present invention will be described.

第3図は、ある画像27のサイズが、実施例と
して用いる第1のメモリ4、第2のメモリ10の
サイズ1024×1024画素より大きい画像であること
を示している。
FIG. 3 shows that the size of a certain image 27 is larger than the size of 1024×1024 pixels of the first memory 4 and second memory 10 used in the example.

この画像27を、ある角度θだけ回転させて、
画像28を得る処理を行なう場合について説明す
る。
This image 27 is rotated by a certain angle θ,
A case in which processing for obtaining the image 28 is performed will be described.

従来の方法で、回転画像を第2のメモリ10上
へ作ろうとするときには、次の様な方法がとられ
ている。
When attempting to create a rotated image on the second memory 10 using a conventional method, the following method is used.

まず、画像27を第1のメモリ4へのサイズ
分、即ち第3図I1の分を、入力デイスク1より入
力し、第1のメモリ4上へ記憶する。次に、第2
のメモリ10のアドレスを発生させ、そのアドレ
スを、逆アフイン変換し第1のメモリ4上のアド
レスとしてデータを読み出し、そのデータを第2
のメモリ10へ記憶させる。
First, the image 27 of the size shown in FIG . Next, the second
generates an address in the memory 10, performs inverse affine conversion on that address, reads data as an address on the first memory 4, and reads the data as an address on the second memory 4.
It is stored in the memory 10 of.

この様にして、第2のメモリ上の領域の全アド
レスを発生し、対応する第1のメモリ(4)上からの
データを、第2のメモリ10上へ移すと、第3図
に示す部分画像30が、第2のメモリ10上に記
憶できる。
In this way, when all the addresses of the area on the second memory are generated and the corresponding data from the first memory (4) is transferred onto the second memory 10, the area shown in FIG. An image 30 can be stored on the second memory 10.

次に、部分画像31を作る必要があるが、この
部分は、画像27のI2部分の回転結果であるた
め、第1のメモリ4上へ、I2部分を入力デイスク
メモリ1より読み出し、第1のメモリ4へ記憶さ
せる。
Next, it is necessary to create a partial image 31, but since this portion is the rotation result of the I 2 portion of the image 27, the I 2 portion is read from the input disk memory 1 onto the first memory 4, and the 1 memory 4.

その後、部分画像31部分を第2のメモリ10
上に対応させて、アドレス発生を行い、逆アフイ
ン変換し、第1のメモリ4上の対応する部分を読
み出し、第2のメモリ10上へ記憶させる。
After that, the partial image 31 is stored in the second memory 10.
Address generation is performed in correspondence with the above, inverse affine transformation is performed, the corresponding portion on the first memory 4 is read out, and the corresponding portion is stored on the second memory 10.

こうして、まず第2のメモリ10上へ、I5部分
に相当する部分画像30,31が出来る。
In this way, first, partial images 30 and 31 corresponding to the I5 portion are created on the second memory 10.

このデータは、第2のメモリ10からデータ
I/Oレジスタ11、インタフエイス12を介し
て、出力デイスク13へ記憶される。
This data is stored from the second memory 10 to the output disk 13 via the data I/O register 11 and the interface 12.

次に、上記と同様にして繰返し処理し、部分画
像33,32,34を作り、さらに部分画像3
5,36を作り、かつ部分画像37,38,3
9,40、次に部分画像41、次に部分画像4
3、最後に部分画像42を作ると、回転後の画像
28が完成する。
Next, the process is repeated in the same manner as above to create partial images 33, 32, and 34, and then partial image 3.
5, 36, and partial images 37, 38, 3
9, 40, then partial image 41, then partial image 4
3. Finally, by creating the partial image 42, the rotated image 28 is completed.

以上の処理の逆行のために、画像27は4つに
分割され、回転後の画像28は、14にも分割され
る。
Because of the reversal of the above processing, the image 27 is divided into four parts, and the rotated image 28 is also divided into fourteen parts.

このため、入力デイスクメモリ1からのデータ
転送、出力デイスクメモリ13へのデータ転送の
回数が非常に多くなり、処理時間は非常に長くな
る。
Therefore, the number of data transfers from the input disk memory 1 and the data transfer to the output disk memory 13 becomes very large, and the processing time becomes very long.

本発明では、次に述べる方法により、この問題
点の解決を計つた。
The present invention attempts to solve this problem by the method described below.

(1) 第1のメモリ4、第2のメモリ10、必要に
応じて、コントロールメモリ15を、XYアド
レス長を可変とする。即ち、X=Y,X=2Y,
…2X=Y…の如く、正方形から長方形の2次
元形状として、使用出来る様にする。これを以
下、アドレスビツトモードという。
(1) The XY address lengths of the first memory 4, the second memory 10, and, if necessary, the control memory 15 are made variable. That is, X=Y, X=2Y,
It can be used as a two-dimensional shape ranging from a square to a rectangle, such as 2X=Y. This is hereinafter referred to as address bit mode.

(2) 画像を、(1)で記したいろいろな矩形メモリの
状態で処理する場合の最大の処理効率のよいエ
リアを求める。即ち、どの矩形メモリ形状を使
用すれば、一度の処理でより大きな部分の画像
を扱うことが出来るかを求める。
(2) Find the area with the highest processing efficiency when processing images in the various rectangular memory states described in (1). That is, it is determined which rectangular memory shape should be used to handle a larger portion of the image in one process.

(3) (2)で求めた結果と、回転パラメータによつ
て、実際の処理を行う。この時、画像の分割を
最小限とする方法をとることにより、処理時間
は短くなる。
(3) Perform actual processing using the results obtained in (2) and the rotation parameters. At this time, the processing time can be shortened by using a method that minimizes image division.

第1図に示すアドレス発生回路9は、上記目的
を行うためのものであり、第4図に、その実施例
を示す。
The address generation circuit 9 shown in FIG. 1 is for achieving the above purpose, and FIG. 4 shows an embodiment thereof.

第4図Aは、2次元配列X,Yの矩形メモリの
Xアドレス長、Yアドレス長を可変にするもの
で、具体的には(X+Y)=20bitのアドレスライ
ンから、ビツトの途中を上位と下位に分けて、そ
の中間部を上下にスライドさせて、X,Yアドレ
ス長を可変にする実施例である。
Figure 4A shows a device that makes the X address length and Y address length of a rectangular memory of two-dimensional arrays X and Y variable.Specifically, from the address line of (X+Y)=20 bits, the middle of the bit is set as the upper part. This is an embodiment in which the X and Y address lengths are made variable by dividing into lower parts and sliding the middle part up and down.

この例におけるアドレスビツトモード1〜5
は、次のように予め設定されている。
Address bit mode 1-5 in this example
is preset as follows.

ただし、(X+Y)=20bitである。 However, (X+Y)=20 bits.

モード1のとき、X=8bit,Y=12bit モード2のとき、X=9bit,Y=11bit モード3のとき、X=10bit,Y=10bit モード4のとき、X=11bit,Y=9bit モード5のとき、X=12bit,Y=8bit 第4図Aにおいて、カウンタ44は、入力する
タイミングクロツクをバイナリーに計数し、20
219で示す20ビツトのアドレスを出力する。
Mode 1: X=8bit, Y=12bit Mode 2: X=9bit, Y=11bit Mode 3: X=10bit, Y=10bit Mode 4: X=11bit, Y=9bit Mode 5 When X=12bit, Y=8bit In FIG. 4A, the counter 44 counts the input timing clock in binary,
2 Outputs the 20-bit address indicated by 19 .

カウンタ44の出力の下位20〜27は、上記のど
のアドレスビツトモードにおいても、Xアドレス
の下位X0〜X7として出力される。また、その上
位28〜219は、それぞれシフト回路45に入り、
予め選択されたアドレスビツトモードに応じて上
下にスライドして、Xアドレス、Yアドレスに振
り分けられる。
The lower order bits 20 to 27 of the output of the counter 44 are output as the lower order X0 to X7 of the X address in any of the above address bit modes. Moreover, the upper 28 to 219 enter the shift circuit 45, respectively.
The addresses are divided into X addresses and Y addresses by sliding up and down according to the preselected address bit mode.

各シフト回路45の1個の構成を、第4図Bに
示す。同図において、デコーダ46は、与えられ
た3bitのアドレスビツトモードに応じて、バツフ
ア47-1〜5のいずれか1つをイネーブルとする。
アドレスビツトモードに対するデコーダ46の出
力は、次のようにいずれか1つの桁のみに“1”
が立つ。
The configuration of one of each shift circuit 45 is shown in FIG. 4B. In the figure, the decoder 46 enables any one of the buffers 47-1 to 47-5 according to the applied 3-bit address bit mode.
The output of the decoder 46 for address bit mode is "1" in only one digit as follows.
stands.

モード1のとき、左より1,0,0,0,0 モード2のとき、左より0,1,0,0,0 モード3のとき、左より0,0,1,0,0 モード4のとき、左より0,0,0,1,0 モード5のとき、左より0,0,0,0,1 このデコーダ46の出力に応じてバツフア47
−1〜5のいずれか1つがイネーブルになる。たとえ
ば、アドレスビツトモード1のとき、バツフア4
-1のみがイネーブルになる。バツフア47-1〜5
の中のどれがイネーブルになるかによつて、シフ
ト回路45-1〜16は、カウンタ44の出力の上位
28〜219をX,Y各アドレスに振り分ける。
Mode 1: 1,0,0,0,0 from the left Mode 2: 0,1,0,0,0 from the left Mode 3: 0,0,1,0,0 from the left Mode 4 0, 0, 0, 1, 0 from the left when mode 5 is 0, 0, 0, 0, 1 from the left according to the output of this decoder 46.
Any one of −1 to 5 is enabled. For example, when address bit mode is 1, buffer 4
7 -1 only is enabled. Batsuhua 47 -1~5
Depending on which one of the outputs is enabled, the shift circuits 45-1 to 45-16 may shift the upper output of the counter 44.
Distribute 2 8 to 2 19 to each address of X and Y.

たとえば、アドレスビツトモード1の場合は、
上述のとおりバツフア47-1のみがイネーブルで
あるため、シフト回路45-1〜4の出力が0(X8
X9=X10=0)となつて、結局、カウンタ44の
出力の下位20〜27がXアドレスX0〜X7となる。
このとき、シフト回路45-5がカウンタ44の出
力29を出力し、残りのシフト回路45-7〜16がカ
ウンタ44の出力210/219を出力し、結局、カウ
ンタ44の出力の上位28〜219がYアドレスY0
Y11となる。
For example, in address bit mode 1,
As mentioned above, only the buffer 47 -1 is enabled, so the outputs of the shift circuits 45 -1 to 45 -4 are 0 (X 8 =
X 9 =X 10 =0), and eventually the lower 20 to 27 outputs of the counter 44 become the X addresses X0 to X7 .
At this time, the shift circuit 45-5 outputs the output 29 of the counter 44, and the remaining shift circuits 45-7 to 16 output the output 210/219 of the counter 44. 2 8 ~ 2 19 is Y address Y 0 ~
Y becomes 11 .

また、アドレスビツトモード2の場合は、シフ
ト回路45のバツフア47-2のみがイネーブルと
なるために、シフト回路45-1〜3の出力が0とな
り、シフト回路45-4がカウンタ44の出力28
出力し、結局、カウンタ44の出力の下位20〜28
がXアドレスとなる。このとき、前述のとおりバ
ツフア47-2のみがイネーブルであるため、シフ
ト回路45-5〜15がカウンタ44の出力の上位29
〜219を出力し、結局、YアドレスY0〜Y11とす
る。なお、シフト回路45-16の出力は、0であ
る。
In addition, in the case of address bit mode 2, only the buffer 47-2 of the shift circuit 45 is enabled, so the outputs of the shift circuits 45-1 to 45-3 become 0, and the shift circuit 45-4 outputs the output 2 of the counter 44. 8 , and in the end, the lower 20 to 28 of the output of the counter 44
becomes the X address. At this time, since only the buffer 47-2 is enabled as described above, the shift circuits 45-5 to 15 are the upper two 9 outputs of the counter 44.
~2 19 is output, and the Y address is Y 0 ~Y 11 after all. Note that the output of the shift circuit 45-16 is 0.

アドレスビツトモード3〜5の場合における
X,Y各アドレスの振り分けについては、上述と
同様であるので、その説明を省略する。
The distribution of the X and Y addresses in the case of address bit modes 3 to 5 is the same as described above, so a description thereof will be omitted.

このアドレス出力は、アフイン変換回路8へ入
り、第1のメモリ4のアドレスとなる。又直接第
2のメモリ10やコントロールメモリ15のアド
レスとなる。もちろん、このときの第2のメモリ
10、コントロールメモリ15へのアドレスは、
直接20〜219がそのまま与えられるものである。
This address output enters the affine conversion circuit 8 and becomes the address of the first memory 4. Also, the address directly becomes the address of the second memory 10 or the control memory 15. Of course, the addresses to the second memory 10 and control memory 15 at this time are:
2 0 to 2 19 are given directly.

アフイン変換回路8は、実際には、逆アフイン
変換を行う。即ち、回転後の第2のメモリ10上
のアドレス(X,Y)に対応する回転前の第1の
メモリ4上のアドレス(x,y)を求める変換を
行う。
The affine transformation circuit 8 actually performs an inverse affine transformation. That is, conversion is performed to obtain the address (x, y) on the first memory 4 before rotation that corresponds to the address (X, Y) on the second memory 10 after rotation.

この一般式は、 (x y)=(ad cd)(x y)+(e f)であり、第5図にそ
の回路例を示す。この計算は、前記の式をそのま
ま実行すればよく、係数a,b,c,dとの掛算
が、マルチプライヤー48-1〜4でX,Yに対して
行なわれ、次に、それぞれ、X項、Y項で計算器
49-1,49-2で加算され、係数e,fとの加算
が、加算器49-3,49-4で行なわれて、求める
結果x,yが出力される。
This general formula is (x y)=(ad cd)(x y)+(e f), and an example of its circuit is shown in FIG. This calculation can be done by simply executing the above formula, and the multipliers 48 -1 to 4 multiply X and Y by the coefficients a, b, c, and d, and then The term and Y term are added by calculators 49 -1 and 49 -2 , and addition with coefficients e and f is performed by adders 49 -3 and 49 -4 , and the desired results x and y are output. .

結果として、画像回転後の第2のメモリ10上
の座標へ移されるべき原画像、即ち第1のメモリ
4上の座標が決まり、その座標のデータが、第1
のメモリ4から第2のメモリ10へ移される。
As a result, the original image to be transferred to the coordinates on the second memory 10 after image rotation, that is, the coordinates on the first memory 4, are determined, and the data of the coordinates are transferred to the coordinates on the second memory 10.
from the second memory 4 to the second memory 10.

次に、本発明による方法の具体例について説明
する。
Next, a specific example of the method according to the present invention will be described.

本発明について再度整理すると、ハードウエア
として、メモリの二次元的形状が、複数種可変な
様にし、画像の容量がメモリ容量より大きい場合
や、同等容量でも、アフイン変換処理によつてメ
モリ容量が不足する場合、画像を分割処理するこ
とを行い、この分割の方法を、メモリの二次元的
形状の最適な状態を選び、最も画像分割を有効に
行うことにより、処理時間を短くする方法であ
る。
To summarize the present invention again, the two-dimensional shape of the memory is made variable in multiple types as hardware, and when the capacity of the image is larger than the memory capacity, or even if the capacity is equivalent, the memory capacity is increased due to affine conversion processing. If there is a shortage, the image is divided and processed, and this division method is used to select the optimal state of the two-dimensional shape of the memory and perform image division most effectively, thereby shortening the processing time. .

第6図は、処理全体を説明するフローチヤート
である。
FIG. 6 is a flowchart illustrating the entire process.

第7図は、第6図のフローチヤートを図で説明
したものである。
FIG. 7 is a diagram explaining the flowchart of FIG. 6.

まず前提として、メモリ矩形と画像の重ね合せ
は、常にその対称中心を一致させて行う。
First, as a premise, the memory rectangle and the image are always superimposed so that their symmetry centers coincide.

第6図において、本発明による処理方法全体を
まず説明する。
Referring to FIG. 6, the entire processing method according to the present invention will first be described.

第6図ステツプ,,,,は、最適な
アドレスビツトモードを求める過程である。即
ち、これらの過程により出力画像面積が最大とな
るアドレスビツトモードを求める。
Steps . . . in FIG. 6 are the process of finding the optimum address bit mode. That is, through these steps, the address bit mode that maximizes the output image area is determined.

ステツプでは、上記で求めたアドレスビツト
モードによる出力画像面積図形内において、内接
する矩形(X,Y軸に平行な辺による矩形)を求
める。この矩形内が、1回の処理単位となるもの
であり、デイスクメモリとのアクセスを高速に行
つたり、画像分割を単純化するために行う。
In this step, an inscribed rectangle (a rectangle with sides parallel to the X and Y axes) is determined within the output image area figure obtained in the address bit mode determined above. The area within this rectangle is a single processing unit, and is performed in order to access the disk memory at high speed and to simplify image division.

ステツプ,,,は、実際の画像処理を
行う過程である。これらの詳細について説明す
る。
Steps , , , are steps in which actual image processing is performed. These details will be explained below.

ステツプ,,,,,,は、コン
ピユータのプログラムによつて実施する。は、
ハードウエア回路を使用して処理する。
Steps , , , , are executed by a computer program. teeth,
Process using hardware circuits.

具体的な計算方法の概略を、第7図を用いて説
明する。
An outline of a specific calculation method will be explained using FIG. 7.

第7図〜は、に示す入力画像27が処
理されてゆく状態を示す。
7 to 7 show the state in which the input image 27 shown in FIG. 7 is being processed.

第6図の過程については、第7図,に示
す様に入力画像がメモリサイズより大きい場合を
考えている。したがつて、の過程において、重
なり多角形Pのサイズは第1のメモリ4のサイズ
そのものであり、この例では、第8図1,2に示
すようなの過程による多角形Pのサイズ変更が
なく、このような場合には、の過程を省略する
こともできる。そして、入力画像がメモリサイズ
より大きい場合のイニシヤル条件として、第1の
メモリ4のアドレスビツトモードは、たとえば1
とする。
Regarding the process shown in FIG. 6, the case where the input image is larger than the memory size as shown in FIG. 7 is considered. Therefore, in the process, the size of the overlapping polygon P is the same as the size of the first memory 4, and in this example, there is no change in the size of the polygon P in the process shown in Figures 1 and 2. , In such a case, the process of can be omitted. As an initial condition when the input image is larger than the memory size, the address bit mode of the first memory 4 is set to 1, for example.
shall be.

まずこの例では、重なり多角形(P)は、第1
のメモリ4に書き込ませた大きさそのものを示
す。入力画像27と、第1のメモリ4の関係が、
第8図1、第8図2の様な場合には重なり多角形
Pは、処理すべき画像とメモリとを両者の中心を
一致させて重ねたときの両方の外形の4直線の交
点を、単純な一次方程式の解として求めることに
より、計算できる。
First, in this example, the overlapping polygon (P) is the first
It shows the size itself written in the memory 4 of. The relationship between the input image 27 and the first memory 4 is
In the case of FIG. 81 and FIG. 82, the overlapping polygon P is the intersection of the four straight lines of the outline of the image to be processed and the memory when they are overlapped with their centers aligned, It can be calculated by solving a simple linear equation.

第8図3の様に、複雑な形状の入力画像の場合
には、画像全体を矩形で囲む処理用入力画像を決
めることによつて、同様の計算を行う。
In the case of an input image having a complicated shape as shown in FIG. 8 and 3, similar calculations are performed by determining an input image for processing that encloses the entire image in a rectangle.

第6図では、で求めた重なり多角形を回転
させた多角形(Q)を求める。これは、多角形
(P)の各頂点の座標のアフイン変換を実施すれ
ばよい(図7−)。
In FIG. 6, a polygon (Q) is obtained by rotating the overlapping polygon obtained in . This can be done by performing affine transformation of the coordinates of each vertex of the polygon (P) (FIG. 7-).

では、で求めた多角形(Q)と、出力画像
用第2のメモリ10との重なり多角形(R)を求
める(図7−,)。
Now, an overlapping polygon (R) between the polygon (Q) obtained in and the second memory 10 for output image is obtained (FIG. 7-).

ここで、多角形Pの頂点Pi(Xi,Yi)を、アド
レスビツトモード(j)に従うメモリのX,Yの
長さをXj,Yjとし、多角形Pに対して対称点が
メモリの中心(Xj/2,Yj/2)で、θ角度回
転すると、アフイン変換の式により、回転された
多角形Qの頂点Qiの座標は、次式で求められる。
Here, the vertex P i (X i , Y i ) of the polygon P is a symmetric point with respect to the polygon P, where the lengths of X and Y of the memory according to the address bit mode (j) are X j and Y j . When is rotated by an angle of θ at the center of the memory (X j /2, Y j /2), the coordinates of the vertex Q i of the rotated polygon Q can be determined by the following equation using the affine transformation formula.

Qi(各頂点)=A*Pi+B A=(COSθ Sinθ -Sinθ COSθ) B=(1/2Xj(1−COSθ)+1/2YjSinθ, 1/2Yj(1−COSθ)−1/2XjSinθ) 多角形Qと出力画像用第2のメモリ10との重
なり図形は、直線分の交点を求めることで、Ri
求められる。一般に、線分Pn,Pn+1と線分Qn,
Qn+1との交点Rnは、次のように求められる。
Q i (each vertex) = A * P i + B A = (COSθ Sinθ - Sinθ COSθ) B = (1/2X j (1-COSθ) + 1/2Y j Sinθ, 1/2Y j (1-COSθ) -1 /2X j Sin θ) R i of the overlapping figure of the polygon Q and the second memory 10 for output images can be found by finding the intersection of straight line segments. In general, line segment Pn, Pn +1 and line segment Qn,
The intersection point Rn with Qn +1 is obtained as follows.

Pi=(pxi,pyi) Qi=(qxi,qyi) pj=pji′−pji qj=qji′−qji rj=qji−pji とおく。 Pi = (pxi, pyi) Qi=(qxi, qyi) pj=pji′−pji qj=qji′−qji Let rj=qji−pji.

ただし i′=i+1,j=x,yである。 However, i'=i+1, j=x, y.

線分,+1について y=py/px(x−pxn)+pyn 線分,+1について y=qy/qx(x−qxn)+qyn このとき、t=qyrx−qxry/pxqy−pyqxとおくと、 (ただし、0≦t≦1) 交点Rnは、 Rn(x,y)=(pxn+px′t,pyn+py′t)とな
る。
For the line segment +1 , y=py/px(x-pxn)+pyn For the line segment, +1 , y=qy/qx(x-qxn)+qyn In this case, if we set t=qyrx-qxry/pxqy-pyqx, (However, 0≦t≦1) The intersection point Rn is Rn (x, y) = (pxn + px't, pyn + py't).

従つて、n角形のPの頂点をPi、m角形のQの
頂点をQiとしたとき、PとQで出来るRの多角形
の頂点は、 PiのうちQの内部にあるもの QiのうちPの内部にあるもの i i+1j j+1との交点で得られる。
Therefore, when the vertices of the n-gon P are P i and the vertices of the m-gon Q are Q i , the vertices of the R polygon formed by P and Q are those inside Q among P i . The part of i that is inside P is obtained at the intersection of i i+1 and j j+1 .

この計算により、多角形Rを求める。さらに
ではこの多角形Rの面積を求める。面積は、ヘロ
ンの公式を使用して、多角形の中心から各頂点へ
線分を引き、三角形に分割して、その各々の総和
を求めればよい。
Through this calculation, polygon R is obtained. Furthermore, the area of this polygon R is determined. To calculate the area, use Heron's formula to draw line segments from the center of the polygon to each vertex, divide it into triangles, and find the sum of each triangle.

次ににて、出力画像用第2のメモリ10のア
ドレスビツトモードを変えて、最大の多角形Rと
なる出力画像用第2のメモリ10の最適(Rが最
大)となるアドレスビツトモードを求める。
Next, by changing the address bit mode of the second memory 10 for output images, find the address bit mode that is optimal (R is maximum) for the second memory 10 for output images that has the largest polygon R. .

〜を繰返して、入力画像用第1のメモリ4
のアドレスビツトモード各々について、多角形R
の最大のものを求め、そのときの入力画像用第1
のメモリ4の最適アドレスビツトモードを得る。
By repeating ~, the first memory for input image 4
For each address bit mode of
Find the largest one for the input image at that time.
Obtain the optimum address bit mode of memory 4.

この様にして、第1のメモリ、第2のメモリの
最適アドレスビツトモードが決まる。なお、回転
後の多角形(Q)と第2のメモリ10との重なり
部分である多角形(R)の面積が最大であれば、
一度のデータ処理で最も広い部分の画像を扱うこ
とができるため、このときのアドレスビツトモー
ドを最適として選択するのである。
In this way, the optimum address bit modes for the first memory and the second memory are determined. Note that if the area of the polygon (R) that is the overlapped portion of the rotated polygon (Q) and the second memory 10 is maximum, then
Since the widest part of the image can be handled in one data process, the address bit mode at this time is selected as optimal.

最大のRが求められたことにより、その多角形
内で、実際に処理する有効内接矩形sを求める。
この有効内接矩形sは、出力画像を第2のメモリ
10上で作つたとき、直接そのまま出力デイスク
13へ転送出来る様にすると共に、画像の分割を
単純化し処理を簡単にするために行う。
Since the maximum R has been determined, an effective inscribed rectangle s to be actually processed within the polygon is determined.
This effective inscribed rectangle s is set so that when an output image is created on the second memory 10, it can be transferred directly to the output disk 13 as it is, and also to simplify image division and processing.

第7図は、上述の処理で求めた有効内接矩形
Sを示し、第7図は、その矩形Sを出力画像
の分割に利用するためのサイズを示す概念図であ
る。
FIG. 7 shows the effective inscribed rectangle S obtained through the above process, and FIG. 7 is a conceptual diagram showing the size of the rectangle S used for dividing the output image.

第7図は、出力デイスクメモリ13上におけ
る出力画像および分割状態を示す概念図であり、
実線で示すものが回転処理後の出力画像であり、
点線で示すものが分割状態である。第7図xは、
入力デイスクメモリ1上での入力画像および分割
状態を示す概念図であり、実線で示すものが入力
画像であり、二点鎖線で示すものが分割状態であ
る。なお、第7図xには、参考として出力画像上
の分割状態を点線で表示してある。
FIG. 7 is a conceptual diagram showing the output image and division state on the output disk memory 13,
The solid line shows the output image after rotation processing.
What is shown by the dotted line is the divided state. Figure 7 x is
It is a conceptual diagram showing an input image and a divided state on the input disk memory 1, where the solid line indicates the input image, and the two-dot chain line indicates the divided state. Note that in FIG. 7x, the division state on the output image is indicated by dotted lines for reference.

有効内接矩形sは、以下に第9図における例に
ついて説明する様にして求める。
The effective inscribed rectangle s is determined as described below with reference to the example shown in FIG.

座標中心を、sの中心に合わせて考える。まず
第1象限に、第9図の様な重なり多角形Rの一部
があつたとするとき、その辺がX,Y軸と交わる
点を、T3,T1とし、さらにT2で頂点を持つとす
る。T5は、1 2の延長線のX軸との交点であ
る。T4は座標原点とする。
Consider setting the coordinate center to the center of s. First, if there is a part of the overlapping polygon R as shown in Figure 9 in the first quadrant, let the points where its sides intersect with the X and Y axes be T 3 and T 1 , and further define the vertex at T 2 . Suppose you have one. T 5 is the intersection of the extension line of 1 2 with the X axis. T 4 is the coordinate origin.

各座標は、図示の様にとると、i i+1上に(こ
こでは1 2)長方形の頂点U0があるとする。
When each coordinate is taken as shown in the figure, it is assumed that there is a rectangular vertex U 0 on i i+1 (here 1 2 ).

このとき、長方形の面積S(u)は、 S(u)=Xu*Yuであり、uがi i+1上を動く
とき、S(u)の最大のuの位置(U0)は、U0
(t1/2,t5/2)でる。
At this time, the area of the rectangle S(u) is S(u)=X u *Y u , and when u moves on i i+1 , the maximum u position of S(u) (U 0 ) is U 0 :
(t 1 /2, t 5 /2) appears.

もし、i i+1上にU0がないときは、TiとTi+1
うち、U0に近い方の点をとる。
If U 0 does not exist on i i+1 , choose the point closer to U 0 between T i and T i+1 .

以上を、すべてのi i+1について行い、最大の
S(u)となるU0座標を求める。こうして、画像
を最大面積にて処理できる分割サイズs(即ち第
1のメモリと第2のメモリの重なり部分での内接
有効矩形)を求める。
The above is performed for all i i+1 to find the U 0 coordinate that gives the maximum S(u). In this way, the division size s (that is, the effective inscribed rectangle in the overlapping portion of the first memory and the second memory) that allows the image to be processed with the maximum area is determined.

この状態で、出力画像にて分割例を示すのが、
第7図−である。
In this state, an example of division in the output image is shown below.
Figure 7-.

次に、第6図にて、この内接有効矩形(s)
を入力画像上で考える。このためには、sを逆ア
フイン変換すればよい。この状態を示したのが、
第7図である。
Next, in Fig. 6, this inscribed effective rectangle (s)
Consider on the input image. For this purpose, s may be subjected to inverse affine transformation. This state was shown by
FIG.

次に、でと同様に、入力画像の上でXY軸
に平行な辺で囲まれた矩形(s′)を考える。この
ことは、やはり入力画像の入力デイスク1からの
読み出しや、処理の簡単化のために必要である。
ただし今回は、外接矩形(s′)を求める。このこ
とは、入力画像であるため、逆アフインされた部
分の画像が、もれなく必要となるためである。こ
の状態を示すのが、第7図xiである。
Next, as in , consider a rectangle (s') surrounded by sides parallel to the XY axes on the input image. This is also necessary for reading input images from the input disk 1 and for simplifying processing.
However, this time, we will find the circumscribed rectangle (s′). This is because, since this is an input image, all images of the reversely affixed portion are required. This state is shown in FIG. 7 xi.

この外接矩形(s′)の求め方は簡単であり、逆
アフインされた出力分割サイズ(s)に相当する
ものの、各頂点座標の最大値および最小値によれ
ばよい。
This circumscribing rectangle (s') can be easily determined by using the maximum and minimum values of the coordinates of each vertex, although it corresponds to the inversely affixed output division size (s).

こうして決つたs′の面積は、当然のこととし
て、第1のメモリ4の最適アドレスビツトモード
の大きさになつている。従つて、では、分割の
矩形s′の各々の座標を求めることになる。
The area of s' thus determined is naturally the size of the optimum address bit mode of the first memory 4. Therefore, we will now find the coordinates of each of the dividing rectangles'.

この様にして、入力画像27に回転θを加えた
ときの処理における、入力画像用第1のメモリ4
と出力画像用第2のメモリ10の最適アドレスビ
ツトモードが決まる。
In this way, the input image first memory 4 in the process when the rotation θ is applied to the input image 27
The optimum address bit mode of the second memory 10 for output images is determined.

第6図のフローチヤート,は、それを実際
にハードウエアを用いて処理する手順である。第
7図xii,は、第1のメモリ、第2のメモリ上
の概念である。
The flowchart in FIG. 6 is a procedure for actually processing this using hardware. FIG. 7 xii shows the concept of the first memory and the second memory.

第1図において、上記第6図、第7図、第9図
の計算は、CPU16によつて行なわれ、最適ア
ドレスビツトモードは、アドレス発生回路9へデ
ータとして与えられる。
In FIG. 1, the calculations shown in FIGS. 6, 7, and 9 are performed by the CPU 16, and the optimum address bit mode is given to the address generation circuit 9 as data.

入力デイスク1、出力デイスク13からの画像
の分割しての読み出し位置のアドレス指定、画像
の書き込み位置のアドレス指定は、図示していな
いが、一般的なやり方で、CPU16がDISCを制
御する。
Although not shown in the drawings, the CPU 16 controls the DISC in a general manner, such as addressing the reading position of the divided images from the input disk 1 and the output disk 13, and addressing the writing position of the image.

さらに、アフインパラメータ(第5図a,b,
c,d,e,f)が、同様にCPU16よりアフ
イン変換回路8へ渡される。
Furthermore, the affine parameters (Fig. 5 a, b,
c, d, e, f) are similarly passed from the CPU 16 to the affine conversion circuit 8.

この様にデータセツトされたのち、入力画像の
分割による有効矩形(s′)分が、第1のメモリ4
へ入力デイスク1より記憶される。
After the data is set in this way, the effective rectangle (s') obtained by dividing the input image is stored in the first memory 4.
is stored from the input disk 1.

次に、アドレス発生回路9が動作し、第2のメ
モリ10の先頭番地から、順次アドレスを第2の
メモリ10へ出力される。
Next, the address generation circuit 9 operates and sequentially outputs addresses to the second memory 10 starting from the first address of the second memory 10.

このとき、同時に回転の条件に従つて、逆アフ
インパラメータがセツトされているアフイン変換
回路8へそのアドレスが入り、第1のメモリ4上
の対応アドレスを出力し、第1のメモリ4からの
データが第2のメモリ10へ転送される。
At this time, at the same time, the address enters the affine conversion circuit 8 in which the inverse affine parameter is set according to the rotation conditions, outputs the corresponding address on the first memory 4, and converts the address from the first memory 4. The data is transferred to the second memory 10.

1つの分割が終れば、第2のメモリ10の内容
を、出力デイスク13へ記憶したのち、新しい次
の入力画像の分割を同様に処理する。この繰返し
を、分割数分行う。
When one division is completed, the contents of the second memory 10 are stored on the output disk 13, and then a new division of the next input image is processed in the same way. This process is repeated for the number of divisions.

当然のこととして、第1のメモリ4から第2の
メモリ10への転送途中に演算回路7を通るた
め、回転処理と併せて、他の画像演算を行うこと
が可能である。又、コントロールメモリ15を用
いて、画像演算を画像の一部についてのみ行うこ
とも可能である。
Naturally, since the image passes through the arithmetic circuit 7 during transfer from the first memory 4 to the second memory 10, it is possible to perform other image operations in addition to rotation processing. It is also possible to use the control memory 15 to perform image calculations only on a part of the image.

このことから、さらに、第2のメモリ10上へ
1つの画像を記憶しておいて、第1のメモリ4上
から回転して、第2のメモリ10上へコントロー
ルメモリ15のマスクに従つて、画像の一部を第
2のメモリ上へ合成することも可能である。即
ち、画像集合−レイアウト処理−も、回転と同時
に可能である。
From this, further, one image is stored on the second memory 10, rotated from the first memory 4, and transferred onto the second memory 10 according to the mask of the control memory 15. It is also possible to synthesize part of the image onto the second memory. That is, image collection - layout processing - is also possible at the same time as rotation.

画像に対して、他のアフイン変換、たとえば拡
大・縮小等が同時に行なわれても、アフイン変換
の一般性は失なわれないため、1回の処理で可能
である。
Even if other affine transformations, such as enlargement and reduction, are performed on the image at the same time, the generality of the affine transformation is not lost, so it can be performed in a single process.

以上は、画素1つ1つについて画像処理の説明
をしたが、あらかじめ画像に対し、間引き等の粗
画像に対して、演算処理、回転、集合(レイアウ
ト)等が行なわれても、実際の画像密度そのまま
の処理へ簡単に対応させて、上述の計算を用いて
各データを求めることができる。
Above, we have explained image processing for each pixel, but even if arithmetic processing, rotation, aggregation (layout), etc. are performed on a coarse image such as thinning, the actual image Each data can be obtained using the above calculations by simply processing the density as it is.

即ち、粗画像に対して行つた回転、画像配置や
ルツクアツプテーブルによる階調変換等は、座標
値やテーブルへの書き込み値であり、画素1つ1
つに対応する精度に計算できるためである。この
要求は、実際のレイアウトスキヤナに非常に役立
つものであり、この発明の方法は、これらに対し
ても有効に活用できる。
In other words, the rotation, image arrangement, and gradation conversion using a lookup table performed on a rough image are coordinate values and values written to a table, and each pixel is
This is because calculations can be made with an accuracy corresponding to This requirement is very useful for actual layout scanners, and the method of the present invention can be effectively used for these as well.

(発明の効果) この様に、画像処理装置にアドレス長可変型メ
モリを用い、CPU等の制御・計算手段により、
最適なアドレスビツトモードを求め、最少の繰返
し処理回数となる。
(Effect of the invention) In this way, by using a variable address length memory in an image processing device, and using a control/calculation means such as a CPU,
The optimum address bit mode is found and the number of repeated processing is minimized.

画像分割を行うことにより、回転等の処理に対
しても、デイスクアクセスの少ない、処理効率の
よい方法が得られる。
By performing image division, a highly efficient method with fewer disk accesses can be obtained for processing such as rotation.

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

第1図は、本発明に関るレイアウトスキヤナの
基本構成図、第2図は、演算回路の実施例図、第
3図は、画像の大きさを示す図、第4図は、アド
レス発生回路の実施例図、第5図は、アフイン変
換回路の実施例図、第6図は、本発明の処理フロ
ーチヤート、第7図は、フローチヤートの説明
図、第8図は、入力画像と第1のメモリとの大き
さを示す図、第9図は、面積(S)の最大を求め
ることを説明する図である。 1……入力デイスクメモリ、2……インタフエ
ース、3……データI/Oレジスタ、4……第1
のメモリ(第1のバツフアメモリ)、5……表示
制御回路、6……カラーモニタ、7……演算回
路、8……アフイン変換回路、9……アドレス発
生回路、10……第2のメモリ(第2のバツフア
メモリ)、11……データI/Oレジスタ、13
……出力デイスクメモリ、15……コントロール
メモリ、16……CPU、17……タブレツト、
18……キーボード、19……ルツクアツプテー
ブル、20……バツフア、21……バツフア、2
2……バツフア、23……デコーダ、24……入
力データライン、25……出力データライン、2
6……他の演算を行うための回路、27……ある
画像入力画像、28……θ回転させた画像、30
〜42……部分画像、44……カウンタ、45…
…シフト回路、46……デコーダ、47……バツ
フア、48……マルチプライヤー、49……加算
器。
Figure 1 is a basic configuration diagram of a layout scanner according to the present invention, Figure 2 is an example diagram of an arithmetic circuit, Figure 3 is a diagram showing image size, and Figure 4 is an address generation diagram. FIG. 5 is an example diagram of the affine conversion circuit, FIG. 6 is a processing flowchart of the present invention, FIG. 7 is an explanatory diagram of the flowchart, and FIG. 8 is an illustration of the input image and FIG. 9, which is a diagram showing the size of the first memory, is a diagram illustrating how to find the maximum area (S). 1...Input disk memory, 2...Interface, 3...Data I/O register, 4...First
memory (first buffer memory), 5... display control circuit, 6... color monitor, 7... arithmetic circuit, 8... affine conversion circuit, 9... address generation circuit, 10... second memory ( second buffer memory), 11...data I/O register, 13
...Output disk memory, 15...Control memory, 16...CPU, 17...Tablet,
18... Keyboard, 19... Lookup table, 20... Buffer, 21... Buffer, 2
2... Buffer, 23... Decoder, 24... Input data line, 25... Output data line, 2
6...Circuit for performing other calculations, 27...An image input image, 28...An image rotated by θ, 30
~42...partial image, 44...counter, 45...
...Shift circuit, 46...Decoder, 47...Buffer, 48...Multiplier, 49...Adder.

Claims (1)

【特許請求の範囲】 1 入力デイスクメモリに収容された画像データ
を複数の部分に分割し、 その分割部分ごとの画像データを読み出して第
1のバツフアメモリに書き込み、 この第1のバツフアメモリの画像データに回転
を含むアフイン変換を施し、アフイン変換後の画
像データを第2のバツフアメモリに転送し、 この第2のバツフアメモリの画像データを読み
出して出力デイスクメモリに収容する画像の処理
方法において、 前記第1、第2のバツフアメモリのそれぞれを
2次元配列として、そのXアドレス長およびYア
ドレス長を(X+Y=一定)の条件の下で可変と
し、 前記Xアドレス長とYアドレス長とを定めるア
ドレスビツトモードを予め複数設定し、 前記第1、第2のバツフアメモリのそれぞれに
ついて、前記アドレスビツトモードを順次選択し
て、選択されたアドレスビツトモードにおけるX
アドレス長およびYアドレス長で決まる2次元配
列の矩形を設定し、 前記アドレスビツトモードごとに、第1のバツ
フアメモリの矩形をアフイン変換させたものと第
2のバツフアメモリの矩形との重なり多角形を求
め、 この重なり多角形の面積が最大であるときの第
1、第2のバツフアメモリのアドレスビツトモー
ドをそれぞれ特定し、 これら特定されたアドレスビツトモードにおけ
るXアドレス長およびYアドレス長を、前記第
1、第2のバツフアメモリのそれぞれに適用し、 前記面積が最大の重なり多角形に内接して面積
が最大の矩形を求めて、この内接矩形を第2のバ
ツフアメモリに対応する出力分割サイズとし、 この内接矩形を逆アフイン変換したときの多角
形に外接する矩形を求めて、この外接矩形を第1
のバツフアメモリに対応する入力分割サイズとす
ることを特徴とする画像の処理方法。
[Claims] 1. Divide the image data stored in the input disk memory into a plurality of parts, read out the image data for each divided part and write it in a first buffer memory, and write the image data in the first buffer memory to the image data in the first buffer memory. In the image processing method, the image processing method performs an affine transformation including rotation, transfers the image data after the affine transformation to a second buffer memory, reads out the image data from the second buffer memory, and stores it in an output disk memory, the method comprising: Each of the second buffer memories is made into a two-dimensional array, and its X address length and Y address length are made variable under the condition (X+Y=constant), and the address bit mode that defines the X address length and Y address length is set in advance. setting a plurality of address bit modes, sequentially selecting the address bit mode for each of the first and second buffer memories, and setting X in the selected address bit mode.
A two-dimensional array rectangle determined by the address length and Y address length is set, and for each address bit mode, an overlapping polygon is found between the rectangle of the first buffer memory subjected to affine transformation and the rectangle of the second buffer memory. , specify the address bit modes of the first and second buffer memories when the area of this overlapping polygon is maximum, and calculate the X address length and Y address length in these specified address bit modes as the first and second buffer memories. Apply to each of the second buffer memories, find a rectangle with the largest area inscribed in the overlapping polygon with the largest area, and use this inscribed rectangle as the output division size corresponding to the second buffer memory; Find the rectangle that circumscribes the polygon when the enclosing rectangle is inversely transformed, and convert this circumscribed rectangle into the first
An image processing method characterized in that the input division size corresponds to the buffer memory of.
JP60063762A 1984-12-07 1985-03-29 Picture processing method Granted JPS61223986A (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP60063762A JPS61223986A (en) 1985-03-29 1985-03-29 Picture processing method
EP85810430A EP0184547B1 (en) 1984-12-07 1985-09-23 Processing method of image data and system therefor
DE8585810430T DE3584718D1 (en) 1984-12-07 1985-09-23 IMAGE DATA PROCESSING METHOD AND SYSTEM DAFUER.
CA000491421A CA1244961A (en) 1984-12-07 1985-09-24 Processing method of image data and system therefor
US06/780,563 US4790025A (en) 1984-12-07 1985-09-26 Processing method of image data and system therefor
CN85108635A CN1008021B (en) 1984-12-07 1985-09-28 Processing method of image data and system therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60063762A JPS61223986A (en) 1985-03-29 1985-03-29 Picture processing method

Publications (2)

Publication Number Publication Date
JPS61223986A JPS61223986A (en) 1986-10-04
JPH0442709B2 true JPH0442709B2 (en) 1992-07-14

Family

ID=13238719

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60063762A Granted JPS61223986A (en) 1984-12-07 1985-03-29 Picture processing method

Country Status (1)

Country Link
JP (1) JPS61223986A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6395775A (en) * 1986-10-09 1988-04-26 Konica Corp Picture processing unit capable of magnifying and reducing
JPS63167565A (en) * 1986-12-27 1988-07-11 Konica Corp Image processor capable of designating recording position

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56119571A (en) * 1980-02-23 1981-09-19 Ricoh Co Ltd Memory addressing method

Also Published As

Publication number Publication date
JPS61223986A (en) 1986-10-04

Similar Documents

Publication Publication Date Title
US4790025A (en) Processing method of image data and system therefor
US7006110B2 (en) Determining a coverage mask for a pixel
US5113455A (en) Digital image scaling by stepwise pixel movement
US5097518A (en) Technique for performing digital image scaling by logically combining or replicating pixels in blocks of differing groupsizes
US6765581B2 (en) Display apparatus and method capable of rotating an image by 180 degrees
EP0240246A2 (en) Apparatus and method for filling complex polygons
JP3466661B2 (en) Image processing apparatus and method
JPH02144676A (en) Digital image data rotation method and device
JP2873112B2 (en) Image rotation processing method and apparatus
JPH1049666A (en) Fragment generator and fragment generating method
JPH0442709B2 (en)
KR900002631B1 (en) Image data processing method and apparatus
JPH0457570A (en) Picture processor
JPS6217236B2 (en)
JP3807571B2 (en) Shape conversion method, recording medium on which program for executing the method is recorded, and shape conversion device
JPH0652300A (en) Image processing device
Kaufman Towards a 3-D Graphics Workstation.
JP2967228B2 (en) Image data transfer device
JPH07182505A (en) Image rotation device for printing
JPH11224331A (en) Raster image generation device and raster image generation method
JPS62264344A (en) Address controller
Filkins Graphical Concepts In Image Processing-A Bridge Between Two Worlds
JPH10243217A (en) Image processing method and apparatus
JPH08147210A (en) Bit map memory device
JPH05334429A (en) Image processor