From 4aabe3549398f5f77f1cc9a80f4a281671cbdb53 Mon Sep 17 00:00:00 2001 From: Holger Niemann <holger.niemann@ipp.mpg.de> Date: Tue, 10 Jul 2018 15:57:01 +0200 Subject: [PATCH] bug fixes for AEF41 in the bad Pixel correction, bug fixes because of changes in json files downloaded from the Archive --- IR_image_tools.py | 10 ++++++++-- downloadversionIRdata.py | 25 +++++++++++++++++-------- 2 files changed, 25 insertions(+), 10 deletions(-) diff --git a/IR_image_tools.py b/IR_image_tools.py index b7e1c50..f1a030d 100644 --- a/IR_image_tools.py +++ b/IR_image_tools.py @@ -169,7 +169,10 @@ def read_bad_pixels_from_file(port, shot_no=None, program=None): port_name = 'AEF{0}'.format(port) bad_pixel_file = 'badpixel_{0}.bpx'.format(portcamdict[OP][port_name][6:]) data = np.genfromtxt(IRCAMBadPixels_path+bad_pixel_file, dtype=int) - bad_pixle_list = list(zip(data[:,1], data[:,0])) + try: + bad_pixle_list = list(zip(data[:,1], data[:,0])) + except: + bad_pixle_list=[] return bad_pixle_list @@ -281,7 +284,10 @@ def restore_bad_pixels(frames, bad_pixel, by_list=True, check_neighbours=True, p blist = bad_pixel bmask = np.ones([n_rows, n_cols],dtype=bool) for pix in blist: - bmask[pix] = False + try: + bmask[pix] = False + except Exception as E: + Warning(E) bmask = np.invert(bmask) else: if np.shape(bad_pixel)[0] == n_rows and np.shape(bad_pixel)[1] == n_cols: diff --git a/downloadversionIRdata.py b/downloadversionIRdata.py index f75c23c..b021d8a 100644 --- a/downloadversionIRdata.py +++ b/downloadversionIRdata.py @@ -173,7 +173,7 @@ def download_LUT(port,time,exposure=0,emissivity=0,camera_filter=0,version=0, ve LUTid=LUTpar[2][0]['structure'][query] LUTs=read_restdb_old(larchivepath+"DATASTREAM/V"+str(version)+"/0/LUT/_signal.json?from="+str(time-10)+"&upto="+str(time+20)) if LUTs[0]: - LUTs=LUTs[2].swapaxes(1,2)[0] + LUTs=LUTs[2][0]#.swapaxes(1,2)[0] fixed, somehow the archive gives now data in a swaped way back LUT=[LUTs[0],LUTs[LUTid],LUTs[LUTid+1]] del LUTpar, LUTs return True,LUT @@ -1415,7 +1415,7 @@ def get_calib_data(port,program,emissivity=0.8,Temp_V=2,version=0,back_emissivit offset_error=0 exist,time,frames=download_raw_images_by_times(port,t1,int(t1+0.02*1e9),version) if exist: - frames=[im.swapaxes(0,1) for im in frames] +# frames=[im.swapaxes(0,1) for im in frames]#somehow the archive gives it now already swapped back (09.07.2018) bim=apply_NUC([frames[0]],gain,offset) background=get_average_background_recangle(port,bim[0]) else: @@ -1435,7 +1435,7 @@ def get_calib_data(port,program,emissivity=0.8,Temp_V=2,version=0,back_emissivit offset_error=0 exist,time,frames=download_raw_images_by_times(port,t1,int(t1+0.02*1e9),version) if exist: - frames=[im.swapaxes(0,1) for im in frames] +# frames=[im.swapaxes(0,1) for im in frames] bim=apply_NUC([frames[0]],gain,offset) background=get_average_background_recangle(port,bim[0]) else: @@ -1488,7 +1488,10 @@ def find_badpixels(port, gain, offset, init_bp_list=None, niterations=3, if verbose>0: print("use {0} initial bad pixels from file".format(len(init_bp_list))) for pix in init_bp_list: - badpixels[pix] = 1 + try: + badpixels[pix] = 1 + except Exception as E: + Warning(E) gain = IR_tools.restore_bad_pixels(gain*FOV, init_bp_list) last_number=0 @@ -1612,10 +1615,12 @@ if __name__=='__main__': # #status,time,images,valid=get_temp_from_raw_by_program_V1(51,"20171018.019",time_s=0,emi=0.8,divertorpart="all",version=1) # status1,time1,images1,valid1=get_temp_from_raw_by_program_V1(41,"20171024.016",time_s=[0.75,0.99],emi=0.8,version=1) ## exist,time1,frames=download_raw_images_by_program_via_png(41,"20171024.016",time_s=[0.75,0.99],version=1,threads=1) - port=51 + port=11 # prog="20171108.015" + prog="20171109.021" # prog="20171025.030" - prog="20171012.035" +# prog="20171012.035" + prog="20171005.024" status,time,images,valid=get_temp_from_raw_by_program(port,prog,time_s=[0,1],emi=0.82,T_version=2,version=0,threads=1,give_ERROR=False,use_firstframe_as_background=True) # bla=get_exposure_by_program(port,prog) @@ -1629,11 +1634,15 @@ if __name__=='__main__': CAD=np.asarray(szene['CAD']) plt.figure()# plt.imshow(CAD,cmap='gray') - plt.imshow(images[-1],vmin=300,vmax=750,cmap=fu.exJet_trans) + plt.imshow(images[-1],vmin=400,vmax=600,cmap=fu.exJet_trans) + cb=plt.colorbar() + cb.set_label("temperature K", rotation=270,labelpad=26,fontsize=26) + cb.ax.tick_params(labelsize=26) + plt.figure()# # plt.imshow(CAD,cmap='gray') + plt.imshow(images[-1],vmin=400,vmax=600,cmap=fu.exJet) cb=plt.colorbar() cb.set_label("temperature K", rotation=270,labelpad=26,fontsize=26) cb.ax.tick_params(labelsize=26) - # tmax=[] # port=20 # NUCblock=download_NUC_by_program(port,prog,bla[2][0]) -- GitLab