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
This commit is contained in:
parent
4caba58d6c
commit
6eefa4f25b
1 changed files with 6 additions and 0 deletions
|
|
@ -132,6 +132,7 @@ class CameraStageMapper(Thing):
|
||||||
|
|
||||||
result: dict = calibrate_backlash_1d(tracker, move, direction_array)
|
result: dict = calibrate_backlash_1d(tracker, move, direction_array)
|
||||||
result["move_history"] = move.history
|
result["move_history"] = move.history
|
||||||
|
result["image_resolution"] = hw.grab_image().shape[:2]
|
||||||
return result
|
return result
|
||||||
|
|
||||||
@thing_action
|
@thing_action
|
||||||
|
|
@ -145,11 +146,13 @@ class CameraStageMapper(Thing):
|
||||||
# Combine X and Y calibrations to make a 2D calibration
|
# Combine X and Y calibrations to make a 2D calibration
|
||||||
cal_xy: dict = denumpify(image_to_stage_displacement_from_1d([cal_x, cal_y]))
|
cal_xy: dict = denumpify(image_to_stage_displacement_from_1d([cal_x, cal_y]))
|
||||||
self.thing_settings.update(cal_xy)
|
self.thing_settings.update(cal_xy)
|
||||||
|
self.thing_settings["image_resolution"] = cal_x["image_resolution"]
|
||||||
|
|
||||||
data: Dict[str, dict] = {
|
data: Dict[str, dict] = {
|
||||||
"camera_stage_mapping_calibration": cal_xy,
|
"camera_stage_mapping_calibration": cal_xy,
|
||||||
"linear_calibration_x": cal_x,
|
"linear_calibration_x": cal_x,
|
||||||
"linear_calibration_y": cal_y,
|
"linear_calibration_y": cal_y,
|
||||||
|
"image_resolution": cal_x["image_resolution"]
|
||||||
}
|
}
|
||||||
|
|
||||||
self.thing_settings["last_calibration"] = DenumpifyingDict(data).model_dump()
|
self.thing_settings["last_calibration"] = DenumpifyingDict(data).model_dump()
|
||||||
|
|
@ -195,4 +198,7 @@ class CameraStageMapper(Thing):
|
||||||
"image_to_stage_displacement_matrix": (
|
"image_to_stage_displacement_matrix": (
|
||||||
self.image_to_stage_displacement_matrix
|
self.image_to_stage_displacement_matrix
|
||||||
),
|
),
|
||||||
|
"image_resolution": (
|
||||||
|
self.thing_settings.get("image_to_stage_displacement", None)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue