Optics textbook

Study notebook used in an undergraduate optics course taught at Université Laval. Written by D. C. Côté.

Raytracing Python Module

This code aims to provide a simple ray tracing module for calculating various properties of optical paths (object, image, aperture stops, field stops). It makes use of ABCD matrices and does not consider aberrations (spherical or chromatic). Since it uses the ABCD formalism (or Ray matrices, or Gauss matrices) it can perform tracing of rays and gaussian laser beams. The documentation is accessible here and on the GitHub page

The code has been developed first for teaching purposes and is used in the “Optique” Study Notes (see above), but also for actual use in the DCClab research. As of January 21st, 2021, there is an extensive, freely accessible tutorial in Journal of Neurophotonics:

V. Pineau Noël, S. Masoumi, E. Parham, G. Genest, L. Bégin, M.-A. Vigneault, D. C. Côté,. "Tools and tutorial on practical ray tracing for microscopy". Neurophotonics, 8(1), 010801 (2021). https://doi.org/10.1117/1.NPh.8.1.010801

Tissue optics Python code

This is an extremely simple object-oriented code in Python that simulates the propagation of light in scattering tissue using Monte Carlo.

Axon segmentation code

This work aims to segment axon and myelin from microscopy images (for example, CARS images). It is written in MATLAB language. The code is accessible on the GitHub page

S. Bégin, O. Dupont-Therrien, E. Bélanger, A. Daradich, S. Laffray, Y. De Koninck, and D. Côté, “Automated method for the segmentation and morphometry of nerve fibers in large-scale CARS images of spinal cord tissue". Biomedical Optics Express, vol. 5, no. 12, pp. 4145–4161 (2014).