JP2012256280A - Dynamic image processing method, dynamic image processor and dynamic image processing program - Google Patents

Dynamic image processing method, dynamic image processor and dynamic image processing program Download PDF

Info

Publication number
JP2012256280A
JP2012256280A JP2011130010A JP2011130010A JP2012256280A JP 2012256280 A JP2012256280 A JP 2012256280A JP 2011130010 A JP2011130010 A JP 2011130010A JP 2011130010 A JP2011130010 A JP 2011130010A JP 2012256280 A JP2012256280 A JP 2012256280A
Authority
JP
Japan
Prior art keywords
vertex
control point
point
frame
patch
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
Application number
JP2011130010A
Other languages
Japanese (ja)
Other versions
JP5567525B2 (en
Inventor
Ken Tsutsuguchi
けん 筒口
Hiroshi Konishi
宏志 小西
Hiromu Miyashita
広夢 宮下
Akira Kojima
明 小島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2011130010A priority Critical patent/JP5567525B2/en
Publication of JP2012256280A publication Critical patent/JP2012256280A/en
Application granted granted Critical
Publication of JP5567525B2 publication Critical patent/JP5567525B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

PROBLEM TO BE SOLVED: To present a dynamic image with vector data.SOLUTION: A dynamic image processing method includes steps of: dividing a closed region with similar color values within a start frame image of dynamic image data into quadrangular curved-surface patches; tracing peaks and control points of the curved-surface patches in chronological order with reference to a frame of the dynamic image data; approximating a locus of the peaks and the control points in a time axis direction by a parametric curve; acquiring each color value corresponding to the peak and the control point of the parametric curve from the frame image of the dynamic image data; and outputting the color value corresponding to each spatiotemporal coordinate value of the peak and the control point of the parametric curve. Accordingly, the dynamic image data can be presented with vector data.

Description

本発明は、動画像をベクトルデータで表現する技術に関する。   The present invention relates to a technique for expressing a moving image by vector data.

デジタルカメラやビデオカメラ等で撮影された画像は、一般に、ビットマップ形式で保存されて利用されることが多い。ビットマップ形式では、画像を画素に分割し、画像を様々な色の画素の集合として取り扱うため写実性に優れている。しかしながら、画像に写されているオブジェクト単位で編集することは容易ではなく、画像を拡大表示した際に、画質が劣化するという問題がある。図形をベースとするベクトル形式のデータは、ベクトルデータが関数的な数値で表され、オブジェクト自体が数式に基づいて描画されるため、オブジェクト単位での編集が容易であり、拡大表示しても一定の画質が保持される。なお、オブジェクトとは、画像内に撮影された意味のあるまとまりを意味し、例えば、人物、頭部、机、車両などの像に代表される。   In general, an image taken with a digital camera, a video camera, or the like is often stored and used in a bitmap format. In the bitmap format, the image is divided into pixels, and the image is handled as a set of pixels of various colors, so that the realism is excellent. However, it is not easy to edit in units of objects shown in the image, and there is a problem that the image quality deteriorates when the image is enlarged. Vector-based data based on figures is easy to edit on an object-by-object basis because vector data is represented by functional numerical values and the object itself is drawn based on mathematical formulas. Image quality is preserved. Note that an object means a meaningful collection taken in an image, and is represented by, for example, an image of a person, a head, a desk, a vehicle, or the like.

このような背景のもと、ビットマップ形式の画像をベクトル形式のデータに変換する手法が提案されている(非特許文献1−3参照)。これらの手法は、できるだけ元のビットマップ形式の画像が持つ画質(写実性)を損なわないようにして、できるだけ少ない数の図形要素を持つベクトル形式のデータに変換することを特徴としている。具体的には、ビットマップ形式の画像内のオブジェクトを閉領域とみなし、閉領域の輪郭及び内部を類似した色値を持つ領域毎に「辺がパラメトリック曲線で構成される三角形」や「辺がパラメトリック曲線で構成される四角形」などのパラメトリック曲面パッチに分割して、閉領域の輪郭をパラメトリック曲線で近似するとともに、パラメトリック曲面パッチの内部の色を補間して生成する。以降ではパラメトリック曲面パッチを「三角形パッチ」、「四角形パッチ」、「曲面パッチ」、あるいは単に「パッチ」と称することもある。   Against this background, a technique for converting a bitmap format image into vector format data has been proposed (see Non-Patent Documents 1-3). These methods are characterized in that they are converted into vector format data having as few graphic elements as possible without impairing the image quality (realism) of the original bitmap format image as much as possible. Specifically, an object in a bitmap format image is regarded as a closed region, and the outline of the closed region and the region having a similar color value for each region have a “triangle composed of parametric curves” or “side It is divided into parametric curved surface patches such as “a quadrangle composed of parametric curves”, the contour of the closed region is approximated by a parametric curve, and the color inside the parametric curved surface patch is generated by interpolation. Hereinafter, the parametric curved patch may be referred to as a “triangular patch”, a “rectangular patch”, a “curved patch”, or simply a “patch”.

図13に、ビットマップ形式の画像をベクトル形式のデータに変換する様子を示す。図13(a)は、各画素がそれぞれ色値を持っているビットマップ形式の画像を示す。図13(b)は、四角形パッチで近似した例を示し、図13(c)は三角形パッチで近似した例を示す。このとき、四角形パッチや三角形パッチは幾何学的には画像面に垂直な方向の高さを持つことができるが、この「高さ」に相当する値を「色値」として表現することで、パッチ内部の色を補間することができる。非特許文献3においては、領域の輪郭のみにパラメトリック曲線を用い、内部の色の補間は薄板スプライン(Thin Plate Spline)補間を用いている。   FIG. 13 shows how a bitmap format image is converted to vector format data. FIG. 13A shows a bitmap-format image in which each pixel has a color value. FIG. 13B shows an example approximated by a quadrangular patch, and FIG. 13C shows an example approximated by a triangular patch. At this time, the rectangular patch and the triangular patch can geometrically have a height in the direction perpendicular to the image plane, but by expressing the value corresponding to this “height” as a “color value”, The color inside the patch can be interpolated. In Non-Patent Document 3, a parametric curve is used only for the outline of the region, and thin plate spline interpolation is used for internal color interpolation.

ここで、四角形パッチ、三角形パッチの例について説明する。   Here, examples of a rectangular patch and a triangular patch will be described.

双3次ベジエ四角形パッチは、3次元空間に格子状に配置された4×4の制御点の座標値Pij(i=0,1,2,3; j=0,1,2,3)を用いて、4頂点P00,P03,P30,P33で囲まれた領域内部の点Pを次式(1)と表す。
The bicubic Bezier square patch is a coordinate value P ij (i = 0,1,2,3; j = 0,1,2,3) of 4 × 4 control points arranged in a grid in a three-dimensional space. The point P inside the region surrounded by the four vertices P 00 , P 03 , P 30 and P 33 is expressed by the following equation (1).

i 3(u),Bj 3(v)はそれぞれ3次の Bernstein 基底関数である。u,v(0≦u≦1,0≦v≦1)はパラメトリック空間のパラメータである。 B i 3 (u) and B j 3 (v) are third-order Bernstein basis functions, respectively. u and v (0 ≦ u ≦ 1, 0 ≦ v ≦ 1) are parameters of the parametric space.

パラメータsに対する1変数3次の Bernstein 基底関数は次式(2)となる。
The one-variable third-order Bernstein basis function for the parameter s is expressed by the following equation (2).

すなわち、四角形を構成する4つの頂点を含む16個の制御点の3次元座標値を用いて、四角形を構成する4つの頂点を通過する曲面を構成することができる。パラメータu,vについて3次であるが、それぞれ次数がひとつ増えると制御点がひとつ増える。   That is, a curved surface passing through the four vertices constituting the quadrangle can be formed using the three-dimensional coordinate values of the 16 control points including the four vertices constituting the quadrangle. Although the parameters u and v are cubic, the number of control points increases by one when the order increases by one.

また、双3次ベジエ三角形パッチは、3つの頂点と、それぞれの辺を構成するベジエ曲線の制御点が2つずつと、三角形パッチ内部にある制御点が1つの合計10個の制御点Pijk(i=0,1,2,3; j=0,1,2,3; k=0,1,2,3; i+j+k=3)を用いて次式(3)と表すことができる。
In addition, the bicubic Bezier triangular patch has three vertexes, two control points of the Bezier curve constituting each side, and one control point P ijk in total within the triangular patch. (I = 0,1,2,3; j = 0,1,2,3; k = 0,1,2,3; i + j + k = 3) Can do.

ijk 3(u,v)は2変数の3次 Bernstein 基底関数である。u,v(0≦u≦1,0≦v≦1)はパラメトリック空間のパラメータである。 B ijk 3 (u, v) is a two-variable cubic Bernstein basis function. u and v (0 ≦ u ≦ 1, 0 ≦ v ≦ 1) are parameters of the parametric space.

パラメータu,vに対する2変数3次 Bernstein 基底関数は次式(4)となる。
A two-variable cubic Bernstein basis function for parameters u and v is expressed by the following equation (4).

一方、コンピュータグラフィクスによって表現された3次元物体の形状を変形させることを目的としてパラメトリック立体が提案されている。3次元物体をパラメトリック立体で覆い、3次元物体を構成する各点の座標値をパラメトリック立体を生成するパラメータに対応付け、パラメトリック立体の制御点を変形させることで、3次元物体の形状もそれに応じて変形させる技術である。例えば、非特許文献4では、パラメトリック立体として、立体の各辺や面がベジエ曲線やベジエパッチで表されるベジエ立体を用いている。   On the other hand, parametric solids have been proposed for the purpose of deforming the shape of a three-dimensional object represented by computer graphics. The 3D object is covered with a parametric solid, the coordinate values of each point constituting the 3D object are associated with the parameters for generating the parametric solid, and the control points of the parametric solid are deformed to change the shape of the 3D object accordingly. It is a technology to deform. For example, Non-Patent Document 4 uses a Bezier solid in which each side or surface of the solid is represented by a Bezier curve or a Bezier patch as a parametric solid.

3次ベジエ立体は、3次元空間に立体格子状に配置された4×4×4の制御点の座標値Pijk(i=0,1,2,3; j=0,1,2,3; k=0,1,2,3)とパラメータu,v,wを用いて、立体内部の点Pを次式(5)と表すことができる。
The cubic Bézier solid is a coordinate value P ijk (i = 0,1,2,3; j = 0,1,2,3) of 4 × 4 × 4 control points arranged in a three-dimensional space in a three-dimensional space. k = 0,1,2,3) and the parameters u, v, and w can be used to express the point P inside the solid as the following equation (5).

i 3(u),Bj 3(v),Bk 3(w)は、それぞれ式(2)で表される3次の Bernstein 基底関数である。u,v,w(0≦u≦1,0≦v≦1,0≦w≦1)はパラメトリック空間のパラメータである。 B i 3 (u), B j 3 (v), and B k 3 (w) are the third-order Bernstein basis functions represented by Expression (2), respectively. u, v, w (0 ≦ u ≦ 1, 0 ≦ v ≦ 1, 0 ≦ w ≦ 1) are parameters of the parametric space.

