You are warmly welcome to study with me!!!


I hope that we can spend some exciting time in both your and my life at The University of Wales, Aberystwyth. To be honest, I do not like that you repeat my existing research. Therefore, I do hope that you will learn something here useful for both your and my career.


Here are some possible projects:

  1. Image morphing

    Can you change one face to another? Can you change "TOM" to "JERRY" and vice versa? This is a chance to investigate how to transform one shape to another. To this end, you need to display images from which you select and record feature points. Then you can design a function to fit the two sets of points from the two images. Once you get the function, you can animate the process of image changing. You can implement this using either Java and OpenGL programming language.

    This project is useful for the creation of special effects in TV advertisements, cartoon, films, entertainment, computer graphics, visualization...

  2. Jigsaw game

    In this project, you have to develop an environment to let the user to load an image, randomly split and place the image on a desk (for example), then the user can play the jigsaw game. You can implement this project using either Java or OpenGL programming language.

    This project provides you with a rare opportunity to taste how to develop a simple computer game which may dominate your future career.

  3. Snooker game

    Snooker is a popular game. The problem is: can you design an environment to let the user play the game. This is a chance for you to challenge yourself. In this project, you have to design a table with pockets and a number of balls, track balls, and consider the interaction between balls and table, balls and pockets. You can implement the game using either Java or OpenGL programming language.

    This project provides you with a rare opportunity to taste how to incorporate the physics law into the development of a simple yet exciting computer game which may dominate your future career.

  4. Implementation of a football game

    In this project, you have to construct a football pitch and its surroundings. For playing a game, you have to simulate two teams and detect the collision between the players and between the players and the football. In order to make the game more attractive, you can incorporate some intuitions into the game and animate the players and the football.

    This project provides you with a rare opportunity to taste how to embody football rules and AI techniques for the development of a simple yet exciting computer game which may dominate your future career.

  5. Slider puzzle game

    In this project, you will crate an interactive interface to let a user play the slider game. In this game, the real numbers 1 through 15 are randomly put in a 4 by 4 grid with one empty. Only those around the empty can move. The game is over when all 15 numbers have been put in an ascend order. You can implement the game using either Java or OpenGL programming language.

    This project will give you a valuable taste about how to implement a computer game that may dominate your future career.

  6. Maze game

    In this project, you will create a maze and then go from the starting point to the ending point. In order to do so, you have to find a proper way. In order to complicate the game, you can set a number of doors(barriers) controlled by something inside the maze. You can implement using either Java or OpenGL programming language.

    This project will give you a valuable taste about how to implement a computer game that may dominate your future career.

  7. Artificial life simulation
  8. In this project, you need to simulate the flocking behaviour of animals in the real world: a pride of lions, a school of fish, a herd of cattles, etc. Such simulation not only provides you with a rare opportunity to gain a taste of the application of computer grphics, but also enables you to experience the evolutionary proces of the natural world. Thus, through this project, you will gain knowledge about computer graphics, computer game, intelligent learning and natural evolution.

  9. Image decomposition

    The quality of a given 2D image may not be satisfactory since some parts may be too dark, while others may be too bright. This project intends to apply the Retinex theory to decompose the given image into two subimages: reflectance and illumination. The reflectance image will include mainly the information about the reflectance properties of the imaged object, while the illumination image will mainly show the illumination effect. While such decomposed images can be directly used for face recognition, for example, they provide another powerful tool to enhance the quality of images.

    This project will enable you to explore the opportunity to gain the highest quality of images without being affected by the environmental illumination conditions.

  10. Saliency detection from images

    Human visual systems search the object of interest usually in two stages: pre-attentive stage and attended staged. The pre-attentive stage identifies possible region of interest, while the attended stage focuses attention to the region of interest for detailed information. This project intends to implement and develop computational methods for the detection of possible regions of interest from given images.

    This project will provide a valuable opportunity for you to explore some aspects of the human visual systems.

  11. Image compression
  12. Have you ever considered to create your own digital media such as DVD, VCD, and movie? In this case, you have to consider how to store your products on certain media. Since in general, the products require a huge amount of space, you have to consider how to compress the data. Otherwise, you can hardly imagine that a DVD can store a film running up to 2 hours and 10 hours, since within one second, for example, about 30 megabyte space is required to display 30 frames of data with resolution of 640 by 480 by 24 bits.

    This project provides a rare opportunity for you to investigate the secret behind the DVD why it can store so much data for entertainment and information delivery and a foundation for development of your own digital products. In this project, you can use either (fast) Fourier transform or (fast) discrete cosine transform to process the image data in the programming language of Java or C.

  13. Texture analysis and and generation

    Texture design is important for a number of applications such as mathematics, physics, geology, ecology, material, chemistry, textile industry and arts. The natural world often provides a rich source for the inspiration of texture design. In general, a digital camera can be used to capture the image of the patterns of interest. Then the remaining problem is to analyse the patterns in the image and generate them in different scales. Or you can design your own algorithm to generate some patterns of interest.

    This project will provide you with a rare opportunity to investigate how to artificially create the wonderful patterns in the real world and thus enable you to design attractive appearance for your own products.

  14. Accurate and efficient rendering and animation of triangular meshes from a cloud of 3D points

    This project essentially deals with the extraction of triangular meshes from a set of 3D data points. A number of techniques are available. Thus, you are expected to implement one or two of them and make some improvements to them.

    This project will give you a taste about how to render a computer graphics model using points

  15. Free form 3D shape matching

    Laser scanning systems provides great impetus for the research and application of free form 3D shape matching which finds applications in medical imaging, computed aided geometric design, computer graphics, virtual reality, 3D image retrieval from internet or industrial inspection. In this project, you are expected to carry out a comparison of one or two of existing algorithms and improve them in one way or another.

    Is it easy for you to match two data sets captured from two nearby viewpoints of the same free form shape such as a building, castle, and church? This project will provide you with a rare opportunity to challenge yourself in dealing with this seemingly easy task. While you can do it, can you instruct a computer to "always" "successfully" do the same task?

  16. Similarity metric between free form shapes

    It is important but difficult to compare different free form shapes. You know whether two given shapes or images of teletubby, rabbit, dinosaur and bunny are similar or dissimilar? Can you do this quantitatively?

    In this project, you are expected to develop some quantitative metrics to measure the extent to which two free form shapes are similar or dissimilar. Such metrics can be used for information or image retrieval on Internet or object recognition.

  17. Object recognition using range images

    Given a database of descriptions of objects and a description of a new object, can you recognise which object is this new object? Object recognition can be approached using either local or global features extracted from the images. Thus, this project can be shared by two students. You can extract your own features to represent the objects and validate them using experiments.

  18. Using neural network for face recognition

    Neural network is a powerful tool for a number of applications like character recognition. In this project, you are given a number of face images, then you need to use these images to train a neural network. Finally, given a new face image, you may recognise the face of a specific person based on the knowledge you learned in the neural network.

    This project enables you to experience the powerfulness of neural networks in dealing with difficult problems.

  19. Using genetic algorithms for the optimisation of camera motion parameters from range images

    Currently, the motion parameters are estimate mainly using the least squares method which is often trapped at local minima. In this project, you are expected to implement the genetic algorithms to somewhat overcome that problem.

  20. Feature extraction from 3D structured points data

    3D images are widely used in various applications like medical imaging, computed aided geometric design, computer graphics, virtual reality, or industrial inspection. To understand the 3D images, it is necessary to extract various features like orientation, curvature, planar patches and bitangent points from the images. Thus, in this project, you are expected to develop algorithms to extract some features of interest and display them in a graphical environment.

  21. Learning from experience

    Experience is so important for you to improve your performance in the future. In this project, you are expected to investigate how to make full use of the past experience in improving your performance when dealing with similar tasks. To this end, you first need to formalize the problems at hand using, for example, feature value pairs. Then you need to discriminate different features in the sense of the prediction or the classification of the given examples. Finally, you will create a decision tree, for example, as the knowledge you learned from the given examples.

    When you are given a new instance, then you can quickly search the tree and make decisions about what you you should do. You can implement a simple system using Java or c programming language.

  22. The use of points as a display primitive

    Polygons are widely used for rendering. Unfortunately, the extraction of polygons is not an easy task. On the other hand, it is natural to use points directly for rendering. In this project, you are expected to develop algorithms for efficient rendering uniquely based on points and its associated orientations.


Here are some tips for writing your thesis.


Disclaimer: The information provided on this and other pages by me, Yonghuai Liu (yyl@aber.ac.uk), is under my own personal responsibility and not that of the University of Wales Aberystwyth. Similarly, any opinions expressed are my own and are in no way to be taken as those of U.W.A.


Send comments to: yyl@aber.ac.uk