USGS-ISIS3 calibration and navigation
All the cubes available on this website were calibrated using the latest release of the USGS ISIS3 software.
On the USGS website, a series of tutorials are dedicated to the Cassini VIMS data. Detail documentation on ISIS3 functions, keywords and optional parameters can be found in the documentation.
In this page, we will only present the generic pipeline used to provide calibrated and navigation data available on this website.
Cassini VIMS raw data
Like every other NASA missions, the Cassini raw data are archived on the Planetary Data System imaging node (PDS) under the supervision of the Jet Propulsion Laboratory and the USGS.
The complete dataset of the VIMS data is composed of
covering in average 2-3 months of data. The data are
stored on the PDS
in folders called
covims_* for each release. Each folder includes a
data/ folder with
a collection of sub-folders containing 64 cubes each sorted by dates.
For example, the very least VIMS cube recorded by Cassini (
1884114114_1) is located in the folder
No general rules apply on the way these data are store, especially due to the non-linear acquisition rate of the
Therefore, it is mandatory to use a database of the complete dataset to back-trace the exact location the cube
based on their cube id. If you are looking for a cube raw data (
.qub) containing a known icy moons
1490951542_2), go to
to be redirected automatically to the correct location of this cube on the PDS archive.
The same shortcut applies for the label/metadata file (
.lbl) associated with the cube, simply go to
to locate it on the PDS.
For a cube which does not contain icy moon in the field of view (e.g. only Saturn, the rings…), you will need
to use an other search engine like
You can also build your own database from the
_md5.txt file attached to each release
(e.g., a python implementation is available in this repo).
Therefore to download the raw data, you only need to do:
Calibration of the data
The first step of the calibration is to convert the PDS3 raw Experiment
Data Record (EDR) images (ie. the
.qub file) into a ISIS3 cube (
.cub) with the
vims2isis function will split the raw data into 2 separate files.
The first one corresponds to the visible part of spectrum recorded by the VIMS-VIS instrument
and the second one is the infrared counterpart recorded by VIMS-IR instrument.
Most of the time, both files are present and observed the same location.
However for some observations, the sampling mode of the two instruments are different or
one of them is turned-off. Therefore it is more reliable to split each cube to process their
data independently. In the rest of the calibration we will only use the infrared part of the
v*_ir.cub) but the same process can be apply to the visible part of the cube
Note: Only the
.qub file is required by
.lbl file is already contained in the
.qub file header).
The second step will provide the navigation information from
to extract spacecraft and planetary ephemerids, the instrument C-matrix and event kernels.
These data are included into the cube header with the
spiceinit function and
will be required for the radiometrically calibration (step 3).
The third step, we use the
vimscal function to convert the digital count number of each pixel
into a the physical radiometric intensity (I/F):
The current version of the calibration pipeline used by ISIS is RC19. The complete documentation on the RC19 calibration can be found here.
In order to improve the quality of the calibration and to reduce the noise and spikes
in the cubes, we apply two additional steps: a
noisefilter and a
when the smaller spacial dimension of the cube is larger than 5.
noisefilter (included in ISIS3 functions) will remove the random pixel noise.
We use the boxcar size of
5×5 pixels that we compare to the standard deviation.
The tolerance value (
tolmax) are set to
If the pixel does not fit these criteria, it will be replaced by a
In the final step, we replace these
NULL values by the average of the surrounding
valid pixels (
3×3) using the
lowpass filter of ISIS:
This latest file (
C*_ir.cub) corresponds to the one provided at the bottom of the page
dedicated to this cube.
And, as before, if you only need to download this file alone, you can to get it at
Navigation of the data
As soon as the
spiceinit succeded, you can navigate the data with the ISIS function
phocube. By default we export the phase angle, the emission angle, the incidence angle,
the latitude, the longitude, the pixel resolution into a navigation file (
Note 1: The
+1 in the
from field is required to select only
the first channel of the cube. Otherwise, the function
phocube will fail.
Note 2: At the moment, the
phocube function only provides the navigation values on the ground
of the icy moon and put
NULL values outside.
Especially, the geometry of the pixels at the limb are not computed.
The visible and infrared navigation files are always attached on the page dedicated to a specific cube.
You can also choose to download it separately with the following shortcut:
How to retrieve the calibration information from the files?
In every cube file, the header contrains the complete calibration process through the different functions
with their outputs. Therefore you only need to parse the ascii part of the file to retreive the information.
For example, it is possible to get the calibration version using the
on the binary header of the cube:
How to use the calibrated VIMS cubes?
Thanks to this webiste, getting the calibrated VIMS data is never been so easy.
Now, the real question is, how to use them to create actual images and scientific results.
For that end, you can use all regular ISIS tools, like
qview to display them and
create your own composite.
But if you need more advanced tools, you can use the python library
This package is still in beta and under active development. Contributions and feedbacks are welcome.
After installing it, try to reproduce this
to get your hands on the data.