Home

User Documentation

Getting Started
Learn More
Explore in Detail
Get Inspired

Contributor Documentation

Getting Started
Learn More
Explore in Detail
Get Inspired

Quick Links

Software Manual
AstroDiscuss
GitHub
API Reference

Documentation Versions

Public Release
8.2.0
8.1.0
8.0.0
7.2.0
7.1.0
7.0.0
6.0.0
3.9.0
3.5.0

ISIS 2

Documentation
Tutorials
Technical Documents
USGS

ISIS Application Documentation


divfilter

Printer Friendly View | TOC | Home

Apply a spatial high pass filter to a cube (divide)

Overview Parameters Example 1

Description

This program divides the pixel being processed by a low pass filter. This has the general effect of highlighting the edges of grouped contrasted DN values in the image, and therefore, feature changes will be emphasized. Predominant changes will be emphasized with larger boxcars, and smaller changes can be searched for using smaller boxcars.

This is done by convolving an NxM boxcar through the data, where N and M are odd integers. In other words, the average DN value of the boxcar is divided into its middle pixel DN value. Please refer to the following diagram:

Thus, P(output) = P(input) / lowPassFilter, or P(s,l) = P(s,l) / average(s,l,N,M) where P is the target pixel, s and l are the sample and line position in the boxcar, N and M are the size of the boxcar (in this case 3x3) and average(s,l,N,M) is the average of the NxM centered box.

For details on the box filtering see the following references:

      M. J. McDonnell, Box-Filtering Techniques, Computer Graphics
      and Image Processing, Vol. 17, 1981, pages 65-70

      E. M. Eliason and L. A. Soderblom, An Array Processing System
      for Lunar Geochemical and Geophysical Data,
      Porc. Lunar Sci. Conf. (8th) , 1977, pages 1163-1170.
    


Categories


Related Applications to Previous Versions of ISIS

This program replaces the following application existing in previous versions of ISIS:
  • boxfilter

Related Objects and Documents

Applications


History

Eric Eliason1988-05-20 Original version
Tracie Sucharski2002-08-12 Ported to Isis 3.0
K Teal Thompson2003-04-10 Add example.
Kim Sides2003-05-13 Added application test
Stuart Sides2003-05-16 Modified schema location from astogeology... to isis.astrogeology..."
Jeff Anderson2003-06-03 Updated application test to fix errors
Stuart Sides2003-07-29 Modified filename parameters to be cube parameters where necessary
Brendan George2006-03-20 Added Minopt parameter
Jac Shinaman2007-02-22 Updated xml documentation with examples and new GUI configuration

Parameter Groups

Files

Name Description
FROM Input file
TO Output cube

Boxcar Size

Name Description
SAMPLES Number of samples in boxcar
LINES Number of lines in boxcar

Boxcar Restrictions

Name Description
LOW Valid minimum pixel
HIGH Valid maximum pixel
MINOPT Sets minimum to be either a count or a percentage
MINIMUM Minimum boxcar pixel count

Special Pixels

Name Description
PROPAGATEPropagate special pixels
X

Files: FROM


Description

Input cube to filter

Type cube
File Mode input
Filter *.cub
Close Window
X

Files: TO


Description

The resultant filtered cube

Type cube
File Mode output
Pixel Type real
Close Window
X

Boxcar Size: SAMPLES


Description

This is the total number of samples in the boxcar. It must be odd and can not exceed twice the number of samples in the cube. In general, due to the computational algorithm, the size of the boxcar does not cause the program to operate significantly slower. (See Eliason/Soderblom document)

Type integer
Minimum 1 (inclusive)
Odd This value must be an odd number
Close Window
X

Boxcar Size: LINES


Description

This is the total number of lines in the boxcar. It must be odd and can not exceed twice the number of lines in the cube. In general, due to the computational algorithm, the size of the boxcar does not cause the program to operate significantly slower. (See Eliason/Soderblom document)

Type integer
Minimum 1 (inclusive)
Odd This value must be an odd number
Close Window
X

Boxcar Restrictions: LOW


Description

Valid minimum pixel value that will be used in boxcar computation. If a pixel value is less than LOW then it will not be used when computing boxcar statistics.

Type double
Internal Default Use all pixels
Less Than HIGH
Close Window
X

Boxcar Restrictions: HIGH


Description

Valid maximum pixel value that will be used in boxcar computation. If a pixel value is greater than HIGH then it will not be used when computing boxcar statistics.

Type double
Internal Default Use all pixels
Greater Than LOW
Close Window
X

Boxcar Restrictions: MINOPT


Description

This parameter determines whether the minimum parameter is to be interpreted as a count of pixels, or a percentage of all pixels in the boxcar.

Type string
Default COUNT
Option List:
Option Brief Description
COUNT Minimum valid pixel count This option indicates that the minimum is a minimum count of pixels required for filtering.
PERCENTAGE Minimum valid pixel percentage This option indicates the the minimum parameter is to be interpreted as a percentage of the total pixels in the boxcar.
Close Window
X

Boxcar Restrictions: MINIMUM


Description

This is the minimum number of valid pixels which must occur inside the NxM boxcar for filtering to occur. For example, 3x5 boxcar has 15 pixels inside. If MINIMUM=10 then the filter will occur if there are 10 or greater valid pixels. A valid pixel is one that is not special (NULL, LIS, etc) and is in the range defined by LOW to HIGH.

Type integer
Default 1
Minimum 1 (inclusive)
Close Window
X

Special Pixels: PROPAGATE


Description

This option is used to define how special pixels are handled. If the center pixel of the boxcar(input) is a special pixel, the output pixel will contain the same special pixel, or set to NULL depending on the value of this parameter.

Type boolean
Default TRUE
Close Window

Example 1

101x101

Description

Use a 101x101 boxcar

Command Line

divfilter f=peaks.cub:4 t=divfilter s=101 li=101
In this example the boxcar size is 101 by 101.

GUI Screenshot

Divfilter Gui

Example Gui

Screenshot of GUI with parameters filled in to perform a divide filter of the input image with a boxcar of 101x101.

Input Image

Input image

Input image for divfilter

Parameter Name: FROM

This is the input image for the divfilter example.

Output Image

Output image showing results of the divfilter application.

Output image for divfilter

Parameter Name: TO

This is the output image for this example of divfilter. It is the same as running lowpass and dividing the input image by the lowpass output using the ratio application.