bm2cal : flatfield auto calibration

When some images of the same object are recorded moving only the detector, the data contain not only information on the object but also on the recording instrument. Then this program was intended in order to try flatfield auto calibration from such data.

But up to now it seems more used to reconstruct image obtained moving the detector. This allow to obtain not too noisy detector flatfield by using fluorescence of solutions in which zones associated with direct beam are removed.

Procedure

Input file

The program bm2cal is not intended to use console input. It use a small file which name is given as argument and which contains all internal commands.

Simple reconstruction

In the following example, we wish to build an image called img obtained using the shifted image : img_raw1.edf, img_raw2.edf, img_raw3.edf. For each input file, we specify its position the @SHIFT x y command, x and y and specified in pixel units. Then the resulting image is writen in file img.edf using the @PRINT img.edf command.

In the source image, the invalid pixel have been set to 0 (or 1), to excluded this pixels from the calculation we specify a low limit for valid pixels LOW_LIMIT=2. Pixels lower will be excluded. Is some pixels can not be calculated, they will be set to LOW_LIMIT-1 in the output file.

# img.dat (bm2cal.dat)
# simple reconstruction
LOW_LIMIT=2
@NEW  img
@RAW  img_raw1.edf
@SHIFT  0.0 0.0
@RAW  img_raw2.edf
@SHIFT  0.0 -1.0
@RAW  img_raw3.edf
@SHIFT  1.0 1.0
@PRINT img.edf

Flatfield reconstruction

In the following example,
# demo.dat flatfield reconstruction
# 600s Br fluo (x,y)= (0,0), (0,-5), (0,-10), (0,-15), (-5,-15) mm
# bm2img.log -> fluo_br.log
# pour eviter les pbs de coins... x=300-900, y=300-900 + temps
# shifts en pixel    (0,0), (0,-120), (0,-240), (0,-360), (-120,-360)
# attention low et high limits sont necessaires
#
PRINT=0
XMGR=bm2cal.xmgr
#T_EXCLUDED= 0 0 100 0 0 100
X_MIN=300
X_MAX=900
Y_MIN=300
Y_MAX=900
SCALE=10
LOW_LIMIT=100
HIGH_LIMIT=800

@NEW  fluo_br
@RAW  f0.edf
@C_EXCLUDED = 620 500 50
@RAW  f1.edf
@C_EXCLUDED = 620 620 50
#@DIST
#@SHIFT  0 120 
#@DIST
@SHIFT  0 -120 
#@DIST
#
@RAW  f2.edf
@SHIFT   0  -240
@C_EXCLUDED = 620 740 50
@RAW  f3.edf
@SHIFT  0  -360  
@C_EXCLUDED = 620 860 50
@RAW  f4.edf
@SHIFT  -120 -360 
@C_EXCLUDED = 740 860 50
@DIST
#@PRINT r0.edf
@PRINT r0.gel
@FLAT NEW
#@DIST
@FLAT CALC f1.edf
@FLAT PRINT t1.gel
@FLAT PRINT t1.edf
@PRINT r1.gel
@PRINT r1.edf
@FLAT CALC f2.edf
#@FLAT PRINT t2.gel
#@FLAT PRINT t2.edf
@PRINT r2.gel
#@PRINT r2.edf
@FLAT PRINT t2.gel
##@DIST
@FLAT CALC
#@DIST
@PRINT r3.edf
#
#
#@FIT  X
#@RAW  f3.edf
#@FIT  X
#@RAW  f4.edf
#@FIT  XY
#@FIT  FLAT

The inline help

The command bm2cal -h will display its principal key words.
d2pluo2 BM2IMG/calib> bm2cal -h
## bm2cal : detector flatfield autocalibration
## berar@esrf.fr (d2am),  Jan 31 2002
usage : bm2cal data_file
   the data file has the following structure
   img_files contain only one frame (dark and cosmic corrected)
   see bm2cal.html for parameters
   Inside the program the image are kept as integers with 32 bits
   see also parameters in bm2cal.ini file


$Id: bm2cal.html,v 1.2 2002/10/21 14:58:20 berar Exp $