nabu 2024.1.9__py3-none-any.whl → 2024.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. nabu/__init__.py +1 -1
  2. nabu/app/bootstrap.py +2 -3
  3. nabu/app/cast_volume.py +4 -2
  4. nabu/app/cli_configs.py +5 -0
  5. nabu/app/composite_cor.py +1 -1
  6. nabu/app/create_distortion_map_from_poly.py +5 -6
  7. nabu/app/diag_to_pix.py +7 -19
  8. nabu/app/diag_to_rot.py +14 -29
  9. nabu/app/double_flatfield.py +32 -44
  10. nabu/app/parse_reconstruction_log.py +3 -0
  11. nabu/app/reconstruct.py +53 -15
  12. nabu/app/reconstruct_helical.py +2 -2
  13. nabu/app/stitching.py +27 -13
  14. nabu/app/tests/test_reduce_dark_flat.py +4 -1
  15. nabu/cuda/kernel.py +11 -2
  16. nabu/cuda/processing.py +2 -2
  17. nabu/cuda/src/cone.cu +77 -0
  18. nabu/cuda/src/hierarchical_backproj.cu +271 -0
  19. nabu/cuda/utils.py +0 -6
  20. nabu/estimation/alignment.py +5 -19
  21. nabu/estimation/cor.py +173 -599
  22. nabu/estimation/cor_sino.py +356 -26
  23. nabu/estimation/focus.py +63 -11
  24. nabu/estimation/tests/test_cor.py +124 -58
  25. nabu/estimation/tests/test_focus.py +6 -6
  26. nabu/estimation/tilt.py +2 -1
  27. nabu/estimation/utils.py +5 -33
  28. nabu/io/__init__.py +1 -1
  29. nabu/io/cast_volume.py +1 -1
  30. nabu/io/reader.py +416 -21
  31. nabu/io/tests/test_readers.py +422 -0
  32. nabu/io/tests/test_writers.py +1 -102
  33. nabu/io/writer.py +4 -433
  34. nabu/opencl/kernel.py +14 -3
  35. nabu/opencl/processing.py +8 -0
  36. nabu/pipeline/config_validators.py +5 -2
  37. nabu/pipeline/datadump.py +12 -5
  38. nabu/pipeline/estimators.py +162 -188
  39. nabu/pipeline/fullfield/chunked.py +168 -92
  40. nabu/pipeline/fullfield/chunked_cuda.py +7 -3
  41. nabu/pipeline/fullfield/computations.py +2 -7
  42. nabu/pipeline/fullfield/dataset_validator.py +0 -4
  43. nabu/pipeline/fullfield/nabu_config.py +37 -13
  44. nabu/pipeline/fullfield/processconfig.py +22 -13
  45. nabu/pipeline/fullfield/reconstruction.py +13 -9
  46. nabu/pipeline/helical/helical_chunked_regridded.py +1 -1
  47. nabu/pipeline/helical/helical_chunked_regridded_cuda.py +1 -0
  48. nabu/pipeline/helical/helical_reconstruction.py +1 -1
  49. nabu/pipeline/params.py +21 -1
  50. nabu/pipeline/processconfig.py +1 -12
  51. nabu/pipeline/reader.py +146 -0
  52. nabu/pipeline/tests/test_estimators.py +44 -72
  53. nabu/pipeline/utils.py +4 -2
  54. nabu/pipeline/writer.py +10 -2
  55. nabu/preproc/ccd_cuda.py +1 -1
  56. nabu/preproc/ctf.py +14 -7
  57. nabu/preproc/ctf_cuda.py +2 -3
  58. nabu/preproc/double_flatfield.py +5 -12
  59. nabu/preproc/double_flatfield_cuda.py +2 -2
  60. nabu/preproc/flatfield.py +5 -1
  61. nabu/preproc/flatfield_cuda.py +5 -1
  62. nabu/preproc/phase.py +24 -73
  63. nabu/preproc/phase_cuda.py +5 -8
  64. nabu/preproc/tests/test_ctf.py +11 -7
  65. nabu/preproc/tests/test_flatfield.py +67 -122
  66. nabu/preproc/tests/test_paganin.py +54 -30
  67. nabu/processing/azim.py +206 -0
  68. nabu/processing/convolution_cuda.py +1 -1
  69. nabu/processing/fft_cuda.py +15 -17
  70. nabu/processing/histogram.py +2 -0
  71. nabu/processing/histogram_cuda.py +2 -1
  72. nabu/processing/kernel_base.py +3 -0
  73. nabu/processing/muladd_cuda.py +1 -0
  74. nabu/processing/padding_opencl.py +1 -1
  75. nabu/processing/roll_opencl.py +1 -0
  76. nabu/processing/rotation_cuda.py +2 -2
  77. nabu/processing/tests/test_fft.py +17 -10
  78. nabu/processing/unsharp_cuda.py +1 -1
  79. nabu/reconstruction/cone.py +104 -40
  80. nabu/reconstruction/fbp.py +3 -0
  81. nabu/reconstruction/fbp_base.py +7 -2
  82. nabu/reconstruction/filtering.py +20 -7
  83. nabu/reconstruction/filtering_cuda.py +7 -1
  84. nabu/reconstruction/hbp.py +424 -0
  85. nabu/reconstruction/mlem.py +99 -0
  86. nabu/reconstruction/reconstructor.py +2 -0
  87. nabu/reconstruction/rings_cuda.py +19 -19
  88. nabu/reconstruction/sinogram_cuda.py +1 -0
  89. nabu/reconstruction/sinogram_opencl.py +3 -1
  90. nabu/reconstruction/tests/test_cone.py +10 -5
  91. nabu/reconstruction/tests/test_deringer.py +7 -6
  92. nabu/reconstruction/tests/test_fbp.py +124 -10
  93. nabu/reconstruction/tests/test_filtering.py +13 -11
  94. nabu/reconstruction/tests/test_halftomo.py +30 -4
  95. nabu/reconstruction/tests/test_mlem.py +91 -0
  96. nabu/reconstruction/tests/test_reconstructor.py +8 -3
  97. nabu/resources/dataset_analyzer.py +142 -92
  98. nabu/resources/gpu.py +1 -0
  99. nabu/resources/nxflatfield.py +134 -125
  100. nabu/resources/templates/id16a_fluo.conf +42 -0
  101. nabu/resources/tests/test_extract.py +10 -0
  102. nabu/resources/tests/test_nxflatfield.py +2 -2
  103. nabu/stitching/alignment.py +80 -24
  104. nabu/stitching/config.py +105 -68
  105. nabu/stitching/definitions.py +1 -0
  106. nabu/stitching/frame_composition.py +68 -60
  107. nabu/stitching/overlap.py +91 -51
  108. nabu/stitching/single_axis_stitching.py +32 -0
  109. nabu/stitching/slurm_utils.py +6 -6
  110. nabu/stitching/stitcher/__init__.py +0 -0
  111. nabu/stitching/stitcher/base.py +124 -0
  112. nabu/stitching/stitcher/dumper/__init__.py +3 -0
  113. nabu/stitching/stitcher/dumper/base.py +94 -0
  114. nabu/stitching/stitcher/dumper/postprocessing.py +356 -0
  115. nabu/stitching/stitcher/dumper/preprocessing.py +60 -0
  116. nabu/stitching/stitcher/post_processing.py +555 -0
  117. nabu/stitching/stitcher/pre_processing.py +1068 -0
  118. nabu/stitching/stitcher/single_axis.py +484 -0
  119. nabu/stitching/stitcher/stitcher.py +0 -0
  120. nabu/stitching/stitcher/y_stitcher.py +13 -0
  121. nabu/stitching/stitcher/z_stitcher.py +45 -0
  122. nabu/stitching/stitcher_2D.py +278 -0
  123. nabu/stitching/tests/test_config.py +12 -37
  124. nabu/stitching/tests/test_frame_composition.py +33 -59
  125. nabu/stitching/tests/test_overlap.py +149 -7
  126. nabu/stitching/tests/test_utils.py +1 -1
  127. nabu/stitching/tests/test_y_preprocessing_stitching.py +132 -0
  128. nabu/stitching/tests/{test_z_stitching.py → test_z_postprocessing_stitching.py} +167 -561
  129. nabu/stitching/tests/test_z_preprocessing_stitching.py +431 -0
  130. nabu/stitching/utils/__init__.py +1 -0
  131. nabu/stitching/utils/post_processing.py +281 -0
  132. nabu/stitching/utils/tests/test_post-processing.py +21 -0
  133. nabu/stitching/{utils.py → utils/utils.py} +79 -52
  134. nabu/stitching/y_stitching.py +27 -0
  135. nabu/stitching/z_stitching.py +32 -2263
  136. nabu/testutils.py +1 -152
  137. nabu/thirdparty/tomocupy_remove_stripe.py +43 -9
  138. nabu/utils.py +158 -61
  139. {nabu-2024.1.9.dist-info → nabu-2024.2.0.dist-info}/METADATA +10 -3
  140. {nabu-2024.1.9.dist-info → nabu-2024.2.0.dist-info}/RECORD +144 -121
  141. nabu/io/tiffwriter_zmm.py +0 -99
  142. nabu/pipeline/fallback_utils.py +0 -149
  143. nabu/pipeline/helical/tests/test_accumulator.py +0 -158
  144. nabu/pipeline/helical/tests/test_pipeline_elements_full.py +0 -355
  145. nabu/pipeline/helical/tests/test_strategy.py +0 -61
  146. nabu/pipeline/helical/utils.py +0 -51
  147. nabu/pipeline/tests/test_chunk_reader.py +0 -74
  148. {nabu-2024.1.9.dist-info → nabu-2024.2.0.dist-info}/LICENSE +0 -0
  149. {nabu-2024.1.9.dist-info → nabu-2024.2.0.dist-info}/WHEEL +0 -0
  150. {nabu-2024.1.9.dist-info → nabu-2024.2.0.dist-info}/entry_points.txt +0 -0
  151. {nabu-2024.1.9.dist-info → nabu-2024.2.0.dist-info}/top_level.txt +0 -0
@@ -1,56 +1,58 @@
1
1
  doc/conf.py,sha256=3xtCarCHrXPr50GbeRDuH-o3Jzojw7mpr7vpGfZPLAE,3787
