Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

ISIS Documentation

rgb2hsv

Convert RGB to HSV

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

NOTE: The original input file dn range is compressed down to a value between 0.0 and 1.0 When it comes back out through hsv2rgb, it remains in the range of 0.0 to 1.0 We currently do not have the capability to return the dn values to their original value.

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 a perfect color, 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


History

Sean Crosby2006-12-22 Original version
Steven Lambright2007-06-20 Added comment explaining what HSV is and what the code is doing
Steven Koechle2007-08-22 Added documentation explaining why running images through rgb2hsv and then running it back through hsv2rgb gives a different result that the original.
Steven Lambright2008-05-13 Removed references to CubeInfo

Parameters

Input Files

This file will be converted from Red to Hue
Type cube
File Mode input
Filter *.cub

This file will be converted from Green to Saturation
Type cube
File Mode input
Filter *.cub

This file will be converted from Blue to Value
Type cube
File Mode input
Filter *.cub

Output Files

The resultant Hue cube
Type cube
File Mode output
Pixel Type real
Filter *.cub

The resultant Saturation cube
Type cube
File Mode output
Pixel Type real
Filter *.cub

The resultant Value cube
Type cube
File Mode output
Pixel Type real
Filter *.cub

Stretch

This determines which values will be used for minimum and maximum cut-off limits
Type string
Default Automatic
Option List:
Option Brief Description
AutomaticUse default percentagesUse minimum and maximum percentages of 0.5 and 99.5 for each input files' histogram cut-off values.

Exclusions

  • RMIN
  • RMAX
  • GMIN
  • GMAX
  • BMIN
  • BMAX
ManualUse manually defined percentagesThe user defines minimum and maximum pixel values

Exclusions

  • RMINPER
  • RMAXPER
  • GMINPER
  • GMAXPER
  • BMINPER
  • BMAXPER

Auto settings

Minimum cut-off value for the histogram
Type double
Default 0.5
Minimum 0.0 (inclusive)
Less Than RMAXPER

Maximum cut-off value for the histogram
Type double
Default 99.5
Maximum 100.0 (inclusive)

Minimum cut-off value for the histogram
Type double
Default 0.5
Minimum 0.0 (inclusive)
Less Than GMAXPER

Maximum cut-off value for the histogram
Type double
Default 99.5
Maximum 100.0 (inclusive)

Minimum cut-off value for the histogram
Type double
Default 0.5
Minimum 0.0 (inclusive)
Less Than BMAXPER

Maximum cut-off value for the histogram
Type double
Default 99.5
Maximum 100.0 (inclusive)

Manual settings

Minimum cut-off pixel value
Type double
Minimum 0.0 (inclusive)
Less Than RMAX

Maximum cut-off pixel value
Type double
Maximum 255.0 (inclusive)

Minimum cut-off pixel value
Type double
Minimum 0.0 (inclusive)
Less Than GMAX

Maximum cut-off pixel value
Type double
Maximum 255.0 (inclusive)

Minimum cut-off pixel value
Type double
Minimum 0.0 (inclusive)
Less Than RMAX

Maximum cut-off pixel value
Type double
Maximum 255.0 (inclusive)

Example 1

Convert RGB image to HSV

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

Command Line

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

GUI Screenshot

RGB2HSV Gui

Example Gui

RGB2HSV Gui

Screenshot of GUI with parameters filled in to perform a conversion from RGB to HSV using the different bands of peaks.cub.

Input Image

Input Peaks (Bands 3, 4, and 5) image

Input image for rgb2hsv

Input Peaks (Bands 3, 4, and 5) image

This is the color input image for the rgb2hsv example.

Output Images

Output image showing results of rgb2hsv.

Output image

Output image showing results of rgb2hsv.

Parameter Name: HUE

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

Output image showing results of rgb2hsv.

Output image

Output image showing results of rgb2hsv.

Parameter Name: SATURATION

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

Output image showing results of rgb2hsv.

Output image

Output image showing results of rgb2hsv.

Parameter Name: VALUE

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