Coverage for openhcs/processing/backends/enhance/__init__.py: 51.5%

33 statements  

« prev     ^ index     » next       coverage.py v7.10.3, created at 2025-08-14 05:57 +0000

1""" 

2Image enhancement backend implementations. 

3 

4This package contains implementations of various image enhancement algorithms 

5for different memory backends (NumPy, CuPy, PyTorch, TensorFlow, JAX). 

6 

7Doctrinal Clauses: 

8- Clause 3 — Declarative Primacy: All functions are pure and stateless 

9- Clause 88 — No Inferred Capabilities: Explicit backend requirements 

10- Clause 106-A — Declared Memory Types: All methods specify memory types 

11- Clause 273 — Memory Backend Restrictions: GPU-only implementations are marked 

12""" 

13 

14# Import BaSiC processor implementations 

15try: 

16 from openhcs.processing.backends.enhance.basic_processor_numpy import ( 

17 basic_flatfield_correction_batch_numpy, 

18 basic_flatfield_correction_numpy) 

19except ImportError: 

20 pass 

21 

22try: 

23 from openhcs.processing.backends.enhance.basic_processor_cupy import ( 

24 basic_flatfield_correction_batch_cupy, basic_flatfield_correction_cupy) 

25except ImportError: 

26 pass 

27 

28try: 

29 from openhcs.processing.backends.enhance.basic_processor_jax import ( 

30 basic_flatfield_correction_batch_jax, basic_flatfield_correction_jax) 

31except ImportError: 

32 pass 

33 

34# Import N2V2 processor implementation 

35try: 

36 from openhcs.processing.backends.enhance.n2v2_processor_torch import \ 

37 n2v2_denoise_torch 

38except ImportError: 

39 pass 

40 

41# Import self-supervised deconvolution implementations 

42try: 

43 from openhcs.processing.backends.enhance.self_supervised_2d_deconvolution import \ 

44 self_supervised_2d_deconvolution 

45except ImportError: 

46 pass 

47 

48try: 

49 from openhcs.processing.backends.enhance.self_supervised_3d_deconvolution import \ 

50 self_supervised_3d_deconvolution 

51except ImportError: 

52 pass 

53 

54# Import torch_nlm processor implementation 

55try: 

56 from openhcs.processing.backends.enhance.torch_nlm_processor import ( 

57 non_local_means_denoise_torch, 

58 torch_nlm_denoise 

59 ) 

60except ImportError: 

61 pass 

62 

63# Import JAX NLM processor implementation 

64try: 

65 from openhcs.processing.backends.enhance.jax_nlm_processor import ( 

66 non_local_means_denoise_jax, 

67 jax_nlm_denoise 

68 ) 

69except ImportError: 

70 pass 

71 

72__all__ = [ 

73 # BaSiC processor implementations 

74 "basic_flatfield_correction_numpy", 

75 "basic_flatfield_correction_batch_numpy", 

76 "basic_flatfield_correction_cupy", 

77 "basic_flatfield_correction_batch_cupy", 

78 "basic_flatfield_correction_jax", 

79 "basic_flatfield_correction_batch_jax", 

80 

81 # N2V2 processor implementation 

82 "n2v2_denoise_torch", 

83 

84 # Self-supervised deconvolution implementations 

85 "self_supervised_2d_deconvolution", 

86 "self_supervised_3d_deconvolution", 

87 

88 # torch_nlm processor implementations 

89 "non_local_means_denoise_torch", 

90 "torch_nlm_denoise", 

91 

92 # JAX NLM processor implementations 

93 "non_local_means_denoise_jax", 

94 "jax_nlm_denoise", 

95]