nabu 2024.1.10__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 (152) 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/__init__.py +0 -0
  15. nabu/app/tests/test_reduce_dark_flat.py +4 -1
  16. nabu/cuda/kernel.py +11 -2
  17. nabu/cuda/processing.py +2 -2
  18. nabu/cuda/src/cone.cu +77 -0
  19. nabu/cuda/src/hierarchical_backproj.cu +271 -0
  20. nabu/cuda/utils.py +0 -6
  21. nabu/estimation/alignment.py +5 -19
  22. nabu/estimation/cor.py +173 -599
  23. nabu/estimation/cor_sino.py +356 -26
  24. nabu/estimation/focus.py +63 -11
  25. nabu/estimation/tests/test_cor.py +124 -58
  26. nabu/estimation/tests/test_focus.py +6 -6
  27. nabu/estimation/tilt.py +2 -1
  28. nabu/estimation/utils.py +5 -33
  29. nabu/io/__init__.py +1 -1
  30. nabu/io/cast_volume.py +1 -1
  31. nabu/io/reader.py +416 -21
  32. nabu/io/tests/test_readers.py +422 -0
  33. nabu/io/tests/test_writers.py +1 -102
  34. nabu/io/writer.py +4 -433
  35. nabu/opencl/kernel.py +14 -3
  36. nabu/opencl/processing.py +8 -0
  37. nabu/pipeline/config_validators.py +5 -2
  38. nabu/pipeline/datadump.py +12 -5
  39. nabu/pipeline/estimators.py +162 -188
  40. nabu/pipeline/fullfield/chunked.py +168 -92
  41. nabu/pipeline/fullfield/chunked_cuda.py +7 -3
  42. nabu/pipeline/fullfield/computations.py +2 -7
  43. nabu/pipeline/fullfield/dataset_validator.py +0 -4
  44. nabu/pipeline/fullfield/nabu_config.py +37 -13
  45. nabu/pipeline/fullfield/processconfig.py +22 -13
  46. nabu/pipeline/fullfield/reconstruction.py +13 -9
  47. nabu/pipeline/helical/helical_chunked_regridded.py +1 -1
  48. nabu/pipeline/helical/helical_chunked_regridded_cuda.py +1 -0
  49. nabu/pipeline/helical/helical_reconstruction.py +1 -1
  50. nabu/pipeline/params.py +21 -1
  51. nabu/pipeline/processconfig.py +1 -12
  52. nabu/pipeline/reader.py +146 -0
  53. nabu/pipeline/tests/test_estimators.py +44 -72
  54. nabu/pipeline/utils.py +4 -2
  55. nabu/pipeline/writer.py +10 -2
  56. nabu/preproc/ccd_cuda.py +1 -1
  57. nabu/preproc/ctf.py +14 -7
  58. nabu/preproc/ctf_cuda.py +2 -3
  59. nabu/preproc/double_flatfield.py +5 -12
  60. nabu/preproc/double_flatfield_cuda.py +2 -2
  61. nabu/preproc/flatfield.py +5 -1
  62. nabu/preproc/flatfield_cuda.py +5 -1
  63. nabu/preproc/phase.py +24 -73
  64. nabu/preproc/phase_cuda.py +5 -8
  65. nabu/preproc/tests/test_ctf.py +11 -7
  66. nabu/preproc/tests/test_flatfield.py +67 -122
  67. nabu/preproc/tests/test_paganin.py +54 -30
  68. nabu/processing/azim.py +206 -0
  69. nabu/processing/convolution_cuda.py +1 -1
  70. nabu/processing/fft_cuda.py +15 -17
  71. nabu/processing/histogram.py +2 -0
  72. nabu/processing/histogram_cuda.py +2 -1
  73. nabu/processing/kernel_base.py +3 -0
  74. nabu/processing/muladd_cuda.py +1 -0
  75. nabu/processing/padding_opencl.py +1 -1
  76. nabu/processing/roll_opencl.py +1 -0
  77. nabu/processing/rotation_cuda.py +2 -2
  78. nabu/processing/tests/test_fft.py +17 -10
  79. nabu/processing/unsharp_cuda.py +1 -1
  80. nabu/reconstruction/cone.py +104 -40
  81. nabu/reconstruction/fbp.py +3 -0
  82. nabu/reconstruction/fbp_base.py +7 -2
  83. nabu/reconstruction/filtering.py +20 -7
  84. nabu/reconstruction/filtering_cuda.py +7 -1
  85. nabu/reconstruction/hbp.py +424 -0
  86. nabu/reconstruction/mlem.py +99 -0
  87. nabu/reconstruction/reconstructor.py +2 -0
  88. nabu/reconstruction/rings_cuda.py +19 -19
  89. nabu/reconstruction/sinogram_cuda.py +1 -0
  90. nabu/reconstruction/sinogram_opencl.py +3 -1
  91. nabu/reconstruction/tests/test_cone.py +10 -5
  92. nabu/reconstruction/tests/test_deringer.py +7 -6
  93. nabu/reconstruction/tests/test_fbp.py +124 -10
  94. nabu/reconstruction/tests/test_filtering.py +13 -11
  95. nabu/reconstruction/tests/test_halftomo.py +30 -4
  96. nabu/reconstruction/tests/test_mlem.py +91 -0
  97. nabu/reconstruction/tests/test_reconstructor.py +8 -3
  98. nabu/resources/dataset_analyzer.py +142 -92
  99. nabu/resources/gpu.py +1 -0
  100. nabu/resources/nxflatfield.py +134 -125
  101. nabu/resources/templates/id16a_fluo.conf +42 -0
  102. nabu/resources/tests/test_extract.py +10 -0
  103. nabu/resources/tests/test_nxflatfield.py +2 -2
  104. nabu/stitching/alignment.py +80 -24
  105. nabu/stitching/config.py +105 -68
  106. nabu/stitching/definitions.py +1 -0
  107. nabu/stitching/frame_composition.py +68 -60
  108. nabu/stitching/overlap.py +91 -51
  109. nabu/stitching/single_axis_stitching.py +32 -0
  110. nabu/stitching/slurm_utils.py +6 -6
  111. nabu/stitching/stitcher/__init__.py +0 -0
  112. nabu/stitching/stitcher/base.py +124 -0
  113. nabu/stitching/stitcher/dumper/__init__.py +3 -0
  114. nabu/stitching/stitcher/dumper/base.py +94 -0
  115. nabu/stitching/stitcher/dumper/postprocessing.py +356 -0
  116. nabu/stitching/stitcher/dumper/preprocessing.py +60 -0
  117. nabu/stitching/stitcher/post_processing.py +555 -0
  118. nabu/stitching/stitcher/pre_processing.py +1068 -0
  119. nabu/stitching/stitcher/single_axis.py +484 -0
  120. nabu/stitching/stitcher/stitcher.py +0 -0
  121. nabu/stitching/stitcher/y_stitcher.py +13 -0
  122. nabu/stitching/stitcher/z_stitcher.py +45 -0
  123. nabu/stitching/stitcher_2D.py +278 -0
  124. nabu/stitching/tests/test_config.py +12 -37
  125. nabu/stitching/tests/test_frame_composition.py +33 -59
  126. nabu/stitching/tests/test_overlap.py +149 -7
  127. nabu/stitching/tests/test_utils.py +1 -1
  128. nabu/stitching/tests/test_y_preprocessing_stitching.py +132 -0
  129. nabu/stitching/tests/{test_z_stitching.py → test_z_postprocessing_stitching.py} +167 -561
  130. nabu/stitching/tests/test_z_preprocessing_stitching.py +431 -0
  131. nabu/stitching/utils/__init__.py +1 -0
  132. nabu/stitching/utils/post_processing.py +281 -0
  133. nabu/stitching/utils/tests/test_post-processing.py +21 -0
  134. nabu/stitching/{utils.py → utils/utils.py} +79 -52
  135. nabu/stitching/y_stitching.py +27 -0
  136. nabu/stitching/z_stitching.py +32 -2281
  137. nabu/testutils.py +1 -152
  138. nabu/thirdparty/tomocupy_remove_stripe.py +43 -9
  139. nabu/utils.py +158 -61
  140. {nabu-2024.1.10.dist-info → nabu-2024.2.0.dist-info}/METADATA +24 -17
  141. {nabu-2024.1.10.dist-info → nabu-2024.2.0.dist-info}/RECORD +145 -121
  142. {nabu-2024.1.10.dist-info → nabu-2024.2.0.dist-info}/WHEEL +1 -1
  143. nabu/io/tiffwriter_zmm.py +0 -99
  144. nabu/pipeline/fallback_utils.py +0 -149
  145. nabu/pipeline/helical/tests/test_accumulator.py +0 -158
  146. nabu/pipeline/helical/tests/test_pipeline_elements_full.py +0 -355
  147. nabu/pipeline/helical/tests/test_strategy.py +0 -61
  148. nabu/pipeline/helical/utils.py +0 -51
  149. nabu/pipeline/tests/test_chunk_reader.py +0 -74
  150. {nabu-2024.1.10.dist-info → nabu-2024.2.0.dist-info}/LICENSE +0 -0
  151. {nabu-2024.1.10.dist-info → nabu-2024.2.0.dist-info}/entry_points.txt +0 -0
  152. {nabu-2024.1.10.dist-info → nabu-2024.2.0.dist-info}/top_level.txt +0 -0
