A vision-based 3D input device for space curves

From AIRWiki
Jump to: navigation, search

Part 1: project profile

Project name

A vision-based 3D input device for space curves

Project short description

This project is aimed at designing a tangible input device for the reconstruction of a space curve in a 3D modeling software. The idea behind this project is to create a system in where users can physically manipulate a flexible wire for obtain a desired shape in a 3D modeling software. In particular the developed software is able to shot a photo of the tube using a camera connected remotely, and, starting from that single image, it can find the 3D shape of the curve. After the reconstruction, the curve is automatically imported in a 3D modeling software and it's mathematically processed for being easily usable.

Dates

Start date: 2007/09/20

End date: ongoing

People involved

Project head

Alessandro Giusti User:AlessandroGiusti Vincenzo Caglioti

Students currently working on the project

Lorenzo Mureddu User:LorenzoMureddu as a project for course Laboratorio Software, prof.ssa Bolchini

Students who worked on the project in the past

Lorenzo Mureddu User:LorenzoMureddu as a 1st level thesis

Part 2: project description

Introduction

Human-computer Interaction is a serious problem regarding the 3D modeling.

There are a lot of instruments for work in 3D space, but no-one of them has become the stardard due to difficulties in the interaction with a 6DOF (Degree of Freedom) world.

During this project we want to produce a system for an user friendly input device of a 3D curve. The goal is to digitize a space curve whose shape is physically defined by the user.

The manipulable support adopted allows the user to define the 3D shape with his own hands, having a real object as an instrument, unlike what happens with devices requiring the user to draw a trajectory (with some visible marker) in the space.

The system is composed by a piece of flexible, circular-section wire, which the user bends to the desired shape, and a digital camera.

The photo of the bent wire is used to reconstruct its shape, which is the output of our system. Although counter-intuitive, single-image 3D reconstruction of the wire shape is possible by using its tube-like geometry (called canal surface) and its perspective effects.

The system at work

Our system can be described in a few passages. First-of-all the software automatically shots a photo to the manipulated wire using the camera connected remotely.

On a second phase, our software reconstruct the shape of the curve in form of spline using an ad-hoc alghoritm written in Matlab (at present). In this phase the spline is modified according to some values chosen by the user: 3 coordinates to define the initial point of the curve and 3 angles to define the direction.

In third place the spline is imported and visualized in Blender (a famous 3d modelng software) as a Bézier curve. The curve that we obtain can be view as a line or as a tube, according with users needs.

At this point our software offer another feature: it can easily build complex structures formed by many curves. Users have to choose first which point of a curve should be used for the beginning of another one, and secondly 3 angles to define how the curves should be directed by each other.

a multi-tube structure

Use of our System

Now we have a curve in a 3D modeling software, but what can we do with this? There are really a lot of possible uses of a 3D curve:

  • For example users can use it simply for delineate a tube in a 3D scene.
  • Otherwise a curve can be used to make a path that an object can follow, included the virtual camera.
  • Finally users can use a curve to deform an object, so to create a complex object with the shape of the curve obtained thanks to our software.

Addendum

  • Lorenzo Mureddu's graduation thesis in italian "Progetto e sviluppo di un sistema di input manipolabile per curve 3d" media:tesi.pdf