Commit graph

16 commits

Author SHA1 Message Date
Richard Bowman
a6e8c7ab93 Return HTTP error properly if CSM is uncalibrated 2023-12-01 02:18:28 +00:00
Richard Bowman
e5e5be7369 Added settings manager to store arbitrary metadata 2023-11-29 23:38:28 +00:00
Richard Bowman
b6ed55caba Fixed module docstring 2023-11-29 23:38:12 +00:00
Richard Bowman
b9605fa2a0 Added module docstring 2023-11-29 23:37:54 +00:00
Richard Bowman
20a7fd52b1 Reinstate move_and_measure 2023-11-28 23:47:53 +00:00
Richard Bowman
291bbde9cf Don't raise an exception if thing_state called before calibration
It's helpful to raise an exception if we access the calibration
before it's been set - but thing state should not raise exceptions,
just return an empty dict if the data is not there yet.
2023-11-28 21:06:42 +00:00
Richard Bowman
27c74bff6e Add shutdown/restart actions 2023-11-02 21:18:59 +00:00
Richard Bowman
7bbc105fc6 Expose last calibration and thing_state 2023-11-02 20:29:22 +00:00
Richard Bowman
92ba79ef7a Improved docstrings 2023-11-02 10:27:27 +00:00
Richard Bowman
6eefa4f25b Add image resolution to CSM metadata
The camera stage mapper should now note the resolution
used when it was last calibrated - this is helpful for tiling,
because we may need to scale it if the images recorded are
a different resolution from the images used for calibration.

This addresses https://gitlab.com/openflexure/microscope-extensions/camera-stage-mapping/-/issues/11
2023-11-02 10:05:54 +00:00
Richard Bowman
4caba58d6c Revert to Sangaboard, rather than proscan 2023-11-01 18:02:16 +00:00
Richard Bowman
b9804cdc2d Serve static web app at / 2023-09-06 11:56:20 +01:00
Richard Bowman
e82acf2941 Add thing_state metadata 2023-09-04 11:43:32 +01:00
Richard Bowman
63d7a6eb4d WIP: camera stage mapping
This still has some bugs, mostly related to numpy and serialisation.
2023-08-31 19:37:09 +01:00
Richard Bowman
6e04618051 Autofocus module!
Currently only has fast_autofocus, and there
may be some work to do on timing, but it works :)

Getting timestamps from the camera rather than
time.time() would be ideal, but it would take some thought to tie that up with
the encoder.

I'm using a low-res stream, as it seems impossible to
turn the bitrate control of the MJPEG stream off,
at least within the picamera2 API.
2023-08-30 21:34:06 +01:00
Richard Bowman
081654533f First images on labthings-fastapi
We now have very basic camera and stage support.
2023-08-29 17:02:16 +01:00