@@ -1,55 +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=4kysNldwr4sj73bjmoKdGzQ-6tc8gz-0FLrOb1apyLk,271
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
- nabu/app/tests/test_reduce_dark_flat.py,sha256=T-_zyzD0-f2c5Z-tlzmRF5p3vPtyL2RFb-D5fIYYEoM,2641
34
+ nabu/app/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
+ nabu/app/tests/test_reduce_dark_flat.py,sha256=qD52JL6fgJh7UEeGLssmsmGkqPTL8YTu29Hj1Nk9Bjg,2725
35
36
  nabu/cuda/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
37
  nabu/cuda/convolution.py,sha256=n8KsJ7IZdPOs_K5QZC6qblnOvIKYwxtdt03oNa0GiMU,241
37
38
  nabu/cuda/fft.py,sha256=FaLlZZWS3N32O6Lt7MioNTLNTyD1KwVSAVYyUYuIe9o,194
38
- nabu/cuda/kernel.py,sha256=jTTrjb6jwWUEk5NJJNs_BoNjpRiknhYRApZuA58vJis,3381
39
+ nabu/cuda/kernel.py,sha256=8v0b9kGNZfTPt2-xRbwrwX363Tw38B0TvsvmtmEtcrw,3776
39
40
  nabu/cuda/medfilt.py,sha256=4pFzE-JR1RufxfsgViewRTlh_a-YrTZikx-qvTZ2yUs,216
40
41
  nabu/cuda/padding.py,sha256=DdexJvSuQPk9Svqlk1xZUfJBjs_Ru9E4kF-0Q7RPEyM,216
41
- nabu/cuda/processing.py,sha256=07wCxP6YkBpS_UvEIu6dsXvhaINY06peNdkKZrcIcls,2605
42
- 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
43
44
  nabu/cuda/src/ElementOp.cu,sha256=PhebQQgeF0V7MDNzeYiRXIeNq3tE2PsBx00XhanBmvg,7188
44
45
  nabu/cuda/src/backproj.cu,sha256=Zq9w8TP9zSYCHH_91dfrTVLOSEmY0y4hzm7J2qdCdJ8,6257
45
46
  nabu/cuda/src/backproj_polar.cu,sha256=sZbtw3KMfN69XyubJQSSLC87d5IPOyzbPBoRSNC1Cek,1851
46
47
  nabu/cuda/src/boundary.h,sha256=eQhfKZm-o0kj88BvkUwzqfqxYfRde4Tuj8AhQvRK16Y,2898
