Convex Bricks: A New Primitive for Visual Hull Modeling and Reconstruction

Visesh Chari, Amit Agrawal, Yuichi Taguchi and Srikumar Ramalingam

Mitsubishi Electric Research Labs (MERL)

ICRA 2012

VH reconstruction on Duck dataset using 10 silhouettes. Voxel carving starting from 64^3/128^3 grid results in 21784/160372 voxels, with 6503/26080 voxels on the surface respectively. To obtain the same precision as 128^3 grid, our volumetric reconstruction requires only 109 convex bricks (shades of red-brown) with 1551 vertices. Surface mesh can be easily obtained by removing internal planes using our representation.


We propose convex bricks, a new 3D primitive for modeling and reconstructing visual hulls from silhouettes. Unlike voxel based visual hull reconstruction where the shape of voxel remains fixed, the shape of convex bricks can adapt to the given silhouettes, thereby reducing the number of primitives required for a volumetric representation. Using convex bricks, polyhedral visual hull can be generated from polygonal silhouettes as a combination of 3D convex polytopes.

Convex bricks are unique in that they allow both volumetric and surface based representation. Being a volumetric approach, our technique avoids explicit computation of triple points/frontier points and does not require local orientation or connectivity rules. Interestingly, convex bricks also provides a watertight surface mesh, bridging the gap between volumetric and surface based approaches. In addition to high-quality reconstruction, our representation is useful for applications that require convex decomposition of 3D shapes.

Advantages over voxels:

A representation using CB has following benefits:

1. Unlike voxels, the representation is independent of any 3D discretization. Convex bricks does not result in blockiness or quantization artifacts as shown in the above figure. Both the size and shape of CB’s depend on the inherent non-convexity of the shape, rather than on the surface area as in voxel carving.

2. CB representation produces high quality reconstruction using lower number of primitives than voxel carving.

3. It can provide both volumetric and surface information, while previous approaches result in either of two.

4. Using convex bricks, a 3D decomposition of the shape is obtained automatically.


Our implementation uses well-studied computational geometry operations such as (a) 2D convex decomposition, (b) 2D intersections and (c) 3D-3D convex intersections. The implementation is similar to voxel carving. Starting from a bounding box, each convex brick is projected on to a new silhouette. If it lies outside, the CB is discarded. If it lies completely inside, it is retained. If it intersects with the silhouette, then the intersection is divided into k convex partitions. Each convex partition is then back-projected to subdivide the convex brick into k smaller convex polytopes. Thus, while voxel carving subdivides each voxel into 8 smaller voxels, our approach subdivides each convex brick into k convex polytopes depending on local silhouette shape.

Paper pdf


High quality visual hull reconstruction on real data using convex bricks. The shapes are complex and highly non-convex. From left to right: # of CB’s: 23107, 21120, and 35932. Number of vertices: 106872, 101325, and 156243. Data courtesy Yasutaka Furukawa.

Comparison of reconstruction using different number of convex bricks (CB) and voxel carving (2102 voxels, 1659 on surface)

Our approach allows easy control of precision using parameter alpha (larger alpha is less precision). Notice that even at larger alpha, the obtained VH retains high frequency details. In comparison, voxel carving requires significantly larger number of voxels for similar precision and results in blocky reconstruction.

Back to my homepage