List of Codes

This page contains links to all my source codes, resulting from different research works (see publications for more details). Several codes here were done in collaboration with other people. You are free to download any of the contents on this page. But keep in mind these lines of code were not made as a final product, and therefore should only be used to shed light to new research ideas.

(back to main page)

GPU-Efficient Recursive Filtering and Summed-Area Tables (gpufilter) library
The GPU-Efficient Recursive Filtering and Summed-Area Tables (gpufilter) project is a set of C for CUDA functions to compute recursive filters and summed-area tables in GPUs. This project presents a new algorithmic framework for parallel evaluation. It partitions the image into 2D blocks, with a small band of data buffered along each block perimeter. A remarkable result is that the image data is read only twice and written just once, independent of image size, and thus total memory bandwidth is reduced even compared to the traditional serial algorithm.
gpufilter Source Code


Zernike-based Vertex Signatures (ZSIG) library
The ZSIG library is a compound of C++-source codes to compute vertex signatures based on Zernike moments. Each vertex signature is a set of Zernike coefficients embedding the corresponding vertex in feature space. This space has the interesting property of grouping similar vertices, that is similarity-based processing is reduced to searching nearest neighbours in this space.
zsig Source Code

Adaptive 4-8 (a48) Mesh Data Structure Library
The a48 library is a template-based C++ library to support general mesh representations mainly in the Computer Graphics research field. The library provides three principal components: efficient polygonal mesh representation; mesh manipulation via stellar operations; and adaptive multi-resolution structure with simplification and refinement strategies.
a48 Source Code

(I)PTINT - (Improved) Projected Tetrahedra with Partial Pre-Integration
Original and Improved version of the Projected Tetrahedra with Partial Pre-Integration algorithm, the main theme of my M.Sc. dissertation and part of my D.Sc. thesis. This package contains two programs for Scientific Visualization, aiming at generating images from volumetric datasets. The research area of Volume Rendering is mainly used for visualization of geological data, fluid simulation and inspection of medical images.
Google Code

RPTINT - Regular Projected Tetrahedra with Partial Pre-Integration
Regular datasets version of Projected Tetrahedra with Partial Pre-Integration, developed in the beginning of my D.Sc. thesis. This application is the same basic idea of PTINT but specialized for regular datasets. This type of volumetric dataset appears normally in medical images.
Google Code

HAPT - Hardware-Assisted Projected Tetrahedra
The Hardware-Assisted Projected Tetrahedra is the last adaptation of the Projected Tetrahedra algorithm to the GPU in my D.Sc. thesis, following the previous PTINT versions. HAPT provides a flexible framework capable of extracting iso-surfaces and handling time-varying data on-the-fly.
Google Code

VF-Ray-GPU - Visible-Faces Driven Ray Casting implemented on the GPU
The Visible-Faces driven Ray-Casting is a memory-efficient GPU-based ray-casting method. The main idea is to explore ray coherence, improving caching performance by keeping in memory only the face data of the traversals of a set of nearby rays.
Google Code