A vision-based 3D input device for space curve
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.
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