2
2
  doc/create_conf_doc.py,sha256=IVOdP70KvbW9WS_UQu3Iyd0YfS60E2fJ5IDtQ_s4cDw,1143
3
3
  doc/get_mathjax.py,sha256=VIvKRCdDuF2VoY8JD3mSey9XX13AZMmwTJBHdt1tUs4,1012
4
- nabu/__init__.py,sha256=hocwYzVbHilZVlwb2HfL232A1uxBLouRbjQWv0nq_Ng,270
4
+ nabu/__init__.py,sha256=BeM4pgh4eRU9T-E4ydnqad2Eo39KlEKYGhhvBOzjjGM,270
5
5
  nabu/tests.py,sha256=cew9OY2uTyncHI_HM32W8CP6B1GTGKaOW65XtMEqs7o,1417
6
- nabu/testutils.py,sha256=qqtGgkIhpOpXhgeoXlqCb91Rx-JlI4ALaDF6nt8YRRk,13298
7
- nabu/utils.py,sha256=w-xfRb6TFQpS-tao6nlvfmr962pmeec-WH1GltSUCrk,23767
6
+ nabu/testutils.py,sha256=VkSL9tbY0XEH49Z5OjDFFhzkSxrCv4UIuvSVFgegSUY,7632
7
+ nabu/utils.py,sha256=V1B_sD54XGNKn5pORa2yNCATyswOzybey3sv8BuIYWY,26355
8
8
  nabu/app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
- nabu/app/bootstrap.py,sha256=UQZzCBKtSXtQp5U0aXtlUhbjbwzgILTI4zD4zVffhBI,3246
9
+ nabu/app/bootstrap.py,sha256=3yLZJmrmQBmPJMBtE2ih2cspfqOy5T_UN2U8B3i_hkI,3266
10
10
  nabu/app/bootstrap_stitching.py,sha256=Inr0_zRAtyeMTK1BKxGqoDf-Na0O33CICmQJYja06ug,2148
11
- nabu/app/cast_volume.py,sha256=oObZVX-UbhsQ-JbNqpG1SdOSeJwIBrALYsJ9PubPWXc,11217
12
- nabu/app/cli_configs.py,sha256=FBh9bG80oY0fwfOntmgqgumS5i120_r60tCsj_mcdvE,22109
11
+ nabu/app/cast_volume.py,sha256=mjINEIFrh2BVC8mPFO0cnzlFUOS3x5aqjFPGKsb3H-c,11264
12
+ nabu/app/cli_configs.py,sha256=frcKu4Pp6380Gf2j0loP8OYqVRlTcjlLQBHe1mGJR_A,22254
13
13
  nabu/app/compare_volumes.py,sha256=Mu5O4uP-ANo-el-fE5PLvEq42BTk5FkrscaFRyQZdis,3341
14
- nabu/app/composite_cor.py,sha256=N0Q7dxak7GktcuwxtwQ0PdZcmCS5CboChlxa2UCLMIA,5132
14
+ nabu/app/composite_cor.py,sha256=TjYiAtmY4o9lwNpkIEueTTNli72QN6jtR_zbtCeOJz4,5138
15
15
  nabu/app/correct_rot.py,sha256=K0UQz4l5caFvsSr1-1y5hZvt6e45NAH3qYOhzHm2mGc,2130
16
- nabu/app/create_distortion_map_from_poly.py,sha256=5knKx0VLyj-s1ObGwQWlh_ml_Uz4J8jvVBsU9EypLOw,6199
17
- nabu/app/diag_to_pix.py,sha256=iSB9gJ5t45Rf025a0yx3Wom9yYRIlvsO8yPvSv5R6MY,15217
18
- nabu/app/diag_to_rot.py,sha256=86lqINSN4SoQ0Eqf0fGYCw-eAhBHm8ds7TDWtLNE6Cg,17111
19
- nabu/app/double_flatfield.py,sha256=zm9oHWR_QgAV2B3SeNWwgxpJtBsnnWUW4O2lCn5Hjbc,5450
16
+ nabu/app/create_distortion_map_from_poly.py,sha256=aa-vE-ndB9PsuHwdHUW7-8jGz4BxvjC-bQDWHlPV0Kg,6193
17
+ nabu/app/diag_to_pix.py,sha256=b7vpq2zzfJJerIDATsLj_VszZRDnIFE-73EI47ORRoo,15062
18
+ nabu/app/diag_to_rot.py,sha256=x3IcXIa7FXxNvweSZylwi8nEe3Kwz7pkRSMjVNBKVIg,16972
19
+ nabu/app/double_flatfield.py,sha256=6ko_ZJomtwWVHs1pchWy7Pa5_rCO12NyUmyptKarEd0,5420
20
20
  nabu/app/generate_header.py,sha256=Voo-FAvwS_mU5gtDxyqpZnSpP_mlMSfd_6bEtgdi_tg,8919
21
21
  nabu/app/histogram.py,sha256=gyLXKwFrU5WPQMkM1k8OdpIXSwGEEKC-f8RcTHKOho4,7930
22
22
  nabu/app/multicor.py,sha256=h2ykS6Vg3S88E_pZOQu_s7F1VYGv-q7k1nfqxf2IdOM,4055
23
23
  nabu/app/nx_z_splitter.py,sha256=p54jR-PAAw-AkGolM9fZE5lM2vbNLspCNCy5zBnJNP4,4976
24
- nabu/app/parse_reconstruction_log.py,sha256=9eiJftCkyNvtZmTDjeOuKgu3a9Fe4KzJcfcI_ZdDlUM,4586
24
+ nabu/app/parse_reconstruction_log.py,sha256=iVhPnOSDH059jpf9M7LIy2LXgLKmG5U9sQT-3dgXkms,4732
25
25
  nabu/app/prepare_weights_double.py,sha256=5TkhTwNbvgeG8jlDLCwlkeOV_YMINySwdpmjaTM6pbk,5495
26
- nabu/app/reconstruct.py,sha256=Lt3Qu11p_eaq4U6tMfQOw-gRSfGhgFwPms2LkjbZaWY,3968
27
- nabu/app/reconstruct_helical.py,sha256=odjjCtq12vV_oGIpcK_P00nmH8YlFtq0_r28eBb-O_0,4454
26
+ nabu/app/reconstruct.py,sha256=L5N6BnP8lUQbXGi4NtcAZQ7h-T8CbyiBBP6s1SlPqrg,5792
27
+ nabu/app/reconstruct_helical.py,sha256=p12vKWLSsw6FyGUUZAOYDqFwlvvpprxi6YSe7EwpIvo,4450
28
28
  nabu/app/reduce_dark_flat.py,sha256=fkUuVEgU54m9IeoJSHBL9hZ9iyHIOMYO8QjAZIZcXq4,6586
29
29
  nabu/app/rotate.py,sha256=Rj8W7UDZHS4FLgMsGq4xvHfOujWJsyVexn-NOg3Gja0,6445
30
30
  nabu/app/shrink_dataset.py,sha256=P9dorO0Q-gPAWgSHyZi3XQp4jkMTJacDYzNvJY4oh98,3507
31
- nabu/app/stitching.py,sha256=Ibp1oVokLVMz-VX762j1C0E88Di0YJvRt-b8NjGoe7g,3310
31
+ nabu/app/stitching.py,sha256=T5nQVp7D6jNg86vMi8BCQANJJsKstvwItJWZDs05t64,4194
32
32
  nabu/app/utils.py,sha256=XUBRWDmth4i3BZHd27rfarFAUP7OEcsMeVmDJ6T4EXA,1178
33
33
  nabu/app/validator.py,sha256=IR-DcUV5h1Fc5CChBfBIaglrGpfKNICX7tGirAroMiw,3368
34
34
  nabu/app/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- nabu/app/tests/test_reduce_dark_flat.py,sha256=T-_zyzD0-f2c5Z-tlzmRF5p3vPtyL2RFb-D5fIYYEoM,2641
35
+ nabu/app/tests/test_reduce_dark_flat.py,sha256=qD52JL6fgJh7UEeGLssmsmGkqPTL8YTu29Hj1Nk9Bjg,2725
36
36
  nabu/cuda/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
37
  nabu/cuda/convolution.py,sha256=n8KsJ7IZdPOs_K5QZC6qblnOvIKYwxtdt03oNa0GiMU,241
38
38
  nabu/cuda/fft.py,sha256=FaLlZZWS3N32O6Lt7MioNTLNTyD1KwVSAVYyUYuIe9o,194
39
- nabu/cuda/kernel.py,sha256=jTTrjb6jwWUEk5NJJNs_BoNjpRiknhYRApZuA58vJis,3381
39
+ nabu/cuda/kernel.py,sha256=8v0b9kGNZfTPt2-xRbwrwX363Tw38B0TvsvmtmEtcrw,3776
40
40
  nabu/cuda/medfilt.py,sha256=4pFzE-JR1RufxfsgViewRTlh_a-YrTZikx-qvTZ2yUs,216
41
41
  nabu/cuda/padding.py,sha256=DdexJvSuQPk9Svqlk1xZUfJBjs_Ru9E4kF-0Q7RPEyM,216
42
- nabu/cuda/processing.py,sha256=07wCxP6YkBpS_UvEIu6dsXvhaINY06peNdkKZrcIcls,2605
43
- nabu/cuda/utils.py,sha256=27zlJrxG6vLnbTSY-N8MDwL3m12zi9WqbavU8ZDnV3s,9741
42
+ nabu/cuda/processing.py,sha256=nefntcARa917yirZqe5c90yPXua_sGzVUtg6Fzc2Vu8,2655
43
+ nabu/cuda/utils.py,sha256=vk57ET23BoKb3ZoOQuVc3eQO_sGbFwA9XgMV5JC13QQ,9646
44
44
  nabu/cuda/src/ElementOp.cu,sha256=PhebQQgeF0V7MDNzeYiRXIeNq3tE2PsBx00XhanBmvg,7188
45
45
  nabu/cuda/src/backproj.cu,sha256=Zq9w8TP9zSYCHH_91dfrTVLOSEmY0y4hzm7J2qdCdJ8,6257
46
46
  nabu/cuda/src/backproj_polar.cu,sha256=sZbtw3KMfN69XyubJQSSLC87d5IPOyzbPBoRSNC1Cek,1851
