Abstract

Modern optical sensors and measurement systems usually are a powerful combination of optical elements, active hardware components like actuators or sensing devices as well as a sophisticated control software and data evaluation algorithms. In order to develop and operate such systems, it is necessary to have a flexible, intuitive, and fast underlying software framework that also allows for rapid prototyping of a sensor in a dynamic lab environment. This software must be able to control and communicate with all necessary hardware devices and has to provide all the highly performant evaluation, data, and image processing algorithms required. In this publication, we want to present the open source measurement and data evaluation software suite itom, which has been designed considering the denoted requirements and whose development began in 2011.

© 2014 Optical Society of America

Full Article  |  PDF Article

References

  • View by:
  • |
  • |
  • |

  1. The MathWorks Inc., Matlab. www.mathworks.com .
  2. National Instruments, LabView. www.ni.com/labview .
  3. W. Eckstein and C. Steger, “The Halcon vision system: an example for flexible software architecture,” in Proceedings of 3rd Japanese Conference on Practical Applications of Real-Time Image Processing (Japanese Society for Precision Engineering, 1999), pp. 18–23.
  4. D. Nečas and P. Klapetek, “Gwyddion: an open-source software for SPM data analysis,” Central Eur. J. Phys. 10, 181–188 (2012).
    [CrossRef]
  5. W. Eckstein and C. Steger, “The Halcon vision system: an example for flexible software architecture,” in Practical Applications of Real-Time Image Processing, 3rd Japanese Conference on Proceedings (Japanese Society for Precision Engineering, 1999), pp. 18–23.
  6. Digia, Qt 4.8, Qt Project. https://www.qt-project.org .
  7. Python Software Foundation, Python 3. www.python.org .
  8. G. Bradski, “The OpenCV Library,” Dr. Dobb’s J. Software Tools 25, 120–125 (2000).
  9. R. B. Rusu and S. Cousins, “3D is here: point cloud library (PCL),” 2011, IEEE International Conference on Robotics and Automation, Shanghai, 2011, pp. 1–4.
  10. M. Frigo and S. Johnson, “The design and implementation of FFTW3,” Proc. IEEE 93, 216–231 (2005).
    [CrossRef]
  11. R. Windecker, “Three-dimensional topometry with stereo microscopes,” Opt. Eng. 36, 3372 (1997).
    [CrossRef]
  12. X. Schwab, C. Kohler, K. Körner, N. Eichhorn, and W. Osten, “Improved micro topography measurement by LCoS-based fringe projection and z-stitching,” Proc. SPIE 6995, 69950Q (2008).
    [CrossRef]
  13. K.-P. Proll, J.-M. Nivet, K. Körner, and H. J. Tiziani, “Microscopic three-dimensional topometry with ferroelectric liquid-crystal-on-silicon displays,” Appl. Opt. 42, 1773–1778 (2003).
    [CrossRef]
  14. K.-P. Proll, “Optische Topometrie mit räumlichen Lichtmodulatoren,” Ph.D. thesis (Universität Stuttgart, 2004).
  15. F. Mauch, M. Gronle, W. Lyda, and W. Osten, “Open-source graphics processing unit-accelerated ray tracer for optical simulation,” Opt. Eng. 52, 053004 (2013).
    [CrossRef]

2013 (1)

F. Mauch, M. Gronle, W. Lyda, and W. Osten, “Open-source graphics processing unit-accelerated ray tracer for optical simulation,” Opt. Eng. 52, 053004 (2013).
[CrossRef]

2012 (1)

D. Nečas and P. Klapetek, “Gwyddion: an open-source software for SPM data analysis,” Central Eur. J. Phys. 10, 181–188 (2012).
[CrossRef]

2008 (1)

X. Schwab, C. Kohler, K. Körner, N. Eichhorn, and W. Osten, “Improved micro topography measurement by LCoS-based fringe projection and z-stitching,” Proc. SPIE 6995, 69950Q (2008).
[CrossRef]

2005 (1)

M. Frigo and S. Johnson, “The design and implementation of FFTW3,” Proc. IEEE 93, 216–231 (2005).
[CrossRef]

2003 (1)

2000 (1)

G. Bradski, “The OpenCV Library,” Dr. Dobb’s J. Software Tools 25, 120–125 (2000).

1997 (1)

R. Windecker, “Three-dimensional topometry with stereo microscopes,” Opt. Eng. 36, 3372 (1997).
[CrossRef]

Bradski, G.

G. Bradski, “The OpenCV Library,” Dr. Dobb’s J. Software Tools 25, 120–125 (2000).

Cousins, S.

R. B. Rusu and S. Cousins, “3D is here: point cloud library (PCL),” 2011, IEEE International Conference on Robotics and Automation, Shanghai, 2011, pp. 1–4.

Eckstein, W.

