Project 1 : Image Processing and
GUI in Java
Nik Tuzov, Ed Dudek
The goal of this project
was to create an image-processing application with GUI. The project was
developed in NetBeans IDE 5.0 (under Linux) and the following features are available:
-
Opening a
directory and loading an .rgb image
-
Detecting the
edges of the image, displaying the result and saving it to a hard drive
-
Ranking images
based on their similarity to the currently open image and displaying the
result
Below you can download:
<-- NetBeans project folder
(it has the README file with more information)
<-- a report with a class
diagram created in VP for UML
<-- a few sample *.rgb
files and a MatLab program to convert .jpg to .rgb
Project 3 : Multithreaded programming
in Java
Nik Tuzov, Matthew Glause
The goal of this project
was to create an application that would take advantage of multithreading. The project was
developed in NetBeans IDE 5.0 (under Linux).
The program processes a
specified directory of *.rgb images sharpening each one and saving it in the
same directory. The pivotal point in this project is how to assign those *.rgb
files to the threads to achieve a maximal speed-up. Our approach is to assign
the next .rgb file to a thread that has been assigned the least number of pixels
up to the current moment. After this assignment is done, all threads get started
asynchronously (you can see that in the sequence diagram).
As a result, the average
process time is about 13 microseconds/pixel with just one thread and 7
microseconds/pixel with two threads. It turned out that increasing the number
of threads from 2 to 8 doesn't really speed it up - probably because the
advantage of multithreading gets negated by the necessary overhead.
This application doesn't
provide any tools to view the .rgb images, but you can do it with Project 1
above.
Below you can download:
<-- NetBeans project folder
(it has the README file with more information)
<-- a report with class
and sequence diagrams created in VP for UML
<-- a few sample *.rgb
files and a MatLab program to convert .jpg to .rgb (the same files as for
Project1)
|