image thumbnail

Exact minimum bounding spheres and circles

version 1.4.0.1 (1.08 MB) by Anton Semechko
Compute exact and approximate minimum bounding spheres/circles of 3D/2D point sets

1.7K Downloads

Updated 04 Sep 2020

From GitHub

View license on GitHub

Bounding Spheres and Circles

View Exact minimum bounding spheres and circles on File Exchange

The problem of finding minimum bounding spheres (aka minimum enclosing spheres) is frequently encountered in a number of applications, including computer graphics and patter recognition. While a number of relatively simple algorithms exist for finding such spheres, there are no robust implementations of these algorithms in Matlab that can be readily found on-line. Functions contained in this submission are meant to fill this void.

Exact minimum bounding spheres and circles can be computed using the functions titled ExactMinBoundSphere3D.m and ExactMinBoundCircle.m, both implementing Wezlz’s algorithm [1]. Approximate minimum bounding spheres in any dimension can be computed using ApproxMinBoundSphereND.m function, which implements Ritter’s algorithm [2].

For convenience, I also included functions VisualizeBoundSphere.m and VisualizeBoundCircle.m that allow you to visualize input point clouds (or meshes) with their respective minimum bounding sphere/circle (see demo pic).

For demonstration on how to use the functions, add this repository to your Matlab path and enter MinBoundSphereDemo into command window.

References

[1] Welzl, E. (1991), 'Smallest enclosing disks (balls and ellipsoids)', Lecture Notes in Computer Science, Vol. 555, pp. 359-370
[2] Ritter, J. (1990), 'An efficient bounding sphere', in Graphics Gems, A. Glassner, Ed. Academic Press, pp.301-303

License

MIT © 2019 Anton Semechko a.semechko@gmail.com

Cite As

Anton Semechko (2021). Exact minimum bounding spheres and circles (https://github.com/AntonSemechko/Bounding-Spheres-And-Circles), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2015a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.