PHd experimental results
2009.10.28. Complete floor 3D reconstruction
I've introduced the RT matrix concept in order to calculate relative positions. So, we can know the camera position in the world and its focus of attention (foa). We have the following RT-matrices:
- Robot position relative to world coordinates (translation on X & Y axis and rotation around Z axis)
- Pantilt base position relative to robot position (translation on Z axis)
- Tilt height position relative to pantilt base (translation on Z axis and rotation around Z axis)
- Tilt axis relative to tilt height (rotation around Y axis)
- Camera optical center (translation on X & Z axis)
- Focus of attention relative to camera position (translations on X axis)
Furthermore, I've added robot Pioneer movement in order to reconstruct the whole floor.
Intelligent Followface - 2009.09.14. Systematic search
On this video, we've tested the systematic search around scene, in order to guarantee system will explore all scene around it. Thus, we'll search faces using random search with systematic search. Now, we're sure that any face will be out of range.
Intelligent Followface - 2009.09.09. Following faces around scene
Here, we can see a visual attention mechanism. Now, our algorithm chooses the next fixation point in order to track several objects around the robot simultaneously. This behavior is based on two related measurements, liveliness and saliency.
The attention is shared among detected faces and new exploration points, when forced time to explore scene is out. Moreover, this time is depends on how many faces are detected. If we've several detected faces, this time will be large...
Pioneer's running between two lines, like a road
Using only visual information, the Pioneer robot can detect border lines over floor and it goes through them.
Its behaviour is based on vff algorithm and we've added some ideas from Akihisa Ohya paper called 'Vision-Based Navigation of Mobile robot with Obstacle Avoidance by Single Camera Vision and Ultrasonic Sensing'; the actual image is divided into three vertical segments (left, center and right) and then we calculate the total number of pixels in each of the three parts, determining the direction of safe passage. That way the robot movement is softer than using only vff algorithm.
Pioneer's running between two lines, like a road
Using only visual information, the Pioneer robot can detect border lines over floor and it goes through them.
Its behaviour is based on vff algorithm and we've added some ideas from Akihisa Ohya paper called 'Vision-Based Navigation of Mobile robot with Obstacle Avoidance by Single Camera Vision and Ultrasonic Sensing'; the actual image is divided into three vertical segments (left, center and right) and then we calculate the total number of pixels in each of the three parts, determining the direction of safe passage. That way the robot movement is softer than using only vff algorithm.
Pioneer Robot under wander behaviour
Using the original VFF behaviour and the method called security window, developed on my grad project, the robot can solve some natural situations qualified as 'narrow places' (e.g. doors, corridors, ...) and then it can wander around my department hall.
The goal is quite simple: the robot must go from one side to another one. It uses a scanning laser in order to avoid dynamic (e.g. people) and static obstacles (e.g. doors, walls).
Graphic Data Processing Master
Skinning, muscles, skeleton, clothes, and dynamics techniques modeled under Maya
On these videos, we can see a little animation movie. I've used skeletons, muscles, clothes and several dynamics techniques in order to create a realistic animation (the characters are made of deformable parts).
Skinning is the name given to any technique that deforms the skin of a character. By extension, the term skinning is commonly used to describe subspace deformations (static or skeleton driven).
And what are skeletons? Skeletons are hierarchical, articulated structures that let you pose and animate bound models. A skeleton provides a deformable model with the same underlying structure as the human skeleton gives the human body.
Perlin Noise
Here, I've created a Perlin Noise animation. I usually use Perlin Noise as a procedural texture primitive. That way, I can create effects like this and it's used to increase the appearance of realism in some computer graphics techniques.
For example, on the second image, I've created a virtual landscape using basically Perlin Noise.
Modeled and animated human skeleton
Here we're a human skeleton laughing. It has been modeled and animated by Maya Software.
Classic pong modeled and animated under Maya
Here we've created a bouncing ball and two strikes. Then, we've animated them; the first part is based on key frame animation, so when we want to describe some movement, we mark the extremes frames as key frames and we design the movement for strikes and ball...
Computer Science Grad Project
Local navigation on Pioneer Robot using GPP
This method uses a navigation function to generate a gradient field that represents the optimal (lowest-cost) path to the goal at every point in the workspace. Additionally, we've developed an integrated sensor fusion system that allows incremental construction of an unknown or uncertain environment, for local navigation.
Local navigation on Pioneer Robot using VFF
On this video, we can see a real-time obstacle avoidance method entitled Virtual Forces Field. It permits the detection of unknown obstacles simultaneously with the steering of the mobile robot to avoid collisions and advancing toward the target. The novelty of this approach lies in the integration of two known concepts: Certainty Grids for obstacle representation, and Potential Fields for navigation.
Global navigation using GPP
On this video, we can see a simulation on navigation using Gradient Path Planning Algorithm. Under OpenGL we have improved the agility of response to graphical level.
Localization using MonteCarlo Method
To navigate reliably in indoor environments, a mobile robot must know where it is. Thus, reliable position estimation is a key problem in mobile robotics. We believe that probabilistic approaches are among the most promising candidates to providing a comprehensive and real-time solution to the robot localization problem.
So, on this video we've used Monte Carlo localization method where we represent the probability density involved by maintaining a set of samples that are randomly drawn from it. We show experimentally that the resulting method is able to efficiently localize a mobile robot without knowledge of its starting location.
To filter object borders using monocular vision from robot camera
Using a single camera, the robot can filter object borders and then it can estimate distances from there to them.
3D floor recognition using monocular vision from robot camera
Using computacional geometry algorithms, we can estimate distances between robot position and obstacles
Other applications using OpenGL
Now, we can see a new application entitled 'Jde Productions'. We've tried to see a film in the Laboratory's ceiling designed using OpenGL. The result is a new virtual world where we can navigate for watching films!
Another interesting ones
Imitation-based evolution of artificial game players
Now, we're going to see an example of usage of imitation techniques to generate more human-like behaviours in an famous action game: Quake III. The goal is that an agent closely imitate the Quake III agent (the other one on scene).
3D-modeled famous buildings
Here, we've some interesting modeled monuments.
HRP-2 humanoid robot, by Kazuhito
HRP-2 is a new humanoid robotics platform, which we have been developing in phase two of HRP. HRP is a humanoid robotics project, which has been lunched by Ministry of Economy, Trade and Industry (METI) of Japan from 1998FY to 2002FY for five years. The ability of the biped locomotion of HRP-2 is improved so that HRP-2 can cope with rough terrain in the open air and can prevent the possible damages to a humanoid robot's own self in the event of tipping over.
Autonomous guide robot, by ActivMedia
ActivMedia has developed this guide robot.
![URJC Logo [URJC Logo]](./images/logo_urjc.jpg)
![Robotica Logo [Robotica Logo]](images/logo_robotica.jpg)