48
+ nabu/cuda/src/cone.cu,sha256=Q-mKNBnx0pXzpOUGKi0Kq4POp7VqaQrLCDgqTf1pdkk,3071
47
49
  nabu/cuda/src/convolution.cu,sha256=O6r8qPpQjpaqnNivMRX0LK3dEACKk9xyNYO9u_JysU0,7353
48
50
  nabu/cuda/src/dfi_fftshift.cu,sha256=ElgNXy8H14mff2hmyjxCq7CnFK_DSY2Z564QGytRO1o,2220
49
51
  nabu/cuda/src/flatfield.cu,sha256=ZVVmEd-jcsK03VWv42uugYw6LeUnDEVY8qo_G07doHs,2058
50
52
  nabu/cuda/src/fourier_wavelets.cu,sha256=571gDOFLy4cMKOockPZIxCJKcFWJwDYT8FdWjQJHEWE,547
51
53
  nabu/cuda/src/halftomo.cu,sha256=agqNiL4gvY0S57_d0Xa7rvjXI5teOOXF9XHK1IA-aDQ,2902
52
54
  nabu/cuda/src/helical_padding.cu,sha256=87Ia2jDWzA_1ZSmE-v1yBqccIrIvF5Op6Nbmyvk31Ww,3955
55
+ nabu/cuda/src/hierarchical_backproj.cu,sha256=NikMrAFuL6qBQdmKUgMxB3YCJG-BibdBf3mOc-rkrCQ,8833
53
56
  nabu/cuda/src/histogram.cu,sha256=bVdVA5GfT0-asMjmWk8r39a7W2jmjL-YVz60LUyvqiQ,808
54
57
  nabu/cuda/src/interpolation.cu,sha256=Q4TjDklZToSjk9yCd4Rq97kQlhSAgFer7Pf4PUo4jYU,839
55
58
  nabu/cuda/src/medfilt.cu,sha256=fyuuOEHxQFfQoDjyXr_BdNRHIUBN7e6T66kvW4OQI7A,2449
@@ -60,32 +63,32 @@ nabu/cuda/src/rotation.cu,sha256=inatw44lT0Qn4D2xguLi_YZsjzP96zfGGLiCc9vLhQw,657
60
63
  nabu/cuda/src/transpose.cu,sha256=Enim7vLxTCFZbK3BmYdQ6ZatA_FLp6601VOSl8iGFjg,476
61
64
  nabu/cuda/tests/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
62
65
  nabu/estimation/__init__.py,sha256=HWE3ivArjlJx4FjFh2Q73VmpIyzod80KTmXvFo1AP1s,379
63
- nabu/estimation/alignment.py,sha256=bG5eskq-bGOdyRpxZ1t-udbcwKOvHUn6C4HmUrNOX9c,21584
64
- nabu/estimation/cor.py,sha256=pBEYWOo1cNszNgVZrWXWBjc4xr6bp7al8-WoToEHpS4,68104
65
- 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
66
69
  nabu/estimation/distortion.py,sha256=DEXizQpgHBXmrhbQ0kuEchicxmiDgmU2qrh8bCgSezg,4701
67
- nabu/estimation/focus.py,sha256=5Ot97-SfhdoaZaske3J_ZdPLIPGswovmGxmPM6ir2BU,15765
68
- 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
69
72
  nabu/estimation/translation.py,sha256=L-SCLozW1I-FyGta9LjbNPLYRnaznwenF-p9rISM2pE,8581
70
- nabu/estimation/utils.py,sha256=m1dYxyU1uSmyjRkPDhfXFzZ_o2mw8X2ApmvCC1MsvlQ,1401
73
+ nabu/estimation/utils.py,sha256=31d17Ng__NxcLOtGXPmbPPW1veh1m0poCvRgDCJssUA,347
71
74
  nabu/estimation/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
72
75
  nabu/estimation/tests/test_alignment.py,sha256=odDbSXGPZz-aqCkPfFrZqqMp4NDz-4Sju87vWrOdA30,2491
73
- nabu/estimation/tests/test_cor.py,sha256=TND-fGoupHQFhp-omp6SQFETxZAaL0WyjC5JZNzCvmI,21268
74
- 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
75
78
  nabu/estimation/tests/test_tilt.py,sha256=PN4tnV3-XU2nNA608kQShaHugWn_-wbHzWCTnLIaCTk,1658
76
79
  nabu/estimation/tests/test_translation.py,sha256=RkOnCYgk9DZGKlIka1snqTv4wbIz_nG7-EHAxnBHsJU,2999
77
- nabu/io/__init__.py,sha256=Mx0HRIENk0dJbN3b9tzPZhiOnPMxBItgVNQn_QLLrlI,176
78
- 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
79
82
  nabu/io/detector_distortion.py,sha256=Or4icugi0fGRKWIG0I9hCuR1UZA5Cel25ZGY7cR2j4I,11744
80
- nabu/io/reader.py,sha256=1DlUYObfOBEGYJHEqyw1Mb2uQ_b_Z7-FFqMWS-4tIB0,23083
83
+ nabu/io/reader.py,sha256=ZrDlpJe4qn5mxGBccJi-C2hTganvuUnmbIwYkyE1Y_E,40517
81
84
  nabu/io/reader_helical.py,sha256=_6vZBH-US_VT7oOGJUtYXqPwFws7xZKcmdOthpwvlIQ,4477
82
- nabu/io/tiffwriter_zmm.py,sha256=ykaSFqdbYhGNxdBrJRT_rxihx5wj9G8qMQMI1e07fNk,3838
83
85
  nabu/io/utils.py,sha256=pFRULSlmGzJnzBbeSNKRhnKbBPbV0XaeUsxnWmnMtR4,9223
84
- nabu/io/writer.py,sha256=cWKY7RcNUztOs1ktzLP2G087fLvq4yNMNdvvBdnoOSk,31417
86
+ nabu/io/writer.py,sha256=01S1nz6u3QxE-nGR6lcVuLEGYSZLNaKModvTaD4bLv8,15895
85
87
  nabu/io/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
