3D Scene Understanding



Rendering synthetic objects into real-world scenes is an important application of computer graphics and computer vision, particularly in architectural and visual effects domains. Presently, augmentation of virtual objects into real scenes is usually done manually, where synthetic 3D objects are first created in a 3D modeling software and then rendered in the real scene using a rendering engine. This process is usually very tedious and requires expertise. Our aim is to devise a system that automates the process of placing the object correctly on a planar surface.


First a geometric model of the 2D scene had to be obtained. This was extracted by combining multiple images together, a process called triangulation. The softwares I used for this purpose were bundler and Autodesk’s 123D Catch. The next challenging part was to find unoccluded 3D planes in the scene big enough to accommodate the object I wanted to place on it. Once a desired plane was found, the object was placed on it using camera parameters obtained from the triangulation method. The final output was rendered image. Image of each step is shown below.