同様に、式(3)で表されるベジエ三角パッチを底面とみなし、面が曲面で構成される三角柱を10×4の制御点の座標値Pijk,m(i=0,1,2,3; j=0,1,2,3; k=0,1,2,3; m=0,1,2,3; i+j+k=3)とパラメータu,v,wを用いて、立体内部の点Pを次式(6)と表すことができる。
Similarly, the Bezier triangular patch represented by the expression (3) is regarded as the bottom surface, and the triangular prism whose surface is a curved surface is defined as a coordinate value P ijk, m (i = 0,1,2, 2) of 10 × 4 control points. 3; j = 0,1,2,3; k = 0,1,2,3; m = 0,1,2,3; i + j + k = 3) and parameters u, v, w The point P inside the solid body can be expressed by the following formula (6).

m 3(w)は式(2)で表される1変数3次 Bernstein 基底関数、Bijk 3(u,v)は式(4)で表される2変数3次 Bernstein 基底関数である。 B m 3 (w) is a one-variable cubic Bernstein basis function represented by Expression (2), and B ijk 3 (u, v) is a two-variable cubic Bernstein basis function represented by Expression (4).

特許第4189276号公報Japanese Patent No. 4189276 特許第2834790号公報Japanese Patent No. 2834790

Brian Price and William Barrett,“Object-Based Vectorization for Interactive Image Editing”, Visual Computer, 22, 2006年8月, p.661-670Brian Price and William Barrett, “Object-Based Vectorization for Interactive Image Editing”, Visual Computer, 22, August 2006, p.661-670 Yu-Kun Lai, Shi-Min Hu and Ralph R. Martin,“Automatic and Topology-Preserving Gradient Mesh Generation for Image Vectorization”, ACM Transactions on Graphics, Vol. 28, No. 3(SIGGRAPH 2009), 2009年8月, Article 85:1-8Yu-Kun Lai, Shi-Min Hu and Ralph R. Martin, “Automatic and Topology-Preserving Gradient Mesh Generation for Image Vectorization”, ACM Transactions on Graphics, Vol. 28, No. 3 (SIGGRAPH 2009), August 2009 , Article 85: 1-8 Tian Xia, Binbin Liao, Yizhou Yu,“Patch-based Image Vectorization with Aut omatic Curvilinear Feature Alignment”, ACM Transactions on Graphics, Vol. 28, No. 5(SIGGRAPH Asia 2009), 2009年12月, Article 115:1-10Tian Xia, Binbin Liao, Yizhou Yu, “Patch-based Image Vectorization with Automatic Curvilinear Feature Alignment”, ACM Transactions on Graphics, Vol. 28, No. 5 (SIGGRAPH Asia 2009), December 2009, Article 115: 1 -Ten Thomas W. Sederberg and Scott R. Parry,“Free-Form Deformation of Solid Geometric Models”, Computer Graphics, Vol. 20, No. 4(Proceedings of SIGGRAPH 1986), 1986年, p.151-160Thomas W. Sederberg and Scott R. Parry, “Free-Form Deformation of Solid Geometric Models”, Computer Graphics, Vol. 20, No. 4 (Proceedings of SIGGRAPH 1986), 1986, p. 151-160 Jue Wang, Yingqing Xu, Heugn-Yeung Shum and Michael F. Cohen,“Video tooning”, ACM Transactions on Graphics, Vol. 23, No. 3(SIGGRAPH 2004), 2004年8月, p.574-583Jue Wang, Yingqing Xu, Heugn-Yeung Shum and Michael F. Cohen, “Video tooning”, ACM Transactions on Graphics, Vol. 23, No. 3 (SIGGRAPH 2004), August 2004, p.574-583

動画像のベクトルデータについては、例えば、円や四角形などの図形要素の運動を、時間軸方向に沿った軌跡や運動方程式で表現すること、すなわち、アニメーションとして表現することが考えられる。しかしながら、ビデオカメラ等で撮影された実写動画像をこのようなアニメーションとして表現することは容易ではない。被写体となるオブジェクトは形状の変化を伴ったり隠蔽されたりして、動画像に撮影されている全ての被写体の形状と運動とを数式として復元することが困難だからである。   With regard to the vector data of a moving image, for example, it is conceivable that the motion of a graphic element such as a circle or a rectangle is represented by a trajectory or motion equation along the time axis direction, that is, an animation. However, it is not easy to express a real moving image shot with a video camera or the like as such an animation. This is because an object that is a subject is accompanied by a change in shape or concealed, and it is difficult to restore the shapes and motions of all subjects captured in the moving image as mathematical expressions.

これに対し、動画像内のオブジェクトではなく画素に着目し、初期フレームの全ての画素の色情報と、その画素の時間変化を直線近似する手法が開示されている。例えば、特許文献1には、初期フレームと終了フレームの対応する画素を直線で結んで途中の任意の時刻での画像を生成する手法が開示されている。特許文献2には、静止剛体を等速直線運動するカメラで撮影した動画像を対象に、先頭フレームの画素を以降のフレームにわたって追跡し、直線で近似する手法が開示されている。   On the other hand, a method for linearly approximating the color information of all the pixels in the initial frame and the temporal change of the pixels by focusing on the pixels rather than the objects in the moving image is disclosed. For example, Patent Document 1 discloses a method of generating an image at an arbitrary time on the way by connecting pixels corresponding to an initial frame and an end frame with a straight line. Patent Document 2 discloses a method of tracking a pixel of the first frame over the subsequent frames and approximating it with a straight line for a moving image taken by a camera that moves a stationary rigid body at a constant linear velocity.

しかしながら、これらの手法では被写体が動いたり変形する場合への適用が困難であるという問題がある。被写体が動いたり変形したりする動画像に対し、非特許文献5では、画素や被写体の境界を滑らかな曲線で近似し、さらに時間軸方向にも滑らかにつなぎ、イラスト調の画像を生成する手法が開示されているが、もとの画像を写実的に再構成することは困難である。   However, these methods have a problem that it is difficult to apply when the subject moves or deforms. In Non-Patent Document 5, for a moving image in which a subject moves or deforms, a method of generating an illustration-like image by approximating the boundaries of pixels and the subject with a smooth curve and connecting them smoothly in the time axis direction. However, it is difficult to realistically reconstruct the original image.

本発明は、上記に鑑みてなされたものであり、動画像をベクトルデータで表現することを目的とする。   The present invention has been made in view of the above, and an object thereof is to express a moving image as vector data.

第1の本発明に係る動画像処理装置は、動画像データを読み込み蓄積手段に蓄積する読込手段と、前記蓄積手段から前記動画像データの指定されたフレーム画像を読み出し、当該フレーム画像内の類似した色値を持つ閉領域を曲面パッチに分割し、曲面パッチの辺の端を頂点として頂点リストに登録し、その辺を構成するための点を制御点として制御点リストに登録するベクトル化手段と、前記動画像データから時系列順にフレーム画像を読み出し、前記曲面パッチ毎に、読み出したフレーム画像から前記頂点リストに登録された頂点に対応する対応点を検出してそのフレーム画像における頂点として頂点リストに登録する頂点追跡手段と、時系列順に読み出したフレーム画像毎に、前記曲面パッチそれぞれについて、前記頂点リストに登録された頂点を前記曲面パッチの辺の端としたときに前記曲面パッチの辺を構成するための制御点の位置を、その頂点の位置関係に基づいて推定してそのフレーム画像における制御点として制御点リストに登録する制御点追跡手段と、前記頂点リストおよび前記制御点リストを参照し、前記ベクトル化手段により登録された頂点および制御点それぞれの時間軸方向の軌跡をパラメトリック曲線で近似する曲線近似手段と、前記曲線近似手段が近似したパラメトリック曲線の頂点および制御点に対応する色値を前記動画像データのフレーム画像から取得する色値取得手段と、前記パラメトリック曲線の頂点および制御点の時空間座標値と対応する色値を出力する出力手段と、を有することを特徴とする。   A moving image processing apparatus according to a first aspect of the present invention includes a reading unit that reads moving image data and stores the moving image data in a storage unit, reads a frame image designated by the moving image data from the storage unit, and performs similar processing in the frame image. Vectorization means that divides a closed region having the specified color value into curved surface patches, registers the edge of the edge of the curved surface patch as a vertex in the vertex list, and registers the points for configuring that edge as control points in the control point list A frame image is read from the moving image data in chronological order, and for each curved surface patch, a corresponding point corresponding to a vertex registered in the vertex list is detected from the read frame image, and a vertex is used as a vertex in the frame image. Vertex tracking means to be registered in the list, and each curved surface patch is registered in the vertex list for each frame image read in chronological order. When the determined vertex is the end of the side of the curved patch, the position of the control point for constructing the side of the curved patch is estimated based on the positional relationship of the vertex and controlled as the control point in the frame image Control point tracking means for registering in the point list, and curve approximation that refers to the vertex list and the control point list, and approximates the trajectory in the time axis direction of each vertex and control point registered by the vectorization means with a parametric curve Means, color value acquisition means for acquiring color values corresponding to vertices and control points of the parametric curve approximated by the curve approximation means, from a frame image of the moving image data, and a time space of the vertices and control points of the parametric curve Output means for outputting a color value corresponding to the coordinate value.

第2の本発明に係る動画像処理方法は、読込手段による、動画像データを読み込み蓄積手段に蓄積するステップと、ベクトル化手段による、前記蓄積手段から前記動画像データの指定されたフレーム画像を読み出し、当該フレーム画像内の類似した色値を持つ閉領域を曲面パッチに分割し、曲面パッチの辺の端を頂点として頂点リストに登録し、その辺を構成するための点を制御点として制御点リストに登録するステップと、頂点追跡手段による、前記動画像データから時系列順にフレーム画像を読み出し、前記曲面パッチ毎に、読み出したフレーム画像から前記頂点リストに登録された頂点に対応する対応点を検出してそのフレーム画像における頂点として頂点リストに登録するステップと、制御点追跡手段による、時系列順に読み出したフレーム画像毎に、前記曲面パッチそれぞれについて、前記頂点リストに登録された頂点を前記曲面パッチの辺の端としたときに前記曲面パッチの辺を構成するための制御点の位置を、その頂点の位置関係に基づいて推定してそのフレーム画像における制御点として制御点リストに登録するステップと、曲線近似手段による、前記頂点リストおよび前記制御点リストを参照し、前記ベクトル化手段により登録された頂点および制御点それぞれの時間軸方向の軌跡をパラメトリック曲線で近似するステップと、色値取得手段による、前記曲線近似手段が近似したパラメトリック曲線の頂点および制御点に対応する色値を前記動画像データのフレーム画像から取得するステップと、出力手段による、前記パラメトリック曲線の頂点および制御点の時空間座標値と対応する色値を出力するステップと、を有することを特徴とする。   According to a second aspect of the present invention, there is provided a moving image processing method, comprising: a step of reading moving image data by a reading unit; and storing the moving image data in the accumulating unit; and a specified frame image of the moving image data from the accumulating unit by a vectorizing unit. Read out, divide a closed region with similar color values in the frame image into curved patches, register the edge of the curved patch edge as a vertex in the vertex list, and control the points that constitute that edge as control points A step of registering in a point list, and a vertex tracking unit that reads frame images from the moving image data in chronological order, and corresponding points corresponding to vertices registered in the vertex list from the read frame image for each curved surface patch Are detected and registered in the vertex list as vertices in the frame image, and read out in chronological order by the control point tracking means For each frame image, for each surface patch, the position of the control point for configuring the side of the surface patch when the vertex registered in the vertex list is the end of the surface of the surface patch, A step of estimating based on the positional relationship and registering it in the control point list as a control point in the frame image; and referring to the vertex list and the control point list by a curve approximating unit, and a vertex registered by the vectorizing unit And a step of approximating the trajectory in the time axis direction of each control point with a parametric curve, and the color value corresponding to the vertex of the parametric curve approximated by the curve approximation means and the control point by the color value acquisition means of the moving image data Obtaining from the frame image, and the vertices and control points of the parametric curve by the output means And having the steps of: outputting a color value corresponding to the spatial coordinates.