47
47
  nabu/cuda/src/boundary.h,sha256=eQhfKZm-o0kj88BvkUwzqfqxYfRde4Tuj8AhQvRK16Y,2898
48
+ nabu/cuda/src/cone.cu,sha256=Q-mKNBnx0pXzpOUGKi0Kq4POp7VqaQrLCDgqTf1pdkk,3071
48
49
  nabu/cuda/src/convolution.cu,sha256=O6r8qPpQjpaqnNivMRX0LK3dEACKk9xyNYO9u_JysU0,7353
49
50
  nabu/cuda/src/dfi_fftshift.cu,sha256=ElgNXy8H14mff2hmyjxCq7CnFK_DSY2Z564QGytRO1o,2220
50
51
  nabu/cuda/src/flatfield.cu,sha256=ZVVmEd-jcsK03VWv42uugYw6LeUnDEVY8qo_G07doHs,2058
51
52
  nabu/cuda/src/fourier_wavelets.cu,sha256=571gDOFLy4cMKOockPZIxCJKcFWJwDYT8FdWjQJHEWE,547
52
53
  nabu/cuda/src/halftomo.cu,sha256=agqNiL4gvY0S57_d0Xa7rvjXI5teOOXF9XHK1IA-aDQ,2902
53
54
  nabu/cuda/src/helical_padding.cu,sha256=87Ia2jDWzA_1ZSmE-v1yBqccIrIvF5Op6Nbmyvk31Ww,3955
55
+ nabu/cuda/src/hierarchical_backproj.cu,sha256=NikMrAFuL6qBQdmKUgMxB3YCJG-BibdBf3mOc-rkrCQ,8833
54
56
  nabu/cuda/src/histogram.cu,sha256=bVdVA5GfT0-asMjmWk8r39a7W2jmjL-YVz60LUyvqiQ,808
55
57
  nabu/cuda/src/interpolation.cu,sha256=Q4TjDklZToSjk9yCd4Rq97kQlhSAgFer7Pf4PUo4jYU,839
56
58
  nabu/cuda/src/medfilt.cu,sha256=fyuuOEHxQFfQoDjyXr_BdNRHIUBN7e6T66kvW4OQI7A,2449
@@ -61,32 +63,32 @@ nabu/cuda/src/rotation.cu,sha256=inatw44lT0Qn4D2xguLi_YZsjzP96zfGGLiCc9vLhQw,657
61
63
  nabu/cuda/src/transpose.cu,sha256=Enim7vLxTCFZbK3BmYdQ6ZatA_FLp6601VOSl8iGFjg,476
62
64
  nabu/cuda/tests/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
63
65
  nabu/estimation/__init__.py,sha256=HWE3ivArjlJx4FjFh2Q73VmpIyzod80KTmXvFo1AP1s,379
64
- nabu/estimation/alignment.py,sha256=bG5eskq-bGOdyRpxZ1t-udbcwKOvHUn6C4HmUrNOX9c,21584
65
- nabu/estimation/cor.py,sha256=pBEYWOo1cNszNgVZrWXWBjc4xr6bp7al8-WoToEHpS4,68104
66
- nabu/estimation/cor_sino.py,sha256=xbTD-F3eemUuvsyV6dmJOTxSOL-KI15-JNPMC3S9ZAU,6394
66
+ nabu/estimation/alignment.py,sha256=DWe4PBLsAOt95m_UEinVXUhXyYDmV0NOHW-oHpVEjVk,21185
67
+ nabu/estimation/cor.py,sha256=HcE0xw0ECSkx_kG30taw964rWZwh6lfgg8m9wnKdXik,50415
68
+ nabu/estimation/cor_sino.py,sha256=Wh0t8Ak6h8kf3rn5azD1XqD4e0Xa90oZUy90n9Ory8c,19116
67
69
  nabu/estimation/distortion.py,sha256=DEXizQpgHBXmrhbQ0kuEchicxmiDgmU2qrh8bCgSezg,4701
68
- nabu/estimation/focus.py,sha256=5Ot97-SfhdoaZaske3J_ZdPLIPGswovmGxmPM6ir2BU,15765
69
- nabu/estimation/tilt.py,sha256=8xdNvJkA4rKLBSaGMq6ldR-Azoa1o6WlQ6lO5PuIGGk,8647
70
+ nabu/estimation/focus.py,sha256=I2B5ODmGToE0-Y-B_6v1zJv7XcWdkXPZzrs2uYpiPlc,18029
71
+ nabu/estimation/tilt.py,sha256=AaBBOzM2bVlScphCdORbfEi_mJjyuwkYvvDmr2Fosvg,8723
70
72
  nabu/estimation/translation.py,sha256=L-SCLozW1I-FyGta9LjbNPLYRnaznwenF-p9rISM2pE,8581
71
- nabu/estimation/utils.py,sha256=m1dYxyU1uSmyjRkPDhfXFzZ_o2mw8X2ApmvCC1MsvlQ,1401
73
+ nabu/estimation/utils.py,sha256=31d17Ng__NxcLOtGXPmbPPW1veh1m0poCvRgDCJssUA,347
72
74
  nabu/estimation/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
73
75
  nabu/estimation/tests/test_alignment.py,sha256=odDbSXGPZz-aqCkPfFrZqqMp4NDz-4Sju87vWrOdA30,2491
74
- nabu/estimation/tests/test_cor.py,sha256=TND-fGoupHQFhp-omp6SQFETxZAaL0WyjC5JZNzCvmI,21268
75
- nabu/estimation/tests/test_focus.py,sha256=deaVGbIFSzHDAReoeAy-1HLsnKWpJQsC2SL9WTWEV6o,4170
76
+ nabu/estimation/tests/test_cor.py,sha256=YKrZc1v33WBcNEOTmzoifnotghgvUL8-78B0IxCmjCs,23811
77
+ nabu/estimation/tests/test_focus.py,sha256=cMxEeTLlfVHOvG_4oGMLpp6bVI6okYz0u4aNcW0vmNI,4188
76
78
  nabu/estimation/tests/test_tilt.py,sha256=PN4tnV3-XU2nNA608kQShaHugWn_-wbHzWCTnLIaCTk,1658
77
79
  nabu/estimation/tests/test_translation.py,sha256=RkOnCYgk9DZGKlIka1snqTv4wbIz_nG7-EHAxnBHsJU,2999
78
- nabu/io/__init__.py,sha256=Mx0HRIENk0dJbN3b9tzPZhiOnPMxBItgVNQn_QLLrlI,176
79
- nabu/io/cast_volume.py,sha256=fgqbabNHM1H2JKiUJR1kBrcIh9kBY7HpCmLTWbcCvvU,16712
80
+ nabu/io/__init__.py,sha256=AbQgj4-fCCHOKynO_PyAR9ejnFSuWKgroxxhxWVpjyQ,120
81
+ nabu/io/cast_volume.py,sha256=gYsqHGdeiuTlOBCb9B7koRZ_bO0IQnN-XrzsSvR1s_I,16737
80
82
  nabu/io/detector_distortion.py,sha256=Or4icugi0fGRKWIG0I9hCuR1UZA5Cel25ZGY7cR2j4I,11744
81
- nabu/io/reader.py,sha256=1DlUYObfOBEGYJHEqyw1Mb2uQ_b_Z7-FFqMWS-4tIB0,23083
83
+ nabu/io/reader.py,sha256=ZrDlpJe4qn5mxGBccJi-C2hTganvuUnmbIwYkyE1Y_E,40517
82
84
  nabu/io/reader_helical.py,sha256=_6vZBH-US_VT7oOGJUtYXqPwFws7xZKcmdOthpwvlIQ,4477
83
- nabu/io/tiffwriter_zmm.py,sha256=ykaSFqdbYhGNxdBrJRT_rxihx5wj9G8qMQMI1e07fNk,3838
84
85
  nabu/io/utils.py,sha256=pFRULSlmGzJnzBbeSNKRhnKbBPbV0XaeUsxnWmnMtR4,9223
85
- nabu/io/writer.py,sha256=cWKY7RcNUztOs1ktzLP2G087fLvq4yNMNdvvBdnoOSk,31417
86
+ nabu/io/writer.py,sha256=01S1nz6u3QxE-nGR6lcVuLEGYSZLNaKModvTaD4bLv8,15895
86
87
  nabu/io/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
87
88
  nabu/io/tests/test_cast_volume.py,sha256=WCDStfV_eu4tjeKibWXrXEDbN0hPJGOzacGv6efgHAI,10743
88
89
  nabu/io/tests/test_detector_distortion.py,sha256=-l-fl_RmSoZHl9aDoHDoJE13L8w9ghBXGASc9PYGzqw,6341
89
- nabu/io/tests/test_writers.py,sha256=PjHRI8euuRnejwE_LNMSdwqUq18V0V3VJwmRhi8xvyk,7188
90
+ nabu/io/tests/test_readers.py,sha256=jH7txPj6_ik7uu3mcm57pCmQHvGeGiS1fTy5KwheC3E,18098
91
+ nabu/io/tests/test_writers.py,sha256=WqpmDF-td0_beN5ScoRRRliUN8ua_TvRxVWwvvoN6Es,3141
90
92
  nabu/misc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
91
93
  nabu/misc/binning.py,sha256=x7mbKTfEKF8ZaZoPq2LJl9hfUsQ0qMNGMxaHE98PcNc,2920
92
94
  nabu/misc/fftshift.py,sha256=TF0RwlDqo_umTwBQb2juCA8Hrff4H20XULdcIyDTajI,205
@@ -110,10 +112,10 @@ nabu/misc/tests/test_binning.py,sha256=0TqnJrDhfqSeWF6ZJsMqFUQ0M2SJ1AHPpD1sWA0hB
110
112
  nabu/misc/tests/test_interpolation.py,sha256=H8ZJ7dppCcpxVa9wOBkJ9U0mymH5lGyCJ0LZCYIK8PE,2389
111
113
  nabu/opencl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
112
114
  nabu/opencl/fft.py,sha256=-3Ao5Ug4_pEzIliQsBiGJc_PgyURPd8pRje8LWx51pU,208