W. Eckstein and C. Steger, “The Halcon vision system: an example for flexible software architecture,” in Practical Applications of Real-Time Image Processing, 3rd Japanese Conference on Proceedings (Japanese Society for Precision Engineering, 1999), pp. 18–23.

W. Eckstein and C. Steger, “The Halcon vision system: an example for flexible software architecture,” in Proceedings of 3rd Japanese Conference on Practical Applications of Real-Time Image Processing (Japanese Society for Precision Engineering, 1999), pp. 18–23.

Eichhorn, N.

X. Schwab, C. Kohler, K. Körner, N. Eichhorn, and W. Osten, “Improved micro topography measurement by LCoS-based fringe projection and z-stitching,” Proc. SPIE 6995, 69950Q (2008).
[CrossRef]

Frigo, M.

M. Frigo and S. Johnson, “The design and implementation of FFTW3,” Proc. IEEE 93, 216–231 (2005).
[CrossRef]

Gronle, M.

F. Mauch, M. Gronle, W. Lyda, and W. Osten, “Open-source graphics processing unit-accelerated ray tracer for optical simulation,” Opt. Eng. 52, 053004 (2013).
[CrossRef]

Johnson, S.

M. Frigo and S. Johnson, “The design and implementation of FFTW3,” Proc. IEEE 93, 216–231 (2005).
[CrossRef]

Klapetek, P.

D. Nečas and P. Klapetek, “Gwyddion: an open-source software for SPM data analysis,” Central Eur. J. Phys. 10, 181–188 (2012).
[CrossRef]

Kohler, C.

X. Schwab, C. Kohler, K. Körner, N. Eichhorn, and W. Osten, “Improved micro topography measurement by LCoS-based fringe projection and z-stitching,” Proc. SPIE 6995, 69950Q (2008).
[CrossRef]

Körner, K.

X. Schwab, C. Kohler, K. Körner, N. Eichhorn, and W. Osten, “Improved micro topography measurement by LCoS-based fringe projection and z-stitching,” Proc. SPIE 6995, 69950Q (2008).
[CrossRef]

K.-P. Proll, J.-M. Nivet, K. Körner, and H. J. Tiziani, “Microscopic three-dimensional topometry with ferroelectric liquid-crystal-on-silicon displays,” Appl. Opt. 42, 1773–1778 (2003).
[CrossRef]

Lyda, W.

F. Mauch, M. Gronle, W. Lyda, and W. Osten, “Open-source graphics processing unit-accelerated ray tracer for optical simulation,” Opt. Eng. 52, 053004 (2013).
[CrossRef]

Mauch, F.

F. Mauch, M. Gronle, W. Lyda, and W. Osten, “Open-source graphics processing unit-accelerated ray tracer for optical simulation,” Opt. Eng. 52, 053004 (2013).
[CrossRef]

Necas, D.

D. Nečas and P. Klapetek, “Gwyddion: an open-source software for SPM data analysis,” Central Eur. J. Phys. 10, 181–188 (2012).
[CrossRef]

Nivet, J.-M.

Osten, W.

F. Mauch, M. Gronle, W. Lyda, and W. Osten, “Open-source graphics processing unit-accelerated ray tracer for optical simulation,” Opt. Eng. 52, 053004 (2013).
[CrossRef]

X. Schwab, C. Kohler, K. Körner, N. Eichhorn, and W. Osten, “Improved micro topography measurement by LCoS-based fringe projection and z-stitching,” Proc. SPIE 6995, 69950Q (2008).
[CrossRef]

Proll, K.-P.

Rusu, R. B.

R. B. Rusu and S. Cousins, “3D is here: point cloud library (PCL),” 2011, IEEE International Conference on Robotics and Automation, Shanghai, 2011, pp. 1–4.

Schwab, X.

X. Schwab, C. Kohler, K. Körner, N. Eichhorn, and W. Osten, “Improved micro topography measurement by LCoS-based fringe projection and z-stitching,” Proc. SPIE 6995, 69950Q (2008).
[CrossRef]

Steger, C.

W. Eckstein and C. Steger, “The Halcon vision system: an example for flexible software architecture,” in Practical Applications of Real-Time Image Processing, 3rd Japanese Conference on Proceedings (Japanese Society for Precision Engineering, 1999), pp. 18–23.

W. Eckstein and C. Steger, “The Halcon vision system: an example for flexible software architecture,” in Proceedings of 3rd Japanese Conference on Practical Applications of Real-Time Image Processing (Japanese Society for Precision Engineering, 1999), pp. 18–23.

Tiziani, H. J.

Windecker, R.

R. Windecker, “Three-dimensional topometry with stereo microscopes,” Opt. Eng. 36, 3372 (1997).
[CrossRef]

Appl. Opt. (1)

Central Eur. J. Phys. (1)

D. Nečas and P. Klapetek, “Gwyddion: an open-source software for SPM data analysis,” Central Eur. J. Phys. 10, 181–188 (2012).
[CrossRef]