第3の本発明に係る動画像処理プログラムは、上記動画像処理装置としてコンピュータを機能させることを特徴とする。   A moving image processing program according to a third aspect of the present invention causes a computer to function as the moving image processing apparatus.

本発明によれば、動画像をベクトルデータで表現することができる。   According to the present invention, a moving image can be represented by vector data.

本実施の形態における動画像処理装置の構成を示す機能ブロック図である。It is a functional block diagram which shows the structure of the moving image processing apparatus in this Embodiment. 開始フレーム画像の静止画像をベクトル化する処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process which vectorizes the still image of a start frame image. ベクトル化したデータの時間軸方向の軌跡を追跡する処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process which tracks the locus | trajectory of the time-axis direction of the vectorized data. ベクトル化したデータの動きをパラメトリック立体で表す処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process which represents the motion of the vectorized data by a parametric solid. 頂点を追跡する様子を示す図である。It is a figure which shows a mode that a vertex is tracked. 頂点と制御点の位置関係の変化を示す図である。It is a figure which shows the change of the positional relationship of a vertex and a control point. 制御点の評価を説明する図である。It is a figure explaining evaluation of a control point. 四角形ベジエパッチを時間軸方向に追跡したベジエ6面体の例を示す図である。It is a figure which shows the example of the Bezier hexahedron which followed the square Bezier patch in the time-axis direction. 三角形ベジエパッチを時間軸方向に追跡したベシエ三角柱の例を示す図である。It is a figure which shows the example of the Besier triangular prism which followed the triangular Bezier patch in the time-axis direction. ベジエ曲線の分割を説明する図である。It is a figure explaining the division | segmentation of a Bezier curve. パッチの辺を色々な方法で近似した際のパッチの辺と制御点の位置を示す図である。It is a figure which shows the position of the edge of a patch, and a control point when the edge of a patch is approximated with various methods. 色値を補間する様子を示す図である。It is a figure which shows a mode that a color value is interpolated. ビットマップ形式の画像をベクトル形式のデータに変換する様子を示す図である。It is a figure which shows a mode that the image of a bitmap format is converted into the data of a vector format.

以下、本発明の実施の形態について図面を用いて説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

図1は、本実施の形態における動画像処理装置の構成を示す機能ブロック図である。同図に示す動画像処理装置は、動画像読込部11、静止画像ベクトル化部12、頂点追跡部13、制御点追跡部14、パラメトリック立体化部15、色値取得部16、出力部17、および蓄積部18を備える。動画像処理装置が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムは動画像処理装置が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。以下、各部について説明する。   FIG. 1 is a functional block diagram showing a configuration of a moving image processing apparatus according to the present embodiment. The moving image processing apparatus shown in the figure includes a moving image reading unit 11, a still image vectorization unit 12, a vertex tracking unit 13, a control point tracking unit 14, a parametric three-dimensionalization unit 15, a color value acquisition unit 16, an output unit 17, And a storage unit 18. Each unit included in the moving image processing device may be configured by a computer including an arithmetic processing device, a storage device, and the like, and the processing of each unit may be executed by a program. This program is stored in a storage device included in the moving image processing apparatus, and can be recorded on a recording medium such as a magnetic disk, an optical disk, or a semiconductor memory, or provided through a network. Hereinafter, each part will be described.

動画像読込部11は、動画像ファイルを読み込み動画像データを蓄積部18に蓄積する。   The moving image reading unit 11 reads a moving image file and stores moving image data in the storage unit 18.

静止画像ベクトル化部12は、蓄積部18から動画像データの開始フレーム画像を読み出して、開始フレーム画像内の類似した色値を持つ閉領域を三角形あるいは四角形の曲面パッチに分割し、閉領域の輪郭をパラメトリック曲線で近似する。分割した曲面パッチをパッチリストに、曲面パッチの辺の両端を頂点、曲面パッチの辺を構成するために必要な点を制御点として、頂点リスト、制御点リストに登録する。   The still image vectorization unit 12 reads the start frame image of the moving image data from the storage unit 18 and divides the closed region having similar color values in the start frame image into triangular or quadrangular curved surface patches. Approximate the contour with a parametric curve. The divided curved surface patch is registered in the patch list, the both ends of the surface of the curved surface patch as vertices, and the points necessary for constructing the surface of the curved surface patch as control points.

頂点追跡部13は、データリスト処理部131、頂点追跡判定部132、時間長判定部133を備え、蓄積部18に蓄積された動画像データから時系列順にフレーム画像を読み出して、フレーム画像内の閉領域の角などの特徴点を頂点に対応する対応点として検出し、検出した対応点を対応する頂点に関連付けて対応点リストに登録する。データリスト処理部131は対応点をフレーム画像から対応点を検出し、頂点追跡判定部132は対応点が見つかったか否か判定して対応点の存在を示す存在フラグを設定するとともに、対応点が見つからない場合は、前フレームを参照し、対応点を決定する、あるいは、対応点が消失したと判定する。時間長判定部133は、対応点が消失した場合、その対応点を有する曲面パッチの持続時間を設定するとともにパッチリストから削除する。パッチリストから削除された曲面パッチについては以降のフレームで処理しない。   The vertex tracking unit 13 includes a data list processing unit 131, a vertex tracking determination unit 132, and a time length determination unit 133. The vertex tracking unit 13 reads frame images from the moving image data stored in the storage unit 18 in time series order, and A feature point such as a corner of the closed region is detected as a corresponding point corresponding to the vertex, and the detected corresponding point is associated with the corresponding vertex and registered in the corresponding point list. The data list processing unit 131 detects the corresponding point from the frame image, and the vertex tracking determination unit 132 determines whether the corresponding point is found and sets a presence flag indicating the presence of the corresponding point. If not found, the corresponding point is determined by referring to the previous frame, or it is determined that the corresponding point has disappeared. When the corresponding point disappears, the time length determination unit 133 sets the duration of the curved surface patch having the corresponding point and deletes it from the patch list. Surface patches deleted from the patch list are not processed in subsequent frames.

制御点追跡部14は、一次結合近似部141、制御点評価補正部142を備え、前のフレームにおける頂点(対応点)、制御点間の位置関係と、頂点追跡部13が現在処理対象のフレームから検出した対応点の位置関係から、各パッチの辺を構成するために必要な制御点の位置を求めて制御点リストに登録する。一次結合近似部141は、前のフレームにおける頂点と制御点の位置関係を一次結合で表して結合係数を求め、頂点追跡部13が検出した対応点と求めた結合係数により制御点の位置を推定する。制御点評価補正部142は、一次結合近似部141が推定した制御点により構成される曲面パッチの辺とフレーム画像から抽出したエッジを構成する点との距離に基づいて制御点の位置を補正する。   The control point tracking unit 14 includes a linear combination approximation unit 141 and a control point evaluation correction unit 142. The vertex (corresponding point) in the previous frame, the positional relationship between the control points, and the frame in which the vertex tracking unit 13 is currently processed. From the positional relationship of the corresponding points detected from (1), the positions of the control points necessary for constituting the sides of each patch are obtained and registered in the control point list. The primary coupling approximation unit 141 obtains a coupling coefficient by expressing the positional relationship between the vertex and the control point in the previous frame as a linear coupling, and estimates the position of the control point from the corresponding point detected by the vertex tracking unit 13 and the obtained coupling coefficient. To do. The control point evaluation correction unit 142 corrects the position of the control point based on the distance between the side of the curved surface patch constituted by the control points estimated by the linear combination approximation unit 141 and the point constituting the edge extracted from the frame image. .

パラメトリック立体化部15は、曲線近似部151、誤差評価分割部152を備え、頂点追跡部13、制御点追跡部14が求めた頂点、制御点を時間軸方向に追跡して動画像をパラメトリック立体で表現する。曲線近似部151は、頂点、制御点の時間軸方向の軌跡をベジエ曲線で近似する。誤差評価分割部152は、曲線近似部151が近似した曲線と近似対象の頂点、制御点の対応点列との最大距離を評価し、最大距離が所定の閾値よりも大きい場合は近似した曲線を分割する。なお、本実施の形態におけるパラメトリック立体は、底面がパラメトリック曲面パッチである多角形であり、側面がパラメトリック曲面パッチである四角形から構成される立体を指す。   The parametric three-dimensionalization unit 15 includes a curve approximation unit 151 and an error evaluation division unit 152. The vertex tracking unit 13 and the control point tracking unit 14 track the vertices and control points obtained in the time axis direction so that the moving image is parametric solid. It expresses with. The curve approximating unit 151 approximates the trajectory of the vertex and the control point in the time axis direction with a Bezier curve. The error evaluation dividing unit 152 evaluates the maximum distance between the curve approximated by the curve approximating unit 151, the apex to be approximated, and the corresponding point sequence of control points, and if the maximum distance is larger than a predetermined threshold, the approximated curve is calculated. To divide. The parametric solid in the present embodiment refers to a solid composed of a polygon whose bottom is a parametric curved patch and whose side is a parametric curved patch.

色値取得部16は、生成したパラメトリック立体の頂点、制御点の色値を動画像データのフレーム画像から取得する。フレーム画像から色値が直接取得できない制御点については、取得できる色値を補間して決定する。   The color value acquisition unit 16 acquires the color values of the vertices and control points of the generated parametric solid from the frame image of the moving image data. Control points for which color values cannot be directly acquired from the frame image are determined by interpolating the color values that can be acquired.

出力部17は、全てのパラメトリック立体について、頂点、制御点の時空間座標値、その座標値における色値(x,y,t,c)のデータをファイルとして出力する。   The output unit 17 outputs the data of the vertex values, the spatio-temporal coordinate values of the control points, and the color values (x, y, t, c) at the coordinate values for all the parametric solids.

次に、本実施の形態における動画像処理装置の処理の流れについて説明する。   Next, a processing flow of the moving image processing apparatus in the present embodiment will be described.

図2〜4は、本実施の形態における動画像処理装置の処理の流れを示すフローチャートである。図2に示す処理で開始フレーム画像の静止画像をベクトル化し、図3に示す処理でベクトル化したデータの時間軸方向の軌跡を追跡し、図4に示す処理でベクトル化したデータの動きをパラメトリック立体で表している。以下、図2に示す処理から順に説明する。   2 to 4 are flowcharts showing the flow of processing of the moving image processing apparatus in the present embodiment. The still image of the start frame image is vectorized by the process shown in FIG. 2, the trajectory in the time axis direction of the data vectorized by the process shown in FIG. 3 is traced, and the motion of the data vectorized by the process shown in FIG. It is represented by a solid. In the following, description will be made in order from the processing shown in FIG.

