Commit graph

2797 commits

Author SHA1 Message Date
Richard Bowman
c32b44d1a6 Refactor server into submodule 2024-08-09 00:49:24 +01:00
Richard Bowman
3abddc3b39 Fix labthings dependency
I changed the labthings package such that it will
only install the client dependencies by default.
This is now fixed by requiring the [server] extras.
In the future we might split labthings into client
and server packages.
2024-07-18 13:17:26 +01:00
Joe Knapper
c2b54da4a1 More explantion of building webapp in README 2024-06-10 11:27:30 +00:00
Joe Knapper
4ea3b5b623 Increase minimum fraction coverage - makes stitching much more reliable 2024-05-30 11:42:25 +00:00
Richard Bowman
c9aeabf545 Await updatePosition in mounted hook
updatePosition is asynchronous, so we should await it, otherwise
it may not be run correctly (resulting in the navigate pane
being disabled).
2024-03-12 17:19:11 +00:00
jaknapper
f08840f0e8 Zip a stitched image with the scan name in the filename 2024-03-05 13:38:24 +00:00
Richard Bowman
61d94e205d Merge branch 'action-button' into 'v3'
Replace tasksubmitter with action-button

See merge request openflexure/openflexure-microscope-server!176
2024-02-29 22:54:16 +00:00
Richard Bowman
2ac317307e Clean up debugging code 2024-02-29 22:41:45 +00:00
Richard Bowman
fef53c1176 Start modals on mount, not create
The calibration modal was not starting properly, because
the component was not mounted when its show method
was called. Calling it from the `mounted` method solves
the problem and we don't get the error.

I'm not 100% sure this was introduced by refactoring the
taskSubmitter, though it's possible. However, I think the
fix is uncontroversial and it should probably have been there
all along.
2024-02-29 22:40:41 +00:00
Richard Bowman
fb07343cdd Fix errors introduced by refactoring of taskSubmitter
I removed some defunct properties - this introduced a couple
of problems, which are resolved by:

* no longer checking for fastAutofocusUri
* removing the unused prop availablePlugins from the calibration modal
2024-02-29 22:17:49 +00:00
Richard Bowman
cbd8b090ec Replace tasksubmitter with action-button
I've changed tasksubmitter to accept a "thing" and "action" rather than a single URL. This seems more in keeping with
propertyControl, and eliminates the need for loads of
computed properties.

I've also deleted (rather than just commenting out) chunks of the web app that are no longer in use. These may be
reinstated in the future - but we can get them from git
history. It's less confusing not to have vestigial
code in the repo.

This builds OK but is not, as yet, tested with hardware.
2024-02-29 21:44:39 +00:00
Richard Bowman
612b88d58c Merge branch 'verify-focus' into 'v3'
Improvements to autofocus and stitching in `smart_scan`.

See merge request openflexure/openflexure-microscope-server!175
2024-02-21 20:51:09 +00:00
Joe Knapper
f2cfa9faf8 Working delete all and auto reload when deleting or opening tab 2024-02-21 17:45:39 +00:00
Joe Knapper
361130eea6 Download zip button from scan tab 2024-02-21 16:36:17 +00:00
Joe Knapper
07b1d3bb7c Merge branch 'verify-focus' of https://gitlab.com/openflexure/openflexure-microscope-server into verify-focus 2024-02-21 15:48:04 +00:00
Joe Knapper
97c114b77e Show scan folder instead of name 2024-02-21 15:47:42 +00:00
jaknapper
43cf7e837a Produce tiff as property 2024-02-21 14:42:52 +00:00
jaknapper
169df15fd1 More restricted range 2024-02-21 14:04:07 +00:00
Joe Knapper
6031280a19 Merge branch 'changes-into-saturation-fix' into verify-focus 2024-02-20 14:17:25 +00:00
Joe Knapper
eafeaca3ff Readd zip name 2024-02-20 12:22:06 +00:00
Joe Knapper
bba0ab1853 Revert "Readd zip name generation"
This reverts commit c3742565b6
2024-02-20 12:21:21 +00:00
Joe Knapper
c3742565b6 Readd zip name generation 2024-02-20 12:15:42 +00:00
Joe Knapper
2c8660e01f Capture metadata before image to ensure consistency 2024-02-20 12:11:04 +00:00
jaknapper
e6eb4d419d Live logging (requires unbuffered program output from stitching) 2024-02-20 10:51:32 +00:00
Richard Bowman
41f03958c6 Save images with saturated pixels
If any pixels in the manually processed raw image end up
saturated (>255), this causes an error. I've now manually
clamped the values between 0 and 255 to fix this.

