dstripe
Remove horizontal or vertical stripes/noise from a cube
output = input - noise where noise = highpass(lowpass(input))
Suppose an input image had vertical striping noise, like in the example below. The noise can be removed or suppressed by applying a sequence of lowpass and highpass filters. The idea is to create an image containing only the noise and subtract that noise image from the original.
First, we apply a tall (1xNL) lowpass filter to the input image. This produces an image that is essentially a column average. The high frequency information has been suppressed and the vertical noise is left behind. Note however, the average of the lowpass filter matches the original input so we can not subtract the noise quite yet.
Second, we appy a (NSx1) highpass filter to the lowpass image. This effectively suppress the albedo information in the noise leaving only the noise behind. Note that the noise (third) histogram is centered about zero.
Finally, the noise image is subtracted from the original input image resulting in the desired noise-free image. All the steps the program goes through (along with their respective histograms) are illustrated below:








From left to right: Input, Lowpass, Highpass, Output
Categories
Related Objects and Documents
Applications
History
Randy Kirk | 1988-01-01 | Original version |
Jeff Anderson | 2003-08-29 | Ported to Isis 3.0 |
Sean Crosby | 2007-04-20 | Changed destriping algorithm |
Steven Lambright | 2008-05-13 | Removed references to CubeInfo |
Kaj Williams | 2017-06-05 | Now names the temp files with unique names, enabling parallel execution. |
Parameters
Files
Type | cube |
---|---|
File Mode | input |
Filter | *.cub |
Type | cube |
---|---|
File Mode | output |
Filter | *.cub |
Noise type
Type | string | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
Default | VERTICAL | |||||||||
Option List: |
|
Vertical noise
Type | integer |
---|---|
Internal Default | Number of lines |
Minimum | 1 (inclusive) |
Odd | This value must be an odd number |
Type | integer |
---|---|
Default | 1 |
Minimum | 1 (inclusive) |
Odd | This value must be an odd number |
Type | integer |
---|---|
Default | 1 |
Minimum | 1 (inclusive) |
Odd | This value must be an odd number |
Type | integer |
---|---|
Internal Default | Number of samples |
Minimum | 1 (inclusive) |
Odd | This value must be an odd number |
Horizontal noise
Type | integer |
---|---|
Default | 1 |
Minimum | 1 (inclusive) |
Odd | This value must be an odd number |
Type | integer |
---|---|
Internal Default | Number of samples |
Minimum | 1 (inclusive) |
Odd | This value must be an odd number |
Type | integer |
---|---|
Internal Default | Number of lines |
Minimum | 1 (inclusive) |
Odd | This value must be an odd number |
Type | integer |
---|---|
Default | 1 |
Minimum | 1 (inclusive) |
Odd | This value must be an odd number |
Noise files
Type | boolean |
---|---|
Default | TRUE |
Exclusions |
|
Type | cube |
---|---|
File Mode | input |
Default | lowpass.noise.cub |
Filter | *.cub |
Type | cube |
---|---|
File Mode | input |
Default | dstripe.noise.cub |
Filter | *.cub |
Example 1
Vertical stripe removal
Command Line
dstripe
from=../LO_4090_h1.cub to=../result.cub
GUI Screenshot
Example Gui
dstripe GuiScreenshot of GUI with parameters filled in to perform a destriping operation on the input image.
Input Images
Input image for dstripe
Input LO Image
Parameter Name:
FROM
This is a Lunar Orbitor image with vertical striping.
Noise image from dstripe
Striping Noise Image
Parameter Name:
NOISE
This is a result of the low and highpass filters of the input image.