まず、図2に示す静止画像のベクトル化処理について説明する。   First, the vectorization process of the still image shown in FIG. 2 will be described.

動画像読込部11が、動画像ファイルを読み込んで動画像データを蓄積部18に蓄積する(ステップS101)。このときに、利用者からベクトル化の対象とする時間的範囲(開始フレームと終了フレーム)の指定を受け付けてもよい(ステップS102)。   The moving image reading unit 11 reads a moving image file and accumulates moving image data in the accumulating unit 18 (step S101). At this time, designation of a time range (start frame and end frame) to be vectorized may be received from the user (step S102).

続いて、静止画像ベクトル化部12が、蓄積部18から動画像データの開始フレーム画像を読み出し、開始フレーム画像のベクトル化を実施する(ステップS103)。開始フレーム画像はビットマップ形式の画像であり、ビットマップ形式の画像のベクトル化は、非特許文献1,2,ないし3に記載された手法、あるいは他の手法を用いることができる。開始フレーム画像のベクトル化の際に、利用者からベクトル化の対象とする被写体の指定を受け付けてもよい(ステップS104)。   Subsequently, the still image vectorization unit 12 reads the start frame image of the moving image data from the storage unit 18 and performs vectorization of the start frame image (step S103). The start frame image is an image in the bitmap format, and the vectorization of the bitmap format image can use the methods described in Non-Patent Documents 1, 2, and 3 or other methods. When the start frame image is vectorized, designation of a subject to be vectorized may be received from the user (step S104).

静止画像ベクトル化部12により、開始フレーム画像内の閉領域が三角形あるいは四角形の曲面パッチにより分割され、曲面パッチの辺で被写体オブジェクトの輪郭が良好に近似される。ベクトル化により、画像を四角形ベジエパッチで近似する場合は、ひとつのパッチあたり、4個の頂点と12個の制御点が生成される。画像を三角形ベジエパッチで近似する場合は、ひとつのパッチあたり、3個の頂点と7個の制御点が生成される。なお、本実施の形態では、曲面の「高さ」に相当する変数を、「色値」に置き換えている。カラー画像の場合、例えばRGB表示系であれば、R(赤)、G(緑)、B(青)の各色ごとに曲面パッチを生成してもよい。ここでは、色成分の数や表示系については言及しないが、応用する状況に応じてカラー画像もグレー画像も用いることができる。   The still image vectorization unit 12 divides the closed region in the start frame image by triangular or quadrangular curved patches, and the outline of the subject object is well approximated by the sides of the curved patches. When the image is approximated by a rectangular Bezier patch by vectorization, four vertices and 12 control points are generated for each patch. When an image is approximated by a triangular Bezier patch, three vertices and seven control points are generated for each patch. In the present embodiment, the variable corresponding to the “height” of the curved surface is replaced with “color value”. In the case of a color image, for example, in the case of an RGB display system, a curved patch may be generated for each color of R (red), G (green), and B (blue). Although the number of color components and the display system are not mentioned here, a color image or a gray image can be used depending on the application situation.

生成された各曲面パッチの頂点、制御点の各リストは蓄積部18に蓄積される(ステップS105)。このとき、各頂点がどの曲面パッチに属するかを記憶させる。例えば、曲面パッチ、頂点それぞれに識別子を付与し、曲面パッチを指定するとその曲面パッチを構成する頂点の識別子を取得でき、または、頂点を指定するとその頂点を含む曲面パッチ(ひとつではない場合もある)の識別子を取得できるようにしておく。同様に、頂点と制御点も関連付けておく。   Each list of generated vertexes and control points of each curved surface patch is stored in the storage unit 18 (step S105). At this time, it is stored which curved surface patch each vertex belongs to. For example, if an identifier is assigned to each surface patch and vertex, and the surface patch is specified, the identifier of the vertex constituting the surface patch can be acquired, or if a vertex is specified, the surface patch including the vertex (there may not be one) ) Identifier can be acquired. Similarly, vertices and control points are also associated.

次に、図3に示す、ベクトル化したデータの時間軸方向の軌跡を追跡する処理について説明する。   Next, processing for tracking the trajectory in the time axis direction of the vectorized data shown in FIG. 3 will be described.

データリスト処理部131は、動画像ファイルの次フレーム画像を蓄積部18から読み出し、読み出したフレーム画像における各曲面パッチの各頂点に対応する対応点を検出する(ステップS201)。また、各曲面パッチに対して読み出したフレーム画像のフレーム番号あるいは持続時間を付与する。曲面パッチの辺はフレーム画像の閉領域のエッジを近似しており、曲面パッチの頂点は曲面パッチの辺(曲線)の両端であるので、各頂点は、フレーム画像内の閉領域の角などの特徴点となり、検出しやすい。そこで、データリスト処理部131は、読み出したフレーム画像の閉領域の角を頂点の対応点として検出する。   The data list processing unit 131 reads the next frame image of the moving image file from the storage unit 18 and detects corresponding points corresponding to the vertices of the curved patches in the read frame image (step S201). Also, the frame number or duration of the read frame image is assigned to each curved patch. The edge of the curved patch approximates the edge of the closed area of the frame image, and the vertices of the curved patch are the ends of the edge (curve) of the curved patch. It becomes a feature point and is easy to detect. Therefore, the data list processing unit 131 detects the corner of the closed region of the read frame image as the corresponding point of the vertex.

図5は、頂点を追跡する様子を示す図である。フレームT1→T2→T3→T4と変化するものとする。同図では、わかりやすくするため、曲面パッチの辺も記載している。同図の頂点P1,P2,P3で構成される三角形パッチにおいて、フレームT2では、頂点P1,P2,P3の対応点が見つかっており、フレームT3では、頂点P2または頂点P3の対応点が見つからず、フレームT4では、再び頂点P1,P2,P3の対応点が見つかっている。   FIG. 5 is a diagram illustrating a state in which vertices are tracked. It is assumed that the frame changes from T1 → T2 → T3 → T4. In the figure, the sides of the curved patch are also shown for easy understanding. In the triangular patch composed of the vertices P1, P2, and P3 in the figure, corresponding points of the vertices P1, P2, and P3 are found in the frame T2, and no corresponding point of the vertex P2 or the vertex P3 is found in the frame T3. In the frame T4, corresponding points of the vertices P1, P2, and P3 are found again.

フレーム画像を読み出して対応点を検出した後、各曲面パッチについて、以下に示す頂点の追跡処理を行う。   After reading out the frame image and detecting corresponding points, the following vertex tracking processing is performed for each curved surface patch.

頂点追跡判定部132は、曲面パッチから1つの頂点を選択し、その頂点の対応点が存在するか否か判定する(ステップS202)。   The vertex tracking determination unit 132 selects one vertex from the curved surface patch, and determines whether there is a corresponding point of the vertex (step S202).

対応点が存在する場合は、その頂点に対する対応点として対応点リストに座標値を追加し、頂点に対応する対応点の存在を示す存在フラグをオンとする(ステップS203)。   If a corresponding point exists, a coordinate value is added to the corresponding point list as a corresponding point for the vertex, and a presence flag indicating the presence of the corresponding point corresponding to the vertex is turned on (step S203).

曲面パッチのすべての頂点について対応点の存在を判定する処理が終了した場合は次の曲面パッチについての処理へ進み、曲面パッチ内にまだ処理していない頂点が存在する場合はステップS202に戻る(ステップS204)。なお、隣接する曲面パッチでは頂点を共有しているため、すでに対応点が存在していることが明らかな頂点については処理済みとする。   When the process for determining the existence of corresponding points for all the vertices of the curved surface patch is completed, the process proceeds to the process for the next curved surface patch, and when there is an unprocessed vertex in the curved surface patch, the process returns to step S202 ( Step S204). Since adjacent curved surface patches share vertices, it is assumed that vertices whose corresponding points already exist have been processed.

一方、対応点が存在しない場合は、前フレームではその頂点の対応点が存在していたか否か判定する(ステップS205)。頂点に対応する存在フラグを評価することで対応点が存在していたか否か判定できる。   On the other hand, if the corresponding point does not exist, it is determined whether or not the corresponding point of the vertex exists in the previous frame (step S205). By evaluating the presence flag corresponding to the vertex, it can be determined whether or not the corresponding point exists.

前フレームで対応点が存在していた場合は、頂点を含む曲面パッチの前フレームにおける面積を計算し(ステップS206)、計算した面積が所定の閾値より大きいか否か判定する(ステップS207)。本実施の形態では、曲面パッチの面積として、図5の点線で示される各頂点P1,P2,P3を結んだ三角形の面積を計算する。   If there is a corresponding point in the previous frame, the area of the curved patch including the vertex in the previous frame is calculated (step S206), and it is determined whether the calculated area is larger than a predetermined threshold (step S207). In the present embodiment, the area of a triangle connecting the vertices P1, P2, and P3 indicated by dotted lines in FIG. 5 is calculated as the area of the curved surface patch.

計算した面積が所定の閾値よりも大きい場合は、頂点に対応する対応点として前フレームにおける対応点の座標値を現在処理対象のフレームの対応点として対応点リストに追加する(ステップS208)。   If the calculated area is larger than the predetermined threshold, the coordinate value of the corresponding point in the previous frame is added to the corresponding point list as the corresponding point of the current processing target frame as the corresponding point corresponding to the vertex (step S208).

計算した面積が所定の閾値以下の場合は、現在のフレームで曲面パッチが消失したと判定する。消失した曲面パッチについては、パッチリストから削除し、時間長判定部133が、消失した曲面パッチは、開始フレームから前フレームまで持続したとし、フレーム数あるいはフレーム番号をその曲面パッチのデータとして付与し、以降のフレームではその曲面パッチについての処理を行わない(ステップS209)。   If the calculated area is less than or equal to the predetermined threshold, it is determined that the curved patch has disappeared in the current frame. The lost surface patch is deleted from the patch list, and the time length determination unit 133 assumes that the lost surface patch lasts from the start frame to the previous frame, and assigns the number of frames or the frame number as the data of the surface patch. In subsequent frames, the process for the curved surface patch is not performed (step S209).

一方、ステップS205において前フレームにも対応点が存在していなかった、つまり、2フレーム連続で対応点が存在していなかったと判定された頂点を含む曲面パッチも消失したと判定する。時間長判定部133は、消失した曲面パッチは、2つ前のフレームまで持続したとし、フレーム数あるいはフレーム番号をその曲面パッチのデータとして付与する。なお、本実施の形態では、2フレーム続けて対応点が見つからない場合に曲面パッチが消失したと判定しているが、このフレーム数は2に限るものではない。   On the other hand, in step S205, it is determined that the corresponding point does not exist in the previous frame, that is, the curved surface patch including the vertex for which it is determined that the corresponding point does not exist continuously for two frames has also disappeared. The time length determination unit 133 assumes that the disappeared curved patch lasts up to the previous two frames, and assigns the number of frames or the frame number as data of the curved patch. In the present embodiment, it is determined that the curved patch has disappeared when the corresponding point is not found in succession for two frames, but the number of frames is not limited to two.

