- メインページ
- モジュール
- ネームスペース
- データ構造
- ファイル

データ構造 | 関数
MIST全般で利用可能な色を表現するクラス

## データ構造
struct | mist::rgb< T >
| カラー画像用の画素 [詳細]
struct | mist::bgr< T >
| カラー画素の和 [詳細]
struct | mist::rgba< T >
| カラー画素の和 [詳細]
struct | mist::bgra< T >
| カラー画素の和 [詳細]
struct | mist::nRGB< T >
| カラー画素の和 [詳細]
struct | mist::color< T, NDIM >
| カラー画素の和 [詳細]
struct | mist::is_color< T >
| 入力された型がカラー画像かどうか調べる [詳細]

## 関数
template<class T >
std::ostream & | mist::operator<< (std::ostream &out, const rgb< T > &c)
| カラー画素の和
template<class T >
std::ostream & | mist::operator<< (std::ostream &out, const rgba< T > &c)
| 指定されたストリームに，コンテナ内の要素を整形して出力する
template<class T >
std::ostream & | mist::operator<< (std::ostream &out, const nRGB< T > &c)
| 指定されたストリームに，コンテナ内の要素を整形して出力する
template<class T , size_t NDIM>
std::ostream & | mist::operator<< (std::ostream &out, const color< T, NDIM > &c)
| 指定されたストリームに，コンテナ内の要素を整形して出力する
void | mist::rgb2hsv (double r, double g, double b, double &h, double &s, double &v)
| RGB色空間をHSV色空間に変換する
void | mist::hsv2rgb (double h, double s, double v, double &r, double &g, double &b)
| HSV色空間をRGB色空間に変換する
void | mist::rgb2yiq (double r, double g, double b, double &y, double &i, double &q)
| RGB色空間をYIQ色空間に変換する
void | mist::yiq2rgb (double y, double i, double q, double &r, double &g, double &b)
| YIQ色空間をRGB色空間に変換する
void | mist::rgb2ycbcr (double r, double g, double b, double &y, double &cb, double &cr)
| RGB色空間をYCbCr色空間に変換する
void | mist::ycbcr2rgb (double y, double cb, double cr, double &r, double &g, double &b)
| YCbCr色空間をRGB色空間に変換する
void | mist::rgb2xyz (double r, double g, double b, double &x, double &y, double &z)
| RGB色空間をXYZ色空間に変換する
void | mist::xyz2rgb (double x, double y, double z, double &r, double &g, double &b)
| XYZ色空間をRGB色空間に変換する
void | mist::rgb2lab (double r, double g, double b, double &l_, double &a_, double &b_)
| RGB色空間をL*a*b*色空間に変換する
void | mist::lab2rgb (double l_, double a_, double b_, double &r, double &g, double &b)
| L*a*b*色空間をRGB色空間に変換する

## 説明

次のヘッダを参照
#include <mist/config/color.h>

## 関数

void mist::hsv2rgb | ( | double | h,
|  | double | s,
|  | double | v,
|  | double & | r,
|  | double & | g,
|  | double & | b
| ) |  |
| inline

HSV色空間をRGB色空間に変換する

注意
  入力と出力の値の範囲に注意！！

引数

  [in] | h | … HSV色空間のH(色相)成分(0〜360)
  [in] | s | … HSV色空間のS(彩度)成分(0〜１)
  [in] | v | … HSV色空間のV(明度)成分(0〜１)
  [out] | r | … RGB色空間のR(赤)成分(0〜255)
  [out] | g | … RGB色空間のG(緑)成分(0〜255)
  [out] | b | … RGB色空間のB(青)成分(0〜255)

void mist::lab2rgb | ( | double | l_,
|  | double | a_,
|  | double | b_,
|  | double & | r,
|  | double & | g,
|  | double & | b
| ) |  |
| inline

L*a*b*色空間をRGB色空間に変換する

注意
  入力と出力の値の範囲に注意！！

