mirror of
https://github.com/opencv/opencv.git
synced 2025-06-12 20:42:53 +08:00
Merge pull request #20970 from s-trinh:update_Bayer_naming
This commit is contained in:
commit
85fd8729ce
@ -151,16 +151,23 @@ sources on the web, primarily from the Charles Poynton site <http://www.poynton.
|
|||||||
Bayer \f$\rightarrow\f$ RGB
|
Bayer \f$\rightarrow\f$ RGB
|
||||||
---------------------------
|
---------------------------
|
||||||
The Bayer pattern is widely used in CCD and CMOS cameras. It enables you to get color pictures
|
The Bayer pattern is widely used in CCD and CMOS cameras. It enables you to get color pictures
|
||||||
from a single plane where R,G, and B pixels (sensors of a particular component) are interleaved
|
from a single plane where R, G, and B pixels (sensors of a particular component) are interleaved
|
||||||
as follows:
|
as follows:
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
The output RGB components of a pixel are interpolated from 1, 2, or 4 neighbors of the pixel
|
||||||
|
having the same color.
|
||||||
|
|
||||||
|
@note See the following for information about correspondences between OpenCV Bayer pattern naming and classical Bayer pattern naming.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
The output RGB components of a pixel are interpolated from 1, 2, or 4 neighbors of the pixel
|
There are several modifications of the above pattern that can be achieved
|
||||||
having the same color. There are several modifications of the above pattern that can be achieved
|
|
||||||
by shifting the pattern one pixel left and/or one pixel up. The two letters \f$C_1\f$ and \f$C_2\f$ in
|
by shifting the pattern one pixel left and/or one pixel up. The two letters \f$C_1\f$ and \f$C_2\f$ in
|
||||||
the conversion constants CV_Bayer \f$C_1 C_2\f$ 2BGR and CV_Bayer \f$C_1 C_2\f$ 2RGB indicate the
|
the conversion constants CV_Bayer \f$C_1 C_2\f$ 2BGR and CV_Bayer \f$C_1 C_2\f$ 2RGB indicate the
|
||||||
particular pattern type. These are components from the second row, second and third columns,
|
particular pattern type. These are components from the second row, second and third columns,
|
||||||
respectively. For example, the above pattern has a very popular "BG" type.
|
respectively. For example, the above pattern has a very popular "BG" type.
|
||||||
|
|
||||||
@see cv::COLOR_BayerBG2BGR, cv::COLOR_BayerGB2BGR, cv::COLOR_BayerRG2BGR, cv::COLOR_BayerGR2BGR, cv::COLOR_BayerBG2RGB, cv::COLOR_BayerGB2RGB, cv::COLOR_BayerRG2RGB, cv::COLOR_BayerGR2RGB
|
@see cv::COLOR_BayerRGGB2BGR, cv::COLOR_BayerGRBG2BGR, cv::COLOR_BayerBGGR2BGR, cv::COLOR_BayerGBRG2BGR, cv::COLOR_BayerRGGB2RGB, cv::COLOR_BayerGRBG2RGB, cv::COLOR_BayerBGGR2RGB, cv::COLOR_BayerGBRG2RGB
|
||||||
|
cv::COLOR_BayerBG2BGR, cv::COLOR_BayerGB2BGR, cv::COLOR_BayerRG2BGR, cv::COLOR_BayerGR2BGR, cv::COLOR_BayerBG2RGB, cv::COLOR_BayerGB2RGB, cv::COLOR_BayerRG2RGB, cv::COLOR_BayerGR2RGB
|
||||||
|
BIN
modules/imgproc/doc/pics/Bayer_patterns.png
Executable file
BIN
modules/imgproc/doc/pics/Bayer_patterns.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 4.2 KiB |
@ -744,54 +744,99 @@ enum ColorConversionCodes {
|
|||||||
COLOR_RGBA2YUV_YV12 = 133,
|
COLOR_RGBA2YUV_YV12 = 133,
|
||||||
COLOR_BGRA2YUV_YV12 = 134,
|
COLOR_BGRA2YUV_YV12 = 134,
|
||||||
|
|
||||||
//! Demosaicing
|
//! Demosaicing, see @ref color_convert_bayer "color conversions" for additional information
|
||||||
COLOR_BayerBG2BGR = 46,
|
COLOR_BayerBG2BGR = 46, //!< equivalent to RGGB Bayer pattern
|
||||||
COLOR_BayerGB2BGR = 47,
|
COLOR_BayerGB2BGR = 47, //!< equivalent to GRBG Bayer pattern
|
||||||
COLOR_BayerRG2BGR = 48,
|
COLOR_BayerRG2BGR = 48, //!< equivalent to BGGR Bayer pattern
|
||||||
COLOR_BayerGR2BGR = 49,
|
COLOR_BayerGR2BGR = 49, //!< equivalent to GBRG Bayer pattern
|
||||||
|
|
||||||
COLOR_BayerBG2RGB = COLOR_BayerRG2BGR,
|
COLOR_BayerRGGB2BGR = COLOR_BayerBG2BGR,
|
||||||
COLOR_BayerGB2RGB = COLOR_BayerGR2BGR,
|
COLOR_BayerGRBG2BGR = COLOR_BayerGB2BGR,
|
||||||
COLOR_BayerRG2RGB = COLOR_BayerBG2BGR,
|
COLOR_BayerBGGR2BGR = COLOR_BayerRG2BGR,
|
||||||
COLOR_BayerGR2RGB = COLOR_BayerGB2BGR,
|
COLOR_BayerGBRG2BGR = COLOR_BayerGR2BGR,
|
||||||
|
|
||||||
COLOR_BayerBG2GRAY = 86,
|
COLOR_BayerRGGB2RGB = COLOR_BayerBGGR2BGR,
|
||||||
COLOR_BayerGB2GRAY = 87,
|
COLOR_BayerGRBG2RGB = COLOR_BayerGBRG2BGR,
|
||||||
COLOR_BayerRG2GRAY = 88,
|
COLOR_BayerBGGR2RGB = COLOR_BayerRGGB2BGR,
|
||||||
COLOR_BayerGR2GRAY = 89,
|
COLOR_BayerGBRG2RGB = COLOR_BayerGRBG2BGR,
|
||||||
|
|
||||||
|
COLOR_BayerBG2RGB = COLOR_BayerRG2BGR, //!< equivalent to RGGB Bayer pattern
|
||||||
|
COLOR_BayerGB2RGB = COLOR_BayerGR2BGR, //!< equivalent to GRBG Bayer pattern
|
||||||
|
COLOR_BayerRG2RGB = COLOR_BayerBG2BGR, //!< equivalent to BGGR Bayer pattern
|
||||||
|
COLOR_BayerGR2RGB = COLOR_BayerGB2BGR, //!< equivalent to GBRG Bayer pattern
|
||||||
|
|
||||||
|
COLOR_BayerBG2GRAY = 86, //!< equivalent to RGGB Bayer pattern
|
||||||
|
COLOR_BayerGB2GRAY = 87, //!< equivalent to GRBG Bayer pattern
|
||||||
|
COLOR_BayerRG2GRAY = 88, //!< equivalent to BGGR Bayer pattern
|
||||||
|
COLOR_BayerGR2GRAY = 89, //!< equivalent to GBRG Bayer pattern
|
||||||
|
|
||||||
|
COLOR_BayerRGGB2GRAY = COLOR_BayerBG2GRAY,
|
||||||
|
COLOR_BayerGRBG2GRAY = COLOR_BayerGB2GRAY,
|
||||||
|
COLOR_BayerBGGR2GRAY = COLOR_BayerRG2GRAY,
|
||||||
|
COLOR_BayerGBRG2GRAY = COLOR_BayerGR2GRAY,
|
||||||
|
|
||||||
//! Demosaicing using Variable Number of Gradients
|
//! Demosaicing using Variable Number of Gradients
|
||||||
COLOR_BayerBG2BGR_VNG = 62,
|
COLOR_BayerBG2BGR_VNG = 62, //!< equivalent to RGGB Bayer pattern
|
||||||
COLOR_BayerGB2BGR_VNG = 63,
|
COLOR_BayerGB2BGR_VNG = 63, //!< equivalent to GRBG Bayer pattern
|
||||||
COLOR_BayerRG2BGR_VNG = 64,
|
COLOR_BayerRG2BGR_VNG = 64, //!< equivalent to BGGR Bayer pattern
|
||||||
COLOR_BayerGR2BGR_VNG = 65,
|
COLOR_BayerGR2BGR_VNG = 65, //!< equivalent to GBRG Bayer pattern
|
||||||
|
|
||||||
COLOR_BayerBG2RGB_VNG = COLOR_BayerRG2BGR_VNG,
|
COLOR_BayerRGGB2BGR_VNG = COLOR_BayerBG2BGR_VNG,
|
||||||
COLOR_BayerGB2RGB_VNG = COLOR_BayerGR2BGR_VNG,
|
COLOR_BayerGRBG2BGR_VNG = COLOR_BayerGB2BGR_VNG,
|
||||||
COLOR_BayerRG2RGB_VNG = COLOR_BayerBG2BGR_VNG,
|
COLOR_BayerBGGR2BGR_VNG = COLOR_BayerRG2BGR_VNG,
|
||||||
COLOR_BayerGR2RGB_VNG = COLOR_BayerGB2BGR_VNG,
|
COLOR_BayerGBRG2BGR_VNG = COLOR_BayerGR2BGR_VNG,
|
||||||
|
|
||||||
|
COLOR_BayerRGGB2RGB_VNG = COLOR_BayerBGGR2BGR_VNG,
|
||||||
|
COLOR_BayerGRBG2RGB_VNG = COLOR_BayerGBRG2BGR_VNG,
|
||||||
|
COLOR_BayerBGGR2RGB_VNG = COLOR_BayerRGGB2BGR_VNG,
|
||||||
|
COLOR_BayerGBRG2RGB_VNG = COLOR_BayerGRBG2BGR_VNG,
|
||||||
|
|
||||||
|
COLOR_BayerBG2RGB_VNG = COLOR_BayerRG2BGR_VNG, //!< equivalent to RGGB Bayer pattern
|
||||||
|
COLOR_BayerGB2RGB_VNG = COLOR_BayerGR2BGR_VNG, //!< equivalent to GRBG Bayer pattern
|
||||||
|
COLOR_BayerRG2RGB_VNG = COLOR_BayerBG2BGR_VNG, //!< equivalent to BGGR Bayer pattern
|
||||||
|
COLOR_BayerGR2RGB_VNG = COLOR_BayerGB2BGR_VNG, //!< equivalent to GBRG Bayer pattern
|
||||||
|
|
||||||
//! Edge-Aware Demosaicing
|
//! Edge-Aware Demosaicing
|
||||||
COLOR_BayerBG2BGR_EA = 135,
|
COLOR_BayerBG2BGR_EA = 135, //!< equivalent to RGGB Bayer pattern
|
||||||
COLOR_BayerGB2BGR_EA = 136,
|
COLOR_BayerGB2BGR_EA = 136, //!< equivalent to GRBG Bayer pattern
|
||||||
COLOR_BayerRG2BGR_EA = 137,
|
COLOR_BayerRG2BGR_EA = 137, //!< equivalent to BGGR Bayer pattern
|
||||||
COLOR_BayerGR2BGR_EA = 138,
|
COLOR_BayerGR2BGR_EA = 138, //!< equivalent to GBRG Bayer pattern
|
||||||
|
|
||||||
COLOR_BayerBG2RGB_EA = COLOR_BayerRG2BGR_EA,
|
COLOR_BayerRGGB2BGR_EA = COLOR_BayerBG2BGR_EA,
|
||||||
COLOR_BayerGB2RGB_EA = COLOR_BayerGR2BGR_EA,
|
COLOR_BayerGRBG2BGR_EA = COLOR_BayerGB2BGR_EA,
|
||||||
COLOR_BayerRG2RGB_EA = COLOR_BayerBG2BGR_EA,
|
COLOR_BayerBGGR2BGR_EA = COLOR_BayerRG2BGR_EA,
|
||||||
COLOR_BayerGR2RGB_EA = COLOR_BayerGB2BGR_EA,
|
COLOR_BayerGBRG2BGR_EA = COLOR_BayerGR2BGR_EA,
|
||||||
|
|
||||||
|
COLOR_BayerRGGB2RGB_EA = COLOR_BayerBGGR2BGR_EA,
|
||||||
|
COLOR_BayerGRBG2RGB_EA = COLOR_BayerGBRG2BGR_EA,
|
||||||
|
COLOR_BayerBGGR2RGB_EA = COLOR_BayerRGGB2BGR_EA,
|
||||||
|
COLOR_BayerGBRG2RGB_EA = COLOR_BayerGRBG2BGR_EA,
|
||||||
|
|
||||||
|
COLOR_BayerBG2RGB_EA = COLOR_BayerRG2BGR_EA, //!< equivalent to RGGB Bayer pattern
|
||||||
|
COLOR_BayerGB2RGB_EA = COLOR_BayerGR2BGR_EA, //!< equivalent to GRBG Bayer pattern
|
||||||
|
COLOR_BayerRG2RGB_EA = COLOR_BayerBG2BGR_EA, //!< equivalent to BGGR Bayer pattern
|
||||||
|
COLOR_BayerGR2RGB_EA = COLOR_BayerGB2BGR_EA, //!< equivalent to GBRG Bayer pattern
|
||||||
|
|
||||||
//! Demosaicing with alpha channel
|
//! Demosaicing with alpha channel
|
||||||
COLOR_BayerBG2BGRA = 139,
|
COLOR_BayerBG2BGRA = 139, //!< equivalent to RGGB Bayer pattern
|
||||||
COLOR_BayerGB2BGRA = 140,
|
COLOR_BayerGB2BGRA = 140, //!< equivalent to GRBG Bayer pattern
|
||||||
COLOR_BayerRG2BGRA = 141,
|
COLOR_BayerRG2BGRA = 141, //!< equivalent to BGGR Bayer pattern
|
||||||
COLOR_BayerGR2BGRA = 142,
|
COLOR_BayerGR2BGRA = 142, //!< equivalent to GBRG Bayer pattern
|
||||||
|
|
||||||
COLOR_BayerBG2RGBA = COLOR_BayerRG2BGRA,
|
COLOR_BayerRGGB2BGRA = COLOR_BayerBG2BGRA,
|
||||||
COLOR_BayerGB2RGBA = COLOR_BayerGR2BGRA,
|
COLOR_BayerGRBG2BGRA = COLOR_BayerGB2BGRA,
|
||||||
COLOR_BayerRG2RGBA = COLOR_BayerBG2BGRA,
|
COLOR_BayerBGGR2BGRA = COLOR_BayerRG2BGRA,
|
||||||
COLOR_BayerGR2RGBA = COLOR_BayerGB2BGRA,
|
COLOR_BayerGBRG2BGRA = COLOR_BayerGR2BGRA,
|
||||||
|
|
||||||
|
COLOR_BayerRGGB2RGBA = COLOR_BayerBGGR2BGRA,
|
||||||
|
COLOR_BayerGRBG2RGBA = COLOR_BayerGBRG2BGRA,
|
||||||
|
COLOR_BayerBGGR2RGBA = COLOR_BayerRGGB2BGRA,
|
||||||
|
COLOR_BayerGBRG2RGBA = COLOR_BayerGRBG2BGRA,
|
||||||
|
|
||||||
|
COLOR_BayerBG2RGBA = COLOR_BayerRG2BGRA, //!< equivalent to RGGB Bayer pattern
|
||||||
|
COLOR_BayerGB2RGBA = COLOR_BayerGR2BGRA, //!< equivalent to GRBG Bayer pattern
|
||||||
|
COLOR_BayerRG2RGBA = COLOR_BayerBG2BGRA, //!< equivalent to BGGR Bayer pattern
|
||||||
|
COLOR_BayerGR2RGBA = COLOR_BayerGB2BGRA, //!< equivalent to GBRG Bayer pattern
|
||||||
|
|
||||||
COLOR_COLORCVT_MAX = 143
|
COLOR_COLORCVT_MAX = 143
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user