86
88
  nabu/io/tests/test_cast_volume.py,sha256=WCDStfV_eu4tjeKibWXrXEDbN0hPJGOzacGv6efgHAI,10743
87
89
  nabu/io/tests/test_detector_distortion.py,sha256=-l-fl_RmSoZHl9aDoHDoJE13L8w9ghBXGASc9PYGzqw,6341
88
- 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
89
92
  nabu/misc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
90
93
  nabu/misc/binning.py,sha256=x7mbKTfEKF8ZaZoPq2LJl9hfUsQ0qMNGMxaHE98PcNc,2920
91
94
  nabu/misc/fftshift.py,sha256=TF0RwlDqo_umTwBQb2juCA8Hrff4H20XULdcIyDTajI,205
@@ -109,10 +112,10 @@ nabu/misc/tests/test_binning.py,sha256=0TqnJrDhfqSeWF6ZJsMqFUQ0M2SJ1AHPpD1sWA0hB
109
112
  nabu/misc/tests/test_interpolation.py,sha256=H8ZJ7dppCcpxVa9wOBkJ9U0mymH5lGyCJ0LZCYIK8PE,2389
110
113
  nabu/opencl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
111
114
  nabu/opencl/fft.py,sha256=-3Ao5Ug4_pEzIliQsBiGJc_PgyURPd8pRje8LWx51pU,208
112
- nabu/opencl/kernel.py,sha256=C48xhgxhIkI-0j5CODJJTw-rdjjy8FiyQSJ0YuoYH5c,4736
115
+ nabu/opencl/kernel.py,sha256=lmHRgWqpEbQUOunZe0xFuuw_Z_K6dq8BxjH3FLReVBU,5125
113
116
  nabu/opencl/memcpy.py,sha256=s_0CCO-PTDmEsCW9_kVCNHwN7_hw7uNy_O6KJ0zS71I,1263
114
117
  nabu/opencl/padding.py,sha256=fe7AZ1VtQJ4F7zq31FjXSYQnleAubWwpEYTCxdZNcSI,224
115
- nabu/opencl/processing.py,sha256=7JBZUpPoHMJVI4TEpk1YDn1lLjy0f6XU0qR-PFNfkwA,2122
118
+ nabu/opencl/processing.py,sha256=cKq_VLtLBPijp2pl7Zgc4mrVsYLUA27x26jPo484Kg4,2416
116
119
  nabu/opencl/utils.py,sha256=yPAt7xQ15n98Gf_ZSkazKUathZBe3WzD47TE-l0cjzs,10141
117
120
  nabu/opencl/src/ElementOp.cl,sha256=RMScHhHYDa6xXC4NLJrC1KpDRq-aMZG1lwq3O9pStiY,1258
118
121
  nabu/opencl/src/backproj.cl,sha256=M226iOQ-0WhGsJZfUn3mUCfBHqqGAqWa2caK9Igk058,5559
@@ -124,94 +127,90 @@ nabu/opencl/src/transpose.cl,sha256=jFRIFccPefzbKFEqEIVYGrWac5XJs3FY1tEmvCzA74E,
124
127
  nabu/opencl/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
125
128
  nabu/pipeline/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
126
129
  nabu/pipeline/config.py,sha256=amc05PX0kZA5wHjD1oFP59MfW4pBA-gjBypy4tKLnv0,9221
127
- nabu/pipeline/config_validators.py,sha256=rvK1Q_KmA1LUeNTefNxXCpYfDQ1zAdk1kFePrLintwc,16300
128
- 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
129
132
  nabu/pipeline/dataset_validator.py,sha256=etQw9NC_YGsdWCgjsn8aJ3WfvcRuJlLVZlWoqhvvo-8,9263
130
133
  nabu/pipeline/detector_distortion_provider.py,sha256=ru1AxbcuO-FA8FYooPBWgp1lzdSDUtzFUC1A_sS8jME,920
131
- nabu/pipeline/estimators.py,sha256=4V5pwl5vUFMJDanWnmw7POnSsa9lKyKtUzvq9GLcJwc,41374
132
- nabu/pipeline/fallback_utils.py,sha256=7ccrKYE-rp3fydb72VA6W0_eKcEoqYBEAPlmij_lyEc,6086
133
- nabu/pipeline/params.py,sha256=VdrekcxOnbrMzvvLcwEWINiMM0uVKmPxJJBwp3lhHBg,3479
134
- nabu/pipeline/processconfig.py,sha256=O0phgvfWtL9bg3_GE3cw9MZXS8PUy8z2rzhpoqP9U84,8320
135
- nabu/pipeline/utils.py,sha256=NONAgBfTfUYvBNfoTqD33MAYaPZyCJL10SnR6B0lLec,3462
136
- 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
137
140
  nabu/pipeline/fullfield/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
138
- nabu/pipeline/fullfield/chunked.py,sha256=O6Wnw6B1nhA2yOdbOxqpEAdGnNdDGRYI2z0bBCB-yk0,37288
139
- nabu/pipeline/fullfield/chunked_cuda.py,sha256=aGzjY8MX6OL8auEj6Y0RfOGCmFnczsdfj6-8Net5AbQ,5645
140
- nabu/pipeline/fullfield/computations.py,sha256=eWbqtlXWKgcmCsKL1GgtaTVXBScY6MSrmtLd8h5dLng,10251
141
- nabu/pipeline/fullfield/dataset_validator.py,sha256=8B2lB9j7elF_NmOOOyr8UADVfC15Oofzy2AyWoPufQM,3265
142
- nabu/pipeline/fullfield/nabu_config.py,sha256=a0mMoLkvlvHgX6RmUS1m1UhJS-XB3O6wBCnkNoI90Cs,30358
143
- nabu/pipeline/fullfield/processconfig.py,sha256=qSVeUvpt9BS2kR3zNk95_MGoLV4idiSJyYHlAPXbgTs,36405
144
- 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
145
148
  nabu/pipeline/helical/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
146
149
  nabu/pipeline/helical/dataset_validator.py,sha256=0YQc0hdYdpaXznFaKmlj9SIu7mNs0xXMejcRkhOZHaI,640
147
150
  nabu/pipeline/helical/fbp.py,sha256=0fAz-Fb0Rn_FzellvcS2cy-Wvm-5dxEf494YFt4pLws,5845
148
151
  nabu/pipeline/helical/filtering.py,sha256=vkxiPkUbm8_KtfUbVwPu8WEvibAJII81TqZW8fvRqnM,10234
149
152
  nabu/pipeline/helical/gridded_accumulator.py,sha256=me6yW7oPrGnlKy0FJvKe70mjqmy7YmClZTsJKdvGOw4,26308
150
- nabu/pipeline/helical/helical_chunked_regridded.py,sha256=D-192oOK4O3yCFPEATMKyp9cZBNy06ZiFRcB8RECiGw,68449
151
- nabu/pipeline/helical/helical_chunked_regridded_cuda.py,sha256=DqNM3fx2a_HsHmpY48MBCYK0pdJNXeu7nKKfFFFNW6I,3863
152
- 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
153
156
  nabu/pipeline/helical/helical_utils.py,sha256=uFAQHDqENHqQWUpu1n99dnBCCKOlkgjDjvYORY6XFY0,1439
154
157
  nabu/pipeline/helical/nabu_config.py,sha256=LmYUWC14oDpktLnjbz7qH1yt9NARNbgNG8GXr7E-UM8,8042
155
158
  nabu/pipeline/helical/processconfig.py,sha256=IlCfKkiclBmDDdT6Ail3aSj9Q7zV38YpFmF1_SsCjy4,2775
156
159
  nabu/pipeline/helical/span_strategy.py,sha256=7zV_Oo_liFiuv6m70o08XyoEIo_7QYs7MV7qtHFTgbc,25044
157
- nabu/pipeline/helical/utils.py,sha256=51Qbh8db6-DX0iB9B9Kb07uwIG6_upAJg_8nhyzbB7o,1555
158
160
  nabu/pipeline/helical/weight_balancer.py,sha256=j0TGe50tbbsilQvml9CgMxeSy83CNaifHj-xuMGl8uE,3981
159
161
  nabu/pipeline/helical/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
160
- nabu/pipeline/helical/tests/test_accumulator.py,sha256=DCwTAWQLdUNJBJpjhHT8o1gLbznpuj_zqbQOfQnrShw,6534
161
- nabu/pipeline/helical/tests/test_pipeline_elements_full.py,sha256=zeR9SaeD0mnhtKU7qo4Qrn_lg1I1Vhg4dqzj6jy8tpg,14569
162
- nabu/pipeline/helical/tests/test_strategy.py,sha256=rt8SsUHBMMcVFl48kRGcOyf1y4bYqaA2xDznQxE7wFs,2721
163
- nabu/pipeline/tests/test_chunk_reader.py,sha256=OB279hSvgmVhWv_OauZNWTJeaaiheETayGYK79Op10Q,3410
164
- nabu/pipeline/tests/test_estimators.py,sha256=6VK7fxxfrRTWSSi2bhHqbLy8pZJ2DALO1gJkuxpLDSQ,8392
162
+ nabu/pipeline/tests/test_estimators.py,sha256=usi2Rp0zry5ADJV9k8nHhCqdDBSuHguZvyH-jkg-F48,6146
165
163
  nabu/pipeline/xrdct/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
166
164
  nabu/preproc/__init__.py,sha256=dKxvZvWZXjKS3iPRaSXiUeM2dNGIOyTlirq5pdAWY0Y,284
167
165
  nabu/preproc/alignment.py,sha256=WDSPIlogwPfQDTqEyRH_ovaQ7vCpnR6XE_Ycif1wP0I,379
168
166
  nabu/preproc/ccd.py,sha256=AHU9iwXLrzisMOfIfMtKwDfd9vP5m_-MBI0rmP4u7eg,5145
169
- nabu/preproc/ccd_cuda.py,sha256=G9BWM2BJop8On3QWFkENZwFccNUss0ES3v931emL3RQ,6068
170
- nabu/preproc/ctf.py,sha256=xyTfmN8Nr6Rh9EXy1c1PIpC0zfzViFnytxjLaDrArn0,14657
171
- 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
172
170
  nabu/preproc/distortion.py,sha256=XksQNrrSBfZS7mlvIdVEMZjw839ppQWP6AitTLcgfb0,3309
173
- nabu/preproc/double_flatfield.py,sha256=W0NFkDIMzwgHbM844CwyGa2aBws-x-hCjqsXCOx6KkY,8213
174
- 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
175
173
  nabu/preproc/double_flatfield_variable_region.py,sha256=9NnI_MoY2mhjp1ifpfhTq5slkDhgoK-bMznkW6xRU_4,2279
176
- nabu/preproc/flatfield.py,sha256=KCZvIqxKB9eizI6nc0ez831ImHoDuQ9StSSvCNXIGZA,19202
177
- 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
178
176
  nabu/preproc/flatfield_variable_region.py,sha256=JnIn_hkt2YQdREIkEnMSF4B16JcrmtS6jLfUiBS97B4,3155
179
- nabu/preproc/phase.py,sha256=gtf-fgQJ_zsTgaj0yBAhNlT074jI7YSCEBYfY0wGkQc,16383
180
- 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
181
179
  nabu/preproc/shift.py,sha256=UVa962Gj4b1CRAsez57glvBGXXFSDVnquB3Zd0JgquQ,3424
182
180
  nabu/preproc/shift_cuda.py,sha256=soiCNBSn-zxIHAFgVvDy8jJFCWvZ54blZEd-D5NZrw4,4165
183
181
  nabu/preproc/tests/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
184
182
  nabu/preproc/tests/test_ccd_corr.py,sha256=KIpwaWYWT_6OPVXyVuLxXIIWreBkYF0rOnDMiegiLMU,2249
185
- nabu/preproc/tests/test_ctf.py,sha256=lXKCkICjeM7jda-Cku9Aze09YUwj1a8wuNOraVHVEws,9848
183
+ nabu/preproc/tests/test_ctf.py,sha256=-HIKyYoG71AN4vv_LDlUCCbH736XO26P9NupCsdIbRY,10006
186
184
  nabu/preproc/tests/test_double_flatfield.py,sha256=HZ5KxY3xGplTzRTFKiFyqAhIjyl4mSrbHRzYTnMr4HA,2873
187
- nabu/preproc/tests/test_flatfield.py,sha256=CnK8pFnCmBdwjDSEi9S0FwYIo_zXuHzlEIiIpWjYFf4,23498
188
- 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
189
187
  nabu/preproc/tests/test_vshift.py,sha256=dkX-xK8OCROP7kAOtMYRFrWWByEUsVzvhbNWm2RPn1U,2867
190
188
  nabu/processing/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
191
- 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
192
191
  nabu/processing/fft_base.py,sha256=PuP3w4VQLPUIVemcDpT0K-zVPX_yii12ciONZZj0fzE,5656
193
- nabu/processing/fft_cuda.py,sha256=7cg2IEuW47xezVk9mM8Hn_iYQzrfft6-aLc20TGjiyI,8918
192
+ nabu/processing/fft_cuda.py,sha256=yXWMzDWHKwZVW0h77hk5378DA7i_Yht0oKbIN8lutN8,8924
194
193
  nabu/processing/fft_opencl.py,sha256=8raIclnr-nRGBet_YyLJiWHFB5mPLMbdP40bHVaW7Do,1386
195
194
  nabu/processing/fftshift.py,sha256=XY7UsI63fAq9N5sCDpABCchf_wu9fZ_4KH3StGwgnqw,4880
196
- nabu/processing/histogram.py,sha256=Edl3PfJkj0lbj1gSBHfuylm1oJFenNwtGsJJ8Z3-UWw,11316
197
- nabu/processing/histogram_cuda.py,sha256=6MU1C5gxjHPwu7ILO7pEidGZq6L1pKVinGMkv5o2NSo,3277
198
- 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
199
198
  nabu/processing/medfilt_cuda.py,sha256=usnNMKxFMrGI6ZIYNRDXBn5kzBzOyuVay8mnQSvNR2k,5691
200
199
  nabu/processing/muladd.py,sha256=QI4EnPFNTUHeZIpctlazjcgUyHBkhBX7PQE_iII8r44,895
201
- nabu/processing/muladd_cuda.py,sha256=xNCo_CC-E40s03852J-ReCOR4mhp5tSRMpNfNkG9SCM,2445
200
+ nabu/processing/muladd_cuda.py,sha256=wGivGyyMn7FN68hDT590RwSiV4Ju-TLGwa1bnw4Cd_k,2477
202
201
  nabu/processing/padding_base.py,sha256=eIG-SG002TcRtTEdv00Ubr5gwcaVUuYlyMpIZSNuXBw,2874
203
202
  nabu/processing/padding_cuda.py,sha256=p6edM96Kj4rzulzvAUUZzHlHso3Vp0uzCPOD7-6rxfg,2689
204
- nabu/processing/padding_opencl.py,sha256=dzH8EQc1DXnLgKpE8vBGWsloe-gFU8-AgLOw0-8GNuI,3049
203
+ nabu/processing/padding_opencl.py,sha256=H7w5bY9Th9pJKYKaX1_u-XqUj8lM5XWfVViu0ax4W40,3074
205
204
  nabu/processing/processing_base.py,sha256=D72UmfNKby-XXgANz82pYjd2uYlTpPP3RLxR_LPHgMo,4412
206
- nabu/processing/roll_opencl.py,sha256=0R6ff8sncuRC7K8gPdjhmIyC2d83iL3pTvmXf5b-6io,2263
205
+ nabu/processing/roll_opencl.py,sha256=ms6ZW7ecG-kWq--wWijAjDB_uVWQtUylFp_EDKmfUKw,2283
207
206
  nabu/processing/rotation.py,sha256=8tVQponi8tv8uPw-xT-0GyZecl3YIXyJgPkEnQMer8M,1836
208
- nabu/processing/rotation_cuda.py,sha256=9gXMdVX8tqeeOY0R9W8sw9fMh5vj35rRIqMLgJT86Vg,2746
207
+ nabu/processing/rotation_cuda.py,sha256=mfExwPCTyoKFhv8ZmE833jI_D6o-J-p5-TxacGdb-e4,2796
209
208
  nabu/processing/transpose.py,sha256=bOnxEFXJd16YcTGyMS-3lwREIVaDkClE_Fkb8bOn1l8,4410
210
209
  nabu/processing/unsharp.py,sha256=XqoieKlX5sEHalxObi5JBOjauRUSbiHc6rqYT_buTa4,2682
211
- nabu/processing/unsharp_cuda.py,sha256=tbgw3selI4x4qsSxyQJ8Q4HUxdEBbZOJtSys-0yzj4o,2127
210
+ nabu/processing/unsharp_cuda.py,sha256=uKFCEk8bRqgJzR8HB_OeKYuwC5jKqaXpFI6pRv_pDY4,2152
212
211
  nabu/processing/unsharp_opencl.py,sha256=ikmZhQB-kji3UFrvFzHJNvDUpaVSpzcCJRX_bqSQeGQ,2637
213
212
  nabu/processing/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
214
- nabu/processing/tests/test_fft.py,sha256=zDGDTXZjHBVbiVFiQfkrkYFFMyotJRFU-KgoNm1FGms,9827
213
+ nabu/processing/tests/test_fft.py,sha256=fgbqV0IGE9Z9sbbr6Zmhl_zykQwQNv3pQQTi1O_JhcQ,10244
215
214
  nabu/processing/tests/test_fftshift.py,sha256=-XgJUm0eF3D-rMTlI9u3jaWYIlPFZEpM0PwW3SMDLG0,2618
