rrmnoise pca

From DavinciWiki
Jump to: navigation, search

Citation

Nowicki, K. J., Edwards, C. S., & Christensen, P. R. (2013). Removal of salt-and-pepper noise in THEMIS infrared radiance and emissivity spectral data of the martian surface. 2013 5th Workshop on Hyperspectral Image and Signal Processing: Evolution in Remote Sensing (WHISPERS), 1-4. doi: 10.1109/WHISPERS.2013.8080598

Description

Performs a running advanced white noise removal for THEMIS radiance cubes

Each band of radiance is converted into a percentage of the luminosity, the integral of the radiance over all bands. This 'relative color space' is then convolved and then multiplied by the luminosity to regain radiance units. The assumption behind the algorithm is that no two adjacent pixels in any band should contribute a signifantly large difference in the percentage of the total luminosity. This assumption is obviously wrong at hot/cold boundaries, but it is useful for extracting pixel-to-pixel white noise and geomorphological information while corrupting the spectra on feature boundaries.

rrmnoise_pca() performs the individual rmnoise_pca() process on every sub-section of the array defined by an y dimension. It then uses an overlap of half of the defined size to blend it with the next section of the data. This is done so there is no visible seam and the white noise removal is esentially "running" or changing over the whole data set. This more advanced version of thm.white_noise_remove2 is much more memory and processor intensive. This happens because of both the time necessary for the computation of the eigen vectors and the overlapping areas esentially have the processor intensive algorithm applied twice.

thm.white_noise_remove2 removes correlated data that is apparent in the removed noise. By finding the correlation in the noise using eigen vectors, a correction can be applied to the image yielding much better results. Using the smaller pieces of the image also allows for better calculation of the eigen vectors.

Changing the y size will ultimately determine how well the eigen vectors are calculated.

Uses rmnoise_pca() as the white noise removal function.


Arguments and Return Values

Arguments: A THEMIS radiance cube (rectified preferred)

Return Value: A THEMIS radiance cube with white noise removed

Usage

Syntax: rrmnoise_pca(data = VAL [, ignore = FLOAT] [, ysize = INT] [, xsize = INT] [, mult = INT] [, verbose = 1])

'data' - Any 10-band radiance array.

'ignore' - An optional non-data pixel value. Default is -32768.

'ysize' - An optional size of the y chunk size. Default is 1000.

'xsize' - An optional size of the x chunk size. Default is 1000.

'verbose' - turn on print statements

'b10' - band 10 location. Default is the last band, set to 0 for no band 10.

'mult' - multiplier value. Default is 10000, good for radiance data.

Examples

dv> a
358x1500x10 array of float, bsq format [21,480,000 bytes]

dv> a1=rrmnoise_pca(a)

Determining Eigen Vectors

EV#  Iterat.  Eigenvalue
---+--------+-----------
1      25      0.756535
2      46      0.282087
3      22      0.192537
4      64      0.089402
5      127      0.071903
6      73      0.063583
7      59      0.053559
8      3      0.043618  

Calculating Principal Components

  -----------
   Component 
  -----------
       1     
       2     
       3     
       4     
       5     
       6     
       7     
       8     
    Add Avg. 
  -------------
358x1500x10 array of float, bsq format [21,480,000 bytes]

NOTE: Extra print statements were not shown since there are many in this iterative process.

Images

The left image is the starting point for both procedures. The middle image has had thm.white_noise_remove2 applied to it. The created artifacts show up in dcs images as a border around topographic features. In this case they are yellow. When looking at the right image, this border around the topographic features has been removed. This is especially noticeable in the craters near the bottom of the images.

WNR2a.pngWNR2b.pngWNR2d.png

DavinciWiki Mini-Nav Bar

Contents


Contact Developers

  • davinci-dev [AT] mars.asu.edu

All other topics

  • See navigation on the left

Recent Library Changes

Created On: 03-07-2006
Modified On: 12-04-2017

Personal tools