In [2]:
from chxanalys.chx_libs import np, roi, time, datetime, os, getpass, db, get_images,LogNorm, plt,ManualMask
from chxanalys.chx_generic_functions import (get_detector, get_fields, get_sid_filenames,load_data,
RemoveHot, show_img, get_avg_img, reverse_updown)
%matplotlib notebook
In [3]:
from chxtools.handlers import LazyEigerHandler
db.fs.register_handler('AD_EIGER', LazyEigerHandler)
In [4]:
#LazyEigerHandler??
In [ ]:
In [5]:
path = '/XF11ID/analysis/2016_3/masks/'
print ("The analysis results will be saved in : %s"%path)
In [6]:
uid = 'a3e323'
In [7]:
detector = get_detector( db[uid ] )
print ('Detector is: %s'%detector )
sud = get_sid_filenames(db[uid])
print ('scan_id, full-uid, data path are: %s--%s--%s'%(sud[0], sud[1], sud[2][0] ))
In [8]:
#imgs = load_data( uid, detector, reverse= True )
imgs = load_data( uid, detector, reverse= False )
md = imgs.md
In [9]:
imgs
Out[9]:
In [10]:
Nimg=len(imgs)
In [11]:
md['pixel_mask'] = 1- np.int_( np.array( md['pixel_mask'], dtype= bool) )
In [ ]:
In [ ]:
In [12]:
show_img( imgs[0] , vmin=.0001, vmax=1000, logs=True, image_name ='uid=%s'%uid )
In [ ]:
In [13]:
show_img(md['pixel_mask'], vmin=0, vmax=1, image_name ='pixel_mask--uid=%s'%uid )
In [14]:
imgs.shape
Out[14]:
In [15]:
2167 - 799
Out[15]:
In [ ]:
In [16]:
avg_img = get_avg_img( imgs, sampling = 1000, plot_ = True, uid =uid)
In [ ]:
In [17]:
show_img( avg_img*md['pixel_mask'], vmin= .1, vmax= 5,
logs= True, aspect=1.,image_name ='img*pixel_mask--uid=%s'%uid )
In [18]:
avg_img.shape
Out[18]:
In [19]:
show_img( avg_img*md['pixel_mask'], vmin= 1, vmax= 1000, aspect=1.,
logs= True, image_name ='img*pixel_mask--uid=%s'%uid )
In [20]:
show_img( avg_img*md['pixel_mask'], vmin= 1, vmax= 1000, xlim=[1000, 2070], ylim=[1000, 1500], aspect=1.,
logs= True, image_name ='img*pixel_mask--uid=%s'%uid )
In [21]:
avg_img.shape
Out[21]:
In [22]:
mask_rh = RemoveHot( avg_img, 5E4, plot_=True)
In [32]:
fig, ax = plt.subplots()
m = ManualMask(ax, avg_img* md['pixel_mask']*mask_rh,
cmap='viridis',origin='lower',
vmin=.01, vmax=1.50)
plt.show()
In [ ]:
In [33]:
new_mask = m.mask
manu_mask = new_mask.copy()
fig, ax = plt.subplots()
im=ax.imshow(new_mask,origin='lower' ,vmin=0, vmax=1,cmap='viridis')
fig.colorbar(im)
plt.show()
In [34]:
manu_mask = new_mask.copy()
In [24]:
from skimage.draw import line_aa, line, polygon
In [28]:
imgs.shape
Out[28]:
In [45]:
#center of beam stop
bst_mask = np.zeros_like( avg_img , dtype = bool)
#x = np.array( [ 1555, 1588, 1588, 1555])
#y = np.array( [ 1995, 1995, 2167, 2167])
x = np.array( [ 0, 2070, 2070, 0])
y = np.array( [ 1950, 1950, 2167, 2167])
rr, cc = polygon( y,x)
bst_mask[rr,cc] =1
full_mask=~bst_mask
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [ ]:
In [46]:
show_img(full_mask)
In [47]:
mask = np.array ( full_mask * md['pixel_mask']*mask_rh *~manu_mask , dtype = bool )
In [48]:
fig, ax = plt.subplots()
#new_mask =
im=ax.imshow( (~mask) * avg_img,origin='lower' ,
norm= LogNorm( vmin=0.001, vmax=30 ), cmap='viridis')
#im = ax.imshow(avg_img, cmap='viridis',origin='lower', norm= LogNorm( vmin=0.001, vmax=100 ) )
plt.show()
In [49]:
fig, ax = plt.subplots()
#new_mask =
#im=ax.imshow( (Mask) * avg_img,origin='lower' ,
# norm= LogNorm( vmin=0.001, vmax=30 ), cmap='viridis')
#im = ax.imshow((mask)*avg_img, cmap='viridis',origin='lower', norm= LogNorm( vmin=0.001, vmax=100 ) )
im = ax.imshow((mask)*avg_img, cmap='viridis',origin='lower', norm= LogNorm( vmin=1, vmax=1000 ) )
plt.show()
In [50]:
#mask = np.array ( ~new_mask* ~plgon_mask * md['pixel_mask']*mask_rh, dtype = bool )
fig, ax = plt.subplots()
im=ax.imshow(mask, origin='lower' ,vmin=0, vmax=1,cmap='viridis')
fig.colorbar(im)
plt.show()
In [52]:
np.save( path + uid +"_mask", mask)
In [ ]:
#np.save( path + 'July3' +"_mask", mask)
In [ ]:
In [53]:
#np.save( path + 'Octo_11' +"_mask", mask)
In [ ]:
In [ ]:
In [ ]: