Minimal Bounding Box
Note de l’éditeur : This file was selected as MATLAB Central Pick of the Week
With this function one can easily compute the minimal box (with right angles) around a set of points in 3d.
The extremal property of the box is determined either in terms of volume, surface or sum of edgelengths.
The calculation is based on heuristics only, but a huge number of tests did not show any counterexamples yet.
The algorithm behind the function is subdivided into three levels of accuracy with differing runtimes.
x = rand(10000,1);
y = rand(10000,1);
z = rand(10000,1);
tic;[rotmat,cornerpoints,volume,surface] = minboundbox(x,y,z,'v',3);toc
Elapsed time is 10.772170 seconds.
volume =
0.9993
surface =
5.9974
My thanks to John d'Errico and Roger Stafford for numerous discussions about proofs and algorithms in this context.
John also wrote minboundrect from the FEX, which heavily influenced this submission.
Also in this archive i included a small plot function (plotminbox) to show the resulting box via connecting the cornerpoints.
Citation pour cette source
Johannes Korsawe (2024). Minimal Bounding Box (https://www.mathworks.com/matlabcentral/fileexchange/18264-minimal-bounding-box), MATLAB Central File Exchange. Récupéré le .
Compatibilité avec les versions de MATLAB
Plateformes compatibles
Windows macOS LinuxCatégories
Tags
Remerciements
Inspiré par : A suite of minimal bounding objects
A inspiré : BiofilmQ, Anatomy Boundary Analysis, SHAPE: SHape Analyser for Particle Engineering, Agglomorative Clustering for Fault Network Reconstruction
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Découvrir Live Editor
Créez des scripts avec du code, des résultats et du texte formaté dans un même document exécutable.
Version | Publié le | Notes de version | |
---|---|---|---|
1.1.0.0 | Compatability issues. Convhull changed in Release 2010a. |
||
1.0.0.0 |