C++ Project

Image Resolution Editor

for X-ray Application

Houtan Rezaei

The Project

The program will take a grey-scale image and turn it into a matrix of numbers with size depending on the resolution of the image (e.g. 1024 x768 or 512x480 ...). The object is to take the given image select a desired part of it and turn that part into a lower resolution. Then to calculate a coefficient from the grey-scale intensity value of each new pixel . That coefficient is then used by a servo motor to create a 3-Dimensional object (putty) of the new grey-scale image.

 

I/O

As mentioned before the input is a matrix of numbers provided by an image file. The out put is also a matrix of numbers which then can be viewed as a grey-scale image file using an image viewer. I anticipate that since unix is command line driven it will be trivial to have a program like xv called to display the image. For those familiar with image editing filters this will have the effect of crop and mosaic in one. Below are before and after pictures of what is expected from the program. These images were created on photoshop with the aid of Microsoft image composer, the end result of the program will vary from this to some extent.

 

Before After

Figure. Example of input and output

 

Classes and Things

I plan to have the following classes and some more that I may resort to if they make my life easier:

Class image //which creates a matrix from a picture file

Class average //which averages over the components of a matrix to assign values to the components of the new matrix

Class calc // which calculates the coefficient needed by the servo motor