OpenCV 4.5.3(日本語機械翻訳)
列挙型 | 関数
Imgproc_color_conversions

列挙型

enum cv::ColorConversionCodes {
cv::COLOR_BGR2BGRA = 0 , COLOR_RGB2RGBA = COLOR_BGR2BGRA , cv::COLOR_BGRA2BGR = 1 , COLOR_RGBA2RGB = COLOR_BGRA2BGR ,
cv::COLOR_BGR2RGBA = 2 , COLOR_RGB2BGRA = COLOR_BGR2RGBA , COLOR_RGBA2BGR = 3 , COLOR_BGRA2RGB = COLOR_RGBA2BGR ,
COLOR_BGR2RGB = 4 , COLOR_RGB2BGR = COLOR_BGR2RGB , COLOR_BGRA2RGBA = 5 , COLOR_RGBA2BGRA = COLOR_BGRA2RGBA ,
cv::COLOR_BGR2GRAY = 6 , COLOR_RGB2GRAY = 7 , COLOR_GRAY2BGR = 8 , COLOR_GRAY2RGB = COLOR_GRAY2BGR ,
COLOR_GRAY2BGRA = 9 , COLOR_GRAY2RGBA = COLOR_GRAY2BGRA , COLOR_BGRA2GRAY = 10 , COLOR_RGBA2GRAY = 11 ,
cv::COLOR_BGR2BGR565 = 12 , COLOR_RGB2BGR565 = 13 , COLOR_BGR5652BGR = 14 , COLOR_BGR5652RGB = 15 ,
COLOR_BGRA2BGR565 = 16 , COLOR_RGBA2BGR565 = 17 , COLOR_BGR5652BGRA = 18 , COLOR_BGR5652RGBA = 19 ,
cv::COLOR_GRAY2BGR565 = 20 , COLOR_BGR5652GRAY = 21 , cv::COLOR_BGR2BGR555 = 22 , COLOR_RGB2BGR555 = 23 ,
COLOR_BGR5552BGR = 24 , COLOR_BGR5552RGB = 25 , COLOR_BGRA2BGR555 = 26 , COLOR_RGBA2BGR555 = 27 ,
COLOR_BGR5552BGRA = 28 , COLOR_BGR5552RGBA = 29 , cv::COLOR_GRAY2BGR555 = 30 , COLOR_BGR5552GRAY = 31 ,
cv::COLOR_BGR2XYZ = 32 , COLOR_RGB2XYZ = 33 , COLOR_XYZ2BGR = 34 , COLOR_XYZ2RGB = 35 ,
cv::COLOR_BGR2YCrCb = 36 , COLOR_RGB2YCrCb = 37 , COLOR_YCrCb2BGR = 38 , COLOR_YCrCb2RGB = 39 ,
cv::COLOR_BGR2HSV = 40 , COLOR_RGB2HSV = 41 , cv::COLOR_BGR2Lab = 44 , COLOR_RGB2Lab = 45 ,
cv::COLOR_BGR2Luv = 50 , COLOR_RGB2Luv = 51 , cv::COLOR_BGR2HLS = 52 , COLOR_RGB2HLS = 53 ,
cv::COLOR_HSV2BGR = 54 , COLOR_HSV2RGB = 55 , COLOR_Lab2BGR = 56 , COLOR_Lab2RGB = 57 ,
COLOR_Luv2BGR = 58 , COLOR_Luv2RGB = 59 , cv::COLOR_HLS2BGR = 60 , COLOR_HLS2RGB = 61 ,
cv::COLOR_BGR2HSV_FULL = 66 , COLOR_RGB2HSV_FULL = 67 , cv::COLOR_BGR2HLS_FULL = 68 , COLOR_RGB2HLS_FULL = 69 ,
cv::COLOR_HSV2BGR_FULL = 70 , COLOR_HSV2RGB_FULL = 71 , cv::COLOR_HLS2BGR_FULL = 72 , COLOR_HLS2RGB_FULL = 73 ,
COLOR_LBGR2Lab = 74 , COLOR_LRGB2Lab = 75 , COLOR_LBGR2Luv = 76 , COLOR_LRGB2Luv = 77 ,
COLOR_Lab2LBGR = 78 , COLOR_Lab2LRGB = 79 , COLOR_Luv2LBGR = 80 , COLOR_Luv2LRGB = 81 ,
cv::COLOR_BGR2YUV = 82 , COLOR_RGB2YUV = 83 , COLOR_YUV2BGR = 84 , COLOR_YUV2RGB = 85 ,
cv::COLOR_YUV2RGB_NV12 = 90 , COLOR_YUV2BGR_NV12 = 91 , COLOR_YUV2RGB_NV21 = 92 , COLOR_YUV2BGR_NV21 = 93 ,
COLOR_YUV420sp2RGB = COLOR_YUV2RGB_NV21 , COLOR_YUV420sp2BGR = COLOR_YUV2BGR_NV21 , COLOR_YUV2RGBA_NV12 = 94 , COLOR_YUV2BGRA_NV12 = 95 ,
COLOR_YUV2RGBA_NV21 = 96 , COLOR_YUV2BGRA_NV21 = 97 , COLOR_YUV420sp2RGBA = COLOR_YUV2RGBA_NV21 , COLOR_YUV420sp2BGRA = COLOR_YUV2BGRA_NV21 ,
COLOR_YUV2RGB_YV12 = 98 , COLOR_YUV2BGR_YV12 = 99 , COLOR_YUV2RGB_IYUV = 100 , COLOR_YUV2BGR_IYUV = 101 ,
COLOR_YUV2RGB_I420 = COLOR_YUV2RGB_IYUV , COLOR_YUV2BGR_I420 = COLOR_YUV2BGR_IYUV , COLOR_YUV420p2RGB = COLOR_YUV2RGB_YV12 , COLOR_YUV420p2BGR = COLOR_YUV2BGR_YV12 ,
COLOR_YUV2RGBA_YV12 = 102 , COLOR_YUV2BGRA_YV12 = 103 , COLOR_YUV2RGBA_IYUV = 104 , COLOR_YUV2BGRA_IYUV = 105 ,
COLOR_YUV2RGBA_I420 = COLOR_YUV2RGBA_IYUV , COLOR_YUV2BGRA_I420 = COLOR_YUV2BGRA_IYUV , COLOR_YUV420p2RGBA = COLOR_YUV2RGBA_YV12 , COLOR_YUV420p2BGRA = COLOR_YUV2BGRA_YV12 ,
COLOR_YUV2GRAY_420 = 106 , COLOR_YUV2GRAY_NV21 = COLOR_YUV2GRAY_420 , COLOR_YUV2GRAY_NV12 = COLOR_YUV2GRAY_420 , COLOR_YUV2GRAY_YV12 = COLOR_YUV2GRAY_420 ,
COLOR_YUV2GRAY_IYUV = COLOR_YUV2GRAY_420 , COLOR_YUV2GRAY_I420 = COLOR_YUV2GRAY_420 , COLOR_YUV420sp2GRAY = COLOR_YUV2GRAY_420 , COLOR_YUV420p2GRAY = COLOR_YUV2GRAY_420 ,
cv::COLOR_YUV2RGB_UYVY = 107 , COLOR_YUV2BGR_UYVY = 108 , COLOR_YUV2RGB_Y422 = COLOR_YUV2RGB_UYVY , COLOR_YUV2BGR_Y422 = COLOR_YUV2BGR_UYVY ,
COLOR_YUV2RGB_UYNV = COLOR_YUV2RGB_UYVY , COLOR_YUV2BGR_UYNV = COLOR_YUV2BGR_UYVY , COLOR_YUV2RGBA_UYVY = 111 , COLOR_YUV2BGRA_UYVY = 112 ,
COLOR_YUV2RGBA_Y422 = COLOR_YUV2RGBA_UYVY , COLOR_YUV2BGRA_Y422 = COLOR_YUV2BGRA_UYVY , COLOR_YUV2RGBA_UYNV = COLOR_YUV2RGBA_UYVY , COLOR_YUV2BGRA_UYNV = COLOR_YUV2BGRA_UYVY ,
COLOR_YUV2RGB_YUY2 = 115 , COLOR_YUV2BGR_YUY2 = 116 , COLOR_YUV2RGB_YVYU = 117 , COLOR_YUV2BGR_YVYU = 118 ,
COLOR_YUV2RGB_YUYV = COLOR_YUV2RGB_YUY2 , COLOR_YUV2BGR_YUYV = COLOR_YUV2BGR_YUY2 , COLOR_YUV2RGB_YUNV = COLOR_YUV2RGB_YUY2 , COLOR_YUV2BGR_YUNV = COLOR_YUV2BGR_YUY2 ,
COLOR_YUV2RGBA_YUY2 = 119 , COLOR_YUV2BGRA_YUY2 = 120 , COLOR_YUV2RGBA_YVYU = 121 , COLOR_YUV2BGRA_YVYU = 122 ,
COLOR_YUV2RGBA_YUYV = COLOR_YUV2RGBA_YUY2 , COLOR_YUV2BGRA_YUYV = COLOR_YUV2BGRA_YUY2 , COLOR_YUV2RGBA_YUNV = COLOR_YUV2RGBA_YUY2 , COLOR_YUV2BGRA_YUNV = COLOR_YUV2BGRA_YUY2 ,
COLOR_YUV2GRAY_UYVY = 123 , COLOR_YUV2GRAY_YUY2 = 124 , COLOR_YUV2GRAY_Y422 = COLOR_YUV2GRAY_UYVY , COLOR_YUV2GRAY_UYNV = COLOR_YUV2GRAY_UYVY ,
COLOR_YUV2GRAY_YVYU = COLOR_YUV2GRAY_YUY2 , COLOR_YUV2GRAY_YUYV = COLOR_YUV2GRAY_YUY2 , COLOR_YUV2GRAY_YUNV = COLOR_YUV2GRAY_YUY2 , cv::COLOR_RGBA2mRGBA = 125 ,
COLOR_mRGBA2RGBA = 126 , cv::COLOR_RGB2YUV_I420 = 127 , COLOR_BGR2YUV_I420 = 128 , COLOR_RGB2YUV_IYUV = COLOR_RGB2YUV_I420 ,
COLOR_BGR2YUV_IYUV = COLOR_BGR2YUV_I420 , COLOR_RGBA2YUV_I420 = 129 , COLOR_BGRA2YUV_I420 = 130 , COLOR_RGBA2YUV_IYUV = COLOR_RGBA2YUV_I420 ,
COLOR_BGRA2YUV_IYUV = COLOR_BGRA2YUV_I420 , COLOR_RGB2YUV_YV12 = 131 , COLOR_BGR2YUV_YV12 = 132 , COLOR_RGBA2YUV_YV12 = 133 ,
COLOR_BGRA2YUV_YV12 = 134 , cv::COLOR_BayerBG2BGR = 46 , COLOR_BayerGB2BGR = 47 , COLOR_BayerRG2BGR = 48 ,
COLOR_BayerGR2BGR = 49 , COLOR_BayerBG2RGB = COLOR_BayerRG2BGR , COLOR_BayerGB2RGB = COLOR_BayerGR2BGR , COLOR_BayerRG2RGB = COLOR_BayerBG2BGR ,
COLOR_BayerGR2RGB = COLOR_BayerGB2BGR , COLOR_BayerBG2GRAY = 86 , COLOR_BayerGB2GRAY = 87 , COLOR_BayerRG2GRAY = 88 ,
COLOR_BayerGR2GRAY = 89 , cv::COLOR_BayerBG2BGR_VNG = 62 , COLOR_BayerGB2BGR_VNG = 63 , COLOR_BayerRG2BGR_VNG = 64 ,
COLOR_BayerGR2BGR_VNG = 65 , COLOR_BayerBG2RGB_VNG = COLOR_BayerRG2BGR_VNG , COLOR_BayerGB2RGB_VNG = COLOR_BayerGR2BGR_VNG , COLOR_BayerRG2RGB_VNG = COLOR_BayerBG2BGR_VNG ,
COLOR_BayerGR2RGB_VNG = COLOR_BayerGB2BGR_VNG , cv::COLOR_BayerBG2BGR_EA = 135 , COLOR_BayerGB2BGR_EA = 136 , COLOR_BayerRG2BGR_EA = 137 ,
COLOR_BayerGR2BGR_EA = 138 , COLOR_BayerBG2RGB_EA = COLOR_BayerRG2BGR_EA , COLOR_BayerGB2RGB_EA = COLOR_BayerGR2BGR_EA , COLOR_BayerRG2RGB_EA = COLOR_BayerBG2BGR_EA ,
COLOR_BayerGR2RGB_EA = COLOR_BayerGB2BGR_EA , cv::COLOR_BayerBG2BGRA = 139 , COLOR_BayerGB2BGRA = 140 , COLOR_BayerRG2BGRA = 141 ,
COLOR_BayerGR2BGRA = 142 , COLOR_BayerBG2RGBA = COLOR_BayerRG2BGRA , COLOR_BayerGB2RGBA = COLOR_BayerGR2BGRA , COLOR_BayerRG2RGBA = COLOR_BayerBG2BGRA ,
COLOR_BayerGR2RGBA = COLOR_BayerGB2BGRA , COLOR_COLORCVT_MAX = 143
}

