WO2006112308A1 - モーションキャプチャシステム、及びモーションキャプチャシステムにおける特徴点の三次元再構成法 - Google Patents

モーションキャプチャシステム、及びモーションキャプチャシステムにおける特徴点の三次元再構成法 Download PDF

Info

Publication number
WO2006112308A1
WO2006112308A1 PCT/JP2006/307677 JP2006307677W WO2006112308A1 WO 2006112308 A1 WO2006112308 A1 WO 2006112308A1 JP 2006307677 W JP2006307677 W JP 2006307677W WO 2006112308 A1 WO2006112308 A1 WO 2006112308A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
image
nodes
intersection
motion capture
Prior art date
Application number
PCT/JP2006/307677
Other languages
English (en)
French (fr)
Inventor
Yoshihiko Nakamura
Katsu Yamane
Hiroaki Tanie
Original Assignee
The University Of Tokyo
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 The University Of Tokyo filed Critical The University Of Tokyo
Priority to US11/911,512 priority Critical patent/US8698899B2/en
Priority to JP2007521199A priority patent/JP5061350B2/ja
Priority to EP06731624A priority patent/EP1876412B1/en
Publication of WO2006112308A1 publication Critical patent/WO2006112308A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • G06T7/596Depth or shape recovery from multiple images from stereo images from three or more stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • G06T2207/30208Marker matrix

