This invention relates to augmenting traditional multiview stereo (MVS) reconstruction methods with semantic information such as semantic priors.
Recent years have seen rapid strides in dense 3D shape recovery, with multiview stereo (MVS) systems capable of reconstructing entire monuments. Despite this progress, MVS has remained largely applicable only in favorable imaging conditions. Lack of texture leads to extended troughs in photoconsistency-based cost functions, while specularities violate inherent Lambertian assumptions. Diffuse photoconsistency is not a reliable metric with wide baselines in scenarios with few images, leading to sparse, noisy MVS outputs. Under these circumstances, MVS reconstructions often display holes or artifacts.
On the other hand, there have been developments in two seemingly disjoint areas of computer vision. With the advent of cheap commercial scanners and depth sensors, it is now possible to easily acquire 3D shapes. Concurrently, the performance of modern object detection algorithms has rapidly improved to allow inference of reliable bounding boxes in the presence of clutter, especially when information is shared across multiple views.
In one aspect, a method to reconstruct 3D model of an object includes receiving with a processor a set of training data including images of the object from various viewpoints; learning a prior comprised of a mean shape describing a commonality of shapes across a category and a set of weighted anchor points encoding similarities between instances in appearance and spatial consistency; matching anchor points across instances to enable learning a mean shape for the category; and modeling the shape of an object instance as a warped version of a category mean, along with instance-specific details.
In another aspect, given training data comprised of 3D scans and images of objects from various viewpoints, we learn a prior comprised of a mean shape and a set of weighted anchor points. The former captures the commonality of shapes across the category, while the latter encodes similarities between instances in the form of appearance and spatial consistency. We propose robust algorithms to match anchor points across instances that enable learning a mean shape for the category, even with large shape variations across instances. We model the shape of an object instance as a warped version of the category mean, along with instance-specific details. Given multiple images of an unseen instance, we collate information from 2D object detectors to align the structure from motion point cloud with the mean shape, which is subsequently warped and refined to approach the actual shape
Advantages of the preferred embodiments may include one or more of the following. The system can perform a dense reconstruction without the drawbacks of traditional multiview stereo by incorporating semantic information in the form of learned category-level shape priors and object detection. The system can perform dense reconstruction for textured surface without requiring many views. Dense reconstruction can be done with lower imaging cost (only few views required). Reconstruction can be done even for traditionally difficult surfaces, such as those without texture.
Extensive experiments demonstrate that our model is general enough to learn semantic priors for different object categories, yet powerful enough to reconstruct individual shapes with large variations. Qualitative and quantitative evaluations show that our framework can produce more accurate reconstructions than alternative state-of-the-art multiview stereo systems.
Our Model: Shape=Prior+Unique Details Si=T(S*,θi)+Δi
Transformation T is a weighted thin plate spline (K+nλW−1)β+Φa=x′ΦTβ=0,
Unique details d obtained by minimizing
The process of
Our reconstruction phase starts with a point cloud obtained by applying a structure-from-motion (SFM) or MVS system to images of an unseen instance (with a shape different from training objects). Bounding boxes from object detection in individual images are collated using the SFM camera poses and used to localize and orient the object in the point cloud. This guides the process of matching anchor points—shown by green stars in right panel—between the learned prior and the test object's SFM point cloud, followed by a warping of the prior shape in order to closely resemble the true shape. Finer details not captured by the shape prior may be recovered by a refinement step, using guidance from SFM or MVS output. The refinement combines confidence scores from anchor points and photoconsistency in order to produce a regularized, high quality output shape. Not only are our reconstructions visually pleasant, they are also quantitatively closer to the ground truth than other baselines.
We assume that for each object category, there exists a prior that consists of a 3D mean shape S* that captures the commonality of shapes across all instances and a set of anchor points A that captures similarities between subsets of instances. The shape of any particular object Si is a transformation of S*, plus specific details Δi not shared by other instances:
Si=T({S*,A},θi)+Δi, (1)
where T is a warping (transformation) function and θi is the warping parameter that is unique to each object instance. In the following, we briefly explain the various aspects of our model.
One key to reconstructing an object instance is to estimate the warping parameters θi. We leverage on certain reliable features associated with the shape prior, which we call anchor points. Anchor points form the backbone of our framework, since they are representative of object shape and the relative importance of different object structures. Anchor points with high weights, ω, are considered stable in terms of location and appearance, and thus, more representative of object shape across instances. They guide the learning of the mean shape for a category, as well as the deformation processes during actual 3D reconstruction. In Section 4.1, we detail the mechanism of learning anchor points from training data.
Warping function is discussed next. We assume that the functional form of T is known. In particular, prior work on shape matching has demonstrated inspiring results using regularized thin-plate spline (TPS) transformations to capture deformations. Let {xi} and {x′i}, i=1, . . . , n, be two sets of anchor points for object instances O and O′. The TPS mapping T is given by
where φ0(x)=1, φj(x)=xj and U(x, xi)=∥x−xi∥. Note that our TPS representation is in 3D, instead of the more common 2D representation in traditional shape matching. The solution for the parameters θ={α,β} in a regularized framework is given by the system of equations:
(K+nλI)β+Φα=x′,ΦTβ=0 (3)
where Kij=U(xi,xj), Φij=φj(xi) and λ is a regularization parameter. Regularized TPS yields a solution that interpolates between two point sets and is sufficiently smooth. However, greater control is required for 3D reconstruction applications, since the extent of deformations must be determined by the local level of detail. Semantic information of this nature is determined automatically in our framework by the anchor point learning mechanism. To incorporate semantic information from anchor points, in the form of a weight matrix W=diag(ω1, . . . , ωn), we use an extension of TPS:
(K+nλW−1)β+Φα=x′,ΦTβ=0, (4)
which is again solvable analytically like regularized TPS.
Details specific to each object that are not captured in the shape prior are recovered by a refinement step. This refinement is used in both mean shape learning and during reconstruction of a particular test object.
To refine a shape Si (a mesh) towards shape Sj, we compute displacements for vertices in Si. For a vertex pki in Si, we estimate the surface normal nki by a local tangent space computation. The vertex pki is matched to pkj in Sj if Ppkj−pkiP<τ1 and |(pkj−pki)Tnki|<1−τ2, where τ1, τ2 are predefined thresholds. Let Pi be the set of vertices in Si that can be matched as above to the set Pj in Sj and Nki be the set of 1-nearest neighbors of pki in Pi. Then, the set of displacements, Δi={dki}, for 1≦k≦|Pi|, are computed by minimizing:
where εki is a weight factor. The above cost function encourages the refined shape to lie closer to Sj, while minimizing the local distortion induced by such displacement. The parameter μ is empirically determined for the training set. Note that (5) represents an extremely sparse linear system that can be solved efficiently. The vertices of the refined shape are obtained as pki+dki and it inherits the connectivity of Si.
Learning Reconstruction Priors is discussed next. For each object category, we use a set of object instances {On} to learn a mean shape S* and a set of anchor points A. For each object instance Oi in this training set, we capture a set of images Ii and use a 3D scanner to obtain a detailed 3D shape Sscani. Given Ii, we use a standard SFM pipeline to reconstruct a point cloud Ssfini={pji}, where pji is a 3D point. We manually label a small number of SFM points, Mi={p1i, p2i, . . . , pmi}. The labelled points M are used to align the scanned shapes {Sscani} and their reconstructed point clouds {Ssfmi} in our training dataset. They also serve as the initialization for the anchor point learning, as described in the following.
An anchor point, A={Γ, χ, ω}, consists of a feature vector Γ that describes appearance, the 3D location χ with respect to the mean shape and a scalar weight ω. Γ is the aggregation of HOG features in all images where A is visible and of every object where A exists. For an anchor point A, if V are the indices of objects across which the corresponding SFM points are matched and Ωi are the indices of images of Oi where A is visible, the corresponding feature vector is:
Γ={{fk
where fk
The weight ω reflects “importance” of an anchor point. We consider an anchor point important if it appears across many instances, with low position and appearance variance. That is,
ω=wxwawf (8)
where
and wf=log |V| encode location stability, appearance similarity and instance frequency, respectively. N2 is the number of combinations. The coefficients σa and σx are determined empirically from training data for each category. In the above,
where Ωi is the set of images of Oi where the point is visible.
In contrast to applications like shape matching, the quality of dense reconstruction is greatly affected by the order and extent of deformations. Thus, the learned anchor point weights ω are crucial to the success of dense reconstruction. Note that while ASM frameworks also associate a weight with landmark points, they are computed solely based on location uncertainty. By encoding appearance similarity and instance frequency, we impart greater semantic knowledge to our reconstruction stage.
The key precursor to learning anchor points is matching 3D points across instances, which is far from trivial. Besides within-class variation, another challenge is the fact that most SFM points correspond to texture. Such points usually dominate an SFM point cloud, but do not generalize across instances since they do not correspond to the object shape, thus, may not be anchor point candidates. Moreover, the density of anchor points cannot be too low, since they guide the deformation process that computes the mean shape and fits it to the 3D point cloud. To ensure the robustness of anchor point matching and good density, an iterative process is shown below:
A novel algorithm to robustly learn anchor points across instances with large shape variations.
Mean Shape Construction is discussed next. The learned anchor points are used to compute a mean shape for an object category. Recall that we have a mapping from the set of anchor points to each instance in the training set. Thus, we can warp successive shapes closer to a mean shape using the anchor points. The mean shape is constructed by combining these aligned and warped shapes of different instances. Since there are multiple shape instances, the order of combining them is a critical design issue, because improperly combining dissimilar shapes may introduce severe artifacts. To determine the order for combining shapes, we first measure the pairwise similarity between all pairs of training instances. In our experiments, we use the weighted number of commonly matched anchor points as the similarity cue. Given the pairwise similarities, we use hierarchical clustering to group the shapes. The similarity relationships can be represented as a binary tree where each leaf node is an object. We combine the warped shapes) T(Sscani) following the order of merging successive branches, to eventually obtain a single shape S*, which represents the commonality of all training instances. We use S* as the mean shape. The mean shape learning procedure is shown for a subset of the car dataset in
In the above, the warp T(Sscani)→Sscanj, with i<j according to the above defined ordering, is computed as the weighted thin plate spline transformation given by (4). Two shapes aligned by anchor points are eventually combined into a single one using displacement vectors computed by minimizing (5).
The mean shape computation proceeds by systematic combination of training instances, based on a binary tree traversal. The leaf nodes of the tree are the individual training instances, with assignments based on a pairwise shape similarity computation followed by hierarchical clustering. Note that unique details are lost, while features representative of the entire class are preserved.
Semantic Reconstruction with Shape Priors is discussed next. Given a number of images of an object O, we can reconstruct its 3D shape by warping the learned prior shape S* based on the estimated θ and by recovering Δ in (1) subsequently. The reconstruction consists of three steps: matching anchor points, warping by anchor points, and refinement. Accurately recovering warp parameters θ requires accurate matches between anchor points in S* and SFM points in Ssfm. This is facilitated by an initial coarse alignment between S* and Ssfm.
Multiple images are used to significantly improve detection accuracy in both image and 3D space. In image Ij, the detector returns the confidence value pi(u,s,π) of a detection hypothesis which appears in image location u, with scale (height and width) s and pose π. Given the estimated camera poses, a hypothesized 3D object O can be projected to each image Ij at location uj, scale sj and pose πj. Thereby, the object O in 3D space may be estimated as
This allows approximate estimation of the centroid, 3D pose and scale of an object. Since we also know those for the shape prior, we can use a rigid transformation to coarsely align the prior shape and its anchor points to fit the SFM point cloud of the object.
Reconstruction is discussed next. Given a set of images I of an object with unknown shape S, we use standard SFM to recover the 3D point cloud Ssfm. Our goal is to use the mean shape S* to produce a dense reconstruction that closely resembles S.
Next is the Matching Anchor Points. Since the initial alignment uses the object's location, pose and scale, anchor points are likely to be aligned to 3D locations in the vicinity of their true matches. Thus, the burden of identifying the point in Ssfm that corresponds to an anchor point in S* is reduced to a local search. We use HOG features to match anchor points to SFM points.
A novel algorithm to robustly match anchor points between shape prior and test reconstruction.
Warping Based on Anchor Points is detailed next. Assume S* is the shape prior after the initial alignment of Section 5.1. We use the above matches between anchor points in S* and SFM points in Ssfm to estimate parameters θ for the weighted TPS warping (4) and obtain S′=T(S*,θ) that further approaches the actual shape. Notice that, this warping not only reduces the alignment error from the initial detection-based alignment, it also deforms the prior to fit the actual shape of the object.
The final step in the reconstruction process is to recover the unique details of the object. These unique details cannot be learned a priori, so they may not be captured by the warped shape S′. We use the output of an MVS algorithm, Smvs, to supply these details. While MVS may have several missing regions and outliers for the object we consider, it may reconstruct accurate oriented patches in textured or Lambertian regions where diffuse photoconsistency is a reliable metric. Using the refinement process governed by (5), we move the vertices of S′ closer to Smvs. The weights εk now incorporate the confidence in the corresponding matched MVS point, which is encoded by the normalized cross-correlation photoconsistency.
The inventors contemplate that fine-grained recognition and detection of object parts may also benefit our semantic reconstruction framework. The system can work in an MRF-based MVS framework like, since it provides the flexibility to combine our shape prior with silhouette information from object detectors.
The invention may be implemented in hardware, firmware or software, or a combination of the three. Preferably the invention is implemented in a computer program executed on a programmable computer having a processor, a data storage system, volatile and non-volatile memory and/or storage elements, at least one input device and at least one output device.
By way of example, a block diagram of a computer to support the system is discussed next. The computer preferably includes a processor, random access memory (RAM), a program memory (preferably a writable read-only memory (ROM) such as a flash ROM) and an input/output (I/O) controller coupled by a CPU bus. The computer may optionally include a hard drive controller which is coupled to a hard disk and CPU bus. Hard disk may be used for storing application programs, such as the present invention, and data. Alternatively, application programs may be stored in RAM or ROM. I/O controller is coupled by means of an I/O bus to an I/O interface. I/O interface receives and transmits data in analog or digital form over communication links such as a serial link, local area network, wireless link, and parallel link. Optionally, a display, a keyboard and a pointing device (mouse) may also be connected to I/O bus. Alternatively, separate connections (separate buses) may be used for I/O interface, display, keyboard and pointing device. Programmable processing system may be preprogrammed or it may be programmed (and reprogrammed) by downloading a program from another source (e.g., a floppy disk, CD-ROM, or another computer).
Each computer program is tangibly stored in a machine-readable storage media or device (e.g., program memory or magnetic disk) readable by a general or special purpose programmable computer, for configuring and controlling operation of a computer when the storage media or device is read by the computer to perform the procedures described herein. The inventive system may also be considered to be embodied in a computer-readable storage medium, configured with a computer program, where the storage medium so configured causes a computer to operate in a specific and predefined manner to perform the functions described herein.
The invention has been described herein in considerable detail in order to comply with the patent Statutes and to provide those skilled in the art with the information needed to apply the novel principles and to construct and use such specialized components as are required. However, it is to be understood that the invention can be carried out by specifically different equipment and devices, and that various modifications, both as to the equipment details and operating procedures, can be accomplished without departing from the scope of the invention itself.
This application is a utility conversion and claims priority to Provisional Application Ser. 61/726,041 filed Nov. 14, 2012, the content of which is incorporated by reference.
Number | Name | Date | Kind |
---|---|---|---|
7764817 | Georgescu | Jul 2010 | B2 |
8553989 | Owechko | Oct 2013 | B1 |
20020012454 | Liu | Jan 2002 | A1 |
20040056857 | Zhang | Mar 2004 | A1 |
20060188131 | Zhang | Aug 2006 | A1 |
20070046696 | Zheng | Mar 2007 | A1 |
20080294401 | Tsin | Nov 2008 | A1 |
20100013832 | Xiao | Jan 2010 | A1 |
20100214290 | Shiell | Aug 2010 | A1 |
20110075916 | Knothe | Mar 2011 | A1 |
Entry |
---|
Bao, Sid Yingze, and Silvio Savarese. “Semantic structure from motion.” Computer Vision and Pattern Recognition (CVPR), 2011 IEEE Conference on. IEEE, Jun. 2011. |
Number | Date | Country | |
---|---|---|---|
20140132604 A1 | May 2014 | US |
Number | Date | Country | |
---|---|---|---|
61726041 | Nov 2012 | US |