Question: Reading the individual pixel data from a piCamera sensor sans-lens?

wln215 is asking a question about spectrometer
Follow this topic

by wln215 | October 11, 2019 17:44 | #21139

I am using a CCD to read the output of a (Lens-Grating-Lens) spectrometer. I am trying to calculate the angle of separation of two given wavelengths by reading the sensor output. The pixel pitch of the sensor (1.12 um for V2 and 1.4 um for V1) can be multiplied by the pixel count to measure the separation. The angular separation is the tangent of this pixel measurement and focal length of my focusing lens (.66m and 1.0m). My captured image centered around 650nm.

To find this angle, I upload the CCD image to spectral workbench. By default with no reference spectra or calibrations, spectral workbench outputs a graph of the JPEG values from which I can get a rough estimate of the pixel count as the PiBuilder OS outputs a minimally compressed JPEG. This way of measuring is alternative to using reference spectra.

Rather than rely on these hacky coincidences I'd like to get a more precise output. I can do this by taking a RAW image from the command line and figuring out how to get the spectral data from the appended data (either through spectral workbench or by counting the pixels with an image editor). The other option is to scale the JPEG image to the resolution of the camera's sensor (which differs between sensor versions).

How would you go about doing this? Is there something in spectral workbench that can be tweaked to work with this sort of measurement, seeing as how it already does it by default? How would you work with the RAW data captured from the sensor and what kind of pitfalls (like the Bayer filter) should I look out for with this method?

Thanks for the input. My first post is Here. More write-ups coming soon.


Log in to comment