Definitions

  • the present invention relates to an optical motion capture system.
  • Motion capture technology is used in various fields such as entertainment, industry, and medicine. For example, in the field of CG animation, more natural movements are realized by applying human movements acquired by motion capture to CG characters. In the field of multimedia 'production of CG images for entertainment', including movies and games, motion capture is no longer an essential technology. In addition, motion capture technology is used in various fields such as robotics, biomechanics, sports science, and medicine. Motion capture technology includes optical, magnetic, and mechanical types. Optical motion capture is further classified into passive optical motion capture and active optical motion capture depending on the type of marker. .
  • Motion captilla is often used for applications that require high accuracy and high speed especially at high speeds. This is because it is more accurate than other methods, has less restraint on the subject, and is not affected by magnetism.
  • a feature point called a marker is often attached to a subject in order to facilitate image processing.
  • Multiple viewpoints By combining the obtained marker position information, the three-dimensional position of the marker can be calculated using the principle of triangulation. This process is called three-dimensional reconstruction. In order to do this, the correspondence between markers detected by multiple cameras must be strong.
  • the motion of the link mechanism can be obtained by mapping the 3D position information of the marker to the motion of the human link mechanism model. This is usually done by inverse kinematics calculation. For this purpose, it is necessary to know which part of the subject is fixed, and the process of obtaining this is called labeling.
  • the current motion capture method aims to model a human as a link mechanism consisting of a rigid link and a joint, and measure the joint angle.
  • some applications require detailed data including changes in the shape of the human body during exercise, and so refinement of measurement data is an important issue.
  • refinement here refers to the measurement of data with high spatial density by increasing the number of measurement points.
  • Passive optical motion capillaries use markers covered with a retroreflecting material. Since the retroreflecting material always reflects light in the direction of the light source, the marker can be easily detected by placing the light source near the camera. In addition, since the marker itself does not emit light, the restraint on the subject is very small. However, since the markers cannot be distinguished from each other, the above three-dimensional reconstruction and labeling are difficult. As the number of markers increases, the amount of processing increases exponentially and the probability of recognition errors increases.
  • the marker itself is a light source, and three-dimensional reconstruction and labeling are facilitated by changing the color of the marker and the lighting timing.
  • a wire for supplying electric power to the marker is required, the restraint on the subject is large.
  • the number of markers that can be used at one time is limited, making it difficult to measure the movements of multiple subjects simultaneously.
  • the conventional active optical motion capillaries have a physical limit on the number of markers; For this reason, it is difficult to greatly increase the number of markers in the conventional optical motion capture method.
  • An object of the present invention is to measure spatially dense data by increasing the number of measurement points in a motion capture system.
  • Another object of the present invention is to reduce the amount of calculation in the case of spatially high density V data measurement in a motion capture system.
  • the motion capture system employed by the present invention uses a mesh marker.
  • the intersection of lines constituting the mesh marker is a node, the line connecting each node is an edge, and the node is a feature point. It provides position information and edge information that shows the connection between feature points.
  • the motion capture system according to the present invention includes a plurality of cameras that capture an object provided with a mesh marker to acquire a two-dimensional image of the mesh marker, and a mesh marker node from the two-dimensional image captured by each camera.
  • 'Node to detect edge information' 3D position information is obtained from the edge detection unit and node / edge information detected from multiple 2D images captured by different cameras. It has a reconstruction unit.
  • Three-dimensional reconstruction method of feature points in optical motion capture Is a mesh marker, where the intersection of the lines that make up the mesh marker is the node, the line connecting each node is the edge, the node provides the location information of the feature points, and the edges are the feature points Provides binding information indicating the connection.
  • the method includes an image acquisition step of acquiring an object provided with a mesh marker by a plurality of cameras to acquire a two-dimensional image of the mesh marker, and a mesh marker from the two-dimensional image captured by each camera.
  • 3D reconstruction to obtain 3D position information of the node using the edge detection step of the node that detects the edge information and the information of the edge of the node that has also detected multiple 2D image forces taken by different cameras Steps.
  • the present invention further includes a computer program for causing a computer to execute a three-dimensional reconstruction method of feature points in an optical motion capture, or a recording medium recording the computer program.
  • the present invention is characterized in that a mesh-like marker is attached to at least a part of the surface of an object (subject) instead of a spherical marker (feature point) used in a normal optical motion capture system.
  • This marker is called a mesh marker, and an example is shown in Fig. 1. It is desirable that the mesh marker has a sufficiently high contrast so that the lines constituting the mesh marker can be detected by image processing. For example, if a mesh marker is made using a retroreflective material in the same way as a spherical marker in a passive optical motion capillaries and the illumination is placed near the force lens, the detection is most easy. Absent.
  • the present invention is not limited to the passive optical motion capture system.
  • the present invention can be applied to an active optical motion capture by producing a mesh marker from a phosphorescent material.
  • the mesh marker may be affixed to clothing or special tights, or may be drawn directly on the body surface.
  • Clothing includes any clothing, hats, and footwear that covers at least a portion of the object. It would be desirable to draw directly in the measurement of facial expression movement.
  • the pattern may be in the form of graph paper as shown in Fig. 1 (each node constitutes a vertex of a square and each edge constitutes a side of a square), or a polygon such as a triangle (each node has many nodes). Other shapes such as a vertex of a square and each edge constituting a side of a polygon may be used.
  • the intersection of the tapes on the mesh marker is called the node
  • the line connecting the nodes is called the edge
  • the node is the feature point that corresponds to the conventional spherical marker. It is considered.
  • Edges provide information for connecting nodes and can be straight or curved.
  • a node in a 2D image is called an image node
  • a node in a 3D space is called a surface node.
  • the final output of the system is surface node position information.
  • a node measured by one camera is represented as a single straight line (node vector) of the camera position force in the three-dimensional space, and the intersection of the node vectors is calculated by calculating the intersection of the node vectors. Get location information.
  • the length of the line segment is compared by comparing the length of the line segment that minimizes the distance between the two straight lines with a preset threshold. If is smaller than the threshold, it is determined that the two straight lines intersect, and the midpoint of the two points on the line segment is taken as the intersection.
  • the force with position and direction can be calculated if the 3D positions of the nodes at both ends of the edge are known, so if the 3D reconstruction of the node is possible, the 3D reconstruction of the edge automatically Is possible.
  • the edge three-dimensional information can be used, for example, when reconstructing a polygon.
  • the present invention in the three-dimensional reconstruction of feature points (surface node generation), when searching for a plurality of image nodes where node vectors intersect using the combination information of image nodes that have already been three-dimensionally reconstructed. Therefore, the number of image nodes that are search candidates can be reduced.
  • an initial surface node that is more accurate three-dimensional position information of the node is generated by imposing strict conditions. After the initial surface node is generated, the surface node group is expanded around the initial surface node by using the connection information between the nodes provided by the edge.
  • the three-dimensional reconstruction unit includes an intersection determination unit that determines an intersection of a plurality of node vectors of a plurality of cameras, and the intersection determination unit includes a more strict first intersection determination condition and An initial surface node generating means having an initial surface node at an intersection selected by the first intersection determination condition, and an image node and an edge constituting the initial surface node.
  • Surface node group generation means having a surface node at the intersection selected by the second intersection determination condition from the node vectors corresponding to the coupled image nodes.
  • the surface node group generation means further includes the generated surface The intersection selected by the second intersection criterion from the node vectors corresponding to the image nodes that are connected by the edges and the image nodes that make up the node is defined as the surface node.
  • the bond information provided by the edge can also be used to generate the initial surface node.
  • the intersection determination condition for generating the initial surface node is determined by whether the image node constituting the initial surface node and the node vector corresponding to the image node that intersect with the image node are intersected. Including whether or not to intersect.
  • the intersection determination condition includes a threshold value for determining the distance between the node vectors, and a small threshold value is set for the distance between the node vectors for generating the initial surface node. A large threshold is set for the distance between node vectors for generating surface nodes other than the initial surface node.
  • the intersection determination condition may include the number of intersections. For example, the condition where three node vectors intersect at a certain threshold is stricter than the condition where two node vectors intersect at a certain threshold.
  • the plurality of cameras are usually arranged so as to surround an object.
  • the plurality of cameras are composed of a plurality of camera groups, and the three-dimensional position information of the node is acquired for each camera group.
  • each camera group should also constitute a series of adjacent camera forces. It is desirable that the adjacent camera group has at least one common camera.
  • each camera group consists of three camera forces, and each camera group shares two of the three cameras.
  • the processing for calculating the three-dimensional position of the node includes an image node / edge detection unit, a surface node generation unit (local three-dimensional reconstruction unit), and a data integration unit.
  • the 3D reconstruction unit consists of a surface node generation unit and a data integration unit. The processing performed in each part is shown below.
  • the sharpness processing is performed on the grayscale image captured by the camera using a Laplacian operator, and the sharp image is binarized.
  • Thinning processing is performed on the binary image.
  • the image node that can be adopted by the present invention.
  • the edge detection step is not limited to this. If the node and edge can be detected, other image processing means may be used. May be used.
  • a plurality of adjacent cameras are grouped into one camera group, and the image node's edge information power of the camera belonging to each dulp is also detected by the 3D position of the surface node.
  • the calculation process is local three-dimensional reconstruction. When there are a total of N cameras, there are N such groups, and 3D reconstruction is performed for all of these groups.
  • a vector starting from the focal position of the camera which is estimated to have a corresponding surface node, can be considered. This is called a node vector. If node vectors from multiple cameras intersect, it can be estimated that a surface node exists at the intersection, but in reality, it intersects strictly due to camera calibration errors and image node extraction errors. There is little to do. Considering this, the 3D reconstruction is performed by the following procedure.
  • the surface node may be generated under a looser condition (subsurface node generation). For example, in (1) and (2) above, a force that generates a surface node at the intersection of three node vectors In the generation of a subsurface node, a surface node is generated at the intersection of three node vectors.
  • the data integration process is to integrate the information if they match, and to determine which is wrong if there is a conflict.
  • the determination of whether there is a conflict in force between surface nodes is that the distance between the two surface nodes is less than a predetermined threshold and that different image nodes in the same camera image are not used. Whether or not the two conditions are satisfied is determined. If these conditions are satisfied, the surface nodes are integrated.
  • the integration of surface nodes includes the integration of image nodes between matched surface nodes, and the location of the surface nodes is updated using the integrated image nodes. If the two surface nodes conflict, leave the one with the most node vectors in use and delete the one with the few. If the number of node vectors is the same, the one with the smallest average distance between node vectors is selected. Details of the algorithm will be described later.
  • the configuration of the computer for performing the above processing is arbitrary, the image node 'edge detection processing with a plurality of camera image forces, and the three-dimensional reconstruction processing with a plurality of camera groups. These can be processed in parallel on different CPUs.
  • Figure 8 shows an implementation example of such a system. The flow of processing in this example is shown below.
  • the data integration unit transmits a detection command to the image node ′ edge detection unit.
  • the image node and edge integration unit detects the image node and edge using the latest image at that time.
  • the detection result is sent to the corresponding local 3D reconstruction unit and data integration unit.
  • Each local 3D reconstruction unit receives the image node 'edge detection results for three adjacent cameras. When all the detection results of the corresponding camera are received, 3D reconstruction calculation is performed. The calculated 3D position of the surface node and the connection information between the nodes by the edge are sent to the data integration unit.
  • the data integration unit receives all the local 3D reconstruction results, it performs data integration processing. This data integration unit obtains the final 3D reconstruction result of the surface nodes and edges.
  • the amount of calculation (calculation time) due to the increase in the number of nodes is obtained by using the mesh marker combination information for three-dimensional reconstruction of feature points (nodes). It is possible to acquire spatially dense data while suppressing the increase.
  • the motion capture system according to the present invention uses a mesh marker having coupling information between feature points instead of a normal marker, so that even if there are many markers at short distances, three-dimensional reconstruction with few errors In real time. Further, since the motion capture system according to the present invention does not use special hardware, the conventional optical motion capture system can be used as it is only by changing the software and the marker.
  • FIG. 1 shows a partial view of the mesh marker.
  • the intersection of the tapes is called a node, and the line connecting the nodes is called an edge.
  • each node has joint information in mesh markers.
  • the connection information is information indicating which nodes are connected by an edge.
  • the 3D reconstruction in this system is to reproduce the positions of nodes in 3D and the edges connecting them based on multiple 2D images taken from different viewpoints of mesh markers.
  • the mesh information in the 2D image as shown in Fig. 2 can be obtained from the image of the mesh marker.
  • the mesh information is the information of the node position on the 2D image (node list) and the list (edge list) that describes the connection information.
  • node list 1 (50,50) indicates that the position of the first node is the coordinates (50,50)
  • edge list 1 (2,4) indicates that the first node is the second Shows that it is! /
  • Image node A node on a two-dimensional image that forms the two-dimensional position information of the node.
  • Image edge An edge connecting nodes on a two-dimensional image.
  • Surface node A node reconstructed in 3D, and constitutes 3D position information of the node.
  • Mesh node An actual mesh marker node.
  • Node vector A vector that extends through an image node starting from the camera position. It is estimated that a surface node is on this vector.
  • a marker image in a two-dimensional image is also called an image node
  • a marker reconstructed in three dimensions is called a surface node
  • an actual marker is called a mesh node.
  • An image node in a camera image is represented in the 3D space as a single line drawn from the camera position.
  • the mesh node corresponding to the image node is presumed to exist somewhere on this straight line in 3D space. This straight line is called a node vector (Fig. 3).
  • the 3D position of the surface node is obtained as the intersection of the node vectors of multiple cameras. In 3D position calculation, it is necessary to point the same mesh node between camera images from different viewpoints and to associate the image nodes with each other.
  • FIGs 4 and 5 show the difference between the one that does not use marker binding information for 3D reconstruction and the one that uses marker binding information.
  • Fig. 4 shows the 3D reconstruction without using the combined information
  • Fig. 5 shows the 3D reconstruction using the combined information.
  • the marker A in the figure is reconstructed. Even in this case, to find the one corresponding to the image node b in the left camera image, The image node must be searched from all the image nodes in the side camera image.
  • FIG. 6 shows a schematic diagram of this system.
  • This system consists of three steps: image node extraction (extraction), surface node generation (reconstruction), and surface node integration (integration).
  • the images captured by each camera are subjected to image processing by a PC (camera PC) provided for each camera, and mesh information is extracted.
  • Surface nodes are generated on each camera PC based on mesh information obtained from the camera power of a total of three cameras, one camera and the cameras on both sides.
  • the final reconstruction result is obtained by integrating the 3D reconstruction result of the surface node calculated by each camera PC by the integration PC.
  • Surface nodes obtained by integration are called integrated surface nodes.
  • the reason why the reconstruction calculation is divided into groups of three cameras is to improve the reliability of the data and the high-speed calculation. This will be described later.
  • 10 cameras are used, and 10 nodes each generate a surface node.
  • the integrated surface node is reliable because it eliminates inconsistencies from the surface nodes calculated independently for each camera group and integrates the matching
  • FIG. 7 shows the hardware configuration of this system.
  • Adimec-1000m Ten Adimec high-resolution cameras Adimec-1000m are used.
  • the camera has 1000x1000 pixels and 10 [bit] grayscale, and can capture 503 ⁇ 4s] in asynchronous mode and 403 ⁇ 4s] in synchronous mode with external pulses. This system is used in synchronous mode.
  • the cameras are arranged at equiangular intervals near the ceiling along the outer circumference of the studio with respect to the center of the studio.
  • Each camera has a circular LED light.
  • a mesh marker with recursive reflectivity is taken as an object to be photographed.
  • Each camera is equipped with a retroreflective tape that constitutes a light-cash marker emitted from the LED lighting provided for each camera. A camera image that is strongly reflected in the direction and emphasizes only the marker portion can be obtained.
  • Each camera is triggered by a pulse generator. This trigger synchronizes the shooting timing between the cameras.
  • a total of 10 PCs (hereinafter referred to as “camera PCs”) per camera, and 1 PC (hereinafter referred to as “integrated PC”) is used for system integration. The role of each PC will be described later.
  • MPI Message Passing Interface
  • MPI Message Passing Interface
  • the system also has three types of process power: image node extraction, surface node extraction, and surface node integration.
  • image node extraction and surf node generation processes can be calculated independently for each camera and camera group. These two processes are calculated in parallel on each camera PC, and surface node integration processing is performed on the integrated PC.
  • Figure 8 shows the data flow during actual measurement.
  • Image acquisition from the camera is performed by Thread a in the following process during the camera process.
  • the camera process Upon receiving the image processing command, the camera process extracts an image node using the latest image image in the loop buffer memory.
  • the camera process sends the image node data to the integration process, the reconstruction process of itself and its neighbors.
  • the data reception monitoring thread (Thread ⁇ ) in the integration process stores the image node data in the loop buffer when it receives the image node data.
  • the data reception monitoring thread stores the surface node data in the loop buffer.
  • an integrated calculation command is sent to the integrated calculation thread (Thread ⁇ ).
  • (a) and (b) are processes for capturing an image, and move independently of (1) to (7) with an external pulse as a trigger.
  • (1) to (7) are processes for actually performing image processing, reconstruction, and comprehensive calculation.
  • the integration process manages the timing of synchronization by sending image processing commands to each camera PC.
  • the frame rate of motion capture depends on the computation time of the image processing process.
  • Binarization A binarization process is performed on a sharpened image.
  • the spatial filter method is used for sharp edges.
  • the spatial filter method is a process of drawing a second-order differential image ⁇ (Laplacian) for the image. By subtracting the second derivative image, overshoot and undershoot are formed in the density change, and as a result, sharpness of the image with enhanced edge inclination can be realized.
  • FIG. 10 shows how the density changes between the original image and the sharpened image.
  • Figure 10 shows the density change of the image along an axis in the image.
  • the horizontal axis in the figure represents the axis in the image
  • the vertical axis represents the density
  • the one-dot chain line represents the density change of the original image f
  • the chain line represents the second derivative image!
  • the solid line is the sharp edge image g with ⁇ reversed. If the density of the pixel in the ⁇ jth row in the image is f (i, j), the Laplacian operator will have a directional difference ⁇ ! ”Defined by equation (1), a directional secondary difference ⁇ ⁇ 2 beam It is expressed by equation (2).
  • Equation (3) the edge sharp image g (i, j) is expressed by Equation (3) and can be realized by the filter shown in FIG.
  • a binarization process is performed on the sharpened image to obtain a binary image.
  • the binarization process is as follows: Done
  • Equation 4 f is a binary image, 1 is assigned to the effective area (white area), 0 is assigned to the background area (black area)
  • T pixel (white pixel).
  • the effective range is an image range in which effective pixels exist, and is selected by a rectangle here.
  • Thinning processing is applied to the binary image to extract the node position and connection information. Thinning processing is processing to reduce the line width of line figures to 1 so that topological connectivity does not change.
  • the thinned wire is called the core wire. A line segment can be easily obtained from a thin line figure. The thin wire process is required to satisfy the following conditions.
  • the core width is 1.
  • the position of the core wire is the center of the line width.
  • neighboring pixels There are two types of definition for neighboring pixels: 4 neighbors and 8 neighbors. Four pixels on the top, bottom, left and right of a pixel are called four neighbors. In addition to the four neighboring pixels, a pixel that includes four diagonal pixels is called an 8-neighborhood.
  • connectivity can be defined between the pixels. Two points are connected if there is a path that goes through the effective pixels adjacent between the two points. The connectivity depends on the definition of neighboring pixels.
  • the connection when defined in the vicinity of 4 is called 4 connections, and the connection when defined in the vicinity of 8 is called 8 connections.
  • Figure 12 (a) shows the path of two points A–B that are eight connected. As shown in Fig.
  • the effective area of a binary image is a set of boundary points adjacent to the background area and adjacent to the background.
  • Figure 14 shows the boundary points.
  • Fig. 14 (a) shows the original image
  • Fig. 14 (b) shows the boundary points when the effective area is defined by four connections
  • Fig. 14 (c) shows the boundary points when the effective regions are eight connections.
  • the boundary points are shown in gray.
  • the number of connections can be defined for each pixel.
  • the number of connections is the number of times that the pixel passes through the boundary trace.
  • the characteristics of the pixels can be classified as shown in Table 1 according to the number of connections.
  • the number of connections is calculated using the formulas (5) and (6)
  • N (i) ⁇ (f (x k )-f (x k ) f (x k + 1 ) f (x k + 2 ) (5) kec
  • Step 1 If there is a pixel that satisfies the right boundary condition in image f, go to step 2.
  • the pixel that satisfies the right boundary condition is a pixel in the effective area in which the right pixel of itself is the background area.
  • the effective pixel having the background area on the lower side, the left side, and the upper side is the lower boundary and the left side. Boundary, upper boundary.
  • Step 2 For all pixels that satisfy the right boundary in the image, calculate the number of connected pixels.
  • Step 3 Delete the pixels that are less than or equal to the connected power from the pixels calculated in Step 2. Pixels that are 2 or more are regarded as permanent storage points, and are not subject to deletion in subsequent iterations.
  • FIG. 16 shows the differences in thinned images due to differences in the number of connections.
  • the images in Fig. 16 are, in order from the left, the original image, the binary image, the fine line image based on the 8-connection definition, and the thin line image based on the 4-connection definition.
  • a diagonal line of 1 pixel width in a binary image is connected in the 8-link definition, but is broken in the 4-link definition.
  • edges that are represented by a width of 1 pixel in a binary image are considered to be extremely unreliable.
  • the original image on the left in Fig. 16 it can be confirmed that the edges surrounded by the frame are not actually connected. Also, the position of the intersection is easier to extract in the 4-link definition than in the 8-link definition. For these reasons, this system uses 4 consolidations to define the number of consolidations.
  • Fig. 17 (a) is the original image, (b) is the binary image, (c) is the fine line image, the right cell in the thin line image is the pixel at the intersection (number of connections 4), and the left frame The enclosed part shows the intersection that has been split into two branch points (3 connections).
  • a pixel (branch point, intersection point) with a connection number of 3 or more is searched from the image, and if it is a branch point, the force that the point is really a branch point, or Fig. 17 As shown in (c), it is necessary to check whether one intersection is a branching point.
  • Step 1 Scan the image and find a pixel with 3 or more connections.
  • Step 2 The following processing is performed for each pixel at the intersection / branch point found after scanning.
  • a path is found from the branch point pixel to another intersection point 'branch point pixel or end point'.
  • record the connection information with that intersection.
  • branch point check the length of the route to that branch point. If it is less than or equal to the threshold value, it is determined that one branch point is separated from this branch point pixel and the settled branch point, and the midpoint of these two branch points is the correct intersection point. . If it is equal to or greater than the threshold, the connection information with the branch point is recorded in the same manner as the intersection pixel.
  • the three-dimensional reconstruction of this system is performed with the mesh information power of three cameras on each camera PC and three-dimensional reconstruction is performed on the integrated PC.
  • the integrated surf snow which is the final data, is obtained by eliminating and integrating the matching parts.
  • the following describes the surface node generation method performed in each camera group and the surface node integration method performed on the integrated PC.
  • the camera power of adjacent platforms also generates surface nodes. Generating a surface node consists of the following three steps.
  • the surface node generated here is called the initial surface node.
  • New surface nodes are generated sequentially from the initial surface node using the combined information.
  • the surface node generated here is directly or indirectly combined with the initial surface node.
  • a collection of these surface nodes is called a surface node group.
  • the initial surface node that is the source of generation is called the center of this surface node group.
  • the surface node group is further expanded by allowing the surface node to be composed of two node vectors.
  • a surface node that consists of two node vector forces composed here is called a subsurface node.
  • V; n Node vector corresponding to.
  • E m j A set of image nodes directly connected to.
  • P n Surface node created from 3 node vectors.
  • P n A subsurface node created from two node vectors.
  • the surface nodes can be efficiently configured sequentially by drawing the surrounding edges. By using joint information, the number of distance calculations between node vectors for searching can be reduced, and the possibility of forming an incorrect surface node is also reduced. However, this must be reliable because the first configured surface node is the source of subsequent reconfigurations.
  • the first step is to find a reliable surface node.
  • the initial surface node is generated as follows. Here, the processing centering on camera C is described. B
  • Step 1 Select the image node N b.
  • Step 2 The center of the image node of camera C Image b + 1 that satisfies the following conditions
  • Step 3 Repeat the same process as step 2 for camera C. If N b_1
  • step 4 If b-l r is used, go to step 4, otherwise go to step 1.
  • Step 4 A surface node P is constructed using V b , V b + 1 , and V b_1 .
  • an initial surface node that is a basis for generating a surface node group is generated.
  • a strict threshold d is used for the intersection of node vectors.
  • the probability that an incorrect initial surface node will be generated is reduced by making the condition that the node vectors that are present intersect also be a condition for generation.
  • the surface nodes are sequentially generated by using the edges around the initial surface node to form the surface node group. This process is performed as follows.
  • Step 2 The surface node that is currently focused on is expressed as P (N b , N b + 1 , N b_1 )
  • satisfies d (v b , v b + 1 ) ⁇ d.
  • d is a loose threshold where d> d.
  • Step 3 Similarly, find N h ⁇ ⁇ E b_1 that satisfies the following conditions.
  • Step 5 Repeat Step 2 to Step 4 for all edges! [0070] By this procedure, a surface node group around the initial surface node P can be generated.
  • Step 1 Surface node P (N b , N b + 1 , N b_1 at the boundary edge of the surface node group
  • Step 2 Focused surface node P (N b , N b + 1 , N b_1 ) (or subsurf
  • Image node N b + 1 satisfying the following condition for the node ⁇ (hat) (N b , N b + 1 ))
  • a subsurface node P (hat) is constructed using V b and V b + 1, and the process of step 2 is also performed for this P (knot). If not found, go back to step 1 and repeat until all boundary surface nodes are checked.
  • Subsurface nodes are composed of two node vectors, so they are less reliable than surface nodes. Subsurface nodes are generated supplementarily after all surface nodes are generated by the above processing [A] and [B].
  • FIG. 1074 The flow of surface node generation by a group of three cameras is summarized in FIG.
  • Initial surface node One surface node group is obtained by sequentially generating surface nodes from Fig. 20 (a) (Fig. 20 (b)). By repeating this process, multiple surface node groups are generated (Fig. 20 (c)). If a new surface node group cannot be created, the surface node group is further expanded by allowing the sub surface node (Fig. 20 (d)). initial These are reliable because they use a strict threshold d when generating surface nodes.
  • this is a high surface node.
  • the surface nodes are constructed in order from the initial surface node using the connection information.
  • An incorrect surface node is generated by selecting the correct surface node.
  • the possibility is extremely low because it is only the case where three node vectors including the node vector corresponding to ⁇ meet by chance. Whether a surface node is correct or not depends greatly on the correctness of the surface nodes connected to it.
  • the generation of surface nodes uses joint information and uses a loose threshold d for intersection judgment, thereby reusing many highly reliable surface nodes efficiently.
  • the generated surface nodes are integrated to form an integrated surface node that also has the mesh information power of full power.
  • the surface node and subsurface node are collectively referred to as the surface node.
  • G b Camera group consisting of three cameras
  • V b Camera group (set of surface nodes in ⁇
  • the 72nd surface node in & The information of the surface node P b to which the camera group G force is also sent is as follows.
  • Fig. 22 (a).
  • the triangle apex represents the camera
  • the base represents the force projection plane
  • the straight line extending the camera force represents the no vector corresponding to the image node of the camera.
  • Surface node P b in the camera group G has the image node NN b + 1, N b 1 as a bi element. Meanwhile, surf pqr b + 1 in camera group G
  • S-node Pj b + 1 has N b , N b + 1 , and N b + 2 as components.
  • P b and P b + 1 use a common image pt 1 j dynode N b
  • the image node of camera C is N b + 1 , N b + 1 and p b + 1 qs different I am using something.
  • either the P b and P b + 1 is using the wrong N b
  • the integration process eliminates inconsistent surface nodes and integrates the matching surface nodes to obtain a more reliable integrated surface node.
  • the flow of surface node integration is shown in Figure 23A-C.
  • Fig. 23 Q in A shows the number of surface nodes created by the full power mela group.
  • J is a group of nodes.
  • the next i 0 Q-1 is processed in order from the surface node group J to J.
  • process A integrated process for P and surface node P connected to it
  • process B force to leave P b , determine whether to delete
  • P is performed on the target surface node P. If it is determined that P b should remain as a result of process B, P and Repeat process A for the connected surface nodes. If it is determined that P is to be deleted, do not perform process A on the surface node that joins P.
  • whether or not a surface node is correct depends greatly on the correctness of the connected surface nodes. By stopping the processing after the contradiction is found, the possibility of an incorrect surface node remaining is reduced.
  • processing A and processing B will be described in detail.
  • this process begins with the initial surface node force of the surface nodes.
  • Step 1 Pay attention to process B on the surface node P.
  • Step 2 If it is determined that P should remain as a result of processing B, proceed to step. If it is determined that it should be deleted, the process ends.
  • Step 3 Repeat process A for all surface nodes P connected to P.
  • Step 2 Search from the right camera group:
  • P k (N k , *, *) is an image node in the current surface node P k
  • N k is used as a component.
  • Figure 24 shows the search method. Focusing on components N k of P k, Find Safuesuno over de using N k from among the surface node P k + 1 in G. N surface node are using the k P k +1 (* *, N k) is checked when asked the following conditions are met there.
  • integration means that if there is a component of P k + 1 (* *, N k ) that is not among the components, it is newly registered as a component of P k .
  • Step 3 Search from the camera group on the two right:
  • the surface node currently focused on is expressed as P k (* N k + 1 , *).
  • Figure 25 shows a search for matching surface nodes from P. Focusing on the component N k + 1 of P k , search for a surface node P k + 2 (* *, N k + 1 ) using N b + 1 from P b + 2 . If P k + 2 exists, check if the force satisfies the matching condition used in Step 2.
  • the search process is terminated. As long as a matching surface node is found by the above process, the search target is advanced to the camera group in the right direction and the surface nodes are integrated.
  • the present invention can be used in fields such as robotics, biomechanics, sports science, medicine, and computer graphics. Brief Description of Drawings
  • FIG. 1 is a partial view of a mesh marker.
  • FIG. 2 Node information and edge information extracted from a two-dimensional image are shown.
  • FIG. 4 is a diagram showing a case of performing three-dimensional reconstruction of feature points without using edge information.
  • FIG. 5 is a diagram illustrating a case where feature points are three-dimensionally reconstructed using edge information.
  • FIG. 6 is an overall schematic diagram of a motion capture system according to the present invention.
  • FIG. 7 is a diagram showing a hardware configuration of a motion capture system according to the present invention.
  • FIG. 8 is a data flow diagram of a motion capture system according to the present invention.
  • FIG. 9 A diagram after processing in each step of the mesh information extraction algorithm is shown. From left to right are an original image, a sharpened image, a binary image, a thinned image, an extracted node and an edge image.
  • FIG. 10 is a diagram showing edge sharpening by a Laplacian operator.
  • FIG. 11 Filter matrix for edge sharpening.
  • Figure 14 (a) shows the original image
  • Figure 14 (b) shows the boundary points when the effective area is defined by four connections
  • Figure 14 (c) shows the boundary points when the eight areas are connected.
  • boundary points are shown in gray
  • Figure 14 (d) shows boundary tracking.
  • FIG. 16 Shows the difference in the fine line image due to the difference in the number of connections.
  • the images in Fig. 16 are, in order from the left, the original image, the binary image, the thinned image by the 8-link definition, and the thinned image by the 4-link definition.
  • FIG.17 The image after the thin line has the force S that the intersection point is expressed as two bifurcation points as shown in Fig.17.
  • Figure 17 (a) is the original image, (b) is the binary image, and (c) is the fine line image.
  • the square on the right is the pixel of the intersection (number of connections 4), and the part surrounded by the left frame is the intersection that has been divided into two branch points (number of connections 3).
  • FIG. 18 is a diagram showing generation of initial surface nodes.
  • FIG. 19 is a diagram showing mesh expansion using data from three cameras.
  • FIG. 20 is a diagram showing local three-dimensional reconstruction of feature points.
  • FIG. 21 shows an example of 3D reconstruction of an incorrect surface node based on the correct surface node.
  • FIG. 22 (a) is a diagram illustrating an inconsistency of surface nodes. (b) is a diagram illustrating the matching of surface nodes.
  • FIG. 23A is a flowchart of surface node integration processing.
  • FIG. 23B is a flowchart of processing A in FIG. 23A.
  • FIG. 23C is a flowchart of process B in FIG. 23B.
  • FIG. 24 is a diagram showing a search for matching or contradiction of surface nodes from adjacent cameras.
  • FIG. 25 is a diagram showing a search for matching or contradiction of surface nodes from two adjacent cameras.
  • FIG. 26 is a view showing a subject who is wearing clothing provided with a mesh marker.
  • FIG.27 The upper and lower figures show the partially enlarged views of the real-time 3D reconstruction experiment for the mesh markers shown in the left and right figures of Fig. 26, respectively.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

光学式モーションキャプチャシステムにおいて、計測点を増やすことで空間的に密度の高いデータを計測する。メッシュマーカを用いたモーションキャプチャシステムであって、メッシュマーカを構成する線の交差部分をノード、各ノードを結ぶ線をエッジとする。当該システムは、メッシュマーカを設けた対象物を撮影してメッシュマーカの二次元画像を取得する複数のカメラと、各カメラで撮影された二次元画像からメッシュマーカのノード・エッジ情報を検出するノード・エッジ検出部と、異なるカメラにより撮影された複数の二次元画像から検出されたノード・エッジの情報を用いてノードの三次元位置情報を求める三次元再構成部とを有する。

Description

明 細 書 る特徴点の三次元再構成法
技術分野
[0001] 本発明は、光学式モーションキヤプチヤシステムに関するものである。
背景技術
[0002] モーションキヤプチャ技術はエンターテイメントをはじめ、産業、医療等様々な分野で 利用されている。例えば CGアニメーションの分野では、モーションキヤプチヤによって 取得された人間の動きを CGキャラクタに適用することで、より自然な動きが実現され ている。映画やゲームをはじめとしたマルチメディア 'エンターテイメントにおける CG 画像の製作'開発分野では、 モーションキヤプチャはもはや必須の技術といえる。そ の他にも、モーションキヤプチャ技術は、ロボテイクス、バイオメカ-タス、スポーツ科 学、医学などさまざまな分野で活用されている。モーションキヤプチャ技術としては、 光学式、磁気式、機械式などがあり、光学式モーションキヤプチャはマーカの種類に よってさらに受動光学式モーションキヤプチヤと能動光学式モーションキヤプチヤに 分類される。
[0003] 現在のモーションキヤプチャ技術の中でも、被験者の周囲に配置された複数のカメラ で被験者を撮影し、その画像から得られる二次元情報を総合することによって三次元 位置情報を計算する光学式モーションキヤプチヤが、特に高速な運動で高!、精度が 要求されるアプリケーションに多用されている。これは、他の方式と比較して精度が高 い、被験者に対する拘束が少ない、磁気などの影響を受けないなどの理由による。
[0004] 光学式モーションキヤプチヤでは、画像処理を容易にするため被験者にマーカと呼 ばれる特徴点を取り付けることが多 、。複数の視点力 得られたマーカ位置情報を 総合することにより、三角測量の原理でマーカの三次元位置が計算できる。この処理 を三次元再構成といい、これを行うためには複数のカメラで検出されたマーカの対応 関係がわ力つている必要がある。三次元再構成後、マーカの三次元位置情報を人間 のリンク機構モデルの運動へマッピングすることにより、リンク機構の運動が得られる。 これは通常逆運動学計算によって行うが、そのために検出された各マーカが被験者 のどの部位に固定されているかがわ力つている必要があり、これを求める処理をラベ リングという。
[0005] 現在のモーションキヤプチャ方式は、人間を剛体リンクと関節からなるリンク機構とし てモデルィ匕し、その関節角を計測することを目的としている。しかし、アプリケーション によっては運動中の人体の形状変化まで含む詳細なデータを必要とするものもあり、 計測データの詳細化は重要な課題の一つである。ここでの詳細化とは計測点を増や すことで空間的に密度の高!、データを計測することを 、う。
[0006] 受動光学式モーションキヤプチヤでは再帰性反射材で覆われたマーカを使う。再帰 性反射材は常に光源の方向へ光を反射する性質があるので、カメラの近くに光源を 置くことによりマーカの検出が容易になる。またマーカ自身は発光しないため、被験 者に対する拘束は非常に小さい。しかし、マーカの区別がつかないため前述の三次 元再構成やラベリングが困難であり、マーカ数が増加すると処理量が指数関数的に 増加し、誤認識の確率も増大するという問題点がある。
[0007] 一方、能動光学式モーションキヤプチヤではマーカ自身が光源となっており、マーカ の色や点灯のタイミングを変えることで三次元再構成やラベリングが容易になる。しか し、マーカに電力を供給するためのワイヤが必要なため被験者に対する拘束が大き い。また、一度に使用できるマーカの数に制限があり、複数の被験者の運動を同時 に計測するのが難しい。
[0008] このように、従来の光学式モーションキヤプチヤにおいて高詳細なデータを得るため には、マーカ数を増やす必要がある力 特に、
(1)従来の受動光学式モーションキヤプチヤでは、マーカを近距離に配置した場合 には、マーカの三次元位置の計算における異なる視点から撮影されたカメラ画像間 でのマーカの対応付けを間違える可能性が高くなり、三次元位置の計算が困難にな る;
(2)従来の受動光学式モーションキヤプチヤでは、マーカ数が増加すると処理量が 指数関数的に増カロしてしまう;
(3)従来の能動光学式モーションキヤプチヤでは、物理的にマーカ数に制限がある; という理由から、従来の光学式モーションキヤプチャ方式ではマーカ数を大幅に増加 するのは困難である。
[0009] モーションキヤプチャ以外には以下のような類似技術がある。ステレオ視では画像か ら特徴点を自動的に抽出して三次元再構成を行っている。しかし、処理に時間がか 力るため運動の計測に適用するのは難しい。またモーションキヤプチヤと同等の精度 を得るのも困難である。多数の点の三次元位置を高精度で計測する技術としてレー ザのパターンなどを対象物に照射してそれをカメラで撮影することにより物体の三次 元形状を計測する三次元スキャナがある。しかし、レーザを対象物全体に照射するの に一定の時間がかかり、運動する物体の計測は難しい。また、これらの方法は現在の 光学式モーションキヤプチヤとは全く異なる原理に基づいており、導入にはハードウ エア ·ソフトウェア両方の置き換えが必要となる。
発明の開示
発明が解決しょうとする課題
[0010] 本発明は、モーションキヤプチヤシステムにおいて、計測点を増やすことで空間的に 密度の高いデータを計測することを目的とするものである。
[0011] 本発明の他の目的は、モーションキヤプチヤシステムにおいて、空間的に密度の高 V、データを計測する場合の計算量を抑えることを目的とするものである。
課題を解決するための手段
[0012] 本発明が採用したモーションキヤプチヤシステムは、メッシュマーカを用いるものであ り、メッシュマーカを構成する線の交差部分をノード、各ノードを結ぶ線をエッジとし、 ノードが特徴点の位置情報を提供し、エッジが特徴点同士の結びつきを示す結合情 報を提供する。本発明に係るモーションキヤプチヤシステムは、メッシュマーカを設け た対象物を撮影してメッシュマーカの二次元画像を取得する複数のカメラと、各カメラ で撮影された二次元画像からメッシュマーカのノード'エッジ情報を検出するノード' エッジ検出部と、異なるカメラにより撮影された複数の二次元画像カゝら検出されたノ 一ド ·エッジの情報を用いてノードの三次元位置情報を求める三次元再構成部とを有 する。
[0013] 本発明が採用した光学式モーションキヤプチヤにおける特徴点の三次元再構成方法 は、メッシュマーカを用いたものであって、メッシュマーカを構成する線の交差部分を ノード、各ノードを結ぶ線をエッジとし、ノードが特徴点の位置情報を提供し、エッジ が特徴点同士の結びつきを示す結合情報を提供する。当該方法は、複数のカメラに よって、メッシュマーカを設けた対象物を撮影してメッシュマーカの二次元画像を取 得する画像取得ステップと、各カメラで撮影された二次元画像からメッシュマーカのノ ード 'エッジ情報を検出するノード'エッジ検出ステップと、異なるカメラにより撮影され た複数の二次元画像力も検出されたノード'エッジの情報を用いてノードの三次元位 置情報を求める三次元再構成ステップとを有する。本発明は、さらに、光学式モーシ ヨンキヤプチヤにおける特徴点の三次元再構成方法をコンピュータに実行させるため のコンピュータプログラム、あるいは、当該コンピュータプログラムを記録した記録媒 体を含む。
本発明では、通常の光学式モーションキヤプチヤシステムで用いる球状のマーカ(特 徴点)の代わりにメッシュ状のマーカを対象物 (被験者)の表面の少なくとも一部に張 り付ける点に特徴を有している。このマーカをメッシュマーカと呼び、その例を図 1に 示す。メッシュマーカは、これを構成する線が画像処理で検出できるほど十分コントラ ストの高いパターンであるのが望ましい。例えば、受動光学式モーションキヤプチヤに おける球状マーカと同様に再帰性反射材を用いてメッシュマーカを製作し、照明を力 メラの近くに置くと最も検出が容易になるが、必ずしもこの限りではない。本発明は、 受動光学式モーションキヤプチヤシステムに限定されるものではなぐ例えば、蓄光 材料からメッシュマーカを製作することで、能動光学式モーションキヤプチヤに適用す ることも可能である。メッシュマーカは、衣料や、特殊なタイツなどに貼り付けてもよい し、体の表面に直接描いてもよい。衣料は、対象物の少なくとも一部を覆うものであれ ばよぐいかなる被服、帽子、履物が含まれる。顔の表情運動の計測では直接描くこ とが望まれるであろう。また、パターンは図 1のような方眼紙状 (各ノードが方形の頂点 を、各エッジが方形の辺を、それぞれ構成する)であっても良いし、三角形等の多角 形 (各ノードが多角形の頂点を、各エッジが多角形の辺を、それぞれ構成する)等、 他の形状であってもよい。本明細書では、メッシュマーカ上のテープの交点部分をノ ード、ノード間を結ぶ線をエッジと呼び、ノードを従来の球状のマーカにあたる特徴点 とみなす。エッジはノード同士の結合情報を提供するものであり、直線でも曲線でもよ い。また、二次元画像中のノードをイメージノード、三次元空間中のノードをサーフエ スノードと呼ぶ。システムの最終的な出力は、サーフェスノードの位置情報である。こ こで、 1台のカメラで計測されたノードは三次元空間上においてはカメラ位置力もの 1 本の直線 (ノードベクトル)として表現され、ノードベクトルの交点を計算することでサ 一フェスノードの位置情報を取得する。通常、 2直線 (ノードベクトル)が完全に交わる ことはないため、一つの態様では、 2直線間の距離が最小になる線分の長さと予め設 定した閾値とを比較し、線分の長さが閾値よりも小さい場合には 2直線は交わってい ると判定し、該線分上の 2点の中点を交点とする。また、エッジの三次元情報としては 位置や方向がある力 これらはエッジの両端のノードの三次元位置がわかれば計算 できるので、ノードの三次元再構成ができれば自動的にエッジの三次元再構成が可 能である。エッジの三次元情報は、例えばポリゴンを再構成するときに用いることがで きる。
本発明では、特徴点の三次元再構成 (サーフェスノードの生成)において、既に三次 元再構成されているイメージノードの結合情報を用いて、ノードベクトル同士が交わる 複数のイメージノードを探索する際に、探索候補となるイメージノード数を削減するこ とができる。一つの好ましい態様では、特徴点の三次元再構成 (サーフェスノードの 生成)においては、先ず、厳格な条件を課すことによって、より正確なノードの三次元 位置情報である初期サーフェスノードを生成する。初期サーフェスノードを生成した 後は、エッジによって提供されるノード同士の結合情報を利用することで、初期サー フェスノードを中心としてサーフェスノード群を拡大していく。一つの態様では、三次 元再構成部は、複数のカメラの複数のノードベクトルの交差を判定する交差判定手 段を有し、該交差判定手段は、より厳格な第 1の交差判定条件とより緩い第 2の交差 判定条件とを有し、第 1の交差判定条件により選択された交点を初期サーフェスノー ドとする初期サーフェスノード生成手段と、初期サーフェスノードを構成するイメージノ ードとエッジによって結合しているイメージノードに対応するノードベクトルの中から、 第 2の交差判定条件により選択された交点をサーフェスノードとするサーフェスノード 群生成手段とを有する。サーフェスノード群生成手段は、さらに、生成されたサーフエ スノードを構成するイメージノードとエッジによって結合しているイメージノードに対応 するノードベクトルの中から、第 2の交差判定条件により選択された交点をサーフェス ノードとする。初期サーフェスノードの生成においても、エッジによって提供される結 合情報を利用することができる。一つの態様では、初期サーフェスノード生成の交差 判定条件は、初期サーフェスノードを構成するイメージノードとエッジによって結合し て 、るイメージノードに対応する一組あるいは複数組のノードベクトル同士も交差す るかどうかの交線判定を含む。また、一つの態様では、交線判定条件は、ノードべタト ル間の距離を判定するための閾値を含み、初期サーフェスノードを生成するためのノ ードベクトル間の距離には小さい閾値を設定し、初期サーフェスノード以外のサーフ エスノードを生成するためのノードベクトル間の距離には大きい閾値を設定する。さら に、交線判定条件は、交線数を含むものでもよい。例えば、 2本のノードベクトルがあ る閾値で交わる条件よりも、 3本のノードベクトルがある閾値で交わる条件の方が厳格 な条件となる。
[0016] 複数のカメラは、通常、対象物を取り囲むように配置されて 、る。一つの好ま 、態様 では、複数のカメラは、複数のカメラ群から構成されており、各カメラ群毎にノードの 三次元位置情報を取得する。この場合、各カメラ群は、隣接する一連の複数のカメラ 力も構成するのがよい。そして、隣位のカメラ群は、少なくとも一つの共通のカメラを 有していることが望ましい。一つの例では、各カメラ群は 3つのカメラ力 構成されて おり、各カメラ群は、 3つの内の 2つのカメラを共有している。
[0017] 一つの好ましい態様では、ノードの三次元位置を計算するための処理はイメージノー ド.エッジ検出部、サーフェスノード生成部(ローカル三次元再構成部)、データ統合 部からなる。三次元再構成部は、サーフェスノード生成部とデータ統合部から構成さ れる。各部で行う処理を以下に示す。
[0018] (a)イメージノード'エッジ検出部
まず、各カメラで撮影された画像カゝらイメージノード ·エッジを以下の手順で検出する
(1)カメラで撮影したグレースケール画像に対して、ラプラシアンオペレータを用いて 鮮鋭ィ匕処理を行 、、さらにその鮮鋭画像を二値化する。 (2)二値画像に対して細線化処理を行う。
(3)細線画像力 線の交点にあたるイメージノードとそれらの繋がりにあたるエッジを 抽出する。
アルゴリズムの詳細に関しては、後述する。但し、本発明が採用し得るイメージノード •エッジ検出部の構成およびノード.エッジ検出ステップは、このものに限定されるもの ではなぐノード及びエッジが検出できるものであれば、他の画像処理手段を用いて も良い。
[0019] (b)サーフェスノード生成部(ローカル三次元再構成部)
次に、隣接する複数 (3台が例示される)のカメラを 1つのカメラグループとし、各ダル ープに属するカメラにおける画像力も検出されたイメージノード'エッジ情報力もサー フェスノードの三次元位置を計算する処理がローカル三次元再構成である。カメラが 全部で N台あるとき、そのようなグループは N個あり、これらすべてについて三次元再 構成を行う。
[0020] 各イメージノードに対し、対応するサーフェスノードが存在すると推定される、カメラの 焦点位置を始点とするベクトルを考えることができる。これをノードベクトルと呼ぶ。複 数のカメラからのノードベクトルが交差すれば、その交点にサーフェスノードが存在す ると推定することができるが、実際にはカメラのキャリブレーション誤差やイメージノー ド抽出時の誤差により厳密に交差することは少ない。これを考慮して、以下の手順に より三次元再構成を行う。
[0021] (1)複数 (3台が例示される)のカメラのノードベクトルの中力もユーザが与えた閾値以 下の距離で交差する組み合わせを見つける。交差するノードベクトル数が多 、ほど( 例えば、 2本より 3本)、また、閾値が小さいほど、要件が厳格となる。交差するノード ベクトルの組み合わせが見つかったら、そのサーフェスノードとエッジによって結合し ているサーフェスノードに対応するであろう一組あるいは複数組のノードベクトル同士 も交差するかどうかを閾値を用いて確認する。それらのノードベクトル同士が交差して 初めて先ほどのノードベクトルの組み合わせが正し 、組み合わせであると判断し、そ の交点にサーフェスノードがあるとする。このノードを初期サーフェスノードと呼ぶ。
[0022] (2)既に見つ力つたイメージノードの組み合わせを元に、それらとエッジによって結合 しているイメージノードに対応するノードベクトルに対して交差するかどうかの判定を 行う。ここでの交差判定の閾値は初期サーフェスノード生成に用いた閾値よりも大き い値に設定しておく。結合情報を利用することにより、ひとつのイメージノードに対し て探索するノードベクトルの候補はたかだか 4つに絞られる。以上の処理を未調査の エッジに対して繰り返す。
[0023] (3)まだ再構成に使われて!/、な 、イメージノードが残って 、たら、(1)に戻る。それ以外 の場合は終了する。あるいは、さらに緩い条件でサーフェスノードを生成してもよい( サブサーフェスノードの生成)。例えば、上記 (1)(2)では、 3本のノードベクトルの交点 にサーフェスノードを生成する力 サブサーフェスノードの生成では、 3本のノードべ タトルの交点にサーフェスノードを生成する。
アルゴリズムの詳細に関しては、後述する。
[0024] (c)データ統合部
ある隣接する 2台のカメラを含むカメラグループは 2つあり、ローカル三次元再構成部 では各々のグループで独立にノードベクトルの組み合わせを求めていた。したがって 、それらの組み合わせが一致している場合と矛盾する場合があり得る。一致する場合 にはそれらの情報を統合し、矛盾する場合にはどちらが誤っているかを判定するの がデータ統合処理である。一つの態様では、サーフェスノードが一致する力矛盾する かの判定は、二つのサーフェスノード間の距離が所定の閾値以下であること、及び、 同じカメラ画像中の異なるイメージノードを利用していないこと、の二つの条件を満た すか否かによって判定され、これらの条件を満たす場合にはサーフェスノードを統合 する。また、一つの態様では、サーフェスノードの統合は、一致したサーフェスノード 間におけるイメージノードの統合を含み、統合されたイメージノードを用いてサーフエ スノードの位置を更新する。二つのサーフェスノードが矛盾する場合には、使用して いるノードベクトルの数が多い方を残し、少ない方を削除する。また、ノードベクトル本 数が同じ場合は、ノードベクトル間の平均距離が最も小さいものを選択する。アルゴリ ズムの詳細に関しては、後述する。
[0025] 以上の処理を行うための計算機の構成は自由であるが、複数のカメラ画像力ものィメ ージノード'エッジ検出処理、および複数のカメラグループにおける三次元再構成処 理がそれぞれ独立に実行できることを考慮すると、これらを別の CPUで並列に処理し
、必要であれば計算機間をネットワーク接続するのが計算時間の点力も望ましい。 そのようなシステムの実現例を図 8に示す。また、この例における処理の流れを以下 に示す。
[0026] (1)データ統合部がイメージノード'エッジ検出部に対して、検出命令を送信する。ィ メージノード ·エッジ統合部はその時点の最新の画像を利用して、イメージノードとェ ッジを検出する。検出結果を該当するローカル三次元再構成部とデータ統合部に送 る。
(2)ローカル三次元再構成部はそれぞれ隣接するカメラ 3台分のイメージノード'エツ ジ検出結果を受け取る。該当するカメラの検出結果を全て受け取ったら三次元再構 成計算を行う。計算されたサーフェスノードの三次元位置とエッジによるノード間の結 合情報はデータ統合部に送られる。
(3)データ統合部は全てのローカル三次元再構成結果を受け取ったらデータ統合処 理を行う。このデータ統合部によって最終的なサーフェスノードとエッジの三次元再 構成結果を得る。
詳細は、後述する。
発明の効果
[0027] 本発明に係る光学式モーションキヤプチヤシステムでは、メッシュマーカの結合情報 を特徴点 (ノード)の三次元再構成に利用することにより、ノード数の増加による計算 量 (計算時間)の増加を抑えつつ、空間的に密度の高いデータを取得することができ る。本発明に係るモーションキヤプチヤシステムは、通常のマーカの替わりに、特徴点 間に結合情報を持つメッシュマーカを用いることで、近距離にマーカが多数存在して も誤りの少ない三次元再構成をリアルタイムに実現する。また、本発明に係るモーショ ンキヤプチヤシステムは、特別なハードウェアを用いないため、ソフトウェアとマーカの 変更のみで従来の光学式モーションキヤプチヤシステムをそのまま利用することがで きる。また、三次元再構成を、ローカル三次元再構成処理 (例えば、 3台ずつのダル ープによる処理)と全体を統合するサーフェスノード統合処理に分けることによって、 計算の高速化とデータの信頼性の向上を実現した。 発明を実施するための最良の形態
[0028] [1]マーカの結合情報を利用したモーションキヤプチヤシステム
[1 1]マーカの結合情報
本システムでは通常の球状マーカの替わりに再帰性反射テープをメッシュ状に配置 したマーカ(以下メッシュマーカと呼ぶ)を用いる。図 1にメッシュマーカの部分図を示 す。テープの交点をノード、ノード同士を結ぶ線をエッジと呼ぶ。通常の球状マーカと 異なり、メッシュマーカではそれぞれのノードは結合情報を持っている。結合情報とは 、どのノード同士がエッジによって結びついているかという情報である。このメッシュマ 一力の持つ結合情報を利用することにより、ノードの三次元位置をより正しく推定する ことができる。以下に結合情報を利用した場合と、結合情報を利用しない場合での三 次元再構成法の違 ヽにつ ヽて述べる。
[0029] [1 2]結合情報を利用した三次元再構成
本システムでの三次元再構成とは、メッシュマーカを異なる視点から撮影した複数枚 の二次元画像をもとに、三次元上でのノードの位置とそれらを結ぶエッジを再現する ことである。メッシュマーカを撮影した画像からは図 2に示されるような二次元画像中 でのメッシュ情報が得られる。メッシュ情報は二次元画像上でのノードの位置の情報( node list)とその結合情報を記述したリスト (edge list)力 なっている。例えば、 node list 1(50,50)は、 1番のノードの位置が座標 (50,50)であることを示しており、 edge list 1(2,4 )は、 1番のノードは 2番のノード及び 4番のノードに結合して!/、ることを示して!/、る。
[0030] 本明細書では、ノード及びエッジに係る用語を、以下のように定義する。
イメージノード:二次元画像上でのノードであり、ノードの二次元位置情報を構成す る。
イメージエッジ:二次元画像上のノードを繋ぐエッジである。
サーフェスノード:三次元上に再構成したノードであり、ノードの三次元位置情報を 構成する。
サーフェスエッジ:三次元上のノードを繋ぐエッジである。
メッシュノード:実際のメッシュマーカのノードである。
メッシュエッジ:実際のメッシュマーカのエッジである。 ノードベクトル:カメラ位置を始点としてイメージノードを通って延出するベクトルであ り、このベクトル上にサーフェスノードがあると推定される。
[0031] 光学式モーションキヤプチヤにおいて三次元再構成は一般に次の方法で行われる。
なお、以下の説明においては便宜上、球状マーカにおいても二次元画像中におけ るマーカ像をイメージノード、三次元上に再構成したマーカをサーフェスノード、実際 のマーカをメッシュノードと呼ぶ。カメラ画像中のイメージノードは三次元空間中では カメラ位置から引かれる 1本の直線として表現される。そのイメージノードに対応するメ ッシュノードは三次元空間中のこの直線上のどこかに存在すると推定される。この直 線をノードベクトルと呼ぶ(図 3)。サーフェスノードの三次元位置は複数カメラのノー ドベクトルの交点として求まる。三次元位置計算では異なる視点のカメラ画像間から 同一のメッシュノードを指し示して 、るイメージノードを対応付ける必要がある力 これ はノードベクトル同士が交わるイメージノードを探索することで行う。近距離にメッシュ ノードが多数存在する場合にはイメージノードの対応付けを間違える可能性が高くな る。また、マーカ数を M、カメラ台数を Nとすると探索のための計算量は MNのオーダで 増加するため、マーカ数が増えると爆発的に増加する。
[0032] 本発明においては、メッシュマーカの結合情報を利用することにより、間違ったノード ベクトルの組を選択する可能性を減らし、マーカ数の増加に伴う計算量の増加を抑 えることができる。三次元再構成にマーカの結合情報を利用しないものと、マーカの 結合情報を利用したものとの違いを図 4、図 5に示す。図 4が結合情報を利用しない 三次元再構成、図 5が結合情報を利用した三次元再構成の様子を示している。結合 情報を利用しな 、三次元再構成では図中の Aのマーカが再構成されて 、る場合に おいても、左側カメラ画像中の bのイメージノードと対応するものを見つけるには、右 側カメラ画像中の全イメージノードからイメージノードを探索しなければならな 、。そ のため、交差するノードベクトルが複数本存在した場合には対応するイメージノードを 特定することは難しい。結合情報を利用する三次元再構成においては、左側カメラ 画像中の bのイメージノードと対応しているものの探索はマーカ Aとの結合情報により 、右側カメラ画像中の β、 yに絞られる。そのため交差するノードベクトルが複数本存 在する可能性が低ぐまたマーカ数の増加による計算量の増力 tlも少ない。 [0033] [1 3]システム概要
本システムの概要図を図 6に示す。本システムはイメージノード抽出(Extraction)、サ 一フェスノード生成(Reconstruction)、サーフェスノード統合(Integration)の 3つのス テツプからなる。各カメラで撮影された画像において、それぞれに備え付けられた PC (カメラ PC)で画像処理されメッシュ情報が抽出される。サーフェスノードの生成は各 カメラ PCで、ある一つのカメラとその両隣のカメラの計 3台分のカメラ力 得られたメッ シュ情報をもとに行われる。各カメラ PCで計算されたサーフェスノードの三次元再構 成結果を統合用 PCが統合することで最終的な再構成結果を得る。統合によって得ら れるサ一フェスノードを特に統合サーフェスノードと呼ぶ。再構成計算をカメラ 3台ず つのグループに分けたのは計算の高速ィ匕とデータの信頼性向上のためである。これ については後述する。本システムでは 10台のカメラを用いており、 10個のグループ でそれぞれサーフェスノードが生成される。統合サーフェスノードは各カメラグループ で独立に計算されたサーフェスノードから矛盾部分を排除し、一致する部分を統合し て得られるため信頼性が高 、。
[0034] [1 -4] システム構成
[1—4 1]ハードウェア構成
本システムのハードウェア構成を図 7に示す。
以下、各構成要素についての特徴を述べる。
[0035] [高解像度カメラ]
Adimec社製の高解像度カメラ Adimec- 1000mを 10台用いる。同カメラは 1000x1000画 素、 10[bit]グレースケールを有し、非同期モードでは 50¾s]、外部パルスによる同期 モードでは 40¾s]の撮影が可能である。本システムでは同期モードで使用して 、る。 カメラの配置はスタジオの外周に沿った天井付近に、スタジオ中央に対して概ね等 角度間隔になるようになつている。
[0036] [LED照明]
各カメラには円形の LED照明が取り付けられている。本システムでは再帰的反射性を 持つメッシュマーカを撮影対象とする。各カメラに備え付けられた LED照明から発せ られた光線カ ッシュマーカを構成する再帰性反射テープによってそれぞれのカメラ 方向に強く反射され、マーカ部分のみの強調されたカメラ画像を得ることができる。
[0037] [パルスジェネレータ]
各カメラにはパルスジェネレータ力ものトリガが送られる。このトリガによりカメラ間での 撮影タイミングの同期が取られる。
[0038] [PCクラスタ]
カメラ 1台につき PC 1台(以下カメラ PCと称す)計 10台を、システム全体の統合用とし て PC 1台(以下統合 PCと称す)を使用する。各々の PCの役割については後述する。 なお各 PC間でのデータの送受信には MPI (Message Passing Interface)を用いる。
[0039] [ 1 -4 - 2] ソフトウェア構成
1—3で述べたようにシステムはイメージノード抽出、サーフェスノード抽出、サーフエ スノード統合の 3種類のプロセス力もなる。このうちイメージノード抽出、サーフエスノ ード生成のプロセスは、それぞれカメラ、カメラグループで独立に計算できる。この 2 つのプロセスを各カメラ PCで並列に計算し、サーフェスノード統合処理を統合 PCで 行う。実際の計測時のデータの流れを図 8に示す。
[0040] カメラからの画像取得はカメラプロセス中、 Thread aにより以下の処理で行われる。
(a)パルスジェネレータが撮影のタイミングを発信すると、画像キヤプチャボードを介 してカメラに画像取得指令が伝わる。
(b)カメラ力もカメラ PCに画像が転送され、同 PC内のループバッファメモリにイメージ が書き込まれる。
[0041] 三次元再構成計算は以下の処理による。
( 1)統合プロセス力 カメラプロセスへ画像処理命令が送られる。
(2)画像処理命令を受信すると、カメラプロセスはループバッファメモリ内の最新のィ メージ画像を使用してイメージノードを抽出する。
(3)カメラプロセスはイメージノードデータを統合プロセス、自身とその両隣の再構成 プロセスに送信する。
(4 - a)統合プロセス内のデータ受信監視スレッド(Thread γ )はイメージノードデータ を受信したらループバッファにそのデータを保存する。
全力メラプロセスカゝらデータを受信したら、画像処理命令を送る(Step ( 1)へ)。 (4-b)再構成プロセスは、カメラ 3台分のイメージノードデータを受信したら再構成 計算を行う。
(5)再構成計算が終了したら、 サーフェスノードデータを統合プロセスへ送る。
(6)データ受信監視スレッドはサーフェスノードデータをループバッファに保存する。 全再構成プロセス力 データを受信したら、統合計算スレッド (Thread δ )に統合計 算命令を送る。
(7)統合計算を行!、、統合サーフェスノードの時系列データを得る。
[0042] (a)、(b)は画像を撮影する処理であり、外部パルスをトリガに (1)〜(7)とは無関係に動 く。(1)〜(7)は実際に画像処理、再構成、総合計算を行う処理である。統合プロセス が各カメラ PCに画像処理命令を送ることで同期のタイミングを管理している。モーショ ンキヤプチヤのフレームレートは画像処理プロセスの計算時間に依存する。
[0043] [2]メッシュ情報抽出アルゴリズム
[2— 1]メッシュ情報抽出の概要
撮影されたグレースケール画像からイメージノードの位置とイメージエッジを抽出する 。この処理が全体のフレームレートを決定し、三次元再構成の精度にも影響を及ぼ すため、高速でかつ、可能な限り正確にメッシュ情報を抽出するアルゴリズムが求め られる。メッシュ情報の抽出は以下の処理に従う。
(1)鮮鋭化:画像のコントラストを強め、メッシュマーカ部とそれ以外の箇所の差異を 明確にする。
(2) 2値化:鮮鋭化された画像に対して値化処理を行う。
(3)細線化: 2値化画像から芯線を抜き出す。
(4)情報抽出:細線ィ匕画像からイメージノードの位置とその結合情報を抽出する。 図 9に原画像力 メッシュ情報抽出までの流れを示す。以下、各々の処理について 述べ。。
[0044] [2— 2]鮮鋭化 · 2値化処理
イメージノードの結合情報を得るための細線ィ匕画像は 2値画像をもとに得られるため 、その結合性は 2値ィ匕の閾値によって左右されることがある。その影響を低減するた め、 2値ィ匕前にエッジの鮮鋭ィ匕処理を行い、メッシュマーカが張られている部分とそ れ以外の部分との差異を強調する必要がある。鮮鋭ィ匕には空間フィルタ法を用いる 。空間フィルタ法は、画像 も二次微分画像广(ラプラシアン)を引く処理である。二 次微分画像を引くことにより、濃度変化にオーバシュートとアンダシュートを形成し、 結果としてエッジの傾斜を強調した画像の鮮鋭ィ匕を実現できる。
[0045] 図 10に原画像と鮮鋭化画像の濃度変化の様子を示す。図 10は画像中のある軸に 沿った画像の濃度変化を表している。図中の横軸が画像中の軸、縦軸が濃度を表し ており、一点鎖線が原画像 fの濃度変化、鎖線が二次微分画像!^を正負反転したも の、実線がエッジ鮮鋭ィ匕画像 gである。画像中の冽 j行目の画素の濃度を f(i, j)とす ると、ラプラシアンオペレータは式(1)で定義される方向性差分 △!"、方向性二 次差分△ △ 2はり式 (2)で表される。
[0046] [数 1]
Δ¾· / , j) =麵― f(t一 1,3)
Δ = Δ,,/(?; + 1, j)— Af(t. j)
Figure imgf000017_0001
[数 2]
2 , J)
(Δ,/(ί + 1, j)― A (i,j)) + + 一
Figure imgf000017_0002
{(/(' + — /( ))— (/ , J)— — 1, .?·))}
十 {(/( ■ + 1) - /(. .))一 ( ― f(t,j一 1))}
(/ + + f{t― 1 .) + f( ,J + 1) + f(i,J - 1))
-4/ , J) したがってエッジ鮮鋭ィ匕画像 g(i, j)は式(3)となり、図 11のフィルタによって実現でき る。
[数 3]
= 5/ , J) - (f(i + ,3) + f(t— 1, J) + fit,: j + 1) + f(i,J - 1)) (3)
[0047] 鮮鋭化後の画像に対して 2値化処理を行い、 2値画像を得る。 2値化処理は次式によ つて行われる
[数 4]
Figure imgf000018_0001
fが 2値画像であり、 1を有効領域(白領域)、 0を背景領域 (黒領域)の値に割り当て
T
る。以後、有効画素といった場合には fの
T 画素(白色画素)を指す。実際には効率ィ匕 のため、鮮鋭化処理、 2値化処理、さらに有効範囲の選択までを同時に行う。有効範 囲とは有効画素の存在する画像範囲のことであり、ここでは矩形で選択して 、る。
[0048] [2— 3]細線化処理
ノードの位置、連結情報を抽出するため、 2値画像に細線化処理をほどこす。細線化 処理とは位相的な連結性が変わらないように線図形の線幅を 1に細める処理である。 細められた線を芯線という。細線ィ匕された図形からは線分のつながりを容易に求める ことができる。細線ィ匕処理には次の条件を満たすことが求められる。
參 芯線の線幅が 1になる。
參 芯線の位置が線幅の中心になる。
參 図形の連結性が保存される。
細線ィヒ処理の前に隣接画素と連結数の定義を記す。以下は 2値画像を対象におい ている。
[0049] [隣接画素と連結性]
隣接画素には 4 近傍、 8 近傍の 2種類の定義がある。ある画素に対して上下左右 にある 4画素を 4 近傍という。 4 近傍の画素に加え、さらに斜めの 4画素を含めた ものを 8—近傍という。隣接画素を用い、画素同士の間には連結性の定義ができる。 ある二点間に隣接する有効画素を迪る経路が存在すればその二点は連結していると いう。連結性は隣接画素の定義によって異なり、 4 近傍で定義したときの連結を 4 連結、 8 近傍で定義したときの連結は 8連結という。図 12 (a)は 8連結している 2点 間 A—Bの経路を示している。図 12(b)のように 4連結で定義した場合には A—Bの間 には経路が存在せず、これら 2点は連結していない。連結した画素の集合を連結成 分という。図 13に各連結定義における連結成分の解釈を示す。(a)は原画像、(b)は 4 近傍の定義による連結成分、(c)は 8—近傍の定義による連結成分である。連結の 定義により、連結成分が結合したり分断されたりする。どちらの連結定義を用いるか は使用するケースに合わせて適宜選択する。
[0050] [連結数]
2値画像の有効領域は背景領域と隣接する境界点の集合と背景に隣接して 、な 、 内部点の集合力もなる。図 14に境界点の様子を示す。図 14(a)が原画像であり、図 1 4(b)が有効領域を 4連結で定義した場合の境界点、図 14(c)が 8連結の場合の境界 点を示して 、る。図 14中で境界点は灰色で表されて 、る。
[0051] このように定義された連結成分の境界点をたどることを境界線追跡(図 14(d))という。
境界線追跡を利用することにより、各画素に連結数を定義することができる。連結数 とは境界線追跡をしたとき、その画素を通過する回数であり、連結数により画素の特 徴を表 1のように分類することができる。連結数は式(5)、 (6)に示す式で計算される
[表 1]
Feature oi pixel defined by connectivity number
Figure imgf000019_0001
[数 5]
(4連結の場合) N(i) = ∑(f (xk) - f (xk)f (xk+1 )f (xk+2) (5) kec
(8連結の場合) N(8) - X: (/(¾) - (.¾) (.¾+1)/(¾+2) (6) kcC ここで xは図 15に示す位置であり、 C= l, 3, 5, 7, f (バー) = l—f, x9 =xlである k
[0052] 以上で定義された連結数を用いて線図形の細線ィヒを行う。境界点に相当する画素 を探し、その画素を消しても図形の位相が変わらない場合には削除する。これを繰り 返すことで細線ィ匕を行う。細線ィ匕処理は以下による。
[0053] [細線化アルゴリズム]
(1)ステップ 1: 画像 f中に右側境界条件を満たす画素があればステップ 2へ進む。 ここで右側境界条件を満たす画素とは、自身の右側の画素が背景領域である有効 領域中の画素であり、同様に下側、左側、上側に背景領域を持つ有効画素を下側 境界、左側境界、上側境界という。
(2)ステップ 2 : 画像中の右側境界を満たす全ての画素に対して、その画素の連結 数を計算する。
(3)ステップ 3 : ステップ 2で計算した画素のうち、連結数力 ^以下であった画素を削 除する。 2以上であった画素は永久保存点とし、これ以降の反復処理では削除の対 象としない。
ステップ 1、 2、 3を下側境界、左側境界、上側境界に対しても行う。右、下、左、上側 境界点削除の一連の流れの中で削除される画素がなくなるまでこれを繰り返す。
[0054] 連結数の定義によって細線ィ匕後の画像は異なる。図 16に連結数定義の違いによる 細線化画像の違いを示す。図 16中の画像は左カゝら順に原画像、 2値画像、 8連結定 義による細線ィ匕画像、 4連結定義による細線ィ匕画像となっている。 2値画像中の幅 1 ピクセルの斜めの線は 8連結定義では連結されるが、 4連結定義では分断される。し かし、 2値画像中で幅 1ピクセルで表されるようなエッジは極めて信頼性が低 、と考え られる。図 16左の原画像を見ると枠で囲まれたエッジは実際には繋がっていないも のであることが確認できる。また、交点の位置も 8連結定義に比べて 4連結定義の方 が抽出が容易である。以上の理由から、本システムでは連結数の定義に 4連結を用 、ることにする。
[0055] [2— 4]ノードの位置'連結情報の抽出
細線ィ匕画像から交点とその交点間の連結性を抽出する。既述のように連結数によつ て画素の特徴を分類することができる。交点は連結数力 の画素である。しかし、実 際には、細線ィ匕後の画像は図 17のように交点が 2つの分岐点として表現されてしまう ことがある。図 17(a)が原画像、(b)が 2値画像、(c)が細線ィ匕画像であり、細線化画像 中の右側のマスが交点 (連結数 4)の画素、左側の枠で囲まれた部分が 2つの分岐点 (連結数 3)に分かれてしまった交点を示している。イメージノードの抽出処理では画 像中から連結数が 3以上である画素 (分岐点、交点)を探索し、分岐点であった場合 にはその点が本当に分岐点であるの力、あるいは図 17 (c)のように 1つの交点が分か れてできた分岐点であるのかを確認する必要がある。
[0056] イメージノードとイメージエッジの抽出は以下の処理による。
(1)ステップ 1 : 画像を走査し、連結数が 3以上である画素を見つける。
(2)ステップ 2: 走査が終わったら見つかった交点 ·分岐点の画素につ 、てそれぞ れ以下の処理を行う。
[0057] [交点に関する処理]
交点の画素から別の交点'分岐点の画素、あるいは端点に行き着くまで隣接する有 効画素からなる経路を迪つて 、く。交点 ·分岐点に迪り着 、たらその交点 ·分岐点と の結合情報を記録する。
[0058] [分岐点に関する処理]
交点画素に関する処理と同様に、分岐点の画素から別の交点'分岐点の画素、ある いは端点に行き着くまで経路を迪つていく。交点にたどり着いたらその交点との結合 情報を記録する。分岐点にたどり着いたらその分岐点までの経路の長さを調べる。そ れが閾値以下だった場合には、この分岐点画素と迪り着いた分岐点とは 1つの交点 が分かれたものであると判断し、この 2つの分岐点の中点を正しい交点とする。閾値 以上だった場合には交点画素と同様に、その分岐点との結合情報を記録する。
[0059] 以上の処理により、画像からイメージノードとイメージエッジを抽出しメッシュ情報を得 る。これらの処理は画像処理によるため、メッシュ情報を誤りなく完全に抽出すること は困難である。画像によってはイメージノードやイメージエッジを抽出し損なってしま つたり、逆に存在しないイメージノードやイメージエッジを抽出してしまうことも考えられ る。したがって、三次元再構成法では抽出されたメッシュ情報のエラーに対してロバ ストな方法を考える必要がある。
[0060] [3]三次元再構成アルゴリズム
[3— 1]三次元再構成
本システムの三次元再構成は図 6で示したように、各カメラ PCでカメラ 3台分ずつのメ ッシュ情報力 三次元再構成を行 、、統合 PCでそれらの再構成結果の矛盾部分の 排除、一致部分の統合を行うことによって最終的なデータである統合サーフ スノー ドを得る。以下、それぞれのカメラグループで行われるサーフェスノードの生成法と統 合 PCで行われるサーフェスノードの統合法について説明する。
[0061] [3— 2]サーフェスノードの生成
隣り合う台のカメラ画像力もサーフェスノードを生成する。サーフェスノードの生成は 以下の 3つのステップからなる。
[0062] [A]初期サーフェスノードの生成(図 18)
3台のカメラ画像の中から一点で交わるノードベクトルの組み合わせを見つけ、それら の交点にサーフェスノードを生成する。ここで生成するサーフェスノードを初期サーフ エスノードと呼ぶ。
[0063] [B]サーフェスノード群の生成(図 19)
結合情報を利用して初期サーフェスノードから順次新たなサーフェスノードを生成し ていく。ここで生成されるサーフェスノードは直接的、あるいは間接的に初期サーフエ スノードと結合して 、る。これらサーフェスノードの集まりをサーフェスノード群と呼ぶ。 生成の元となった初期サーフェスノードをこのサーフェスノード群の中心と呼ぶ。
[0064] [C]サブサーフェスノードによるサーフェスノード群の拡大
2本のノードベクトルでサーフェスノードを構成することを許してサーフェスノード群を さらに拡大していく。ここで構成される 2本のノードベクトル力もなるサーフェスノードを サブサーフェスノードと呼ぶ。
[0065] 以下のように記号を定義し、各々の処理にっ 、て詳細を述べる。
[表 2] N;„ : カメラ G中の m番目のイメージノード.
V;n : に対応するノードベクトル.
Em j : と直接結合しているイメージノードの集合.
Mi : サーブエスノードの構成に用いられていない 中の
イメージノードの集合
Pn : 3本のノードベクトルからつくられるサーフェスノード.
Figure imgf000023_0001
Nr l 1 ら 構成されていることを表す.
Pn 2本のノードベクトルから作られるサブサーフェスノード.
Sn P„と直接結合しているサ一フェスノード
およびサブサーフェスノードの集合.
dv {V^, Vi) と 間の距離- dP(VL Pn) : ^と 間の距離.
[0066] サーフェスノードを 1つでも構成することができれば、その周りのエッジを迪つていくこ とにより効率的にサーフェスノードを順次構成していくことができる。結合情報を使用 することにより、探索のためのノードベクトル同士の距離計算の回数が少なくて済み、 また、誤ったサーフェスノードが構成される可能性も減る。しかし、最初に構成するサ 一フェスノードが以降の再構成の元になるため、これは信頼性の高いものでなくては ならない。最初のステップは信頼性の高いサーフェスノードを見つけることである。初 期サーフェスノードの生成は次のように行う。ここではカメラ Cを中心とした処理を記 b
す。他のカメラでも同様であり、それぞれのカメラ PC中で計算を行う。
[0067] [A]初期サーフェスノードの生成
(1) ステップ 1 :イメージノード N bを選ぶ。
P
(2) ステップ 2 :カメラ C のイメージノードの中力 以下の条件を満たすイメージノ b+ 1
ード N b+1を見つける。ここで C はじの隣に位置するカメラを表す。
q b + 1 b
拳 d (v b, v b+ 1)≤d を満たす。ここで、 d は、ノードベクトル同士が交わつ
V p q hard hara
ていると判定するための閾値である。 拳 d (Vb, Vb+1)≤d を満たすイメージノード Nb EE N +1≡E b+1の糸且が v i j hard i p j q
2組以上存在する。
もし、 N b+1が見つかればステップ 3へ、見つからなければステップ 1へ戻る。
(3) ステップ 3:ステップ 2と同様の処理をカメラ C に対しても行う。もし Nb_1が見
b-l r つかればステップ 4へ、見つからなければステップ 1へ戻る。
ステップ 4: V b, V b+1, Vb_1を用いてサーフェスノード Pを構成する。
P q r 0
[0068] 以上の手順により、サーフェスノード群生成の元となる初期サーフェスノードが生成さ れる。ノードベクトルの交差に厳しい閾値 d を用い、交わったノードベクトルと結合し hard
ているノードベクトル同士も交わることを生成の条件とすることで誤った初期サーフエ スノードが生成される確率を減らして 、る。手順 Aにより初期サーフェスノードを生成 したら、初期サーフェスノードの周りのエッジを利用して順次サーフェスノードを生成 し、サーフェスノード群を構成していく。この処理は以下のようにして行う。
[0069] [B]サーフェスノード群の生成
(1) ステップ 1:初期化: m=0.初期サーフェスノードに注目する。
(2) ステップ 2:現在注目して ヽるサ一フェスノードを P (N b, N b+1, N b_1)と表す
p q r
。 N (E bf1Nb)のそれぞれについて以下の条件を満たすイメージノード Nb+1 EE
P ] b+1を見つける。
q
參 Nb+1ENb+1である。
參 d(vb, vb+1)≤d を満たす。ここで、 d は d >d となる緩めの閾値であ
] easy easy easy hard
る。
これらを満たすイメージノード Nb+1が見つかれば、ステップ 3へ進む。
(3) ステップ 3:同様に、以下の条件を満たす N h→≡E b_1を見つける。
k p
參 Nb_1ENb_1である。
k
參 d
v (V k b_1, v)≤d か 、 d を満たす。
jb
easy v (v k b_1, v jb+1)≤d
easy
(4) ステップ 4:Nb+1と Nb_1が見つ力つたら、新しくサーフェスノード P を構成す j k m+1 る。注目するサーフェスノードを P 、さらに m=m + 1としてステップ 2へ戻る。
m+l
(5) ステップ 5:ステップ 2からステップ 4を全てのエッジにつ!、てチェックするまで繰 り返す。 [0070] この手順により、初期サーフェスノード Pを中心としたサーフェスノード群を生成できる
0
。 [A]、 [B]の操作を繰り返し、サーフェスノード群を順次生成していく。新しい初期 サーフェスノードが見つからなくなったらサーフェスノード群の生成は終了である。
[0071] 3台のカメラ中には 2台のカメラからのみ見えるメッシュノードも存在し得る。 [A]、 [B] の処理が全て完了したら [C]の処理で 2本のノードベクトルで構成されるサブサーフ エスノードを許してサーフェスノード群をさらに拡大する。これは次の処理による。
[0072] [C]サブサーフェスノードによるサーフェスノード群の拡大
ステップ 1 :サーフェスノード群の境界端にあるサーフェスノード P (N b, N b+1, N b_1
a P q r
)に注目する。境界端にあるとは、 NbEE bかつ NbENbを満たすイメージノード Nb
i P i i 存在することをいう。
ステップ 2 :注目したサーフェスノード P (N b, N b+1, N b_1) (あるいは、サブサーフエ
a P q r
スノード Ρ (ハット) (N b, N b+1) )に対して、以下の条件を満たすイメージノード Nb+1
a P q ] もしくは N b_1を見つける。
參 Nb+1 EN b+1である。
] q
參 d (vb, vb+1)≤d を満たす。
v l ] easy
もし、 Njb+ 1が見つかれば、 Vb, Vb+ 1を用いてサブサーフェスノード P (ハット) を構 成し、この P (ノ、ット) に対してもステップ 2の処理を行う。見つからなければステップ 1 に戻り、境界端のサーフェスノードに対して全てチェックするまで繰り返す。
[0073] 以上がサブサーフェスノードを含むサーフェスノード群の拡大である。この処理を全 てのサーフェスノード群に対して行う。サブサーフェスノードは 2本のノードベクトルか ら構成されるため、サーフェスノードに比べて信頼性の低いものである。サブサーフエ スノードの生成は、先の [A]、 [B]の処理によりサーフェスノードを全て生成した後に 補足的に行われる。
[0074] 3台のカメラグループによるサーフェスノードの生成の流れを図 20にまとめる。初期サ 一フェスノード図 20(a)からサーフェスノードを順次生成することで、一つのサーフェス ノード群を得る(図 20(b))。この処理を繰り返し行うことで複数のサーフェスノード群を 生成する(図 20(c))。新たなサーフェスノード群を生成することができなくなったら、サ ブサーフェスノードを許してさらにサーフェスノード群を拡大していく(図 20(d))。初期 サーフェスノードの生成時においては厳しい閾値 d を用いるため、これらは信頼性
hard
の高いサーフェスノードと言える。サーフェスノード群の生成過程においては、結合 情報を利用して初期サーフェスノードから順々にサーフェスノードを構成していく。正 しいサーフェスノードを迪つて誤ったサーフェスノードが生成されるのは、図 21のよう に最低 2台のカメラ画像中でイメージノード、あるいはイメージエッジの抽出に誤りが あり、かつその誤ったイメージノードに対応するノードベクトルを含む 3本のノードべク トルが偶然一点で交わるような場合のみであるため、その可能性は極めて低い。サー フェスノードが正し 、ものであるかどうかは、それと連結するサーフェスノードの正しさ に大きく依存する。サーフェスノード群の生成では結合情報を利用することと交線判 定に緩い閾値 d を用いることで、効率的に信頼性の高いサーフェスノードを多く再
easy
構成することができる。
[3— 3]サーフェスノードの統合
各カメラグループにお 、て生成したサーフェスノードを統合し、全力メラのメッシュ情 報力もなる統合サーフェスノードを構成する。ここで、さらに、以下の記号を定義する 。なお、以後はサーフェスノードとサブサーフェスノードを合わせてサーフェスノードと 呼ぶ。
[表 3]
Gb : 3台のカメラ C^- C^ ^wからなるカメラグループ Vb : カメラグループ (^中のサーフェスノードの集合
Ρ&中の 72番目のサーフェスノード カメラグループ G力も送られてくるサーフェスノード P bの情報は以下のとおりである。
b n
[表 4] ID : ^の識別番号 n
座標 : P„6の 3次元位置
エッジ : と結合しているサーフヱスノードの ID グループ ID : の属するサーフェスノード群の ID
構成要素 : ¾を構成するイメージノード ,Λ^+1, - 1
これらの情報をもとにサーフェスノードを統合し、統合サーフェスノードを構成して 、く 各カメラはそれぞれ 3つのカメラグループに所属しているため、各カメラで抽出された イメージノードは再構成計算に最大 3回使われる。あるカメラグループで使用されたィ メージノードが別のカメラグループでは全く別のサーフェスノードに使用されている可 能性もある。その様子を図 22(a)に示す。図 22中で三角形の頂点がカメラ、底辺が力 メラ投影面を表しており、カメラ力 伸びている直線がそのカメラのイメージノード に 対応するノーベクトルを示している。カメラグループ G中のサーフェスノード Pbは構成 b i 要素としてイメージノード N N b+1、 N b 1を持つ。一方、カメラグループ G 中のサーフ p q r b+1
エスノード Pjb+1は N b、 N b+1、 N b+2を構成要素として持っている。 Pbと Pb+1は共通のィメー p t 1 j ジノード N bを使用しているにも関わらず、カメラ C のイメージノードは N b+1、 N b+1と異 p b+1 q s なるものを使用している。この場合、 Pbと Pb+1のどちらか一方が N bを誤って使用してい
1
る。このような状況をサーフェスノード Pbと Pb+1の矛盾という。逆に同じイメージノードを 使用した異なるカメラグループのサーフェスノードが同一のものを再構成している場 合、これをサーフェスノードの一致と呼ぶ。一致の様子を図 22(b)に示す。 と Pb+1は ともにイメージノード N N b+1を使用しており、矛盾したイメージノードが存在しない。
Q
統合処理では矛盾したサーフェスノードを排除し、一致したサーフェスノードを統合 することにより、より信頼性の高い統合サーフェスノードを得る。サーフェスノードの統 合の流れを図 23 A— Cに示す。図 23 A中の Qは全力メラグループで作られたサーフ エスノード群の数を表しており、サーフェスノードの数の多いもの力 順にサーフェス ノード群を並べたものを Jと表す。統合処理はサーフェスノード群 Jカゝら J まで順に次 i 0 Q-1 の処理を行っていく。
[0077] [統合処理の流れ]
サーフェスノード群 Jの初期サーフェスノード Pに注目する。注目したサーフェスノード に対して処理 A (Pとそれに結合するサーフェスノード P に関する統合処理)を行う 。処理 Aでは、注目しているサーフェスノード Pに対して処理 B (Pbを残すべき力、削除 するべきかの判定)を行い、処理 Bの結果、 Pbを残すべきだと判定したら Pと結合して いるサーフェスノードに関しても順次処理 Aを繰り返していく。 Pが削除するべきもので あると判定した場合には、 Pと結合して ヽるサ一フェスノードに対しては処理 Aを行わ な 、。既述のようにサーフェスノードが正し 、ものであるかどうかは連結するサーフエ スノードの正しさに大きく依存する。矛盾が判明した時点でその先の処理を停止する ことで、誤ったサーフェスノードが残ってしまう可能性を低減している。以下、処理 A、 処理 Bに関して詳述する。
[0078] [処理 A (Pとそれに結合するサーフェスノード P≡ Sに関する統合処理) ]
先に述べたようにこの処理はサーフェスノード群の初期サーフェスノード力 始める。
(1) ステップ 1:注目して 、るサ一フェスノード P.に対して処理 Bを行う。
(2) ステップ 2 :処理 Bの結果、 Pを残すべきだと判定したらステップへ進む。削除す るべきだと判定したら処理を終了する。
(3) ステップ 3 : Pと結合しているサーフェスノード P 全てに対して処理 Aを繰り返 す。
[0079] [処理 B (Pbを残すべきか、削除するべきかのチヱック)]
サーフェスノード pbと一致するサーフェスノードを別のカメラグループから探していく。 この処理は図 23Cに示すように右回り探索、左回り探索、矛盾したサーフェスノード の削除の 3つのステップ力もなる。それぞれの処理について以下順次述べる。
[0080] [右回り探索]
自身と一致するサーフェスノードを右側のカメラグループのサーフェスノードの中から 順次探して 、く。サーフェスノード Pbに関する右回り探索は以下の処理力もなる。
[0081] (1) ステップ 1 :初期化: k=b. Pbに注目。 [0082] (2) ステップ 2:右のカメラグループから探索:
現在注目しているサーフェスノードを Pk(Nk, *, *)と表す。ここで、 *は任意の文
P
字を表し、 Pk(Nk, *, *)は現在注目しているサーフェスノード Pk中でイメージノード
Nkが構成要素として使用されていることを表現している。 Pk(Nk, *, *)に対して、
P P
一致するサーフェスノードをカメラグループ G 中のサーフェスノードの中から探す。 探索方法を図 24に示す。 Pkの構成要素 Nkに注目し、 Nkを使用しているサーフエスノ ードを G 中のサーフェスノード Pk+1中から探す。 Nkを使用しているサーフェスノード P k+1(* *, Nk)が存在したら以下の条件を満たすかチェックする。
參 Pkとの距離が閾値 d 以下である。
參 Pkの構成要素との間に矛盾がない。構成要素の矛盾とは同じカメラ画像中の 異なるイメージノードを利用して 、ることを 、う。
[0083] これらの条件を満たす場合、 Pk(Nk, *, *)と P k+1(* *, Nk)は一致していると判
P * P
断しこの 2つのサーフェスノードを統合する。ここで統合とは、 P k+1(* *, Nk)の構 成要素の中で の構成要素にないものがあれば新たに Pkの構成要素として登録し、
Pkの位置を再計算することをいう。統合した後、注目するサーフェスノードを P k+1(*
N k, *)、 k=k+lとしてステップ 2を繰り返す。
P
[0084] 条件を満たさない場合、 Pkと P k+1は矛盾していると判断する。矛盾したサーフエスノ ードは探索処理終了後の矛盾したサーフェスノードの削除の処理で用いるため、記 憶しておく。 P k+1(* *, N k)が存在しない場合、あるいは、 Pkと矛盾していた場合に は、ステップ 3へ進む。
[0085] (3) ステップ 3 :2つ右のカメラグループからの探索:
現在注目しているサーフェスノードを Pk(* Nk+1, *)と表す。 2つ先のカメラグルー プ G から Pk(* Nk+1, *)と一致するサーフェスノードを探す。 P 中から一致する サーフェスノードを探索する様子を図 25に示す。 Pkの構成要素 Nk+1に注目し、 Pb+2の 中から Nb+1を使用しているサーフェスノード P k+2(* *, Nk+1)を探す。 P k+2が存在 したらステップ 2で用いた一致の条件を満たす力どうか確認する。一致した場合には P ktP k+2を統合し、注目するサーフェスノードを P k+2(* *, Nk+1)、k=k+2としてス テツプへ戻る。 [0086] P k+2(*, * , N k+1)が存在しな力つたり Pkと矛盾していたりした場合には、右回りの探
q i
索処理を終了とする。以上の処理によって一致するサーフェスノードが見つかる限り 、探索する対象を右側方向のカメラグループへと進めていきサーフェスノードを統合 していく。
[0087] [左回り探索]
左側のカメラグループのサーフェスノードの中力も順次探して 、く。探索は右回り探 索と同様の方法で行う。右回り探索の処理過程における k+1を k 1に、 k+2を k 2に 置き換えればよぐ右回り探索の説明を援用することができる。
[0088] [矛盾したサーフェスノードの削除]
右方向、左方向に統合できるサーフ スノードの探索が終わったら、その探索の過程 で見つ力つた矛盾するサーフェスノードの排除処理を行う。排除処理では矛盾の生 じたサーフェスノードと Pbを比較し、使用しているノードベクトルの数の多い方を残し、 少な ヽ方を削除する。一方のサーフェスノードがまだ処理 Bを行って 、な 、場合には 、そのサーフェスノードに対して処理 Bを行った後にこの処理を行う。
[0089] 以上の操作によって、同一のメッシュノードを指し示すサーフェスノードは統合され、 サーフェスノード間に矛盾が生じているときは多数決的にどちらか一方が削除される 。本システムでの三次元再構成ではノードの結合情報と種類の閾値を用いたサーフ エスノードの生成、多数決による矛盾点の削除といった 2重 3重の誤り防止処理により 、信頼性の高いデータを取得できる。
[0090] 最後に、全身にメッシュマーカをもった人間のモーションキヤプチヤの実験の様子を 示す。図 26に示すメッシュマーカを対象にリアルタイム三次元再構成を行った。図 2 6左図、右図のメッシュマーカに対するリアルタイム三次元再構成の実験の様子の部 分拡大図をそれぞれ図 27上図、下図に示す。大量のノードに対してもリアルタイムに 三次元再構成を行えている様子が確認できる。全身に加え、指などの細かい部分ま で三次元再構成できて!/、る様子が確認できる。
産業上の利用可能性
[0091] 本発明は、ロボテイクス、バイオメカ-タス、スポーツ科学、医学、コンピュータグラフィ ックス等の分野に利用することができる。 図面の簡単な説明
[図 1]メッシュマーカの部分図である。
[図 2]二次元画像から抽出したノード情報及びエッジ情報を示す。
圆 3]ノードベクトルを説明する図である。
圆 4]エッジ情報を用いずに特徴点の三次元再構成を行う場合を示す図である。 圆 5]エッジ情報を用いて特徴点の三次元再構成を行う場合を示す図である。
[図 6]本発明に係るモーションキヤプチヤシステムの全体概略図である。
[図 7]本発明に係るモーションキヤプチヤシステムのハードウェア構成を示す図である
[図 8]本発明に係るモーションキヤプチヤシステムのデータフロー図である。
[図 9]メッシュ情報抽出アルゴリズムの各ステップにおける処理後の図を示す。左から 、原画像、鮮鋭ィ匕された画像、ニ値ィ匕された画像、細線化された画像、抽出されたノ ード及びエッジ画像である。
[図 10]ラプラシアンオペレータによるエッジ鮮鋭を示す図である。
[図 11]エッジ鮮鋭のためのフィルタ行列である。
圆 12]8—近傍で定義した場合、 4—近傍で定義した場合の、経路の差異を示す図 である。
圆 13]8—近傍で定義した場合、 4—近傍で定義した場合の、連結成分の差異を示 す図である。
圆 14]図 14(a)が原画像であり、図 14(b)が有効領域を 4連結で定義した場合の境界 点、図 14(c)が 8連結の場合の境界点を示している。図 14中で境界点は灰色で表さ れている。図 14(d)は境界線追跡を示す。
圆 15]連結数を計算するために用いる隣接格子の定義である。
[図 16]連結数定義の違いによる細線ィ匕画像の違いを示す。図 16中の画像は左から 順に原画像、 2値画像、 8連結定義による細線化画像、 4連結定義による細線化画像 となっている。
[図 17]細線ィ匕後の画像は図 17のように交点が 2つの分岐点として表現されてしまうこ と力 Sある。図 17(a)が原画像、(b)が 2値画像、(c)が細線ィ匕画像であり、細線化画像中 の右側のマスが交点 (連結数 4)の画素、左側の枠で囲まれた部分が 2つの分岐点( 連結数 3)に分かれてしまった交点を示している。
[図 18]初期サーフェスノードの生成を示す図である。
[図 19]3つのカメラからのデータを用いたメッシュの拡張を示す図である。
[図 20]特徴点のローカル三次元再構成を示す図である。
[図 21]正しいサーフェスノードに基づく誤ったサーフェスノードの三次元再構成の例 を示す図である。
[図 22] (a)はサーフェスノードの矛盾を例示する図である。 (b)はサーフェスノードの 一致を例示する図である。
[図 23A]サーフェスノードの統合処理のフローチャートである。
[図 23B]図 23Aの処理 Aのフローチャートである。
[図 23C]図 23Bの処理 Bのフローチャートである。
[図 24]隣接するカメラからのサーフェスノードの一致あるいは矛盾の探索を示す図で ある。
[図 25]二つ隣りのカメラからのサーフェスノードの一致あるいは矛盾の探索を示す図 である。
[図 26]メッシュマーカを設けた被服を被着した被験者を示す図である。
[図 27]図 26左図、右図のメッシュマーカに対するリアルタイム三次元再構成の実験 の様子の部分拡大図をそれぞれ上図、下図に示す。

