Home

Quick Links

Software Manual
GitHub
API Reference

Documentation Versions

Public Release
8.3.0
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
USGS

ISIS Application Documentation


hsv2rgb

Standard View | TOC | Home

Convert HSV to RGB

Description
Categories
Groups
Examples
History


Description

This program takes in three input images, representing Hue, Saturation, and Value, then outputs Red, Green, and Blue files respectively. It works by creating an HSV pixel from pixels in the Hue, Saturation, and Value files, converting it to RGB format, then writing the data to the Red, Green, and Blue files.

HSV Stores colors in terms of hue, saturation, and value. The hue determines the color, which is an angle around the color wheel. The basic colors are: 0 degrees = RED, 60 degrees = YELLOW, 120 degrees = GREEN, 180 degrees = CYAN, 240 degrees = BLUE and 300 degrees = PURPLE. The saturation is how much grey is in the color (intensity of the color). A saturation value of zero means it's perfect, while a saturation value of 1 would cause any color to become pure grey. As an example, the color RGB(255,0,0) is pure so the saturation would be zero. The value is how bright the color is. A value of 0 is always black, and 100 is the color (if not saturated).
In brief,
HUE = COLOR (degrees around the color wheel)
SATURATION = INTENSITY (0-1, 0 being no color/grey)
VALUE = BRIGHTNESS (0 being black)

For more information, see
http://en.wikipedia.org/wiki/Color_spaces

Categories


Related Objects and Documents

Applications


Parameter Groups

Input Files

Name Description
HUE Input file to be converted
SATURATION Input file to be converted
VALUE Input file to be converted

Output Files

Name Description
RED Output cube
GREEN Output cube
BLUE Output cube

Multiplier

Name Description
SCALARVALUE DN multiplier

Input Files: HUE

Description

This file will be converted from Hue to Red

Type cube
File Mode input
Filter *.cub

Input Files: SATURATION

Description

This file will be converted from Saturation to Green

Type cube
File Mode input
Filter *.cub

Input Files: VALUE

Description

This file will be converted from Value to Blue

Type cube
File Mode input
Filter *.cub

Output Files: RED

Description

The resultant Hue cube

Type cube
File Mode output
Pixel Type real
Filter *.cub

Output Files: GREEN

Description

The resultant Saturation cube

Type cube
File Mode output
Pixel Type real
Filter *.cub

Output Files: BLUE

Description

The resultant Value cube

Type cube
File Mode output
Pixel Type real
Filter *.cub

Multiplier: SCALAR

Description

This value can be used to alter the DNs of the VALUE image

Type double
Default 1.0
Minimum 0.0 (inclusive)

Examples


Example 1

Convert RGB image to HSV

Description

This example shows the results of converting RGB images to HSV format.

Command Line

hsv2rgb red=../peaks.cub+5 green=../peaks.cub+4 blue=../peaks.cub+3 hue=../hue.cub saturation=../sat.cub value=../val.cub
Convert Hue, Saturation, and Value into their respective Red, Green, and Blue images.

GUI Screenshot

HSV2RGB Gui

Example Gui

Screenshot of GUI with parameters filled in to perform a conversion from HSV to RGB.

Input Images

Hue image

Input image for hsv2rgb

Parameter Name: HUE

This is the input image for the hsv2rgb example.

Saturation image

Input image for hsv2rgb

Parameter Name: SATURATION

This is the input image for the hsv2rgb example.

Value image

Input image for hsv2rgb

Parameter Name: VALUE

This is the input image for the hsv2rgb example.

Output Images

Output image showing results of hsv2rgb.

Output image

Parameter Name: RED

This is the output image that results from converting Hue to Red.

Output image showing results of hsv2rgb.

Output image

Parameter Name: GREEN

This is the output image that results from converting Saturation to Green.

Output image showing results of hsv2rgb.

Output image

Parameter Name: BLUE

This is the output image that results from converting Value to Blue.


History

Sean Crosby2006-01-05 Original version
Steven Lambright2007-06-20 Added comment explaining what HSV is and what the code is doing. Also, added code for boundary cases.