Skip to content

Commit c8adb2f

Browse files
update to internal commit abc45b69
1 parent f2c93e2 commit c8adb2f

File tree

7 files changed

+228
-14
lines changed

7 files changed

+228
-14
lines changed

programming/maui/api-reference/capture-vision-router/multiple-file-processing.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ noTitleIndex: true
2020
| [`StopCapturing`](#stopcapturing) | Stops the capturing process. |
2121
| [`AddResultFilter`](#addresultfilter) | Adds a `CaptureResultFilter` object to filter non-essential results. |
2222
| [`RemoveResultFilter`](#removeresultfilter) | Removes the specified `CaptureResultFilter` object. |
23+
| [`SwitchCapturingTemplate`](#switchcapturingtemplate) | Switch the image processing settings with the CaptureVisionTemplate name during the image processing workflow. |
2324

2425
## SetInput
2526

@@ -127,3 +128,25 @@ void RemoveResultFilter(ICapturedResultFilter filter);
127128
**Parameters**
128129

129130
`[in] filter`: The filter object, of type [`CapturedResultFilter`]({{ site.dcv_maui_api }}capture-vision-router/auxiliary-classes/captured-result-filter.html).
131+
132+
## SwitchCapturingTemplate
133+
134+
Switch the image processing settings with the CaptureVisionTemplate name during the image processing workflow.
135+
136+
```csharp
137+
partial void SwitchCapturingTemplate(string template);
138+
```
139+
140+
**Parameters**
141+
142+
`[in] template`: The name of the new capturing template to apply.
143+
144+
**Exception**
145+
146+
| Error Code | Value | Description |
147+
| :--------- | :---- | :---------- |
148+
| EC_TEMPLATE_NAME_INVALID | -10036 | The target template name is invalid. |
149+
150+
**Remarks**
151+
152+
- Introduced in Dynamsoft Barcode Reader SDK version 11.2.3000 and Dynamsoft Capture Vision version 3.2.3000.

programming/maui/api-reference/capture-vision-router/settings.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ noTitleIndex: true
2020
| [`ResetSettings`](#resetsettings) | Restores all settings to their original default values. |
2121
| [`OutputSettings`](#outputsettings) | Returns an object that contains settings for the specified `CaptureVisionTemplate`. |
2222
| [`OutputSettingsToFile`](#outputsettingstofile) | Generates a JSON file download containing the settings for the specified `CaptureVisionTemplate`. |
23+
| [`ClearDLModelBuffers`](#cleardlmodelbuffers) | Clear the buffered deep learning models to release the memory. |
24+
| [`SetGlobalIntraOpNumThreads`](#setglobalintraopnumthreads) | Sets the global number of threads used internally for model execution. |
2325

2426
## InitSettings
2527

@@ -203,3 +205,31 @@ void OutputSettingsToFile(string templateName, string filePath);
203205
| :--------- | :---- | :---------- |
204206
| EC_FILE_SAVE_FAILED | -10058 | The file path is unavailable or the file can't be created for any other reasons. |
205207
| EC_CALL_REJECTED_WHEN_CAPTURING | -10062 | Function call is rejected when capturing in progress. |
208+
209+
## ClearDLModelBuffers
210+
211+
Clear the buffered deep learning models to release the memory.
212+
213+
```csharp
214+
static partial void ClearDLModelBuffers();
215+
```
216+
217+
**Remarks**
218+
219+
- Introduced in Dynamsoft Barcode Reader SDK version 11.2.3000 and Dynamsoft Capture Vision version 3.2.3000.
220+
221+
## SetGlobalIntraOpNumThreads
222+
223+
Sets the global number of threads used internally for model execution.
224+
225+
```csharp
226+
static partial void SetGlobalIntraOpNumThreads(int numThreads);
227+
```
228+
229+
**Parameters**
230+
231+
`numThreads`: Number of threads used internally for model execution. Valid range: [0, 256]. Default: 2.
232+
233+
**Remarks**
234+
235+
- Introduced in Dynamsoft Barcode Reader SDK version 11.2.3000 and Dynamsoft Capture Vision version 3.2.3000.

programming/maui/api-reference/utility/enum/filter-type.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ codeAutoHeight: true
1010

1111
`EnumFilterType` describes the specified image filter applied to an input image.
1212

13-
```java
13+
```csharp
1414
public enum EnumFilterType : int
1515
{
1616
HighPass,
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
---
2+
layout: default-layout
3+
title: EnumImageFileFormat - Dynamsoft Utility MAUI Enumerations
4+
description: The enumeration EnumImageFileFormat of Dynamsoft Utility MAUI edition defines the file format of the image file.
5+
keywords: image filter
6+
codeAutoHeight: true
7+
---
8+
9+
# EnumImageFileFormat
10+
11+
`EnumImageFileFormat` defines the file format of the image file.
12+
13+
```csharp
14+
public enum EnumImageFileFormat
15+
{
16+
IFF_JPEG = 0,
17+
IFF_PNG = 1,
18+
IFF_BMP = 2,
19+
IFF_PDF = 3
20+
}
21+
```

programming/maui/api-reference/utility/image-io.md

Lines changed: 60 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,52 @@ class DMImageIO
2626

2727
| Method | Description |
2828
| ------ | ----------- |
29+
| [`ReadFromFile`](#readfromfile) | Reads an image from the specified path and format. |
30+
| [`ReadFromMemory`](#readfrommemory) | Reads an image from the memory. |
2931
| [`SaveToFile`](#savetofile) | Saves an image to the specified path and format. |
30-
| [`ReadFromFile`](#readfromfile) | Read an image from file with the file path. |
32+
| [`SaveToMemory`](#savetomemory) | Saves an image to the memory. |
3133

32-
### saveToFile
34+
### ReadFromFile
35+
36+
Read an image from file with the file path
37+
38+
```csharp
39+
ImageData? ReadFromFile(string path);
40+
```
41+
42+
**Parameters**
43+
44+
`[in] path`: The file path.
45+
46+
**Return Value**
47+
48+
The read image data of type `ImageData`.
49+
50+
### ReadFromMemory
51+
52+
Reads an image from the memory.
53+
54+
```csharp
55+
partial ImageData? ReadFromMemory(byte[] imageFileBytes);
56+
```
57+
58+
**Parameters**
59+
60+
`[in] imageFileBytes`: The image bytes.
61+
62+
**Return Value**
63+
64+
The image data of type `ImageData`.
65+
66+
**Exception**
67+
68+
| Error Code | Value | Description |
69+
| :--------- | :---- | :---------- |
70+
| EC_NULL_POINTER | -10002 | The fileBytes you input is null. |
71+
72+
- Introduced in Dynamsoft Barcode Reader SDK version 11.2.3000 and Dynamsoft Capture Vision version 3.2.3000.
73+
74+
### SaveToFile
3375

3476
Saves an image to the specified path and format. The desired file format is inferred from the file extension provided in the `path` parameter.
3577

@@ -59,18 +101,29 @@ void SaveToFile(ImageData imageData, string path, bool overWrite);
59101

60102
A boolean value that indicates whether the file is saved successfully.
61103

62-
### ReadFromFile
104+
### SaveToMemory
63105

64-
Read an image from file with the file path
106+
Saves an image to the memory.
65107

66108
```csharp
67-
ImageData? ReadFromFile(string path);
109+
partial byte[]? SaveToMemory(ImageData imageData, EnumImageFileFormat imageFileFormat);
68110
```
69111

70112
**Parameters**
71113

72-
`[in] path`: The file path.
114+
`[in] imageData`: The image to be saved, of type `ImageData`.
115+
116+
`[in] imageFileFormat`: The image format.
73117

74118
**Return Value**
75119

76-
The read image data of type `ImageData`.
120+
The image bytes.
121+
122+
**Exception**
123+
124+
| Error Code | Value | Description |
125+
| :--------- | :---- | :---------- |
126+
| EC_NULL_POINTER | -10002 | The ImageData object is null. |
127+
| EC_IMGAE_DATA_INVALID | -10069 | The input ImageData object contains invalid parameter(s). |
128+
129+
- Introduced in Dynamsoft Barcode Reader SDK version 11.2.3000 and Dynamsoft Capture Vision version 3.2.3000.

programming/maui/api-reference/utility/image-processor.md

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ class ImageProcessor
2727
| Method | Description |
2828
| ------ | ----------- |
2929
| [`CropImage`](#cropimagerect) | Crops an image based on the provided rectangle or quadrilateral. |
30-
| [`CropImage`](#cropimagequadrilateral) | Crops an image based on the provided rectangle or quadrilateral. |
30+
| [`CropAndDeskewImage(imageData,quadrilateral,dstWidth,dstHeight,padding)`](#cropanddeskewimageimagedataquaddstwidthdstheightpaddingerrorcode) | Crops and deskew an image based on the provided quadrilateral and additional information. |
31+
| [`CropAndDeskewImage(imageData,quadrilateral)`](#cropanddeskewimageimagedataquad) | Crops and deskew an image based on the provided quadrilateral. |
3132
| [`AdjustBrightness`](#adjustbrightness) | Adjusts the brightness of an image. |
3233
| [`AdjustContrast`](#adjustcontrast) | Adjusts the contrast of an image. |
3334
| [`FilterImage`](#filterimage) | Applies a filter to an image. |
@@ -56,12 +57,12 @@ ImageData? CropImage(ImageData imageData, DMRect rect);
5657

5758
The cropped `ImageData`.
5859

59-
### CropImage(quadrilateral)
60+
### CropAndDeskewImage(imageData,quadrilateral,dstWidth,dstHeight,padding,errorCode)
6061

61-
Crops an image based on the provided quadrilateral.
62+
Crops and deskews an image based on the provided quadrilateral and additional information.
6263

6364
```csharp
64-
ImageData? CropImage(ImageData imageData, Quadrilateral quadrilateral);
65+
partial ImageData? CropAndDeskewImage(ImageData imageData, Quadrilateral quadrilateral, int dstWidth, int dstHeight, int padding);
6566
```
6667

6768
**Parameters**
@@ -70,9 +71,25 @@ ImageData? CropImage(ImageData imageData, Quadrilateral quadrilateral);
7071

7172
`[in] quadrilateral`: The `Quadrilateral` specifying the region to crop.
7273

73-
**Return Value**
74+
`[in] dstWidth`: The width of the destination image.
7475

75-
The cropped `ImageData`.
76+
`[in] dstHeight`: The height of the destination image.
77+
78+
`[in] padding`: The padding value to be added to the destination image.
79+
80+
### CropAndDeskewImage(imageData,quadrilateral)
81+
82+
Crops and deskews an image based on the provided quadrilateral. The arguments dstWidth, dstHeight, and padding are set to 0.
83+
84+
```csharp
85+
partial ImageData? CropAndDeskewImage(ImageData imageData, Quadrilateral quadrilateral);
86+
```
87+
88+
**Parameters**
89+
90+
`[in] imageData`: The `ImageData` to crop.
91+
92+
`[in] quadrilateral`: The `Quadrilateral` specifying the region to crop.
7693

7794
### AdjustBrightness
7895

programming/maui/release-notes/maui-3.md

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,76 @@ noTitleIndex: true
99

1010
# Release Notes v3.x - DynamsoftCaptureVisionRouter Module
1111

12+
## 3.2.3000 (11/18/2025)
13+
14+
### 🎉Milestone Release
15+
16+
Version 3.2.1000 introduces a series of AI-driven improvements designed to enhance barcode and MRZ detection accuracy, processing speed, and configuration flexibility.
17+
18+
This release focuses on practical performance gains for production environments across retail, logistics, manufacturing, and identity verification workflows.
19+
20+
### ✨ Key Highlights
21+
22+
#### AI-Powered Barcode Detection and Decoding
23+
24+
- New Localization Models – Introduces [`OneDLocalization`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/localization-modes.html#modelnamearray) and [`DataMatrixQRCodeLocalization`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/localization-modes.html#modelnamearray) neural network models for improved detection of **blurred / low-resolution 1D codes**, or **partially damaged DataMatrix/QR codes**.
25+
- Specialized Decoders – Adds [`EAN13Decoder`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/deblur-modes.html#modelnamearray) and [`Code128Decoder`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/deblur-modes.html#modelnamearray) models optimized for **long-distance** and **motion-blurred** decoding scenarios.
26+
- Redesigned Deblur Model – The [`OneDDeblur`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/deblur-modes.html#modelnamearray) model now provides more effective recovery from **motion and focus blur**.
27+
- Configurable Model Selection – The new `ModelNameArray` parameter supports flexible model loading and fine-grained control for specific barcode types.
28+
29+
#### Precision and Processing Control
30+
31+
- Enhanced Deblur Methods – [`DM_DEEP_ANALYSIS`]({{ site.dcvb_parameters_reference }}barcode-reader-task-settings/deblur-modes.html#dm_deep_analysis) now includes sub-level control with `OneDGeneral`, `TwoDGeneral`, and `EAN13Enhanced` options.
32+
- Barcode Count Expectation – The new [`ExpectedBarcodesCount`]({{ site.dcvb_parameters_reference }}barcode-format-specification/expected-barcodes-count.html) parameter enables **format-specific quantity control** and **early termination** in fixed-count workflows.
33+
- Improved Region Detection – The new [`RPM_GRAY_CONSISTENCY`]({{ site.dcvb_parameters_reference }}image-parameter/region-predetection-modes.html#rpm_gray_consistency) mode provides more precise region extraction based on **grayscale uniformity** and **local consistency** for document and label processing.
34+
35+
#### AI-Powered MRZ Detection
36+
37+
- Neural MRZ Localization – The new [`MRZLocalization`]({{ site.dcvb_parameters_reference }}label-recognizer-task-settings/localization-modes.html#modelnamearray) model improves region detection accuracy and delivers up to **42.7%** faster processing for MRZ-based document workflows.
38+
- Configurable Localization Control – The new [`LocalizationModes`]({{ site.dcvb_parameters_reference }}label-recognizer-task-settings/localization-modes.html) parameter allows configuration for text line detection.
39+
40+
#### Smart Document Capture
41+
42+
- Clarity-Based Frame Selection – Automatically selects the sharpest and highest-quality frame in live capture workflows.
43+
- Cross-Frame Verification – Updated verification algorithms enhance result reliability.
44+
45+
### Performance Highlights
46+
47+
#### Barcode Workflows
48+
49+
- Up to **26.5%** higher read rates under blur conditions with as much as **44%** faster processing.
50+
- Reliable decoding of DataMatrix and QR codes with missing or damaged finder patterns.
51+
- Extended operational range beyond 75 cm for long-distance barcode scanning.
52+
53+
#### Document Workflows
54+
55+
- Improved performance in live video capture environments.
56+
- Consistent document quality through clarity-based frame evaluation.
57+
- Faster MRZ processing for high-throughput identity verification
58+
59+
### Developer Notes
60+
61+
- Backward Compatibility – Fully compatible with existing integrations; no code-level changes required for upgrade.
62+
- Configuration Flexibility – Expanded parameter set allows comprehensive model configuration for scenario-specific tuning.
63+
- Production Stability – All new models validated in enterprise environments.
64+
65+
### New
66+
67+
- Added a new method, [`switchCapturingTemplate`]({{ site.dcv_maui_api }}capture-vision-router/multiple-file-processing.html#switchcapturingtemplate), which allows switching templates dynamically during the image processing workflow.
68+
- Added a new method, [`clearDLModelBuffers`]({{ site.dcv_maui_api }}capture-vision-router/settings.html#cleardlmodelbuffers), to release memory by clearing buffered deep learning models.
69+
- Added a new method, [`setGlobalIntraOpNumThreads`]({{ site.dcv_maui_api }}capture-vision-router/settings.html#setglobalintraopnumthreads), to configure the global number of threads used for model execution.
70+
- Added a new button, `cameraToggleButton`, to the `CameraView`, allowing users to switch between the front and back cameras.
71+
The following APIs are provided for configuring the `cameraToggleButton`:
72+
- [`setCameraToggleButton`]({{ site.dce_maui_api }}auxiliary-api/dcecameraview.html#setcameratogglebutton)
73+
- [`setCameraToggleButtonVisible`]({{ site.dce_maui_api }}auxiliary-api/dcecameraview.html#setcameratogglebuttonvisible)
74+
- [`getCameraToggleButtonVisible`]({{ site.dce_maui_api }}auxiliary-api/dcecameraview.html#getcameratogglebuttonvisible)
75+
- Added new methods to class `ImageIO` for reading and saving images:
76+
- [`ReadFromMemory`]({{ site.dcv_maui_api }}utility/image-io.html#readfrommemory)
77+
- [`SaveToMemory`]({{ site.dcv_maui_api }}utility/image-io.html#savetomemory)
78+
- Added new methods to class `ImageProcessor` for cropping images:
79+
- [`CropAndDeskewImage(imageData,quadrilateral,dstWidth,dstHeight,padding)`]({{ site.dcv_maui_api }}utility/image-processor.html#cropanddeskewimageimagedataquaddstwidthdstheightpaddingerrorcode)
80+
- [`CropAndDeskewImage(imageData,quadrilateral)`]({{ site.dcv_maui_api }}utility/image-processor.html#cropanddeskewimageimagedataquad)
81+
1282
## 3.0.5200 (08/18/2025)
1383

1484
### Fixed

0 commit comments

Comments
 (0)