Claims

請求の範囲
[1] メッシュマーカを用いたモーションキヤプチヤシステムであって、
メッシュマーカを構成する線の交差部分をノード、各ノードを結ぶ線をエッジとし、ノ ードが特徴点の位置情報を提供し、エッジが特徴点同士の結びつきを示す結合情 報を提供し、
メッシュマーカを設けた対象物を撮影してメッシュマーカの二次元画像を取得する 複数のカメラと、
各カメラで撮影された二次元画像からメッシュマーカのノード'エッジ情報を検出す るノード'エッジ検出部と、
異なるカメラにより撮影された複数の二次元画像力 検出されたノード'エッジの情 報を用いてノードの三次元位置情報を求める三次元再構成部と、
を有するモーションキヤプチヤシステム。
[2] 複数のカメラは、複数のカメラ群から構成されており、各カメラ群毎にノードの三次元 位置情報を取得することを特徴とする請求項 1に記載のモーションキヤプチヤシステ ム。
[3] 前記各カメラ群は、隣接する一連の複数のカメラ力 構成されていることを特徴とする 請求項 2に記載のモーションキヤプチヤシステム。
[4] 隣位のカメラ群は、少なくとも一つの共通のカメラを有していることを特徴とする請求 項 2, 3V、ずれかに記載のモーションキヤプチヤシステム。
[5] ノード'エッジ検出部は、
原画像に鮮鋭化処理を行って得た鮮鋭画像を二値化して二値画像を得る鮮鋭化' 二値化処理部と、
二値画像に対して細線ィ匕処理を行って細線画像を得る細線ィ匕処理部と、 細線画像力 線の交点にあたるノードと、交点の繋がりにあたるエッジを検出するノ ードの位置'連結情報抽出部と、
を有することを特徴とする請求項 1乃至 4いずれかに記載のモーションキヤプチヤシ ステム。
[6] 三次元再構成部は、既に三次元再構成されて!/ヽるイメージノードの結合情報を用い て、ノードベクトル同士が交わる複数のイメージノードを探索する際に、探索候補とな るイメージノード数を削減するように構成されて ヽることを特徴とする請求項 1乃至 5 ヽ ずれかに記載のモーションキヤプチヤシステム。
[7] 三次元再構成部は、
複数のカメラの複数のノードベクトルの交差を判定する交差判定手段を有し、該交 差判定手段は、より厳格な第 1の交差判定条件とより緩い第 2の交差判定条件とを有 し、
第 1の交差判定条件により選択された交点を初期サーフェスノードとする初期サー フェスノード生成手段と、
初期サーフェスノードを構成するイメージノードとエッジによって結合しているィメー ジノードに対応するノードベクトルの中から、第 2の交差判定条件により選択された交 点をサーフェスノードとするサーフェスノード群生成手段と、
を有することを特徴とする請求項 1乃至 6いずれかに記載のモーションキヤプチヤシ ステム。
[8] サーフェスノード群生成手段は、さらに、生成されたサーフェスノードを構成するィメ ージノードとエッジによって結合して 、るイメージノードに対応するノードベクトルの中 から、第 2の交差判定条件により選択された交点をサーフェスノードとするように構成 されていることを特徴とする請求項 7に記載のモーションキヤプチヤシステム。
[9] 前記交線判定条件は、ノードベクトル間の距離を判定するための閾値を含み、第 1交 線判定条件で用いる閾値は、第 2交線判定条件で用いる閾値よりも小さ 、値に設定 されていることを特徴とする請求項 7, 8いずれか〖こ記載のモーションキヤプチヤシス テム。
[10] 第 1交線判定条件は、初期サーフェスノードを構成するイメージノードとエッジによつ て結合して ヽるイメージノードに対応する一組ある 、は複数組のノードベクトル同士も 交差するかどうかの交線判定を含むことを特徴とする請求項 7乃至 9いずれかに記載 のモーションキヤプチヤシステム。
[11] 前記交線判定条件は、交線数を含むことを特徴とする請求項 7乃至 10いずれかに 記載のモーションキヤプチヤシステム。
[12] 三次元再構成部は、
複数のカメラの複数のノードベクトルの中から所定の閾値以下の距離で交差する組 み合わせを見つけ、その交点を初期サーフェスノードとする初期サーフェスノード生 成手段と、
初期サーフェスノードを構成するイメージノードとエッジによって結合しているィメー ジノードに対応するノードベクトルの中から所定の閾値以下の距離で交差する複数 のノードベクトルの組み合わせを見つけ、その交点をサーフェスノードとするサーフエ スノード群生成手段と、
を有することを特徴とする請求項 1乃至 6いずれかに記載のモーションキヤプチヤシ ステム。
[13] 初期サーフェスノード生成手段は、さらに、初期サーフェスノードを構成するイメージ ノードとエッジによって結合して 、るイメージノードに対応する一組ある 、は複数組の ノードベクトル同士も交差するかどうかの判定手段を有し、それらのノードベクトル同 士が所定の閾値以下の距離で交差している場合には、初期サーフェスノードを構成 するノードベクトルの組み合わせが正し 、組み合わせであると判定し、その交点を初 期サーフェスノードとするものであることを特徴とする請求項 12に記載のモーションキ ャプチヤシステム。
[14] サーフェスノード群生成手段は、さらに、生成されたサーフェスノードを構成するィメ ージノードとエッジによって結合して 、るイメージノードに対応するノードベクトルの中 力 所定の閾値以下の距離で交差する複数のノードベクトルの組み合わせを見つけ 、その交点をサーフェスノードとするように構成されていることを特徴とする請求項 12 , 13いずれかに記載のモーションキヤプチヤシステム。
[15] 初期サーフェスノード生成手段で用いる閾値は、サーフェスノード群生成手段で用い る閾値よりも小さい値に設定されていることを特徴とする請求項 12乃至 14いずれか に記載のモーションキヤプチヤシステム。
[16] 三次元再構成部は、さらに、サブサーフェスノード生成手段を有し、サブサーフエスノ ード生成手段は、サーフェスノード群生成手段により新たなサーフェスノード群の拡 大ができなくなった場合に、生成されたサーフェスノードを構成するイメージノードと エッジによって結合して 、るイメージノードに対応するノードベクトルの中力 所定の 閾値以下の距離で交差する複数かつサーフェスノードを生成するためのノードべタト ル本数より少な 、数のノードベクトルの組み合わせを見つけ、その交点をサブサーフ エスノードとするように構成されて ヽることを特徴とする請求項 12乃至 15 ヽずれかに 記載のモーションキヤプチヤシステム。
[17] サブサーフェスノード生成手段で用いる閾値は、初期サーフェスノード生成手段で用 いる閾値よりも大きい値に設定されていることを特徴とする請求項 16に記載のモーシ ヨンキヤプチヤシステム。
[18] 初期サーフェスノード生成手段及びサーフェスノード群生成手段において、サーフエ スノードは 3本以上のノードベクトルが交差する交点力 構成されることを特徴とする 請求項 12乃至 17いずれかに記載のモーションキヤプチヤシステム。
[19] 複数のカメラは、複数のカメラ群から構成されており、隣位のカメラ群は互いに少な くとも一つの共通のカメラを有しており、
三次元再構成部は、
各カメラ群毎にサーフェスノードを求めるローカル三次元再構成部と、
各ローカル三次元再構成部で求めたサーフェスノードを統合するサーフェスノード 統合部と、
を有することを特徴とする請求項 1乃至 18いずれかに記載のモーションキヤプチャ システム。
[20] 各カメラ群は 3つ以上のカメラを有しており、隣位のカメラ群は互いに少なくとも 2つの 共通のカメラを有していることを特徴とする請求項 19に記載のモーションキヤプチャ システム。
[21] サーフェスノード統合部は、各カメラ群間において、一致したサーフェスノードを統合 し、矛盾したサーフェスノードを削除するものであることを特徴とする請求項 19, 20い ずれかに記載のモーションキヤプチヤシステム。
[22] サーフヱスノードが一致する力矛盾するかの判定は、
二つのサーフェスノード間の距離が所定の閾値以下であること、及び、 同じカメラ画像中の異なるイメージノードを利用して 、な 、こと、 の二つの条件を満たすか否かによって判定されることを特徴とする請求項 21に記載 のモーションキヤプチヤシステム。
[23] サーフェスノードの統合は、一致したサーフェスノード間におけるイメージノードの統 合を含み、統合されたイメージノードを用いてサーフェスノードの位置を更新すること を特徴とする請求項 21, 22いずれかに記載のモーションキヤプチヤシステム。
[24] 二つのサーフェスノードが矛盾する場合には、使用しているノードベクトルの数が多 い方を残し、少ない方を削除することを特徴とする請求項 21乃至 23いずれかに記載 のモーションキヤプチヤシステム。
[25] サーフェスノードの統合は、最初に初期サーフェスノードから行うことを特徴とする請 求項 19乃至 24いずれかに記載のモーションキヤプチヤシステム。
[26] メッシュマーカを用いた光学式モーションキヤプチヤにおける特徴点の三次元再構 成方法であって、
メッシュマーカを構成する線の交差部分をノード、各ノードを結ぶ線をエッジとし、ノ ードが特徴点の位置情報を提供し、エッジが特徴点同士の結びつきを示す結合情 報を提供し、
複数のカメラによって、メッシュマーカを設けた対象物を撮影してメッシュマーカの 二次元画像を取得する画像取得ステップと、
各カメラで撮影された二次元画像からメッシュマーカのノード'エッジ情報を検出す るノード.エッジ検出ステップと、
異なるカメラにより撮影された複数の二次元画像力 検出されたノード'エッジの情 報を用いてノードの三次元位置情報を求める三次元再構成ステップと、
を有するモーションキヤプチヤにおける特徴点の三次元再構成方法。
[27] 複数のカメラは、複数のカメラ群から構成されており、各カメラ群毎にノードの三次元 位置情報を取得することを特徴とする請求項 26に記載のモーションキヤプチヤにお ける特徴点の三次元再構成方法。
[28] 前記各カメラ群は、隣接する一連の複数のカメラ力 構成されて 、ることを特徴とする 請求項 27に記載のモーションキヤプチヤにおける特徴点の三次元再構成方法。
[29] 隣位のカメラ群は、少なくとも一つの共通のカメラを有していることを特徴とする請求 項 27, 28いずれかに記載のモーションキヤプチヤにおける特徴点の三次元再構成 方法。
[30] ノード'エッジ検出ステップは、
原画像に鮮鋭化処理を行って得た鮮鋭画像を二値化して二値画像を得るステップ と、
二値画像に対して細線ィ匕処理を行って細線画像を得るステップと、
細線画像力 線の交点にあたるノードと、交点の繋がりにあたるエッジを検出するス テツプと、
を有することを特徴とする請求項 26乃至 29いずれかに記載のモーションキヤプチ ャにおける特徴点の三次元再構成方法。
[31] 三次元再構成ステップは、既に三次元再構成されているイメージノードの結合情報を 用いて、ノードベクトル同士が交わる複数のイメージノードを探索する際に、探索候補 となるイメージノード数を削減することを特徴とする請求項 26乃至 30いずれかに記載 のモーションキヤプチヤにおける特徴点の三次元再構成方法。
[32] 三次元再構成ステップは、
複数のカメラの複数のノードベクトルの交差を判定する交差判定手段を有し、該交 差判定手段は、より厳格な第 1の交差判定条件とより緩い第 2の交差判定条件とを有 し、
第 1の交差判定条件により選択された交点を初期サーフェスノードとする初期サー フェスノード生成ステップと、
初期サーフェスノードを構成するイメージノードとエッジによって結合しているィメー ジノードに対応するノードベクトルの中から、第 2の交差判定条件により選択された交 点をサーフェスノードとするサーフェスノード群生成ステップと、
を有することを特徴とする請求項 26乃至 31いずれかに記載のモーションキヤプチ ャシステムにおける特徴点の三次元再構成方法。
[33] サーフェスノード群生成ステップは、さらに、生成されたサーフェスノードを構成するィ メージノードとエッジによって結合しているイメージノードに対応するノードベクトルの 中から、第 2の交差判定条件により選択された交点をサーフェスノードとすることを特 徴とする請求項 32に記載のモーションキヤプチヤシステムにおける特徴点の三次元 再構成方法。
[34] 前記交線判定条件は、ノードベクトル間の距離を判定するための閾値を含み、第 1交 線判定条件で用いる閾値は、第 2交線判定条件で用いる閾値よりも小さ 、値に設定 されて 、ることを特徴とする請求項 32, 33V、ずれかに記載のモーションキヤプチヤシ ステムにおける特徴点の三次元再構成方法。
[35] 第 1交線判定条件は、初期サーフェスノードを構成するイメージノードとエッジによつ て結合して ヽるイメージノードに対応する一組ある 、は複数組のノードベクトル同士も 交差するかどうかの交線判定を含むことを特徴とする請求項 32乃至 34いずれかに 記載のモーションキヤプチヤシステムにおける特徴点の三次元再構成方法。
[36] 前記交線判定条件は、交線数を含むことを特徴とする請求項 32乃至 35いずれかに 記載のモーションキヤプチヤシステムにおける特徴点の三次元再構成方法。
[37] 三次元再構成ステップは、
複数のカメラの複数のノードベクトルの中から所定の閾値以下の距離で交差する組 み合わせを見つけ、その交点を初期サーフェスノードとする初期サーフェスノード生 成ステップと、
初期サーフェスノードを構成するイメージノードとエッジによって結合しているィメー ジノードに対応するノードベクトルの中から所定の閾値以下の距離で交差する複数 のノードベクトルの組み合わせを見つけ、その交点をサーフェスノードとするサーフエ スノード群生成ステップと、
を有することを特徴とする請求項 26乃至 31いずれかに記載のモーションキヤプチ ャにおける特徴点の三次元再構成方法。
[38] 初期サーフェスノード生成ステップは、さらに、初期サーフェスノードを構成するィメー ジノードとエッジによって結合して 、るイメージノードに対応する一組ある 、は複数組 のノードベクトル同士も交差するかどうかの判定ステップを有し、それらのノードべタト ル同士が所定の閾値以下の距離で交差している場合には、初期サーフェスノードを 構成するノードベクトルの組み合わせが正し 、組み合わせであると判定し、その交点 を初期サーフェスノードとするものであることを特徴とする請求項 37に記載のモーショ ンキヤプチヤにおける特徴点の三次元再構成方法。
[39] サーフェスノード群生成ステップは、さら〖こ、生成されたサーフェスノードを構成するィ メージノードとエッジによって結合しているイメージノードに対応するノードベクトルの 中力 所定の閾値以下の距離で交差する複数のノードベクトルの組み合わせを見つ け、その交点をサーフェスノードとすることを特徴とする請求項 37, 38いずれかに記 載のモーションキヤプチヤにおける特徴点の三次元再構成方法。
[40] 初期サーフェスノード生成ステップで用いる閾値は、サーフェスノード群生成ステップ で用いる閾値よりも小さ 、値に設定されて 、ることを特徴とする請求項 37乃至 39 ヽ ずれかに記載のモーションキヤプチヤにおける特徴点の三次元再構成方法。
[41] 三次元再構成ステップは、さらに、サブサーフェスノード生成ステップを有し、サブサ 一フェスノード生成ステップは、サーフェスノード群生成手段により新たなサーフェス ノード群の拡大ができなくなった場合に、生成されたサーフェスノードを構成するィメ ージノードとエッジによって結合して 、るイメージノードに対応するノードベクトルの中 力 所定の閾値以下の距離で交差する複数かつサーフェスノードを生成するための ノードベクトル本数より少ない数のノードベクトルの組み合わせを見つけ、その交点を サブサーフェスノードとすることを特徴とする請求項 37乃至 40いずれかに記載のモ ーシヨンキヤプチヤにおける特徴点の三次元再構成方法。
[42] サブサーフェスノード生成ステップで用いる閾値は、初期サーフェスノード生成ステツ プで用いる閾値よりも大き 、値に設定されて 、ることを特徴とする請求項 41に記載の モーションキヤプチヤにおける特徴点の三次元再構成方法。
[43] 初期サーフェスノード生成ステップ及びサーフェスノード群生成ステップにおいて、サ 一フェスノードは 3本以上のノードベクトルが交差する交点から構成されることを特徴 とする請求項 37乃至 42いずれかに記載のモーションキヤプチヤにおける特徴点の 三次元再構成方法。
[44] 複数のカメラは、複数のカメラ群から構成されており、隣位のカメラ群は互いに少な くとも一つの共通のカメラを有しており、
三次元再構成ステップは、
各カメラ群毎にサーフェスノードを求めるローカル三次元再構成ステップと、 各ローカル三次元再構成部で求めたサーフェスノードを統合するサーフェスノード 統合ステップと、
を有することを特徴とする請求項 26乃至 43いずれかに記載のモーションキヤプチ ャにおける特徴点の三次元再構成方法。
[45] 各カメラ群は 3つ以上のカメラを有しており、隣位のカメラ群は互いに少なくとも 2つの 共通のカメラを有していることを特徴とする請求項 44に記載のモーションキヤプチャ における特徴点の三次元再構成方法。
[46] サーフェスノード統合ステップは、各カメラ群間において、一致したサーフェスノード を統合し、矛盾したサーフェスノードを削除するものであることを特徴とする請求項 44
, 45いずれかに記載のモーションキヤプチヤにおける特徴点の三次元再構成方法。
[47] サーフヱスノードが一致する力矛盾するかの判定は、
二つのサーフェスノード間の距離が所定の閾値以下であること、及び、 同じカメラ画像中の異なるイメージノードを利用して 、な 、こと、
の二つの条件を満たすか否かによって判定されることを特徴とする請求項 46に記載 のモーションキヤプチヤにおける特徴点の三次元再構成方法。
[48] サーフェスノードの統合ステップは、一致したサーフェスノード間におけるイメージノ ードの統合を含み、統合されたイメージノードを用いてサーフェスノードの位置を更新 することを特徴とする請求項 46, 47いずれかに記載のモーションキヤプチヤにおける 特徴点の三次元再構成方法。
[49] 二つのサーフェスノードが矛盾する場合には、使用しているノードベクトルの数が多
Vヽ方を残し、少な 、方を削除することを特徴とする請求項 46乃至 48 、ずれかに記載 のモーションキヤプチヤにおける特徴点の三次元再構成方法。
[50] サーフェスノードの統合は、最初に初期サーフェスノード力 行うことを特徴とする請 求項 44乃至 49いずれかに記載のモーションキヤプチヤにおける特徴点の三次元再 構成方法。
[51] 請求項 26乃至 50いずれかに記載の方法をコンピュータに実行させるためのコンビュ ータプログラム。
[52] 請求項 26乃至 50いずれかに記載の方法をコンピュータに実行させるためのコンビュ ータプログラムを記録した記録媒体。
[53] メッシュ状のマーカを構成する線の交差部分をノード、各ノードを結ぶ線をエッジとし
、前記ノードは特徴点の三次元再構成を行うための位置情報を提供し、前記エッジ は特徴点の結びつきを示す結合情報を提供することを特徴とする光学式モーション キヤプチヤシステムに用 、るメッシュマーカ。
[54] 前記メッシュ状のマーカは、衣料に設けてあることを特徴とする請求項 53に記載の光 学式モーションキヤプチヤシステムに用 、るメッシュマーカ。
PCT/JP2006/307677 2005-04-15 2006-04-11 モーションキャプチャシステム、及びモーションキャプチャシステムにおける特徴点の三次元再構成法 WO2006112308A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US11/911,512 US8698899B2 (en) 2005-04-15 2006-04-11 Motion capture system and method for three-dimensional reconfiguring of characteristic point in motion capture system
JP2007521199A JP5061350B2 (ja) 2005-04-15 2006-04-11 モーションキャプチャシステム、及びモーションキャプチャシステムにおける特徴点の三次元再構成法
EP06731624A EP1876412B1 (en) 2005-04-15 2006-04-11 Motion capture system and method for three-dimensional reconfiguring of characteristic point in motion capture system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005-117822 2005-04-15
JP2005117822 2005-04-15

