Archive pour 25 juillet 2008

list of public domain and commercial mesh generators

matlab .m Geometric Transformation and Image Registration

list Geometric Transformation and Image Registration

matlab .m Zeiss confocal microscopes

Zeiss confocal microscopes output data in LSM files, a stacked TIFF image format with some additional headers and info directories. See for details. The functions included here will allow you to read the additional info, for example useful fields such as the pixel dimensions of the stack. I have based the current version heavily on the open source code from the LSM Toolbox plugin for ImageJ (

This toolbox does not read the actual image data from the file, for that you could simply export the images into simpler formats and then use IMREAD to import the data to MATLAB. There are also now versions of tiffread or other programs out there that can read the image data directly.

See comments for additional suggestions. Note also that if you have the .mdb file output by Zeiss, this is readable in Microsoft Access and includes much of the information available here.

matlab .m 3D Gaussian quadrature over a user-defined volume

Will perform 3D Gaussian quadrature over a user-defined volume. The volume is defined by the user with function definitions entered in the appropriate spaces provided on the GUI. The user can change the number of Gauss points to use.
Function inputs need not accept vector args. Written with version 7.01.

matlab .m Minimum Radius Bounding Sphere

MINBOUNDSPHERE is an extension of my MINBOUNDCIRCLE code, to run on 3-d data. It computes the minimum radius enclosing sphere around 3-d data.

>> xyz = randn(1000,3);
>> tic,[c,r] = minboundsphere(xyz),toc
Elapsed time is 0.049200 seconds.

c =
-0.096207 -0.12586 0.090616

r =

Note that the generated sphere must pass through at least 2 of the points provided.

MINBOUNDSPHERE should return the correct finite radius sphere even for only 2 or 3 points, or where the points are nearly collinear or coplanar, so that the circum-sphere would normally have infinite or near infinite radius.

Use is made of convhulln to improve run time. If there is a perceived need, I could allow the user to turn off the call to convhulln when desired, or modify the convhulln call to be compatible with older Matlab releases. Please send me e-mail if this feature would be of value.

matlab .m Exact geodesic for triangular meshes

Geodesic (shortest path) algorithm for triangular mesh (triangulated 2D surface in 3D).

This is an implementation of exact geodesic algorithm for triangular mesh (first described by Mitchell, Mount and Papadimitriou in 1987) with some minor improvements, extensions and simplifications. The algorithm has O(n^2 \log n) worst-case time complexity, but in practice can work with million-node meshes in reasonable time. For the quick overview, see J. O’Rourke, « Computational Geometry Column 35 », SIGACT News, 30(2) Issue #111.

matlab .m quaternion rotation on a 3-D data set.

This package performs a quaternion rotation on a 3-D data set.

The code is written in C, which I have found produces a very significant (> 10X) speedup over a .m file version, allowing for rotation of large 3-D data set in a short amount of time.

« qrot3d » operates on single or double precision data and can take as an input either a quaternion or a rotation vector and angle.


rotdata = qrot3d(data,quaternion)
rotdata = qrot3d(data,omega,theta)

data must be a (Nx3) matrix. « qrot3d » works with both single and double precision.


Blog Stats

  • 220 821 hits


Flickr Photos

juillet 2008
« Juin   Août »