Imval

From CASA Guides
Revision as of 11:52, 16 February 2010 by Jgallimo (talk | contribs)
Jump to navigationJump to search
Help on imval task:

Get the data value(s) and/or mask value in an image.
     The data point(s) to be retrieved are those found in the specified
     region, which may be:
        1. A region file from the viewer (region parameter)
        2. A region specified by a set of rectangular
           pixel coordinates, the channel ranges and/or the Stokes.

     For directed output, run as 
                    myoutput = imval()
   

        Keyword arguments:
        imagename -- Name of input image
                Default: none; Example: imagename='ngc5921_task.im'
        region -- region file or name.
                Use the viewer, then region manager to select regions of
                   the image to process.  Similar to box, but graphical
                Or the name of a region stored with the image, 
                      use rg.namesintable()
                to retrieve the list of names.
                Default: none
                Example: region='myimage.im.rgn'
                         region='region1'
        box --  A box region on the directional plane
                Only pixel values acceptable at this time.
                Default: '' (referencepixel values for the Directional coord); 
                Example: box='10,10,50,50'
                         box = '10,10,30,30,35,35,50,50' (two boxes)
                         box = '-1,-1'                   (all points)
        chans -- channel numbers
                Range of channel numbers to include in statistics
                  All spectral windows are included
                Default:''= all;  Example: chans='3~20'; 
                                           chans='-1' (all channels)
        stokes -- Stokes parameters to analyze.
                Default: none (all); Example: stokes='IQUV';  
                                              stokes='I,Q'
                                              stokes='-1' (all stokes values)
                Options: 'I','Q','U','V','RR','RL','LR','LL','XX','YX','XY','YY', ...

      General procedure:

         1.  Specify inputs, then

         2.  myoutput = imval()
               or specify inputs directly in calling sequence to task
             myoutput = imsval(imagename='image.im', etc)

         3.  myoutput['KEYS'] will contain the result associated with any
               of the keys given below
        
        KEYS CURRENTLY AVAILABLE
        blc          - absolute PIXEL coordinate of the bottom left corner of 
                       the bounding box surrounding the selected region
        trc          - the absolute PIXEL coordinate of the top right corner 
                       of the bounding box surrOunding the selected region
        axes         - List the data stored in each axis of the data block.
        unit         - unit of the returned data values.
        data         - data value(s) found in the given region
        mask         - mask value(s) found in the given region

        NOTE: The data returned is in the same order as it is internally
        stored, typically RA, DEC, spectral, stokes. Also both the data
        and mask values are returned as Python Numpy arrays, for more
        information on how to manipulate them see
             http://numpy.scipy.org/#array_interface


        Additional Examples
        # The value and mask value at a single point (5,17,2,Q)
        imval( 'myImage', box='5,5,17,17', chans=2, stokes='Q' )

        # Select and report on two box regions
        # box 1, bottom-left coord is 2,3 and top-right coord is 14,15
        # box 2, bottom-left coord is 30,31 and top-right coord is 42,43
        # Note that only the boxes for the 
        imval( 'myImage', box='2,3,14,15;30,31,42,43' )

        # Select the same two box regions but only channels 4 and 5
        imval( 'myImage', box='2,3,14,15;30,31,42,43', chan='4~5' )

        # Select all channels greater the 20 as well as channel 0.
        # Then the mean and standard deviation are printed
        # Note that the data returned is a Python numpy array which
        # has built in operations such as min, max, and means as
        # demonstrated here.
        results = imval( 'myImage', chans='>20;0' )
        imval_data=results['data']
        mask=results['mask']
        print "Data max: ", imval_data.max(), "  mean is ", imval_data.mean()
        swapped_data=imval_data.swapaxes(0,2)
        swapped_mask=mask.swapaxes(0,2)
        KEYS CURRENTLY AVAILABLE
        blc          - absolute PIXEL coordinate of the bottom left corner of 
                       the bounding box surrounding the selected region
        trc          - the absolute PIXEL coordinate of the top right corner 
                       of the bounding box surrOunding the selected region
        axes         - List the data stored in each axis of the data block.
        unit         - unit of the returned data values.
        data         - data value(s) found in the given region
        mask         - mask value(s) found in the given region

        NOTE: The data returned is in the same order as it is internally
        stored, typically RA, DEC, spectral, stokes. Also both the data
        and mask values are returned as Python Numpy arrays, for more
        information on how to manipulate them see
             http://numpy.scipy.org/#array_interface


        Additional Examples
        # The value and mask value at a single point (5,17,2,Q)
        imval( 'myImage', box='5,5,17,17', chans=2, stokes='Q' )

        # Select and report on two box regions
        # box 1, bottom-left coord is 2,3 and top-right coord is 14,15
        # box 2, bottom-left coord is 30,31 and top-right coord is 42,43
        # Note that only the boxes for the 
        imval( 'myImage', box='2,3,14,15;30,31,42,43' )

        # Select the same two box regions but only channels 4 and 5
        imval( 'myImage', box='2,3,14,15;30,31,42,43', chan='4~5' )

        # Select all channels greater the 20 as well as channel 0.
        # Then the mean and standard deviation are printed
        # Note that the data returned is a Python numpy array which
        # has built in operations such as min, max, and means as
        # demonstrated here.
        results = imval( 'myImage', chans='>20;0' )
        imval_data=results['data']
        mask=results['mask']
        print "Data max: ", imval_data.max(), "  mean is ", imval_data.mean()
        swapped_data=imval_data.swapaxes(0,2)
        swapped_mask=mask.swapaxes(0,2)
        print "Data values for 21st channel: 
", swapped_data[0]
        print "Mask values for 21st channel: 
", swapped_mask[0]