Commit graph

291 commits

Author SHA1 Message Date
Julian Stirling
4368dc3d90 Consolidate functionality into BaseCamera from Capture Thing and StreamingPicamera2 2025-06-23 11:26:22 +01:00
Julian Stirling
b5606984ae Consolidate the BaseCamera, CameraStub, and CameraProtocol, move StreamingPiCamera2 to this repo 2025-06-23 11:25:49 +01:00
jaknapper
628fd145f3 Cleaned up settling time maths to only calculate once 2025-06-23 11:25:49 +01:00
jaknapper
35e1d6cdee Remove unused actions in capture 2025-06-23 11:25:49 +01:00
jaknapper
4271c28045 More descriptive variable names in smart_scan, use resize in stitching with no default 2025-06-23 11:25:49 +01:00
jaknapper
7052917ff9 capture_image in stub raises NotImplemented 2025-06-23 11:25:49 +01:00
jaknapper
2f9e37a02f More descriptive timing variable names 2025-06-23 11:25:49 +01:00
jaknapper
985d20e032 Capture resolution as a Thing property 2025-06-23 11:25:49 +01:00
jaknapper
8c8c6568c3 Updated docstring for start_streaming 2025-06-23 11:25:49 +01:00
jaknapper
2d946637eb Added buffer_count as an argument of streaming 2025-06-23 11:25:48 +01:00
jaknapper
968bd339c2 SETTLING_TIME global in stacking 2025-06-23 11:25:37 +01:00
jaknapper
478c3629c9 Scan_resize from global vars, added to scan_data 2025-06-23 11:19:23 +01:00
jaknapper
52b58241cc Added copy_sharpest_image to autofocus 2025-06-23 11:19:23 +01:00
jaknapper
d39bcbaf5c Moved streaming changing to inner loop 2025-06-23 11:19:23 +01:00
jaknapper
0d32983b62 Only undershoot z stack if image count > 1, settle before first capture 2025-06-23 11:19:23 +01:00
jaknapper
744ec28f93 Get images as a PIL image from camera, use resizing and saving as settling time in stack 2025-06-23 11:19:20 +01:00
jaknapper
dbed1c6971 Default resize in stitching for scan tab stitching 2025-06-23 11:17:46 +01:00
jaknapper
9f2a131f1e Swap stream for scan, target_resolution as arg 2025-06-23 11:17:46 +01:00
jaknapper
f5c1ff2621 Ruff formating 2025-06-23 11:17:46 +01:00
jaknapper
17f3bbe646 Low res stream during scanning for instant high res captures 2025-06-23 11:17:46 +01:00
jaknapper
a9fdd0ea3e Wait params in captures, multiple attempts to capture 2025-06-23 11:17:46 +01:00
jaknapper
de7ffb9d1e Stream_name and capture_method args updated 2025-06-23 11:17:46 +01:00
jaknapper
8bc0573ab1 Capture_array can now use "full" stream 2025-06-23 11:17:46 +01:00
jaknapper
9d1385231d Rename jpeg_array to highres_array 2025-06-23 11:17:46 +01:00
jaknapper
132efa8033 Options for capture method, default downsampling of correlations 2025-06-23 11:17:45 +01:00
jaknapper
26163dc97e Added a new way to capture full res JPEGs, need to do a comparison of results 2025-06-23 11:17:45 +01:00
jaknapper
ab33de7ccd Capture a jpeg to disk 2025-06-23 11:17:45 +01:00
jaknapper
d8878e40da Stacking in autofocus with temp capture Thing 2025-06-23 11:17:45 +01:00
jaknapper
46458ca8a1 Create a stack folder and copy the middle image to image_dir 2025-06-23 11:17:45 +01:00
jaknapper
a1784941fe Ruff formatting and removing all capturing from smart_scan 2025-06-23 11:17:45 +01:00
jaknapper
603b9c7d16 Functional z stack Thing 2025-06-23 11:17:45 +01:00
Julian Stirling
cdf23bc403 Add a timeout when shutting down the server.
The browser needs to be closed for graceful shutdown. If the browser
is left open the microscope may never shut down as it is waiting on
the uvicorn process to finish. This causes potential SD card issues.

This forces the server to force shutdown if it doesn't exit gracefully in
2 seconds.
2025-06-19 16:25:43 -04:00
Julian Stirling
1c54d25212 Add ruff checking for unnecessary comprehensions 2025-06-10 16:07:49 +01:00
Julian Stirling
2050c2dc7c Add return checker, needed 4 fixes 2025-06-10 16:07:48 +01:00
Julian Stirling
3f0564f253 Turning on more lint checkers, warning for cameras that ignore resolution setting 2025-06-10 16:07:48 +01:00
Joe Knapper
ae2ec1864f Merge branch 'config-scan-dir' into 'v3'
Add scan directory to json config

Closes #393

See merge request openflexure/openflexure-microscope-server!283
2025-06-09 13:42:27 +00:00
Chish36
7eed48ed26 Swapped the order of CSM so y axis is completed first 2025-06-09 13:39:06 +00:00
Julian Stirling
3a1c3bb026 Ensure server and config vars always defined before fallback server is started 2025-06-06 12:42:21 +01:00
Julian Stirling
b45f5651ab Add scan directory to json config 2025-06-06 12:21:51 +01:00
Joe Knapper
08d1371569 Apply 1 suggestion(s) to 1 file(s)
Co-authored-by: Julian Stirling <julian@julianstirling.co.uk>
2025-06-06 10:25:34 +00:00
Joe Knapper
69db7b4041 Apply 2 suggestion(s) to 1 file(s)
Co-authored-by: Julian Stirling <julian@julianstirling.co.uk>
2025-06-05 17:09:37 +00:00
Joe Knapper
41f6c8879a RATIO as a global, better naming and splitting of generate_image() 2025-06-05 15:03:26 +01:00
Joe Knapper
2db895a1fc Defocus and realign simulation axes 2025-06-05 12:09:01 +01:00
Julian Stirling
16317bf94c Merge branch 'fix-simulation' into 'v3'
Simulation fixes

See merge request openflexure/openflexure-microscope-server!279
2025-06-05 10:35:53 +00:00
Joe Knapper
c919f8a19f Logging config based on default uvicorn settings 2025-06-03 14:48:13 +01:00
Julian Stirling
4ef74c42c3 Configure log folder in json file 2025-06-03 14:05:58 +01:00
jaknapper
a499d9230c Switch to updated "preview stitch" mode in stitching 2025-05-23 16:28:22 +01:00
jaknapper
cc3620d2ed Stitch with dzi by default, and check for dzi available in scans() 2025-05-23 16:28:21 +01:00
jaknapper
efe2127afb Mount scans to app on startup 2025-05-23 16:28:21 +01:00
Julian Stirling
fe1696df28 Fix error in purge_empty_scans if the images dir hadn't been created 2025-05-23 12:49:46 +01:00