This page contains a selection of the various software tools and libraries that I have developed. Text in brackets indicates the main programming languages used. Note that CUDA implies C++.
Important: The software provided here is only available for research purposes. See disclaimer in side bar. For any commercial usage, please contact me.
Computes 2D Euclidean distance transforms, feature transforms, and skeletons (C++).
Computes 3D Euclidean distance transforms, feature transforms, and skeletons (C++).
Visualization of UML diagrams with code quality metrics.
An enhanced (faster, more stable) version of the open-source binvox voxelizer (C/C++).
CUDA Universal Bundling framework for huge graphs (CUDA).
Computes 2D Euclidean distance transforms, feature transforms, and skeletons on the GPU (CUDA).
Computes 2D Euclidean distance transforms, feature transforms, and salience skeletons on the GPU (CUDA).
Interactive axis-based 3D rotation tool based on image skeletons (CUDA).
Visualize evolution of CVS and SVN software repositories (C++, C#).
Extract and visualize evolution of software clones from code repositories.
Code samples from my data visualization book (C++, OpenGL).
Extract and refactor (eliminate) code clones in Visual Basic (VB).
Encode grayscale and color images using dense multiscale skeleton descriptors (CUDA).
Benchmark for using dense skeletons for image compression.
Extract and visualize evolution of software dependencies in code repositories (C#).
Digitally remove hairs from dermatoscopic skin imagery (C++).
Visualize structure and metrics of software source code using cushion treemaps (C++).
Simplification of DTI tracks with trail bundling (C++).
Benchmark for dynamic projections of time-dependent high-dimensional data (Python).
Extract call and dependency graphs form any C/C++ code base (C++).
Two new methods for projecting high-dimensional time-dependent data (Python).
Visualize dynamic memory allocations.
Render fluids using metaballs created via surface particles (C++).
Deep learning multidimensional projections (Python).
Visualization of high-dimensional optimization methods (Python).
Compute and visualize quality metrics for multidimensional projections (CUDA).
Benchmark for computing and visualizing dimensionality-reduction quality (Python).
Add run-time type information (RTTI) to a C++ program for any C++ compiler (C++).
Spline-and-skeleton-based compression of images (C++, CUDA).
Spline-based encoding of binary skeletons (C++, CUDA).
Benchmark for comparing 3D skeletonization algorithms (data/code, various languages).
3D shape denoising using saliency skeletons (C++).
Skeleton-based corner detector for grayscale images (CUDA).
Interactive tool to compute and visualize 3D distance transforms and multiscale skeletons (C++).
Programmable visualizations of reverse-engineered software system architectures (C++).
Extract and visualize source code clones in large code bases (C#).
Extract and visualize dependencies and structure from C#, .NET, and Java code (C#).
Extract and visualize software evolution from code repositories (multiple versions).
Represent an image with dense skeletons driven by image salience metrics (C++).
Improvement of the NNP algorithm, also providing inverse projection (Python).
Programmable table lens and treemap-from-tables visualization framework (C++).
Implementation of dynamic t-SNE projection for time-dependent high-dimensional data (Python).
Benchmark for comparing treemapping methods (Python).
Implementation of tsNET graph layout method using t-SNE (Python).