113
- nabu/opencl/kernel.py,sha256=C48xhgxhIkI-0j5CODJJTw-rdjjy8FiyQSJ0YuoYH5c,4736
115
+ nabu/opencl/kernel.py,sha256=lmHRgWqpEbQUOunZe0xFuuw_Z_K6dq8BxjH3FLReVBU,5125
114
116
  nabu/opencl/memcpy.py,sha256=s_0CCO-PTDmEsCW9_kVCNHwN7_hw7uNy_O6KJ0zS71I,1263
115
117
  nabu/opencl/padding.py,sha256=fe7AZ1VtQJ4F7zq31FjXSYQnleAubWwpEYTCxdZNcSI,224
116
- nabu/opencl/processing.py,sha256=7JBZUpPoHMJVI4TEpk1YDn1lLjy0f6XU0qR-PFNfkwA,2122
118
+ nabu/opencl/processing.py,sha256=cKq_VLtLBPijp2pl7Zgc4mrVsYLUA27x26jPo484Kg4,2416
117
119
  nabu/opencl/utils.py,sha256=yPAt7xQ15n98Gf_ZSkazKUathZBe3WzD47TE-l0cjzs,10141
118
120
  nabu/opencl/src/ElementOp.cl,sha256=RMScHhHYDa6xXC4NLJrC1KpDRq-aMZG1lwq3O9pStiY,1258
119
121
  nabu/opencl/src/backproj.cl,sha256=M226iOQ-0WhGsJZfUn3mUCfBHqqGAqWa2caK9Igk058,5559
@@ -125,94 +127,90 @@ nabu/opencl/src/transpose.cl,sha256=jFRIFccPefzbKFEqEIVYGrWac5XJs3FY1tEmvCzA74E,
125
127
  nabu/opencl/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
126
128
  nabu/pipeline/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
127
129
  nabu/pipeline/config.py,sha256=amc05PX0kZA5wHjD1oFP59MfW4pBA-gjBypy4tKLnv0,9221
128
- nabu/pipeline/config_validators.py,sha256=rvK1Q_KmA1LUeNTefNxXCpYfDQ1zAdk1kFePrLintwc,16300
129
- nabu/pipeline/datadump.py,sha256=Ua4tbzxfGMOiT2-7WZn3IDiJqzzK-TyFuku_XUkH8_Q,6520
130
+ nabu/pipeline/config_validators.py,sha256=ocAKB26iRjm5qs1Ay4B_rgGcg8aZjAP34XpEZReYQ8A,16353
131
+ nabu/pipeline/datadump.py,sha256=lK36YlsVSeE4fdkD7cgVCl4RKn-Wa9KYgOw4DNtH8Ow,6982
130
132
  nabu/pipeline/dataset_validator.py,sha256=etQw9NC_YGsdWCgjsn8aJ3WfvcRuJlLVZlWoqhvvo-8,9263
131
133
  nabu/pipeline/detector_distortion_provider.py,sha256=ru1AxbcuO-FA8FYooPBWgp1lzdSDUtzFUC1A_sS8jME,920
132
- nabu/pipeline/estimators.py,sha256=4V5pwl5vUFMJDanWnmw7POnSsa9lKyKtUzvq9GLcJwc,41374
133
- nabu/pipeline/fallback_utils.py,sha256=7ccrKYE-rp3fydb72VA6W0_eKcEoqYBEAPlmij_lyEc,6086
134
- nabu/pipeline/params.py,sha256=VdrekcxOnbrMzvvLcwEWINiMM0uVKmPxJJBwp3lhHBg,3479
135
- nabu/pipeline/processconfig.py,sha256=O0phgvfWtL9bg3_GE3cw9MZXS8PUy8z2rzhpoqP9U84,8320
136
- nabu/pipeline/utils.py,sha256=NONAgBfTfUYvBNfoTqD33MAYaPZyCJL10SnR6B0lLec,3462
137
- nabu/pipeline/writer.py,sha256=0ts40VNN3RiRURvZ2gNqsigsAJuwcjnYF4RJ15qaMpI,7558
134
+ nabu/pipeline/estimators.py,sha256=AZXDmz7hngbVEfytpcu3E2QkOG4IqtXjQN8uUMBJTa0,40298
135
+ nabu/pipeline/params.py,sha256=EoovjCUTUXmj5HQ3qE0RhP7XD3cndaiT21TdvjTIhE8,3746
136
+ nabu/pipeline/processconfig.py,sha256=3xx2Lc8uEzPAqSMwUncr4RCiCtKn2c7wnXXbPSn8GNo,7719
137
+ nabu/pipeline/reader.py,sha256=wkxPHYOi_C8dHNc7kddB8AMtFuW7GjsP_tm6SJeHlEY,4792
138
+ nabu/pipeline/utils.py,sha256=0O1GLyYLQ8oA2ErI_T3BIfEVjP48dl-u_gl91eX7pjU,3543
139
+ nabu/pipeline/writer.py,sha256=MG_R1oU8Ff9NdKRHiBkLMz0CmvEXY47zBUE-DpjXElQ,8172
138
140
  nabu/pipeline/fullfield/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
139
- nabu/pipeline/fullfield/chunked.py,sha256=O6Wnw6B1nhA2yOdbOxqpEAdGnNdDGRYI2z0bBCB-yk0,37288
140
- nabu/pipeline/fullfield/chunked_cuda.py,sha256=aGzjY8MX6OL8auEj6Y0RfOGCmFnczsdfj6-8Net5AbQ,5645
141
- nabu/pipeline/fullfield/computations.py,sha256=eWbqtlXWKgcmCsKL1GgtaTVXBScY6MSrmtLd8h5dLng,10251
142
- nabu/pipeline/fullfield/dataset_validator.py,sha256=8B2lB9j7elF_NmOOOyr8UADVfC15Oofzy2AyWoPufQM,3265
143
- nabu/pipeline/fullfield/nabu_config.py,sha256=a0mMoLkvlvHgX6RmUS1m1UhJS-XB3O6wBCnkNoI90Cs,30358
144
- nabu/pipeline/fullfield/processconfig.py,sha256=qSVeUvpt9BS2kR3zNk95_MGoLV4idiSJyYHlAPXbgTs,36405
145
- nabu/pipeline/fullfield/reconstruction.py,sha256=b-ErQE__Ttz2XECJjmdoY6Msfh-lrUOPZCsAhn6p-nA,37150
141
+ nabu/pipeline/fullfield/chunked.py,sha256=_LauzrZSMO0y6E1g_zYFweK8wb07u1p2JulrVDRnA04,40549
142
+ nabu/pipeline/fullfield/chunked_cuda.py,sha256=Jdkk6ZIt3S6UZYbupHtSj2vrj3krWMcqRHHprfblDfk,5848
143
+ nabu/pipeline/fullfield/computations.py,sha256=AEp3qvwyY-l8-GzjH1E6kmcmU6OgDp6sB-mltq0Jnxg,9970
144
+ nabu/pipeline/fullfield/dataset_validator.py,sha256=Iy6oOnXnBldDcg0ifm_zzrzMQ6YdkR_hkHFySZgxbno,2943
145
+ nabu/pipeline/fullfield/nabu_config.py,sha256=rvHmCNHx2y-GKBidRWCAjJd0IynvolPTTmBqNoOSvEA,31877
146
+ nabu/pipeline/fullfield/processconfig.py,sha256=SXEWU27xRYfTUyyczuJmn-0IA3A5EsvFpzK0Q47-3HE,36905
147
+ nabu/pipeline/fullfield/reconstruction.py,sha256=nmJWXna6XODOu0GuufSnz3s6fLCZhZrkBUFHII8nudo,37450
146
148
  nabu/pipeline/helical/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
147
149
  nabu/pipeline/helical/dataset_validator.py,sha256=0YQc0hdYdpaXznFaKmlj9SIu7mNs0xXMejcRkhOZHaI,640
148
150
  nabu/pipeline/helical/fbp.py,sha256=0fAz-Fb0Rn_FzellvcS2cy-Wvm-5dxEf494YFt4pLws,5845
149
151
  nabu/pipeline/helical/filtering.py,sha256=vkxiPkUbm8_KtfUbVwPu8WEvibAJII81TqZW8fvRqnM,10234
150
152
  nabu/pipeline/helical/gridded_accumulator.py,sha256=me6yW7oPrGnlKy0FJvKe70mjqmy7YmClZTsJKdvGOw4,26308
151
- nabu/pipeline/helical/helical_chunked_regridded.py,sha256=D-192oOK4O3yCFPEATMKyp9cZBNy06ZiFRcB8RECiGw,68449
152
- nabu/pipeline/helical/helical_chunked_regridded_cuda.py,sha256=DqNM3fx2a_HsHmpY48MBCYK0pdJNXeu7nKKfFFFNW6I,3863
153
- nabu/pipeline/helical/helical_reconstruction.py,sha256=rkanRA8mYJjzL9eP8v9eHDn-w00YPzySS1S_hHh3N98,24060
153
+ nabu/pipeline/helical/helical_chunked_regridded.py,sha256=KUEmb_e6-ErgZrxwc2mQGqRP7kSeCrwm88akNsnCngs,68450
154
+ nabu/pipeline/helical/helical_chunked_regridded_cuda.py,sha256=DdH55nQml3JWDX9VJaxflefyFWFZr6zBWwJRitCeeE8,3887
155
+ nabu/pipeline/helical/helical_reconstruction.py,sha256=Q8PzA-FRTAd4wQWMQzHuG5CZo6DfZKCGS46tRsr8Z8k,24061
154
156
  nabu/pipeline/helical/helical_utils.py,sha256=uFAQHDqENHqQWUpu1n99dnBCCKOlkgjDjvYORY6XFY0,1439
155
157
  nabu/pipeline/helical/nabu_config.py,sha256=LmYUWC14oDpktLnjbz7qH1yt9NARNbgNG8GXr7E-UM8,8042
156
158
  nabu/pipeline/helical/processconfig.py,sha256=IlCfKkiclBmDDdT6Ail3aSj9Q7zV38YpFmF1_SsCjy4,2775
157
159
  nabu/pipeline/helical/span_strategy.py,sha256=7zV_Oo_liFiuv6m70o08XyoEIo_7QYs7MV7qtHFTgbc,25044
