Image Conversion Reference¶
ImageProcessor::Convert() (C++/C#), Image.Convert() (Python), and
spinImageProcessorConvert() (C) can
convert a captured image to a different pixel format for image display or
further processing. The tables below list every supported input → output
combination.
Generic Support¶
Software-only conversion available on all platforms.
Rows are input formats; columns are output formats.
| Input \ Output | Mono8 | Mono16 | BayerBG8 | BayerGB8 | BayerRG8 | BayerGR8 | BayerBG16 | BayerGB16 | BayerRG16 | BayerGR16 | BGR8 | BGRa8 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Mono8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| Mono16 | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| BayerGR8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| BayerRG8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| BayerGB8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| BayerBG8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| BayerGR16 | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| BayerRG16 | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| BayerGB16 | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| BayerBG16 | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| Mono12Packed | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| BayerGR12Packed | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerRG12Packed | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerGB12Packed | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerBG12Packed | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| YUV411Packed | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| YUV422Packed | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| YUV444Packed | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| Mono12p | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| BayerGR12p | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerRG12p | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerGB12p | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerBG12p | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| YCbCr8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| YCbCr422_8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| YCbCr411_8 | N | N | N | N | N | N | N | N | N | N | Y | Y |
| BGR8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| BGRa8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| Mono10Packed | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| BayerGR10Packed | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerRG10Packed | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerGB10Packed | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerBG10Packed | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| Mono10p | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| BayerGR10p | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerRG10p | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerGB10p | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerBG10p | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| Mono10 | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| Mono12 | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| Mono14 | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| BayerBG10 | Y | N | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerBG12 | Y | N | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerGB10 | Y | N | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerGB12 | Y | N | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerGR10 | Y | N | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerGR12 | Y | N | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerRG10 | Y | N | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| BayerRG12 | Y | N | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| RGBa8 | Y | N | N | N | N | N | N | N | N | N | N | N |
| RGB8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| RGB12 | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| BGR16 | N | N | N | N | N | N | N | N | N | N | Y | N |
| R12 | N | N | N | N | N | N | N | N | N | N | Y | Y |
| G12 | N | N | N | N | N | N | N | N | N | N | Y | Y |
| B12 | N | N | N | N | N | N | N | N | N | N | Y | Y |
| YUV8_UYV | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| YUV411_8_UYYVYY | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| YUV422_8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| Polarized8 | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| Polarized10p | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| Polarized12p | Y | N | N | N | N | N | N | N | N | N | Y | Y |
| Polarized16 | Y | Y | N | N | N | N | N | N | N | N | Y | Y |
| BayerRGPolarized8 | N | N | N | N | N | N | N | N | N | N | N | Y |
| BayerRGPolarized10p | N | N | N | N | N | N | N | N | N | N | N | Y |
| BayerRGPolarized12p | N | N | N | N | N | N | N | N | N | N | N | Y |
| BayerRGPolarized16 | N | N | N | N | N | N | N | N | N | N | N | Y |
| LLCMono8 | N | N | N | N | N | N | N | N | N | N | N | N |
| LLCBayerRG8 | N | N | N | N | N | N | N | N | N | N | N | N |
| JPEGMono8 | N | N | N | N | N | N | N | N | N | N | Y | Y |
| JPEGColor8 | N | N | N | N | N | N | N | N | N | N | Y | Y |
| Raw16 | N | N | N | N | N | N | N | N | N | N | N | N |
| Raw8 | N | N | N | N | N | N | N | N | N | N | N | N |
| R12_Jpeg | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| GR12_Jpeg | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| GB12_Jpeg | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
| B12_Jpeg | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
IPP Support¶
Hardware-accelerated conversion using Intel IPP. Available on Windows and Linux
x64 where IPP is enabled.
Rows are input formats; columns are output formats.
| Input \ Output | Mono8 | Mono16 | RGB8 | RGBa8 |
|---|---|---|---|---|
| Mono8 | Y | N | Y | Y |
| Mono16 | Y | Y | Y | Y |
| BayerGR8 | Y | N | Y | Y |
| BayerRG8 | Y | N | Y | Y |
| BayerGB8 | Y | N | Y | Y |
| BayerBG8 | Y | N | Y | Y |
| BayerGR16 | Y | Y | Y | Y |
| BayerRG16 | Y | Y | Y | Y |
| BayerGB16 | Y | Y | Y | Y |
| BayerBG16 | Y | Y | Y | Y |
| Mono12Packed | Y | Y | Y | N |
| BayerGR12Packed | Y | Y | Y | Y |
| BayerRG12Packed | Y | Y | Y | Y |
| BayerGB12Packed | Y | Y | Y | Y |
| BayerBG12Packed | Y | Y | Y | Y |
| YUV411Packed | Y | N | Y | Y |
| YUV422Packed | Y | N | Y | Y |
| YUV444Packed | Y | N | Y | Y |
| Mono12p | Y | Y | Y | N |
| BayerGR12p | Y | Y | Y | Y |
| BayerRG12p | Y | Y | Y | Y |
| BayerGB12p | Y | Y | Y | Y |
| BayerBG12p | Y | Y | Y | Y |
| YCbCr8 | Y | N | Y | Y |
| YCbCr422_8 | Y | N | Y | Y |
| BGR8 | Y | N | Y | Y |
| BGRa8 | Y | N | Y | Y |
| Mono10Packed | Y | Y | Y | N |
| BayerGR10Packed | Y | Y | Y | Y |
| BayerRG10Packed | Y | Y | Y | Y |
| BayerGB10Packed | Y | Y | Y | Y |
| BayerBG10Packed | Y | Y | Y | Y |
| Mono10p | Y | Y | Y | N |
| BayerGR10p | Y | Y | Y | Y |
| BayerRG10p | Y | Y | Y | Y |
| BayerGB10p | Y | Y | Y | Y |
| BayerBG10p | Y | Y | Y | Y |
| Mono10 | Y | Y | Y | Y |
| Mono12 | Y | Y | Y | Y |
| Mono14 | Y | Y | Y | Y |
| BayerBG10 | Y | N | Y | Y |
| BayerBG12 | Y | N | Y | Y |
| BayerGB10 | Y | N | Y | Y |
| BayerGB12 | Y | N | Y | Y |
| BayerGR10 | Y | N | Y | Y |
| BayerGR12 | Y | N | Y | Y |
| BayerRG10 | Y | N | Y | Y |
| BayerRG12 | Y | N | Y | Y |
| RGBa8 | Y | N | Y | Y |
| RGB8 | Y | N | Y | Y |
| RGB12 | Y | Y | Y | N |
| BGR16 | Y | N | Y | N |
| R12 | Y | N | Y | Y |
| G12 | Y | N | Y | Y |
| B12 | Y | N | Y | Y |
| YUV8_UYV | Y | N | Y | Y |
| YUV411_8_UYYVYY | Y | N | Y | Y |
| YUV422_8 | Y | N | Y | Y |
| Polarized8 | Y | N | Y | Y |
| Polarized10p | Y | N | Y | Y |
| Polarized12p | Y | N | Y | Y |
| Polarized16 | Y | Y | Y | Y |
| JPEGMono8 | Y | N | Y | Y |
| JPEGColor8 | Y | N | Y | Y |
| R12_Jpeg | Y | Y | Y | Y |
| GR12_Jpeg | Y | Y | Y | Y |
| GB12_Jpeg | Y | Y | Y | Y |
| B12_Jpeg | Y | Y | Y | Y |