関数

CV_EXPORTS_W void cv::cvtColor (InputArray src, OutputArray dst, int code, int dstCn=0)
画像をある色空間から別の色空間に変換します。[【詳解】(英語]
CV_EXPORTS_W void cv::cvtColorTwoPlane (InputArray src1, InputArray src2, OutputArray dst, int code)
ソース画像が2つのプレーンに格納されている場合に、画像をある色空間から別の色空間に変換します。[【詳解】(英語]
CV_EXPORTS_W void cv::demosaicing (InputArray src, OutputArray dst, int code, int dstCn=0)
全てのデモザイシング処理の主関数[【詳解】(英語]

詳解

列挙型詳解

ColorConversionCodes

色変換コード

参照
Imgproc_color_conversions
列挙値
カラー_BGR2BGRA

RGBまたはBGR画像にアルファチャンネルを追加します

COLOR_BGRA2BGR

RGB または BGR 画像からアルファチャンネルを削除

COLOR_BGR2RGBA

RGBとBGRの色空間の間で変換(アルファチャンネルの有無にかかわらず)

カラー_BGR2GRAY

RGB/BGRとグレースケールの変換、色変換

カラー_BGR2BGR565

RGB/BGRとBGR565を相互に変換する(16ビット画像)

カラー_グレー2BGR565

グレースケールをBGR565(16ビット画像)に変換する

カラー_BGR2BGR555

RGB/BGRとBGR555(16ビット画像)を相互に変換する。

カラー_グレー2BGR555

グレースケールとBGR555(16ビット画像)を相互に変換する。

カラー_BGR2XYZ

RGB/BGRをCIE XYZに変換、色変換

カラー_BGR2YCrCb

RGB/BGRをルーマクロマ(YCC)に変換する、色変換

カラー_BGR2HSV

RGB/BGR を HSV (hue saturation value) に変換します。

カラー_BGR2Lab

色変換のために、RGB/BGR を CIE Lab に変換します。

カラー_BGR2Luv

RGB/BGR を CIE Luv に変換、色の変換

COLOR_BGR2HLS

RGB/BGRをHLS (hue lightness saturation)に変換します (8ビット画像の場合、Hレンジは0~180)。

カラー_HSV2BGR

HSV から RGB/BGR への逆変換(8 ビット画像の場合、H レンジが 0 ~ 180)。

COLOR_HLS2BGR

HLS から RGB/BGR への逆変換で、8 ビット画像の場合は H の範囲が 0 ~ 180 です。

COLOR_BGR2HSV_FULL

RGB/BGR を HSV (色相彩度) に変換します (8 ビット画像の場合、H レンジは 0 ~ 255)。

カラー_BGR2HLS_FULL

RGB/BGRをHLS(色相明度彩度)に変換します(8ビット画像の場合,Hレンジは0..255)。

カラー_HSV2BGR_FULL

HSVからRGB/BGRへの逆変換, 8ビット画像の場合, Hの範囲は0~255

カラー_HLS2BGR_FULL

HLS から RGB/BGR への逆変換,8 ビット画像の場合は H の範囲が 0 ~ 255 です。

カラー_BGR2YUV

RGB/BGRとYUVの相互変換

カラー_ユビ2アールジービー_nv12

YUV 4:2:0ファミリーをRGBに変換

カラー_ユビ2rgb_uyvy

YUV 4:2:2ファミリーからRGBへの変換

カラー_RGBA2mRGBA

アルファ前置増幅

カラー_RGB2YUV_I420

RGBからYUV 4:2:0ファミリーへ

カラー_BayerBG2BGR

デモザイク処理

カラー_ベイヤーBG2BGR_VNG

可変階調数によるデモザイキング

COLOR_BayerBG2BGR_EA

エッジを考慮したデモザイキング

COLOR_BayerBG2BGRA

アルファチャンネルを使ったデモザイキング

関数詳解

cvtColor()

CV_EXPORTS_W void cv::cvtColor ( InputArray src,
OutputArray dst,
int code,
int dstCn = 0
)

画像をある色空間から別の色空間に変換します。

この関数は,入力画像をある色空間から別の色空間に変換します.RGB色空間からの変換の場合,チャンネルの順番を明示的に指定する必要があります(RGBまたはBGR).OpenCVのデフォルトの色形式は,しばしばRGBと呼ばれますが,実際にはBGR(バイトが逆)であることに注意してください.つまり,標準的な(24ビット)カラー画像の1バイト目は,8ビットの青成分,2バイト目は緑,3バイト目は赤になります.そして4バイト目、5バイト目、6バイト目が2つ目の画素(青→緑→赤)というようになる。

R、G、Bの各チャンネル値の従来の範囲は

  • CV_8U画像では0〜255
  • CV_8U画像の場合,0~65535
  • CV_32Fの場合は0〜1

線形変換の場合には,この範囲は問題になりません。しかし,非線形変換の場合,正しい結果を得るためには,入力RGB画像を適切な値の範囲に正規化する必要があります.例えば,RGB$\rightarrow$L*u*v*変換を行います。例えば,8ビット画像から直接変換された32ビット浮動小数点画像をスケーリングせずに入力した場合,この関数が想定している0〜1ではなく,0〜255の値域を持つことになります。ですから,この関数を呼び出す前にcvtColorを呼び出す前に,まず画像を縮小する必要があります.

img *= 1./255;
cvtColor(img, img, COLOR_BGR2Luv);
CV_EXPORTS_W void cvtColor(InputArray src, OutputArray dst, int code, int dstCn=0)
Converts an image from one color space to another.
@ COLOR_BGR2Luv
convert RGB/BGR to CIE Luv, color conversions
Definition: imgproc.hpp:600

もし,8ビット画像に対してcvtColorを8ビットの画像に対して使うと,変換の際にいくつかの情報が失われます.多くのアプリケーションでは,このことは気になりませんが,フルレンジの色を必要とするアプリケーションや,操作の前に画像を変換してから変換し直すアプリケーションでは,32ビット画像を使用することをお勧めします。

変換によってアルファチャンネルが追加された場合,その値は対応するチャンネル範囲の最大値に設定されます:CV_8Uでは255,CV_16Uでは65535,CV_32Fでは1です。

引数
src 入力画像。8ビット符号なし,16ビット符号なし( CV_16UC... ),または単精度浮動小数点.
dst src と同じサイズ,同じ深度の出力画像.
code 色空間変換コード(参照ColorConversionCodes).
dstCn 出力画像のチャンネル数.パラメータが0の場合,チャンネル数は src と code から自動的に得られます.
参照
Imgproc_color_conversions

cvtColorTwoPlane()

CV_EXPORTS_W void cv::cvtColorTwoPlane ( InputArray src1,
InputArray src2,
OutputArray dst,
int code
)

ソース画像が2つのプレーンに格納されている場合に、画像をある色空間から別の色空間に変換します。

この関数は、現在のところ YUV420 から RGB への変換のみをサポートしています。

引数
src1 Y平面の8ビット画像(#CV_8U).
src2 インタリーブされたU/Vプレーンを含む画像.
dst 出力画像。
code 変換の種類を指定します。以下のいずれかの値を取ることができます。
  • #color_yuv2bgr_nv12
  • COLOR_YUV2RGB_NV12
  • #color_yuv2bgra_nv12
  • #color_yuv2rgba_nv12
  • #color_yuv2bgr_nv21
  • #color_yuv2rgb_nv21
  • #color_yuv2bgra_nv21
  • #color_yuv2rgba_nv21

demosaicing()

CV_EXPORTS_W void cv::demosaicing ( InputArray src,
OutputArray dst,
int code,
int dstCn = 0
)

全てのデモザイシング処理の主関数

引数
src 入力画像を 8ビット符号なしまたは16ビット符号なし。
dst src と同じサイズ,同じ深度の出力画像.
code 色空間変換コード(以下の説明を参照してください)。
dstCn 出力画像のチャンネル数.パラメータが0の場合,チャンネル数は src と code から自動的に得られます.

この関数は,以下のような変換を行うことができます.

  • バイリニア補間によるデモザイキング

    COLOR_BayerBG2BGR, #COLOR_BayerGB2BGR , #COLOR_BayerRG2BGR , #COLOR_BayerGR2BGR

    #カラー_BayerBG2GRAY , #カラー_BayerGB2GRAY , #カラー_BayerRG2GRAY , #カラー_BayerGR2GRAY

  • 可変階調数を用いたデモザイキング

    COLOR_BayerBG2BGR_VNG, #COLOR_BayerGB2BGR_VNG , #COLOR_BayerRG2BGR_VNG , #COLOR_BayerGR2BGR_VNG

  • エッジを考慮したデモザイキング

    COLOR_BayerBG2BGR_EA, #COLOR_BayerGB2BGR_EA , #COLOR_BayerRG2BGR_EA , #COLOR_BayerGR2BGR_EA

  • アルファチャンネルを使ったデモザイキング

    COLOR_BayerBG2BGRA, #COLOR_BayerGB2BGRA , #COLOR_BayerRG2BGRA , #COLOR_BayerGR2BGRA

参照
cvtColor