From 12b92f1dca5a97a8ddabf0203b11c3e13546ace4 Mon Sep 17 00:00:00 2001
From: HaamsRee
Date: Mon, 15 Sep 2025 09:33:29 -0500
Subject: [PATCH] Fixed Slide.warp_slide where it would not load the src_f file
even when specified
---
valis/registration.py | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/valis/registration.py b/valis/registration.py
index fb98c30b..cb7cab20 100644
--- a/valis/registration.py
+++ b/valis/registration.py
@@ -922,6 +922,11 @@ def warp_slide(self, level, non_rigid=True, crop=True,
interp_method : str
Interpolation method used when warping slide. Default is "bicubic"
+ reader: SlideReader, optional
+ SlideReader to be used to read the slide (file). If both src_f and
+ reader are None, use the slide object's reader. If src_f is not the same as the
+ slide object's, get new slide reader redirected to src_f. Can also be manually specified.
+
"""
if src_f is None:
src_f = self.src_f
@@ -987,7 +992,11 @@ def warp_slide(self, level, non_rigid=True, crop=True,
bg_color = None
if reader is None:
- reader = self.reader
+ if src_f == self.src_f:
+ reader = self.reader
+ else:
+ slide_reader_cls = slide_io.get_slide_reader(src_f)
+ reader = slide_reader_cls(src_f)
warped_slide = slide_tools.warp_slide(src_f, M=self.M,
transformation_src_shape_rc=self.processed_img_shape_rc,