Mercurial > repos > rv43 > tomo
comparison tomo.py @ 24:817a8101d2e4 draft
"planemo upload for repository https://github.com/rolfverberg/galaxytools commit 3d7910473008ec94bc0b4580d62e61310e69917d"
| author | rv43 |
|---|---|
| date | Mon, 18 Apr 2022 20:36:53 +0000 |
| parents | 3e336f5b6402 |
| children | 7791b6e7d4e6 |
comparison
equal
deleted
inserted
replaced
| 23:3e336f5b6402 | 24:817a8101d2e4 |
|---|---|
| 1181 # need index order column,theta for iradon, so take transpose | 1181 # need index order column,theta for iradon, so take transpose |
| 1182 sinogram_T = sinogram.T | 1182 sinogram_T = sinogram.T |
| 1183 center = sinogram.shape[1]/2 | 1183 center = sinogram.shape[1]/2 |
| 1184 | 1184 |
| 1185 # try automatic center finding routines for initial value | 1185 # try automatic center finding routines for initial value |
| 1186 print('OK2') | 1186 print(f'OK2 numcore = {num_core}') |
| 1187 tomo_center = tomopy.find_center_vo(sinogram, ncore=num_core) | 1187 tomo_center = tomopy.find_center_vo(sinogram, ncore=num_core) |
| 1188 center_offset_vo = tomo_center-center | 1188 center_offset_vo = tomo_center-center |
| 1189 print(f'center_offset_vo = {center_offset_vo}') | 1189 print(f'center_offset_vo = {center_offset_vo}') |
| 1190 if self.test_mode: | 1190 if self.test_mode: |
| 1191 logging.info(f'Center at row {row} using Nghia Vo’s method = {center_offset_vo:.2f}') | 1191 logging.info(f'Center at row {row} using Nghia Vo’s method = {center_offset_vo:.2f}') |
| 1196 recon_plane = self._reconstructOnePlane(sinogram_T, tomo_center, thetas_deg, | 1196 recon_plane = self._reconstructOnePlane(sinogram_T, tomo_center, thetas_deg, |
| 1197 eff_pixel_size, cross_sectional_dim, False, num_core) | 1197 eff_pixel_size, cross_sectional_dim, False, num_core) |
| 1198 title = f'edges row{row} center offset{center_offset_vo:.2f} Vo' | 1198 title = f'edges row{row} center offset{center_offset_vo:.2f} Vo' |
| 1199 self._plotEdgesOnePlane(recon_plane, title, path='find_center_pngs') | 1199 self._plotEdgesOnePlane(recon_plane, title, path='find_center_pngs') |
| 1200 del recon_plane | 1200 del recon_plane |
| 1201 print(f'center_type_selector = {center_type_selector}') | 1201 print(f'center_type_selector = {galaxy_param["center_type_selector"]}') |
| 1202 if not galaxy_param['center_type_selector']: | 1202 if not galaxy_param['center_type_selector']: |
| 1203 del sinogram_T | 1203 del sinogram_T |
| 1204 return float(center_offset_vo) | 1204 return float(center_offset_vo) |
| 1205 else: | 1205 else: |
| 1206 print(f'Center at row {row} using Nghia Vo’s method = {center_offset_vo:.2f}') | 1206 print(f'Center at row {row} using Nghia Vo’s method = {center_offset_vo:.2f}') |
| 1798 if row == '': | 1798 if row == '': |
| 1799 row = n2-1 | 1799 row = n2-1 |
| 1800 if self.save_plots_only: | 1800 if self.save_plots_only: |
| 1801 msnc.clearFig(f'theta={theta_start}') | 1801 msnc.clearFig(f'theta={theta_start}') |
| 1802 # center_stack order: row,theta,column | 1802 # center_stack order: row,theta,column |
| 1803 center_offset = self._findOenterOnePlane(center_stack[row,:,:], row, thetas_deg, | 1803 center_offset = self._findCenterOnePlane(center_stack[row,:,:], row, thetas_deg, |
| 1804 eff_pixel_size, cross_sectional_dim, num_core=num_core, | 1804 eff_pixel_size, cross_sectional_dim, num_core=num_core, |
| 1805 galaxy_param=galaxy_param) | 1805 galaxy_param=galaxy_param) |
| 1806 logging.info(f'upper_center_offset = {center_offset:.2f}') | 1806 logging.info(f'upper_center_offset = {center_offset:.2f}') |
| 1807 del center_stack | 1807 del center_stack |
| 1808 | 1808 |