Publications (1)

Publication Number Publication Date
WO2006112308A1 true WO2006112308A1 (ja) 2006-10-26

Family

ID=37115033

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/307677 WO2006112308A1 (ja) 2005-04-15 2006-04-11 モーションキャプチャシステム、及びモーションキャプチャシステムにおける特徴点の三次元再構成法

Country Status (4)

Country Link
US (1) US8698899B2 (ja)
EP (1) EP1876412B1 (ja)
JP (1) JP5061350B2 (ja)
WO (1) WO2006112308A1 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010541035A (ja) * 2007-09-04 2010-12-24 ソニー株式会社 統合モーションキャプチャ
GB2466898B (en) * 2007-11-06 2011-12-21 Jacob Samboursky A system and a method for a post production object insertion in media files
CN105635669A (zh) * 2015-12-25 2016-06-01 北京迪生数字娱乐科技股份有限公司 基于三维运动捕捉数据与实拍视频的动作对比系统及方法
KR20160073147A (ko) * 2014-12-16 2016-06-24 삼성전자주식회사 Gpu 기반 벡터 그래픽을 위한 메쉬 생성 장치, 방법 및 컴퓨터 프로그램
JP2017120262A (ja) * 2015-12-28 2017-07-06 株式会社デジタルハンズ 部位形状測定器具、並びに、部位形状測定装置及び方法
WO2020195815A1 (ja) * 2019-03-25 2020-10-01 日本電信電話株式会社 映像同期装置、映像同期方法、プログラム
US11128908B2 (en) 2016-10-25 2021-09-21 Samsung Electronics Co., Ltd. Electronic device and method for controlling the same

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8736616B2 (en) * 2009-09-15 2014-05-27 Sony Corporation Combining multi-sensory inputs for digital animation
CN101807309B (zh) * 2010-03-17 2011-12-21 浙江大学 基于差动拍摄装置的壁画高保真三维重建方法
MX2012011815A (es) * 2010-04-12 2012-12-17 Fortem Solutions Inc Mallas de proyeccion de camaras.
TWI450155B (zh) * 2011-02-15 2014-08-21 Wistron Corp 應用於光學式觸控裝置之校正資訊計算方法及系統
JP2012244196A (ja) * 2011-05-13 2012-12-10 Sony Corp 画像処理装置及び方法
WO2014023641A1 (en) 2012-08-09 2014-02-13 Sony Corporation Refinement of a disparity or motion map based on user interaction
CN107924555B (zh) * 2015-08-10 2021-09-28 彩滋公司 用于定制产品数字标记的系统和方法
US10074214B2 (en) * 2015-12-31 2018-09-11 Autodesk, Inc. Systems and methods for generating 3D scenes with time element for display
US10304210B2 (en) * 2017-05-25 2019-05-28 GM Global Technology Operations LLC Method and apparatus for camera calibration
WO2019082797A1 (ja) * 2017-10-23 2019-05-02 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 再構成方法および再構成装置
CN110634149B (zh) * 2018-06-22 2022-03-18 湖南大学 一种用于光学动作捕捉系统的非刚体目标特征点匹配方法
CN110033506B (zh) * 2019-03-18 2023-05-02 西安科技大学 基于结构光的综采工作面三维重建系统和重建方法
CN114820689A (zh) * 2019-10-21 2022-07-29 深圳市瑞立视多媒体科技有限公司 标记点的识别方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0486958A (ja) * 1990-07-31 1992-03-19 Fuji Facom Corp 三次元特徴点座標抽出方法
JP2001349706A (ja) * 2000-06-09 2001-12-21 Oojisu Soken:Kk 位置検出方法及び装置,画像処理方法,シート並びに記録媒体
WO2004072909A1 (en) * 2003-02-11 2004-08-26 Sony Computer Entertainment Inc. Method and apparatus for real time motion capture

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5886702A (en) * 1996-10-16 1999-03-23 Real-Time Geometry Corporation System and method for computer modeling of 3D objects or surfaces by mesh constructions having optimal quality characteristics and dynamic resolution capabilities
US6192156B1 (en) * 1998-04-03 2001-02-20 Synapix, Inc. Feature tracking using a dense feature array
US6980690B1 (en) * 2000-01-20 2005-12-27 Canon Kabushiki Kaisha Image processing apparatus
US7127081B1 (en) * 2000-10-12 2006-10-24 Momentum Bilgisayar, Yazilim, Danismanlik, Ticaret, A.S. Method for tracking motion of a face
US6919892B1 (en) * 2002-08-14 2005-07-19 Avaworks, Incorporated Photo realistic talking head creation system and method
US8194093B2 (en) * 2004-09-15 2012-06-05 Onlive, Inc. Apparatus and method for capturing the expression of a performer

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0486958A (ja) * 1990-07-31 1992-03-19 Fuji Facom Corp 三次元特徴点座標抽出方法
JP2001349706A (ja) * 2000-06-09 2001-12-21 Oojisu Soken:Kk 位置検出方法及び装置,画像処理方法,シート並びに記録媒体
WO2004072909A1 (en) * 2003-02-11 2004-08-26 Sony Computer Entertainment Inc. Method and apparatus for real time motion capture

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PRICHARD D. ET AL.: "Cloth motion capture", COMPUTER GRAPHICS FORUM, vol. 22, no. 3, 1 September 2003 (2003-09-01), pages 263 - 271
See also references of EP1876412A4

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010541035A (ja) * 2007-09-04 2010-12-24 ソニー株式会社 統合モーションキャプチャ
JP2013080473A (ja) * 2007-09-04 2013-05-02 Sony Corp 統合モーションキャプチャ
GB2466898B (en) * 2007-11-06 2011-12-21 Jacob Samboursky A system and a method for a post production object insertion in media files
KR20160073147A (ko) * 2014-12-16 2016-06-24 삼성전자주식회사 Gpu 기반 벡터 그래픽을 위한 메쉬 생성 장치, 방법 및 컴퓨터 프로그램
KR101646945B1 (ko) 2014-12-16 2016-08-10 삼성전자주식회사 Gpu 기반 벡터 그래픽을 위한 메쉬 생성 장치, 방법 및 컴퓨터 프로그램
CN105635669A (zh) * 2015-12-25 2016-06-01 北京迪生数字娱乐科技股份有限公司 基于三维运动捕捉数据与实拍视频的动作对比系统及方法
CN105635669B (zh) * 2015-12-25 2019-03-01 北京迪生数字娱乐科技股份有限公司 基于三维运动捕捉数据与实拍视频的动作对比系统及方法
JP2017120262A (ja) * 2015-12-28 2017-07-06 株式会社デジタルハンズ 部位形状測定器具、並びに、部位形状測定装置及び方法
US11128908B2 (en) 2016-10-25 2021-09-21 Samsung Electronics Co., Ltd. Electronic device and method for controlling the same
WO2020195815A1 (ja) * 2019-03-25 2020-10-01 日本電信電話株式会社 映像同期装置、映像同期方法、プログラム
JP2020160568A (ja) * 2019-03-25 2020-10-01 日本電信電話株式会社 映像同期装置、映像同期方法、プログラム
JP7067513B2 (ja) 2019-03-25 2022-05-16 日本電信電話株式会社 映像同期装置、映像同期方法、プログラム

