summaryrefslogtreecommitdiffstats
path: root/funtools/doc/pod/funimage.pod
diff options
context:
space:
mode:
Diffstat (limited to 'funtools/doc/pod/funimage.pod')
-rw-r--r--funtools/doc/pod/funimage.pod314
1 files changed, 0 insertions, 314 deletions
diff --git a/funtools/doc/pod/funimage.pod b/funtools/doc/pod/funimage.pod
deleted file mode 100644
index 7ec3f93..0000000
--- a/funtools/doc/pod/funimage.pod
+++ /dev/null
@@ -1,314 +0,0 @@
-=pod
-
-=head1 NAME
-
-
-
-B<funimage - create a FITS image from a Funtools data file>
-
-
-
-=head1 SYNOPSIS
-
-
-
-
-
-funimage [-a] <iname> <oname> [bitpix=n]
-funimage [-l] <iname> <oname> <xcol:xdims> <ycol:ydims> <vcol> [bitpix=n]
-funimage [-p x|y] <iname> <oname> [bitpix=n]
-
-
-
-
-
-=head1 OPTIONS
-
-
-
-
-
- -a # append to existing output file as an image extension
- -l # input is a list file containing xcol, ycol, value
- -p [x|y] # project along x or y axis to create a 1D image
-
-
-
-
-=head1 DESCRIPTION
-
-
-
-
-B<funimage> creates a primary FITS image from the specified
-FITS Extension
-and/or
-Image Section
-of a FITS file, or from an
-Image Section
-of a non-FITS array, or from a raw event file.
-
-The first argument to the program specifies the FITS input image,
-array, or raw event file to process. If "stdin" is specified, data are
-read from the standard input. Use Funtools
-Bracket Notation to specify FITS extensions, image sections, and
-filters. The second argument is the output FITS file. If "stdout" is
-specified, the FITS image is written to the standard output. By
-default, the output pixel values are of the same data type as those of the
-input file (or type "int" when binning a table), but this can be
-overridden using an optional third argument of the form:
-
- bitpix=n
-
-where n is 8,16,32,-32,-64, for unsigned char, short, int, float and double,
-respectively.
-
-
-If the input data are of type image, the appropriate section is
-extracted and blocked (based on how the
-Image Section is specified), and
-the result is written to the FITS primary image. When an integer
-image containing the BSCALE and BZERO keywords is converted to float,
-the pixel values are scaled and the scaling keywords are deleted from the
-output header. When converting integer scaled data to integer
-(possibly of a different size), the pixels are not scaled and the
-scaling keywords are retained.
-
-
-If the input data is a binary table or raw event file, these are
-binned into an image, from which a section is extracted and blocked,
-and written to a primary FITS image. In this case, it is necessary to
-specify the two columns that will be used in the 2D binning. This can
-be done on the command line using the B<bincols=(x,y)> keyword:
-
- funcnts "foo.ev[EVENTS,bincols=(detx,dety)]"
-
-The full form of the B<bincols=> specifier is:
-
- bincols=([xname[:tlmin[:tlmax:[binsiz]]]],[yname[:tlmin[:tlmax[:binsiz]]]])
-
-where the tlmin, tlmax, and binsiz specifiers determine the image binning
-dimensions:
-
- dim = (tlmax - tlmin)/binsiz (floating point data)
- dim = (tlmax - tlmin)/binsiz + 1 (integer data)
-
-Using this syntax, it is possible to bin any two columns of a binary
-table at any bin size. Note that the tlmin, tlmax, and binsiz
-specifiers can be omitted if TLMIN, TLMAX, and TDBIN header parameters
-(respectively) are present in the FITS binary table header for the
-column in question. Note also that if only one parameter is specified,
-it is assumed to be tlmax, and tlmin defaults to 1. If two parameters
-are specified, they are assumed to be tlmin and tlmax.
-See Binning FITS Binary Tables and Non-FITS
-Event Files for more information about binning parameters.
-
-
-By default, a new 2D FITS image file is created and the image is written
-to the primary HDU. If the B<-a> (append) switch is specified,
-the image is appended to an existing FITS file as an IMAGE extension.
-(If the output file does not exist, the switch is effectively ignored
-and the image is written to the primary HDU.) This can be useful in a
-shell programming environment when processing multiple FITS images
-that you want to combine into a single final FITS file.
-
-
-B<funimage> also can take input from a table containing columns of
-x, y, and value (e.g., the output from B<fundisp -l> which
-displays each image x and y and the number of counts at that
-position.) When the B<-l> (list) switch is used, the input file is
-taken to be a FITS or ASCII table containing (at least) three columns
-that specify the x and y image coordinates and the value of that
-image pixel. In this case, B<funimage> requires four extra
-arguments: xcolumn:xdims, ycolumn:ydims, vcolumn and bitpix=n. The x
-and y col:dim information takes the form:
-
- name:dim # values range from 1 to dim
- name:min:max # values range from min to max
- name:min:max:binsiz # dimensions scaled by binsize
-
-In particular, the min value should be used whenever the
-minimum coordinate value is something other than one. For example:
-
- funimage -l foo.lst foo.fits xcol:0:512 ycol:0:512 value bitpix=-32
-
-
-
-The list feature also can be used to read unnamed columns from standard
-input: simply replace the column name with a null string. Note
-that the dimension information is still required:
-
- funimage -l stdin foo.fits "":0:512 "":0:512 "" bitpix=-32
- 240 250 1
- 255 256 2
- ...
- ^D
-
-
-
-The list feature provides a simple way to generate a blank image.
-If you pass a Column-based Text File
-to funimage in which the text header contains the required image
-information, then funimage will correctly make a blank image. For
-example, consider the following text file (called foo.txt):
-
- x:I:1:10 y:I:1:10
- ------ ------
- 0 0
-
-This text file defines two columns, x and y, each of data type 32-bit int and
-image dimension 10. The command:
-
- funimage foo.txt foo.fits bitpix=8
-
-will create an empty FITS image called foo.fits containing a 10x10
-image of unsigned char:
-
- fundisp foo.fits
- 1 2 3 4 5 6 7 8 9 10
- ------ ------ ------ ------ ------ ------ ------ ------ ------ ------
- 10: 0 0 0 0 0 0 0 0 0 0
- 9: 0 0 0 0 0 0 0 0 0 0
- 8: 0 0 0 0 0 0 0 0 0 0
- 7: 0 0 0 0 0 0 0 0 0 0
- 6: 0 0 0 0 0 0 0 0 0 0
- 5: 0 0 0 0 0 0 0 0 0 0
- 4: 0 0 0 0 0 0 0 0 0 0
- 3: 0 0 0 0 0 0 0 0 0 0
- 2: 0 0 0 0 0 0 0 0 0 0
- 1: 1 0 0 0 0 0 0 0 0 0
-
-
-
-Note that the text file must contain at least
-one row of data. However, in the present example, event position 0,0 is
-outside the limits of the image and will be ignored. (You can, of course,
-use real x,y values to seed the image with data.)
-
-
-Furthermore, you can use the TEXT filter specification to obviate the need for
-an input text file altogether. The following command will create the same
-10x10 char image without an actual input file:
-
- funimage stdin'[TEXT(x:I:10,y:I:10)]' foo.fits bitpix=8 < /dev/null
-or
- funimage /dev/null'[TEXT(x:I:10,y:I:10)]' foo.fits bitpix=8
-
-
-
-You also can use either of these methods to generate a region mask simply
-by appending a region inside the filter brackets and specfying B<mask=all>
-along with the bitpix. For example, the following command will generate a
-10x10 char mask using 3 regions:
-
- funimage stdin'[TEXT(x:I:10,y:I:10),cir(5,5,4),point(10,1),-cir(5,5,2)]' \
- foo.fits bitpix=8,mask=all < /dev/null
-
-The resulting mask looks like this:
-
- fundisp foo.fits
- 1 2 3 4 5 6 7 8 9 10
- ------ ------ ------ ------ ------ ------ ------ ------ ------ ------
- 10: 0 0 0 0 0 0 0 0 0 0
- 9: 0 0 0 0 0 0 0 0 0 0
- 8: 0 0 1 1 1 1 1 0 0 0
- 7: 0 1 1 1 1 1 1 1 0 0
- 6: 0 1 1 0 0 0 1 1 0 0
- 5: 0 1 1 0 0 0 1 1 0 0
- 4: 0 1 1 0 0 0 1 1 0 0
- 3: 0 1 1 1 1 1 1 1 0 0
- 2: 0 0 1 1 1 1 1 0 0 0
- 1: 0 0 0 0 0 0 0 0 0 2
-
-
-
-You can use B<funimage> to create 1D image projections along the x
-or y axis using the B<-p [x|y]> switch. This capability works for
-both images and tables. For example consider a FITS table named ev.fits
-containing the following rows:
-
- X Y
- -------- --------
- 1 1
- 1 2
- 1 3
- 1 4
- 1 5
- 2 2
- 2 3
- 2 4
- 2 5
- 3 3
- 3 4
- 3 5
- 4 4
- 4 5
- 5 5
-
-
-A corresponding 5x5 image, called dim2.fits, would therefore contain:
-
- 1 2 3 4 5
- ---------- ---------- ---------- ---------- ----------
- 5: 1 1 1 1 1
- 4: 1 1 1 1 0
- 3: 1 1 1 0 0
- 2: 1 1 0 0 0
- 1: 1 0 0 0 0
-
-A projection along the y axis can be performed on either the table or
-the image:
-
- funimage -p y ev.fits stdout | fundisp stdin
- 1 2 3 4 5
- ---------- ---------- ---------- ---------- ----------
- 1: 1 2 3 4 5
-
- funimage -p y dim2.fits stdout | fundisp stdin
- 1 2 3 4 5
- ---------- ---------- ---------- ---------- ----------
- 1: 1 2 3 4 5
-
-
-
-Furthermore, you can create a 1D image projection along any column of
-a table by using the B<bincols=[column]> filter specification and
-specifying a single column. For example, the following command
-projects the same 1D image along the y axis of a table as use of
-the B<-p y> switch:
-
- funimage ev.fits'[bincols=y]' stdout | fundisp stdin
- 1 2 3 4 5
- ---------- ---------- ---------- ---------- ----------
- 1: 1 2 3 4 5
-
-
-
-Examples:
-
-Create a FITS image from a FITS binary table:
-
- [sh] funimage test.ev test.fits
-
-
-
-Display the FITS image generated from a blocked section of FITS binary table:
-
- [sh] funimage "test.ev[2:8,3:7,2]" stdout | fundisp stdin
- 1 2 3
- --------- --------- ---------
- 1: 20 28 36
- 2: 28 36 44
-
-
-
-
-
-=head1 SEE ALSO
-
-
-
-See funtools(n) for a list of Funtools help pages
-
-
-=cut