158
- nabu/pipeline/helical/utils.py,sha256=51Qbh8db6-DX0iB9B9Kb07uwIG6_upAJg_8nhyzbB7o,1555
159
160
  nabu/pipeline/helical/weight_balancer.py,sha256=j0TGe50tbbsilQvml9CgMxeSy83CNaifHj-xuMGl8uE,3981
160
161
  nabu/pipeline/helical/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
161
- nabu/pipeline/helical/tests/test_accumulator.py,sha256=DCwTAWQLdUNJBJpjhHT8o1gLbznpuj_zqbQOfQnrShw,6534
162
- nabu/pipeline/helical/tests/test_pipeline_elements_full.py,sha256=zeR9SaeD0mnhtKU7qo4Qrn_lg1I1Vhg4dqzj6jy8tpg,14569
163
- nabu/pipeline/helical/tests/test_strategy.py,sha256=rt8SsUHBMMcVFl48kRGcOyf1y4bYqaA2xDznQxE7wFs,2721
164
- nabu/pipeline/tests/test_chunk_reader.py,sha256=OB279hSvgmVhWv_OauZNWTJeaaiheETayGYK79Op10Q,3410
165
- nabu/pipeline/tests/test_estimators.py,sha256=6VK7fxxfrRTWSSi2bhHqbLy8pZJ2DALO1gJkuxpLDSQ,8392
162
+ nabu/pipeline/tests/test_estimators.py,sha256=usi2Rp0zry5ADJV9k8nHhCqdDBSuHguZvyH-jkg-F48,6146
166
163
  nabu/pipeline/xrdct/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
167
164
  nabu/preproc/__init__.py,sha256=dKxvZvWZXjKS3iPRaSXiUeM2dNGIOyTlirq5pdAWY0Y,284
168
165
  nabu/preproc/alignment.py,sha256=WDSPIlogwPfQDTqEyRH_ovaQ7vCpnR6XE_Ycif1wP0I,379
169
166
  nabu/preproc/ccd.py,sha256=AHU9iwXLrzisMOfIfMtKwDfd9vP5m_-MBI0rmP4u7eg,5145
170
- nabu/preproc/ccd_cuda.py,sha256=G9BWM2BJop8On3QWFkENZwFccNUss0ES3v931emL3RQ,6068
171
- nabu/preproc/ctf.py,sha256=xyTfmN8Nr6Rh9EXy1c1PIpC0zfzViFnytxjLaDrArn0,14657
172
- nabu/preproc/ctf_cuda.py,sha256=UAWPDbDboMJcSs5BLRmBp6cY8Wq7lmVmWn_F4-3QAiw,5245
167
+ nabu/preproc/ccd_cuda.py,sha256=IckZjk0fznVgX6VlBWZEURar_RqvMTN-g87Aj6Y8rJk,6093
168
+ nabu/preproc/ctf.py,sha256=44wBhPD5RAQzB43P90W3V8PZw2AFs7KWvkGtjgF1fdw,15040
169
+ nabu/preproc/ctf_cuda.py,sha256=whr5uBI-spJY_C5gUZ_4kMx2f5ondTtV4f2Kbp2UKAg,5268
173
170
  nabu/preproc/distortion.py,sha256=XksQNrrSBfZS7mlvIdVEMZjw839ppQWP6AitTLcgfb0,3309
174
- nabu/preproc/double_flatfield.py,sha256=W0NFkDIMzwgHbM844CwyGa2aBws-x-hCjqsXCOx6KkY,8213
175
- nabu/preproc/double_flatfield_cuda.py,sha256=67DZWa0q4ham6d21QGeiSY-kgkkJETN0YxjgcBlpncs,6153
171
+ nabu/preproc/double_flatfield.py,sha256=WcYsNuotgQgm_KaioNa3OVI8rGfk3Wrn_YCW5v4mo4w,7895
172
+ nabu/preproc/double_flatfield_cuda.py,sha256=7fci8Ze0pVWFhX-qjOdQCCGEue7MAAkTbKHwZXGK1mk,6203
176
173
  nabu/preproc/double_flatfield_variable_region.py,sha256=9NnI_MoY2mhjp1ifpfhTq5slkDhgoK-bMznkW6xRU_4,2279
177
- nabu/preproc/flatfield.py,sha256=KCZvIqxKB9eizI6nc0ez831ImHoDuQ9StSSvCNXIGZA,19202
178
- nabu/preproc/flatfield_cuda.py,sha256=AFStTXZifDA4SGgtrIQz-rcnR1NvSXx8a-dC8Yrr7HE,5331
174
+ nabu/preproc/flatfield.py,sha256=InGqZTnEIO9tSYXyLGXa_gNjxn80joXev4l5rmryukk,19385
175
+ nabu/preproc/flatfield_cuda.py,sha256=NyuCisRNoxEfGvOIAoXRykDEWvuidO3_rKJ_69_uUvQ,5523
179
176
  nabu/preproc/flatfield_variable_region.py,sha256=JnIn_hkt2YQdREIkEnMSF4B16JcrmtS6jLfUiBS97B4,3155
180
- nabu/preproc/phase.py,sha256=gtf-fgQJ_zsTgaj0yBAhNlT074jI7YSCEBYfY0wGkQc,16383
181
- nabu/preproc/phase_cuda.py,sha256=6fqzteAVXoEVaiGBlfE59Vhcjr7-i8KICHTA6ZistHo,5057
177
+ nabu/preproc/phase.py,sha256=m9tB2k2SIVB1rqbS_UA5rgO-vyn-_lmFyy0JRYEn0t4,13891
178
+ nabu/preproc/phase_cuda.py,sha256=BuO0nwqWGTHLXXqslkjt9dZgMemotA5-zkME0xzQBOI,4929
182
179
  nabu/preproc/shift.py,sha256=UVa962Gj4b1CRAsez57glvBGXXFSDVnquB3Zd0JgquQ,3424
183
180
  nabu/preproc/shift_cuda.py,sha256=soiCNBSn-zxIHAFgVvDy8jJFCWvZ54blZEd-D5NZrw4,4165
184
181
  nabu/preproc/tests/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
185
182
  nabu/preproc/tests/test_ccd_corr.py,sha256=KIpwaWYWT_6OPVXyVuLxXIIWreBkYF0rOnDMiegiLMU,2249
186
- nabu/preproc/tests/test_ctf.py,sha256=lXKCkICjeM7jda-Cku9Aze09YUwj1a8wuNOraVHVEws,9848
183
+ nabu/preproc/tests/test_ctf.py,sha256=-HIKyYoG71AN4vv_LDlUCCbH736XO26P9NupCsdIbRY,10006
187
184
  nabu/preproc/tests/test_double_flatfield.py,sha256=HZ5KxY3xGplTzRTFKiFyqAhIjyl4mSrbHRzYTnMr4HA,2873
188
- nabu/preproc/tests/test_flatfield.py,sha256=CnK8pFnCmBdwjDSEi9S0FwYIo_zXuHzlEIiIpWjYFf4,23498
189
- nabu/preproc/tests/test_paganin.py,sha256=e7ksHwTsg06aomLxQ-bMNxZjzAx_5pqpp9nvbwuz7iY,2182
185
+ nabu/preproc/tests/test_flatfield.py,sha256=kyK9bOchJ1X6QTZhJd1jMvJR6U-xYfQ8JHoBwEtlEmI,21061
186
+ nabu/preproc/tests/test_paganin.py,sha256=aHfNsJcVALVYkbNHrhcO9lFYfco2qYA5PnzAjKTG2BU,2998
190
187
  nabu/preproc/tests/test_vshift.py,sha256=dkX-xK8OCROP7kAOtMYRFrWWByEUsVzvhbNWm2RPn1U,2867
191
188
  nabu/processing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
192
- nabu/processing/convolution_cuda.py,sha256=jkRp7_Q6mUtwN08iGd82Gv8rSZgjTfYYhCuk2smtGlo,15313
189
+ nabu/processing/azim.py,sha256=ByCOesCDe5DHUFQEmCe44uqN4rLID9TXC8KVU4PGkj0,7076
190
+ nabu/processing/convolution_cuda.py,sha256=YMhuIx_smfqFgmDOkb8NEyqs4PBhDPy2sZWglCLXoBU,15338
193
191
  nabu/processing/fft_base.py,sha256=PuP3w4VQLPUIVemcDpT0K-zVPX_yii12ciONZZj0fzE,5656
194
- nabu/processing/fft_cuda.py,sha256=7cg2IEuW47xezVk9mM8Hn_iYQzrfft6-aLc20TGjiyI,8918
192
+ nabu/processing/fft_cuda.py,sha256=yXWMzDWHKwZVW0h77hk5378DA7i_Yht0oKbIN8lutN8,8924
195
193
  nabu/processing/fft_opencl.py,sha256=8raIclnr-nRGBet_YyLJiWHFB5mPLMbdP40bHVaW7Do,1386
196
194
  nabu/processing/fftshift.py,sha256=XY7UsI63fAq9N5sCDpABCchf_wu9fZ_4KH3StGwgnqw,4880
197
- nabu/processing/histogram.py,sha256=Edl3PfJkj0lbj1gSBHfuylm1oJFenNwtGsJJ8Z3-UWw,11316
198
- nabu/processing/histogram_cuda.py,sha256=6MU1C5gxjHPwu7ILO7pEidGZq6L1pKVinGMkv5o2NSo,3277
199
- nabu/processing/kernel_base.py,sha256=DIGVkjhSPjPPk1E66ZDZrWuQXv5OHR8TaqhaUWpvy_U,4251
195
+ nabu/processing/histogram.py,sha256=iHRin_06hcaC1grTUOTms1vWVEr9dEY6AuJt39lRGvI,11378
196
+ nabu/processing/histogram_cuda.py,sha256=G0uKJNhDwPUTr8lyEBr1m5G0D4n3-eZwCCBC1FZaCyQ,3338
197
+ nabu/processing/kernel_base.py,sha256=0m5WxJIREntSMoUP_ECtGnuWMKN9AS6wJVdblEGDu_M,4366
200
198
  nabu/processing/medfilt_cuda.py,sha256=usnNMKxFMrGI6ZIYNRDXBn5kzBzOyuVay8mnQSvNR2k,5691
201
199
  nabu/processing/muladd.py,sha256=QI4EnPFNTUHeZIpctlazjcgUyHBkhBX7PQE_iII8r44,895