引数

  [in] | l_ | … L*a*b*色空間のL(明度指数)成分(0〜100)
  [in] | a_ | … L*a*b*色空間のa(知覚色度)成分(-134〜220)
  [in] | b_ | … L*a*b*色空間のb(知覚色度)成分(-140〜122)
  [out] | r | … RGB色空間のR(赤)成分(0〜255)
  [out] | g | … RGB色空間のG(緑)成分(0〜255)
  [out] | b | … RGB色空間のB(青)成分(0〜255)

参照先 mist::xyz2rgb().

template<class T >

std::ostream& mist::operator<< | ( | std::ostream & | out,
|  | const rgb< T > & | c
| ) |  |
| inline

カラー画素の和

カラー画素と定数の和 定数とカラー画素の和 カラー画素の差 カラー画素と定数の差 定数とカラー画素の差 カラー画素の積 カラー画素と定数の積 定数とカラー画素の積 カラー画素の割り算 カラー画素を定数で割る カラー画素の剰余 カラー画素の | 演算 カラー画素の & 演算 カラー画素の ^ 演算 指定されたストリームに，コンテナ内の要素を整形して出力する

引数

  [in,out] | out | … 入力と出力を行うストリーム
  [in] | c | … カラー画素

戻り値
  入力されたストリーム

出力例
( 1, 2, 3 )
template<class T >

std::ostream& mist::operator<< | ( | std::ostream & | out,
|  | const rgba< T > & | c
| ) |  |
| inline

指定されたストリームに，コンテナ内の要素を整形して出力する

引数

  [in,out] | out | … 入力と出力を行うストリーム
  [in] | c | … カラー画素

戻り値
  入力されたストリーム

出力例
( 1, 2, 3 )
template<class T >

std::ostream& mist::operator<< | ( | std::ostream & | out,
|  | const nRGB< T > & | c
| ) |  |
| inline

指定されたストリームに，コンテナ内の要素を整形して出力する

引数

  [in,out] | out | … 入力と出力を行うストリーム
  [in] | c | … カラー画素

戻り値
  入力されたストリーム

出力例
( 1, 2, 3, 1, 2, 3 )
template<class T , size_t NDIM>

std::ostream& mist::operator<< | ( | std::ostream & | out,
|  | const color< T, NDIM > & | c
| ) |  |
| inline

指定されたストリームに，コンテナ内の要素を整形して出力する

引数

  [in,out] | out | … 入力と出力を行うストリーム
  [in] | c | … カラー画素

戻り値
  入力されたストリーム

出力例
( 1, 2, 3, 1, 2, 3 )

void mist::rgb2hsv | ( | double | r,
|  | double | g,
|  | double | b,
|  | double & | h,
|  | double & | s,
|  | double & | v
| ) |  |
| inline

RGB色空間をHSV色空間に変換する

注意
  入力と出力の値の範囲に注意！！

引数

  [in] | r | … RGB色空間のR(赤)成分(0〜255)
  [in] | g | … RGB色空間のG(緑)成分(0〜255)
  [in] | b | … RGB色空間のB(青)成分(0〜255)
  [out] | h | … HSV色空間のH(色相)成分(0〜360)
  [out] | s | … HSV色空間のS(彩度)成分(0〜１)
  [out] | v | … HSV色空間のV(明度)成分(0〜１)

void mist::rgb2lab | ( | double | r,
|  | double | g,
|  | double | b,
|  | double & | l_,
|  | double & | a_,
|  | double & | b_
| ) |  |
| inline

RGB色空間をL*a*b*色空間に変換する

注意
  入力と出力の値の範囲に注意！！

引数

  [in] | r | … RGB色空間のR(赤)成分(0〜255)
  [in] | g | … RGB色空間のG(緑)成分(0〜255)
  [in] | b | … RGB色空間のB(青)成分(0〜255)
  [out] | l_ | … L*a*b*色空間のL(明度指数)成分(0〜100)
  [out] | a_ | … L*a*b*色空間のa(知覚色度)成分(-134〜220)
  [out] | b_ | … L*a*b*色空間のb(知覚色度)成分(-140〜122)

参照先 mist::rgb2xyz().

void mist::rgb2xyz | ( | double | r,
|  | double | g,
|  | double | b,
|  | double & | x,
|  | double & | y,
|  | double & | z
| ) |  |
| inline

