Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion _includes/sidelist-programming/programming-java.html
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,16 @@
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/single-file-processing.html" class="otherLinkColour">Single-File Processing</a></li>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/multiple-file-processing.html" class="otherLinkColour">Multiple-File Processing</a></li>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/settings.html" class="otherLinkColour">Settings</a></li>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/intermediate-result.html" class="otherLinkColour">Intermediate Result</a></li>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/buffered-items.html" class="otherLinkColour">Buffered Items</a></li>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/auxiliary-methods.html" class="otherLinkColour">Auxiliary Methods</a></li>
</ul>
</li>
<li><a>Classes</a>
<ul>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/buffered-items-manager.html" class="otherLinkColour">BufferedItemsManager</a></li>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/capture-vision-error.html" class="otherLinkColour">CaptureVisionError</a></li>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/capture-vision-execption.html" class="otherLinkColour">CaptureVisionException</a></li>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/capture-vision-exception.html" class="otherLinkColour">CaptureVisionException</a></li>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/capture-vision-router-module.html" class="otherLinkColour">CaptureVisionRouterModule</a></li>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/captured-result-filter.html" class="otherLinkColour">CapturedResultFilter</a></li>
<li><a href="{{ site.dcvb_java_api }}capture-vision-router/auxiliary-classes/captured-result-receiver.html" class="otherLinkColour">CapturedResultReceiver</a></li>
Expand Down
1 change: 1 addition & 0 deletions _includes/sidelist-programming/programming-python.html
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
<li><a href="{{ site.dcvb_python_api }}capture-vision-router/settings.html" class="otherLinkColour">Settings</a></li>
<li><a href="{{ site.dcvb_python_api }}capture-vision-router/buffered-items.html" class="otherLinkColour">Buffered Items</a></li>
<li><a href="{{ site.dcvb_python_api }}capture-vision-router/intermediate-result.html" class="otherLinkColour">Intermediate Result</a></li>
<li><a href="{{ site.dcvb_python_api }}capture-vision-router/auxiliary-methods.html" class="otherLinkColour">Auxiliary Methods</a></li>
</ul>
</li>
<li><a>Classes</a>
Expand Down
302 changes: 0 additions & 302 deletions _includes/sidelist-programming/sidelist-parameter-reference.html

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,7 @@
<li><a href="{{ site.dcvb_parameters_reference }}label-recognizer-task-settings/stage-localize-text-lines.html" class="otherLinkColour">LocalizeTextLinesStage Object</a>
<ul>
<li><a href="{{ site.dcvb_parameters_reference }}label-recognizer-task-settings/stage-localize-text-lines.html#stage" class="otherLinkColour">Stage</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}label-recognizer-task-settings/localization-modes.html" class="otherLinkColour">LocalizationModes</a></li>
</ul>
</li>
</ul>
Expand Down Expand Up @@ -438,7 +439,9 @@
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/enable-addon-code.html" class="otherLinkColour">EnableAddOnCode</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/enable-data-matrix-ecc000-140.html" class="otherLinkColour">EnableDataMatrixECC000-140</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/enable-qr-code-model-1.html" class="otherLinkColour">EnableQRCodeModel1</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/expected-barcodes-count.html" class="otherLinkColour">ExpectedBarcodesCount</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/find-uneven-module-barcode.html" class="otherLinkColour">FindUnevenModuleBarcode</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/has-vertical-quietzone.html" class="otherLinkColour">HasVerticalQuietZone</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/head-module-ratio.html" class="otherLinkColour">HeadModuleRatio</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/include-implied-ai01.html" class="otherLinkColour">IncludeImpliedAI01</a></li>
<li><a href="{{ site.dcvb_parameters_reference }}barcode-format-specification/include-trailing-check-digit.html" class="otherLinkColour">IncludeTrailingCheckDigit</a></li>
Expand Down Expand Up @@ -497,7 +500,8 @@
</li>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/global-parameter.html" class="otherLinkColour">Global Parameter</a>
<ul>
<li><a href="{{ site.dcvb_parameters_reference }}global-parameter/max-total-image-dimension.html" class="otherLinkColour">MaxTotalImageDimension</a></li>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/global-parameter.html#maxtotalimagedimension" class="otherLinkColour">MaxTotalImageDimension</a></li>
<li><a href="{{ site.dcvb_parameters }}file/auxiliary/global-parameter.html#intraopnumthreads" class="otherLinkColour">IntraOpNumThreads</a></li>
</ul>
</li>
<li><a href="{{ site.dcvb_parameters }}file/semantic-processing/index.html" class="otherLinkColour">SemanticProcessing Object</a>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,31 +12,36 @@ breadcrumbText: CVR C++ Auxiliary Methods