202
- nabu/processing/muladd_cuda.py,sha256=xNCo_CC-E40s03852J-ReCOR4mhp5tSRMpNfNkG9SCM,2445
200
+ nabu/processing/muladd_cuda.py,sha256=wGivGyyMn7FN68hDT590RwSiV4Ju-TLGwa1bnw4Cd_k,2477
203
201
  nabu/processing/padding_base.py,sha256=eIG-SG002TcRtTEdv00Ubr5gwcaVUuYlyMpIZSNuXBw,2874
204
202
  nabu/processing/padding_cuda.py,sha256=p6edM96Kj4rzulzvAUUZzHlHso3Vp0uzCPOD7-6rxfg,2689
205
- nabu/processing/padding_opencl.py,sha256=dzH8EQc1DXnLgKpE8vBGWsloe-gFU8-AgLOw0-8GNuI,3049
203
+ nabu/processing/padding_opencl.py,sha256=H7w5bY9Th9pJKYKaX1_u-XqUj8lM5XWfVViu0ax4W40,3074
206
204
  nabu/processing/processing_base.py,sha256=D72UmfNKby-XXgANz82pYjd2uYlTpPP3RLxR_LPHgMo,4412
207
- nabu/processing/roll_opencl.py,sha256=0R6ff8sncuRC7K8gPdjhmIyC2d83iL3pTvmXf5b-6io,2263
205
+ nabu/processing/roll_opencl.py,sha256=ms6ZW7ecG-kWq--wWijAjDB_uVWQtUylFp_EDKmfUKw,2283
208
206
  nabu/processing/rotation.py,sha256=8tVQponi8tv8uPw-xT-0GyZecl3YIXyJgPkEnQMer8M,1836
209
- nabu/processing/rotation_cuda.py,sha256=9gXMdVX8tqeeOY0R9W8sw9fMh5vj35rRIqMLgJT86Vg,2746
207
+ nabu/processing/rotation_cuda.py,sha256=mfExwPCTyoKFhv8ZmE833jI_D6o-J-p5-TxacGdb-e4,2796
210
208
  nabu/processing/transpose.py,sha256=bOnxEFXJd16YcTGyMS-3lwREIVaDkClE_Fkb8bOn1l8,4410
211
209
  nabu/processing/unsharp.py,sha256=XqoieKlX5sEHalxObi5JBOjauRUSbiHc6rqYT_buTa4,2682
212
- nabu/processing/unsharp_cuda.py,sha256=tbgw3selI4x4qsSxyQJ8Q4HUxdEBbZOJtSys-0yzj4o,2127
210
+ nabu/processing/unsharp_cuda.py,sha256=uKFCEk8bRqgJzR8HB_OeKYuwC5jKqaXpFI6pRv_pDY4,2152
213
211
  nabu/processing/unsharp_opencl.py,sha256=ikmZhQB-kji3UFrvFzHJNvDUpaVSpzcCJRX_bqSQeGQ,2637
214
212
  nabu/processing/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
215
- nabu/processing/tests/test_fft.py,sha256=zDGDTXZjHBVbiVFiQfkrkYFFMyotJRFU-KgoNm1FGms,9827
213
+ nabu/processing/tests/test_fft.py,sha256=fgbqV0IGE9Z9sbbr6Zmhl_zykQwQNv3pQQTi1O_JhcQ,10244
216
214
  nabu/processing/tests/test_fftshift.py,sha256=-XgJUm0eF3D-rMTlI9u3jaWYIlPFZEpM0PwW3SMDLG0,2618
217
215
  nabu/processing/tests/test_histogram.py,sha256=25CLs1WZpLF9xZ2DR82x4_YokA5Z76Qsnn6zY8YdJj8,2283
218
216
  nabu/processing/tests/test_medfilt.py,sha256=lVfLWIxWiLfODFc14WYbq1W02rgQDtCnrSgXnWgU6yU,2722
@@ -223,74 +221,99 @@ nabu/processing/tests/test_rotation.py,sha256=vedRXV9RePJywBKoyBkGANP1dhZCjphbYO
223
221
  nabu/processing/tests/test_transpose.py,sha256=hTG17wTaB5Wv6twbW3ZFhBv6BYfqJY7DTQPoO0-KdkM,2760
224
222
  nabu/processing/tests/test_unsharp.py,sha256=R3ovbwDDp3ccy2A8t6CcUVELXRWkED5EnQdN2FQOfQM,4391
225
223
  nabu/reconstruction/__init__.py,sha256=EmKVvx_-FJvzJngG4ielIC7FhMCpI1Waaflg_lF44tk,163
226
- nabu/reconstruction/cone.py,sha256=1Wq2XJuVTjHTjTsUng1Z9VE8IPV_4xLGkD6TtBGzHrs,16234
227
- nabu/reconstruction/fbp.py,sha256=5GB7XCnxftSHq1ZBLjWi-7OTiyCU4qe-M4EPzvsoxLg,4829
228
- nabu/reconstruction/fbp_base.py,sha256=igY--_GiKGAcephOU1I8O1GjVcryJnReyywlgtROXW4,16833
224
+ nabu/reconstruction/cone.py,sha256=WObFcHvv7NkaZhUoC_xTlvl95f38AjsAJkePSOzngVk,18870
225
+ nabu/reconstruction/fbp.py,sha256=uwEniGdEOn1atc9mTAHEDeF1y-ZqneifCKVr-ieHZss,5015
226
+ nabu/reconstruction/fbp_base.py,sha256=DwZCilPXgGMRPV8_XfkWiaXUzWFM8rNBa8IyMdy5nno,17092
229
227
  nabu/reconstruction/fbp_opencl.py,sha256=coEGLq65PCuvWnhAbIyLPHACkWjMB0XOceMp9ZIDWtc,3274
230
- nabu/reconstruction/filtering.py,sha256=iqtFJoAfrw_o1Ta9dG_YjuIXWzSyYRgo8tHCthPgkjQ,7984
231
- nabu/reconstruction/filtering_cuda.py,sha256=F5kLJ1yfQo5im8CeXy4PAh3WocYVUPLNcK5qcPjVmJM,3673
228
+ nabu/reconstruction/filtering.py,sha256=fg_loze-VkiFqBAqQ7AGkKwCDz-5UskSSh27klaakD0,8659
229
+ nabu/reconstruction/filtering_cuda.py,sha256=syKp_CHzMjM4sBSK0JI5k5Ag3xzROvM15FfOO48ssDo,4041
232
230
  nabu/reconstruction/filtering_opencl.py,sha256=B9zcvSxvt3KMxEXxoirop1vfqM0kSRP-LhvGgqDGQlA,3957
231
+ nabu/reconstruction/hbp.py,sha256=m96PtXeJ7gZweZMzXiiLRI2Lc4yLmKlUaGTBfJmjQn4,17902
232
+ nabu/reconstruction/mlem.py,sha256=M9S6R_zBvk0hOoRm6orDQBMwEZGGrd3RPPLs5hYgU-w,3584
233
233
  nabu/reconstruction/projection.py,sha256=7WVPlYLUmCmB2yR1JYmVLJ5fZ3CMMKQ3vS9yuTUb8J8,9099
234
- nabu/reconstruction/reconstructor.py,sha256=wSva2EK-NTJi8N_ubzJWIZ4sv2ksfrA9YcA2ioEtISo,7299
234
+ nabu/reconstruction/reconstructor.py,sha256=16xxHcK4iie-uh-trf6x_IuvgxJKBvQRTE5B8tnc4F8,7358
235
235
  nabu/reconstruction/reconstructor_cuda.py,sha256=m_3GzG44PRyiSEfTvYjgr5atLwl26hMfZOMyqTWxp0g,1644
236
236
  nabu/reconstruction/rings.py,sha256=mpbCLuFM_6Uy9oNJkyQ8tZwhGhrbWtzRlArSRsC90bI,9527
237
- nabu/reconstruction/rings_cuda.py,sha256=NFU4lV_K6oY3eVyHmK_zxpQYeXpejOe_j8fnK7Vnnb0,13514
237
+ nabu/reconstruction/rings_cuda.py,sha256=yBGv_MITcWzD1VWLIchloV8IB43D_5Rxf1MoqYoTvMw,13704
238
238
  nabu/reconstruction/sinogram.py,sha256=KTSGP_JJABf4Yr9l628HPbyWsBnpbnyGKyPEq3ZrPIE,17026
239
- nabu/reconstruction/sinogram_cuda.py,sha256=wS84AIy3T00d1kTtuJOQmA3hktbDVs4ybwB9haiBcoY,10623
240
- nabu/reconstruction/sinogram_opencl.py,sha256=p793N26VknU8KIZLtDgFY6HNx0TylemZ1YL4WKD3fHs,1403
239
+ nabu/reconstruction/sinogram_cuda.py,sha256=DmTWdI9JhINjBpBuPiEt5mSqFmqu2FitIV94g3hSTAI,10659
240
+ nabu/reconstruction/sinogram_opencl.py,sha256=vxJa5BeOd2NVdUayXYfQGAfO1AEbJfTGotuijT8qgCs,1486
241
241
  nabu/reconstruction/tests/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
