Table of contents

ColourConversionModes

This parameter helps control the process of colour conversion, i.e., converting a colour image to a grayscale image. If you input a colour image, the library will convert it to the grayscale image first for further processes. By default, the conversion will base on the RGB channels with the default weights of three channels. This parameter allows you to specify the referred colour channel (RGB or HSV) and the weight of each channel during the colour conversion. Assume your image has a significant contrast of one colour channel between the barcode area and background, this parameter may help specify the appropriate settings for getting a higher quality grayscale image.

It currently can consist of only a single mode, CICM_GENERAL.

Candidate Mode List

  • CICM_GENERAL

CICM_GENERAL

Converts a colour image to a grayscale image using the general algorithm. This mode has the following arguments for further customizing.

Setting Methods

As PublicRuntimeSettings Member

ColourConversionModes can be set dynamically during runtime as a member of FurtherModes, which is a member of PublicRuntimeSettings struct, it is an array with 8 ColourConversionMode Enumeration items.

Code Snippet in C++

//...other codes
PublicRuntimeSettings* pSettings = new PublicRuntimeSettings;
int errorCode = reader->GetRuntimeSettings(pSettings);
pSettings->colourConversionModes[0] = CICM_GENERAL;
reader->UpdateRuntimeSettings(pSettings);
reader->SetModeArgument("ColourConversionModes", 0, "BlueChannelWeight", "1000");
delete pSettings;
//...other codes

Remarks
GetModeArgument and SetModeArgument need to be called for getting and setting Arguments.

See Also

As JSON Parameter

ColourConversionModes as a JSON parameter is a JSON Object array. Each JSON object is defined as below.

Key Name Key Value Description
Mode Any one in Candidate Mode List as string (Required) Specifies a mode for colour convertion.
BlueChannelWeight A number from value range of BlueChannelWeight (Optional) Sets the Argument BlueChannelWeight.
GreenChannelWeight A number from value range of GreenChannelWeight (Optional) Sets the Argument GreenChannelWeight.
RedChannelWeight A number from value range of RedChannelWeight (Optional) Sets the Argument RedChannelWeight.
LibraryFileName A string from value range of LibraryFileName (Optional) Sets the Argument LibraryFileName.
LibraryParameters A string from value range of LibraryParameters (Optional) Sets the Argument LibraryParameters.

JSON Parameter Example

{
    "ColourConversionModes": [
        {
            "Mode": "CICM_GENERAL", 
            "BlueChannelWeight": 1000,
            "GreenChannelWeight": 0,
            "RedChannelWeight": 0
        },
        {
            "Mode": "CICM_GENERAL", 
            "BlueChannelWeight": 0,
            "GreenChannelWeight": 500,
            "RedChannelWeight": 500
        }
    ]
}

Candidate Argument List

BlueChannelWeight

Sets the weight value of Blue Colour Channel used for converting a colour image to a grayscale image.

Value Type Value Range Default Value Valid For
int [-1, 1000] -1 CICM_GENERAL

Remarks

  • -1: The weight value will be set automatically by the SDK.
  • -1 will be used if the sum of BlueChannelWeight, GreenChannelWeight and RedChannelWeight is not 1000.

GreenChannelWeight

Sets the weight value of Green Colour Channel used for converting a colour image to a grayscale image.

Value Type Value Range Default Value Valid For
int [-1, 1000] -1 CICM_GENERAL

Remarks

  • -1: The weight value will be set automatically by the SDK.
  • -1 will be used if the sum of BlueChannelWeight, GreenChannelWeight and RedChannelWeight is not 1000.

RedChannelWeight

Sets the weight value of Red Colour Channel used for converting a colour image to a grayscale image.

Value Type Value Range Default Value Valid For
int [-1, 1000] -1 CICM_GENERAL

Remarks

  • -1: The weight value will be set automatically by the SDK.
  • -1 will be used if the sum of BlueChannelWeight, GreenChannelWeight and RedChannelWeight is not 1000.

LibraryFileName

Sets the file name of the library to load dynamically.

Value Type Value Range Default Value Valid For
string A string value representing file name. ”” All modes

Remarks
The library must be in the same place with Dynamsoft Barcode Reader Library.

LibraryParameters

Sets the parameters passed to the library to load dynamically.

Value Type Value Range Default Value Valid For
string A string value representing parameters. ”” All modes

This page is compatible for:

Is this page helpful?

YesYes NoNo

In this article: