Documentation
Table of contents
Notice: This documentation is archived. For the latest product features and documentation, please visit Dynamsoft Capture Vision Documentation.

DLR Release Notes - iOS 3.x

3.2.30 (05/15/2024)

Highlights

  • Added confusable character distinguishing: this feature enhances the library’s ability to distinguish between common confusable character sets including {0, o, O}, {1, I, l}, and {5, s, S}, across popular fonts like Arial, Times New Roman, and Verdana, etc.
  • Supported confusable character set customization: leveraging the new caching mechanism in the CaptureVisionRouter (CVR) module, the library now enables users to customize confusable character sets to meet the needs of specific scenarios.
  • Introduced the capability for users to influence the image processing process by altering intermediate results. Users can now clone, edit, and substitute intermediate result units within the callback function of each type. Subsequent operations will then proceed based on the updated unit.
  • Introduced a feature for multi-condition filtering across products. Users can now specify filtering criteria for the task results of a TargetROIDef by implementing an OutputTaskSetting based on the task results of varying products from descendant TargetROIDef objects.
  • Enhanced the Offset parameter in TargetROIDef. Users now have the capability to meticulously customize components of the coordinate system, including the origin, X-axis, and Y-axis, for precise offset calculation.
  • Introduced a feature for grouping text lines. A text line group consists of spatially adjacent lines of text. Through the TextLineSpecification parameters, users can now do two things:
    • Put text lines in groups and also define the spatial relationship between different groups;
    • Specify whether to concatenate text line results within a group, how to do the concatenation and whether to output the concatenated result.

Changelogs

Improved

  • Improved the speed of TextLineGroup detection by optimizing internal logic.
  • Security update for DynamsoftLabelRecognizer library and other corresponding libraries.
  • Supported multiple instances of the class CaptureVisionRouter.
  • Supported the filter configuration of the characters that are not recognized by the Deep Neural Network via the Filter.txt file.
  • Improved the usage count logic of the concurrent license mode.
  • Improved the experience of local cache usage when failing to connect the license server. The renewal of the local cache is optimized as well.
  • Improved the CharacterModel loading mechanism. If a model file is available under the DynamsoftResources.bundle file, the CharacterModel will be loaded autometically. Otherwise, it will be downloaded from the server.

New

Changes

  • Changed the logic of the stopCapturing method.
    • DSCaptureResultReceiver will not receive results after stopCapturing is triggered with waitForRemainingTasks false.
    • Support stop capturing after the pauseCapturing method is triggered.
  • Changed the logic of the capturedResultItemTypes setting of DSSimplifiedCaptureVisionSettings:
    • If the result item types don’t match the specified template, the method updateSettings will return the error code DSErrorParameterValueInvalid with the message “The captured result item types do not match the task configurations in the template”.
    • Based on the capturedResultItemTypes setting, the irrelevant tasks will be removed from the template.
    • The capturedResultItemTypes should include at least one of the DSCapturedResultItemTypeBarcode, DSCapturedResultItemTypeTextLine, DSCapturedResultItemTypeDetectedQuad, DSCapturedResultItemTypeNormalizedImage. Otherwise, the method updateSettings will return the error code DSErrorParameterValueInvalid with the message “The captured result item types should contain at least one task result type”.
  • Refactored the DSContour class. Please view API reference - DSContour class for more information.
  • Changed the internal logic of the property resultUnitTypesOnlyForInput of DSObservationParameters. The method only takes effect when the callback of the specified result unit is implemented.

Fixed

  • Fixed a crash bug that might happen when triggering the setNextImageToReturn method of the DSImageSourceAdapter class.
  • Fixed a crash bug of the Replace method of the IntermediateResultUnit class. The method will return the error code EC_RESULT_TYPE_MISMATCH_IRREPLACEABLE when the result type is mismatched.
  • Fixed a bug where error messages are not output when parsing the parameter templates.
  • Fixed a bug where multiple results were output from the same text area.
  • Fixed a bug where the capture might be blocked due to the network latency.
  • Fixed the bugs of usage count. The usage count of text line recognition might be double counted when the intermediate results are output.

3.0.20 (12/07/2023)

DynamsoftLabelRecognizer SDK has been revamped to integrate with DynamsoftCaptureVision (DCV) architecture, which is newly established to aggregate the features of functional products powered by Dynamsoft. The features are designed to be pluggable, customizable and interactable. In addition, the functional products share the computation so that their processing speed is much higher than working individually.

  • DynamsoftCaptureVision architecture consists of:
    • ImageSourceAdapter(ISA), the standard input interface for you to convert image data from different sources into the standard input image data. In addition, ISA incorporates an image buffer management system that allows instant access to the buffered image data.
    • CaptureVisionRouter (CVR), an engine for you to update templates, retrieve images from ISA, coordinate corresponding functional products and dispatch the results to the receivers.
    • Functional products that perform image processing, content understanding and semantic processing. The functional products are pluggable and passively called by CVR when they are required.
    • Result receiver interfaces. You can implement CapturedResultReceiver (CRR) to receive the CapturedResults that output when the processing on an image is finalized. You can also implement IntermediateResultReceiver (IRR) to get timely results from different stages of the workflow.
  • The parameter template system has been comprehensively upgraded.
    • Multiple algorithm task settings are available. You can define barcode decoding, label recognizing, document scanning and semantic processing tasks in one template file.
    • Extended the feature of the ROI system. By configuring the target ROI parameters, you can not only specify an ROI on the original image but also define the dependencies of the algorithm tasks. This feature enables you to customize the workflow when processing complex scenarios.
    • The image processing parameters are separated from the task parameters so that the template settings become more clear and concise.
  • The intermediate result system has been improved.
    • Achieved the intermediate result sharing between different functional products. The results that have the same image source and processing parameters are directly reused, which speeds up the image processing workflow. You don’t need to add any additional code to enable the intermediate result sharing. The library can recognize all the reusable results automatically based on the template file you uploaded.
    • The readability and interactivity of the intermediate results are enhanced. IntermediateResultReceiver allows you to receive up to 27 different types of Intermediate results. You can clearly read which stage of the algorithm each result is output from. In addition, IntermediateResultManager allows you to intervene in the workflows by modifying the intermediate results.

The APIs of Dynamsoft Label Recognizer are comprehensively updated. Please follow the view [upgrade instructions]/label-recognition/docs-archive/mobile/programming/objectivec-swift/upgrade.html to update your code.

Is this page helpful?

YesYes NoNo

Version 3.2.30

    • version 3.2.30
    • Version 3.x
      • Version 3.0.20
    • Version 2.x
      • Version 2.2.20
      • Version 2.0.0
    • Version 1.x
      • Version 1.2.1
      • Version 1.2.0
      • Version 1.0.0
    Change +