Also Published As

Publication number Publication date
EP1876412A1 (en) 2008-01-09
US8698899B2 (en) 2014-04-15
EP1876412B1 (en) 2012-03-28
US20090295711A1 (en) 2009-12-03
JPWO2006112308A1 (ja) 2008-12-11
EP1876412A4 (en) 2009-12-30
JP5061350B2 (ja) 2012-10-31

Similar Documents

Publication Publication Date Title
WO2006112308A1 (ja) モーションキャプチャシステム、及びモーションキャプチャシステムにおける特徴点の三次元再構成法
US9626568B2 (en) Use of spatially structured light for dynamic three dimensional reconstruction and reality augmentation
US11127189B2 (en) 3D skeleton reconstruction from images using volumic probability data
EP3382644A1 (en) Method for 3d modelling based on structure from motion processing of sparse 2d images
Habib et al. Generation of complex polyhedral building models by integrating stereo-aerial imagery and lidar data
Zhou et al. Seamless fusion of LiDAR and aerial imagery for building extraction
CN108090960A (zh) 一种基于几何约束的目标重建方法
Santos et al. 3D plant modeling: localization, mapping and segmentation for plant phenotyping using a single hand-held camera
JP6097903B2 (ja) 3次元形状の取得装置、処理方法およびプログラム
JP4761670B2 (ja) 動立体モデル生成装置及び方法
CN111805131A (zh) 一种焊缝轨迹实时定位方法、装置、存储介质及终端
Wong et al. Fast acquisition of dense depth data by a new structured light scheme
Zhou et al. PersDet: Monocular 3D Detection in Perspective Bird's-Eye-View
Zhang et al. Fragmentation guided human shape reconstruction
Kang et al. Progressive 3D model acquisition with a commodity hand-held camera
Varanasi et al. Temporally coherent segmentation of 3D reconstructions
Dong et al. Learning stratified 3D reconstruction
Du et al. Relative epipolar motion of tracked features for correspondence in binocular stereo
Ruf et al. Determining Plane-Sweep Sampling Points in Image Space Using the Cross-Ratio for Image-Based Depth Estimation
Elharrouss et al. 3D Point Cloud for Objects and Scenes Classification, Recognition, Segmentation, and Reconstruction: A Review
JP2011149952A (ja) モデル入力装置およびモデル生成システム
Pujol Miró Learning to extract features for 2D–3D multimodal registration
Pawar et al. Position Based Advertisement Change Detection
Kim et al. Complex digital building model generation through the integration of photogrammetric and LiDAR data
Merchán et al. Depth Gradient Image Based On Silhouette: A Solution for Reconstruction of Scenes in 3D Environments

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2007521199

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2006731624

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: RU

WWP Wipo information: published in national office

Ref document number: 2006731624

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 11911512

Country of ref document: US