Sunday, August 23, 2009

Discrete Geometry 3D Viewer

I thought I'd write list of features of my Discrete Geometry Viewer (DGV) program. I wrote this as a request from the New Projects section of the Linux Journal. The goal of DGV is to make visualisation of data as simple as possible (not something VTK is renowned for) while being intuitive and responsive.

In DGV, the image is placed into a 3D scene using OpenGL (via the VTK library), so it uses your graphics card to render the image. U can pan and zoom, adjust the gamma and rotate it. U can save what you're viewing or just export the data/image. U can also view the raw data in table form (may not be as useful to non-scientific users). From the table u can do surface and line plots. U can also add, subtract etc. images using the Operate feature. Finally, one can see the histogram of the image, which tells u statistical info on the image (output into console also).

The main feature of DGV is Filtering and Convolutions via Fast Fourier Transforms. This allows one to see the frequencies present within the image and edit them via the table. One can do crude Low-pass (smoothing), High-pass (edge detection) or band-pass filtering. DGV also features surface and line animations.

Future advancements will include:
- Pixel values within viewer
- Saving animations
- Python Shell rather than simple console output. See my project called QPythonShell which allows one to embed a Python shell into Qt applications.
- More file formats
- More transforms, like the Number Theoretic Transforms (via my new Number Theoretic Transform C library).

Links:
Homepage, Sourceforge, Google Code and Qt Apps.org.

Cheers
Shakes - L3mming

No comments:

Post a Comment