| API Name | Description |
| ------------------------------------------------------------- | --------------------------------------------------------- |
| [`FreeString`](#freestring) | Frees the memory allocated for a string. |
| [`AppendModelBuffer`](#appendmodelbuffer) | Appends a model to the model buffer. |
| [`SetGlobalIntraOpNumThreads`](#setglobalintraopnumthreads) | Sets the global number of threads used internally for model execution. |
| [`AppendDLModelBuffer`](#appenddlmodelbuffer) | Appends a deep learning model to the memory buffer. |
| [`ClearDLModelBuffers`](#cleardlmodelbuffers) | Clears all deep learning models from buffer to free up memory. |
| [`FreeString`](#freestring) | Deprecated. Will be removed in future versions. Use [`CoreModule::FreeBytes`]({{ site.dcvb_cpp_api }}core/basic-structures/core-module.html#freebytes) instead.|
| [`AppendModelBuffer`](#appendmodelbuffer) | Deprecated. Will be removed in future versions. Use `AppendDLModelBuffer` instead. |

## FreeString

Frees the memory allocated for a string. The function is *deprecated*, use [`CoreModule::FreeBytes`]({{ site.dcvb_cpp_api }}core/basic-structures/core-module.html#freebytes) instead.
## SetGlobalIntraOpNumThreads

Sets the global number of threads used internally for model execution.

```cpp
static void FreeString(char* content);
static void SetGlobalIntraOpNumThreads(int intraOpNumThreads = 0);
```

**Parameters**

`[in] content` The string whose memory needs to be freed.
`[in] intraOpNumThreads` Number of threads used internally for model execution. Valid range: [0, 256].
If the value is outside the range [0, 256], it will be treated as 0 (default).

**Return Value**
**Remarks**

This function does not return a value. It simply frees the memory allocated for the input string.
- Introduced in Dynamsoft Barcode Reader SDK version 11.2.1000 and Dynamsoft Capture Vision version 3.2.1000.

## AppendModelBuffer
## AppendDLModelBuffer

Appends a model to the model buffer.
Appends a deep learning model to the memory buffer.

```cpp
static int AppendModelBuffer(const char* modelName, const unsigned char* modelBytes, int modelBytesLength, int maxModelInstances);
static int AppendDLModelBuffer(const char* modelName, const unsigned char* modelBytes, int modelBytesLength, int maxModelInstances);
```

**Parameters**
Expand All @@ -52,3 +57,34 @@ static int AppendModelBuffer(const char* modelName, const unsigned char* modelBy
**Return Value**

Returns 0 if succeeds, nonzero otherwise.

**Remarks**

- Introduced in Dynamsoft Barcode Reader SDK version 11.2.1000 and Dynamsoft Capture Vision version 3.2.1000.

## ClearDLModelBuffers

Clears all deep learning models from buffer to free up memory.

```cpp
static void ClearDLModelBuffers();
```

**Remarks**

- After calling this function, all `CaptureVisionRouter` instances created before the function call will not be able to use model-related features.

- Introduced in Dynamsoft Barcode Reader SDK version 11.2.1000 and Dynamsoft Capture Vision version 3.2.1000.

## FreeString

Deprecated. Will be removed in future versions. Use [`CoreModule::FreeBytes`]({{ site.dcvb_cpp_api }}core/basic-structures/core-module.html#freebytes) instead.


## AppendModelBuffer

Deprecated. Will be removed in future versions. Use `AppendDLModelBuffer` instead.

**Remarks**

- Deprecated in Dynamsoft Barcode Reader SDK version 11.2.1000 and Dynamsoft Capture Vision version 3.2.1000.
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ class CCaptureVisionRouter
| [`ResetSettings`](settings.md#resetsettings) | Resets all templates to factory settings. |
| [`GetParameterTemplateCount`](settings.md#getparametertemplatecount) | Retrieves the total number of available parameter templates. |
| [`GetParameterTemplateName`](settings.md#getparametertemplatename) | Retrieves the name of a specific parameter template by its index. |
| [`SwitchCapturingTemplate`](settings.md#switchcapturingtemplate) | Switches the capturing template during the image processing workflow. |

## Intermediate Result

Expand All @@ -87,5 +88,8 @@ The following method returns an `CIntermediateResultManager` object which allows

| API Name | Description |
| --------------------------------------------- | --------------------------------------------------------- |
| [`FreeString`](auxiliary-methods.md#freestring) | Frees the memory allocated for a string. The function is *deprecated*, use [`CoreModule::FreeBytes`]({{ site.dcvb_cpp_api }}core/basic-structures/core-module.html#freebytes) instead. |
| [`AppendModelBuffer`](auxiliary-methods.md#appendmodelbuffer) | Appends a model to the model buffer. |
| [`FreeString`](auxiliary-methods.md#freestring) | The function is *deprecated*, use [`CoreModule::FreeBytes`]({{ site.dcvb_cpp_api }}core/basic-structures/core-module.html#freebytes) instead. |
| [`SetGlobalIntraOpNumThreads`](auxiliary-methods.md#setglobalintraopnumthreads) | Sets the global number of threads used internally for model execution. |
| [`AppendDLModelBuffer`](auxiliary-methods.md#appenddlmodelbuffer) | Appends a deep learning model to the memory buffer. |
| [`ClearDLModelBuffers`](auxiliary-methods.md#cleardlmodelbuffers) | Clears all deep learning models from buffer to free up memory. |
| [`AppendModelBuffer`](auxiliary-methods.md#appendmodelbuffer) | Deprecated. Will be removed in future versions. Use `AppendDLModelBuffer` instead. |
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ description: This page introduces APIs related to the Settings of the CCaptureVi
keywords: capture vision, router, settings, api reference, c++
needAutoGenerateSidebar: true
needGenerateH3Content: false
breadcrumbText: CVR C++ Settings
---

# Settings
Expand All @@ -21,6 +20,7 @@ breadcrumbText: CVR C++ Settings
| [`ResetSettings`](#resetsettings) | Resets all templates to factory settings. |
| [`GetParameterTemplateCount`](#getparametertemplatecount) | Retrieves the total number of available parameter templates. |
| [`GetParameterTemplateName`](#getparametertemplatename) | Retrieves the name of a specific parameter template by its index. |
| [`SwitchCapturingTemplate`](#switchcapturingtemplate) | Switches the capturing template during the image processing workflow. |

## InitSettings

Expand Down Expand Up @@ -268,3 +268,27 @@ int GetParameterTemplateName(const int index, char nameBuffer[], int nameBufferL
**Return value**

Returns an error code. Zero indicates success.

## SwitchCapturingTemplate

Switches the capturing template during the image processing workflow.

```cpp
int SwitchCapturingTemplate(const char* templateName, char errorMsgBuffer[] = NULL, const int errorMsgBufferLen = 0);
```

**Parameters**

`[in] templateName` The name of the new capturing template to apply.

`[in] errorMsgBuffer` A buffer for error messages.

`[in] errorMsgBufferLen` The length of the error message buffer.

**Return value**

Returns an error code. Zero indicates success.

**Remarks**

- Introduced in Dynamsoft Barcode Reader SDK version 11.2.1000 and Dynamsoft Capture Vision version 3.2.1000.
3 changes: 3 additions & 0 deletions programming/cplusplus/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,9 @@ For embedded or ARM-based platforms, we recommend using a device with performanc
- 4 GB RAM
- Linux-based OS (e.g., Raspberry Pi OS, Ubuntu Server)

> [!NOTE]
> Other architectures and operating systems, such as ESP32, MIPS, FreeRTOS, and Micrium uC/OS, are not supported.

## API Reference

For an overview of the APIs, see the [API Reference]({{ site.dcvb_cpp_api }}).
Expand Down
60 changes: 60 additions & 0 deletions programming/cplusplus/release-notes/cpp-3.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,66 @@ needGenerateH3Content: false

# Release Notes for C++ Edition - 3.x

## 3.2.1000 (10/14/2025)

🎉 **Milestone Release** - This version introduces groundbreaking AI-powered enhancements that significantly improve accuracy and performance across all barcode and MRZ processing scenarios.

### ✨ Key Highlights

**AI-Powered Barcode Detection & Decoding**
- 🧠 **First-to-Market AI Localization**: Revolutionary `OneDLocalization` and `DataMatrixQRCodeLocalization` neural network models for superior detection of **blurred/low-resolution 1D codes** and **DataMatrix/QR codes with missing or damaged finder patterns**
- ⚡ **Specialized Decoders**: Cutting-edge `EAN13Decoder` and `Code128Decoder` models deliver unprecedented accuracy for **blurred and long-distance** scenarios
- 🔍 **Enhanced Clarity Processing**: Completely redesigned `OneDDeblur` model with superior **motion blur and focus blur** recovery algorithms
- 🎯 **Flexible Model Configuration**: Advanced `ModelNameArray` parameter enables on-demand model loading and precise selection for specific barcode scenarios

**Precision Control**
- ⚙️ **Granular Deblur Methods**: Fine-tuned `DM_DEEP_ANALYSIS` with specialized method control - `OneDGeneral`, `TwoDGeneral`, and `EAN13Enhanced` for targeted optimization
- 🎯 **Smart Barcode Counting**: New `ExpectedBarcodesCount` parameter enables **format-specific quantity control** and **early termination optimization** for known-quantity scenarios
- 🔍 **Advanced Region Detection**: New `RPM_GRAY_CONSISTENCY` mode enables precise region detection based on **grayscale uniformity** and **local consistency** for document and label processing


**Enhanced Text Processing**
- 🚀 **High-Speed and Precise MRZ Region Detection**: Revolutionary neural network `MRZLocalization` model delivers **42.7% faster processing** with enhanced region detection accuracy for passport and ID workflows
- 🎛️ **Advanced Localization**: New `LocalizationModes` parameter provides unprecedented control over text line detection algorithms


**Smart Document Capture**
- 🎥 **Clarity-Based Frame Selection**: Intelligent frame selection automatically chooses the sharpest, highest-quality document images
- 🔄 **Enhanced Cross-Frame Verification**: Advanced cross-frame verification algorithms significantly improve result reliability and accuracy


### 💡 What This Means for You

**For Challenging Barcode Scenarios**
- **Blurred conditions**: 26.5% better read rates with 44% faster processing - ideal for handheld scanning and moving objects
- **Extended distance capability**: Breakthrough support for reading distances beyond 75cm - revolutionizing warehouse automation and high-shelf scanning
- **Damaged 2D codes**: Enhanced detection of DataMatrix and QR codes with missing or damaged finder patterns - perfect for manufacturing and logistics applications

**For Document Processing Applications**
- **Real-time video streams**: Optimized performance maintains smooth user experience in live capture scenarios
- **Document quality assessment**: Intelligent clarity-based frame selection ensures highest quality document captures

**For Enterprise Integration**
- **Retail environments**: Enhanced performance for blurred handheld scanning and long-distance shelf reading
- **Logistics & shipping**: Improved recognition for package tracking with better blur and long-distance scanning capabilities
- **Manufacturing QC**: Improved 2D code reading on printed/etched parts with wear damage
- **Security applications**: Faster MRZ processing for high-throughput identity verification

**For Developers**
- **Backward Compatible**: Seamless upgrade with existing code and easy migration path
- **Flexible Configuration**: Extensive parameter customization for specific use cases and comprehensive model configuration options
- **Enterprise Ready**: Battle-tested stability for production environments


### Changed

- Updated the default value of parameter [`MaxThreadsInOneTask`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/max-threads-in-one-task.html) from 4 to 0 (auto-detection).
- Updated the default value of parameter [`IncludeTrailingCheckDigit`]({{ site.dcvb_parameters_reference }}barcode-format-specification/include-trailing-check-digit.html) from 1 to 0.
- Deprecated argument `DeblurModelNameArray` of parameter [`DeblurModes`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/deblur-modes.html), use `ModelNameArray` instead.
- Deprecated method `AppendModelBuffer` of class [`CaptureVisionRouter`]({{ site.dcvb_cpp_api }}capture-vision-router/capture-vision-router.html), use [`AppendDLModelBuffer`]({{ site.dcvb_cpp_api }}capture-vision-router/auxiliary-methods.html#appenddlmodelbuffer) instead.



## 3.0.6000 (08/06/2025)

### Changed
Expand Down
1 change: 1 addition & 0 deletions programming/cplusplus/release-notes/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ noTitleIndex: true

# Release Notes - Dynamsoft Capture Vision CPP

- [3.2.1000 (10/14/2025)]({{ site.dcvb_cpp_release_notes_v3 }}cpp-3.html#321000-10142025)
- [3.0.6000 (08/06/2025)]({{ site.dcvb_cpp_release_notes_v3 }}cpp-3.html#306000-08062025)
- [3.0.4000 (07/15/2025)]({{ site.dcvb_cpp_release_notes_v3 }}cpp-3.html#304000-07152025)
- [3.0.3000 (05/13/2025)]({{ site.dcvb_cpp_release_notes_v3 }}cpp-3.html#303000-05132025)
Expand Down
Loading