rgb2hsv
RGB カラーを HSV に変換
説明
例
prism
カラーマップのダウンサンプリング バージョンを取得します。
rgb = prism(6)
rgb = 6×3
1.0000 0 0
1.0000 0.5000 0
1.0000 1.0000 0
0 1.0000 0
0 0 1.0000
0.6667 0 1.0000
カラーマップの RGB 値を HSV に変換します。
hsv = rgb2hsv(rgb)
hsv = 6×3
0 1.0000 1.0000
0.0833 1.0000 1.0000
0.1667 1.0000 1.0000
0.3333 1.0000 1.0000
0.6667 1.0000 1.0000
0.7778 1.0000 1.0000
2 行 2 列のトゥルーカラー イメージを作成します。
rgb(:,:,1) = [1 1; 0 .5]; rgb(:,:,2) = [0 1; 0 .5]; rgb(:,:,3) = [0 0; 1 .5]; image(rgb);
このイメージを HSV 配列に変換します。
hsv = rgb2hsv(rgb)
hsv = hsv(:,:,1) = 0 0.1667 0.6667 0 hsv(:,:,2) = 1 1 1 0 hsv(:,:,3) = 1.0000 1.0000 1.0000 0.5000
入力引数
変換する RGB イメージ。m×n×3 の数値配列として指定します。RGB
の 3 番目の次元はそれぞれ、各ピクセルの赤、緑、および青の強度を定義します。
関数 rgb2hsv
は、データ型が double
および single
のトゥルーカラー イメージについて、値の範囲が [0, 1] であると想定します。
データ型: single
| double
| uint8
| uint16
RGB カラーマップ。値の範囲が [0, 1] の c 行 3 列の数値行列として指定します。rgbmap
の各行は、カラーマップの各色を構成する赤、緑、青の成分を指定する RGB 3 成分です。
データ型: double
出力引数
HSV イメージ。値の範囲が [0, 1] の m×n×3 の数値配列として返されます。HSV
の 3 番目の次元はそれぞれ、表で説明されているとおり、各ピクセルの色相、彩度、および値を定義します。
属性 | 説明 |
---|---|
色相 | カラー ホイール上の色の位置に対応する、0 から 1 までの範囲の値。色相が 0 から 1 まで増加すると、色が赤からオレンジ、黄、緑、シアン、青、マゼンタの順に推移し、最後に赤に戻ります。 |
彩度 | 色相の量または中間からの逸脱。0 は中間の色調を表し、1 は最大彩度を表します。 |
値 | 特定の色の赤、緑、青成分の中での最大値。 |
HSV
のデータ型は RGB
のデータ型に依存します。
RGB
のデータ型がsingle
の場合、HSV
のデータ型はsingle
です。それ以外の場合、
HSV
のデータ型はdouble
です。
データ型: double
| single
HSV カラーマップ。値の範囲が [0, 1] の c 行 3 列の数値行列として返されます。hsvmap
の各行は、カラーマップの各色の色相、彩度、および値の成分を指定する HSV 3 成分です。
hsvmap
のデータ型は rgbmap
のデータ型に依存します。
rgbmap
のデータ型がsingle
の場合、hsvmap
のデータ型はsingle
です。それ以外の場合、
hsvmap
のデータ型はdouble
です。
データ型: single
| double
参照
[1] Smith, A. R. “Color Gamut Transform Pairs”. SIGGRAPH 78 Conference Proceedings. 1978, pp. 12–19.
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
GPU コード生成
GPU Coder™ を使用して NVIDIA® GPU のための CUDA® コードを生成します。
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
rgb2hsv
関数は、GPU 配列を完全にサポートします。GPU 上で関数を実行するには、入力データを gpuArray
(Parallel Computing Toolbox) として指定します。詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
この関数は分散配列を完全にサポートしています。詳細については、分散配列を使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2006a より前に導入
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)