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