Code covered by the BSD License  

Highlights from
2D and 3D Symmetric Registration using CUDA

5.0

5.0 | 1 rating Rate this file 33 Downloads (last 30 days) File Size: 17.8 KB File ID: #37685
image thumbnail

2D and 3D Symmetric Registration using CUDA

by

 

Vanilla and Symmetric Non-Rigid Registration in 2D and 3D, parallelized using CUDA

| Watch this File

File Information
Description

This package contains tools for CUDA-accelerated non-rigid registration.

The registration code uses gradient descent to create a set of functions that transform one image to another.

The symmetric algorithm uses the determinant of the Jacobian matrix to impose mathematical symmetry on the process. Additionally, both images are transformed to some image in between the two, providing numerical symmetry as well. In unison these properties mean that the algorithm will produce the same registration even if the order of the images is switched.

For more information on symmetric non-rigid registration, see "Symmetric Non-rigid Registration: A Geometric Theory and Some Numerical Techniques" by Tagare et al., JMIV, 2009.

The vanilla algorithm transforms one image to another with no symmetry constraints.

All registration code interfaces with included CUDA kernels to accelerate the process. The CUDA code has been tested on a Tesla M2090 card with CUDA 4.X and compute capability 2.X. It should work on cards with compute capability 1.3 as well but has not been tested.

Also included is code to generate synthetic data that can be used to test the registration functions.

Required Products Image Processing Toolbox
Parallel Computing Toolbox
MATLAB
MATLAB release MATLAB 7.14 (R2012a)
Other requirements -CUDA compiler -Tested using CUDA 4.X on Tesla M2090
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (3)
08 Jul 2014 Ben

What's the advantage of Symmetric Registration?

25 Mar 2013 jorge bojorquez

Hello,

I run the "cudaScript.m" and I got the following message:

"Setting environment for using Microsoft Visual Studio 2010 x86 tools.
ERROR: Cannot determine the location of the VS Common Tools folder.
nvcc : fatal error : Cannot find compiler 'cl.exe' in PATH
Setting environment for using Microsoft Visual Studio 2010 x86 tools.
ERROR: Cannot determine the location of the VS Common Tools folder.
nvcc : fatal error : Cannot find compiler 'cl.exe' in PATH
Setting environment for using Microsoft Visual Studio 2010 x86 tools."

I tried 'mex -setup' to tell matlab the compiler to be used (Visual Studio) but it did not fix the problem.

Any suggestion?

Thanks.

01 Aug 2012 Rob Campbell

Nice stuff! Fast and does the job. Would be nice if there was more explanation as to what the parameters do.

Contact us