242
- nabu/reconstruction/tests/test_cone.py,sha256=88n0vKrKJg26DbvH3ZtHtmOtqHFkjJxmELlBLLL5qMA,17594
243
- nabu/reconstruction/tests/test_deringer.py,sha256=C5wj6RNzmpt_Cry4fonC8KXWvgPpcXfRbG8Bex_30S4,8380
244
- nabu/reconstruction/tests/test_fbp.py,sha256=p80zPCZkgJpERpqG5HHfbtbHBeqJUT8WY-q6FXOJJ7M,10053
245
- nabu/reconstruction/tests/test_filtering.py,sha256=PFJLQMDBQo-UuS_CfKrWZ_DdHarmVlcbsiZ_kmToWXY,4782
246
- nabu/reconstruction/tests/test_halftomo.py,sha256=j-vq9Oyxl7dYGuAMMO2G-Y7EcryD1RGEyXqmycc0o_8,4290
242
+ nabu/reconstruction/tests/test_cone.py,sha256=2BsR1kHlnlronghckifGmcrtROWF43lilYo8TMDUTjo,17846
243
+ nabu/reconstruction/tests/test_deringer.py,sha256=XE97waf6TKFm-Kxe9PGQ-Vs_Pldn-OzvOolhuy7a5k4,8340
244
+ nabu/reconstruction/tests/test_fbp.py,sha256=jj2eSRB56-xs4SM_pK3Q9EupKQWFTzbtraXPD165rcU,15291
245
+ nabu/reconstruction/tests/test_filtering.py,sha256=I5H1KSfd4iXTJWSqeMPR5Q7v5rFTXO6Vp2jYU4ugl58,5247
246
+ nabu/reconstruction/tests/test_halftomo.py,sha256=GwIqVPTwYwDCd1TlIO7QtYfKaSifVFdzw8UeKL1w-cU,5427
247
+ nabu/reconstruction/tests/test_mlem.py,sha256=i-CZZwWVjkzJ5xVYVmgGyl2fQVHCAnNRNYNnFXVDWyk,3805
247
248
  nabu/reconstruction/tests/test_projector.py,sha256=W4zntShzL47HjMGQG11zIYzMXwX0KfMN4BVIAapdy_I,6033
248
- nabu/reconstruction/tests/test_reconstructor.py,sha256=dEGqlQHfFwX_V2Ybnq5AAM5tprXn_2OuCSrC6cW4S0A,3221
249
+ nabu/reconstruction/tests/test_reconstructor.py,sha256=3p2Wk_OqgZqkNOkhK_NJWlHkOIENTJhLuwVRI8Y1_Ak,3385
249
250
  nabu/reconstruction/tests/test_sino_normalization.py,sha256=fGv5Dlidxgm8ZC70Nk6oqVgpY2jzOW9NJaGlo44IJOo,3692
250
251
  nabu/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
251
252
  nabu/resources/cor.py,sha256=-mcrTbj3G7o4PP5E_gIRo2j6_-ADmMkkOc_0CyQv84c,170
252
- nabu/resources/dataset_analyzer.py,sha256=774qI2E4cZynqSPZcvaoJXk3VV9SpjsSV6mf4wuTcZc,17004
253
- nabu/resources/gpu.py,sha256=rwCFHJ8DGvVP1bnd1bFJKs6dO55ZuONcfxXEEpuIez0,5701
253
+ nabu/resources/dataset_analyzer.py,sha256=e3AqYR9ORW9Q03mGYCiC66nXld-X0LPnx9E8X3zFIGU,18568
254
+ nabu/resources/gpu.py,sha256=GgpMb5umRQAUsEDEAefb4wSA5qm4JSMhkWmCEpW3X9g,5702
254
255
  nabu/resources/logger.py,sha256=-lOzhN_sU4R3BIfC69aMj2O8S_ocsvXsmwkhWlcxVEc,3758
255
- nabu/resources/nxflatfield.py,sha256=W0mooruk98TaRb6rtpqzPl5TWwuI3zj-7S7CM7IjEwU,9221
256
+ nabu/resources/nxflatfield.py,sha256=XlhLYj1TmSQ4s36W48kn0lNTvqXlFCuZxKHfTveltow,9225
256
257
  nabu/resources/utils.py,sha256=LtOWEYneEzz0mDIpUWM23v9ILJ8FM0YFaVG3fFVc7OU,5725
257
258
  nabu/resources/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
258
259
  nabu/resources/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
259
260
  nabu/resources/templates/bm05_pag.conf,sha256=3-Zny2_QlQuZKge53N1vFLZ8yzq-y2cmpAAkByUdHX8,394
260
261
  nabu/resources/templates/id16_ctf.conf,sha256=PJt_hvBlAweZSo6INnsmozHfBJvJ64b28x1mFfAOD6s,842
261
262
  nabu/resources/templates/id16_holo.conf,sha256=sDd_rEJGZjOGVAsGub5sT2arfXDnc_sxyDBAcfKHNpw,773
263
+ nabu/resources/templates/id16a_fluo.conf,sha256=Nz1etzO2fSwksi7CThWJ5T1kZEdyBe8rMO7puNJ93Hc,542
262
264
  nabu/resources/templates/id19_pag.conf,sha256=u4fFPEBprzOW9_5_ChkIgowQcYpLhjmA8Gwm5XgC4Jc,384
263
265
  nabu/resources/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
264
- nabu/resources/tests/test_nxflatfield.py,sha256=wLcBYpeD1UHGbimRrisGzgS9oVnQ8nNzayfXCowuLuk,4297
266
+ nabu/resources/tests/test_extract.py,sha256=pDFvgwPNH4n-UjhJibRH2vTkjDWYF2wSImUtfNq1ITo,220
267
+ nabu/resources/tests/test_nxflatfield.py,sha256=XRGbYwqJv0NYAVQnAB224TwTZP_W2Bs3-yu0zQnDzEM,4179
265
268
  nabu/resources/tests/test_units.py,sha256=F2jFTck-1UwYET1MwTtX6ntzYUosfwOJkugSencGgz8,2155
266
269
  nabu/stitching/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
267
- nabu/stitching/alignment.py,sha256=MSj-6npGfUnD3C5R5rqKwTogVRUDPmJuEZkPG9hMiUY,6752
268
- nabu/stitching/config.py,sha256=t7mkRrkdHKMz0x-lg0f5-IOAO829A6BvKH8WUAuSAps,51333
269
- nabu/stitching/definitions.py,sha256=RyqzZY3KLwN4j0SkOFA-T1aicPbO2jBrqfWdz-1djxk,130
270
- nabu/stitching/frame_composition.py,sha256=OGM9cLrLfEP5_hvhDbNq_zr2wdMeAuTTNlVqZk-qVBU,5889
271
- nabu/stitching/overlap.py,sha256=YbPon4_n4lT678F1aFSHx-ButcSYYqlBFjDqfNA77T4,15698
270
+ nabu/stitching/alignment.py,sha256=2ehpuWDz38AFAoJk3yA0DXf-18Kb329YaCCBBpa7Txc,9078
271
+ nabu/stitching/config.py,sha256=wxidcHaCfp0LxqKKMFqshS_oECslcgBozIenQOQMJPU,52755
272
+ nabu/stitching/definitions.py,sha256=JbmYwXKxOTYCr2LDXbHO-uNE2OLOBm4ir9AQ7e-Q3lY,158
273
+ nabu/stitching/frame_composition.py,sha256=7HebOFzSBirJT-MG10T7dzR8Gu0YVwfJb27LDk8lln4,6687
274
+ nabu/stitching/overlap.py,sha256=JkLM8gNyacEY7BE9vyF8M28Rer97-ExK8ZEvOKeFbPw,17200
272
275
  nabu/stitching/sample_normalization.py,sha256=_radin_wxnuD3MMmZNAOKA__aPa2z3ss4TFbZeocpXc,2069
273
- nabu/stitching/slurm_utils.py,sha256=sZ-VQPh_YlJ1Lkh7ap8qxII0rBpZryMyoxE5Xn557t8,8906
274
- nabu/stitching/utils.py,sha256=kMn2JEMDhcBQMweSlM0rUd-037H7iNUURTFMhXOTzC8,23651
275
- nabu/stitching/z_stitching.py,sha256=_DnPn4einJgzjqYu4u-LSwLAOoDgp5Jdu7iTYdsx9bw,103399
276
+ nabu/stitching/single_axis_stitching.py,sha256=bAJlZhUOqW93VkX4nWFNrnQN4G92PHCn-87RpQ34oto,1214
277
+ nabu/stitching/slurm_utils.py,sha256=k8gxYvFsTQdp1sDGvd8nb7HBim-pjQLU-8MIkG3mMog,8960
278
+ nabu/stitching/stitcher_2D.py,sha256=XgVn4KWJccBwixRsaJKzAyehajRqvdfJm7oFIxvmUQk,12647
279
+ nabu/stitching/y_stitching.py,sha256=Urt2lBXokxXxX5HFHEiLBqC69yy5b_KyuKFoU8smah4,1020
280
+ nabu/stitching/z_stitching.py,sha256=gNwj7qWvDFQaGroLVoQnKBPlbvr_CReUQEqxW15m2Ag,1835
281
+ nabu/stitching/stitcher/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
282
+ nabu/stitching/stitcher/base.py,sha256=t6nb9pWPQjijVjlUO-LHauPUxohjwhTkpo-X0Yj1VV8,4229
283
+ nabu/stitching/stitcher/post_processing.py,sha256=PDjMaFRLsnX_UD-vVviiOjzQ8DRewaJ_06XVFp183zE,26154
284
+ nabu/stitching/stitcher/pre_processing.py,sha256=RpaJcgP2bhxqRXiX6GQUps7WSy9ThzYa0PgAV4GgZR4,51404
285
+ nabu/stitching/stitcher/single_axis.py,sha256=INsUgWmSKAcuFiE7NhJ72ChRLBqrlaUCSW6PG19XrYE,19978
286
+ nabu/stitching/stitcher/stitcher.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
287
+ nabu/stitching/stitcher/y_stitcher.py,sha256=KXwkyw6cCFcuSBCq5OyAait2Ob_5WRrtawrAlAhk60k,317
288
+ nabu/stitching/stitcher/z_stitcher.py,sha256=S22nkQZ_6NwQm8h9mOhMvEZgUxXGQf6xadR5j6A91gI,1360
289
+ nabu/stitching/stitcher/dumper/__init__.py,sha256=065KlsJai-Q3BnfuzmTP4XzO9wDV2a0CjlMdcV28Hc8,176
290
+ nabu/stitching/stitcher/dumper/base.py,sha256=hhImPme-E7_o_wXSduqVP0AeojpCj2QQjyfGGqmV6tc,3443
291
+ nabu/stitching/stitcher/dumper/postprocessing.py,sha256=DShYc3hDfrUtyK2LEG9DNO42r9SdeUiMGEChKq-uNuM,14352
292
+ nabu/stitching/stitcher/dumper/preprocessing.py,sha256=7qOx27p92Tbbiah6gYEjkxfax7L8ictdrvzqfDm3vHo,2219
276
293
  nabu/stitching/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
277
294
  nabu/stitching/tests/test_alignment.py,sha256=MACak1ILOr8nRKeT0mWfMd-ZvhCl3SWjjcp6GjRbITc,2735
