Issue: Often you might find that a barcode is damaged, for example, scratched, marked up, or incomplete with missing corners, etc.
Solution: We can try different localization methods to identify the location of the barcode that is severely damaged and then use our proprietary algorithm to complete the QR Code to improve the decoding rate.
JSON Template:
{
"ImageParameter" : {
"BarcodeFormatIds": [
"BF_QR_CODE",
"BF_MICRO_QR"
],
"LocalizationModes" : [
{
"LibraryFileName" : "",
"LibraryParameters" : "",
"Mode" : "LM_CONNECTED_BLOCKS"
},
{
"LibraryFileName" : "",
"LibraryParameters" : "",
"Mode" : "LM_SCAN_DIRECTLY",
"ScanDirection" : 0,
"ScanStride" : 0
},
{
"LibraryFileName" : "",
"LibraryParameters" : "",
"Mode" : "LM_STATISTICS"
},
{
"LibraryFileName" : "",
"LibraryParameters" : "",
"Mode" : "LM_LINES"
}
],
"ImagePreprocessingModes": [
{
"LibraryFileName": "",
"LibraryParameters": "",
"Mode": "IPM_GENERAL"
},
{
"LibraryFileName": "",
"LibraryParameters": "",
"Mode": "IPM_GRAY_EQUALIZE",
"Sensitivity": 5
},
{
"LibraryFileName": "",
"LibraryParameters": "",
"Mode": "IPM_GRAY_SMOOTH",
"SmoothBlockSizeX": 3,
"SmoothBlockSizeY": 3
}
],
"BarcodeComplementModes": [
{
"Mode": "BCM_AUTO"
}
],
"Name": "Settings",
"Timeout" : 100000
},
"Version" : "3.0"
}
Binarized image produced by Dynamsoft Barcode Reader:
Template for Dynamsoft Barcode Reader:
JavaScript Code Snippet:
barcodeReader.initRuntimeSettingsWithString(template);