fillgap
Compute interpolations to replace special pixels.
Note: This application will not extrapolate DN values beyond the endpoints of a data set. For example, if you choose to fill gaps that run across lines, then any special pixel values in the first or last vertical column of the image will not be filled. If any of these are not in a corner, you can run fillgap again using the output of the first run as input and SAMPLE as the DIRECTION parameter. Corner pixels can be filled by using the specpix application or the lowpass filter application.
Categories
History
Stacy Alley | 2007-08-08 | based off slither - first version of fillgap |
Christopher Austin | 2008-01-30 | Changed INTERP option CUBIC's name to CUBICCONVOLUTION to correlate with other apps using the INTERP param. |
Jeannie Walldren | 2008-11-05 | Removed references to DataInterp class and replaced them with NumericalApproximation class. |
Jeannie Walldren | 2009-04-21 | Added an exception catch so the application may continue if the interpolation fails for some pixel. Added a message to the log to inform users how many pixels were not filled. Updated user documentation to explain what they may do if this occurs. Changed the INTERP parameter CUBICCONVOLUTION back to CUBIC since this application uses a cubic spline, not cubic convolution. Added test cases and documentation examples. |
Parameters
Files
Type | cube |
---|---|
File Mode | input |
Filter | *.cub |
Type | cube |
---|---|
File Mode | output |
Filter | *.cub |
Interpolation Scheme
Type | string | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Default | CUBIC | ||||||||||||
Option List: |
|
Direction
Type | string | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Default | SAMPLE | ||||||||||||
Option List: |
|
Example 1
Fill horizontal gaps of peaks image
Command Line
fillgap from=../IN/peaks-h-null.cub to=OUT/output.cub interp=cubic direction=sample
GUI Screenshot
Example Gui
Fillgap GuiScreenshot of GUI with parameters filled in to perform a fillgap operation on the input image.
Input Image
Input image for fillgap
Input Peaks image
Parameter Name:
FROM
This is the input image for the fillgap example with null horizontal line.
Output Image
Example 2
Fill gaps of Cassini ISS image
Command Line
fillgap from=../IN/N1506393614_2.sp.cub
to=OUT/N1506393614_2.sp.line.cub interp=cubic direction=line
GUI Screenshot
Example Gui
Fillgap GuiScreenshot of GUI with parameters filled in to perform a fillgap operation on the input image.
Input Image
Input image for fillgap
Input Cassini ISS image
Parameter Name:
FROM
This is a Cassini ISS image that has been altered to include each type of special pixels on an edge of the image.
Output Image
Output image for fillgap
Output image showing results of the fillgap application.
Parameter Name:
TO
This is the output image that results after a cubic interpolation to fill the special pixel data gaps. Notice the special pixels that move across samples and touch edges are not filled. This includes the block of null pixels at the top left corner of the image. This happens because the valid data only does not exist on both sides of these gaps and extrapolation is not permited. However, the special pixels that touch the upper and lower edges are filled since these gaps move across lines.
Example 3
Fill gaps of Cassini ISS image
Command Line
fillgap from=../IN/N1506393614_2.sp.line.cub
to=OUT/N1506393614_2.sp.linesamp.cub interp=cubic direction=sample
GUI Screenshot
Example Gui
Fillgap GuiScreenshot of GUI with parameters filled in to perform a fillgap operation on the input image.
Input Image
Input image for fillgap
Input Cassini ISS image
Parameter Name:
FROM
This is a Cassini ISS image that has been altered to include each type of special pixels on an edge of the image. Some of these pixels have already been filled by a previous run of fill gap (see Example 2).
Output Image
Output image for fillgap
Output image showing results of the fillgap application.
Parameter Name:
TO
This is the output image that results after a cubic interpolation to fill the special pixel data gaps. Notice all special pixels have been filled except the top left corner of the image. Special pixels in the corners of an image can not be filled by the fillgap application since they are beyond the endpoints of any known data values (i.e. DNs values of samples and lines).