図5に示す例では、フレームT3において、頂点P1,P2の対応点は見つかったが、頂点P3の対応点が見つかっていないので、フレームT2における三角形P1/P2/P3の面積を計算して、頂点P3の追跡処理を続行するか否か判定する。計算した面積が所定の閾値より大きければ、フレームT2の頂点P3の対応点の座標値をフレームT3における頂点P3の対応点(P3’)として対応点リストに追加する。同図に示す例では、フレームT4において頂点P3の対応点が見つかったので、フレームT3の頂点P3の対応点をP3’とみなしてフレームT4以降も頂点P3の追跡処理を行う。なお、フレームT4においても頂点P3の対応点が見つからなかった場合は、フレームT3において頂点P1,P2,P3で構成される曲面パッチは消失したと判定される。   In the example shown in FIG. 5, the corresponding point of the vertices P1 and P2 is found in the frame T3, but the corresponding point of the vertex P3 is not found. Therefore, the area of the triangle P1 / P2 / P3 in the frame T2 is calculated, It is determined whether or not to continue the tracking process of the vertex P3. If the calculated area is larger than the predetermined threshold, the coordinate value of the corresponding point of the vertex P3 of the frame T2 is added to the corresponding point list as the corresponding point (P3 ') of the vertex P3 of the frame T3. In the example shown in the figure, since the corresponding point of the vertex P3 is found in the frame T4, the corresponding point of the vertex P3 of the frame T3 is regarded as P3 ', and the tracking processing of the vertex P3 is performed after the frame T4. If no corresponding point of the vertex P3 is found in the frame T4, it is determined that the curved surface patch composed of the vertices P1, P2, and P3 has disappeared in the frame T3.

以上ステップS202からステップS209までの処理を全ての曲面パッチについて行う。まだ処理していない曲面パッチが存在する場合はステップS202に戻り(ステップS210)、その曲面パッチの各頂点について処理を行う。   The processes from step S202 to step S209 are performed for all curved surface patches. If there is a curved patch that has not been processed yet, the process returns to step S202 (step S210), and processing is performed for each vertex of the curved patch.

全ての曲面パッチについて頂点の追跡処理が終了したら、制御点追跡部14が、各曲面パッチの辺の曲線を生成するための制御点の追跡処理を行う。3次ベジエ曲線においては、1つの曲線セグメントを生成するために2つの端点と2つの制御点が必要となる。2つの端点は、曲面パッチの2つの頂点に該当する。また、3次ベジエ曲線において一般に生成される曲線は制御点を通過しないため、制御点はフレーム画像内の閉領域のエッジやコーナーなどの特徴点となるとは限らない。   When the vertex tracking process for all the curved surface patches is completed, the control point tracking unit 14 performs the control point tracking process for generating the curve of the side of each curved surface patch. In a cubic Bezier curve, two end points and two control points are required to generate one curve segment. The two end points correspond to the two vertices of the curved patch. Further, since a curve generally generated in a cubic Bezier curve does not pass through a control point, the control point is not always a feature point such as an edge or a corner of a closed region in the frame image.

各フレームごとに被写体オブジェクトのエッジを抽出し、エッジを近似するベジエ曲線を生成するように制御点を決定する方法もあるが、本実施の形態では、フレーム間で曲面パッチの辺を形成する頂点(端点)と制御点の相互の位置関係が大きく変化しないと仮定し、前フレームにおける各頂点と各制御点の位置関係と現在のフレームの各頂点の位置関係に基づいて制御点を推定する。   There is a method of extracting the edge of the subject object for each frame and determining the control point so as to generate a Bezier curve that approximates the edge. In this embodiment, the vertex that forms the edge of the curved patch between the frames. Assuming that the mutual positional relationship between the (end point) and the control point does not change greatly, the control point is estimated based on the positional relationship between each vertex and each control point in the previous frame and the positional relationship between each vertex in the current frame.

まず、一次結合近似部141が、ある頂点に対する制御点の位置ベクトルをある頂点に対する曲面パッチの辺を構成する2つの頂点の位置ベクトルの一次結合で表す(ステップS211)。具体的には、次式(7)に示すように、前フレームにおける、頂点P1,P2を結ぶ曲線の制御点C1,C2それぞれを、その曲線を構成しない同じ曲面パッチの別の頂点P3対する頂点P1,P2の位置ベクトルで表す。
First, the linear combination approximation unit 141 represents a position vector of a control point for a certain vertex by a linear combination of position vectors of two vertices constituting a side of a curved patch for a certain vertex (step S211). Specifically, as shown in the following equation (7), the control points C1 and C2 of the curve connecting the vertices P1 and P2 in the previous frame are the vertices for another vertex P3 of the same curved surface patch that does not form the curve. It is represented by position vectors P1 and P2.

図6に示すように、現在のフレームにおいても前フレームにおける頂点と制御点の位置関係が大きく変化しないと仮定し、式(7)の一次結合係数a,b,c,dが保存されるとして、次式(8)に示すように、一次結合係数a,b,c,dを用いて、現在のフレームにおける制御点C1’,C2’それぞれを頂点P3’に対する頂点P1’,P2’の位置ベクトルで表す。
As shown in FIG. 6, it is assumed that the positional relationship between the vertex and the control point in the previous frame does not change greatly even in the current frame, and the linear coupling coefficients a, b, c, and d in Equation (7) are stored. As shown in the following equation (8), the control points C1 ′ and C2 ′ in the current frame are positioned at the vertices P1 ′ and P2 ′ with respect to the vertex P3 ′ using the primary coupling coefficients a, b, c, and d. Represented as a vector.

なお、パッチ形状が四角形の場合は、辺を構成する頂点以外に2つの頂点が存在するが、いずれか一方を位置ベクトルの始点と定めればよい。   When the patch shape is a quadrangle, there are two vertices in addition to the vertices constituting the side, and either one may be determined as the starting point of the position vector.

続いて、制御点評価補正部142が、頂点P1’,P2’と制御点C1’,C2’で生成されるベジエ曲線と、現在処理対象のフレーム画像内の閉領域のエッジとの差分を評価して制御点C1’,C2’の位置を補正する(ステップS212)。エッジを構成する画素とベジエ曲線との差分を計算すると計算量が多くなるため、本実施の形態では、エッジ上の2点とベジエ曲線との距離で評価する。   Subsequently, the control point evaluation correction unit 142 evaluates the difference between the Bezier curve generated at the vertices P1 ′ and P2 ′ and the control points C1 ′ and C2 ′ and the edge of the closed region in the currently processed frame image. Then, the positions of the control points C1 ′ and C2 ′ are corrected (step S212). If the difference between the pixels constituting the edge and the Bezier curve is calculated, the amount of calculation increases. Therefore, in this embodiment, the evaluation is performed based on the distance between the two points on the edge and the Bezier curve.

具体的には、図7に示すように、制御点C1’とベジエ曲線との距離が最小となるベジエ曲線上の点をB1、直線C1’B1とエッジとの交点をE1として、点B1,E1間の距離が所定の閾値よりも小さければ制御点C1’の位置を補正せず、点B1,E1間の距離が所定の閾値以上で、点C1’,B1間の距離≦点C1’,E1間の距離であれば、制御点C1’を点C1’から点B1の方向に所定の距離移動させて新たな制御点C1’とし、点C1’,B1間の距離≧点C1’,E1間の距離であれば、制御点C1’を点B1から点C1’の方向に所定の距離移動させて新たな制御点C1’とする。制御点C1’を移動させる距離は、例えば、点C1’B1間の距離に適当な実数(例えば、0.5)を乗じた値とする。制御点C2’についても同様の処理を行い、頂点P1’,P2’と新たな制御点C1’,C2’で生成されるベジエ曲線について、点B1,E1間、点B2,E2間の距離が所定の閾値よりも小さくなるまで上記の補正処理を繰り返す。   Specifically, as shown in FIG. 7, a point on the Bezier curve where the distance between the control point C1 ′ and the Bezier curve is minimum is B1, and an intersection of the straight line C1′B1 and the edge is E1, and points B1, If the distance between E1 is smaller than a predetermined threshold, the position of the control point C1 ′ is not corrected, the distance between the points B1 and E1 is equal to or larger than the predetermined threshold, and the distance between the points C1 ′ and B1 ≦ point C1 ′, If the distance is between E1, the control point C1 ′ is moved a predetermined distance from the point C1 ′ to the point B1 to be a new control point C1 ′, and the distance between the points C1 ′ and B1 ≧ points C1 ′ and E1 If the distance is between, the control point C1 ′ is moved a predetermined distance in the direction from the point B1 to the point C1 ′ to be a new control point C1 ′. The distance for moving the control point C1 'is, for example, a value obtained by multiplying the distance between the points C1'B1 by an appropriate real number (for example, 0.5). The same processing is performed for the control point C2 ′, and the distance between the points B1 and E1 and the distance between the points B2 and E2 is determined for the Bezier curves generated at the vertices P1 ′ and P2 ′ and the new control points C1 ′ and C2 ′. The above correction process is repeated until it becomes smaller than the predetermined threshold.

任意の点とベジエ曲線との最短距離を計算し、最短距離となるベジエ曲線上の点を求める方法は、例えば、Philip J. Schneider,“Solving the Nearest-point-on-curve Problem”, Graphics Gems, Morgan Kaufmann Publishers(参考文献1)や Philip J. Schneider,“An Algorithm for Automatically Fitting Digitized Curves”, Graphics Gems, Morgan Kaufmann Publishers(参考文献2)に解説されている。   For example, Philip J. Schneider, “Solving the Nearest-point-on-curve Problem”, Graphics Gems, calculates the shortest distance between an arbitrary point and a Bezier curve. , Morgan Kaufmann Publishers (reference 1) and Philip J. Schneider, “An Algorithm for Automatically Fitting Digitized Curves”, Graphics Gems, Morgan Kaufmann Publishers (reference 2).

以上の制御点の追跡処理を全ての制御点について行う(ステップS213)。なお、三角形ベジエパッチの場合はさらに三角形内部にひとつの制御点があり、四角形ベシエパッチの場合は内部に4つの制御点がある。これらの制御点は、上記ステップS211の一次結合係数の保存のみで評価してもよい。   The control point tracking process described above is performed for all control points (step S213). In the case of a triangular Bezier patch, there is one control point inside the triangle, and in the case of a square Bezier patch, there are four control points inside. These control points may be evaluated only by storing the primary coupling coefficient in step S211.

すべての制御点の追跡処理が終了したら、ステップS201に戻り次のフレーム画像を読み込んでそのフレーム画像の頂点、制御点を求め、全フレームについて処理が終了した場合、あるいは、全ての曲面パッチが消失した場合は、ベクトル化したデータの動きをパラメトリック立体で表現する処理に進む(ステップS214)。   When the tracking process for all the control points is completed, the process returns to step S201 to read the next frame image to obtain the vertex and control point of the frame image, and when the process is completed for all frames, or all the curved patches are lost. If so, the process proceeds to a process of expressing the motion of the vectorized data as a parametric solid (step S214).

次に、図4に示す、ベクトル化したデータの動きをパラメトリック立体で表現する処理について説明する。図4に示す処理では、頂点、制御点の時間軸方向の軌跡をベジエ曲線で近似し、その結果生成される制御点を用いてパラメトリック立体を生成する。   Next, processing for expressing the motion of vectorized data shown in FIG. 4 as a parametric solid will be described. In the process shown in FIG. 4, the trajectory of the vertex and the control point in the time axis direction is approximated by a Bezier curve, and a parametric solid is generated using the control points generated as a result.

曲線近似部151は、各曲面パッチについて、曲面パッチを構成する全ての頂点、制御点の時間軸方向の軌跡をベジエ曲線で近似する(ステップS301)。例えば、参考文献2で解説されている手法により、3次の区分的ベジエ曲線により近似する。   For each curved surface patch, the curve approximating unit 151 approximates all vertices and control point trajectories in the time axis direction of the curved surface patch with a Bezier curve (step S301). For example, the method described in Reference 2 is approximated by a cubic piecewise Bezier curve.

図8に、四角形ベジエパッチを時間軸方向に追跡したベジエ6面体の例を示す。図8(a)は、頂点追跡部13で追跡した頂点の時間軸方向の軌跡を図示した図であり、図8(b)は、図8(a)の軌跡を近似するベジエ曲線を構成する制御点を図示した図である。図8(c)には、図8(a)に示すベジエ立体における各パラメータの定義域を示している。また、同様に、図9に、三角形ベジエパッチを時間軸方向に追跡したベシエ三角柱の例を示しておく。   FIG. 8 shows an example of a Bezier hexahedron obtained by tracking a rectangular Bezier patch in the time axis direction. FIG. 8A is a diagram illustrating the trajectory in the time axis direction of the vertex tracked by the vertex tracking unit 13, and FIG. 8B constitutes a Bezier curve that approximates the trajectory of FIG. 8A. It is the figure which illustrated the control point. FIG. 8C shows a definition area of each parameter in the Bezier solid shown in FIG. Similarly, FIG. 9 shows an example of a Besier triangular prism obtained by tracking a triangular Bezier patch in the time axis direction.

頂点、制御点の軌跡を近似したベジエ曲線の開始フレーム、終了フレームにおける端(頂点、制御点)は、(x,y,t)空間において同じtを持つ。軌跡を近似したベジエ曲線を構成する各曲面パッチの頂点、制御点のうち、時間軸方向の添字が等しいもの、例えば、図8(b)におけるPij1となる16点は、(x,y,t)空間において同じtを持つとよい。同様に、Pij2となる16点についても同じtを持つと良い。また、図8(b)におけるPijk,1となる10点、およびPijk,2となる10点も(x,y,t)空間においてそれぞれ同じtを持つと良い。これにより、図8,9に示すパラメトリック立体において、パラメータ(u,v,w)のwの値を一つ決めると、tが一意に決まり、あとの計算処理が容易になる。 Ends (vertices, control points) in the start frame and end frame of the Bezier curve approximating the vertices and control point trajectories have the same t in the (x, y, t) space. Of the vertices and control points of each curved surface patch constituting the Bezier curve approximating the trajectory, those having the same time-axis subscript, for example, 16 points P ij1 in FIG. 8B are (x, y, t) It is good to have the same t in space. Similarly, it is preferable that 16 points that are P ij2 have the same t. In addition, 10 points that become P ijk, 1 and 10 points that become P ijk, 2 in FIG. 8B may have the same t in the (x, y, t) space. Thus, in the parametric solids shown in FIGS. 8 and 9, when one value of w of the parameter (u, v, w) is determined, t is uniquely determined, and the subsequent calculation processing becomes easy.

続いて、誤差評価分割部152が、頂点、制御点の時間軸方向の軌跡を近似した曲線と近似対象の頂点、制御点の対応点列との最大距離を評価する(ステップS302)。そして、ひとつの曲面パッチを構成する頂点、制御点の時間軸方向の軌跡を近似した曲線のうち、もっとも誤差が大きいものを選び、その誤差と所定の閾値と比較する(ステップS303)。   Subsequently, the error evaluation division unit 152 evaluates the maximum distance between the curve that approximates the trajectory of the vertex and the control point in the time axis direction and the corresponding vertex sequence of the approximation target vertex and the control point (step S302). Then, the curve having the largest error is selected from the curves that approximate the trajectory in the time axis direction of the vertex and the control point constituting one curved surface patch, and the error is compared with a predetermined threshold (step S303).

最大誤差が所定の閾値よりも大きい場合、誤差評価分割部152は、もっとも誤差が大きい曲線を分割する(ステップS304)。曲線の分割方法は、2次元平面上の曲線について、参考文献2に記載されている。3次元曲線についても本質的に同様の処理で実現できる。図10に2次元平面上のベジエ曲線を分割する例を示す。例えば、図10の点線で示す頂点P1から頂点P2までの追跡点列を図10の実線で示すベジエ曲線で近似しようとしても誤差が大きくなる場合、追跡点列とベジエ曲線の距離が最も大きくなる点P12を分割点として選び、新たに分割点の前後それぞれにおいてベジエ曲線で近似する。図10に示すように、ベジエ曲線を分割した場合、ベジエ曲線上の分割点が新たな頂点P12となり、頂点P1,P12を結ぶベジエ曲線の2つの制御点C11,C12、頂点P12,P2を結ぶベジエ曲線の2つの制御点C21,C22が新たに追加される。   When the maximum error is larger than the predetermined threshold, the error evaluation dividing unit 152 divides the curve having the largest error (step S304). A method of dividing a curve is described in Reference 2 for a curve on a two-dimensional plane. A three-dimensional curve can be realized by essentially the same processing. FIG. 10 shows an example of dividing a Bezier curve on a two-dimensional plane. For example, if the error increases even if the tracking point sequence from the vertex P1 to the vertex P2 indicated by the dotted line in FIG. 10 is approximated by the Bezier curve indicated by the solid line in FIG. 10, the distance between the tracking point sequence and the Bezier curve becomes the largest. Point P12 is selected as a dividing point, and a new Bezier curve is approximated before and after the dividing point. As shown in FIG. 10, when a Bezier curve is divided, a dividing point on the Bezier curve becomes a new vertex P12, and two control points C11, C12, and vertices P12, P2 of the Bezier curve connecting the vertices P1, P12 are connected. Two control points C21 and C22 of the Bezier curve are newly added.

さらに、同じ曲面パッチを構成する他の頂点、制御点の時間軸方向の軌跡を近似した曲線も分割し(ステップS305)、分割で生じた新たな立体に対応する曲面パッチをパッチリストに追加する(ステップS306)。他の曲線を分割する際には、ステップS304で曲線の分割に用いたパラメータ値Wに対応する時間変数Tを求め、時間変数Tに相当するパラメータ値で分割する。この分割処理は、図7(a),8(a)で示した立体を時間軸に垂直な面で切断することに相当する。なお、隣接するパッチにおいて、頂点、制御点を共有する場合もあるが、片方のパッチでは分割が行われ、他方のパッチでは分割が行われないという場合も生じる。   Further, a curve approximating the trajectory in the time axis direction of other vertices and control points constituting the same curved surface patch is also divided (step S305), and a curved surface patch corresponding to a new solid generated by the division is added to the patch list. (Step S306). When dividing another curve, a time variable T corresponding to the parameter value W used for dividing the curve is obtained in step S304, and the curve is divided by the parameter value corresponding to the time variable T. This division processing is equivalent to cutting the solid shown in FIGS. 7A and 8A along a plane perpendicular to the time axis. In some cases, vertices and control points are shared by adjacent patches, but division may be performed in one patch and division may not be performed in the other patch.

一方、最大誤差が所定の閾値以下の場合は、色値取得部16が、パッチを時間軸方向に追跡して生成されたベジエ立体の頂点、制御点の色値を確定させる(ステップS307)。具体的には、パッチの開始フレーム、終了フレームにおける色値は、パッチの各頂点、制御点の座標値における色値をそのフレームから取得することで得られる。制御点がパッチの内部にある場合は、該当座標値の色値を用い、制御点がパッチの外部にある場合は、適当な初期値、例えば、制御点に最も近いパッチの辺上の点の色値を与える。あるいは、数式(5),(6)で時間変数tを初期値または終了値に固定した際のP(u,v,w)の各画素位置に該当する値を計算し、色値の最大誤差が所定の値より小さくなるように色値を変化させながら非線形最小二乗法、例えば、Levenberg−Marquardt法を用いて色値を求めてもよい。このとき、計算を容易化するために、オブジェクトの境界となるパッチの辺は曲線で表し、オブジェクトの内部は辺が線分となる三角形で表現してもよい。例えば、開始フレームや終了フレームにおいて、図11(a)では全ての辺が曲線から構成されるパッチを用いて近似し、図11(b)ではオブジェクトの輪郭のみを曲線で表し、内部の辺は線分となるパッチを用いて近似し、図11(c)ではオブジェクトの輪郭も含めて全ての辺が線分となるパッチを用いて近似している。辺が線分で構成される三角形では、制御点は辺上にあるため、辺を3分割する点を制御点とみなしてその座標値での色値を用いる。図11(a)のように辺が曲線で構成されるパッチを用いる場合でも、図11(c)のように頂点を結んだ線分を3分割する点の位置の色値を用いてもよい。また、頂点の色値を初期値として非線形最小二乗法で反復計算して求めてもよい。   On the other hand, if the maximum error is equal to or smaller than the predetermined threshold, the color value acquisition unit 16 determines the color values of the vertices and control points of the Bezier solid generated by tracking the patch in the time axis direction (step S307). Specifically, the color values at the start and end frames of the patch are obtained by obtaining the color values at the coordinate values of the vertices and control points of the patch from the frame. When the control point is inside the patch, the color value of the corresponding coordinate value is used. When the control point is outside the patch, an appropriate initial value, for example, the point on the side of the patch closest to the control point is used. Gives a color value. Alternatively, the value corresponding to each pixel position of P (u, v, w) when the time variable t is fixed to the initial value or the end value in Expressions (5) and (6) is calculated, and the maximum error of the color value is calculated. The color value may be obtained using a non-linear least square method, for example, the Levenberg-Marquardt method, while changing the color value so that becomes smaller than a predetermined value. At this time, in order to facilitate the calculation, the side of the patch that becomes the boundary of the object may be expressed by a curve, and the inside of the object may be expressed by a triangle whose side becomes a line segment. For example, in the start frame and the end frame, in FIG. 11A, approximation is performed using a patch in which all sides are composed of curves, and in FIG. 11B, only the contour of an object is represented by a curve, Approximation is performed using a patch that is a line segment, and in FIG. 11C, approximation is performed using a patch in which all sides including the outline of the object are line segments. In a triangle whose side is composed of a line segment, the control point is on the side. Therefore, the point that divides the side into three is regarded as the control point, and the color value at the coordinate value is used. Even when a patch whose sides are curved as shown in FIG. 11A is used, the color value at the point where the line segment connecting the vertices is divided into three as shown in FIG. 11C may be used. . Alternatively, it may be obtained by iterative calculation using the nonlinear least square method with the color value of the vertex as the initial value.

パッチの開始フレーム、終了フレーム以外の制御点の色値、および、分割された場合の頂点、制御点の色値については、対応する頂点、制御点の開始フレームにおける色値を用いてもよいし、図12に示すように補間してもよい。図12に示す例では、分割をした際の時間変数Tの前後のフレームをTf,Tb(Tf<Tb)として、Tfでの色値をCf、Tbでの色値をCbとおき、Tにおける色値C(T)を次式(9)で補間する。   For the color values of control points other than the start frame and end frame of the patch, and the vertex and control point color values when divided, the color values in the corresponding vertex and control point start frame may be used. The interpolation may be performed as shown in FIG. In the example shown in FIG. 12, the frames before and after the time variable T at the time of division are Tf and Tb (Tf <Tb), the color value at Tf is Cf, the color value at Tb is Cb, The color value C (T) is interpolated by the following equation (9).

C(T)=((T−Tb)Cf + (Tf−T)Cb)/Tb−Tf (9)
以上ステップS301からステップS307までの処理を全てのパッチについて行う。まだ処理していないパッチが存在する場合はステップS301に戻り(ステップS308)、そのパッチの動きをパラメトリック立体で表現する。
C (T) = ((T−Tb) Cf + (Tf−T) Cb) / Tb−Tf (9)
The processing from step S301 to step S307 is performed for all patches. If there is a patch that has not yet been processed, the process returns to step S301 (step S308), and the movement of the patch is represented by a parametric solid.

全てのパッチについて、頂点、制御点の時空間座標値およびその座標値における色値(x,y,t,c)を決定し、データをファイルとして出力する(S309)。出力するデータは、パッチ毎に、パッチID、パッチの開始時刻、パッチの終了時刻、ベジエ三角柱の場合は40個の頂点および制御点のx座標値、y座標値、t座標値、色値を有している。ベジエ6面体を利用する場合は64個の頂点および制御点のデータとなる。   For all patches, the spatio-temporal coordinate values of the vertices and control points and the color values (x, y, t, c) at the coordinate values are determined, and the data is output as a file (S309). The data to be output includes, for each patch, a patch ID, a patch start time, a patch end time, and in the case of a Bezier triangular prism, 40 vertexes and x coordinate values, y coordinate values, t coordinate values, and color values of control points. Have. When a Bezier hexahedron is used, data of 64 vertices and control points are obtained.

次に、出力されたベクトルデータから動画像を生成する手順について説明する。   Next, a procedure for generating a moving image from the output vector data will be described.

座標(x,y)を指定し、ベクトルデータがベジエ6面体の場合は式(5)、ベジエ三角形の場合は式(6)を用いて、時空間座標値(x,y,t)となるパラメータ(u,v,w)を Newton-Raphson を用いて求め、パラメータ(u,v,w)を用いて式(5)または式(6)に代入し、(x,y,t)における色値を計算する。座標値(x,y)をディジタル画像における画素の中心位置、tをディジタル画像のおけるフレーム位置と解釈すれば、ベクトルデータからディジタル動画像を生成することが可能となる。   Coordinates (x, y) are specified, and when the vector data is a Bezier hexahedron, the space-time coordinate value (x, y, t) is obtained using equation (5), and when the vector data is a Bezier triangle, equation (6). The parameter (u, v, w) is obtained using Newton-Raphson, substituted into the equation (5) or (6) using the parameter (u, v, w), and the color in (x, y, t) Calculate the value. If the coordinate value (x, y) is interpreted as the center position of the pixel in the digital image, and t is the frame position in the digital image, a digital moving image can be generated from the vector data.

以上説明したように、本実施の形態によれば、動画像データの開始フレーム画像内の類似した色値を持つ閉領域を四角形の曲面パッチに分割し、曲面パッチの頂点、制御点を動画像データのフレームを参照して時系列順に追跡し、頂点、制御点の時間軸方向の軌跡をパラメトリック曲線で近似し、パラメトリック曲線の頂点および制御点に対応する色値を動画像データのフレーム画像から取得して、パラメトリック曲線の頂点および制御点の時空間座標値と対応する色値を出力することにより、動画像データをベクトルデータで表現することが可能となり、より少ないデータ量で、拡大縮小しても画質を損なわず表現することができる。また、オブジェクトあるいはパッチレベルでの内容の編集や修正を行うことができる。   As described above, according to the present embodiment, a closed region having a similar color value in the start frame image of moving image data is divided into rectangular curved surface patches, and vertexes and control points of the curved surface patches are converted into moving images. Track data in time series with reference to the frame of data, approximate the time-axis trajectory of the vertices and control points with a parametric curve, and obtain the color values corresponding to the vertices and control points of the parametric curve from the frame image of the moving image data By acquiring and outputting the color values corresponding to the spatio-temporal coordinate values of the vertices and control points of the parametric curve, it becomes possible to express moving image data as vector data, and it can be scaled with a smaller amount of data. However, it can be expressed without losing image quality. It is also possible to edit or modify the contents at the object or patch level.

なお、本実施の形態では、パラメトリック曲線や曲面、立体において、ベジエ曲線、ベジエ曲面、ベジエ立体を念頭に説明したが、本質的にはどのようなパラメトリック曲線/曲面/立体を用いてもよい。例えば、有理ベジエ立体やBスプライン立体としても適用可能である。また、従来手法においては、パラメトリック曲面パッチの次数として3次で表現されることが多い。これについても、本質的には2次以上であれば次数はいくつでもよいが、処理の容易さから次数3のものが用いられることが多い。   In the present embodiment, description has been made with a Bezier curve, a Bezier curved surface, and a Bezier solid in mind for parametric curves, curved surfaces, and solids, but any parametric curve / curved surface / solid may be used in essence. For example, it can be applied to a rational Bezier solid or a B-spline solid. In the conventional method, the order of the parametric curved surface patch is often expressed as a third order. In this case, as long as it is essentially second order or higher, any number of orders may be used, but those of order 3 are often used for ease of processing.

11…動画像読込部
12…静止画像ベクトル化部
13…頂点追跡部
131…データリスト処理部
132…頂点追跡判定部
133…時間長判定部
14…制御点追跡部
141…一次結合近似部
142…制御点評価補正部
15…パラメトリック立体化部
151…曲線近似部
152…誤差評価分割部
16…色値取得部
17…出力部
18…蓄積部
DESCRIPTION OF SYMBOLS 11 ... Moving image reading part 12 ... Still image vectorization part 13 ... Vertex tracking part 131 ... Data list processing part 132 ... Vertex tracking determination part 133 ... Time length determination part 14 ... Control point tracking part 141 ... Primary joint approximation part 142 ... Control point evaluation correction unit 15... Parametric three-dimensionalization unit 151... Curve approximation unit 152 .. error evaluation division unit 16... Color value acquisition unit 17.

Claims (7)

動画像データを読み込み蓄積手段に蓄積する読込手段と、
前記蓄積手段から前記動画像データの指定されたフレーム画像を読み出し、当該フレーム画像内の類似した色値を持つ閉領域を曲面パッチに分割し、曲面パッチの辺の端を頂点として頂点リストに登録し、その辺を構成するための点を制御点として制御点リストに登録するベクトル化手段と、
前記動画像データから時系列順にフレーム画像を読み出し、前記曲面パッチ毎に、読み出したフレーム画像から前記頂点リストに登録された頂点に対応する対応点を検出してそのフレーム画像における頂点として頂点リストに登録する頂点追跡手段と、
時系列順に読み出したフレーム画像毎に、前記曲面パッチそれぞれについて、前記頂点リストに登録された頂点を前記曲面パッチの辺の端としたときに前記曲面パッチの辺を構成するための制御点の位置を、その頂点の位置関係に基づいて推定してそのフレーム画像における制御点として制御点リストに登録する制御点追跡手段と、
前記頂点リストおよび前記制御点リストを参照し、前記ベクトル化手段により登録された頂点および制御点それぞれの時間軸方向の軌跡をパラメトリック曲線で近似する曲線近似手段と、
前記曲線近似手段が近似したパラメトリック曲線の頂点および制御点に対応する色値を前記動画像データのフレーム画像から取得する色値取得手段と、
前記パラメトリック曲線の頂点および制御点の時空間座標値と対応する色値を出力する出力手段と、
を有することを特徴とする動画像処理装置。
Reading means for reading moving image data and accumulating in the accumulating means;
Reads the specified frame image of the moving image data from the storage means, divides a closed region having a similar color value in the frame image into curved surface patches, and registers the edge of the edge of the curved surface patch as a vertex in the vertex list And vectorization means for registering the points for constituting the side as control points in the control point list,
Frame images are read from the moving image data in chronological order, and for each curved surface patch, corresponding points corresponding to vertices registered in the vertex list are detected from the read frame images, and the vertices are listed as vertices in the frame image. Vertex tracking means to register,
For each frame image read out in chronological order, the position of the control point for constituting the side of the curved surface patch when the vertex registered in the vertex list is the end of the side of the curved surface patch for each curved surface patch A control point tracking means for estimating the position based on the positional relationship between the vertices and registering it in the control point list as a control point in the frame image;
Curve approximation means for referring to the vertex list and the control point list and approximating the trajectory in the time axis direction of each vertex and control point registered by the vectorization means with a parametric curve;
Color value acquisition means for acquiring color values corresponding to vertices and control points of a parametric curve approximated by the curve approximation means from a frame image of the moving image data;
Output means for outputting color values corresponding to the spatio-temporal coordinate values of the vertices and control points of the parametric curve;
A moving image processing apparatus comprising:
前記制御点追跡手段は、
前のフレームにおける前記頂点と前記制御点の位置関係を当該制御点により構成される曲面パッチの辺の両端の頂点と別の頂点の一次結合で表して結合係数を求め、前記制御点の位置を求めるフレームにおける前記頂点と前記結合係数により前記制御点の位置を推定する一次結合近似手段と、
推定した前記制御点により構成される曲面パッチの辺とフレーム画像から抽出したエッジを構成する点との距離に基づいて前記制御点の位置を補正する補正手段と、
を有することを特徴とする請求項1記載の動画像処理装置。
The control point tracking means includes
The positional relationship between the vertex and the control point in the previous frame is expressed by a linear combination of the vertex of the edge of the curved surface patch constituted by the control point and another vertex to obtain a coupling coefficient, and the position of the control point is determined. A linear combination approximation means for estimating the position of the control point from the vertex and the coupling coefficient in a frame to be obtained;
Correction means for correcting the position of the control point based on the distance between the side of the curved patch constituted by the estimated control point and the point constituting the edge extracted from the frame image;
The moving image processing apparatus according to claim 1, further comprising:
前記頂点追跡手段は、
前記対応点が検出できない場合に、当該対応点を含む前のフレームにおける曲面パッチの各頂点を結んで構成される図形の面積を計算し、当該面積が所定の閾値よりも小さい場合は対応点なしと判定し、当該面積が所定の閾値以上の場合は前のフレームにおける対応点の位置を今のフレームにおける対応点の位置とする判定手段と、
前記判定手段が所定の数のフレームに渡って対応点なし判定した場合に、当該対応点を含む前記曲面パッチについて以降のフレームについて処理を行わないとする消失手段と、
を有することを特徴とする請求項1又は2記載の動画像処理装置。
The vertex tracking means includes
When the corresponding point cannot be detected, the area of the figure configured by connecting the vertices of the curved surface patch in the previous frame including the corresponding point is calculated, and if the area is smaller than a predetermined threshold, there is no corresponding point And when the area is equal to or larger than a predetermined threshold, a determination unit that sets the position of the corresponding point in the previous frame as the position of the corresponding point in the current frame;
When the determination unit determines that there is no corresponding point over a predetermined number of frames, an erasure unit that does not process the subsequent frame for the curved surface patch including the corresponding point;
The moving image processing apparatus according to claim 1, further comprising:
読込手段による、動画像データを読み込み蓄積手段に蓄積するステップと、
ベクトル化手段による、前記蓄積手段から前記動画像データの指定されたフレーム画像を読み出し、当該フレーム画像内の類似した色値を持つ閉領域を曲面パッチに分割し、曲面パッチの辺の端を頂点として頂点リストに登録し、その辺を構成するための点を制御点として制御点リストに登録するステップと、
頂点追跡手段による、前記動画像データから時系列順にフレーム画像を読み出し、前記曲面パッチ毎に、読み出したフレーム画像から前記頂点リストに登録された頂点に対応する対応点を検出してそのフレーム画像における頂点として頂点リストに登録するステップと、
制御点追跡手段による、時系列順に読み出したフレーム画像毎に、前記曲面パッチそれぞれについて、前記頂点リストに登録された頂点を前記曲面パッチの辺の端としたときに前記曲面パッチの辺を構成するための制御点の位置を、その頂点の位置関係に基づいて推定してそのフレーム画像における制御点として制御点リストに登録するステップと、
曲線近似手段による、前記頂点リストおよび前記制御点リストを参照し、前記ベクトル化手段により登録された頂点および制御点それぞれの時間軸方向の軌跡をパラメトリック曲線で近似するステップと、
色値取得手段による、前記曲線近似手段が近似したパラメトリック曲線の頂点および制御点に対応する色値を前記動画像データのフレーム画像から取得するステップと、
出力手段による、前記パラメトリック曲線の頂点および制御点の時空間座標値と対応する色値を出力するステップと、
を有することを特徴とする動画像処理方法。
Reading and storing moving image data in the storage means by the reading means;
The vectorization means reads out the specified frame image of the moving image data from the storage means, divides a closed region having a similar color value in the frame image into curved patches, and appoints the edge of the edge of the curved patch as a vertex Registering it in the vertex list as a control point and registering the points for constituting the side as control points in the vertex list;
A frame image is read from the moving image data in time series by the vertex tracking means, and a corresponding point corresponding to the vertex registered in the vertex list is detected from the read frame image for each curved surface patch. Registering them in the vertex list as vertices;
For each frame image read out in chronological order by the control point tracking means, for each curved surface patch, the edge of the curved surface patch is formed when the vertex registered in the vertex list is the end of the curved surface patch side. Estimating the position of the control point for the position based on the positional relationship of the vertex and registering it in the control point list as the control point in the frame image;
Referring to the vertex list and the control point list by a curve approximation means, approximating the trajectory in the time axis direction of each vertex and control point registered by the vectorization means with a parametric curve;
Obtaining color values corresponding to vertices and control points of the parametric curve approximated by the curve approximation means by the color value acquisition means from the frame image of the moving image data;
Outputting color values corresponding to spatio-temporal coordinate values of vertices and control points of the parametric curve by the output means;
A moving image processing method comprising:
前記制御点追跡手段による前記制御点リストに登録するステップは、
一次結合近似手段による、前のフレームにおける前記頂点と前記制御点の位置関係を当該制御点により構成される曲面パッチの辺の両端の頂点と別の頂点の一次結合で表して結合係数を求め、前記制御点の位置を求めるフレームにおける前記頂点と前記結合係数により前記制御点の位置を推定するステップと、
補正手段による、推定した前記制御点により構成される曲面パッチの辺とフレーム画像から抽出したエッジを構成する点との距離に基づいて前記制御点の位置を補正するステップと、
を有することを特徴とする請求項4記載の動画像処理方法。
Registering in the control point list by the control point tracking means;
By representing the positional relationship between the vertices and the control points in the previous frame by a linear combination approximation means by using a linear combination of both vertices and another vertex of the surface of the curved surface patch constituted by the control points, a coupling coefficient is obtained, Estimating the position of the control point from the vertex in the frame for determining the position of the control point and the coupling coefficient;
Correcting the position of the control point based on the distance between the side of the curved patch constituted by the estimated control point and the point constituting the edge extracted from the frame image by the correction means;
5. The moving image processing method according to claim 4, further comprising:
前記頂点追跡手段による前記頂点リストに登録するステップは、
判定手段による、前記対応点が検出できない場合に、当該対応点を含む前のフレームにおける曲面パッチの各頂点を結んで構成される図形の面積を計算し、当該面積が所定の閾値よりも小さい場合は対応点なしと判定し、当該面積が所定の閾値以上の場合は前のフレームにおける対応点の位置を今のフレームにおける対応点の位置とするステップと、
消失手段による、前記判定手段が所定の数のフレームに渡って対応点なし判定した場合に、当該対応点を含む前記曲面パッチについて以降のフレームについて処理を行わないとするステップと、
を有することを特徴とする請求項4又は5記載の動画像処理方法。
The step of registering in the vertex list by the vertex tracking means includes:
When the corresponding point cannot be detected by the determination unit, the area of the figure formed by connecting the vertices of the curved surface patch in the previous frame including the corresponding point is calculated, and the area is smaller than a predetermined threshold Determining that there is no corresponding point, and if the area is equal to or greater than a predetermined threshold, setting the position of the corresponding point in the previous frame as the position of the corresponding point in the current frame;
When the determination unit determines that there is no corresponding point over a predetermined number of frames by an erasure unit, the step of not performing processing on subsequent frames for the curved surface patch including the corresponding point;
The moving image processing method according to claim 4, wherein:
請求項1乃至3のいずれかに記載の動画像処理装置としてコンピュータを機能させることを特徴とする動画像処理プログラム。   A moving image processing program for causing a computer to function as the moving image processing apparatus according to claim 1.
JP2011130010A 2011-06-10 2011-06-10 Moving image processing method, moving image processing apparatus, and moving image processing program Expired - Fee Related JP5567525B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011130010A JP5567525B2 (en) 2011-06-10 2011-06-10 Moving image processing method, moving image processing apparatus, and moving image processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011130010A JP5567525B2 (en) 2011-06-10 2011-06-10 Moving image processing method, moving image processing apparatus, and moving image processing program

Publications (2)

Publication Number Publication Date
JP2012256280A true JP2012256280A (en) 2012-12-27
JP5567525B2 JP5567525B2 (en) 2014-08-06

Family

ID=47527775

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011130010A Expired - Fee Related JP5567525B2 (en) 2011-06-10 2011-06-10 Moving image processing method, moving image processing apparatus, and moving image processing program

Country Status (1)

Country Link
JP (1) JP5567525B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016161569A (en) * 2015-02-26 2016-09-05 三菱電機株式会社 Method and system for obtaining 3d pose of object and 3d location of landmark point of object
CN114564106A (en) * 2022-02-25 2022-05-31 北京字跳网络技术有限公司 Method and device for determining interaction indicator line, electronic equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1049691A (en) * 1996-07-31 1998-02-20 Dainippon Screen Mfg Co Ltd Method and device for tracing dot sequence with bezier curve
JP2000251086A (en) * 1999-02-26 2000-09-14 Sony Corp Device and method for generating curve and program providing medium
JP2000285253A (en) * 1999-01-28 2000-10-13 Toshiba Corp Method for description of object area information, generator of object area information, method for video information processing, and information processor
US20080043023A1 (en) * 2006-08-15 2008-02-21 Microsoft Corporation Approximating subdivision surfaces with bezier patches
JP2011070326A (en) * 2009-09-24 2011-04-07 Canon Inc Image processing apparatus, and image processing method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1049691A (en) * 1996-07-31 1998-02-20 Dainippon Screen Mfg Co Ltd Method and device for tracing dot sequence with bezier curve
JP2000285253A (en) * 1999-01-28 2000-10-13 Toshiba Corp Method for description of object area information, generator of object area information, method for video information processing, and information processor
JP2000251086A (en) * 1999-02-26 2000-09-14 Sony Corp Device and method for generating curve and program providing medium
US20080043023A1 (en) * 2006-08-15 2008-02-21 Microsoft Corporation Approximating subdivision surfaces with bezier patches
JP2011070326A (en) * 2009-09-24 2011-04-07 Canon Inc Image processing apparatus, and image processing method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016161569A (en) * 2015-02-26 2016-09-05 三菱電機株式会社 Method and system for obtaining 3d pose of object and 3d location of landmark point of object
CN114564106A (en) * 2022-02-25 2022-05-31 北京字跳网络技术有限公司 Method and device for determining interaction indicator line, electronic equipment and storage medium
CN114564106B (en) * 2022-02-25 2023-11-28 北京字跳网络技术有限公司 Method and device for determining interaction indication line, electronic equipment and storage medium

Also Published As

Publication number Publication date
JP5567525B2 (en) 2014-08-06

Similar Documents

Publication Publication Date Title
Schöps et al. Surfelmeshing: Online surfel-based mesh reconstruction
JP7084686B2 (en) Compression of 3D modeled objects
Dou et al. Scanning and tracking dynamic objects with commodity depth cameras
Wei et al. Fisheye video correction
JP5120926B2 (en) Image processing apparatus, image processing method, and program
Vicente et al. Balloon shapes: Reconstructing and deforming objects with volume from images
JP6463625B2 (en) Image resizing
US9224245B2 (en) Mesh animation
EP3846123B1 (en) 3d reconstruction with smooth maps
JP4413971B2 (en) Image interpolation apparatus, image interpolation method, and image interpolation program
Wei et al. Feature-preserving optimization for noisy mesh using joint bilateral filter and constrained Laplacian smoothing
Meerits et al. Real-time scene reconstruction and triangle mesh generation using multiple RGB-D cameras
CN114387392A (en) Method for reconstructing three-dimensional human body posture according to human shadow
JP5567525B2 (en) Moving image processing method, moving image processing apparatus, and moving image processing program
CN115546027B (en) Image suture line determination method, device and storage medium
KR101566459B1 (en) Concave surface modeling in image-based visual hull
Zope et al. A Survey of Morphing Techniques
Cardona et al. Hybrid-space localized stylization method for view-dependent lines extracted from 3D models.
Lim et al. Putting real-world objects into virtual world: fast automatic creation of animatable 3D models with a consumer depth camera
Starck et al. Model-based human shape reconstruction from multiple views
JP2010152529A (en) Vertex texture mapping device and program
JP2012230668A (en) Image processor, image processing method, and program
Afzal et al. Kinect Deform: enhanced 3d reconstruction of non-rigidly deforming objects
JP2012230663A (en) Image processor and image processing method
JP5504142B2 (en) Image processing apparatus, image processing method, and image processing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130904

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140609

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: 20140617

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140619

R150 Certificate of patent or registration of utility model

Ref document number: 5567525

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees