Peters Homepage
Menu
News
Me
Articles
University
Software
HMT
Screenshots

Valid HTML 4.01!

Valid CSS!

University Work

At Aalborg University I have been involved in the following projects during the period 1997-2002:

1st Semester: Global Positioning System (in Danish)

Abstract
This report describes the Global Positioning System.

The accuracy of the position data is examinated by collection position data from a Shipmate RS58000 GPS reciever connected to a PC.

The background for USA's Selective Availablity politic and developments in American politics on this subject is examined.

Furthermore Differential GPS and the possibility of combining GPS and the Russian GLONASS system is treated.

Frontpage
Click for highres version
Download
Report in .ps.gz (818k)

Report in Adobe PDF (813k)

Sourcecode (1M)

2nd Semester: Digital Signal Processing (in Danish)

Abstract
This report deals with Digital Signal Processing (DSP). The generel development in the electronics industry, which consists of a change from dedicated hardware devices to the usage of generic hardware solutions, which are adapted the specific requirements through software, is treated, and a number of consequences are examined.

On basis of the construction of a software-based digital mixer device with a 3-band equalizer, it is demonstrated that the new development leads to a series of advantages.

Based on the experience gathered from the construction, the requirements for software development methods used for development of this kind of software is considered.

It is concluded that there is a need to focus on developing new methods for software development.

Frontpage
Click for highres version
Download
Report in .ps.gz (792k)

Report in Adobe PDF (538k)

Sourcecode (144k)

3rd Semester: Elevator Control System

Abstract
This report is the documentation of the object oriented development of an elevator control system test program. The program performs a statistical evaluation of the connected control system through simulation of the passenger flow and elevator mechanics in a building. The user can set up the passenger flow and elevator characteristics to match actual conditions. To test the functionality of the program we have developed our own centralized control system in JAVA.
Frontpage
Click for highres version
Download
Report in .ps.gz (428k)

Report in Adobe PDF (1.3M)

4th Semester: Frequency Analyzer (in Danish)

Abstract
This report documents the development of both hardware and software for a dedicated real-time system for frequency analysis of audio signals. The system is based on a Motorola MC68331-microcontroller. Real-time time execution is realized by e.g. DMA-transfer of sampled signals to RAM and Power Spectrum to the display. The frequency analysis is based on an optimized application of the Fast Fourier Transform-algorithm.
Frontpage
Click for highres version
Download
Report in .ps.gz (1.9M)

Report in Adobe PDF (2.1M)

Sourcecode (155k)

5th Semester: VoIP Gateway and Terminal (in Danish)

Abstract
This report documents the development of a real-time Voice over IP system, i.e. the units of a H.323 zone: a gateway and a terminal. The gateway is a gateway between an IP LAN and a number of ISDN2-connections. A number of PSTN telephones are connected to the terminal residing on the IP-lan using a combination of a sound card and a parallel port. The development of the system takes its starting point in Recommendation H.323 for multimedia communication on a packet switched network. The network programming is based on sockets (winsock) and the sound card on DirectSound 7.0. The programs are multi threaded intended for use in Windows 2000. Analysis, design and implementation is object oriented. Also a study of the different Windows versions as to their real-time capabilities is conducted.
Frontpage
Click for highres version
Download
Report in .ps.gz (784k)

Report in Adobe PDF (1.4M)

Sourcecode (40k)

6th Semester: Automated Lip Synchronization of Animated Characters

Abstract
This report deals with development of a system for Automatic Lip Synchronization of Animated Charac- ters (ALSAC). The development is done in cooperation with Interactive Television Entertainment Aps (ITE). After being trained the system is able to determine a sequence of visemes and corresponding time stamps, which matches a given speech signal. The system is based on visemes and not on phonemes which is the normal approach.

For training ALSAC utilizes a clustering mechanism, incorporating the Dynamic Time Warping (DTW) algorithm. The recognition is implemented using the OnePass algorithm. Modularity is obtained by use of the Strategy Design Pattern. This is done to ensure the possibility to change algorithms (strategy) of the various parts independently of the rest of the system. The ALSAC-system is a C++ library which ITE can use as a building block in their products. It is concluded that a system performing the intended task of classifying the contained sequence of visemes and time stamps in speech signals has been implemented correctly. However the test shows that ALSAC does not produce an accuracy score as high as required. This can partly be explained by the fact, that the training data used were not optimal. It is expected that with better training data and adjusted system parameters the performance of ALSAC can be increased. ALSAC is believed to be able to accelerate the currently manual animation process at ITE, even though the system's accuracy score was not found to be optimal in the system's present state.

