Commit graph

147 commits

Author SHA1 Message Date
Richard Bowman
79b0d48cf4 Swap Generator annotation for Iterator 2021-04-27 17:13:40 +01:00
Richard Bowman
88de3089ea Fixed linter errors 2021-04-21 13:38:14 +01:00
Richard Bowman
8c50f73b34 Fixed type of context manager 2021-04-21 12:54:53 +01:00
Richard Bowman
fd32c22e30 Fixed formatting 2021-04-21 12:40:10 +01:00
Richard Bowman
1f1a75c02a Merge branch 'master' into auto-exposure-gain-awb 2021-04-21 12:10:47 +01:00
Richard Bowman
1cea75be70 Formatting fixes 2021-03-31 09:40:31 +01:00
Richard Bowman
e73ee8875c Fixed type annotations in autofocus and mock stage
I don't know why these didn't fail before - possibly because of
incomplete type information from old numpy...
I removed a few annotations because they were failing (e.g.
np.sum can return a scalar or an array), but I don't think
this should be a problem - the function inputs and return values
are still typed.
2021-03-30 17:51:00 +01:00
Richard Bowman
cd5e32b843 Removed deprecated np.float
numpy 1.20 deprecates np.float, which was only ever an alias for
``float``.  I've replaced all occurrences of np.float with float, as
recommended.  There should be no change in functionality.
2021-03-30 17:40:19 +01:00
Richard Bowman
a373afd955 swap print for logging in old function 2021-03-16 11:01:57 +00:00
Richard Bowman
3b435ab2ee Deleted obsolete functions 2021-02-18 15:56:11 +00:00
Richard Bowman
b06dd187ec Fixed args in endpoints 2021-02-15 20:18:34 +00:00
Richard Bowman
069d27bf15 Lock access to picamera
The picamera object isn't thread safe; I have now wrapped all access
in context managers that acquire the BaseCamera.lock

I also added an endpoint to reset the LST without auto-gain.
2021-02-15 20:15:55 +00:00
Richard Bowman
a9709b14ea Added locking to recalibrate functions
When testing the UI I noticed that the different recalibrate routines
don't use locks properly, so they try to run
concurrently.

This commit isn't tested yet...
2021-02-15 19:21:27 +00:00
Richard Bowman
0f1a400979 Fixed type hint 2021-02-15 17:04:44 +00:00
Richard Bowman
4c27d88b37 Fixed description and linted 2021-02-11 15:54:58 +00:00
Richard Bowman
5527c4eb7b Fix auto-exposure and AWB
The previous "auto calibrate" button for the camera relied on a
combination of the built-in autoexposure/AWB and
some JPEG-based tweaks to get the exposure settings right.
This often led to confusing results, e.g. oscillating between green and
 pink images.

 I have rewritten the auto-exposure code to adjust gain and shutter
 speed based on the raw image.  This seems to be
 very reliable, at the expense of being quite slow.  That's a price I'm
 happy to pay.

 I have replaced both the camera's auto white balance and my
 JPEG-based AWB hack with a single-shot AWB method that
 looks at the raw image.
2021-02-11 14:30:20 +00:00
Joel Collins
58b2967f53 Fixed autofocus 'PiCameraStreamer' object has no attribute 'annotate_text' error 2020-12-07 10:12:30 +00:00
Joel Collins
311366c943 Added type hints to CSM extension 2020-12-04 17:05:40 +00:00
Joel Collins
920354537a Integrated CSMExtension 2020-12-04 16:05:39 +00:00
Joel Collins
7ba3f447e1 Added extra type hints 2020-12-04 15:23:03 +00:00
Joel Collins
63b633ba44 2.9 dev numpy types 2020-12-04 13:35:11 +00:00
Joel Collins
37f92b6cce Linting fixes 2020-11-30 17:17:14 +00:00
Joel Collins
b8354d3e8e Added type information to LABTHINGS_EXTENSIONS 2020-11-30 17:11:30 +00:00
Joel Collins
d28848412c Fixed get_locations method reference 2020-11-30 16:59:56 +00:00
Joel Collins
18a0eedd5e Fixed tile method reference 2020-11-30 16:57:54 +00:00
Joel Collins
8d0759e9e0 Updated default extensions to subclass structure 2020-11-30 16:41:39 +00:00
Joel Collins
7866ec0f47 Static type analysis 2020-11-30 13:36:45 +00:00
Joel Collins
b2192b2190 Fixed unused imports 2020-11-25 15:32:08 +00:00
Joel Collins
5137d1b9dc Added basic unit tests of non-integrated functions 2020-11-25 15:25:17 +00:00
Joel Collins
3451b8a8a5 Added full TileScanArgs schema 2020-11-12 16:56:28 +00:00
Joel Collins
6fb61e1e3f Reverted logging style 2020-11-12 15:45:58 +00:00
Joel Collins
9f5252194a Updated all log strings to new format 2020-11-12 15:12:17 +00:00
Joel Collins
b350f62013 Removed old JSONResponse class 2020-11-12 13:50:48 +00:00
Joel Collins
da490fdfcd Separated move_and_measure locks 2020-10-28 15:40:29 +00:00
Joel Collins
601e51d9b9 Code formatting 2020-10-26 14:58:09 +00:00
Joel Collins
ef4e825b9c Merge branch 'temporary' into 'master'
Added a spiral scan option

See merge request openflexure/openflexure-microscope-server!75
2020-10-26 14:54:23 +00:00
Joel Collins
459a8dc2a3 Reset tracker frames after each mode 2020-10-26 13:36:36 +00:00
Joel Collins
574f4a615d Fast AF use normal stream 2020-10-26 13:16:58 +00:00
Joel Collins
3c63d6a240 Overhauled autofocus tracker 2020-10-22 16:00:52 +01:00
Joel Collins
cd8145c198 Isort 2020-10-22 15:59:19 +01:00
Joel Collins
355b3cd8f2 Fixed argument parsing in PreferredLocationGUIView 2020-10-21 11:40:03 +01:00
Joel Collins
1677f0df76 Blackened 2020-10-19 18:34:58 +01:00
Joel Collins
4ae39db402 Revert scan to use old fast autofocus 2020-10-19 18:20:40 +01:00
Joel Collins
51ff132633 Refactored fast_autofocus 2020-10-19 18:17:29 +01:00
Joel Collins
2186bf7aaa Add /updownup_autofocus view 2020-10-19 17:59:54 +01:00
Joel Collins
4ceb6bcafe Separate "classic" fast AF from up-down-up AF 2020-10-19 17:59:07 +01:00
Joel Collins
9310deeeff Fixed pylint line ignores 2020-10-16 09:35:41 +00:00
Joel Collins
994e83dbeb Code cleanup 2020-10-14 14:56:29 +00:00
Joe Knapper
ad8fd54cb7 Added a spiral scan option 2020-10-14 15:52:44 +01:00
Joel Collins
2bfb988460 Code formatting 2020-10-13 15:02:19 +01:00