010588001 Machine Vision (Konenäkö)
Practical Assignment
Practical assignment is compulsory.
Practical assignment tests the ability to implement a solution to or develop methods for a machine vision problem. This project is done in groups of 1 to 4 students. The maximum size of the group is given in the list of tasks. There can be also fewer persons than maximum group size. Bigger maximum group size does not necessarily correlate to hardness of the work.
Phases of the practical assignment are as follows:
When you are doing your work, remember academic honesty i.e. it is plagiarism to present others work as your own and use sources without references. In the most of the cases, the course book of the course is a good reference.
The selection of tools is done by the students. Any appropriate tools can be used, if the students are able to use them by themselves.
The document in HTML form is returned in a package with the source code using email. Use subject ``MV project'' in the email message. The document must contain
All HTML files and images must be within one directory (e.g. doc),
and all source files in another (e.g. src). Example of a packaging
session:
% ls -l total 2 drwx------ 2 ltl users 1024 Mar 31 09:10 doc drwx------ 2 ltl users 1024 Mar 31 09:10 src % tar cvf package.tar doc src doc/ doc/index.html doc/image1.gif src/ src/program.c src/program.h
The work is evaluated using the following aspects:
The work is not approved, if any of these aspects is evaluated as not approved. The hard deadline for the practical assignment is 15.6.2004. Practical assignments are not accepted after this date if no special arrangement is agreed with the examiner before the deadline.
One good possibility is to suggest your own topic to the examiner of tasks (Saku Kukkonen).
Compare the Fourier, sine and cosine transforms in respect of their ability to represent fuzzy or very sharp areas in an image. It is necessary to do the transforms for images of different type and then analyze the result qualitatively and quantitatively.
In this work it is required that the following is performed:
Supervisor: Saku Kukkonen
Group size: 2
| Kinnunen, Ville |
| Kuivalainen, Markku |
Compare quantizers of different type by error calculation and a selection of input variable distributions. Develop a method for optimal quantization of multiple input variables with different distributions.
Supervisor: Saku Kukkonen
Group size: 2
| Moilanen, Tomi |
| Pesari, Lassi |
To study the basis with ICA for texture and natural images. Using ICA for image mixture separation.
Supervisor: Saku Kukkonen
Group size: 2
| Cimadevilla Estradera, Alejandro |
| Gonzalez-Baylin Monge, Juan |
Object recognition can be performed by matching several local features of an object. The objective of this project is to implement a recently introduced method called SIFT features in Matlab (see figure below).
In the work, the following is expected
More information about the features can be found in the following papers:
Supervisor: Ville Kyrki
Group size: 4
| Soikkeli, Kimmo |
| Sormunen, Ilkka |
Automatic categorization of images into real-world categories that would make sense to people is still largely an unsolved problem. The objective of this project is to collect and analyze a real-world image database for object categorization.
In the work, the following is expected
More information about global image features can be found in the following papers:
Supervisor: Ville Kyrki
Group size: 3
| Hämäläinen, Joonas |
| Uskelin, Hannu |
| Vatonen, Juho |
Implement the (Weighted) Distance Transform on Curved Space (DTOCS and WDTOCS) using a tool that enables good visualization. The transform computes distances along a gray-level surface, where gray-level values are understood as heights (e.g. terrain map).
The distance image should be shown after each pass of the distance transform algorithm (an added bonus would be an option that enables updating the image after computation of each pixel, i.e. an animation of the transform). The actual distance transform calculation should be implemented so that changes in local distance definitions can be made easily (the same visualization should work just fine for any 2D distance transform just by changing the definition of local distances between pixels).
Also the Route DTOCS algorithm for finding the shortest route between two points on a height map should be visualized step by step.
The implementation should work over the web (e.g. a java-application - maybe the same topic/project could be negotiated to be accepted for the internet programming course?).
Supervisor: Leena Ikonen
Group size: 4
| Luoma-aho, Vesa |
| Rongas, Timo |
| Simola, Mikko |
Make a literature survey about using evolutionary algorithms to machine vision related problems and make extensive report about these. Some useful sources of information are:
Supervisor: Saku Kukkonen
Group size: 3
| Alaoutinen, Satu |
| Laurila, Pekka |
| Leppänen, Pasi |
Find online demonstations in the internet for each topic handled during lectures. When there are several pages available about same topic (e.g. image compression) make comparision between these. Try to especially find pages with interactive features (e.g. applets).
Supervisor: Saku Kukkonen
Group size: 3
| Bolesta, Grzegorz |
| Marek, Martin |
| Soukup, Petr |
A brief literature survey and implementation of some of the most promising methods.
In this work a literature survey must be done from Elsevier and IEEE Explore journal databases. Only journal articles are considered and survey type of journal articles are preferred. Student must generate taxonomy of the existing methods and implement demonstration for at least two of them (one method per student and only one can be a thresholding based method). For demonstrations a proper test images must be explored from the Web.
Supervisors: Joni Kämäräinen, Saku Kukkonen
Group size: 2
| Kammann, Tobias |
| Sproedt, Pascal |
The finding and implementation of an algorithm that is capable of identifying whether the digital input image is natural image or art painting. Some useful links:
Your job is to find algorithms that can identify some differences between these two types of images and your program should be able to recognise whether random input image is natural or painting, e.g., Lena -> Natural image, Mona Lisa -> Art painting.
Supervisor: Timo Mantere
Group size: 3
| Alatalo, Juha |
| Kauppi, Tomi |
| Koivusalo, Timo |
Studying and implementing the algorithms that measures some closeness metric of compared digital images.
Your program should be able to take, e.g., 10 or more input images and sort them in the closeness order by some image metrics.
See example of image classifier: http://www.cis.hut.fi/picsom/
Supervisor: Timo Mantere
Group size: 2
| Rela, Leo |
Compare different heuristics used for hyperspectral image compression by analysis of compression ratio and speed. The algorithm will be tried on Infrared Hyperspectral Sounders. At lest three different metrics will be applied.
This work should contain the following:
Supervisor: Jarno Mielikäinen
Group size: 1
| Kubasova, Olga |
In this work our aim is to create a computational model, which assesses chromaticity differences based on an ellipse data set. The used ellipse data sets are the MacAdam ellipses in the CIE 1931 (x,y)-chromaticity diagram and the ellipses which were used to derive the CIEDE2000 color-difference formula in the CIELAB color space.
Supervisor: Saku Kukkonen
Group size: 1
| Kuparinen, Toni |
The design and implementation of a stereo vision system capable of determining the 3D-coordinates of a red laser dot within the field of vision.
The system has two cameras in a fixed known position relative to each other. From both images the system will identify if there is a red laser dot visible. A red laser is selected because it seems to stand out very well, at least with human perception. The system will then determine the coordinates of the dot in both images and calculate an estimate of the 3D-coordinates of the dot, knowing the camera configuration.
The system will utilize two standard webcams as cameras, connected via USB to a x86 Linux PC. The final program will be coded in C and it should be near real time.
Supervisor: Saku Kukkonen
Group size: 1
| Paalanen, Pekka |
Input image contains a periodic set of dots of the same size. A number of dots is missing. The task is to locate and compute the number of missing dots. Similar techniques can be applied in some cases of machine vision based defect detection in textured materials, which can be widely used in industry (i.e. paper, textile etc).
Supervisor: Joni Kämäräinen
Group size: 1
| Sadovnikov, Albert |
Goal is to reduce colors, e.g, from 24-bit true color to 8-bit fixed palette with minimal loss of quality. Reduction is done by splitting the color space into clusters with the following methods:
After palette composition, methods will be compared by inspecting images visually and numerically.
Supervisor: Saku Kukkonen
Group size: 1
| Paananen, Juha |
Implement machine vision elements for matlab using simulink. Idea is to implement same kind of elements as are in cantata. There should be elements at least for:
Implementation should work same way as cantata, i.e., user can input elements and connect them, e.g., input image -> median filtering -> histogram equalization -> visiualization of the result.
Supervisor: Saku Kukkonen
Group size: 4
| Nuutinen, Esa |
| Pajunen, Kimmo |
| Repo, Pekka |
Implement classifier for euro coins. You may asume that tale (number) sides of coins are only considered.
This task includes taking at least 20 digital images of each different value coins used in Finland (i.e. totally at least 120 images) and then creating a classifier which finds a coin from image, calculates features from it, and classifies the coin. You should use half of the images for training the classifier and rest half for testing the classifier.
Your classifier should be transalation, rotation, and scaling invariant, i.e., a coin can be in any place of an image, any way rotated, and images are taken from different ranges. You may use uniform backround in images and asume that there is always one coin in an image.
Emphasis of this task is to segment coins from images and find suitable features from coins. Matlab is recomended implementation tool and several classifiers exist for this tool.
Supervisor: Saku Kukkonen
Group size: 3
| Helminen, Ville |
| Partanen, Heikki |
A fuzzy/shaken/blurred image results often when a free hand photography is taken with a long exposure time. Make a literature survey about techniques for correcting such images to look sharp. Some useful sources of information are:
Implement three most promising sharpening techniques and apply them for an example image. Compare results.
Supervisor: Saku Kukkonen
Group size: 3
| Kangas, Kimmo |
| Suikki, Juha |
Implement automatic system for estimating the length of the food line of the main lunchroom of the university. The length of the food line should be estimated from an image provided by computer club Ruut.
Your html dokumentation of the project should include demonstration where current image of the food line is shown with the estimation of number of people on the line.
Supervisor: Saku Kukkonen
Group size: 2
| Poutiainen, Matti |
| Ruohonen, Ville |