Dr. Dobb’s J. Software Tools (1)

G. Bradski, “The OpenCV Library,” Dr. Dobb’s J. Software Tools 25, 120–125 (2000).

Opt. Eng. (2)

R. Windecker, “Three-dimensional topometry with stereo microscopes,” Opt. Eng. 36, 3372 (1997).
[CrossRef]

F. Mauch, M. Gronle, W. Lyda, and W. Osten, “Open-source graphics processing unit-accelerated ray tracer for optical simulation,” Opt. Eng. 52, 053004 (2013).
[CrossRef]

Proc. IEEE (1)

M. Frigo and S. Johnson, “The design and implementation of FFTW3,” Proc. IEEE 93, 216–231 (2005).
[CrossRef]

Proc. SPIE (1)

X. Schwab, C. Kohler, K. Körner, N. Eichhorn, and W. Osten, “Improved micro topography measurement by LCoS-based fringe projection and z-stitching,” Proc. SPIE 6995, 69950Q (2008).
[CrossRef]

Other (8)

K.-P. Proll, “Optische Topometrie mit räumlichen Lichtmodulatoren,” Ph.D. thesis (Universität Stuttgart, 2004).

R. B. Rusu and S. Cousins, “3D is here: point cloud library (PCL),” 2011, IEEE International Conference on Robotics and Automation, Shanghai, 2011, pp. 1–4.

The MathWorks Inc., Matlab. www.mathworks.com .

National Instruments, LabView. www.ni.com/labview .

W. Eckstein and C. Steger, “The Halcon vision system: an example for flexible software architecture,” in Proceedings of 3rd Japanese Conference on Practical Applications of Real-Time Image Processing (Japanese Society for Precision Engineering, 1999), pp. 18–23.

W. Eckstein and C. Steger, “The Halcon vision system: an example for flexible software architecture,” in Practical Applications of Real-Time Image Processing, 3rd Japanese Conference on Proceedings (Japanese Society for Precision Engineering, 1999), pp. 18–23.

Digia, Qt 4.8, Qt Project. https://www.qt-project.org .

Python Software Foundation, Python 3. www.python.org .

Cited By

OSA participates in CrossRef's Cited-By Linking service. Citing articles from OSA journals and other participating publishers are listed here.

Alert me when this article is cited.


Figures (13)

Fig. 1.
Fig. 1.

Scheme of the main architecture of itom.

Fig. 2.
Fig. 2.

Screenshot of itom on Windows 7.

Fig. 3.
Fig. 3.

Python script window of itom with syntax highlighting, auto completion, and full debugging functionalities.

Fig. 4.
Fig. 4.

Comparison of the average computation time of the Fourier-transformation in Matlab, LabView, and itom for the fastest available implementation. Evaluated by averaging 100 computation cycles.

Fig. 5.
Fig. 5.

Comparison of the average computation time of a mean-filter in Matlab, LabView, and itom. Evaluated by averaging 100 computation cycles for a kernel size of 5×5 pixels.

Fig. 6.
Fig. 6.

Comparison of the average computation time of a median-filter in Matlab, LabView, and itom. Evaluated by averaging 100 computation cycles for a kernel size of 5×5 pixels.

Fig. 7.
Fig. 7.

Comparison of the average filtered image (a) with the an OpenCV filter (cvBlur) and the itom algorithm (lowPassFilter) for a float32-object with a 15×15 kernel size. The object is part of a 2€ coin measured with a spinning micro-lens disc confocal system. Image (a) shows the unfiltered measurement result where the black pixels represent invalid values due to uncooperative surface properties. The average filter of OpenCV fails due to an improper NaN handling (b), whereas the appropriate itom filter is able to process such data (c).

Fig. 8.
Fig. 8.

Scheme and picture of the microscopic fringe projection system using a stereo microscope. Different magnification levels between 0.8 and 10.0× can be chosen by moving the corresponding zoom-stage. The height values Z of the specimen’s surface for each camera pixel (x,y) are obtained using the relationship.

Fig. 9.
Fig. 9.

Exemplary toolboxes for the z actuator of the fringe projection microscope and its camera.

Fig. 10.
Fig. 10.

Live viewer dialog also allows change to the projected pattern and the integration time of the camera.

Fig. 11.
Fig. 11.

This modal property dialog is used to quickly change the relevant parameters of the fringe projection system.

Fig. 12.
Fig. 12.

2D topography image of a pyramid where each color represents a certain height. The line cut along the selected line shows the one-dimensional profile in a dependent 1D plot window.

Fig. 13.
Fig. 13.

Screenshot of the graphical user interface of the GPU based ray tracing tool Macrosim [15], implemented as itom plugin.

Equations (1)

Equations on this page are rendered with MathJax. Learn more.

Z(x,y,ϕm)=(ϕm(x,y)ϕref(x,y))Δ(x,y),

Metrics