RGB色空間をXYZ色空間に変換する

注意
  入力と出力の値の範囲に注意！！

引数

  [in] | r | … RGB色空間のR(赤)成分(0〜255)
  [in] | g | … RGB色空間のG(緑)成分(0〜255)
  [in] | b | … RGB色空間のB(青)成分(0〜255)
  [out] | x | … XYZ色空間のX成分(0〜１)
  [out] | y | … XYZ色空間のY成分(0〜１)
  [out] | z | … XYZ色空間のZ成分(0〜１)

参照元 mist::rgb2lab().

void mist::rgb2ycbcr | ( | double | r,
|  | double | g,
|  | double | b,
|  | double & | y,
|  | double & | cb,
|  | double & | cr
| ) |  |
| inline

RGB色空間をYCbCr色空間に変換する

注意
  入力と出力の値の範囲に注意！！

引数

  [in] | r | … RGB色空間のR(赤)成分(0〜255)
  [in] | g | … RGB色空間のG(緑)成分(0〜255)
  [in] | b | … RGB色空間のB(青)成分(0〜255)
  [out] | y | … YCbCr色空間のY成分(16〜235)
  [out] | cb | … YCbCr色空間のCb成分(16〜240)
  [out] | cr | … YCbCr色空間のCr成分(16〜240)

void mist::rgb2yiq | ( | double | r,
|  | double | g,
|  | double | b,
|  | double & | y,
|  | double & | i,
|  | double & | q
| ) |  |
| inline

RGB色空間をYIQ色空間に変換する

引数

  [in] | r | … RGB色空間のR(赤)成分(0〜255)
  [in] | g | … RGB色空間のG(緑)成分(0〜255)
  [in] | b | … RGB色空間のB(青)成分(0〜255)
  [out] | y | … YIQ色空間のY成分(0〜255)
  [out] | i | … YIQ色空間のI成分(0〜255)
  [out] | q | … YIQ色空間のQ成分(0〜255)

void mist::xyz2rgb | ( | double | x,
|  | double | y,
|  | double | z,
|  | double & | r,
|  | double & | g,
|  | double & | b
| ) |  |
| inline

XYZ色空間をRGB色空間に変換する

注意
  入力と出力の値の範囲に注意！！

引数

  [in] | x | … XYZ色空間のX成分(0〜１)
  [in] | y | … XYZ色空間のY成分(0〜１)
  [in] | z | … XYZ色空間のZ成分(0〜１)
  [out] | r | … RGB色空間のR(赤)成分(0〜255)
  [out] | g | … RGB色空間のG(緑)成分(0〜255)
  [out] | b | … RGB色空間のB(青)成分(0〜255)

参照元 mist::lab2rgb().

void mist::ycbcr2rgb | ( | double | y,
|  | double | cb,
|  | double | cr,
|  | double & | r,
|  | double & | g,
|  | double & | b
| ) |  |
| inline

YCbCr色空間をRGB色空間に変換する

注意
  入力と出力の値の範囲に注意！！

引数

  [in] | y | … YCbCr色空間のY成分(16〜235)
  [in] | cb | … YCbCr色空間のCb成分(16〜240)
  [in] | cr | … YCbCr色空間のCr成分(16〜240)
  [out] | r | … RGB色空間のR(赤)成分(0〜255)
  [out] | g | … RGB色空間のG(緑)成分(0〜255)
  [out] | b | … RGB色空間のB(青)成分(0〜255)

void mist::yiq2rgb | ( | double | y,
|  | double | i,
|  | double | q,
|  | double & | r,
|  | double & | g,
|  | double & | b
| ) |  |
| inline

YIQ色空間をRGB色空間に変換する

引数

  [in] | y | … YIQ色空間のY成分(0〜255)
  [in] | i | … YIQ色空間のI成分(0〜255)
  [in] | q | … YIQ色空間のQ成分(0〜255)
  [out] | r | … RGB色空間のR(赤)成分(0〜255)
  [out] | g | … RGB色空間のG(緑)成分(0〜255)
  [out] | b | … RGB色空間のB(青)成分(0〜255)