JPH0410078A - Picture processor - Google Patents
Picture processorInfo
- Publication number
- JPH0410078A JPH0410078A JP2113236A JP11323690A JPH0410078A JP H0410078 A JPH0410078 A JP H0410078A JP 2113236 A JP2113236 A JP 2113236A JP 11323690 A JP11323690 A JP 11323690A JP H0410078 A JPH0410078 A JP H0410078A
- Authority
- JP
- Japan
- Prior art keywords
- image
- density
- display area
- processing
- rotation
- 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
Landscapes
- Image Processing (AREA)
Abstract
Description
【発明の詳細な説明】
[発明の目的]
(産業上の利用分野)
本発明は、画像に対する回転を伴なった幾何学変換を行
なう画像編集機能を有する画像処理装置に関する。DETAILED DESCRIPTION OF THE INVENTION [Object of the Invention] (Industrial Application Field) The present invention relates to an image processing device having an image editing function that performs geometric transformation accompanied by rotation of an image.
(従来の技術)
一般に、画像の幾何学変換を行なう画像処理装置では、
拡大・縮小、回転などの操作の種−類を指定することに
よって、高速処理を目的とした専用ハードウェアか、低
価格を目的とした汎用プロセッサ上のプログラムによっ
て指定に応じた画像変換が行なわれる。(Prior art) Generally, in an image processing device that performs geometric transformation of an image,
By specifying the type of operation such as enlargement, reduction, rotation, etc., the image is converted according to the specification by either specialized hardware for high-speed processing or a program on a general-purpose processor for low cost. .
画像変換処理を行なう場合、具体的には、画面に表示さ
れている画像編集に関する拡大・縮小、回転等を含むメ
ニューから何れかを選択することによって画像変換の内
容を指示する。例えば、拡大・縮小を選択すると、縦・
横それぞれの方向の拡大・縮小率を入力、または選択で
きるサブメニューが表示される。また、回転を選択する
と回転角(及び回転方向)を入力または選択できるメニ
ューが表示される。このサブメニューから、何れかを選
択することによって、さらに変換の詳細な内容を指示す
る。When performing image conversion processing, specifically, the contents of the image conversion are specified by selecting one from a menu including enlargement/reduction, rotation, etc. related to image editing displayed on the screen. For example, when you select enlarge/reduce, vertical
A submenu will appear where you can enter or select the enlargement/reduction ratio for each horizontal direction. Furthermore, when rotation is selected, a menu is displayed in which the rotation angle (and rotation direction) can be input or selected. By selecting one from this submenu, further details of the conversion are instructed.
そして、前記のようにして指示された内容に従い処理を
行ない、その処理結果を表示している。Then, processing is performed according to the instructed contents as described above, and the processing results are displayed.
(発明が解決しようとする課題)
このように、従来の画像処理装置においては、例えば拡
大・縮小と回転の両方の処理が必要な場合には、それぞ
れの操作を区別して、拡大・縮小は倍率と回転角度の指
定を行なう必要があった。(Problem to be Solved by the Invention) In this way, in conventional image processing devices, for example, when both enlargement/reduction and rotation processing are required, each operation is distinguished, and enlargement/reduction is performed at the magnification level. It was necessary to specify the rotation angle.
また、この場合、画素あたり2つの処理(拡大・縮小と
回転)を直列に実行する必要があるため、処理に時間が
かかってしまう。さらに、画像変換機能が汎用プロセッ
サ上のプログラムとして実現された場合、最も内側のプ
ログラムループに条件分岐機命令や乗除算計算が入るの
が普通であるため、バイブライン処理をしてもバイブラ
インの乱れが生じるので、速度が十分に上がらないとい
う問題があった。Furthermore, in this case, two processes (enlargement/reduction and rotation) need to be performed in series for each pixel, so the processing takes time. Furthermore, when the image conversion function is implemented as a program on a general-purpose processor, conditional branch machine instructions and multiplication/division calculations are usually included in the innermost program loop. There was a problem that the speed could not be increased sufficiently because of the turbulence.
本発明は前記のような点に鑑みてなされたもので、拡大
・縮小と回転とを必要とするような画像変換処理を高速
に実行することが可能な画像処理装置を提供することを
目的とする。The present invention has been made in view of the above points, and an object of the present invention is to provide an image processing device that can perform image conversion processing that requires enlargement/reduction and rotation at high speed. do.
[発明の構成]
(課題を解決するための手段)
本発明は、表示装置に表示された原画像を所定の表示領
域内に表示するために幾何学変換を行なう画像編集機能
を有する画像処理装置において、原画像中の任意に指定
された領域、及び前記表示領域に応じて、前記表示領域
の原画像座標上で相直交する方向を持つ2つの差分ベク
トルを求め、それぞれの座標成分を整数部分と小数部分
とに分離する分離手段と、前記表示領域の第1の座標軸
方向に走査しながら、前記分離手段によって分離された
第1の差分ベクトルの整数部分、小数部分をそれぞれ順
次に加えた結果をもとに得られる前記表示領域における
座標位置の濃度を逐次的に決定する第1濃度決定手段と
、前記表示領域の第2の座標軸方向に走査しながら、前
記分離手段によって分離された第2の差分ベクトルの整
数部分、小数部分をそれぞれ順次に加えた結果をもとに
得られる前記表示領域における座標位置の濃度を逐次的
に決定する第2a度決定手段とを具備し、前記第2濃度
決定手段によって濃度が決定された座標位置から、逐次
的に前記第1濃度決定手段によって第1の座標軸方向に
濃度の決定を行なうように構成するものである。[Structure of the Invention] (Means for Solving the Problems) The present invention provides an image processing device having an image editing function that performs geometric transformation to display an original image displayed on a display device within a predetermined display area. In , two difference vectors having mutually orthogonal directions on the original image coordinates of the display area are determined according to an arbitrarily specified area in the original image and the display area, and each coordinate component is calculated as an integer part. and a separation means for separating into a decimal part and a result of sequentially adding the integer part and the decimal part of the first difference vector separated by the separation means while scanning in the first coordinate axis direction of the display area. a first density determining means that sequentially determines the density of the coordinate position in the display area obtained based on 2a degree determining means for sequentially determining the density of the coordinate position in the display area obtained based on the results of sequentially adding the integer part and the decimal part of the difference vector, The first density determining means sequentially determines the density in the first coordinate axis direction from the coordinate position where the density has been determined by the determining means.
(作用)
このような構成によれば、拡大・縮小と回転とを必要と
し、直線の平行性は保存されるような一般に利用頻度の
高い幾何学変換を行なう場合に、プログラムループの最
内側ループ(第1′a度決定手段)に条件分岐命令、乗
除算計算を含めないで、すなわち加算計算によって1回
の処理(拡大・縮小、回転の処理を同時)で変換が行な
われるため処理に要する時間が短縮される。(Function) According to such a configuration, when performing a frequently used geometric transformation that requires expansion/reduction and rotation and preserves the parallelism of straight lines, the innermost loop of the program loop (1'a degree determination means) does not include conditional branch instructions and multiplication/division calculations, that is, conversion is performed in one process (enlargement/reduction and rotation processing at the same time) by addition calculation, so the processing time is Time is reduced.
(実施例)
以下、図面を参照して本発明の一実施例を説明する。第
2図は同実施例に係わる画像に対する各種の編集機能、
文書作成機能等を有する画像処理装置、例えばワースチ
ージョンの構成を示すブロック図である。同図において
、10は画像処理装置全体の制御を司るCPUであり、
メインメモリ(MM) 12、ROM14に格納された
プログラムに応じて各部(ハードウェア)を制御するも
のである。MM12、ROM14は、各部を制御するだ
めのプログラムやデータ等を格納するためのものである
。特に、画像に対する各種の編集機能を実行するための
プログラムには、編集(操作)対象とする画像の範囲を
指定するための枠を指定に応じて設定する枠設定用のプ
ログラムや、設定された枠内の画像を表示すべき領域内
に表示されるように画像を操作(変換)するプログラム
等が含まれている。また、画像操作には、枠内の画像を
等倍コピー、拡大縮小、回転するための処理が含まれて
いる。CPUl0によって、後述する各周辺装置を制御
するための入出力コントローラ1G、及び表示画像に関
するデータを格納するためのVRAM34(後述する)
を管理するVRAMコントローラ17が制御される。ハ
ードウェアを制御するプログラムは、後述する磁気ディ
スク29の中に記憶されており、必要に応じてメインメ
モリ12に転記される。(Example) Hereinafter, an example of the present invention will be described with reference to the drawings. FIG. 2 shows various editing functions for images related to the same embodiment.
1 is a block diagram showing the configuration of an image processing device, such as a word processing device, having a document creation function, etc.; FIG. In the figure, 10 is a CPU that controls the entire image processing device,
A main memory (MM) 12 controls each section (hardware) according to a program stored in the ROM 14. The MM 12 and ROM 14 are for storing programs, data, etc. for controlling each part. In particular, programs for executing various editing functions on images include frame setting programs that set frames according to specifications to specify the range of images to be edited (operated), and It includes a program that manipulates (converts) the image so that the image within the frame is displayed within the area where it should be displayed. Further, the image operations include processing for copying the image within the frame at the same size, enlarging/reducing, and rotating the image. The CPU10 controls an input/output controller 1G for controlling each peripheral device described later, and a VRAM 34 (described later) for storing data related to display images.
A VRAM controller 17 is controlled. A program for controlling the hardware is stored in a magnetic disk 29, which will be described later, and is transferred to the main memory 12 as needed.
メインメモリ12に書き込まれたプログラム中の命令は
、プログラムの進行に応じてCPUl0へ転送され、解
読、実行される。人出力コントローラには、キーボード
コントローラ18、マウスコントローラ20、ディスク
コントローラ22、プリンタコントローラ24、スキャ
ナコントローラ26が接続されている。さらに、キーボ
ードコントローラ18にはキーボード27、マウスコン
トローラ20にはマウス28、ディスクコントローラ2
2には磁気ディスク装置29、プリンタコントローラ2
4にはプリンタ装置30、スキャナコントローラ26に
はスキャナ装置31がそれぞれ接続されている。マウス
28は、画面中に表示されたマウスカーソルの移動を指
示し、編集の対象と共に編集内容を示す画像範囲を特定
する移動ハンドル(後述する)の生成、ドラッグや、変
換後の画像を表示するための領域(目的領域)を指示す
るために用いられる。このマウス28には例えば二つの
ボタンが設けられており、同実施例における操作では、
一方のボタンが使用されるものとする。VRAMコント
ローラ17には、フォント、画像等を格納するためのフ
ォント/画像メモリ32、表示に供される画像データを
格納するため(7)VRAM34、及びVRAM341
:格納された画像データを用いた表示の制御を行なうデ
イスプレィコントローラ36が接続されている。デイス
プレィコントローラ3Bには、CRTデイスプレィ37
が接続されている。Instructions in the program written in the main memory 12 are transferred to the CPU 10 as the program progresses, and are decoded and executed. A keyboard controller 18, a mouse controller 20, a disk controller 22, a printer controller 24, and a scanner controller 26 are connected to the human output controller. Furthermore, the keyboard controller 18 includes a keyboard 27, the mouse controller 20 includes a mouse 28, and a disk controller 2.
2 includes a magnetic disk device 29 and a printer controller 2.
4 is connected to a printer device 30, and the scanner controller 26 is connected to a scanner device 31, respectively. The mouse 28 instructs the movement of the mouse cursor displayed on the screen, generates and drags a movement handle (described later) that specifies the image range indicating the editing content as well as the object of editing, and displays the converted image. Used to indicate the area for (target area). For example, the mouse 28 is provided with two buttons, and in the operation in this embodiment,
One button shall be used. The VRAM controller 17 includes a font/image memory 32 for storing fonts, images, etc., a VRAM 34 (7), and a VRAM 341 for storing image data to be displayed.
: A display controller 36 that controls display using stored image data is connected. The display controller 3B includes a CRT display 37.
is connected.
次に、同実施例の動作について説明する。Next, the operation of this embodiment will be explained.
まず、同システムにおける画像編集を行なう際のマンマ
シンインターフェイスについて、文書作成機能を用いて
作成された文書中の任意の位置に、所望の画像変換によ
って得られた画像を組み込む場合を場合を例にして説明
する。なお、同システムにおいては、CRTデイスプレ
ィ37の表示画面中に、第3図に示すように、複数のウ
ィンドウを開いて、複数の文書1画像等の表示を行なう
ことができるウィンドウ機能を備えているものとする。First, regarding the man-machine interface when editing images in this system, we will take as an example the case where an image obtained by desired image conversion is inserted into an arbitrary position in a document created using the document creation function. I will explain. Note that this system is equipped with a window function that allows multiple windows to be opened on the display screen of the CRT display 37 to display multiple images of documents, etc., as shown in FIG. shall be taken as a thing.
まず、イメージ編集を含む各種処理を選択するためのメ
ニュー40が設定された文書作成用のウィンドウ41内
に、画像を表示すべき領域(以下、目的領域42と称す
る)の設定を行なう。すなわち、表示された文書中に、
マウス28の操作によって矩形枠を示す対角の2点の位
置が指定される。この目的領域42のサイズ、形状等に
関する情報は、後述するイメージ編集(画像操作)を行
なう際に、拡大・縮小率、回転角度等を規定する情報と
して供されるものである。First, an area in which an image is to be displayed (hereinafter referred to as a target area 42) is set in a document creation window 41 in which a menu 40 for selecting various processes including image editing is set. That is, in the displayed document,
By operating the mouse 28, the positions of two diagonal points indicating the rectangular frame are specified. Information regarding the size, shape, etc. of the target area 42 is provided as information that defines the enlargement/reduction ratio, rotation angle, etc. when performing image editing (image manipulation) to be described later.
次に、イメージ編集(画像操作)の実行が可能な状態と
なるようにメニュー40が選択されると、例えば第3図
に示すように表示画面の設定を行なう。第3図に示すイ
メージ編集用の画面には、文書作成用のウィンドウ41
内に、イメージ編集処理により得られる目的の画像(処
理結果)を表示するための目的領域42、及び処理対象
とする目的領域42に表示すべき画像が含まれる原画像
を表示するためのウィンドウ43が設けられている。ウ
ィンドウ43には、メニュー40からマウス28の操作
によりイメージ編集が選択されることにより、表示され
るプルダウンメニュー44の選択に伴う詳細情報の中で
選択された画像が表示される。また、ウィンドウ43に
は、円の描画を行なうような、画像のコピー、回転、拡
大縮小処理等の画像操作とは直接関係しない機能を選択
するためや画像操作機能の終了を指示するための「完了
」等を含む多数のアイコン45、及び画像操作の説明等
のメツセージを表示するためのメツセージ領域46が設
けられている。また、マウス28の操作に応じてマウス
カーソル47が、ウィンドウ43内(アイコン45が表
示された領域を含む)において移動制御される。Next, when the menu 40 is selected so that image editing (image manipulation) can be executed, the display screen is set as shown in FIG. 3, for example. The image editing screen shown in FIG. 3 includes a document creation window 41.
Therein, a target area 42 for displaying the target image (processing result) obtained by image editing processing, and a window 43 for displaying the original image containing the image to be displayed in the target area 42 to be processed. is provided. In the window 43, when image editing is selected from the menu 40 by operating the mouse 28, an image selected from the detailed information accompanying the selection of the pull-down menu 44 displayed is displayed. In addition, the window 43 displays a message for selecting functions not directly related to image operations, such as drawing a circle, copying, rotating, and enlarging an image, and for instructing to terminate an image operation function. A large number of icons 45 including "Completed" and the like, and a message area 46 for displaying messages such as explanations of image operations are provided. Furthermore, the movement of the mouse cursor 47 within the window 43 (including the area where the icon 45 is displayed) is controlled in accordance with the operation of the mouse 28.
ここで、ウィンドウ43に表示された画像について画像
操作(コピー、回転、拡大・縮小)を行なう場合には、
マウスカーソル47を所定のアイコン45に移動させ、
マウス28のボタンをクリックする(同実施例ではマウ
ス28に設けられた左右二つのボタンのうち左側のボタ
ンを用いるものとする)ことによって画像操作機能を起
動する。この画像操作機能の全体の処理の処理手順を、
第4図のフローチャートに示している。まず、画像操作
機能の概要について説明すると、画像操作機能は、コピ
ー処理(ステップA1)、拡大縮小処理(ステップA3
)、及び回転処理(ステップA5)を、一連の処理とし
て実行することができるようになっている。また、順次
複雑な処理に移るようになっており、次の処理に移るか
否かは、処理の「完了」が指示されたか、または移動ハ
ンドル(後述する)がまだついていない枠の角が選択(
ドラッグ)され新しく移動ハンドルを付けるべきことが
指示されたかの二つのイベントの何れが生じたかによっ
て決定されるものである(ステップA2゜A4)。Here, when performing image operations (copy, rotation, enlargement/reduction) on the image displayed in the window 43,
Move the mouse cursor 47 to a predetermined icon 45,
The image manipulation function is activated by clicking a button on the mouse 28 (in this embodiment, the left button of the two left and right buttons provided on the mouse 28 is used). The overall processing procedure for this image manipulation function is as follows.
This is shown in the flowchart of FIG. First, an overview of the image manipulation function will be explained. The image manipulation function includes copy processing (step A1), enlargement/reduction processing (step A3).
), and the rotation process (step A5) can be executed as a series of processes. In addition, the process moves on to more complex processes in sequence, and whether or not to move on to the next process is determined when the process is instructed to "complete" or when a corner of the frame that does not have a movement handle (described later) is selected. (
This is determined depending on which of the two events occurs (steps A2 and A4), i.e., an instruction to add a new movement handle.
まず、画像操作機能が起動されることによって、第4図
のフローチャートに示すように、直ちにコピー処理(ス
テップAI)が実行される。コピー処理の処理手順を第
5図のフローチャートに示している。First, when the image manipulation function is activated, copy processing (step AI) is immediately executed as shown in the flowchart of FIG. The processing procedure of the copy process is shown in the flowchart of FIG.
画像操作機能が起動されると(ステップAl)、CRT
の表示画面中のメツセージ領域46に「対象範囲の左上
角を指定してください。」というメツセージを表示する
(ステップBl)。ここで、マウスカーソル47が任意
に移動されてピックされると、第6図に示すように、ウ
ィンドウ43の内部に転写枠50の表示を行なう(ステ
ップB2)。転写枠50は、マウスカーソル47によっ
てピックされた位置を左上角とする目的領域42(移動
先領域となる)と同一の大きさを示す枠であり、その四
辺が水平、または垂直に設定される。また、転写枠50
には、1個の移動ハンドル51(以下、第1移動)\ン
ドル51と称する)が、マウスカーソル47によってピ
ックされた位置(転写枠50の左上角)に設定される(
図中、黒丸印で表現している)。この時、マウスボタン
が押され続けており、かつマウスカーソル47の位置が
移動された場合(以下、この操作をドラッグと称する)
には、第1移動ハンドル51をマウスカーソル47につ
いて移動させ、新しいマウスカーソル47の位置が左上
角となるように転写枠50を表示し直す(ステップB3
.B4)。ここで、マウスボタンが離されると転写枠5
0の位置が決定され、転写枠50の内部に表示された画
像をコピーし、目的領域42内に表示する(ステップB
5)。なお、転写枠50が設定された状態においては、
メツセージ領域46には、「再設定:左上角をドラッグ
、拡大縮小など:右下角をドラッグ」等の実行可能な他
の処理を説明するメツセージの表示を行なう(ステップ
B6)。画像のコピーが終了すると、イベント発生待ち
(ここで待つイベントはステップB7における三つ)状
態となる(ステップB7)。ここで、転写枠50の第1
移動ハンドル51がドラッグされるイベントが発生した
場合は(ステップB8)、ステップB3の処理に戻り、
転写枠50の再設定(第1移動)1ンドル51を含む)
を行ない、新しい転写枠50位置での画像コピーを行な
う(ステップB5)。ステップB8において、アイコン
45の「完了」がピックされるイベントが発生した場合
には、ウィンドウ43の表示を消し、画像操作機能を終
了する(ステップA2)。また、ステップB8において
、ユーザが目的領域42に表示された画像に満足できず
に、転写枠50の右下角がドラッグされるイベントが発
生した場合には、拡大縮小処理への移行が指示されたも
のと判別する。When the image operation function is activated (step Al), the CRT
A message "Please specify the upper left corner of the target range" is displayed in the message area 46 on the display screen (step Bl). Here, when the mouse cursor 47 is arbitrarily moved and picked, a transfer frame 50 is displayed inside the window 43 as shown in FIG. 6 (step B2). The transfer frame 50 is a frame that has the same size as the target area 42 (the destination area) whose upper left corner is the position picked by the mouse cursor 47, and its four sides are set horizontally or vertically. . In addition, the transfer frame 50
, one movement handle 51 (hereinafter referred to as first movement/handle 51) is set at the position picked by the mouse cursor 47 (upper left corner of the transfer frame 50).
(Represented by a black circle in the figure). At this time, if the mouse button continues to be pressed and the position of the mouse cursor 47 is moved (hereinafter, this operation is referred to as dragging)
, the first movement handle 51 is moved about the mouse cursor 47, and the transfer frame 50 is redisplayed so that the new position of the mouse cursor 47 is at the upper left corner (step B3).
.. B4). Here, when the mouse button is released, the transfer frame 5
0 position is determined, the image displayed inside the transfer frame 50 is copied and displayed within the target area 42 (step B
5). Note that in the state where the transfer frame 50 is set,
In the message area 46, messages explaining other executable processes such as "Resetting: drag upper left corner, scaling, etc.: drag lower right corner" are displayed (step B6). When the copying of the image is completed, the system enters a state of waiting for an event to occur (the number of events to be waited for here are three in step B7) (step B7). Here, the first part of the transfer frame 50
If an event occurs in which the movement handle 51 is dragged (step B8), the process returns to step B3,
Resetting the transfer frame 50 (first movement) (including 1st move 51)
Then, the image is copied at the new transfer frame 50 position (step B5). In step B8, if an event occurs in which the icon 45 "Complete" is picked, the display of the window 43 is erased and the image operation function is ended (step A2). Further, in step B8, if an event occurs in which the lower right corner of the transfer frame 50 is dragged because the user is not satisfied with the image displayed in the target area 42, a shift to enlargement/reduction processing is instructed. distinguish it from something.
拡大縮小処理の処理手順を第7図のフローチャートに示
している。拡大縮小処理(ステップA3)への移行が指
示されると(転写枠50の右下角がドラッグされると)
、マウスカーソル47で指定された右下角に新しく第2
移動ハンドル53を設定し、画像に対する拡大縮小がで
きる状態とする(ステップCI)。この拡大縮小処理の
実行可能な状態のウィンドウ43における表示画面の一
例を第8図に示している。第8図に示すように、左上角
、右下角に設定された二つの第1.第2移動ハンドル5
1、53によって設定される枠を、拡大縮小枠54と称
する。拡大縮小枠54は、転写枠50と同様に四辺が水
平、垂直であるが、第2移動ハンドル53の位置の移動
に伴って枠のサイズが変更される。つまり、右下角に第
2移動ハンドル53を設定する際に、ドラッグされ続け
ていれば、第2移動ハンドル53をマウスカーソル47
について移動させ、新しいマウスカーソル47の位置が
右下角となるように拡大縮小枠54を表示し直す(ステ
ップC2,C3)。The processing procedure of the scaling process is shown in the flowchart of FIG. When the transition to the scaling process (step A3) is instructed (when the lower right corner of the transfer frame 50 is dragged)
, a new second
The movement handle 53 is set so that the image can be enlarged or reduced (step CI). FIG. 8 shows an example of the display screen of the window 43 in a state where this scaling process can be executed. As shown in FIG. 8, two first . Second moving handle 5
The frame set by 1 and 53 is referred to as an enlargement/reduction frame 54. The enlargement/reduction frame 54 has four sides horizontal and vertical like the transfer frame 50, but the size of the frame changes as the position of the second moving handle 53 moves. In other words, when setting the second movement handle 53 at the lower right corner, if it continues to be dragged, move the second movement handle 53 to the mouse cursor 47.
, and the enlargement/reduction frame 54 is redisplayed so that the new position of the mouse cursor 47 is at the lower right corner (steps C2 and C3).
この時、第1移動ハンドル51の位置は移動せず、拡大
縮小枠54の垂直、水平の辺サイズが変更される。ここ
で、マウスボタンが離されると拡大縮小枠54の位置が
決定され、画像の拡大縮小が行われる。すなわち、拡大
縮小枠54の内部に表示された画像を、目的領域42に
丁度合うように拡大縮小枠50のサイズに応じて縦、横
方向にそれぞれ独立して拡大縮小し、目的領域42に表
示する(ステップC4)。また、メツセージ領域46に
は、「再設定:移動ハンドルをドラッグ、回転など:左
下角をドラッグ」等の実行可能な他の処理を説明するメ
ツセージの表示を行なう(ステップC5)。画像の拡大
縮小処理が終了すると、イベント待ち状態となる(ステ
ップC6)。ここで、拡大縮小枠54の第1.第2移動
ハンドル51.53の何れかがドラッグされた場合には
(ステップC7)、移動ハンドルの位置に応じて拡大縮
小枠54を変更しくステップC2)、目的領域42に表
示される画像を変更する。すなわち、第1移動ハンドル
51がドラッグされた場合には枠位置を変更し、第2移
動ハンドル53がドラッグされた場合には枠サイズを変
更することによって、画像の操作(対象とする領域の変
更、拡大縮小のサイズ)を変更するものである。At this time, the position of the first moving handle 51 does not move, and the vertical and horizontal side sizes of the enlargement/reduction frame 54 are changed. Here, when the mouse button is released, the position of the enlargement/reduction frame 54 is determined, and the image is enlarged/reduced. That is, the image displayed inside the enlargement/reduction frame 54 is independently enlarged/reduced in the vertical and horizontal directions according to the size of the enlargement/reduction frame 50 so as to fit exactly in the target area 42, and then displayed in the target area 42. (Step C4). Further, a message explaining other executable processing such as "Resetting: Drag the movement handle, Rotate, etc.: Drag the lower left corner" is displayed in the message area 46 (Step C5). When the image enlargement/reduction processing is completed, the process enters an event waiting state (step C6). Here, the first . If either of the second movement handles 51 or 53 is dragged (step C7), the enlargement/reduction frame 54 is changed according to the position of the movement handle, and the image displayed in the target area 42 is changed (step C2). do. That is, when the first movement handle 51 is dragged, the frame position is changed, and when the second movement handle 53 is dragged, the frame size is changed, thereby operating the image (changing the target area). , scaling size).
目的領域42には、ドラッグしているマウスボタンを離
した時に、新しい結果が表示される。第8図に示すよう
に、拡大縮小枠54は、ユーザによって指定される二つ
の第1.第2移動ハンドル51.53が設けられており
、この対角点によって指定される矩形であることを示し
ている。つまり、一つの点(第2移動ハンドル53)の
位置を指示することで、縦、横方向の大きさを自由に設
定できるようになっている。また、処理結果が拡大縮小
されて目的領域42に表示されることから、二つの第1
゜第2移動ハンドル51.53が設けられた枠によって
、拡大縮小操作が実行されることが比較的容易に判別さ
れる。なお、ステップC7において、アイコン45の「
完了」がピックされるイベントが発生した場合には、ウ
ィンドウ43の表示を消し、画像操作機能を終了する(
ステップA4)。また、ステップC7において、ユーザ
が目的領域42に表示された画像に満足できずに、拡大
縮小枠54の左下角がドラッグされるイベントが発生し
た場合には、画像の回転処理への移行が指示されたもの
と判別する。The new result is displayed in the destination area 42 when the dragging mouse button is released. As shown in FIG. 8, the enlargement/reduction frame 54 is divided into two first . A second moving handle 51,53 is provided to indicate the rectangle specified by the diagonal points. That is, by specifying the position of one point (second moving handle 53), the vertical and horizontal sizes can be freely set. In addition, since the processing results are scaled and displayed in the target area 42, the two first
The frame in which the second moving handles 51, 53 are provided makes it relatively easy to determine that a scaling operation is to be performed. Note that in step C7, the icon 45 “
If an event occurs where "Complete" is picked, the display of the window 43 is erased and the image operation function is terminated (
Step A4). Further, in step C7, if an event occurs in which the user is not satisfied with the image displayed in the target area 42 and the lower left corner of the enlargement/reduction frame 54 is dragged, a transition to image rotation processing is instructed. It is determined that the
回転処理の処理手順は、拡大縮小処理とほぼ同様にして
実行されるので、第7図に示すフローチャートを用いて
説明する。回転処理(ステップ゛A5)への移行が指示
されると、マウスカーソル47で指定された左下角に新
しく第3移動ハンドル55を設定し、画像に対する回転
ができる状態とする。この回転処理の実行可能な状態の
ウィンドウ43における表示画面の一例を第9図に示し
ている。The processing procedure of the rotation process is executed in substantially the same manner as the scaling process, and will be explained using the flowchart shown in FIG. When a transition to the rotation process (step A5) is instructed, a new third movement handle 55 is set at the lower left corner designated by the mouse cursor 47, and the image can be rotated. FIG. 9 shows an example of the display screen in the window 43 in a state where this rotation process can be executed.
第9図に示すように、左上角、右下角、及び左下角に設
定された三つの第1.第2.第3移動ハンドル51.5
3.55によって設定される枠を回転枠56と称する。As shown in FIG. 9, three first . Second. Third moving handle 51.5
The frame set by 3.55 is called a rotation frame 56.
回転枠56は、第3移動ハンドル55がドラッグされる
場合、第1.第2移動ハンドル51゜53の位置が変わ
らすに第3移動ハンドル55の位置だけが変更される。When the third movement handle 55 is dragged, the rotation frame 56 moves to the first position. While the positions of the second moving handles 51 and 53 are changed, only the position of the third moving handle 55 is changed.
この際、回転枠56は、隣り合う辺が直角に交わる矩形
を保ったままの状態に設定される。すなわち、第3移動
ハンドル55は、第1、第2移動ハンドル51.53を
結ぶ線分(対角線)57の中点58を中心とし、二つの
第1.第2移動ハンドル51.53を通る円弧59上を
移動するように制御される。従って、第3移動ハンドル
55は、マウスカーソル47について自由に移動できる
訳ではなく、第9図に示すように、マウスカーソル47
と中点58とを結ぶ直線60が円弧59と交わる点に設
定される。(なお、線分57、中点58、円弧59は、
画面中に表示されるものではない。)左下角に第3移動
ハンドル55を設定する際に、ドラッグされ続けていれ
ば、マウスカーソル47に応じて位置が決定される第3
移動ハンドル55を移動させ、回転枠56を表示し直す
。一方、マウスボタンが離された場合には、回転枠56
の位置が決定され、画像の拡大縮小1回転が行われる。At this time, the rotation frame 56 is set to maintain a rectangular shape in which adjacent sides intersect at right angles. That is, the third moving handle 55 is centered at the midpoint 58 of the line segment (diagonal line) 57 connecting the first and second moving handles 51. It is controlled to move on an arc 59 passing through the second moving handle 51.53. Therefore, the third movement handle 55 cannot be moved freely with respect to the mouse cursor 47, and as shown in FIG.
A straight line 60 connecting the center point 58 and the center point 58 is set at a point where it intersects the circular arc 59. (The line segment 57, midpoint 58, and arc 59 are
It is not displayed on the screen. ) When setting the third movement handle 55 in the lower left corner, if it continues to be dragged, the third movement handle 55 whose position is determined according to the mouse cursor 47
The moving handle 55 is moved to redisplay the rotation frame 56. On the other hand, when the mouse button is released, the rotation frame 56
The position of the image is determined, and the image is enlarged/reduced one rotation.
すなわち、回転枠56の内部に表示された画像を、目的
領域42に丁度合うように、回転枠56のサイズに応じ
て拡大縮小し、さらに回転枠56の傾きに応じて回転さ
せて、目的領域42に表示する。また、メツセージ領域
4Bには、「再設定:移動ハンドルをドラッグ」等の実
行可能な他の処理を説明するメツセージの表示を行なう
。画像の回転処理が終了すると、イベント待ち状態とな
る。ここで、回転枠56の第1.第2.第3移動ハンド
ル51.53.55の何れかがドラッグされた場合には
、移動ノ\ンドルに対応する処理、及び位置に応じて回
転枠5Gを変更し、目的領域42に表示される画像を変
更する。なお、回転枠56の第3移動ハンドル55が再
設定された場合は、前記のようにして制御されるが、第
1.第2移動ハンドル51.53の位置が再設定される
場合には次のようにして制御される。第1.第2移動ハ
ンドル51゜53の何れか一方をドラッグすると、線分
(対角線)57の他方の端の移動ハンドルの位置は固定
したままで、マウスカーソル47の動きに応じて線分5
7、及び中点58の位置を変更する。この線分57.中
点58の位置に応じて、円弧59も変更する。第3移動
ハンドル55は、新しい円弧59上で、第9図中に示す
角度θ(中点58から第1.第3移動ハンドル51゜5
5を見込む角度)が変わらないような位置に再設定され
る。第10図に回転枠56を右側が上となるように傾け
た状態に変更した場合の例を示している。すなわち、ド
ラッグされる移動ハンドルに応じて所定の枠変更を行な
い(第1移動ハンドルは枠の移動、第2移動ハンドルは
枠の拡大縮小)、画像の操作を行なうものである。目的
領域42には、ドラッグしているマウスボタンを離した
時に、新しい結果が表示される。That is, the image displayed inside the rotation frame 56 is enlarged or reduced according to the size of the rotation frame 56 so that it exactly fits the target area 42, and is further rotated according to the inclination of the rotation frame 56 to fit the target area 42. 42. In addition, a message explaining other executable processing such as "resetting: drag the movement handle" is displayed in the message area 4B. When the image rotation process is completed, the system enters an event waiting state. Here, the first . Second. When any of the third movement handles 51, 53, 55 is dragged, the process corresponding to the movement handle and the rotation frame 5G are changed according to the position, and the image displayed in the target area 42 is changed. change. Note that when the third moving handle 55 of the rotation frame 56 is reset, it is controlled as described above, but the first. When the position of the second moving handle 51, 53 is reset, it is controlled as follows. 1st. When one of the second movement handles 51 and 53 is dragged, the position of the movement handle at the other end of the line segment (diagonal line) 57 remains fixed, and the line segment 5 moves according to the movement of the mouse cursor 47.
7, and the position of the midpoint 58 is changed. This line segment 57. The arc 59 is also changed depending on the position of the midpoint 58. The third moving handle 55 moves on the new arc 59 at an angle θ (from the midpoint 58 to the first and third moving handles 51°5) shown in FIG.
5) is reset to a position that does not change. FIG. 10 shows an example in which the rotating frame 56 is tilted so that the right side faces upward. That is, the image is manipulated by changing a predetermined frame according to the dragged movement handle (the first movement handle moves the frame, and the second movement handle enlarges or reduces the frame). The new result is displayed in the destination area 42 when the dragging mouse button is released.
次に、このようなマンマシンインターフェイスによって
指定されたウィンドウ43中の回転枠56内の画像を、
目的領域42に表示するための回転を伴う幾何学変換(
回転処理)の方法について説明する。第11図は第10
図に示す回転枠56の位置を原画像座標で示している。Next, the image within the rotation frame 56 in the window 43 specified by such a man-machine interface is
Geometric transformation with rotation for displaying in the target area 42 (
The method of rotation processing) will be explained below. Figure 11 is the 10th
The position of the rotation frame 56 shown in the figure is shown in original image coordinates.
また回転枠56の第4の頂点(右上角点)をPDとし、
各頂点PA −PDの座標をそれぞれ(XA、YA)・
・・(XD、YD)とする。第12図は、文書中の目的
領域42を示している。Further, the fourth vertex (upper right corner point) of the rotation frame 56 is set as PD,
The coordinates of each vertex PA-PD are (XA, YA)・
...(XD, YD). FIG. 12 shows a target area 42 in a document.
本実施例において、原画像のデータは、メインメモリ1
2内に格納されており、CRTデイスプレィ37のウィ
ンドウ43内に表示するためにVRAM34にも複写さ
れているものとする。また、目的領域42に表示される
画像のデータは、この内容を記憶するためのメモリに格
納されるようにしても良いが、簡単化するために表示に
重点をおいてVRAM34の一部に格納されるようにす
る。In this embodiment, the original image data is stored in the main memory 1.
2 and is also copied to the VRAM 34 for display in the window 43 of the CRT display 37. Further, the data of the image displayed in the target area 42 may be stored in a memory for storing the contents, but for the sake of simplicity, it is stored in a part of the VRAM 34 with emphasis on display. to be done.
(このメモリの割り当ては本質的ではない。原画像を記
憶するために、メインメモリ12ではなくVRAM34
中の現在表示に使われていない部分を使用することもで
きるし、VRAM34中のウィンドウ43に対応する部
分そのものであっても良い。)したがって、第11図は
メインメモリ12に格納された内容の一部を、また第1
2図はVRAM34に格納された2次元的位置を示すも
のと見ることができる。なお、画像の各画素について、
どちらのメモリにおいても、例えば8ビツトで表現され
ているものとする。(This memory allocation is not essential. To store the original image, the VRAM 34 is used instead of the main memory 12.
A portion of the VRAM 34 that is not currently being used for display may be used, or the portion of the VRAM 34 that corresponds to the window 43 may be used. ) Therefore, FIG. 11 shows part of the contents stored in the main memory 12 and
Figure 2 can be seen as showing two-dimensional positions stored in the VRAM 34. Furthermore, for each pixel of the image,
It is assumed that both memories are expressed in 8 bits, for example.
画像変換によって第11図に示す点PAは目的の幾何学
変換の一部として目的領域の左上角に写像される。これ
は、座標(XA、YA)に記憶されている濃度NS
(XA、YA)を第12図に示す(0,0)点の濃度N
D (0,0)とすることを意味する。The image transformation maps the point PA shown in FIG. 11 to the upper left corner of the target area as part of the target geometric transformation. This is the concentration NS stored at the coordinates (XA, YA)
(XA, YA) is the concentration N at the (0,0) point shown in Figure 12.
This means that D (0,0).
一般に、ND(i、j)は、次のようにして求める(最
近傍注)。原画像の上に、第13図に示すように、目的
領域の座標格子を逆写像し、その点に最も近い原画像の
座標格子点(図中Si点)の濃度をND(1,3)とす
る。そして、N 1)(1−1,j)l::対応する点
51−1が求まった状態から出発しSlを求める。(出
発点を求める方法については後述する。)ここでは、こ
の方式を、最内側のプログラムループ内に乗除算を用い
ずに、加算命令で実現しようとするものである。この本
発明による画像変換の処理手順を第1図に示している。Generally, ND (i, j) is obtained as follows (nearest neighbor note). As shown in Figure 13, the coordinate grid of the target area is inversely mapped onto the original image, and the density of the coordinate grid point of the original image (point Si in the figure) closest to that point is ND (1, 3). shall be. Then, starting from the state where the corresponding point 51-1 has been found, N1)(1-1,j)l::Sl is found. (The method for determining the starting point will be described later.) Here, this method is attempted to be implemented using addition instructions without using multiplication and division in the innermost program loop. The image conversion processing procedure according to the present invention is shown in FIG.
以下、第1図に示すフローチャートを参照しながら説明
する。The process will be explained below with reference to the flowchart shown in FIG.
まず、N D(1−1,j)とND(i、j)の2点の
逆写像の座標ヲソレソtL (x 、−、、Y 、−、
) (x ”’t11 )とするとき(それらの座標
値は実数)、1、jの値にかかわらず、
δ・−xl ”l−1
δ、−V1 ”+−1
は一定値(実数)である。S i−1の座標を(x 8
.yl−1)とし、さらに、
ε、、−、−X+−1−)[+−1
ζ+−1m y +−+ −y +−1とするとき、−
1/2≦ε+−+<1/2.1/2≦ζ+−+ < 1
/ 2、を満足するように整数値X1−1 ’ ”
l−1が選ばれていることになる。First, find the coordinates of the inverse mapping of the two points ND (1-1, j) and ND (i, j) (x, -,, Y, -,
) (x ”'t11 ) (those coordinate values are real numbers), δ・−xl ”l−1 δ, −V1 ”+−1 are constant values (real numbers) regardless of the values of 1 and j The coordinates of S i-1 are (x 8
.. yl-1) and further, ε, , -, -X+-1-)[+-1 ζ+-1m y +-+ -y +-1, -
1/2≦ε+-+<1/2.1/2≦ζ+-+ <1
/2, so that the integer value X1-1' ”
This means that l-1 is selected.
従って、51−1の座標とε、−1とζ1−1から、x
−x 、 +ε1− +δ8 、i1
y −y−十ζ1−1+δy
により、ND(1,j)の逆写像の座標(XL+2+1
+
y )を求め、それに最も近い格子点(XLl+
y )(x 、y は整数)を81とすれ
ばよい。Therefore, from the coordinates of 51-1 and ε, -1 and ζ1-1, x
−x , +ε1− +δ8 , i1 y −y−1ζ1−1+δy, the coordinates of the inverse mapping of ND(1,j) (XL+2+1
+y) and set the nearest grid point (XLl+y) (x, y are integers) to 81.
本発明においては、前記の処理を次のようにして行なう
。(第1図に示すフローチャートの最内側のループであ
る第1のループ(ステップSl。In the present invention, the above processing is performed as follows. (The first loop, which is the innermost loop of the flowchart shown in FIG. 1 (step Sl.
ステップ85〜57))なお、処理を開始する前に与え
られる各データを導く方法については後述する。Steps 85 to 57)) A method for deriving each data given before starting the process will be described later.
■予め、δ、−δ8+δ′つ、δ、−δ、+δ′2、(
δ1.δ、は整数(Oであってもよい)0≦δ′、<1
.0≦δ’、< 1 )と分解してδ′8.δ′、を固
定少数点表示にしておく (ステップSl)。これは、
第1のループの準備であり、1度求めた結果を保持して
おけば良いので、予め計算しておく。■In advance, δ, -δ8+δ', δ, -δ, +δ'2, (
δ1. δ is an integer (may be O) 0≦δ′, <1
.. 0≦δ', < 1) and δ'8. δ′, is displayed as a fixed decimal point (step Sl). this is,
This is a preparation for the first loop, and since it is sufficient to hold the result obtained once, it is calculated in advance.
■目的領域の各格子点毎に次の計算をする(ステップS
5)。■ Perform the following calculation for each grid point in the target area (step S
5).
ε 1−ε′、、+δ′いζ′、=ζ′、−3+δ′X
諺x 1+δ、+C(ε)
yl ””l−1+δ、+C(ζ)
■前記■の計算で得たSi点の画像濃度を目的領域の(
i、j)点の画像濃度とする(ステップS6)。ε 1−ε′,, +δ′ ζ′, = ζ′, −3+δ′X
Proverb x 1+δ, +C(ε) yl ””l−1+δ, +C(ζ)
The image density of the point i, j) is set as the image density of the point i, j) (step S6).
ND(i、j)=NS (x 、 y )前記
■、■(ステップS5.S6)をND(1,j)からN
D(n、j)について繰り返して行なう(ステップS7
)。ND (i, j) = NS (x, y) The above ■, ■ (steps S5 and S6) are changed from ND (1, j) to N
Repeat for D(n,j) (step S7
).
ここで、ε′1.ζ′1は、それぞれ、εl+1/2、
ζ+ + 1 / 2という値(ともに0以上1未満)
を表現する固定少数点表示である。Here, ε′1. ζ'1 are respectively εl+1/2,
Value of ζ + + 1 / 2 (both 0 or more and less than 1)
This is a fixed decimal point representation that represents .
C(ε)、C(ζ)は、それぞれ直前のε′ζ′1の計
算結果においてキャリーを発生した場合、すなわち計算
結果が1を越えた場合に1となり、キャリーを発生しな
かった場合に0となる値を表わす。C(ε)、C(ζ)
を含む加算は、多くの汎用プロセッサ、汎用マイクロプ
ロセッサで、例えば[Add with Carr
yJというような名称の命令として実現されている。C(ε) and C(ζ) become 1 when a carry occurs in the immediately preceding calculation result of ε′ζ′1, that is, when the calculation result exceeds 1, and when no carry occurs, C(ε) and C(ζ) become 1. Represents a value of 0. C(ε), C(ζ)
In many general-purpose processors and general-purpose microprocessors, addition including [Add with Carr
It is realized as an instruction with a name such as yJ.
次に、ND(0,j)の逆写像を求める方法、すなわち
前記手順の出発点を求める方法(第2のループ)につい
て述べる。第14図に示すように、N D(0,j−1
)、 N D(0,j)の逆写像の差分Δx1Δy(共
に実数)も、jの値にかかわらず一定であるので前記と
同様に乗除算を用いずに固定小数点力1算命令だけで実
現できる。すなわち、
(1)予めΔX−ΔX+Δ′X1
Δy−Δγ+Δ’y(ただし、Δx1Δyは整数、0≦
Δ x<l、0≦Δ yく1)と分解して、Δ′ x、
Δ′ yは固定少数点表示にしておく (ステップSl
)。これは、第2のループの準備であり、1度求めた結
果を保持しておけば良いので、前記同様にして予め計算
しておく。Next, a method for determining the inverse mapping of ND(0,j), that is, a method for determining the starting point of the procedure (second loop) will be described. As shown in FIG. 14, N D(0,j-1
), the difference Δx1Δy (both real numbers) of the inverse mapping of N can. That is, (1) ΔX-ΔX+Δ'X1 Δy-Δγ+Δ'y (where Δx1Δy is an integer, 0≦
Decomposed as Δ x<l, 0≦Δy (1), Δ′ x,
Δ′ y is expressed as a fixed decimal point (Step Sl
). This is a preparation for the second loop, and since it is sufficient to hold the result obtained once, it is calculated in advance in the same manner as described above.
(2)目的領域の左端の各格子点上毎に次の計算をする
(ステップS2)。(2) Perform the following calculation on each grid point at the left end of the target area (step S2).
E’l=E’l−1+Δ X s Z ’ I−Z
’ I−1+Δ′ yx o 晦x 。 +ΔX
+C(E)y o −y o 十Δy+c(Z)
(3)目的領域左端の点の濃度を求める(ステップS3
)。E'l=E'l-1+Δ X s Z 'I-Z
'I-1+Δ' yx o 晦x. +ΔX
+C(E)y o -y o 1Δy+c(Z) (3) Find the density of the point at the left end of the target area (Step S3
).
ND(0,j)−NS(x o、 y o)(4
)第1のループの処理を行なうために、εr o、、、
E #4、ζ′。−27,と初期化する(ステップS
4)。ND(0,j)-NS(x o, yo)(4
) To perform the processing of the first loop, εr o,,,
E #4, ζ′. -27, (step S
4).
そして、前記第1のループのN D(1,j)からND
(n、j)についての手順を行なう。Then, from N D (1, j) of the first loop
Perform the procedure for (n,j).
前記(2)〜(4)の処理をND(0,1)からN D
(0,m)について繰り返す(ステップS8)。The processing of (2) to (4) above is performed from ND(0,1) to ND
Repeat for (0, m) (step S8).
ここで、E/4、Z′、は、それぞれ
E、+1/2、Z++1/2という値を表わす固定少数
点表示であり、c (E) 、c (Z)はそれぞれ、
直前のE’ 、Z’の計算においてキャリーを発生した
場合に1となり、キャリーを発生しない場合に0となる
。Here, E/4 and Z' are fixed decimal points representing the values E, +1/2, and Z++1/2, respectively, and c (E) and c (Z) are, respectively,
It becomes 1 if a carry occurs in the previous calculation of E' and Z', and becomes 0 if no carry occurs.
このように、プログラムの内側から2番目のループも、
乗除算を含まずに構成することができる。In this way, the second loop from the inside of the program also
It can be constructed without including multiplication and division.
最後に、目的領域の大きさ(n、m) 、及び第3図中
のP^、PB、PCの3点の座標(XA、YA)。Finally, the size of the target area (n, m) and the coordinates (XA, YA) of the three points P^, PB, and PC in Figure 3.
(XB、YB ) 、 (XC,YC)から前記の手
順に与えるべきデータを導く方法を示す。We will show how to derive the data to be given to the above procedure from (XB, YB) and (XC, YC).
逆写像された枠の第4の角の座標を(XD、YD)とす
ると、逆写像された枠は矩形であるので、XD−X^+
XB−XC
YD −YA +YB −YC
で表わされる。従って、
δx −(XD −XA ) /n
−(XB −XC) /n
δY−(YD −YA ) /n
= (YB −YC) /n
Δx −(XC−XA)/m
Δy −(YC−YA)/m
を一つの画像について1回だけ計算しておき、それを前
記■、(1)のように分解して表現しておく。If the coordinates of the fourth corner of the inversely mapped frame are (XD, YD), then since the inversely mapped frame is a rectangle, XD-X^+
It is represented by XB-XC YD -YA +YB -YC. Therefore, δx - (XD - XA) /n - (XB - XC) /n δY- (YD - YA) /n = (YB - YC) /n Δx - (XC - YA)/m is calculated only once for one image, and it is decomposed and expressed as in (1) above.
E′0% Z ’ 0としては、それぞれ初期値1/2
を与える。また、 40ゝ−X A s y ’ :’
=Y^とする。E'0% Z' As 0, each initial value 1/2
give. Also, 40ゝ-XA sy':'
= Y^.
そして、前記第2のループをjの値0からmについて実
行する。(ただし、最初のループにおいて、j−0の場
合だけは、既にX 。+ Y □ が求められて
いるので前記(2)は実行せず、(3)から実行を開始
する。Then, the second loop is executed for the values of j from 0 to m. (However, in the first loop, only in the case of j-0, since X . + Y □ has already been found, the above (2) is not executed, and execution starts from (3).
このようにして、画像に対する所望する変換が、拡大・
縮小と回転によるものである場合でも、それぞれの処理
について拡大・縮小率、回転角度に分解して個別に指示
する必要がないため、簡単な操作で実行される。In this way, the desired transformation on the image is
Even in the case of reduction and rotation, there is no need to separate each process into enlargement/reduction ratio and rotation angle and give separate instructions, so it can be executed with a simple operation.
また、指示された目的領域、変換枠(回転枠56等)を
もとに、拡大・縮小と回転による変換を、プログラムル
ープに分岐命令、乗除算計算を含まない1回の処理で行
なうので、拡大・縮小処理と回転処理とを組み合わせて
行なう場合よりも高速に処理することができる。特にパ
イプライン処理を適用した場合にも、プログラムループ
に分岐命令を含まないことからバイブラインに乱れが生
じないので、より高速化が実現される。Furthermore, based on the specified target area and conversion frame (rotation frame 56, etc.), conversion by enlarging/reducing and rotating is performed in a single process that does not include branch instructions or multiplication/division calculations in the program loop. Processing can be performed faster than when enlarging/reducing processing and rotation processing are performed in combination. In particular, even when pipeline processing is applied, since the program loop does not include a branch instruction, there is no disturbance in the vibe line, so even higher speeds can be achieved.
さらに、専用ノ\−ドウエアを要しないので、安価にで
きると共に、汎用性が増すものである。Furthermore, since no dedicated hardware is required, it can be made at low cost and has increased versatility.
[発明の効果コ
以上のように本発明によれば、拡大・縮小と回転とを必
要とするような画像変換であっても、プログラムループ
に分岐命令、乗除算計算を含まない1回の処理で行なう
ので高速に実行することが可能となるものである。[Effects of the Invention] As described above, according to the present invention, even image conversion that requires enlargement/reduction and rotation can be performed in one process without branching instructions or multiplication/division calculations in the program loop. Since it is executed in , it is possible to execute it at high speed.
第1図は本発明の一実施例に係わる画像処理装置におけ
る拡大・縮小1回転処理の処理手順を示すフローチャー
ト、第2図は同実施例に係わる画像処理装置の構成を示
すブロック図、第3図はイメージ編集を実行する際の表
示画面の一例を示す図、第4図は画像操作機能全体の処
理手順を示すフローチャート、第5図はコピー処理の処
理手順を示すフローチャート、第6図はコピー処理を実
行する際の表示画面の一例を示す図、第7図は拡大縮小
1回転処理の処理手順を示すフローチャ−ト、第8図は
拡大縮小処理を実行する際の表示画面の一例を示す図、
第9図及び第10図は回転処理を実行する際の表示画面
の一例を示す図、第11図乃至第14図は第1図に示す
フローチャートに従う画像に対する幾何学変換を説明す
るための図である。
IO・・・CPU、12・・・メインメモリ (MM)
、14・・・ROM、16・・・入出力コントローラ
、18・・・キーボードコントローラ、20・・・マウ
スコントローラ、22・・・ディスクコントローラ、2
6・・・スキャナコントローラ、27・・・キーボード
、28・・・マウス、29・・・磁気データ装置、31
・・・スキャナ装置、36・・・デイスプレィコントロ
ーラ、37・・・CRTデイスプレィ出願人代理人 弁
理士 鈴江武彦
第
図
(干り2)
第1
(そのl)
第3図
第6図
第4
図
第
図
第
図
第10囚
第8図
第9 図
第11図
第12図FIG. 1 is a flowchart showing the processing procedure for one rotation of enlargement/reduction processing in an image processing apparatus according to an embodiment of the present invention, FIG. 2 is a block diagram showing the configuration of the image processing apparatus according to the embodiment, and FIG. The figure shows an example of a display screen when performing image editing, Figure 4 is a flowchart showing the processing procedure of the entire image manipulation function, Figure 5 is a flowchart showing the processing procedure of copy processing, and Figure 6 is a copy A diagram showing an example of the display screen when executing the process, FIG. 7 is a flowchart showing the processing procedure of the enlargement/reduction process for one rotation, and FIG. 8 shows an example of the display screen when executing the enlargement/reduction process. figure,
FIGS. 9 and 10 are diagrams showing examples of display screens when executing rotation processing, and FIGS. 11 to 14 are diagrams for explaining geometric transformation of images according to the flowchart shown in FIG. 1. be. IO...CPU, 12...Main memory (MM)
, 14... ROM, 16... Input/output controller, 18... Keyboard controller, 20... Mouse controller, 22... Disk controller, 2
6... Scanner controller, 27... Keyboard, 28... Mouse, 29... Magnetic data device, 31
...Scanner device, 36...Display controller, 37...CRT display Applicant's representative Patent attorney Takehiko Suzue Figure 1 (Part 1) Figure 3 Figure 6 Figure 4 Figure Figure Figure 10 Prisoner Figure 8 Figure 9 Figure 11 Figure 12
Claims (1)
するために幾何学変換を行なう画像編集機能を有する画
像処理装置において、 前記原画像中の任意に指定された領域、及び前記表示領
域に応じて、前記表示領域の原画像座標上で相直交する
方向を持つ2つの差分ベクトルを求め、それぞれの座標
成分を整数部分と小数部分とに分離する分離手段と、 前記表示領域の第1の座標軸方向に走査しながら、前記
分離手段によって分離された第1の差分ベクトルの整数
部分、小数部分をそれぞれ順次に加えた結果をもとに得
られる前記表示領域における座標位置の濃度を逐次的に
決定する第1濃度決定手段と、 前記表示領域の第2の座標軸方向に走査しながら、前記
分離手段によって分離された第2の差分ベクトルの整数
部分、小数部分をそれぞれ順次に加えた結果をもとに得
られる前記表示領域における座標位置の濃度を逐次的に
決定する第2濃度決定手段と、 を具備し、 前記第2濃度決定手段によって濃度が決定された座標位
置から、逐次的に前記第1濃度決定手段によって第1の
座標軸方向に濃度の決定を行なうことを特徴とする画像
処理装置。[Scope of Claims] An image processing device having an image editing function that performs geometric transformation to display an original image displayed on a display device within a predetermined display area, comprising: a separation unit that determines two difference vectors having mutually orthogonal directions on the original image coordinates of the display area according to the area and the display area, and separates each coordinate component into an integer part and a decimal part; coordinates in the display area obtained based on the results of sequentially adding integer parts and decimal parts of the first difference vector separated by the separation means while scanning in the first coordinate axis direction of the display area; a first density determining means for sequentially determining the density of a position; and scanning the display area in the second coordinate axis direction, and calculating an integer part and a decimal part of the second difference vector separated by the separating means, respectively. a second density determining means for sequentially determining the density of the coordinate position in the display area obtained based on the results of sequential addition; and the coordinate position whose density is determined by the second density determining means. The image processing apparatus is characterized in that the first density determining means sequentially determines the density in the first coordinate axis direction.
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2113236A JPH0410078A (en) | 1990-04-27 | 1990-04-27 | Picture processor |
| US07/649,976 US5428721A (en) | 1990-02-07 | 1991-02-04 | Data processing apparatus for editing image by using image conversion |
| EP19910101612 EP0441346A3 (en) | 1990-02-07 | 1991-02-06 | Data processing apparatus for editing image by one series of systematic operations |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2113236A JPH0410078A (en) | 1990-04-27 | 1990-04-27 | Picture processor |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0410078A true JPH0410078A (en) | 1992-01-14 |
Family
ID=14607020
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2113236A Pending JPH0410078A (en) | 1990-02-07 | 1990-04-27 | Picture processor |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0410078A (en) |
-
1990
- 1990-04-27 JP JP2113236A patent/JPH0410078A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0856786B1 (en) | Window Displaying apparatus and method | |
| US5428721A (en) | Data processing apparatus for editing image by using image conversion | |
| KR100390730B1 (en) | User selected display of two dimensional window in three dimensions on a computer screen | |
| JP2759700B2 (en) | How to run an image editor | |
| US5583977A (en) | Object-oriented curve manipulation system | |
| US20050162445A1 (en) | Method and system for interactive cropping of a graphical object within a containing region | |
| JPH01250129A (en) | Display screen operating system | |
| US20040066408A1 (en) | Intelligent windows bumping method and system | |
| JP3705826B2 (en) | Virtual three-dimensional window display control method | |
| JPH08297748A (en) | Analysis data display method and apparatus | |
| WO2018198703A1 (en) | Display device | |
| JPH0462101B2 (en) | ||
| CN109766034B (en) | Method, device and equipment for quickly starting application program and storage medium | |
| JPH09160739A (en) | Data processing system and input method | |
| JP3244143B2 (en) | Display device | |
| US5519819A (en) | Graphic moving/transforming method and apparatus | |
| JP2004089599A (en) | Image display device | |
| JP2014130504A (en) | Display control device, display control method and program of the same | |
| JP2005100132A (en) | Display control device | |
| JP3470771B2 (en) | Projection plane linked display device | |
| JPH06251115A (en) | Image processor | |
| JP2829079B2 (en) | Information processing apparatus and information processing method | |
| JPH04280378A (en) | User interface device | |
| JPH01233617A (en) | Information processor | |
| JP2001282405A (en) | Coordinate input device |