Statistical Programming, Computation, and Visualization in C/C++
|Due Date: Wed., Feb. 25, 2004
(HW_2) In this project we'll extend the work of HW_1
a step further. Now we need to develop a software package that reads in (at
least two of these file formats, may be more, please share with all of us
your raster image parsers) a RAW, PGM, GIF or JPG image, blurs the image
with a Gaussian filter of a given variance and saves out the result, in the
same file format as the input data. The image is a general N-dimensional
(N_D) hyper-volume of byte characters (intensities between 0 and 255).
For the people that want to make a more functional program think of how we
can write all methods/objects in template form, so any type of hyper-array
(e.g., int, float, signed int) will also be accepted].
Again the user specifies
the number of dimensions and each dimension-size and the I/O file names on
the command line at execution time. There is still no visualization component to this second HW project. As before, we need to provide a working packaging
makefile that allows compiling and testing/running the code. Skeleton of this type of package is available in this ZIP file. This zip file also contains a PGM image of size 540x259 (WorldMap.pgm and WorldMap.img, for the raw).
The sample data we can use is included in the data folder in this zip file. It represents a 3D brain image of size 64x64y64z (rather small, with voxel sizes of 3 mm3). The ASCII header file (*.LHD) describes the data in more detail. You can view the volume, if you wish by downloading the LOVE viewer. This is a zip file with a self-contained Java package that has a starting BAT file called runNoArgs.bat
that works on Windows. This BAT file can be read as text and slightly reconfigured
to make the program run well on any Java-enabled machine (MAC, UNIX, LINUX,
Last modified on