JP2006139367A - Image transformation method, image transformation apparatus, and image transformation program - Google Patents
Image transformation method, image transformation apparatus, and image transformation program Download PDFInfo
- Publication number
- JP2006139367A JP2006139367A JP2004326332A JP2004326332A JP2006139367A JP 2006139367 A JP2006139367 A JP 2006139367A JP 2004326332 A JP2004326332 A JP 2004326332A JP 2004326332 A JP2004326332 A JP 2004326332A JP 2006139367 A JP2006139367 A JP 2006139367A
- Authority
- JP
- Japan
- Prior art keywords
- triangle
- angle
- conversion
- coordinate plane
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
Description
本発明は、画像を幾何変換して表示するための画像変換方法、画像変換装置および画像変換プログラムに関する。 The present invention relates to an image conversion method, an image conversion apparatus, and an image conversion program for displaying an image after geometric conversion.
従来、コンピュータにより三次元画像を生成し、生成した三次元画像を表示する画像処理装置が知られている(例えば、特許文献1参照)。従来の画像処理装置は、対象を三角形パッチにより分割し、それぞれの三角形パッチを幾何変換することによって、対象を任意の角度から見た画像を生成することができる。また、三次元パッチを変形したときに、その中の画像を変形する方法も知られている(例えば、非特許文献1参照)。 2. Description of the Related Art Conventionally, an image processing apparatus that generates a three-dimensional image by a computer and displays the generated three-dimensional image is known (see, for example, Patent Document 1). A conventional image processing apparatus can generate an image in which a target is viewed from an arbitrary angle by dividing the target by triangular patches and geometrically converting each triangular patch. There is also known a method of deforming an image therein when a three-dimensional patch is deformed (see, for example, Non-Patent Document 1).
ところで、幾何変換の1つであるアフィン変換は、式(1)で表される。式(1)では、パラメータa〜fで特徴付けられる行列によって、座標P(x,y)が、座標P′(x′,y′)に変換される。これらのパラメータa〜fにより、平行移動、回転移動、拡大、縮小、傾斜などの変換を表現することができる。 By the way, affine transformation, which is one of geometric transformations, is expressed by equation (1). In equation (1), the coordinates P (x, y) are converted into coordinates P ′ (x ′, y ′) by the matrix characterized by the parameters a to f. By these parameters a to f, conversion such as translation, rotation, enlargement, reduction, and inclination can be expressed.
ここで、アフィン変換の一例を説明する。図2は、画像が変換される様子を説明する図であって、(a)は変換前の画像、(b)は変換後の画像を示している。なお、図2に示す枠は、左上の点が原点O(0,0)で、上辺がX軸(右方向が正)、左辺がY軸(下方向が正)を示している。図2の(a)に示すように、画像としての文字「F」が三角形ABCの内部領域に配置されている。この三角形ABCの画像領域を、図2の(b)に示すような三角形A′B′C′の画像領域に変換する場合を考える。変換前の三角形ABCの各頂点を、A(x0,y0)、B(x1,y1)、C(x2,y2)、目的とする変換後の三角形A′B′C′の各頂点を、A′(x0′,y0′)、B′(x1′,y1′)、C′(x2′,y2′)とする。このときの変換は、式(2)のように表すことができる。 Here, an example of affine transformation will be described. 2A and 2B are diagrams for explaining how an image is converted. FIG. 2A shows an image before conversion, and FIG. 2B shows an image after conversion. In the frame shown in FIG. 2, the upper left point is the origin O (0, 0), the upper side is the X axis (right direction is positive), and the left side is the Y axis (lower direction is positive). As shown in FIG. 2A, the letter “F” as an image is arranged in the inner area of the triangle ABC. Consider a case where the image area of the triangle ABC is converted into an image area of a triangle A′B′C ′ as shown in FIG. Respective vertices of the triangle ABC before conversion are represented by A (x 0 , y 0 ), B (x 1 , y 1 ), C (x 2 , y 2 ), and the target converted triangle A′B′C ′. Let A ′ (x 0 ′, y 0 ′), B ′ (x 1 ′, y 1 ′), and C ′ (x 2 ′, y 2 ′). The conversion at this time can be expressed as shown in Equation (2).
この式(2)のパラメータa〜fを求めるために、式(2)の右辺の2番目の行列の逆行列を、式(2)の両辺に右から掛け合わせると、式(3)が得られる。なお、3点A′,B′,C′が同一直線上になければ、式(2)の右辺の2番目の行列は正則行列になるので、逆行列が存在する。この式(3)の右辺を計算することにより、パラメータa〜fの具体的な値を求めることができる。求めたパラメータa〜fを式(1)に代入してアフィン変換を用いれば、三角形ABC内部の画像の各画素を、三角形A′B′C′内部に変換した後の各座標点を計算することができる。 In order to obtain the parameters a to f of the equation (2), the inverse matrix of the second matrix on the right side of the equation (2) is multiplied from both sides of the equation (2) from the right to obtain the equation (3). It is done. If the three points A ′, B ′, and C ′ are not on the same straight line, the second matrix on the right side of Equation (2) is a regular matrix, and therefore there is an inverse matrix. By calculating the right side of the equation (3), specific values of the parameters a to f can be obtained. By substituting the obtained parameters a to f into the equation (1) and using affine transformation, the respective coordinate points after the pixels in the image inside the triangle ABC are transformed into the inside of the triangle A′B′C ′ are calculated. be able to.
このように、個々の画素を設定できる場合には、式(1)に示すアフィン変換により変換することによって、画像を変換(変形)することができる。また、例えばPostScript言語のようなページ記述言語では、変形のためのアフィンパラメータを指定することができるようになっている。 As described above, when individual pixels can be set, the image can be converted (deformed) by performing the conversion by the affine transformation shown in Expression (1). For example, in a page description language such as PostScript language, an affine parameter for deformation can be specified.
ところで、マクロメディア社のFlash(登録商標)では、MovieClip(以下、MCと略記)という座標平面で描画オブジェクトを管理している。このMCの特徴を図3および図4を参照して説明する。図3は、座標平面(MC)における幾何変換を説明する図であって、(a)は拡大・縮小、(b)は回転移動、(c)は平行移動を示している。図4は、座標平面の配置を示す斜視図である。
MCでは、図3の(a)に示すように、任意の画像領域をX軸およびY軸方向に拡大(または縮小)することができる。X軸・Y軸方向の拡大率(縮小率)は、それぞれパラメータxscaleとパラメータyscaleによって指定される。また、MCでは、図3の(b)に示すように、任意の画像領域を原点を中心として回転移動することができる。このときの回転角度は、パラメータrotationによって指定される。なお、図3の(a),(b)では、図示する矢印の向きを正とする。さらに、MCでは、図3の(c)に示すように、X方向の差分x、Y方向の差分yを指定することによって、任意の画像領域を平行移動することができる。また、MCは、図4に示すように、階層構造をとることができる。図4に示す例では、4層構造で、最下層に座標平面M1が配され、以下、順次、座標平面M2、座標平面M3および座標平面M4がz方向に配されている。
In MC, as shown in FIG. 3A, an arbitrary image area can be enlarged (or reduced) in the X-axis and Y-axis directions. The enlargement ratio (reduction ratio) in the X-axis and Y-axis directions is specified by a parameter xscale and a parameter yscale, respectively. Further, in MC, as shown in FIG. 3B, an arbitrary image region can be rotated around the origin. The rotation angle at this time is specified by the parameter rotation. In FIGS. 3A and 3B, the direction of the illustrated arrow is positive. Further, in MC, as shown in FIG. 3C, an arbitrary image region can be translated by designating a difference x in the X direction and a difference y in the Y direction. Moreover, MC can take a hierarchical structure as shown in FIG. In the example shown in FIG. 4, the coordinate plane M1 is arranged in the lowest layer in the four-layer structure, and the coordinate plane M2, the coordinate plane M3, and the coordinate plane M4 are sequentially arranged in the z direction.
しかしながら、このMCでは、アフィンパラメータを直接指定することができないという問題がある。 However, this MC has a problem that affine parameters cannot be directly specified.
そこで、本発明では、前記した問題を解決し、X軸・Y軸方向の拡大・縮小、原点を中心とした回転移動、平行移動が可能な座標平面を組み合わせて、任意の三角形を任意の三角形に変換するアフィン変換を行うことができる画像変換方法、画像変換装置および画像変換プログラムを提供することを目的とする。 Therefore, the present invention solves the above-described problem and combines an arbitrary triangle with an arbitrary triangle by combining coordinate planes that can be expanded / reduced in the X-axis and Y-axis directions, rotated around the origin, and translated. An object of the present invention is to provide an image conversion method, an image conversion apparatus, and an image conversion program capable of performing affine transformation to be converted into an image.
前記課題を解決するため、請求項1に記載の画像変換方法は、順次積層された第1乃至第4の座標平面上の画像について、X軸方向およびY軸方向への拡大または縮小、原点を中心とした回転移動、および任意の座標点への平行移動がこの順番に可能に構成され、最下層である第1の座標平面上の三角形ABCの画像領域を、最上層である第4の座標平面上の三角形A′B′C′の画像領域に変換する画像変換装置における画像変換方法において、画像変換装置は、第1の入力ステップと、第2の入力ステップと、第1の変換ステップと、第2の変換ステップと、第3の変換ステップと、第4の変換ステップと、第5の変換ステップとを実行することとした。
In order to solve the above-described problem, the image conversion method according to
このような手順によれば、画像変換装置は、第1の入力ステップで、三角形ABCの頂点座標を入力し、第2の入力ステップで、三角形A′B′C′の頂点座標を入力する。そして、画像変換装置は、第1の変換ステップで、第1の座標平面に入力された三角形ABCの頂点Aを原点に移動させると共に、角Aの二等分線をX軸またはY軸に重ね、この三角形ABCを、第2の変換ステップで、第2の座標平面上で、角Aが直角になるように、角Aの二等分線と直交する方向に拡大または縮小する。これにより、変換元の三角形が変形された第1の三角形が生成される。この第1の三角形は直角三角形なので、辺ABおよび辺ACがそれぞれX軸およびY軸にのるように回転移動させれば、辺ABおよび辺ACの長さを自由に変更できるようになる。 According to such a procedure, the image conversion apparatus inputs the vertex coordinates of the triangle ABC in the first input step, and inputs the vertex coordinates of the triangle A′B′C ′ in the second input step. Then, in the first conversion step, the image conversion apparatus moves the vertex A of the triangle ABC input to the first coordinate plane to the origin and superimposes the bisector of the angle A on the X axis or the Y axis. In the second conversion step, the triangle ABC is enlarged or reduced in the direction orthogonal to the bisector of the angle A so that the angle A is a right angle on the second coordinate plane. As a result, a first triangle in which the conversion source triangle is deformed is generated. Since the first triangle is a right triangle, the lengths of the side AB and the side AC can be freely changed by rotating the side AB and the side AC so as to be on the X axis and the Y axis, respectively.
そこで、画像変換装置は、第3の変換ステップで、この直角三角形ABCの辺ABおよび辺ACを、第3の座標平面上で、第1および第2の所定倍率でそれぞれ拡大または縮小する。ここで、第1および第2の所定倍率は、辺ABおよび辺ACが、すべての変換段階を経て最終的に、目的とする三角形A′B′C′の辺三角形A′B′および辺A′C′と等しくなるように逆算して定められる。そして、画像変換装置は、第4の変換ステップで、この三角形ABCを、第4の座標平面上で、角Aが三角形A′B′C′の角A′と等しくなるように、角Aの二等分線と直交する方向に第3の所定倍率で拡大または縮小する。これによって、生成された三角形ABCは、三角形A′B′C′と合同となる。さらに、画像変換装置は、第5の変換ステップで、この三角形ABCを、第4の座標平面上で、回転移動および平行移動することにより、三角形A′B′C′の座標位置に一致させる。その結果、元の三角形ABCの画像領域が三角形A′B′C′の画像領域に変換されることとなる。 Therefore, in the third conversion step, the image conversion apparatus enlarges or reduces the side AB and the side AC of the right triangle ABC at the first and second predetermined magnifications on the third coordinate plane, respectively. Here, the first and second predetermined magnifications are such that the side AB and the side AC are finally subjected to all the conversion steps, and finally the side triangle A′B ′ and the side A of the target triangle A′B′C ′. It is determined by back calculation so as to be equal to 'C'. Then, in the fourth conversion step, the image conversion apparatus converts the triangle ABC to the angle A so that the angle A is equal to the angle A ′ of the triangle A′B′C ′ on the fourth coordinate plane. Enlarge or reduce in a direction orthogonal to the bisector at a third predetermined magnification. As a result, the generated triangle ABC becomes congruent with the triangle A′B′C ′. Further, in the fifth conversion step, the image conversion apparatus causes the triangle ABC to coincide with the coordinate position of the triangle A′B′C ′ by rotating and translating the triangle ABC on the fourth coordinate plane. As a result, the image area of the original triangle ABC is converted into the image area of the triangle A′B′C ′.
請求項2に記載の画像変換方法は、請求項1に記載の画像変換方法において、第1の所定倍率は、第2の変換ステップで生成された三角形ABCを、角Aの二等分線と直交する方向に第3の所定倍率で拡大または縮小した後の辺ABを、三角形A′B′C′の辺A′B′に拡大または縮小するときの倍率と等しく、第2の所定倍率は、第2の変換ステップで生成された三角形ABCを、角Aの二等分線と直交する方向に第3の所定倍率で拡大または縮小した後の辺ACを、三角形A′B′C′の辺A′C′に拡大または縮小するときの倍率と等しい、ことを特徴とする。
The image conversion method according to
このようにすることで、第2の変換ステップで生成された三角形ABCを、角Aの二等分線と直交する方向に第3の所定倍率で拡大または縮小して生成される三角形ABCは、角Aが三角形A′B′C′の角A′と等しくなる。従って、この三角形ABCは、角Aを挟角とする2辺AB、ACの長さを辺A′B′および辺A′C′に適合するように拡大すれば、三角形A′B′C′と合同になる。しかしながら、拡大方向はX軸およびY軸方向に限定されているので、挟角Aを固定した状態で両辺AB,ACを拡大することは困難である。そこで、あたかもこのような変換が可能なものとして逆算した拡大率を第3の変換ステップにおいて第1および第2の所定倍率として、挟角を固定する前に拡大操作をすることで、任意のアフィン変換を可能なものとすることができる。 In this way, the triangle ABC generated by expanding or reducing the triangle ABC generated in the second conversion step at the third predetermined magnification in the direction orthogonal to the bisector of the angle A is The angle A becomes equal to the angle A ′ of the triangle A′B′C ′. Therefore, if the length of the two sides AB and AC having the angle A as an included angle is expanded to fit the sides A′B ′ and A′C ′, the triangle ABC is divided into the triangle A′B′C ′. And become congruent. However, since the enlargement direction is limited to the X-axis and Y-axis directions, it is difficult to enlarge both sides AB and AC with the included angle A fixed. Therefore, the enlargement factor calculated as if such conversion is possible is set as the first and second predetermined magnifications in the third conversion step, and an enlargement operation is performed before fixing the included angle. Conversion can be possible.
請求項3に記載の画像変換方法は、請求項1または請求項2に記載の画像変換方法において、画像変換装置は、第1の入力ステップにより三角形ABCの頂点座標が入力されたときに、第1および第2の変換ステップを実行し、第2の入力ステップにより三角形A′B′C′の頂点座標が入力されたときに、第3乃至第5の変換ステップを実行することを特徴とする。 An image conversion method according to a third aspect is the image conversion method according to the first or second aspect, wherein the image conversion device is configured to perform the first conversion when the vertex coordinates of the triangle ABC are input in the first input step. The first and second conversion steps are executed, and when the vertex coordinates of the triangle A′B′C ′ are input by the second input step, the third to fifth conversion steps are executed. .
このような手順によれば、変換元の三角形ABCの頂点座標を変化させたり、変換後の三角形A′B′C′の頂点座標を変化させたりしたときの演算を独立に実行できるので、演算時間を短縮することができる。例えば、予め第1の入力ステップにより三角形ABCの頂点座標を取り込んでおき、第1及び第2の変換ステップを実行しておけば、その後に、三角形A′B′C′の頂点座標の入力に応じて、短時間で多様な変換画像を表示することが可能になる。 According to such a procedure, the calculation when the vertex coordinates of the conversion source triangle ABC are changed or the vertex coordinates of the converted triangle A′B′C ′ are changed can be executed independently. Time can be shortened. For example, if the vertex coordinates of the triangle ABC are captured in the first input step in advance and the first and second conversion steps are executed, then the vertex coordinates of the triangle A′B′C ′ are input. Accordingly, various converted images can be displayed in a short time.
請求項4に記載の画像変換プログラムは、請求項1乃至請求項3のいずれか1項に記載の画像変換方法をコンピュータに実行させることとした。このように構成されることにより、このプログラムをインストールされたコンピュータは、プログラムに基づいた各機能を実現することができる。 An image conversion program according to a fourth aspect causes a computer to execute the image conversion method according to any one of the first to third aspects. With this configuration, a computer installed with this program can realize each function based on the program.
請求項5に記載の画像変換装置は、順次積層された第1乃至第4の座標平面上の画像について、X軸方向およびY軸方向への拡大または縮小、原点を中心とした回転移動、および任意の座標点への平行移動が可能に構成され、最下層である第1の座標平面上の三角形ABCの画像領域を、最上層である第4の座標平面上の三角形A′B′C′の画像領域に変換する画像変換装置において、入力手段と、第1座標平面処理部と、第2座標平面処理部と、第3座標平面処理部と、第4座標平面処理部とを備えることとした。
The image conversion apparatus according to
かかる構成によれば、画像変換装置は、入力手段によって、三角形ABCおよび三角形A′B′C′の頂点座標を入力する。そして、画像変換装置は、第1座標平面処理部によって、第1の座標平面に入力された三角形ABCの頂点Aを原点に移動させて角Aの二等分線をX軸またはY軸に重ね、第2座標平面処理部によって、第2の座標平面上で、三角形ABCを、角Aの二等分線と直交する方向に拡大または縮小して、角Aが直角である第1の三角形ABCに変換する。そして、画像変換装置は、第3座標平面処理部によって、第3の座標平面上で、第1の三角形ABCの辺ABおよび辺ACを、第1および第2の所定倍率でそれぞれ拡大または縮小して第2の三角形ABCに変換する。さらに、画像変換装置は、第4座標平面処理部によって、第4の座標平面上で、第2の三角形ABCの角Aが三角形A′B′C′の角A′と等しくなるように、第2の三角形ABCを、角Aの二等分線と直交する方向に第3の所定倍率で拡大または縮小して第3の三角形ABCに変形すると共に、第3の三角形ABCを回転移動および平行移動することにより、三角形A′B′C′の座標位置に一致させる。 According to this configuration, the image conversion apparatus inputs the vertex coordinates of the triangle ABC and the triangle A′B′C ′ by the input unit. Then, the image conversion apparatus moves the vertex A of the triangle ABC input to the first coordinate plane to the origin by the first coordinate plane processing unit and superimposes the bisector of the angle A on the X axis or the Y axis. The triangle ABC is enlarged or reduced in the direction orthogonal to the bisector of the angle A on the second coordinate plane by the second coordinate plane processing unit, and the first triangle ABC with the angle A being a right angle. Convert to Then, the image conversion apparatus enlarges or reduces the side AB and the side AC of the first triangle ABC at the first and second predetermined magnifications on the third coordinate plane by the third coordinate plane processing unit. To the second triangle ABC. Further, the image conversion apparatus is configured such that the fourth coordinate plane processing unit causes the fourth coordinate plane so that the angle A of the second triangle ABC becomes equal to the angle A ′ of the triangle A′B′C ′ on the fourth coordinate plane. The second triangle ABC is enlarged or reduced at a third predetermined magnification in a direction perpendicular to the bisector of the angle A to be transformed into the third triangle ABC, and the third triangle ABC is rotated and translated. By doing so, the coordinate position of the triangle A′B′C ′ is made coincident.
請求項6に記載の画像変換装置は、請求項5に記載の画像変換装置において、第1の所定倍率は、第1の三角形ABCを、角Aの二等分線と直交する方向に第3の所定倍率で拡大または縮小して生成される第4の三角形ABCの辺ABを、三角形A′B′C′の辺A′B′に拡大または縮小するときの倍率と等しく、第2の所定倍率は、第1の直角三角形ABCを、角Aの二等分線と直交する方向に第3の所定倍率で拡大または縮小して生成される第4の三角形ABCの辺ACを、三角形A′B′C′の辺A′C′に拡大または縮小するときの倍率と等しい、ことを特徴とする。
The image conversion apparatus according to claim 6 is the image conversion apparatus according to
かかる構成によれば、第4の三角形ABCは、角Aが三角形A′B′C′の角A′と等しくなる。従って、第4の三角形ABCは、角Aを挟角とする2辺AB、ACの長さを辺A′B′および辺A′C′に適合するように拡大すれば、三角形A′B′C′と合同になる。しかしながら、拡大方向はX軸およびY軸方向に限定されているので、挟角Aを固定した状態で両辺AB,ACを拡大することは困難である。そこで、あたかもこのような変換が可能なものとして逆算した拡大率を、第3座標平面処理部によって、第1および第2の所定倍率として、拡大操作をすることで、任意のアフィン変換を可能なものとすることができる。 According to this configuration, the fourth triangle ABC has the angle A equal to the angle A ′ of the triangle A′B′C ′. Accordingly, the fourth triangle ABC can be obtained by expanding the length of the two sides AB and AC having the angle A as an included angle so as to fit the sides A′B ′ and A′C ′. It becomes congruent with C '. However, since the enlargement direction is limited to the X-axis and Y-axis directions, it is difficult to enlarge both sides AB and AC with the included angle A fixed. Therefore, any affine transformation can be performed by performing an enlargement operation using the third coordinate plane processing unit as the first and second predetermined magnifications with the enlargement factor calculated as if such conversion is possible. Can be.
本発明によれば、X軸・Y軸方向の拡大・縮小と、原点を中心とした回転移動、平行移動がこの順番に可能な座標平面を4階層用いることにより、任意の三角形ABCの画像領域を、任意の三角形A′B′C′の画像領域に変換することができる。
また、変換前の三角形の頂点座標の入力に応じた変換操作と、変換後の三角形の頂点座標の入力に応じた変換操作という2つの独立した変換操作に分離することが可能なので、入力に応じて必要な部分だけを計算することができ、計算時間を低減することができる。
According to the present invention, an image area of an arbitrary triangle ABC can be obtained by using four layers of coordinate planes that can be enlarged / reduced in the X-axis and Y-axis directions, rotated and translated around the origin in this order. Can be converted into an image area of an arbitrary triangle A′B′C ′.
Moreover, since it is possible to separate into two independent conversion operations, a conversion operation according to the input of the vertex coordinates of the triangle before conversion and a conversion operation according to the input of the vertex coordinates of the triangle after conversion, depending on the input Thus, only the necessary part can be calculated, and the calculation time can be reduced.
以下では、まず、画像変換装置において、画像変換する手法について説明し、その手法に基づいて画像変換を実行する画像変換装置について順次説明していくこととする。 In the following, first, a method for image conversion in the image conversion device will be described, and an image conversion device that performs image conversion based on the method will be described sequentially.
[画像変換方法の前提について]
本発明の画像変換方法の前提について図2乃至図4を参照して説明する。本発明の画像変換方法は、所定位置に存在する所定形状の三角形ABCの画像領域を、別の位置に存在する異なった形状の三角形A′B′C′(頂点A′,B′,C′は頂点A,B,Cに対応)の画像領域となるように変換するものである。図2の(a)に示すように、変換前の三角形ABCの各頂点を、A(x0,y0)、B(x1,y1)、C(x2,y2)、変換後の三角形A′B′C′の各頂点を、A′(x0′,y0′)、B′(x1′,y1′)、C′(x2′,y2′)とする。
[Prerequisites for image conversion method]
The premise of the image conversion method of the present invention will be described with reference to FIGS. According to the image conversion method of the present invention, an image area of a triangle ABC having a predetermined shape existing at a predetermined position is converted into a triangle A′B′C ′ (vertices A ′, B ′, C ′ having different shapes existing at another position. Are converted so as to be image regions of vertices A, B, and C). As shown in FIG. 2A, the vertices of the triangle ABC before conversion are represented by A (x 0 , y 0 ), B (x 1 , y 1 ), C (x 2 , y 2 ), and after conversion. The vertices of the triangle A′B′C ′ are A ′ (x 0 ′, y 0 ′), B ′ (x 1 ′, y 1 ′), and C ′ (x 2 ′, y 2 ′). .
本発明で前提としている座標平面では、図3の(a)に示したX軸方向およびY軸方向への拡大または縮小による変換(変換パラメータxscale,yscale)、図3の(b)に示した原点を中心とした回転移動による変換(変換パラメータrotation)、および図3の(c)に示した任意の座標点への平行移動による変換が可能であるものとしている。また、この座標平面は、図4に示すように、最下層から順次、座標平面M1(第1の座標平面)、座標平面M2(第2の座標平面)、座標平面M3(第3の座標平面)および座標平面M4(第4の座標平面)の4つの階層を有している。 In the coordinate plane assumed in the present invention, conversion (conversion parameters xscale, yscale) in the X-axis direction and the Y-axis direction shown in FIG. 3A (conversion parameters xscale, yscale) is shown in FIG. It is assumed that conversion by rotation movement around the origin (conversion parameter rotation) and conversion by parallel movement to an arbitrary coordinate point shown in FIG. 3C are possible. Further, as shown in FIG. 4, the coordinate planes are arranged in order from the bottom layer: coordinate plane M1 (first coordinate plane), coordinate plane M2 (second coordinate plane), coordinate plane M3 (third coordinate plane). ) And a coordinate plane M4 (fourth coordinate plane).
各座標平面では、3種類の変換(拡大または縮小、回転移動、平行移動)が可能であるが、1つの座標平面では、(1)拡大または縮小、(2)回転移動、(3)平行移動、の順番で変換操作をするように定義されている。したがって、本発明の画像変換方法は、4つの座標平面でそれぞれ行うことが可能な3種類の変換操作の順序を考慮して適宜組み合わせて実行することとしている。なお、本発明で想定している座標平面の一例として、マクロメディア社のFlash(登録商標)のMovieClipを挙げることができる。 In each coordinate plane, three types of conversion (enlargement or reduction, rotational movement, translation) are possible, but in one coordinate plane, (1) enlargement or reduction, (2) rotational movement, (3) translation The conversion operation is defined in the order of. Therefore, the image conversion method of the present invention is executed by appropriately combining in consideration of the order of the three types of conversion operations that can be performed on each of the four coordinate planes. As an example of the coordinate plane assumed in the present invention, there can be mentioned Flash (registered trademark) MovieClip of Macromedia.
[画像変換方法の一実施形態]
次に、図5乃至図7を参照して、本発明の画像変換方法の一実施形態を説明する。図5は、本発明の画像変換方法の一実施形態を表すフローチャートである。図6は、変換する三角形を説明する図であって、(a)は変換前の三角形、(b)は変換後の三角形を示している。図7は、本実施形態の画像変換方法を説明するための図であって、(a)〜(i)は、それぞれ変換過程における変換前(破線)と変換後(実線)の三角形を示している。
[One Embodiment of Image Conversion Method]
Next, an embodiment of the image conversion method of the present invention will be described with reference to FIGS. FIG. 5 is a flowchart showing an embodiment of the image conversion method of the present invention. FIG. 6 is a diagram for explaining a triangle to be converted. (A) shows a triangle before conversion, and (b) shows a triangle after conversion. FIG. 7 is a diagram for explaining the image conversion method of the present embodiment, and (a) to (i) show triangles before conversion (broken line) and after conversion (solid line) in the conversion process, respectively. Yes.
(第1の入力ステップ)
本実施形態の画像変換方法の準備段階として、まず、最下層の座標平面M1に三角形ABCの頂点座標を入力する。ここでは、図6の(a)に示すように、三角形ABCの各頂点の座標を、A(x0,y0)、B(x1,y1)、C(x2,y2)とする。また、図6の(a)に示すように、辺ABとX軸のなす角をr1、辺ACとX軸のなす角をr2とする。なお、角度は時計回りを正としている。このとき、以下の式(4)〜式(7)の関係が成り立っている。ここで、atanは逆正接関数arctanを表している。
r1=atan((y1−y0)/(x1−x0)) (x1≠x0のとき)…(4)
r1=−90 (x1=x0のとき)…(5)
r2=atan((y2−y0)/(x2−x0)) (x2≠x0のとき)…(6)
r2=90 (x2=x0のとき)…(7)
(First input step)
As a preparation stage of the image conversion method of the present embodiment, first, vertex coordinates of the triangle ABC are input to the lowest coordinate plane M1. Here, as shown in FIG. 6A, the coordinates of the vertices of the triangle ABC are A (x 0 , y 0 ), B (x 1 , y 1 ), and C (x 2 , y 2 ). To do. Further, as shown in FIG. 6A, the angle formed by the side AB and the X axis is r1, and the angle formed by the side AC and the X axis is r2. The angle is positive in the clockwise direction. At this time, the following expressions (4) to (7) are satisfied. Here, atan represents an arctangent function arctan.
r1 = atan ((y 1 −y 0 ) / (x 1 −x 0 )) (when x 1 ≠ x 0 ) (4)
r1 = −90 (when x 1 = x 0 ) (5)
r2 = atan ((y 2 −y 0 ) / (x 2 −x 0 )) (when x 2 ≠ x 0 ) (6)
r2 = 90 (when x 2 = x 0 ) (7)
(第2の入力ステップ)
同じく、本実施形態の画像変換方法の準備段階として、次に、最上層の座標平面M4に三角形A′B′C′の頂点座標を入力する。ここでは、図6の(b)に示すように、三角形A′B′C′の各頂点の座標を、A′(x0′,y0′)、B′(x1′,y1′)、C′(x2′,y2′)とする。また、図6の(b)に示すように、辺A′B′とX軸のなす角をr1′、辺A′C′とX軸のなす角をr2′とする。このとき、以下の式(8)〜式(11)の関係が成り立っている。
r1′=atan((y1′−y0′)/(x1′−x0′)) (x1′≠x0′のとき)…(8)
r1′=−90 (x1′=x0′のとき)…(9)
r2′=atan((y2′−y0′)/(x2′−x0′)) (x2′≠x0′のとき)…(10)
r2′=90 (x2′=x0′のとき)…(11)
(Second input step)
Similarly, as a preparation stage of the image conversion method of the present embodiment, the vertex coordinates of the triangle A′B′C ′ are input to the uppermost coordinate plane M4. Here, as shown in FIG. 6B, the coordinates of the vertices of the triangle A′B′C ′ are represented by A ′ (x 0 ′, y 0 ′), B ′ (x 1 ′, y 1 ′). ), C ′ (x 2 ′, y 2 ′). Further, as shown in FIG. 6B, the angle formed by the side A′B ′ and the X axis is r1 ′, and the angle formed by the side A′C ′ and the X axis is r2 ′. At this time, the following expressions (8) to (11) are satisfied.
r1 '= atan ((y 1 ' -y 0 ') / (x 1' -x 0 ')) (x 1' when ≠ x 0 ') ... (8 )
r1 '= - 90 (x 1 ' when = x 0 ') ... (9 )
r2 '= atan ((y 2 ' -y 0 ') / (x 2' -x 0 ')) (x 2' when ≠ x 0 ') ... (10 )
r2 '= 90 (x 2' when = x 0 ') ... (11 )
次に、図5を参照(適宜図7および図6参照)して三角形ABCの変換過程を詳細に説明する。なお、図7に示す枠は、左上の点が原点O(0,0)で、上辺がX軸(右方向が正)、左辺がY軸(下方向が正)を示している。また、M1〜M4の表示は、その段階でパラメータを設定する座標平面を表し、点線は、変換前の形状を表し、実線は、変換後の形状を表す。 Next, the conversion process of the triangle ABC will be described in detail with reference to FIG. 5 (refer to FIGS. 7 and 6 as appropriate). In the frame shown in FIG. 7, the upper left point is the origin O (0, 0), the upper side is the X axis (right direction is positive), and the left side is the Y axis (down direction is positive). Moreover, the display of M1-M4 represents the coordinate plane which sets a parameter at the stage, a dotted line represents the shape before conversion, and a continuous line represents the shape after conversion.
(第1の変換ステップ)
まず、図7の(a)に示すように、座標平面M1上で、三角形ABCの角Aの二等分線とX軸とが平行になるように、三角形ABCを回転移動する(ステップS1)。このときの回転角度は、辺ABとX軸のなす角r1(式(4)または式(5)参照)と、辺ACとX軸のなす角r2(式(6)または式(7)参照)との平均値rmであり、回転の方向は負の方向(反時計回り)となる。また、このときの変換操作は、座標平面がM1、変換の種類が「回転動作」、回転角度(パラメータ)が−rmなので、式(12)のように記述することにする。同様に、以下の変換操作を表す式では、“(座標平面).(変換の種類)=(パラメータの値)”のように記述することとする。
M1.rotation=−rm …(12)
ただし、 rm=(r1+r2)/2 …(13)
この変換操作(ステップS1)により変換された三角形ABCを、三角形A1B1C1(三角形ABCと合同)とする。このとき、頂点A(x0−y0)を頂点A1(X,Y)に変換する変換式は、式(14)で示される。
(First conversion step)
First, as shown in FIG. 7A, on the coordinate plane M1, the triangle ABC is rotationally moved so that the bisector of the corner A of the triangle ABC and the X axis are parallel to each other (step S1). . The rotation angle at this time includes an angle r1 (see Formula (4) or Formula (5)) formed by the side AB and the X axis, and an angle r2 (see Formula (6) or Formula (7)) formed by the side AC and the X axis. ), And the rotation direction is a negative direction (counterclockwise). Also, the conversion operation at this time is described as Expression (12) because the coordinate plane is M1, the conversion type is “rotation operation”, and the rotation angle (parameter) is −rm. Similarly, in the following expression representing the conversion operation, “(coordinate plane). (Type of conversion) = (parameter value)” is described.
M1. rotation = −rm (12)
However, rm = (r1 + r2) / 2 (13)
The triangle ABC converted by this conversion operation (step S1) is defined as a triangle A 1 B 1 C 1 (congruent with the triangle ABC). At this time, a conversion equation for converting the vertex A (x 0 −y 0 ) into the vertex A 1 (X, Y) is expressed by Equation (14).
次に、図7の(b)に示すように、座標平面M1上で、頂点A1が原点に重なるように三角形A1B1C1を平行移動する(ステップS2)。このときの変換操作は、座標平面がM1、変換の種類が「平行移動」なので、式(15)および式(16)のように記述される。なお、式(15)および式(16)の右辺は、原点の座標と、式(14)に示される頂点A1の座標(X,Y)との差分として求められている。
M1.x=−cos(rm)・x0−sin(rm)・y0 …(15)
M1.y=sin(rm)・x0−cos(rm)・y0 …(16)
Next, as shown in FIG. 7B, the triangle A 1 B 1 C 1 is translated on the coordinate plane M1 so that the vertex A 1 overlaps the origin (step S2). The conversion operation at this time is described as Expression (15) and Expression (16) because the coordinate plane is M1 and the conversion type is “parallel movement”. Incidentally, the right side of the equation (15) and (16) are obtained as the difference between the origin of coordinates, the coordinates (X, Y) of the vertex A 1 represented by formula (14) and.
M1. x = −cos (rm) · x 0 −sin (rm) · y 0 (15)
M1. y = sin (rm) · x 0 −cos (rm) · y 0 (16)
この変換操作(ステップS2)により変換された三角形A1B1C1を、三角形A2B2C2(三角形ABCと合同)とする。図7の(b)に示すように、角A2の二等分線がX軸上にのる。ここで、辺A2B2とX軸とのなす角rd(角A2の二等分角)は、式(17)で表される。
rd=(r2−r1)/2 …(17)
したがって、点B2の座標は(|AB|cos(rd),−|AB|sin(rd))となる(|AB|は辺A2B2の長さ=辺ABの長さ)。
The triangle A 1 B 1 C 1 converted by this conversion operation (step S2) is defined as a triangle A 2 B 2 C 2 (congruent with the triangle ABC). As shown in FIG. 7B, the bisector of the corner A 2 is on the X axis. Here, an angle rd (a bisector of the angle A 2 ) formed by the side A 2 B 2 and the X axis is expressed by Expression (17).
rd = (r2-r1) / 2 (17)
Therefore, the coordinates of the point B 2 are (| AB | cos (rd), − | AB | sin (rd)) (| AB | is the length of the side A 2 B 2 = the length of the side AB).
(第2の変換ステップ)
次に、図7の(c)に示すように、上位の座標平面M2上で、三角形A2B2C2の角A2(角Aに相当)が90度になるようにY軸方向に拡大(または縮小)する(ステップS3)。この変換操作(ステップS3)により変換された三角形A2B2C2を、三角形A3B3C3(元の三角形と形状の異なる第1の三角形)とする。この変換操作は、換言すると、角A3の二等分角が45度となるようにY軸方向に拡大(または縮小)することである。このとき頂点B3のy座標の絶対値はx座標の値と等しい、すなわち|AB|cos(rd)に等しくなる。これによって、この変換によるY軸方向の拡大率を、頂点B3のy座標の絶対値と、頂点B2のy座標の絶対値との商(1/tan(rd))として求めることができる。また、このときの変換操作は、座標平面がM2、変換の種類が「拡大・縮小」なので、式(18)のように記述される。
(Second conversion step)
Next, as shown in FIG. 7C, on the upper coordinate plane M2, the angle A 2 (corresponding to the angle A) of the triangle A 2 B 2 C 2 is 90 degrees in the Y-axis direction. Enlarge (or reduce) (step S3). The triangle A 2 B 2 C 2 converted by this conversion operation (step S3) is defined as a triangle A 3 B 3 C 3 (a first triangle having a different shape from the original triangle). In other words, the conversion operation is to enlarge (or reduce) the Y-axis direction so that the bisector of the angle A 3 becomes 45 degrees. At this time, the absolute value of the y coordinate of the vertex B 3 is equal to the value of the x coordinate, that is, equal to | AB | cos (rd). Thereby, the enlargement ratio in the Y-axis direction by this conversion can be obtained as a quotient (1 / tan (rd)) between the absolute value of the y coordinate of the vertex B 3 and the absolute value of the y coordinate of the vertex B 2. . Further, the conversion operation at this time is described as Expression (18) because the coordinate plane is M2 and the type of conversion is “enlargement / reduction”.
次に、図7の(d)に示すように、座標平面M2上で、辺A3B3(辺ABに相当)がX軸に、辺A3C3(辺ACに相当)がY軸にそれぞれ重なるように、三角形A3B3C3を回転移動する(ステップS4)。すなわち、正方向に45度回転移動する。このときの変換操作(ステップS4)は式(19)のように記述される。
M2.rotation=45 …(19)
この変換操作(ステップS4)により変換された三角形A3B3C3を、三角形A4B4C4(第1の三角形と合同)とする。三角形A4B4C4は、図7の(d)に示すように、頂点A4が原点に配置され、角A4が直角で、頂点B4はX軸に、頂点C4はY軸に乗っている。
Next, as shown in FIG. 7D, on the coordinate plane M2, the side A 3 B 3 (corresponding to the side AB) is on the X axis, and the side A 3 C 3 (corresponding to the side AC) is on the Y axis. The triangles A 3 B 3 C 3 are rotationally moved so as to overlap each other (step S4). That is, it moves 45 degrees in the forward direction. The conversion operation (step S4) at this time is described as in equation (19).
M2. rotation = 45 (19)
The triangle A 3 B 3 C 3 converted by this conversion operation (step S4) is defined as a triangle A 4 B 4 C 4 (congruent with the first triangle). As shown in FIG. 7D, the triangle A 4 B 4 C 4 is arranged such that the vertex A 4 is arranged at the origin, the angle A 4 is a right angle, the vertex B 4 is the X axis, and the vertex C 4 is the Y axis. Is riding.
(第3の変換ステップ)
次に、図7の(e)に示すように、上位の座標平面M3上で、辺A4B4(辺ABに相当)と辺A4C4(辺ACに相当)を、X軸方向とY軸方向にそれぞれ後記する所定倍率α、βだけ縮小(または拡大)する(ステップS5)。このときの変換操作(ステップS5)は、式(20)および式(21)のように記述される。この変換操作(ステップS5)により変換された三角形A4B4C4を、三角形A5B5C5(元の三角形と形状の異なる第2の三角形)とする。
M3.xscale=α …(20)
M3.yscale=β …(21)
(Third conversion step)
Next, as shown in FIG. 7E, on the upper coordinate plane M3, the side A 4 B 4 (corresponding to the side AB) and the side A 4 C 4 (corresponding to the side AC) are set in the X-axis direction. Are reduced (or enlarged) by predetermined magnifications α and β described later in the Y-axis direction (step S5). The conversion operation (step S5) at this time is described as in equations (20) and (21). The triangle A 4 B 4 C 4 converted by this conversion operation (step S5) is defined as a triangle A 5 B 5 C 5 (second triangle having a different shape from the original triangle).
M3. xscale = α (20)
M3. yscale = β (21)
次に、図7の(f)に示すように、座標平面M3上で、角A5(角Aに相当)の二等分線とX軸とが平行になるように、三角形A5B5C5を負方向に45度回転移動する(ステップS6)。このときの変換操作は、式(22)のように記述される。この変換操作(ステップS6)により変換された三角形A5B5C5を、三角形A6B6C6(第2の三角形と合同)とする。
M3.rotation=−45 …(22)
Next, as shown in (f) of FIG. 7, on the coordinate plane M3, the triangle A 5 B 5 is such that the bisector of the angle A 5 (corresponding to the angle A) and the X axis are parallel to each other. 45 ° rotational movement in the negative direction C 5 (step S6). The conversion operation at this time is described as in Expression (22). The triangle A 5 B 5 C 5 converted by this conversion operation (step S6) is defined as a triangle A 6 B 6 C 6 (congruent with the second triangle).
M3. rotation = −45 (22)
(第4の変換ステップ)
次に、図7の(g)に示すように、座標平面M4上で、三角形A6B6C6を角A6(角Aに相当)が三角形A′B′C′の角A′に等しくなるようにY軸方向に拡大(または縮小)する(ステップS7)。この変換操作(ステップS7)により変換された三角形A6B6C6を、三角形A7B7C7(元の三角形と形状の異なる第3の三角形)とする。
ここで、三角形A′B′C′の角A′の二等分角rd′は、式(17)と同様に、式(23)で表される。
rd′=(r2′−r1′)/2 …(23)
このステップS7では、前記のステップS3と同じ考え方を逆に適用することができるので、ステップS3での拡大率の逆数であるtan(rd′)を拡大率(縮小率)とすればよい。したがって、このときの変換操作は、式(24)のように記述される。
M4.yscale=tan(rd′) …(24)
(Fourth conversion step)
Next, as shown in FIG. 7 (g), on the coordinate plane M4, the triangle A 6 B 6 C 6 has an angle A 6 (corresponding to the angle A) at an angle A ′ of the triangle A′B′C ′. Enlarge (or reduce) in the Y-axis direction so as to be equal (step S7). The triangle A 6 B 6 C 6 converted by this conversion operation (step S7) is defined as a triangle A 7 B 7 C 7 (a third triangle having a different shape from the original triangle).
Here, the bisector angle rd ′ of the angle A ′ of the triangle A′B′C ′ is expressed by the equation (23) similarly to the equation (17).
rd '= (r2'-r1') / 2 (23)
In step S7, since the same idea as in step S3 can be applied in reverse, tan (rd '), which is the reciprocal of the enlargement ratio in step S3, may be used as the enlargement ratio (reduction ratio). Therefore, the conversion operation at this time is described as in Expression (24).
M4. yscale = tan (rd ′) (24)
(第5の変換ステップ)
次に、図7の(h)に示すように、座標平面M4上で、三角形A7B7C7の辺A7B7(辺ABに相当)と辺A7C7(辺ACに相当)が、それぞれ、三角形A′B′C′の辺A′B′と辺A′C′に平行になるように回転移動する(ステップS8)。ここで、三角形A7B7C7の辺A7B7とX軸のなす角はrd′(式(23)参照)であり、三角形A′B′C′の辺A′C′とX軸のなす角はr2′(式(10)または式(11)参照)である。したがって、この変換操作は、三角形A7B7C7を(rd′−r2′)だけ逆回転することに相当する。このときの変換操作は、式(25)のように記述される。この変換操作(ステップS8)により変換された三角形A7B7C7を、三角形A8B8C8(第3の三角形と合同)とする。
M4.rotation=r2′−rd′ …(25)
(Fifth conversion step)
Next, as shown in FIG. 7H, on the coordinate plane M4, the side A 7 B 7 (corresponding to the side AB) and the side A 7 C 7 (corresponding to the side AC) of the triangle A 7 B 7 C 7 ) Are rotated so as to be parallel to the sides A'B 'and A'C' of the triangle A'B'C '(step S8). Here, the angle formed by the side A 7 B 7 of the triangle A 7 B 7 C 7 and the X axis is rd ′ (see equation (23)), and the sides A′C ′ and X of the triangle A′B′C ′ The angle formed by the axes is r2 '(see formula (10) or formula (11)). Therefore, this conversion operation corresponds to the reverse rotation of the triangle A 7 B 7 C 7 by (rd′−r2 ′). The conversion operation at this time is described as in Expression (25). The triangle A 7 B 7 C 7 converted by this conversion operation (step S8) is defined as a triangle A 8 B 8 C 8 (congruent with the third triangle).
M4. rotation = r2′−rd ′ (25)
次に、図7の(i)に示すように、座標平面M4上で、三角形A8B8C8の頂点A8(角Aに相当)が三角形A′B′C′の頂点A′に重なるように、三角形A8B8C8を平行移動する(ステップS9)。このときの変換操作は、式(26)および式(27)のように記述される。この変換操作(ステップS9)により変換された三角形A8B8C8を、三角形A9B9C9(第3の三角形と合同)とする。
M4.x=x0′ …(26)
M4.y=y0′ …(27)
Next, as shown in (i) in FIG. 7, on the coordinate plane M4, the apex A 8 of the triangle A 8 B 8 C 8 (corresponding to the corner A) is in the 'apex A' of the triangle A'B'C The triangle A 8 B 8 C 8 is translated so as to overlap (step S9). The conversion operation at this time is described as in Expression (26) and Expression (27). The triangle A 8 B 8 C 8 converted by this conversion operation (step S9) is defined as a triangle A 9 B 9 C 9 (congruent with the third triangle).
M4. x = x 0 ′ (26)
M4. y = y 0 ′ (27)
ステップS9により、最終的に、座標平面M4上で、三角形A9B9C9の辺A9B9の長さ(A8B8の長さ=A7B7の長さ)と、辺A9C9の長さ(A8C8の長さ=A7C7の長さ)とが、それぞれ、三角形A′B′C′の辺A′B′の長さと、辺A′C′の長さに等しくならなければならない。このようにするために、この画像変換方法では、前記したステップS5における所定倍率α、βの値を定めている。以下、この所定倍率α、βについて図8を参照して説明する。図8は、本実施形態の画像変換方法における所定倍率を説明する図であって、(a)〜(d)は、所定倍率を導出する過程における三角形の変形の様子を示している。 By step S9, finally, on the coordinate plane M4, the length of the side A 9 B 9 of the triangle A 9 B 9 C 9 (the length of A 8 B 8 = the length of A 7 B 7 ) and the side The length of A 9 C 9 (the length of A 8 C 8 = the length of A 7 C 7 ) is the length of the side A′B ′ of the triangle A′B′C ′ and the side A′C, respectively. It must be equal to the length of ′. In order to do this, in this image conversion method, the values of the predetermined magnifications α and β in step S5 described above are determined. Hereinafter, the predetermined magnifications α and β will be described with reference to FIG. FIG. 8 is a diagram for explaining a predetermined magnification in the image conversion method of the present embodiment, and FIGS. 8A to 8D show a state of deformation of a triangle in the process of deriving the predetermined magnification.
図8の(a)〜(c)は、ステップS5において、三角形A4B4C4を拡大(縮小)しないで、そのままの形状(第1の三角形)で、前記ステップS6〜ステップS8の変換操作を施した場合の三角形ABCの変化を示しており、図8の(d)は、前記ステップS5の変換操作に相当している。なお、図8中、一点鎖線は、座標平面M3上のX軸およびY軸に二辺(AB,ACの延長線)が乗った枠を示している。 (A) to (c) of FIG. 8 are the conversions of steps S6 to S8 in the shape (first triangle) as it is without expanding (reducing) the triangle A 4 B 4 C 4 in step S5. A change in the triangle ABC when the operation is performed is shown, and FIG. 8D corresponds to the conversion operation in step S5. In FIG. 8, an alternate long and short dash line indicates a frame in which two sides (extension lines of AB and AC) are on the X axis and the Y axis on the coordinate plane M3.
このときの変換操作を説明する。図8の(a)に示すように、座標平面M3上で、第1の三角形ABC(三角形A4B4C4:ステップS4および図7(d)参照)を−45度回転移動した後、図8の(b)に示すように、座標平面M4上で、角Aを、目的とする三角形A′B′C′(図2の(b)参照)の角A′と等しくなるように、第1の三角形ABCをY軸方向に拡大(または縮小)する。この変換操作で形成された図形を第4の三角形ABCとする。そして、図8の(c)に示すように、座標平面M4上で、この第4の三角形の辺ABと辺ACが、それぞれ、三角形A′B′C′の辺A′B′と辺A′C′に平行になるように回転移動する。そして、図8の(d)に示すように、第3の三角形の辺ABの長さが、三角形A′B′C′の辺A′B′の長さと等しくなるように、ABの方向に所定倍率αで拡大(または縮小)し、同様に、辺ACもACの方向に所定倍率βで拡大(または縮小)する。 The conversion operation at this time will be described. As shown in FIG. 8A, after rotating the first triangle ABC (triangle A 4 B 4 C 4 : see step S4 and FIG. 7D) on the coordinate plane M3 by −45 degrees, As shown in FIG. 8B, on the coordinate plane M4, the angle A is equal to the angle A ′ of the target triangle A′B′C ′ (see FIG. 2B). The first triangle ABC is enlarged (or reduced) in the Y-axis direction. A figure formed by this conversion operation is a fourth triangle ABC. Then, as shown in FIG. 8C, on the coordinate plane M4, the side AB and the side AC of the fourth triangle are respectively the side A′B ′ and the side A of the triangle A′B′C ′. Rotate and move in parallel with 'C'. Then, as shown in FIG. 8D, in the direction AB, the length of the side AB of the third triangle is equal to the length of the side A′B ′ of the triangle A′B′C ′. Similarly, the side AC is enlarged (or reduced) at a predetermined magnification β in the direction of AC.
ここで、第4の三角形ABCを生成する過程で用いた所定倍率α、βは、前記ステップS5で用いた所定倍率のことである。この第4の三角形ABCは、三角形A′B′C′と合同である。最後に、前記ステップS9を実行して、この第4の三角形を平行移動して位置合わせを行えば、一連の変換が終了する。ただし、ここで重要なことは、座標平面M4において、回転移動の後に、拡大操作を行うことはできないので、図8の(d)に示す拡大操作は、座標平面1で行わなければならないことである。したがって、図8に示す変換操作を座標平面M4で、あたかも実行したかのように考えて所定倍率α、βを逆算し、得られたα,βを用いてステップS5(図7の(e)参照)の変換操作を実行したのである。
Here, the predetermined magnifications α and β used in the process of generating the fourth triangle ABC are the predetermined magnifications used in step S5. This fourth triangle ABC is congruent with the triangle A′B′C ′. Finally, when the step S9 is executed and the fourth triangle is translated and aligned, a series of conversions is completed. However, what is important here is that the enlargement operation shown in FIG. 8D must be performed on the coordinate
この所定倍率α,βを導出する過程は以下のとおりである。
ここで、元の三角形ABCの辺ABの長さd1と、辺ACの長さd2は、それぞれ、式(28)および式(29)で示される。
The process of deriving the predetermined magnifications α and β is as follows.
Here, the length d1 of the side AB and the length d2 of the side AC of the original triangle ABC are represented by Expression (28) and Expression (29), respectively.
また、最終変換後の三角形A′B′C′の辺A′B′の長さd1′と、辺A′C′の長さd2′は、それぞれ、式(30)および式(31)で示される。 Further, the length d1 ′ of the side A′B ′ and the length d2 ′ of the side A′C ′ of the triangle A′B′C ′ after the final conversion are expressed by the equations (30) and (31), respectively. Indicated.
前記ステップS3により生成された三角形A3B3C3(第1の三角形)の辺の長さ|A3B3|(=|A4B4|)は、d1×cos(rd)×√2である(図7の(c)参照)。ただし、d1は元の三角形ABCの辺ABの長さである。すなわち、ステップS3の変換操作は、辺A2B2の長さ(ABの長さ)をcos(rd)×√2倍に拡大する操作である。また、このステップS3は、三角形ABCの辺A2B2(辺AB)とX軸のなす角をrdから45度に拡大して変換する操作となっている。 The side length | A 3 B 3 | (= | A 4 B 4 |) of the triangle A 3 B 3 C 3 (first triangle) generated in the step S3 is d1 × cos (rd) × √ 2 (see FIG. 7C). However, d1 is the length of the side AB of the original triangle ABC. That is, the conversion operation in step S3 is an operation of enlarging the length of the side A 2 B 2 (the length of AB) to cos (rd) × √2. Further, this step S3 is an operation for converting the angle formed by the side A 2 B 2 (side AB) of the triangle ABC and the X axis from rd to 45 degrees for conversion.
一方、図8の(b)に示した変換操作は、第1の三角形ABCの辺AB(辺A4B4)とX軸のなす角を45度からrd′に拡大して変換する操作となっている。すなわち、この変換操作は、ステップS3と逆の変換操作である。したがって、図8の(b)に示した変換操作は、辺AB(辺A4B4)の長さを(cos(rd′)×√2)の逆数倍に拡大する操作となっている。その結果、図8の(b)に示した変換操作で生成される第4の三角形ABCの辺ABの長さ|AB|は、式(32)で示されることとなる。ただし、d1は元の三角形ABCの辺ABの長さである。
|AB|=d1・cos(rd)/cos(rd′) …(32)
同様に、第4の三角形ABCの辺ACの長さ|AC|は、式(33)で示されることとなる。
|AC|=d2・cos(rd)/cos(rd′) …(33)
そして、式(32)および式(33)が、d1′(式(30)参照)およびd2′(式(31)参照)とそれぞれ等しいことから、所定倍率α、βは、以下の式(34)および式(35)で表されることとなる。
On the other hand, the conversion operation shown in FIG. 8B is an operation for converting the angle formed by the side AB (side A 4 B 4 ) of the first triangle ABC and the X axis from 45 degrees to rd ′. It has become. That is, this conversion operation is the reverse of the conversion operation in step S3. Therefore, the conversion operation shown in FIG. 8B is an operation for expanding the length of the side AB (side A 4 B 4 ) to a reciprocal multiple of (cos (rd ′) × √2). . As a result, the length | AB | of the side AB of the fourth triangle ABC generated by the conversion operation shown in FIG. 8B is expressed by Expression (32). However, d1 is the length of the side AB of the original triangle ABC.
| AB | = d1 · cos (rd) / cos (rd ′) (32)
Similarly, the length | AC | of the side AC of the fourth triangle ABC is expressed by Expression (33).
| AC | =
Since the equations (32) and (33) are equal to d1 ′ (see equation (30)) and d2 ′ (see equation (31)), respectively, the predetermined magnifications α and β are expressed by the following equations (34) ) And formula (35).
なお、ステップS5における変換操作を示す式(20)および式(21)は、式(36)および式(37)のように書き換えられる。
M3.xscale=(d1′・cos(rd′))/(d1・cos(rd)) …(36)
M3.yscale=(d2′・cos(rd′))/(d2・cos(rd)) …(37)
In addition, Formula (20) and Formula (21) which show conversion operation in step S5 are rewritten like Formula (36) and Formula (37).
M3. xscale = (d1 ′ · cos (rd ′)) / (d1 · cos (rd)) (36)
M3. yscale = (d2 ′ · cos (rd ′)) / (d2 · cos (rd)) (37)
以上説明したように、座標平面M1〜M4において、式(12)、式(15)、式(16)、式(18)、式(19)、式(36)、式(37)、式(22)、式(24)〜式(27)を順次計算することにより、元の三角形ABCの画像領域を三角形A′B′C′(図2の(b)参照)の画像領域に変換することができる。 As described above, in the coordinate planes M1 to M4, the expressions (12), (15), (16), (18), (19), (36), (37), ( 22) The image area of the original triangle ABC is converted into the image area of the triangle A′B′C ′ (see FIG. 2B) by sequentially calculating the expressions (24) to (27). Can do.
なお、ステップS3または/およびステップS6における三角形の拡大方向はY軸に限らず、X軸方向でもよい。この場合には、座標平面M1上で、三角形ABCの角Aの二等分線とY軸とが平行になるように、三角形ABCを(90−rm)度回転移動し(ステップS1′:図7の(a)に対応)、座標平面M2上で、三角形A2B2C2の角A2が90度になるようにX軸方向に拡大(または縮小)し(ステップS3′:図7の(c)に対応)、座標平面M2上で、三角形A3B3C3を負方向に45度回転移動する(ステップS4′:図7の(d)に対応)。また、座標平面M3上で、角A5の二等分線とY軸とが平行になるように、三角形A5B5C5を正方向に45度回転移動し(ステップS6′:図7の(f)に対応)、座標平面M4上で、三角形A6B6C6を角A6が三角形A′B′C′の角A′に等しくなるようにX軸方向に拡大(または縮小)する(ステップS7′:図7の(g)に対応)。 In addition, the expansion direction of the triangle in step S3 and / or step S6 is not limited to the Y axis, and may be the X axis direction. In this case, on the coordinate plane M1, the triangle ABC is rotated (90-rm) degrees so that the bisector of the angle A of the triangle ABC and the Y axis are parallel (step S1 ′: FIG. corresponding to 7 (a)), on the coordinate plane M2, enlarged in the X-axis direction as the corner a 2 of the triangle a 2 B 2 C 2 is 90 degrees (or reduced) (step S3 ': 7 (Corresponding to (c) of FIG. 7), the triangle A 3 B 3 C 3 is rotated 45 degrees in the negative direction on the coordinate plane M2 (step S4 ′: corresponding to FIG. 7D). Further, on the coordinate plane M3, the triangle A 5 B 5 C 5 is rotated 45 degrees in the positive direction so that the bisector of the angle A 5 is parallel to the Y axis (step S6 ′: FIG. 7). On the coordinate plane M4, the triangle A 6 B 6 C 6 is expanded (or reduced) in the X-axis direction so that the angle A 6 is equal to the angle A ′ of the triangle A′B′C ′. (Step S7 ': corresponding to (g) of FIG. 7).
[画像変換装置の構成]
次に、本発明の画像変換方法を実行する画像変換装置について詳細に説明する。図1は、本実施形態に係る画像変換装置の構成図である。画像変換装置1は、メモリ上に展開された任意の三角形ABC(図2の(a)参照)の画像領域を、他の三角形A′B′C′(図2の(b)参照)の画像領域に変換し、変換された画像を表示するものである。この画像変換装置1は、入力手段10と、ネットワークI/F手段12と、記憶手段14と、出力手段16と、CPU20とを備えている。
[Configuration of Image Conversion Device]
Next, an image conversion apparatus that executes the image conversion method of the present invention will be described in detail. FIG. 1 is a configuration diagram of an image conversion apparatus according to the present embodiment. The
入力手段10は、例えばキーボードやマウスなどから構成され、変換前の三角形ABCの頂点座標と、変換後の三角形A′B′C′の頂点座標とを入力するものである。
ネットワークI/F手段12は、ネットワーク2から所定の画像を入力するものである。
記憶手段14は、変換される前の画像および変換後の画像を記憶するもので、ハードディスク等の一般的な記憶装置である。
出力手段16は、例えばディスプレイなどから構成され、所定の画像等を表示するものである。
The input means 10 is composed of, for example, a keyboard or a mouse, and inputs the vertex coordinates of the triangle ABC before conversion and the vertex coordinates of the triangle A′B′C ′ after conversion.
The network I /
The
The output means 16 is composed of a display, for example, and displays a predetermined image or the like.
CPU20は、所定のプログラムを実行することで、後記する各種の処理を行うものであり、第1座標平面処理部21と、第2座標平面処理部22と、第3座標平面処理部23と、第4座標平面処理部24と、記憶部25と、画像処理部26とを備えている。
第1座標平面処理部21は、座標平面M1に係る変換処理を実行するものである。この第1座標平面処理部21は、記憶部25に展開された三角形ABCについて、角Aの二等分線とX軸とが平行になるように、三角形ABCを回転移動し(ステップS1:図5参照)、頂点Aが原点に重なるように三角形ABCを平行移動する(ステップS2:図5参照)。
第2座標平面処理部22は、座標平面M2に係る変換処理を実行するものである。この第2座標平面処理部22は、記憶部25に展開された三角形ABCについて、角Aが90度になるように三角形ABCをY軸方向に拡大または縮小し(ステップS3:図5参照)、辺ABがX軸に辺ACがY軸にそれぞれ重なるように三角形ABCを45度回転移動する(ステップS4:図5参照)。
The
The first coordinate
The second coordinate
第3座標平面処理部23は、座標平面M3に係る変換処理を実行するものである。この第3座標平面処理部23は、記憶部25に展開された三角形ABCについて、辺ABをX軸方向にα倍、Y軸方向にβ倍それぞれ拡大または縮小し(ステップS5:図5参照)、角Aの二等分線とX軸とが平行になるように三角形ABCを45度回転移動する(ステップS6:図5参照)。
第4座標平面処理部24は、座標平面M4に係る変換処理を実行するものである。この第4座標平面処理部24は、記憶部25に展開された三角形ABCについて、角Aが目的とする三角形A′B′C′の角A′に等しくなるように、三角形ABCをY軸方向に拡大・縮小し(ステップS7:図5参照)、辺ABと辺ACが、それぞれ、辺A′B′と辺A′C′に平行になるように回転移動し(ステップS8:図5参照)、頂点Aが頂点A′に重なるように三角形ABCを平行移動する(ステップS9:図5参照)。
The third coordinate plane processing unit 23 executes a conversion process related to the coordinate plane M3. The third coordinate plane processing unit 23 enlarges or reduces the side AB of the triangle ABC developed in the
The fourth coordinate plane processing unit 24 executes a conversion process related to the coordinate plane M4. The fourth coordinate plane processing unit 24 converts the triangle ABC in the Y-axis direction so that the triangle A developed in the
記憶部25は、変換操作のパラメータの値や変換過程の三角形の画像領域の画素の座標等を記憶するものであり、半導体メモリや磁気メモリなどから構成される。
画像処理部26は、入力画像を記憶手段14に記憶させると共に、入力手段10からのコマンド入力に応じて、入力画像と変換画像を適宜切り換えて出力手段16に出力させるものである。
The
The
なお、画像変換装置1は、一般的なコンピュータにおいて、前記した各手段を機能させる画像変換プログラムを実行することで実現することもできる。この画像変換プログラムは、通信回線を介して配布することも可能であるし、CD−ROM等の記録媒体に書き込んで配布することも可能である。
Note that the
[画像変換装置の動作]
次に、画像変換装置1の動作を説明する。この画像変換装置1では、あらかじめ以下の動作を行っておく。すなわち、画像変換装置1は、ネットワークI/F手段12によって、所定の画像を入力し、画像処理部26によって、入力画像を記憶手段14に記憶すると共に、出力手段16に出力する。そして、画像変換装置1の操作者は、画像変換装置1の出力手段16に表示された所定画像の一部または全体を含む三角形パッチを想定した三角形ABCの頂点座標を決定し、さらに、所望の形状に変換した三角形A′B′C′の頂点座標を決定しておく。そして、画像変換装置1は、操作者の操作に応じて、入力手段10によって、最下層の座標平面M1上の三角形ABCの頂点座標として、A(x0,y0)、B(x1,y1)、C(x2,y2)を入力する。さらに、画像変換装置1は、操作者の操作に応じて、入力手段10によって、最上層の座標平面M4上の三角形A′B′C′の頂点座標として、A′(x0′,y0′)、B′(x1′,y1′)、C′(x2′,y2′)を入力する。入力された2つの三角形の頂点座標は、画像変換装置1の画像処理部26によって、記憶部25に記憶される。
[Operation of image converter]
Next, the operation of the
これらのデータ入力または操作者の操作に基づいて、画像変換装置1は、第1座標平面処理部21によって、前記の式(12)に基づいて三角形ABCの画像領域の各画素(頂点を含む)を回転移動し、移動先の座標点を記憶部25に記憶する。このとき、移動先の三角形ABCを、三角形A1B1C1とする(図7の(a)参照)。そして、画像変換装置1は、第1座標平面処理部21によって、三角形A1B1C1の画像領域の各画素(頂点を含む)を、前記の式(15)に基づいてX軸方向に、また、前記の式(16)に基づいてY軸方向に平行移動し、移動先の座標点を記憶部25に記憶する。このとき、移動先の三角形ABCを、三角形A2B2C2とする(図7の(b)参照)。
Based on the data input or the operator's operation, the
続いて、画像変換装置1は、第2座標平面処理部22によって、三角形A2B2C2の画像領域の各画素(頂点を含む)を、前記の式(18)に基づいてY軸方向に拡大(または縮小)し、移動先の座標点を記憶部25に記憶する。このとき、移動先の三角形ABCを、三角形A3B3C3とする(図7の(c)参照)。そして、画像変換装置1は、第2座標平面処理部22によって、三角形A3B3C3の画像領域の各画素(頂点を含む)を、前記の式(19)に基づいて正方向に45度回転移動し、移動先の座標点を記憶部25に記憶する。このとき、移動先の三角形ABCを、三角形A4B4C4とする(図7の(d)参照)。
Subsequently, the
続いて、画像変換装置1は、第3座標平面処理部23によって、三角形A4B4C4の画像領域の各画素(頂点を含む)を、前記の式(36)に基づいてX軸方向に縮小(または拡大)すると共に、前記の式(37)に基づいてY軸方向に縮小(または拡大)し、移動先の座標点を記憶部25に記憶する。このとき、移動先の三角形ABCを、三角形A5B5C5とする(図7の(e)参照)。そして、画像変換装置1は、第3座標平面処理部23によって、三角形A5B5C5の画像領域の各画素(頂点を含む)を、前記の式(22)に基づいて負の方向に45度回転移動し、移動先の座標点を記憶部25に記憶する。このとき、移動先の三角形ABCを、三角形A6B6C6とする(図7の(f)参照)。
Subsequently, the
続いて、画像変換装置1は、第4座標平面処理部24によって、三角形A6B6C6の画像領域の各画素(頂点を含む)を、前記の式(24)に基づいてY軸方向に拡大(または縮小)し、移動先の座標点を記憶部25に記憶する。このとき、移動先の三角形ABCを、三角形A7B7C7とする(図7の(g)参照)。そして、画像変換装置1は、第4座標平面処理部24によって、三角形A7B7C7の画像領域の各画素(頂点を含む)を、前記の式(25)に基づいて正方向に(r2′−rd′)度回転移動し、移動先の座標点を記憶部25に記憶する。このとき、移動先の三角形ABCを、三角形A8B8C8とする(図7の(h)参照)。さらに、画像変換装置1は、第4座標平面処理部24によって、三角形A8B8C8の画像領域の各画素(頂点を含む)を、前記の式(26)に基づいてX軸方向に、また、前記の式(27)に基づいて平行移動し、移動先の座標点を記憶部25に記憶する。このとき、移動先の三角形ABCを、三角形A9B9C9とする(図7の(i)参照)。なお、三角形A9B9C9の頂点座標は、入力手段10によって入力された、最上層の座標平面M4上の三角形A′B′C′の頂点座標と一致する。
Subsequently, the
最後に、画像変換装置1は、画像処理部26によって、記憶部25に記憶された各画素の座標点を読み出し、出力手段16に出力し、出力手段16によって、目的とする画像領域に変換配置された画像を表示する。
本実施形態の画像変換装置によれば、任意の形状の三角形の画像領域に所望のアフィン変換を施して表示することが可能になる。
Finally, the
According to the image conversion apparatus of the present embodiment, a desired affine transformation can be performed and displayed on a triangular image region having an arbitrary shape.
以上、本発明の実施形態について説明したが、本発明はこれに限定されるものではなく、その趣旨を変えない範囲でさまざまに実施することができる。例えば、本実施形態では、画像変換装置1は、変換元の三角形パッチの頂点座標と、所望の形状に変換した三角形A′B′C′の頂点座標とを入力した後に、前記のステップS1〜ステップS9の変換操作を実行するものとして説明したが、変換元の三角形パッチの頂点座標だけ入力して前記のステップS1〜ステップS4の変換操作を予め実行しておき、その後、所望の形状の三角形A′B′C′の頂点座標を入力して、前記のステップS5〜ステップS9の変換操作を実行するように処理を分離して実行するようにしてもよい。この場合には、変換元の三角形パッチの座標を変化させたり、変換後の三角形A′B′C′の座標を変化させたりしたときの演算を独立に実行できるので、演算時間を短縮することができる。例えば、予め変換元の三角形パッチとして数多くのデータを取り込んでおき、前記のステップS1〜ステップS4の変換操作を実行しておけば、その後に、短時間で多様な変換画像を表示することが可能になる。
As mentioned above, although embodiment of this invention was described, this invention is not limited to this, It can implement variously in the range which does not change the meaning. For example, in the present embodiment, the
また、画像変換装置の構成は、本実施形態の構成の他に、例えば、三角形パッチ生成手段を設けるようにしてもよいし、ネットワークから三角形パッチを取り込むようにしてもよい。また、本実施形態の画像変換装置を例えば三次元モデル表示装置に適用してもよい。この場合の一例を図9を参照して説明する。図9は、本発明を顔画像の合成に適用した例であって、(a)は変換前、(b)は変換後の画像を示している。例えば、画像変換装置の機能で、図9の(a)に示すように、所定の画像として、ある人物の正面から見た顔写真を取り込み、変換することを希望する領域に、三角形パッチ生成手段によって複数の三角形パッチを生成する。一方、三次元モデル表示装置の機能で、三角形パッチを回転移動(平行投影変換)させたフレーム(変形された三角形)を生成する。このフレームの座標を画像変換装置に入力することにより、顔写真の所望の領域がアフィン変換され、図9の(b)に示すように、顔写真の所望の領域が回転した場合の画像(変換画像)を表示することができる。これによれば、テクスチャマッピングを容易に行うことができる。
また、本発明の画像変換装置は、例えば、三角形パッチを射影変換した結果に対して、画像をアフィン変換で変形して擬似的に表示することに適用することもできる。
In addition to the configuration of the present embodiment, the configuration of the image conversion apparatus may be provided with, for example, a triangle patch generation unit, or may receive a triangle patch from a network. Further, the image conversion apparatus of the present embodiment may be applied to, for example, a 3D model display apparatus. An example of this case will be described with reference to FIG. FIG. 9 shows an example in which the present invention is applied to synthesis of a face image, where (a) shows an image before conversion and (b) shows an image after conversion. For example, with the function of the image conversion device, as shown in FIG. 9A, a triangular patch generation means is provided in a region where a face photograph viewed from the front of a certain person is taken and converted as a predetermined image. To generate a plurality of triangular patches. On the other hand, a frame (deformed triangle) obtained by rotationally moving a triangle patch (parallel projection conversion) by the function of the 3D model display device is generated. By inputting the coordinates of this frame to the image conversion apparatus, the desired region of the face photograph is affine transformed, and as shown in FIG. 9B, the image (conversion) when the desired region of the face photograph is rotated. Image) can be displayed. According to this, texture mapping can be performed easily.
The image conversion apparatus of the present invention can also be applied to, for example, transforming an image by affine transformation and displaying it in a pseudo manner on the result of projective transformation of a triangular patch.
1 画像変換装置
10 入力手段
12 ネットワークI/F手段
14 記憶手段
16 出力手段
20 CPU
21 第1座標平面処理部
22 第2座標平面処理部
23 第3座標平面処理部
24 第4座標平面処理部
25 記憶部
26 画像処理部
DESCRIPTION OF
21 first coordinate
Claims (6)
前記画像変換装置は、
前記三角形ABCの頂点座標を入力する第1の入力ステップと、
前記三角形A′B′C′の頂点座標を入力する第2の入力ステップと、
前記第1の座標平面に入力された三角形ABCの頂点Aを原点に移動させると共に、角Aの二等分線をX軸またはY軸に重ねる第1の変換ステップと、
第1の変換ステップにより変換された三角形ABCを、前記第2の座標平面上で、角Aが直角になるように、角Aの二等分線と直交する方向に拡大または縮小する第2の変換ステップと、
第2の変換ステップにより変換された三角形ABCの辺ABおよび辺ACを、前記第3の座標平面上で、第1および第2の所定倍率でそれぞれ拡大または縮小する第3の変換ステップと、
第3の変換ステップにより変換された三角形ABCを、前記第4の座標平面上で、角Aが前記三角形A′B′C′の角A′と等しくなるように、角Aの二等分線と直交する方向に第3の所定倍率で拡大または縮小する第4の変換ステップと、
第4の変換ステップにより変換された三角形ABCを、前記第4の座標平面上で、回転移動および平行移動することにより、前記三角形A′B′C′の座標位置に一致させる第5の変換ステップと、
を実行することを特徴とする画像変換方法。 For the sequentially stacked images on the first to fourth coordinate planes, enlargement or reduction in the X-axis direction and Y-axis direction, rotational movement around the origin, and parallel movement to any coordinate point are in this order. The image conversion of the triangle ABC on the first coordinate plane that is the lowest layer and the image area of the triangle A′B′C ′ on the fourth coordinate plane that is the top layer In the image conversion method in the apparatus,
The image conversion device includes:
A first input step of inputting vertex coordinates of the triangle ABC;
A second input step of inputting vertex coordinates of the triangle A′B′C ′;
Moving the vertex A of the triangle ABC input to the first coordinate plane to the origin, and superimposing the bisector of the angle A on the X axis or the Y axis;
The triangle ABC transformed by the first transformation step is enlarged or reduced in the direction orthogonal to the bisector of the angle A so that the angle A is a right angle on the second coordinate plane. A conversion step;
A third conversion step of enlarging or reducing the side AB and the side AC of the triangle ABC converted by the second conversion step at first and second predetermined magnifications on the third coordinate plane;
The triangle ABC transformed by the third transformation step is bisected by the angle A so that the angle A is equal to the angle A ′ of the triangle A′B′C ′ on the fourth coordinate plane. A fourth conversion step for enlarging or reducing at a third predetermined magnification in a direction orthogonal to
Fifth conversion step for matching the coordinate position of the triangle A′B′C ′ by rotating and translating the triangle ABC converted by the fourth conversion step on the fourth coordinate plane. When,
The image conversion method characterized by performing.
前記第2の所定倍率は、前記第2の変換ステップで生成された三角形ABCを、角Aの二等分線と直交する方向に前記第3の所定倍率で拡大または縮小した後の辺ACを、前記三角形A′B′C′の辺A′C′に拡大または縮小するときの倍率と等しい、
ことを特徴とする請求項1に記載の画像変換方法。 The first predetermined magnification is obtained by multiplying the triangle ABC generated in the second conversion step by the third predetermined magnification in the direction orthogonal to the bisector of the angle A at the side AB. , Equal to the magnification when enlarging or reducing to the side A′B ′ of the triangle A′B′C ′,
The second predetermined magnification is obtained by enlarging or reducing the side AC of the triangle ABC generated in the second conversion step in the direction orthogonal to the bisector of the angle A at the third predetermined magnification. , Equal to the magnification when enlarging or reducing to the side A′C ′ of the triangle A′B′C ′,
The image conversion method according to claim 1.
前記三角形ABCおよび前記三角形A′B′C′の頂点座標を入力する入力手段と、
前記第1の座標平面に入力された三角形ABCの頂点Aを原点に移動させて角Aの二等分線をX軸またはY軸に重ねる第1座標平面処理部と、
前記第2の座標平面上で、前記三角形ABCを、角Aの二等分線と直交する方向に拡大または縮小して、角Aが直角である第1の三角形ABCに変換する第2座標平面処理部と、
前記第3の座標平面上で、前記第1の三角形ABCの辺ABおよび辺ACを、第1および第2の所定倍率でそれぞれ拡大または縮小して第2の三角形ABCに変換する第3座標平面処理部と、
前記第4の座標平面上で、前記第2の三角形ABCの角Aが前記三角形A′B′C′の角A′と等しくなるように、前記第2の三角形ABCを、角Aの二等分線と直交する方向に第3の所定倍率で拡大または縮小して第3の三角形ABCに変形すると共に、前記第3の三角形ABCを回転移動および平行移動することにより、前記三角形A′B′C′の座標位置に一致させる第4座標平面処理部と、
を備えることを特徴とする画像変換装置。 The images on the first to fourth coordinate planes that are sequentially stacked can be enlarged or reduced in the X-axis direction and Y-axis direction, rotated around the origin, and translated to any coordinate point. In the image conversion apparatus configured to convert the image area of the triangle ABC on the first coordinate plane as the lowermost layer into the image area of the triangle A′B′C ′ on the fourth coordinate plane as the uppermost layer,
Input means for inputting vertex coordinates of the triangle ABC and the triangle A′B′C ′;
A first coordinate plane processing unit that moves the vertex A of the triangle ABC input to the first coordinate plane to the origin and superimposes the bisector of the angle A on the X axis or the Y axis;
On the second coordinate plane, the triangle ABC is enlarged or reduced in a direction perpendicular to the bisector of the angle A, and converted into a first triangle ABC having the angle A being a right angle. A processing unit;
On the third coordinate plane, a third coordinate plane that converts the side AB and the side AC of the first triangle ABC into the second triangle ABC by enlarging or reducing the first and second predetermined magnifications, respectively. A processing unit;
On the fourth coordinate plane, the second triangle ABC is bisected of the angle A so that the angle A of the second triangle ABC is equal to the angle A ′ of the triangle A′B′C ′. The triangle A′B ′ is obtained by enlarging or reducing the third triangle ABC in a direction orthogonal to the segment by a third predetermined magnification, and rotating and translating the third triangle ABC. A fourth coordinate plane processing unit for matching the coordinate position of C ′;
An image conversion apparatus comprising:
前記第2の所定倍率は、前記第1の直角三角形ABCを、角Aの二等分線と直交する方向に前記第3の所定倍率で拡大または縮小して生成される第4の三角形ABCの辺ACを、前記三角形A′B′C′の辺A′C′に拡大または縮小するときの倍率と等しい、
ことを特徴とする請求項5に記載の画像変換装置。 The first predetermined magnification is obtained by enlarging or reducing the first triangle ABC in the direction orthogonal to the bisector of the angle A at the third predetermined magnification. Equal to the magnification when AB is enlarged or reduced to the side A′B ′ of the triangle A′B′C ′;
The second predetermined magnification is obtained by enlarging or reducing the first right triangle ABC in the direction perpendicular to the bisector of the angle A at the third predetermined magnification. Equal to the magnification when the side AC is enlarged or reduced to the side A′C ′ of the triangle A′B′C ′;
The image conversion apparatus according to claim 5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004326332A JP4448426B2 (en) | 2004-11-10 | 2004-11-10 | Image conversion apparatus and image conversion program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004326332A JP4448426B2 (en) | 2004-11-10 | 2004-11-10 | Image conversion apparatus and image conversion program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006139367A true JP2006139367A (en) | 2006-06-01 |
JP4448426B2 JP4448426B2 (en) | 2010-04-07 |
Family
ID=36620175
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004326332A Expired - Fee Related JP4448426B2 (en) | 2004-11-10 | 2004-11-10 | Image conversion apparatus and image conversion program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4448426B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010009479A (en) * | 2008-06-30 | 2010-01-14 | Toshiba Corp | Remote visual inspection support system, and remote visual inspection support computer program |
JP2017501514A (en) * | 2013-11-04 | 2017-01-12 | フェイスブック,インク. | System and method for facial expression |
-
2004
- 2004-11-10 JP JP2004326332A patent/JP4448426B2/en not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010009479A (en) * | 2008-06-30 | 2010-01-14 | Toshiba Corp | Remote visual inspection support system, and remote visual inspection support computer program |
JP2017501514A (en) * | 2013-11-04 | 2017-01-12 | フェイスブック,インク. | System and method for facial expression |
US11210503B2 (en) | 2013-11-04 | 2021-12-28 | Facebook, Inc. | Systems and methods for facial representation |
Also Published As
Publication number | Publication date |
---|---|
JP4448426B2 (en) | 2010-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4845147B2 (en) | Perspective editing tool for 2D images | |
US6268846B1 (en) | 3D graphics based on images and morphing | |
KR0125776B1 (en) | Apparatus and method for convertng line segment data to three-dimensional data | |
JP4629832B2 (en) | Method and system for generating a mosaic approximate representation of an outer envelope of a complex model | |
JP2009134509A (en) | Device for and method of generating mosaic image | |
JPH1049704A (en) | Image conversion method | |
JP2919428B2 (en) | Image transformation device | |
JP4119529B2 (en) | Virtual environment generation method and apparatus, and recording medium on which virtual environment generation program is recorded | |
WO2014119524A1 (en) | Three-dimensional object multi-viewpoint rendering device, method, and program | |
JP3245336B2 (en) | Modeling method and modeling system | |
JP6584735B1 (en) | Image generation apparatus, image generation method, and image generation program | |
JP5245963B2 (en) | Image converter | |
JP4448426B2 (en) | Image conversion apparatus and image conversion program | |
JPH06176129A (en) | Computer graphic generation device | |
JP6732082B1 (en) | Image generation apparatus, image generation method, and image generation program | |
JP6248445B2 (en) | LSI design equipment | |
Wang et al. | Conversion between T-Splines and Hierarchical B-Splines. | |
JP3268665B2 (en) | Computer graphics production equipment | |
Noh et al. | Inverse Free-form Deformation for interactive UV map editing | |
JP5792210B2 (en) | Multi-view drawing apparatus, method, and program for three-dimensional object | |
JP4203780B2 (en) | Display element three-dimensional apparatus and method | |
JPH0877389A (en) | Three-dimensional shape model generation device | |
JPH06176168A (en) | Computer graphics preparing device | |
Singh et al. | Image Morphing: A Literature Study | |
JP3071495B2 (en) | Object model editing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070216 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090715 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090721 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090824 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091013 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091023 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100119 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100122 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130129 Year of fee payment: 3 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |