Depth from Focus
m (→Demonstration) |
m |
||
(25 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
− | |||
=Depth from Focus= | =Depth from Focus= | ||
==3D surface metrology== | ==3D surface metrology== | ||
Line 14: | Line 13: | ||
==Demonstration== | ==Demonstration== | ||
− | Here are some typical microscope images ( | + | Here are some typical microscope images (Surfi-Sculpt refers to objects, which has been [http://www.twi.co.uk/j32k/unprotected/band_1/surfi-sculpt_index.html shaped using a power beam]). |
{|align="center" | {|align="center" | ||
|- | |- | ||
Line 43: | Line 42: | ||
|} | |} | ||
− | As the idea for the algorithm was fixed already, it was possible to implement the algorithm as a command-line tool in less than 4 days, using existing [[Mimas]]-software (exspecially the [http://vision.eng.shu.ac.uk/mimas | + | As the idea for the algorithm was fixed already, it was possible to implement the algorithm as a command-line tool in less than 4 days, using existing [[Mimas]]-software (exspecially the [http://vision.eng.shu.ac.uk/jan/mimas/docs/arrayOperators.html operators for boost::multi_array]). |
As this is a "quick hack", there's still lots of space for improvements. | As this is a "quick hack", there's still lots of space for improvements. | ||
==Download== | ==Download== | ||
− | + | ===Old C++ Implementation=== | |
+ | The software for estimating height-maps and images with extended depth-of-field is available for free (under the LGPL)! You first need to install [[Mimas_Announcement_Archive#Mimas-2.0|version 2.0]] of the [[Image:Mimasanim.gif|40px]] [[Mimas|Mimas Real-Time Computer Vision Library]] to be able to compile and run [http://vision.eng.shu.ac.uk/jan/depthoffocus-0.1.tar.bz2 depthoffocus-0.1] (652 kByte). The software also comes with sample files to generate photo-realistic 3D-reconstruction using [http://www.povray.org/ POVRay]! | ||
+ | ===New Ruby Implementation=== | ||
+ | [[Image:New.gif]] I've ported the program to [http://www.ruby-lang.org/ Ruby]. The new implementation is based on the [[Image:Hornetseye.png|40px]] [[HornetsEye]] Ruby-extension. It also requires [http://trollop.rubyforge.org/ TrollOp]. You can copy-and-paste the source code from the '''[http://www.wedesoft.demon.co.uk/hornetseye-api/files/stack-txt.html depth from focus example]''' page. The source code also comes with the [[HornetsEye]] source package. | ||
− | =Links= | + | =See Also= |
+ | * [[MiCRoN]] | ||
+ | |||
+ | =External Links= | ||
* Publications | * Publications | ||
− | |||
− | |||
** M. Boissenin, J. Wedekind, A.N. Selvan, B.P. Amavasai, F. Caparrelli, J.R. Travis: [http://dx.doi.org/10.1016/j.imavis.2006.03.009 Computer vision methods for optical microscopes] | ** M. Boissenin, J. Wedekind, A.N. Selvan, B.P. Amavasai, F. Caparrelli, J.R. Travis: [http://dx.doi.org/10.1016/j.imavis.2006.03.009 Computer vision methods for optical microscopes] | ||
+ | ** J. Wedekind: [http://vision.eng.shu.ac.uk/jan/MechRob-paper.pdf Focus set based reconstruction of micro-objects] | ||
* Further Reading | * Further Reading | ||
− | ** [http://en.wikipedia.org/wiki/Anaglyph_image | + | ** [http://en.wikipedia.org/wiki/Anaglyph_image Wikipedia article on anaglyph images] |
− | + | ** Ishita De, Bhabatosh Chanda, Buddhajyoti Chattopadhyay: [http://dx.doi.org/10.1016/j.imavis.2006.04.005 Enhancing effective depth-of-field by image fusion using mathematical morphology] | |
− | ** Ishita De, Bhabatosh Chanda, Buddhajyoti Chattopadhyay: [http://dx.doi.org/10.1016/j.imavis.2006.04.005 Enhancing effective depth-of- | + | * Focus stitching software [http://www.hadleyweb.pwp.blueyonder.co.uk/ CombineZ5] and some [http://www.janrik.net/insects/ExtendedDOF/LepSocNewsFinal/EDOF_NewsLepSoc_2005summer.htm impressive examples by Rik Littlefield]. |
− | + | * [http://hirise.lpl.arizona.edu/anaglyph/index.php NASA anaglyph images of Mars] | |
− | + | * [http://www.youtube.com/results?search_query=yt3d%3Aenable%3Dtrue 3D videos on Youtube] | |
+ | * [http://www.heliconsoft.com/ Helicon] proprietary focus stitching software | ||
+ | |||
+ | {{Addthis}} | ||
− | [[Category: | + | [[Category:Projects]] |
+ | [[Category:Micron]] |
Latest revision as of 17:00, 17 March 2010
Contents |
[edit] Depth from Focus
[edit] 3D surface metrology
- You need to grab the focus stack with your microscope and digital camera.
- The results will be even better, if the illumination optics of the microscope can project a pattern.
- Non-destructive measurement of surface profiles
- With our experimental settings we observed (of course the result will depend on the quality of the microscope)
- Vertical resolution <math>\ge 0.2\ \mu m</math> (depending on aperture-size, magnification, projection-pattern and the surface properties of the object).
- Lateral resolution <math>\ge 2\ \mu m</math> (depends).
- Open Source (you are free to improve the code yourself if you redistribute it).
In general one can say: The lower the depth of field, the higher the resolution of the reconstruction. With high magnification (assuming constant numerical aperture) the resolution of the reconstruction goes up. The trade-off is that the reconstruction will cover a smaller area. This can be overcome by lateral stitching (e.g. cogwheel below).
[edit] Demonstration
Here are some typical microscope images (Surfi-Sculpt refers to objects, which has been shaped using a power beam).
Using a focus-stack one can compute images with extended depth of focus:
If the surface can be illuminated properly, one can even do a 3D-reconstruction of the surface:
[[Image:suevit20.png | 180px|3D reconstruction of suevit (1.4MB video)]] |
As the idea for the algorithm was fixed already, it was possible to implement the algorithm as a command-line tool in less than 4 days, using existing Mimas-software (exspecially the operators for boost::multi_array).
As this is a "quick hack", there's still lots of space for improvements.
[edit] Download
[edit] Old C++ Implementation
The software for estimating height-maps and images with extended depth-of-field is available for free (under the LGPL)! You first need to install version 2.0 of the Mimas Real-Time Computer Vision Library to be able to compile and run depthoffocus-0.1 (652 kByte). The software also comes with sample files to generate photo-realistic 3D-reconstruction using POVRay!
[edit] New Ruby Implementation
I've ported the program to Ruby. The new implementation is based on the HornetsEye Ruby-extension. It also requires TrollOp. You can copy-and-paste the source code from the depth from focus example page. The source code also comes with the HornetsEye source package.
[edit] See Also
[edit] External Links
- Publications
- M. Boissenin, J. Wedekind, A.N. Selvan, B.P. Amavasai, F. Caparrelli, J.R. Travis: Computer vision methods for optical microscopes
- J. Wedekind: Focus set based reconstruction of micro-objects
- Further Reading
- Wikipedia article on anaglyph images
- Ishita De, Bhabatosh Chanda, Buddhajyoti Chattopadhyay: Enhancing effective depth-of-field by image fusion using mathematical morphology
- Focus stitching software CombineZ5 and some impressive examples by Rik Littlefield.
- NASA anaglyph images of Mars
- 3D videos on Youtube
- Helicon proprietary focus stitching software