How to Test Barcode Reading Performance Using Dynamsoft's Daemon and BatchDecode Tools

This guide introduces how to use the BatchDecodeProjectGuardian daemon and the BatchDecode program by Dynamosoft for barcode reading performance testing.

How to use BatchDecodeProjectGuardian to call BatchDecode for barcode performance testing

  1. Open GuardianConfig.iniand configure the settings. The default settings are shown as below.


  2. Set -i of the ApplicationArgument field to the file directory of the barcode images to be processed. The default directory is the Images folder under the installation folder of Dynamsoft Barcode Reader.

  3. Save the settings and double click BatchDecodeProjectGuardian.exe to run.

  4. You can then check the program log in GuardianLog_BatchDecode_xxxxx.csv in the same directly of BatchDecodeProjectGuardian.exe. You can check the performance results in DBR_T_xxxx_xxxxx.csv in the directory of BatchDecode.exe.

How to Use BatchDecodeProjectGuardian daemon tool

Basic introduction

BatchDecodeProjectGuardian.exe is an auxiliary tool provided by Dynamsoft. The tool can monitor a specified program, restart it when the program crashes or becomes unresponsive, and keep a log of running records.

The configuration file

GuardianConfig.ini is the configuration file for BatchDecodeProjectGuardian.exe.

Fields in the configuration file:

  • ApplicationPath: Specifies the program to be guarded.
  • ApplicationArgument: Sets the input parameters of the guarded program, separated by spaces.
  • ApplicationLogDir: Sets output folder of the guarded program.
  • TimeOutMin: Sets the daemon timeout value. When the guarded program has no new output for the specified time, the program will be restarted. The default timeout value is 2 minutes. Time unit: minutes.

The log file

After running BatchDecodeProjectGuardian.exe, a csv file with the name "GuardianLog_" + daemon name + runtime will be created in the same directory. The file records the working status of the daemon. Each time the guarded program is started or restarted, a new record will be registered in the log file.

Fields in the log file:

  • Application_ID: Marks the name of the program being guarded, distinguished by time.
  • Running_Status: Indicates the status of the daemon, including: running, finished, timeout, and crashed.
  • Start_Time: Indicates the start time of the run.
  • End_Time: Indicates the end time of the run.
  • Latest_Log: Logs the information when the program times out or exits abnormally. The log content consists of result file path plus the last line of the result content.

How to use BatchDecodeProjectGuardian

You can follow the steps below to use the daemon tool:

  1. Configure GuardianConfig.ini as needed.

  2. Double clickBatchDecodeProjectGuardian.exe and it will open a console window as follows (take BatchDecode as an example):


    Figure 1 daemon execution interface
  3. Once the tool is started, it will output a record every 10 seconds to report the current running status of the guarded program. The tool will exit when the program finishes the execution and exits successfully.

If the guarded program crashes or times out during the running, BatchDecodeProjectGuardian.exe is running, the daemon tool will actively restart the program and display the corresponding restart information in the console interface as well as record it in the GuardianLog file.

How to use the performance testing tool - BatchDecode

Basic introduction

BatchDecode is a tool to help you evaluate the performane of Dynamsoft Barcode Reader (DBR). This tool provides performance testing data by calling DBR to decode barcodes from a batch of images in a specified folder.

How to use BatchDecode

Start up and Configuration

1) Command line startup parameters

> BatchDecode.exe[-i] [-o]

  • -i: Sets the directory where the barcode files to be evaluated is located, for example:
    -i "D:\\images".
    The default is the directory where BatchDecode.exe exists.

  • -o: Sets the directory to output the evaluation results, for example:
    -o "D:\\output".
    The default is the directory where BatchDecode.exe exists.

If the program is started without any command line parameters or you run it by double clicking, the following interface will be displayed:


Figure 2. The startup interface of the evaluation program without command parameters

You can follow the interface prompts. After setting the parameters, input r to automatically starts the performance evaluation of your barcode files.
You can find the performance result in the output directory you specified, with the name of DBR_T_DEFULT_xxxxx.csv. There is an additional file DBR_T_DEFULT_xxxxx_original.txt storing the original barcode decoding results which cannot be displayed in the csv file.

Using template files (optional)

If you want to use the template file, please create a new templates subdirectory in the directory where the BatchDecode.exe exists, then place the template file into the newly created templates directory.

After the performance testing program has started, it will automatically take the barcode reading settings in the DBR template file, decode barcodes, and output the results.

If the directory contains multiple template files, the performance testing program will evaluate all the templates and exists automatically once done.


Figure 3. Create templates subdirectory


Figure 4. Creates barcode reading templates


Figure 5. Testing results using different templates

Interpretation of Results

After the program has executed, you will see DBR_T_DEFULT_xxxxx.csv, the performance testing result file, in the output directory. Open the file and you can see the following fields:

Field Description
No. ID of the barcode file.
Image Source Path of the source image files.
Read Duration (ms) The time spent reading barcodes in the file. Unit in ms.
Barcode Count Count of barcodes decoded in the file.
Barcode Hex Hex encoding of all the decoded barcode content decoded. Mainly used for comparing different identification results.
Barcode Text The content of the barcode identified. If the recognition result cannot be full displayed due to the output format and word count limit, the field 'Original' will be set to No.
Original If the value of this field is No, you can refer to the 'Note' section at the bottom of the file to see the details of the barcode.

The statistics section of the document:

Field Description
Total Image Count Number of image files processed
Images with Barcodes Recognized Number of image files with barcodes recognized
Total Barcode Count Total barcodes recognized
Time Cost of All Images (ms) Total time spent on reading barcodes from all images
Recognition Rate Percentage of images with barcodes recognized, i.e., Images with Barcodes Recognized / Total Image Count
Avg Time of Total Scan Per Image (ms) The average time spent for decoding an image file, i.e., Total Time Spent for Recognition / Total Image Count
Avg Time of Total Scan Per Barcode (ms) The average time spent decoding a barcode, i.e., Total Time Cost of All Images / Total Barcode Count.
Time Cost of Images with Barcodes Recognized (ms) Total time spent decoding images with barcodes recognized
Avg Time of Successful Scan Per Image (ms) The average time spent decoding an image file with barcodes found, i.e., Time Spent for Recognition Images with Barcodes Found / Images with Barcodes Recognized

results matching ""

    No results matching ""