It would probably be a good idea to warn when this happens,
as it does mean we're losing data.
2024-02-15 17:34:29 +00:00
Richard Bowman
08e74ac020 Merge branch 'parallel_acquisition_and_moves' into 'v3'
Parallel acquisition and moves

See merge request openflexure/openflexure-microscope-server!174
2024-02-15 16:56:00 +00:00
Richard Bowman
82e2a250fc Include colour correction matrix and gamma in saved images
I've replicated more of the camera pipeline in the images
saved during scans - in particular, I've added the colour
correction matrix (increases saturation) and the contrast
agorithm (implements gamma correction).

This slows down saving to ~0.5-2 seconds, but that's still less time than it takes to move.
2024-02-15 16:38:15 +00:00
jaknapper
aed5a22983 Autofocus verify based on sharpness range, removed repetitive logging 2024-02-15 11:02:44 +00:00
Richard Bowman
a16c54d2db Update raw image processing in scan
This matches recent commits in labthings-picamera2
2024-02-14 18:03:13 +00:00
Joe Knapper
f1c315783c Test the success of refocusing 2024-02-13 15:24:42 +00:00
Joe Knapper
f2d85cb891 sleep before capturing 2024-02-09 19:06:58 +00:00
Joe Knapper
61d7712c27 tiff as an option 2024-02-09 19:05:20 +00:00
Joe Knapper
6aa712e515 Rescaling stitch preview to avoid scrolling in y 2024-02-09 16:08:21 +00:00
Richard Bowman
a61ffbf75a WIP: use code from labthings-picamera2 for EXIF writing
I've now switched to using piexif to write the EXIF tag, which
is slower - but still does not seem to work in openflexure-
stitching.
2024-02-05 17:14:56 +00:00
Richard Bowman
bc8db396bf Acquire raw images rather than processed ones
I've swapped `capture_jpeg` for `capture_array`. This will acquire a raw image and process it manually. Currently I've included LST correction, colour balance, but **not** the colour unmixing matrix. In the future we could add this to implement proper correction for saturation.

Currently EXIF data does not seem to be working properly.
2024-02-01 21:55:15 +00:00
Richard Bowman
24a1d9d020 WIP: try just waiting 0.5s rather than using an Event 2024-02-01 17:37:44 +00:00
Richard Bowman
4a18ef729a Parallelise capture of images and the next move 2024-02-01 17:36:05 +00:00
Richard Bowman
6e4e79f2d2 Factor out moving to the next scan point into a method 2024-02-01 16:49:18 +00:00
Richard Bowman
f60e6f2a0b Merge branch 'autofocus_efficiency' into 'v3'
Autofocus efficiency

See merge request openflexure/openflexure-microscope-server!173
2024-02-01 16:17:53 +00:00
jaknapper
db51cd8067 Make overlap value consistent 2024-02-01 15:31:14 +00:00
jaknapper
e6e809cea4 Zip files as we scan, saving the regenerated ones to the end
Removed maximum scan size of 750 images

Save json of scan inputs and use it for future stitching (ensures consistent parameters)

Moved looping autofocus to autofocus thing from recentering thing

Rewrote looping autofocus to skip unneeded moves, as if peak is out of range, no need to nicely focus
2024-01-30 18:46:34 +00:00
jaknapper
a0b98a1adc Fixed autofocus to not combine logs 2024-01-29 19:56:24 +00:00
Joe Knapper
528406137f Start autofocus from base of range for speed 2024-01-29 18:10:11 +00:00
Joe Knapper
53eb51e964 Improved default scan values 2024-01-23 15:22:30 +00:00
Joe Knapper
81d6514eb0 Always show scan name during scan 2024-01-23 11:42:03 +00:00
Richard Bowman
f44fb02006 Merge branch 'rwanda-feedback' into 'v3'
Hide background detect settings in an accordion

See merge request openflexure/openflexure-microscope-server!172
2024-01-17 14:22:51 +00:00
Richard Bowman
6a47835ea1 Re-label check coverage button 2024-01-17 14:13:12 +00:00
Richard Bowman
1b39f9d5c0 Add a button to stitch scans 2024-01-17 13:46:29 +00:00
Richard Bowman
0b45a5dc76 Allow action URIs to be retrieved without errors if they are missing
thingActionUrl may now be told to return `undefined` insstead of throwing an error if the action is missing.
2024-01-17 13:43:22 +00:00
Richard Bowman
653e1a4159 Added a button to flash the LED 2024-01-17 13:36:26 +00:00