|
|
|
|
SynopsisReplace pixel values in source regions of an image with values interpolated from surrounding background regions Syntaxdmfilth infile outfile method srclist bkglist [randseed] [clobber] [verbose] DescriptionThis tool replaces pixel values in a source region or stack of source regions in an input image with values interpolated from surrounding background regions. All regions are specified using standard region library syntax. Interpolation methodsThere are two different types of method for calculating the replacement pixels:
These methods are described in more detail below. DISTPixel values in the source region(s) are sampled from the distribution of pixel values in the background region(s). A single background region or stack of background regions may be used, but they must not include pixels in the source region(s). POISSONPixel values in the source region(s) are sampled from the Poisson distribution whose mean is that of the pixel values in the background region. A single background region or stack of background regions may be used, but they must not include pixels in the source region(s). Please see the "bugs" section of this file (e.g. "ahelp -b BUGS dmfilth") if you plan to use the POISSON method. GLOBALPixel values in the source region(s) are sampled from the Poisson distribution whose mean is that of all pixel values not within the source regions. The bkglist parameter is not used in this method. POLYA 2D bi-quadratic function of the form A1+A2(X)+A3(X^2)+A4(Y)+A5(Y^2)+A6(X)(Y)+A7(X)(Y^2)+A8(X^2)(Y)+A9(X^2)(Y^2) is fit to the data within the background region(s), and the results are used to compute pixel values within the source region(s). Users may specify one background region that includes all source regions, or a stack of background regions with one for each source region; in either case the background region(s) must include the pixels in the source region(s). BILINTThe value for each source region pixel is a bilinear interpolation of the form A1+A2*X+A3*Y+A4*X*Y, using the 4 values in the nearest background pixels in the perpendicular directions +/-45 degrees and +/-135 degrees to determine the 4 interpolation coefficients. Since only 4 pixels are used, this method may produce noticable "pattern noise" due to statistical fluctuations in regions of few counts. The bkglist parameter is not used in this method. Example 1dmfilth in1.fits out1.fits DIST "circle(4200.0,3600.0,15.0)" "circle(3800.0,3900.0,7.0)" Interpolate over the region circle(4200.0,3600.0,15.0) by sampling from the pixel distribution in the background region circle(3800.0,3900.0,7.0). Example 2dmfilth in1.fits out1.fits DIST "circle(4200.0,3600.0,15.0)" "circle(3800.0,3900.0,7.0)" randseed=123 This is the same as the first example except that the random-number generator is seeded with the value 123, rather than using the system time. Repeated runs of this example will create exactly the same output file, whereas they would be different if randseed=0. Example 3dmfilth in1.fits out1.fits POLY "circle(4200.0,3600.0,15.0)" "circle(4200.0,3600.0,25.0)" Here we have the same source image and source region as previously, but we use a two-dimensional polynomial fit over the region circle(4200.0,3600.0,25.0) to define the replace values. Note that the source region is entirely within the region used to fit the background. Example 4dmfilth in1.fits out1.fits POISSON @src.lis @bkg.lis Each separate region in the file src.lis is filled with values drawn from a Poisson distribution whose mean is the mean level in the corresponding background region in bkg.lis. Example 5dmfilth in1.fits out1.fits GLOBAL "box(4200.0,3800.0,20.0,10.0)" bkglist="" The box region centered on (4200.0,3800.0) with width 20 and height 10 is replaced with values dran from a Poisson distribution. The mean of this distribution is set to the mean level in all pixels in the image that do not lie within the source region. The bkglist parameter is not used here, and so is set to "". Example 6dmfilth in1.fits out1.fits BILINT @src.lis bkglist="" Interpolate over the source region stack using bilinear interpolation between the nearest non-source pixels in directions of +/-45 degrees and +/-135 degrees. If, for a particular pixel within the source region, the interpolation matrix is singular, the average of the 2 linear interpolations between the nearest background pixels in the x- and y-directions is used instead. The bkglist is not used in this example. Parameters
Detailed Parameter DescriptionsParameter=infile (file required filetype=input)The input image. If using an event file, add a binning specification to the filename, e.g. infile="acis_evt2.fits[bin sky=4]"; see ahelp dmbinning for more information. Parameter=outfile (file required filetype=output)The output dataset. Parameter=method (string required default=GLOBAL)The interpolation method. The allowed values of this enumerated type are POLY, DIST, GLOBAL, POISSON, and BILINT. Parameter=srclist (string required stacks=yes)The srclist is a stack of region specifications to be interpolated over. Parameter=bkglist (string required stacks=yes)Region(s) from which to define the background (if the method is not GLOBAL or BILINT). The bkglist is a stack of region specifications to be sampled from for the methods POISSON and DIST. For these methods, the background regions may not include any pixels contained in source regions. For the POLY method, a 2D polynomial is fit over the bkglist region(s), which must include all source region pixels. For all three methods, if the number of background regions in bkglist is 1, that background region will be applied to all source regions. If the number of background regions in bkglist is equal to the number of source regions, each background region will be used with the corresponding source region. In all other cases, a fatal error will be reported. The bkglist is not used for the GLOBAL and BILINT methods. Parameter=randseed (integer default=1 min=0 max=65536)The seed for the random number generator. Specifies the seed for the random number generator used by the POISSON, DIST, and GLOBAL methods. A value of 0 uses the system time to set the seed. Parameter=clobber (boolean default=no)Specifies if an existing output file should be overwritten. Parameter=verbose (integer default=0 min=0 max=5)Specifies the level of verbosity in displaying diagnostic messages (0-5). CHANGES IN CIAO 4.0 Beta 1Method improvementsThe calculation of the POISSON distribution has been updated to be more numerically stable. Previously, the tool would fail if pixels had more than ~100 counts/pixel and this distribution was used. The DIST, POISSON, and GLOBAL distribution arrays have all been updated from static to dynamic allocation. A normalized Gaussian distribution is substituted for the Poisson distribution when average background is greater than 500 counts/pixel to avoid numerical problems. BugsThe statistical distribution of total counts in regions filled with method=POISSON is broader than expected. In particular, tests with simulated blank fields containing hundreds of counts in each source region reveal that the quantity [(counts in filled region)-(original counts in region)]/sqrt(original counts in region) has a standard deviation approximately 70% broader than expected from simple Gaussian statistics. Users should proceed with caution in performing rigorous quantitative analysis with dmfilth. See the bugs page for this tool on the CIAO website for an up-to-date listing of known bugs. See Also
|
![]() |
The Chandra X-Ray
Center (CXC) is operated for NASA by the Smithsonian Astrophysical Observatory. 60 Garden Street, Cambridge, MA 02138 USA. Email: cxcweb@head.cfa.harvard.edu Smithsonian Institution, Copyright © 1998-2004. All rights reserved. |