216
215
  nabu/processing/tests/test_histogram.py,sha256=25CLs1WZpLF9xZ2DR82x4_YokA5Z76Qsnn6zY8YdJj8,2283
217
216
  nabu/processing/tests/test_medfilt.py,sha256=lVfLWIxWiLfODFc14WYbq1W02rgQDtCnrSgXnWgU6yU,2722
@@ -222,74 +221,99 @@ nabu/processing/tests/test_rotation.py,sha256=vedRXV9RePJywBKoyBkGANP1dhZCjphbYO
222
221
  nabu/processing/tests/test_transpose.py,sha256=hTG17wTaB5Wv6twbW3ZFhBv6BYfqJY7DTQPoO0-KdkM,2760
223
222
  nabu/processing/tests/test_unsharp.py,sha256=R3ovbwDDp3ccy2A8t6CcUVELXRWkED5EnQdN2FQOfQM,4391
224
223
  nabu/reconstruction/__init__.py,sha256=EmKVvx_-FJvzJngG4ielIC7FhMCpI1Waaflg_lF44tk,163
225
- nabu/reconstruction/cone.py,sha256=1Wq2XJuVTjHTjTsUng1Z9VE8IPV_4xLGkD6TtBGzHrs,16234
226
- nabu/reconstruction/fbp.py,sha256=5GB7XCnxftSHq1ZBLjWi-7OTiyCU4qe-M4EPzvsoxLg,4829
227
- 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
228
227
  nabu/reconstruction/fbp_opencl.py,sha256=coEGLq65PCuvWnhAbIyLPHACkWjMB0XOceMp9ZIDWtc,3274
229
- nabu/reconstruction/filtering.py,sha256=iqtFJoAfrw_o1Ta9dG_YjuIXWzSyYRgo8tHCthPgkjQ,7984
230
- 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
231
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
232
233
  nabu/reconstruction/projection.py,sha256=7WVPlYLUmCmB2yR1JYmVLJ5fZ3CMMKQ3vS9yuTUb8J8,9099
233
- nabu/reconstruction/reconstructor.py,sha256=wSva2EK-NTJi8N_ubzJWIZ4sv2ksfrA9YcA2ioEtISo,7299
234
+ nabu/reconstruction/reconstructor.py,sha256=16xxHcK4iie-uh-trf6x_IuvgxJKBvQRTE5B8tnc4F8,7358
234
235
  nabu/reconstruction/reconstructor_cuda.py,sha256=m_3GzG44PRyiSEfTvYjgr5atLwl26hMfZOMyqTWxp0g,1644
235
236
  nabu/reconstruction/rings.py,sha256=mpbCLuFM_6Uy9oNJkyQ8tZwhGhrbWtzRlArSRsC90bI,9527
236
- nabu/reconstruction/rings_cuda.py,sha256=NFU4lV_K6oY3eVyHmK_zxpQYeXpejOe_j8fnK7Vnnb0,13514
237
+ nabu/reconstruction/rings_cuda.py,sha256=yBGv_MITcWzD1VWLIchloV8IB43D_5Rxf1MoqYoTvMw,13704
237
238
  nabu/reconstruction/sinogram.py,sha256=KTSGP_JJABf4Yr9l628HPbyWsBnpbnyGKyPEq3ZrPIE,17026
238
- nabu/reconstruction/sinogram_cuda.py,sha256=wS84AIy3T00d1kTtuJOQmA3hktbDVs4ybwB9haiBcoY,10623
239
- 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
240
241
  nabu/reconstruction/tests/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
241
- nabu/reconstruction/tests/test_cone.py,sha256=88n0vKrKJg26DbvH3ZtHtmOtqHFkjJxmELlBLLL5qMA,17594
242
- nabu/reconstruction/tests/test_deringer.py,sha256=C5wj6RNzmpt_Cry4fonC8KXWvgPpcXfRbG8Bex_30S4,8380
243
- nabu/reconstruction/tests/test_fbp.py,sha256=p80zPCZkgJpERpqG5HHfbtbHBeqJUT8WY-q6FXOJJ7M,10053
244
- nabu/reconstruction/tests/test_filtering.py,sha256=PFJLQMDBQo-UuS_CfKrWZ_DdHarmVlcbsiZ_kmToWXY,4782
245
- 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
246
248
  nabu/reconstruction/tests/test_projector.py,sha256=W4zntShzL47HjMGQG11zIYzMXwX0KfMN4BVIAapdy_I,6033
247
- nabu/reconstruction/tests/test_reconstructor.py,sha256=dEGqlQHfFwX_V2Ybnq5AAM5tprXn_2OuCSrC6cW4S0A,3221
249
+ nabu/reconstruction/tests/test_reconstructor.py,sha256=3p2Wk_OqgZqkNOkhK_NJWlHkOIENTJhLuwVRI8Y1_Ak,3385
248
250
  nabu/reconstruction/tests/test_sino_normalization.py,sha256=fGv5Dlidxgm8ZC70Nk6oqVgpY2jzOW9NJaGlo44IJOo,3692
249
251
  nabu/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
250
252
  nabu/resources/cor.py,sha256=-mcrTbj3G7o4PP5E_gIRo2j6_-ADmMkkOc_0CyQv84c,170
251
- nabu/resources/dataset_analyzer.py,sha256=774qI2E4cZynqSPZcvaoJXk3VV9SpjsSV6mf4wuTcZc,17004
252
- 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
253
255
  nabu/resources/logger.py,sha256=-lOzhN_sU4R3BIfC69aMj2O8S_ocsvXsmwkhWlcxVEc,3758
254
- nabu/resources/nxflatfield.py,sha256=W0mooruk98TaRb6rtpqzPl5TWwuI3zj-7S7CM7IjEwU,9221
256
+ nabu/resources/nxflatfield.py,sha256=XlhLYj1TmSQ4s36W48kn0lNTvqXlFCuZxKHfTveltow,9225
255
257
  nabu/resources/utils.py,sha256=LtOWEYneEzz0mDIpUWM23v9ILJ8FM0YFaVG3fFVc7OU,5725
256
258
  nabu/resources/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
257
259
  nabu/resources/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
258
260
  nabu/resources/templates/bm05_pag.conf,sha256=3-Zny2_QlQuZKge53N1vFLZ8yzq-y2cmpAAkByUdHX8,394
259
261
  nabu/resources/templates/id16_ctf.conf,sha256=PJt_hvBlAweZSo6INnsmozHfBJvJ64b28x1mFfAOD6s,842
260
262
  nabu/resources/templates/id16_holo.conf,sha256=sDd_rEJGZjOGVAsGub5sT2arfXDnc_sxyDBAcfKHNpw,773
263
+ nabu/resources/templates/id16a_fluo.conf,sha256=Nz1etzO2fSwksi7CThWJ5T1kZEdyBe8rMO7puNJ93Hc,542
261
264
  nabu/resources/templates/id19_pag.conf,sha256=u4fFPEBprzOW9_5_ChkIgowQcYpLhjmA8Gwm5XgC4Jc,384
262
265
  nabu/resources/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
263
- 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
264
268
  nabu/resources/tests/test_units.py,sha256=F2jFTck-1UwYET1MwTtX6ntzYUosfwOJkugSencGgz8,2155
265
269
  nabu/stitching/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
266
- nabu/stitching/alignment.py,sha256=MSj-6npGfUnD3C5R5rqKwTogVRUDPmJuEZkPG9hMiUY,6752
267
- nabu/stitching/config.py,sha256=t7mkRrkdHKMz0x-lg0f5-IOAO829A6BvKH8WUAuSAps,51333
268
- nabu/stitching/definitions.py,sha256=RyqzZY3KLwN4j0SkOFA-T1aicPbO2jBrqfWdz-1djxk,130
269
- nabu/stitching/frame_composition.py,sha256=OGM9cLrLfEP5_hvhDbNq_zr2wdMeAuTTNlVqZk-qVBU,5889
270
- 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
271
275
  nabu/stitching/sample_normalization.py,sha256=_radin_wxnuD3MMmZNAOKA__aPa2z3ss4TFbZeocpXc,2069
272
- nabu/stitching/slurm_utils.py,sha256=sZ-VQPh_YlJ1Lkh7ap8qxII0rBpZryMyoxE5Xn557t8,8906
273
- nabu/stitching/utils.py,sha256=kMn2JEMDhcBQMweSlM0rUd-037H7iNUURTFMhXOTzC8,23651
274
- nabu/stitching/z_stitching.py,sha256=E7qRRkayyAoJOAu94eIziVVLdz_6ecoBe9u1twbaVH4,103941
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
275
293
  nabu/stitching/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
276
294
  nabu/stitching/tests/test_alignment.py,sha256=MACak1ILOr8nRKeT0mWfMd-ZvhCl3SWjjcp6GjRbITc,2735
277
- nabu/stitching/tests/test_config.py,sha256=ttWuVB9Y_MM3_wGdKbcbYi_PG3vN87cL7o5zKsMzn9g,8490
278
- nabu/stitching/tests/test_frame_composition.py,sha256=MM4pn1mno21gLUVMYo2R4iUxN-2MfxSIectGtLhLDqI,6043
279
- 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
280
298
  nabu/stitching/tests/test_sample_normalization.py,sha256=E49E_Quv-Qon6qSuaH9ZBZLqq4TPuBl8RqgB18Rwjc0,1348
281
299
  nabu/stitching/tests/test_slurm_utils.py,sha256=bbhCQd06R3irGB4B9r79KKlf0AlBchI53N2ldsXoAQQ,4950
282
- nabu/stitching/tests/test_utils.py,sha256=CjV0vPvXEchJ5vo6o7hGQA-PsOOAyAamuQ6fiHKCQ9M,641
283
- 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
284
308
  nabu/thirdparty/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
285
309
  nabu/thirdparty/algotom_convert_sino.py,sha256=iZVRilvyqMyLTu8RKgbqDFUjObWW5X69rCARrnNizuI,13872
286
310
  nabu/thirdparty/pore3d_deringer_munch.py,sha256=o4bisnFc-wMjuohWBT8wgWmfNehPQGtCl6G2NebJlbg,4500
287
- nabu/thirdparty/tomocupy_remove_stripe.py,sha256=VgXHr2tzTAAGZix5pwhFfbPxj4tt3yXBcjCPNQSLPAg,22810
311
+ nabu/thirdparty/tomocupy_remove_stripe.py,sha256=Khe4zFf0kRzu65Yxnvq58gt1ljOztqJGdMDhVAiM7lM,24363
288
312
  nabu/thirdparty/tomopy_phase.py,sha256=hK4oPpkogLOhv23XzzEXQY2u3r8fJvASY_bINVs6ERE,8634
289
313
  nabu/thirdparty/tomwer_load_flats_darks.py,sha256=ZNoVAinUb_wGYbfvs_4BVnWsjsQmNxSvCh1bWhR2WWg,5611
290
- nabu-2024.1.10.dist-info/LICENSE,sha256=1eAIPSnEsnSFNUODnLtNtQTs76exG3ZxJ1DJR6zoUBA,1066
291
- nabu-2024.1.10.dist-info/METADATA,sha256=AlQVC7OyK98VQa34vZGMJZLDz0w-Ho24nUOaTpucrvo,5220
292
- nabu-2024.1.10.dist-info/WHEEL,sha256=R06PA3UVYHThwHvxuRWMqaGcr-PuniXahwjmQRFMEkY,91
293
- nabu-2024.1.10.dist-info/entry_points.txt,sha256=cJKGkBeykVL7uK3E4R0RLRqMXifTL2qdO573syPAvJc,1288
294
- nabu-2024.1.10.dist-info/top_level.txt,sha256=fsm_N3eXLRZk2QXF9OSKPNDPFXOz8FAQjHh5avT3dok,9
295
- nabu-2024.1.10.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,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.5.0)
2
+ Generator: bdist_wheel (0.41.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
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)