This commit is contained in:
+11
-10
@@ -36,10 +36,15 @@ def load_corr_stack(title="Corr", show=False):
|
||||
file_list.append("{images}/TestObjAligner_corr/i210517_0" + str(index) + "#001.tif")
|
||||
return load_stack(title, file_list, show)
|
||||
|
||||
def instantiate_dynamic_class(name):
|
||||
if get_context().getPluginManager().getDynamicClass(name) is None:
|
||||
get_context().getPluginManager().loadInitializePlugin(name + ".java")
|
||||
return get_context().getClassByName(name).newInstance()
|
||||
|
||||
|
||||
def complex_edge_filtering(imp, complex=True, g_sigma=3.0, g_resolution=1e-4, show=False, java_code=False):
|
||||
if java_code:
|
||||
get_context().getPluginManager().loadInitializePlugin("Align_ComplexEdgeFiltering.java")
|
||||
complex_edge_filter = get_context().getClassByName("Align_ComplexEdgeFiltering").newInstance()
|
||||
complex_edge_filter = instantiate_dynamic_class("Align_ComplexEdgeFiltering")
|
||||
complex_edge_filter.setup(str(g_sigma)+","+str(complex)+","+str(show), imp) #Gaussian blur radius, Complex (True) or Real (False), show dialog = False
|
||||
complex_edge_filter.run(imp.getProcessor())
|
||||
return complex_edge_filter.output
|
||||
@@ -151,8 +156,7 @@ class TranslationFilter(ExtendedPlugInFilter):
|
||||
def translate(stack, shifts, show=False, java_code=False):
|
||||
WindowManager.setTempCurrentImage(stack)
|
||||
if java_code:
|
||||
get_context().getPluginManager().loadInitializePlugin("Align_TranslationFilter.java")
|
||||
translation_filter = get_context().getClassByName("Align_TranslationFilter").newInstance()
|
||||
translation_filter = instantiate_dynamic_class("Align_TranslationFilter")
|
||||
translation_filter.imp = imp
|
||||
translation_filter.shifts = shifts
|
||||
pfr = PlugInFilterRunner(translation_filter, "", "" )
|
||||
@@ -170,13 +174,11 @@ def translate(stack, shifts, show=False, java_code=False):
|
||||
|
||||
|
||||
def load_shifts(filename):
|
||||
get_context().getPluginManager().loadInitializePlugin("ShiftsIO.java")
|
||||
sio = get_context().getClassByName("ShiftsIO").newInstance()
|
||||
sio = instantiate_dynamic_class("ShiftsIO")
|
||||
return sio.load(expand_path(filename), "directshifts")
|
||||
|
||||
def save_shifts(filename, shifts):
|
||||
get_context().getPluginManager().loadInitializePlugin("ShiftsIO.java")
|
||||
sio = get_context().getClassByName("ShiftsIO").newInstance()
|
||||
sio = instantiate_dynamic_class("ShiftsIO")
|
||||
sio.save(expand_path(filename), shifts, "directshifts")
|
||||
|
||||
|
||||
@@ -588,8 +590,7 @@ def calculate_shifts(imp_r, imp_i, roi, upscale_factor=100, reference_slide=1, j
|
||||
if roi is None or roi.bounds.minX <0 or roi.bounds.minY<0 or roi.bounds.maxX>=imp_r.width or roi.bounds.maxY>=imp_r.height:
|
||||
raise Exception("Invalid roi: " + str(roi))
|
||||
if java_code:
|
||||
get_context().getPluginManager().loadInitializePlugin("Align_ComputeShifts.java")
|
||||
compute_shifts_filter = get_context().getClassByName("Align_ComputeShifts").newInstance()
|
||||
compute_shifts_filter = instantiate_dynamic_class("Align_ComputeShifts")
|
||||
compute_shifts_filter.setup(upscale_factor, False, imp_r, imp_i, 1, roi)
|
||||
compute_shifts_filter.run(None)
|
||||
return compute_shifts_filter.shifts
|
||||
|
||||
Reference in New Issue
Block a user