Frontpage
Click for highres version
Download
Report in .ps.gz (1.5M)

Report in Adobe PDF (2.1M)

Sourcecode (50k)

7th Semester: Database Performance Improvements Using Transparent Proxying of Relational Databases

Abstract
In the process of testing the hypothesis that methods used in distributed systems can be used for improving a centralized database system a proof-of-concept implementation of a Structured Query Language (SQL) proxy is developed. The developed proxy is optimized for systems which mainly perform search queries. A performance test of the developed system shows that methods used to ensure reliability and availability in distributed systems can be used to increase performance in systems where the number of searches exceed the number of updates, hereby confirming the hypothesis.
Frontpage
Click for highres version
Download
Article in .ps.gz (38K)

Article in Adobe PDF (52K)

Slides in Magicpoint (215K)

Semcon Poster in .ps.gz (61K)

8th Semester: Object Tracking With a Head Mounted Camera

Abstract
This report deals with the development of a computer vision system for object tracking of everyday objects on a table using a head mounted camera. The problem at hand is derived from the EU funded project ARTHUR. A system must be developed which tracks objects with a frame rate of at least 10 frames per second.

The system can in general be divided into 3 core parts; segmentation, stabilization, and tracking.

The stabilization, which estimates the orientation of the camera relative to the surroundings, utilizes window based correlation to estimate the disparity between images and a 2D affine method to convert the disparity to angles in world-space.

The segmentation of objects is solved by using a bipartite approach. Initially pixels belonging to the table are found using global thresholding in the hue channel of the HSV color model, and subsequently pixels belonging to objects are found using the convex hull.

The tracking part, is based on feature extraction of among others invariant moments and histograms. Mahalanobis distance is used for the feature matching, and feature prediction is based on simple linear extrapolation. Furthermore, a general window based object recognition method for handling occlusions is proposed which works on histograms in the HSV color space.

The system is designed using Matlab, and a prototype is implemented in C++ based on the Intel Corporation's Open Computer Vision Library (OpenCV). The prototype contains the segmentation and tracking component of the system. Occlusions are, however, not handled currently.

The test of the prototype showed that the system is capable of tracking separate objects and is robust with respect to scaling and rotations. Unique objects are tracked more robustly than objects with similar color. The demand regarding a frame rate of 10 frames per second has been tested and confirmed, as long as there are 6 or fewer objects in the camera's field of view.

It is concluded that the system with the chosen delimitations works as specified, but a number of future improvements is suggested. Specifically stabilization and the method for handling occlusions must be added to the current prototype in order to achieve better results.

Frontpage
Click for highres version
Download
Highres gzipped Postscript (29M)

Lowres Adobe PDF (3M)

Slides (Danish) (5.2M)

9/10th Semester: Handling Occlusions in Augmented Reality

Abstract
This report documents the development of a system to resolve occlusions in augmented reality. The system is built as an extension to a reconstruction system made by the VISICS department at K.U. Leuven, Belgium, which is capable of reconstructing a textured 3D surface model of a static scene from a sequence of un-calibrated images.

The developed system consists of 3 parts: Generation of initial occlusion mask using background subtraction, refinement of occlusion mask using visual hull with post processing, and visualization.

The initial occlusion mask is created using background subtraction after an image warping step which transforms images into a reference viewpoint.

Refinement is done in two steps: First edges are refined using a modified visual hull algorithm, and secondly interior holes are classified as real holes or is caused by camouflage effects using an algorithm developed by the project group.

Visualization produces the final augmented image using the calculated occlusion mask. The method presented is optimized for the capabilities of modern 3D hardware.

A prototype has been implemented in C++ using OpenGL and The Visualization Toolkit (VTK) on a Linux platform.

Test of the prototype show that the background subtraction process is able to generate a good initial occlusion mask even in cases with complex silhouettes. Test on synthetic data show that the two-step refinement process is able to eliminate errors in the initial occlusion mask.

It is concluded that the augmented images generated by the developed system contain less visual artifacts than using the raw depth information of the reconstruction system, even without the refinement step. Adding the refinement step will most likely decrease the number of artifacts caused by camouflage effects in the interior of the silhouettes.

Frontpage
Click for highres version
Download
Highres gzipped Postscript (28M)

Lowres gzipped Postscript (3.7M)

Slides (Danish) (1.3M)


MPEG Videos
Botanical Sequence
LQ (2.2M)  HQ (11M)

Image Warping
LQ (1.3M)  HQ (8M)

Background Subtraction
LQ (1.2M)  HQ (8M)

Augmented Sequences
LQ (3.8M)  HQ (23M)