This repository contains free digital spectroscopy software and 3D printable .3mf files (by Davis Fay and Bernard Markus) for an Arducam + 10deg-20deg lens digital spectroscope. Uses stock 1000 line/mm diffraction grating sheets over the lens. The slit uses single edge stainless steel razor blades glued to an adjustible front plate for precise slit width control, we achieved <0.05mm easily with a spacer.
- 3D Prints
- Arducam Spectrometer Assembly Instructions pdf
- Smartphone Spectrometer Assembly Instructions pdf
- Spectrometer Machine Learning Identification Demo
- Spectrometer Workbench Demo
- Py Spectrometer by Les' Lab - software should work out of the box with the USB camera!
- Original Theremino DIY Guide
- DIY Hyperspectral imaging paper
We are working on a web based hyperspectral imaging tool on top of a proof of concept identification pipeline.
Chocolate bar wrapper hyperspectral scan: |
Make sure the diffraction grating is aligned vertically with the slit. The camera rotation should be so that the image is horizontal, you can have it aligned right to left or left to right for increasing wavelength at your preference.
Perform digital spectral decomposition in your browser!
ONNX Camera ID Demo for a real time video image classifier demo, which will analyze averaged frames from your digital spectroscope and run results through a classifier or let you generate datasets on the fly. Also links to the training and exporting software for creating compressed XGBoost models from your dataset.
This repo comes with a digital spectrometer workbench prototype, works with any webcam or image/video uploads. This is a pre-alpha functional test. See the live demo at https://camspectrometer.netlify.app built directly from this repo using Netlify.
To run:
npm start
or tinybuild
Or npm i -g tinybuild
then the above command.
My first test of a tabletop spectrometer using a 1080p wifi cam, 1000 line/mm off-the-shelf diffraction grating (e.g. from Amazon), black foam board, and a lot of tape:
Results - sunlight through my window:
- Not yet added: wavelength estimation, etc.
All of the prototypes by Bernard:
- 3D print files by Bernard Markus and Davis Fay
- Spectrometer software demo by Joshua Brewster and Garrett Flynn.
- Fishazam project by Yassine Santissi.
- This project is being developed for creating a fish identification dataset.
Inspired by the Theremino spectrometer tutorial, with a much needed update using an accessible browser framework. You can use this to build your own.
Sponsored by Schmidt Marine Foundation.
We recommend using the 1080p Arducam with an 8mm lens with no IR-CUT filter or night vision LEDs (you can just unplug them if they come with it). The diffraction grating is the one from children's toy science kits. The box, well we just used what was within reach...
We're going to develop our own dedicated low cost solution to help run mass data collection experiments to test fish being sold on the market for quality, correct identification, etc. purposes.