QPG-MIT / slmsuite

Python package for high-performance spatial light modulator (SLM) control and holography.
https://slmsuite.readthedocs.io
MIT License
47 stars 11 forks source link

FLIR #20

Open ichristen opened 1 year ago

ichristen commented 1 year ago

Finish the FILR interface through the Spinnaker SDK.

Lufter commented 9 months ago

I am currently working on controlling FLIR cameras with PySpin. Most of the required functions in the parent camera class for Fourier/wavefront calibration are implemented. However, to access the node map of PySpin, I need to call an init() function after creating a FLIR object. And there seems to be a conflict if I call the init() function in the init part of the FLIR class.

For example, I will need to do

cam = FLIR(serial="00000000", verbose=True) 
cam.init()

to initialize the camera.

I am working on this issue now.

ichristen commented 9 months ago

Hi @Lufter,

Thanks much for tackling this!

I'm not precisely sure why there is an init() conflict. The PySpin camera handle should probably be a class attribute of the slmsuite wrapper (e.g. called .cam like some of the other wrappers), and then the PySpin .cam.Init() method should probably be called in the wrapper .__init__().

If you want another pair of eyes on this, you can make a branch for FILR either on the main repo or on a fork of the main repo. You will need a branch to create a pull request anyway (to integrate the code into the main repo).

Best, Ian