Grab_jpeg throwing broken data stream error
A scan was working well at 2MP until `broken data stream when reading image file` <details><summary>Click to expand</summary> 23/06/2025 16:20:03: ERROR The scan stopped because of an error: broken data stream when reading image file Attempting to stitch and archive the images acquired so far. The scan stopped because of an error: broken data stream when reading image file Attempting to stitch and archive the images acquired so far. Traceback (most recent call last): File "/var/openflexure/application/openflexure-microscope-server/src/openflexure_microscope_server/things/smart_scan.py", line 551, in _run_scan self._main_scan_loop() File "/var/openflexure/application/openflexure-microscope-server/src/openflexure_microscope_server/things/smart_scan.py", line 109, in scan_running_wrapper return method(self, *args, **kwargs) File "/var/openflexure/application/openflexure-microscope-server/src/openflexure_microscope_server/things/smart_scan.py", line 641, in _main_scan_loop capture_image = self._background_detect.image_is_sample() File "/var/openflexure/application/openflexure-microscope-server/.venv/lib/python3.11/site-packages/labthings_fastapi/client/in_server.py", line 105, in action_method return getattr(self._wrapped_thing, name)(**kwargs_and_deps) File "/var/openflexure/application/openflexure-microscope-server/src/openflexure_microscope_server/things/background_detect.py", line 95, in image_is_sample b_fraction = self.background_fraction(cam) File "/var/openflexure/application/openflexure-microscope-server/src/openflexure_microscope_server/things/background_detect.py", line 85, in background_fraction current_image = np.array(Image.open(current_image.open())) File "/var/openflexure/application/openflexure-microscope-server/.venv/lib/python3.11/site-packages/PIL/Image.py", line 742, in __array_interface__ new["data"] = self.tobytes() File "/var/openflexure/application/openflexure-microscope-server/.venv/lib/python3.11/site-packages/PIL/Image.py", line 802, in tobytes self.load() File "/var/openflexure/application/openflexure-microscope-server/.venv/lib/python3.11/site-packages/PIL/ImageFile.py", line 312, in load raise _get_oserror(err_code, encoder=False) OSError: broken data stream when reading image file </details> An issue with `grab_jpeg`. Branch was jpeg-capture-in-stacking Note that this so far has happened exactly once during testing and it has been seen again during scanning (see #500).
issue