278
- nabu/stitching/tests/test_config.py,sha256=ttWuVB9Y_MM3_wGdKbcbYi_PG3vN87cL7o5zKsMzn9g,8490
279
- nabu/stitching/tests/test_frame_composition.py,sha256=MM4pn1mno21gLUVMYo2R4iUxN-2MfxSIectGtLhLDqI,6043
280
- nabu/stitching/tests/test_overlap.py,sha256=vfZuK32pclWL0Hg8u5NH0JoxKO28qk3ObRMmTwVaPgA,2588
295
+ nabu/stitching/tests/test_config.py,sha256=RMbvoNI6FDxXOVZ6H72ExnT3Fx4JCcQrAog2m8U_mYQ,7421
296
+ nabu/stitching/tests/test_frame_composition.py,sha256=fQLT426u-uF5TTURKN48uHKgeYiz3ogTjwo7o4YFE30,4839
297
+ nabu/stitching/tests/test_overlap.py,sha256=B_iT0pe9b9EJ77V59ilk-_Run6n5a1V9mTDuiPzqieg,7820
281
298
  nabu/stitching/tests/test_sample_normalization.py,sha256=E49E_Quv-Qon6qSuaH9ZBZLqq4TPuBl8RqgB18Rwjc0,1348
282
299
  nabu/stitching/tests/test_slurm_utils.py,sha256=bbhCQd06R3irGB4B9r79KKlf0AlBchI53N2ldsXoAQQ,4950
283
- nabu/stitching/tests/test_utils.py,sha256=CjV0vPvXEchJ5vo6o7hGQA-PsOOAyAamuQ6fiHKCQ9M,641
284
- nabu/stitching/tests/test_z_stitching.py,sha256=7VbNb7LwAahkLrxmx4V1M292op3e8W5M5NMZ2KABhFw,42160
300
+ nabu/stitching/tests/test_utils.py,sha256=hIahPlogtnZNr_YkbN_Rcv-y6qG47IiRSSss51-cWK4,647
301
+ nabu/stitching/tests/test_y_preprocessing_stitching.py,sha256=Hi7UtxzELBsjeLsvI3Qjq__VXVDsHAuKLJyYalxXtGI,5021
302
+ nabu/stitching/tests/test_z_postprocessing_stitching.py,sha256=kKRb3PvMOnCW84S58eQXSGcBpC7MiCZ6CXv_WDw0fP0,26915
303
+ nabu/stitching/tests/test_z_preprocessing_stitching.py,sha256=3EhX161S2JVz6z3vXnYgBlUUQVb1weXBqIR0KAXLeUg,16157
304
+ nabu/stitching/utils/__init__.py,sha256=alIDGBnxWH4JvP-UW-7N99seBBi0r1GV1h8f1ERFBec,21
305
+ nabu/stitching/utils/post_processing.py,sha256=aow36shbYhFgAnbCoq6mtXVpjBNCKm7VSLIvv3EYVdA,11303
306
+ nabu/stitching/utils/utils.py,sha256=EssaIs7eUL1vrImJIi_Y5OzHHdEaoVedHAGWcOT8M6k,24650
307
+ nabu/stitching/utils/tests/test_post-processing.py,sha256=Xy0UW8sL7ERtrxN7lEZhm8gJukDeL8vxkliMT8Agvas,753
285
308
  nabu/thirdparty/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
286
309
  nabu/thirdparty/algotom_convert_sino.py,sha256=iZVRilvyqMyLTu8RKgbqDFUjObWW5X69rCARrnNizuI,13872
287
310
  nabu/thirdparty/pore3d_deringer_munch.py,sha256=o4bisnFc-wMjuohWBT8wgWmfNehPQGtCl6G2NebJlbg,4500
288
- nabu/thirdparty/tomocupy_remove_stripe.py,sha256=VgXHr2tzTAAGZix5pwhFfbPxj4tt3yXBcjCPNQSLPAg,22810
311
+ nabu/thirdparty/tomocupy_remove_stripe.py,sha256=Khe4zFf0kRzu65Yxnvq58gt1ljOztqJGdMDhVAiM7lM,24363
289
312
  nabu/thirdparty/tomopy_phase.py,sha256=hK4oPpkogLOhv23XzzEXQY2u3r8fJvASY_bINVs6ERE,8634
290
313
  nabu/thirdparty/tomwer_load_flats_darks.py,sha256=ZNoVAinUb_wGYbfvs_4BVnWsjsQmNxSvCh1bWhR2WWg,5611
291
- nabu-2024.1.9.dist-info/LICENSE,sha256=1eAIPSnEsnSFNUODnLtNtQTs76exG3ZxJ1DJR6zoUBA,1066
292
- nabu-2024.1.9.dist-info/METADATA,sha256=SE80zwpzgCSLc4Fsw_DNJtDcUs8_74dQTjrACHcQjkE,5237
293
- nabu-2024.1.9.dist-info/WHEEL,sha256=5sUXSg9e4bi7lTLOHcm6QEYwO5TIF1TNbTSVFVjcJcc,92
294
- nabu-2024.1.9.dist-info/entry_points.txt,sha256=cJKGkBeykVL7uK3E4R0RLRqMXifTL2qdO573syPAvJc,1288
295
- nabu-2024.1.9.dist-info/top_level.txt,sha256=fsm_N3eXLRZk2QXF9OSKPNDPFXOz8FAQjHh5avT3dok,9
296
- nabu-2024.1.9.dist-info/RECORD,,
314
+ nabu-2024.2.0.dist-info/LICENSE,sha256=1eAIPSnEsnSFNUODnLtNtQTs76exG3ZxJ1DJR6zoUBA,1066
315
+ nabu-2024.2.0.dist-info/METADATA,sha256=u-pY_1lM9XNtC-flH62tD52Vi6ZTMQFFZjICdc9YoyI,5538
316
+ nabu-2024.2.0.dist-info/WHEEL,sha256=5sUXSg9e4bi7lTLOHcm6QEYwO5TIF1TNbTSVFVjcJcc,92
317
+ nabu-2024.2.0.dist-info/entry_points.txt,sha256=cJKGkBeykVL7uK3E4R0RLRqMXifTL2qdO573syPAvJc,1288
318
+ nabu-2024.2.0.dist-info/top_level.txt,sha256=fsm_N3eXLRZk2QXF9OSKPNDPFXOz8FAQjHh5avT3dok,9
319
+ nabu-2024.2.0.dist-info/RECORD,,
nabu/io/tiffwriter_zmm.py DELETED
@@ -1,99 +0,0 @@
1
- from . import *
2
- from .writer import TIFFWriter as StandardTIFFWriter
3
- from os import path
4
- from tifffile import TiffWriter
5
- import numpy as np
6
-
7
-
8
- class TIFFWriter(StandardTIFFWriter): # pylint: disable=E0102
9
- def __init__(
10
- self,
11
- fname,
12
- multiframe=False,
13
- start_index=0,
14
- heights_above_stage_mm=None,
15
- filemode=None,
16
- append=False,
17
- big_tiff=None,
18
- ):
19
- """
20
- Tiff writer.
21
-
22
- Parameters
23
- -----------
24
- fname: str
25
- Path to the output file name
26
- multiframe: bool, optional
27
- Whether to write all data in one single file. Default is False.
28
- start_index: int, optional
29
- When writing a stack of images, each image is written in a dedicated file
30
- (unless multiframe is set to True).
31
- In this case, the output is a series of files `filename_0000.tif`,
32
- `filename_0001.tif`, etc. This parameter is the starting index for
33
- file names.
34
- This option is ignored when multiframe is True.
35
- heights_above_stage_mm: None or a list of heights
36
- if this parameters is given, the file names will be indexed with the height
37
- filemode: str, optional
38
- DEPRECATED. Will be ignored. Please refer to 'append'
39
- append: bool, optional
40
- Whether to append data to the file rather than overwriting. Default is False.
41
- big_tiff: bool, optional
42
- Whether to write in "big tiff" format: https://www.awaresystems.be/imaging/tiff/bigtiff.html
43
- Default is True when multiframe is True.
44
- Note that default "standard" tiff cannot exceed 4 GB.
45
-
46
- Notes
47
- ------
48
- If multiframe is False (default), then each image will be written in a
49
- dedicated tiff file.
50
- """
51
- super().__init__(
52
- fname, multiframe=multiframe, start_index=start_index, filemode=filemode, append=append, big_tiff=big_tiff
53
- )
54
- self.heights_above_stage_mm = heights_above_stage_mm
55
-
56
- def _write_tiff(self, data, config=None, filename=None):
57
- # TODO metadata
58
- filename = filename or self.fname
59
- with TiffWriter(filename, bigtiff=self.big_tiff, append=self.append) as tif:
60
- tif.write(data)
61
-
62
- def write(self, data, *args, config=None, **kwargs):
63
- # Single image, or multiple image in the same file
64
- if self.multiframe:
65
- self._write_tiff(data, config=config)
66
- # Multiple image, one file per image
67
- else:
68
- if len(data.shape) == 2:
69
- data = np.array([data])
70
- dirname, rel_filename = path.split(self.fname)
71
- prefix, ext = path.splitext(rel_filename)
72
- for i in range(data.shape[0]):
73
- if self.heights_above_stage_mm is None:
74
- curr_rel_filename = prefix + str("_%06d" % (self.start_index + i)) + ext
75
- else:
76
- value_mm = self.heights_above_stage_mm[i]
77
- if value_mm < 0:
78
- sign = "-"
79
- value_mm = -value_mm
80
- else:
81
- sign = ""
82
-
83
- part_mm = int(value_mm)
84
- rest_um = (value_mm - part_mm) * 1000
85
- part_um = int(rest_um)
86
- rest_nm = (rest_um - part_um) * 10
87
- part_nm = int(rest_nm)
88
-
89
- curr_rel_filename = prefix + "_{}{:04d}p{:03d}{:1d}".format(sign, part_mm, part_um, part_nm) + ext
90
-
91
- fname = path.join(dirname, curr_rel_filename)
92
-
93
- self._write_tiff(data[i], filename=fname, config=None)
94
-
95
- def get_filename(self):
96
- if self.multiframe:
97
- return self.fname
98
- else:
99
- return path.dirname(self.fname)