CN114021596B - Bar code recognition method and device based on deep learning - Google Patents
Bar code recognition method and device based on deep learning Download PDFInfo
- Publication number
- CN114021596B CN114021596B CN202111106727.4A CN202111106727A CN114021596B CN 114021596 B CN114021596 B CN 114021596B CN 202111106727 A CN202111106727 A CN 202111106727A CN 114021596 B CN114021596 B CN 114021596B
- Authority
- CN
- China
- Prior art keywords
- code
- code system
- deep learning
- classifier
- input image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000013135 deep learning Methods 0.000 title claims abstract description 117
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000001514 detection method Methods 0.000 claims abstract description 65
- 238000012545 processing Methods 0.000 claims abstract description 35
- 238000013507 mapping Methods 0.000 claims abstract description 25
- 238000012549 training Methods 0.000 claims description 50
- 230000006870 function Effects 0.000 claims description 22
- 238000013136 deep learning model Methods 0.000 claims description 10
- 238000003860 storage Methods 0.000 claims description 8
- 230000004913 activation Effects 0.000 claims description 6
- 238000004321 preservation Methods 0.000 claims description 5
- 238000012937 correction Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1413—1D bar codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/1408—Methods for optical code recognition the method being specifically adapted for the type of code
- G06K7/1417—2D bar codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K7/00—Methods or arrangements for sensing record carriers, e.g. for reading patterns
- G06K7/10—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
- G06K7/14—Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
- G06K7/1404—Methods for optical code recognition
- G06K7/146—Methods for optical code recognition the method including quality enhancement steps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Toxicology (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Electromagnetism (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
The invention discloses a bar code recognition method and device based on deep learning, wherein the method comprises the following steps: acquiring a bar code or two-dimensional code image to be identified; loading a code system classifier which is trained in advance through deep learning, and predicting the code system type of an input image by using the code system classifier; judging whether the code system is effective or not according to whether the probability prediction value of the classification result of the code system classifier is larger than a threshold value; when the code system is determined to be effective, loading a corresponding code recognizer which is trained in advance through deep learning according to the code system type, and mapping and recognizing an input image as coding information by the code recognizer; and decoding the coded information obtained by the code identifier through mapping and identifying the input image to obtain the original information of the bar code or the two-dimensional code. The invention realizes the majority of the work of the traditional identification processes such as one-time processing detection, correction, binarization, grid division and the like, and solves the problems of complex flow and poor anti-interference capability of the existing bar code or two-dimensional code identification method.
Description
Technical Field
The invention relates to the field of interactive control, in particular to a barcode recognition method and device based on deep learning.
Background
Bar code (barcode): a plurality of black bars and blanks with different widths are arranged according to a certain coding rule to express a graphic identifier of a group of information. A common bar code is a pattern of parallel lines arranged by black bars (abbreviated bars) and white bars (abbreviated spaces) of widely varying reflectivity. The bar code can mark many information such as the country of production, manufacturer, commodity name, date of production, book class number, mail start and stop place, category, date, etc. of the article, so it is widely used in many fields such as commodity circulation, book management, postal management, banking system, etc.
Two-dimensional code (2-Dimensional Bar Code): the two-dimensional code bar code is mainly characterized in that information is encoded according to a certain rule through a certain specific geometric figure, and the encoding mode can enable the two-dimensional code to store rich data.
In the prior art, an image acquisition device or a photoelectric scanning device can be utilized to detect a bar code or a two-dimensional code, and further identify information contained in the bar code or the two-dimensional code. The two-dimensional code recognition process generally includes: detecting and cutting a two-dimensional code area, correcting a two-dimensional code, binarizing a two-dimensional code image and dividing grids to obtain binary codes, decoding, and having complex recognition algorithm and process and low recognition efficiency.
Disclosure of Invention
The invention mainly solves the technical problem of providing a bar code recognition method and device based on deep learning, which can improve recognition efficiency.
In order to solve the technical problems, the invention adopts a technical scheme that: a bar code recognition method based on deep learning comprises the following steps: acquiring a bar code or two-dimensional code image to be identified; loading a code system classifier which is trained in advance through deep learning, and predicting the code system type of an input image by using the code system classifier; the code system type comprises a code system and a version of a bar code and a two-dimensional code; judging whether the code system is effective or not according to whether the probability prediction value of the classification result of the code system classifier is larger than a threshold value; when the code system is determined to be effective, loading a corresponding code recognizer which is trained in advance through deep learning according to the code system type of the input image predicted by the code system classifier, and mapping and recognizing the input image as coding information by the code recognizer; and decoding the coded information obtained by the code identifier through mapping and identifying the input image to obtain the original information of the bar code or the two-dimensional code.
The code classifier is trained in advance through deep learning, and specifically comprises the following steps: acquiring bar codes or two-dimensional code images of different code system types to form a first data set; wherein each piece of data at least comprises { image preservation path, code system type, binary sequence coding information }; and training a deep learning model by using the first data set to obtain the code system classifier.
The method for loading the code system classifier which is trained in advance through deep learning, and predicting the code system type of the input image by using the code system classifier specifically comprises the following steps: inputting a bar code or a two-dimensional code image to be identified to a deep learning network; and judging the code system type corresponding to the maximum probability according to the output of the deep learning network.
Wherein training the code recognizer through the deep learning specifically includes: calculating a coder by using a formula (1), and calculating a loss function of the coder by using a formula (2); wherein x is an input image, belongs to a c-type code system, c to [1, M ], M is a positive integer, y c is a code information label, G c is a code identifier of the c-type code system, N c is a binary sequence code information length of the code system, and G c is a code identifier; z c is predictive coding information, also a sequence of length N c; sigmoid is an activation function used to scale the value of z c to between 0 and 1, loss c is the Loss of the encoder G c for the class c code system;
zc=Gc(x) (1)
And (3) performing deep learning training on the coder G c by using the formulas (1) and (2) and the first data set.
Loading a corresponding code recognizer which is pre-trained through deep learning according to the code system type of the input image predicted by the code system classifier, and identifying the input image mapping as coding information by the code recognizer, wherein the code recognizer specifically comprises the following steps: selecting a corresponding code identifier from a plurality of pre-trained code identifiers according to the code system type of the input image predicted by the code system classifier; using the formula (1) to map and identify an input image to obtain predictive coding information; and performing binarization processing on the predictive coding information so as to obtain coding information of the input image.
When the bar code or the two-dimensional code image to be identified is a plurality of targets, the method further comprises: loading a pre-trained deep learning multi-target detection model, and detecting and identifying an input image by using the deep learning multi-target detection model to obtain target characteristics corresponding to a plurality of bar codes or two-dimensional codes; loading a code system classifier which is trained in advance through deep learning, and predicting the code system type of an input image by using the code system classifier, wherein the code system type is specifically as follows: loading a code system classifier which is trained in advance through deep learning, and respectively predicting code system types of target features corresponding to the bar codes or the two-dimensional codes by using the code system classifier; loading a corresponding code recognizer which is trained in advance through deep learning according to the code system type of the input image predicted by the code system classifier, and mapping and recognizing the input image as coding information by the code recognizer, wherein the specific steps are as follows: respectively loading corresponding code identifiers which are trained in advance through deep learning according to code system types of target features corresponding to the bar codes or the two-dimensional codes respectively obtained through prediction of the code system classifier, respectively mapping and identifying the target features corresponding to the bar codes or the two-dimensional codes as corresponding prediction coding information through the code identifiers, and carrying out binarization processing on the prediction coding information; decoding the coded information obtained by the code identifier through mapping and identifying the input image to obtain the original information of the bar code or the two-dimensional code, wherein the method specifically comprises the following steps: and respectively decoding the coded information obtained by the code identifier through identifying the target features corresponding to the bar codes or the two-dimensional codes so as to obtain the original information of the bar codes or the two-dimensional codes.
The method comprises the steps of training a multi-target detection model in advance through deep learning, and specifically comprises the following steps: acquiring bar codes or two-dimensional code images of different code system types to form a second data set; the second data set additionally marks the position size information of each code in the image, and the marking content at least comprises the following components: image preservation path, position size information, code system type and binary sequence coding information; setting the target category of the multi-target detection model to be 2; minimizing a loss function of the multi-objective detection model by the second dataset and deep learning technique to train the multi-objective detection model
The invention adopts another technical scheme that a bar code recognition device based on deep learning is provided, which comprises a storage unit, an image acquisition unit and a processing unit; the processing unit comprises an image processing unit and a decoding unit; the image acquisition unit is used for acquiring a bar code or two-dimensional code image to be identified; the image processing unit includes: the code system classifying module is used for loading a code system classifier which is trained in advance through deep learning and predicting the code system type of an input image by using the code system classifier; the code identifying module is used for judging whether the code system is effective according to whether the probability prediction value of the classification result of the code system classifier is larger than a threshold value, loading a corresponding code identifier which is finished through deep learning and pre-training according to the code system type of the input image predicted by the code system classifying module when the code system is determined to be effective, and mapping and identifying the input image as coding information by the code identifier; the decoding unit is used for decoding the coded information obtained by mapping and identifying the input image by the code identifier so as to obtain the original information of the bar code or the two-dimensional code.
Wherein, still include model training unit for: acquiring bar codes or two-dimensional code images of different code types to form a first data set; wherein each piece of data at least comprises { image save path, code system type, binary sequence coding information }; training a deep learning model by utilizing the first data set to obtain the code system classifier; calculating a coder by using a formula (1), calculating a loss function of the coder by using a formula (2), and performing deep learning training on the coder G c by using the formulas (1), (2) and the first data set;
zc=Gc(x) (1)
Wherein x is an input image, belongs to a c-type code system, c to [1, M ], M is a positive integer, y c is a coding information label, G c is a code identifier of the c-type code system, and N c is the binary sequence coding information length of the code system; z c is predictive coding information, also a sequence of length N c. sigmoid is an activation function used to scale the value of z c to between 0 and 1, loss c is the Loss of the encoder G c for the class c code system.
The code identifying module is also used for selecting a corresponding code identifying device according to the code system type judged by the code system classifying module, calculating according to the code identifying device and the formula (1) to obtain predictive coding information, and carrying out binarization processing on the predictive coding information.
Wherein the image processing unit further comprises a multi-target detection module; when the bar code or the two-dimensional code image to be identified is a plurality of targets, the multi-target detection module is used for loading a pre-trained deep learning multi-target detection model, and detecting and identifying an input image by using the deep learning multi-target detection model so as to obtain target characteristics corresponding to the bar codes or the two-dimensional codes respectively; the code system classification module is used for loading a code system classifier which is trained in advance through deep learning, and predicting code system types of target features corresponding to the bar codes or the two-dimensional codes respectively by using the code system classifier; the code recognition module is used for loading corresponding code recognition devices which are trained in advance through deep learning according to code system types of target features corresponding to the bar codes or the two-dimensional codes respectively obtained through prediction of the code system classifier, mapping and recognizing the target features corresponding to the bar codes or the two-dimensional codes respectively by the code recognition devices as corresponding prediction coding information, and carrying out binarization processing on the prediction coding information; the decoding unit is used for respectively decoding the coded information obtained by identifying the target features corresponding to the bar codes or the two-dimensional codes by the code identifier so as to obtain the original information of the bar codes or the two-dimensional codes.
The multi-target detection model training system further comprises a multi-target model training unit, wherein the multi-target model training unit is used for acquiring bar codes or two-dimensional code images of different code system types to form a second data set, setting the target class of the multi-target detection model to be 2, and minimizing a loss function of the multi-target detection model through the second data set and a deep learning technology so as to train the multi-target detection model; the second data set additionally marks the position size information of each code in the image, and the marking content at least comprises the following components: image save path, position size information, code system type, binary sequence coding information.
According to the bar code recognition method and device based on deep learning, the code system classifier and the code recognition device are trained in advance through deep learning, so that the code system classifier is loaded on an obtained image of a bar code or a two-dimensional code to predict the code system type, and the corresponding code recognition device is loaded to recognize coding information, so that most of the work of the traditional recognition processes such as one-time processing detection, correction, binarization and grid division is realized, and the problems of complex flow and poor anti-interference capability of the existing bar code or two-dimensional code recognition method are solved; meanwhile, the code system categories of the target bar code and the two-dimensional code image are identified by utilizing a pre-trained deep learning code system classifier, and the subsequent processing is carried out according to different code system categories, so that the method is applicable to various code systems; furthermore, the obtained multiple bar codes or two-dimensional code images can be subjected to target recognition by loading a multi-target detection model based on deep learning, so that the method is suitable for multi-target bar code recognition.
Drawings
FIG. 1 is a schematic diagram of a prior art bar code information composition;
FIG. 2 is a schematic diagram of a prior art QR code information composition;
FIG. 3 is a schematic flow chart of a method for identifying a barcode based on deep learning according to an embodiment of the present invention;
FIG. 4 is a prior art EAN-13 code schedule;
FIG. 5 is a flow chart of a method for pre-training a codebook classifier by deep learning in an embodiment of the present invention;
FIG. 6 is a flow chart of "loading a codebook classifier trained in advance by deep learning and predicting the codebook type of an input image using the codebook classifier" in the embodiment of step S12 in FIG. 3;
FIG. 7 is a schematic diagram of a code system classifier and a code recognizer obtained by deep learning training using a VGG-16 network structure in an embodiment of the present invention;
FIG. 8 is a flow chart of a method for pre-training a recognizer by deep learning in an embodiment of the present invention;
FIG. 9 is a flow chart of "loading a corresponding code recognizer trained in advance by deep learning according to the code pattern type of the input image predicted by the code pattern classifier and recognizing the input image map as encoded information" in the embodiment of step S14 in FIG. 3;
FIG. 10 is a schematic flow chart of a method for identifying a barcode based on deep learning according to another embodiment of the present invention;
FIG. 11 is a schematic diagram of a code system classifier and a code identifier utilizing a multi-objective detection model (Faster-RCNN or SSD) network architecture in accordance with an embodiment of the present invention;
FIG. 12 is a flow chart of a method of pre-training a multi-objective detection model by deep learning in an embodiment of the invention;
FIG. 13 is a schematic structural diagram of a deep learning-based barcode recognition device according to an embodiment of the present invention;
fig. 14 is a schematic structural diagram of a barcode recognition device based on deep learning according to another embodiment of the present invention.
Detailed Description
In order to describe the technical content, constructional features, achieved objects and effects of the present invention in detail, the present invention will be described in detail with reference to the accompanying drawings and embodiments.
Referring to FIGS. 1 and 2, the present invention divides the image information of all bar codes and two-dimensional codes into "positioning information" and "encoding information" for the bar code information composition schematic diagram of the prior art and the QR code information composition schematic diagram of the prior art (refer to the design and implementation of image recognition systems of Yahuan, wang Chao, hu Chen, EAN-13 codes, modern electronic technology, 2009, 032 (022): 106-109; ISO/IEC 18004:2015, section 6.3).
Positioning information used for determining the positions of the bar codes and the two-dimensional codes; for example, as shown in FIG. 1, the initiator, the segmenter, and the terminator of the bar code; as shown in fig. 2, a position detection pattern, a correction pattern, and a separator of the QR code;
Encoding information, represented by a binary sequence (black squares or lines representing 1, white squares or lines representing 0), comprising: all information required for decoding; for example, as shown in FIG. 1, the data symbol and the verifier of a bar code; as shown in fig. 2, the QR code includes format information, version information, data, and error correction codeword portions.
The specific content of the positioning information and the coding information depends on the respective coding specifications of each code system, and the differences thereof should not deviate from the protection scope of the present invention.
Fig. 3 is a schematic flow chart of a barcode recognition method based on deep learning in an embodiment of the invention. In this embodiment, when an operator needs to perform identification of a single barcode or two-dimensional code image, that is, when the barcode or two-dimensional code image to be identified is a single target, the method includes the following steps:
Step S11, a bar code or a two-dimensional code image to be identified is obtained.
The image is GRB, YUV or gray image, which can be collected by camera equipment or generated by computer software.
Step S12, loading a code system classifier which is trained in advance through deep learning, and predicting the code system type of the input image by using the code system classifier.
The code system type comprises a bar code and a code system and a version of a two-dimensional code.
In particular, bar codes come in a variety of code systems, including: EAN code, 39 code, codabar code, etc.; wherein, EAN codes are divided into EAN-8 and EAN-13 versions. Two-dimensional codes also have a variety of code systems, including: QR codes, PDF147 codes, han-xin codes, etc.; the QR code may have 1 to 40 different versions, and the encoding modes between the different versions are different. In the embodiment of the invention, codes with the same length according to binary sequence coding information are determined to be the same code system type.
Step S13, judging whether the code system is effective or not according to whether a probability prediction value of a classification result of the code system classifier is larger than a threshold value; if yes, go to step S14; otherwise, the flow ends.
When the probability prediction value of the classification result is larger than a threshold value, determining that the code system of the predicted input image is effective; otherwise, determining that the code system of the predicted input image is invalid; in the present embodiment, the threshold value is set to 0.5 in advance.
And step S14, loading a corresponding code recognizer which is trained in advance through deep learning according to the code system type of the input image predicted by the code system classifier, and recognizing the input image mapping as coding information by the code recognizer.
Wherein, different code system types correspondingly load different coders.
And S15, decoding the coded information obtained by mapping and identifying the input image by the code identifier to obtain the original information of the bar code or the two-dimensional code.
For example, when the input image predicted by the code classifier is an EAN-13 version of a bar code, the decoding process decodes the encoded information by looking up a table to obtain the original information of the EAN-13 bar code, such as the bar code shown in fig. 1, and the bar code input image map is identified by the encoder as encoded information :"101 0001011(9) 0100111(0) 0110011(1) 0011011(2) 0111101(3) 0100011(4) 01010 1001110(5) 1010000(6) 1000100(7) 1001000(8) 1110100(9) 1101100(2) 101",, wherein the values in brackets are converted by looking up the EAN-13 encoding list shown in fig. 4 (refer to: yahuan, wang Chao, hu Chen, image identification system design and implementation of EAN-13 code, modern electronics, 2009, 032 (022): 106-109). When the input image predicted by the code system classifier is a two-dimensional code of the QR code, the decoding process decodes the encoded information through operations such as masking and byte dividing to obtain the original information of the QR code. The decoding process is the prior art and is not described in detail herein.
Referring to fig. 5, the pre-training code classifier by deep learning specifically includes:
Step S20, obtaining bar codes or two-dimensional code images of different code system types to form a first data set.
Wherein each piece of data at least comprises { image preservation path, code system type, binary sequence coding information }.
In practical application, only a few commonly used code system types may be selected, and the embodiment of the invention is exemplified by three code system types of EAN-13 codes, QR-2 codes (25 x 25) and QR-5 codes (37 x 37).
The binary sequence encoded information includes all information required for decoding, but does not include positioning information for positioning a bar code or a two-dimensional code. The binary indicates that the black bar of the bar code or the black lattice point of the two-dimensional code represents 1, and the white bar or lattice point represents 0. The binary sequence lengths of bar codes or two-dimensional codes of different code types are different, for example, EAN-13 codes, QR-2 codes (25 x 25), and QR-5 codes (37 x 37) have the following sequence lengths:
EAN-13 code: left data symbol 42 bits, right data symbol 42, 84 bits total;
QR-2 version code: 25x25 size, 15 bits of format information, 0 bits of version information, 359 bits of data and error correction code word, 374 bits in total;
QR-5 version code: 37x37 size, 15 bits of format information, 0 bits of version information, 1079 bits of data and error correction code words, and 1094 bits in total;
According to the embodiment of the invention, the generation of bar codes or two-dimensional code images with different code types and the formation of the first data set can be randomly carried out through a computer, for example, bar codes and QR code images can be respectively generated based on Python open source standard libraries bar-code and qrcode, and binary sequence codes required by constructing the first data set can be obtained in functions generated by bar-code and qrcode.
And S21, training a deep learning model by using the first data set to obtain the code system classifier.
The deep learning model can adopt VGG-16, squeezeNet, mobileNet or other custom models; for example, the model is trained using a gradient descent algorithm using a Softmax classifier and a cross entropy (CrossEntropy) loss function, with the number of classification outputs of the deep learning model set to 3.
Referring to fig. 6, step S12, loading a code system classifier trained in advance by deep learning, and predicting a code system type of an input image using the code system classifier, specifically includes:
step S121, inputting a barcode or two-dimensional code image to be identified to the deep learning network.
And step S122, judging the code system type corresponding to the maximum probability according to the output of the deep learning network. Referring to fig. 7, the code classifier outputs [0.01,0.91,0.08] the prediction probabilities of the three codes [ EAN-13, qr-2, qr-5] respectively; wherein, the maximum is 0.91; therefore, the current input is determined to be QR-2 code, and the code system is determined to be valid because 0.91> 0.5.
Referring to fig. 8, the pre-training code recognizer through deep learning specifically includes:
step S30, the calculation of the encoder is performed by using the formula (1), and the calculation of the encoder loss function is performed by using the formula (2).
Specifically, z c=Gc (x) (1)
Wherein x is an input image, belongs to a c-type code system, c to [1, M ], M is a positive integer, y c is a coding information label, G c is a code identifier of the c-type code system, and N c is the binary sequence coding information length of the code system; z c is predictive coding information, also a sequence of length N c. sigmoid is an activation function used to scale the value of z c to between 0 and 1, loss c is the Loss of the encoder G c for the class c code system.
And S31, performing deep learning training on the coder by using the formulas (1) and (2) and the first data set.
Referring to fig. 9, step S14 loads a corresponding code recognizer that is trained in advance through deep learning according to the code pattern type of the input image predicted by the code pattern classifier, and the code recognizer recognizes the input image map as encoded information, and specifically includes:
step S141, selecting a corresponding code recognizer from a plurality of pre-trained code recognizers according to the code system type of the input image predicted by the code system classifier.
Step S142, the input image map is identified by using the formula (1) to obtain predictive coding information.
Step S143, binarizing the predictive coding information to obtain coding information of the input image.
For example, if the code system type of the input image predicted by the code system classifier is c-th, training a plurality of codersThe corresponding code identifier is selected as G c. The input image map is identified using equation (1) to obtain predictive coding information z c. Binarizing the predictive coding information z c to obtain coding information of an input image; wherein, the element of the sequence z c is set to 1 when it is greater than 0 and is set to 0 when it is less than or equal to 0.
Referring to fig. 7 again, a schematic structural diagram of a code system classifier and a code recognizer obtained by deep learning training using a VGG-16 network structure is shown; the main structure of the code identifier is a three-layer full-connection (Dense) network, and the code identifier and the code classifier (VGG-16) share part of the network structure, namely the Conv4-3 layer output of the VGG-16 network is used as the input of the full-connection network, so that the Conv4-3 layer and the previous network structure and weight are shared.
Specifically, a two-dimensional code of which code pattern is QR-2 version of the input image is predicted using a code pattern classifier (VGG-16), that is, c=2; further, the probability maximum value obtained by carrying out probability prediction on the classification result of the two-dimensional code of the QR-2 version by the code system classifier (VGG-16) is 0.91, and the two-dimensional code system of the QR-2 version is determined to be effective according to the probability prediction value of the classification result. Then, loading a corresponding code identifier G 2 according to the predicted code system type, wherein the output of the code identifier G 2 is a sequence of [1.342,0,2.103, -0.421, … …, -1.097], namely, the predicted coding information z 2, and the total number of elements is 374; finally, the predictive coding information z 2 is binarized by using the formula (3), and when the element is greater than 0, the element is set to 1, and when the element is less than or equal to 0, the element is set to 0, so that the sequence is [1,0, … …,0].
In other embodiments, the code classifier and the code recognizer may also be trained jointly, i.e., the training processes of the two are performed simultaneously; specifically, for the same input, the cross entropy (CrossEntropy) loss of the code classifier and the loss of the code recognizer (formula (2)) are calculated separately, the cross entropy loss and the loss of the code recognizer are summed, and the sum of the losses is minimized to realize joint training.
Referring to fig. 10, a barcode recognition method based on deep learning according to another embodiment of the present invention is shown. In this embodiment, when the operator needs to perform multi-target barcode or two-dimensional code image recognition, that is, when the barcode or two-dimensional code image to be recognized is a plurality of targets, the method includes:
Step S40, a bar code or a two-dimensional code image to be identified is acquired.
Step S41, loading a pre-trained deep learning multi-target detection model, and detecting and identifying an input image by using the deep learning multi-target detection model to obtain target characteristics corresponding to a plurality of bar codes or two-dimensional codes.
The target feature is an input feature of a classification layer of the multi-target detection model, and the classification layer is usually a full-connection layer or a deformed structure thereof, and in this embodiment, the classification layer is set to 2, and is used for predicting whether the target to be identified is a background or a barcode.
Step S42, loading a code system classifier which is trained in advance through deep learning, and predicting the code system type of the input image by using the code system classifier.
Specifically, loading a code system classifier which is trained in advance through deep learning, and respectively predicting code system types of target features corresponding to the plurality of bar codes or the two-dimensional codes by using the code system classifier.
And step S43, judging whether the code system is effective according to whether the probability prediction value of the classification result of the code system classifier is larger than a threshold value so as to screen out target features with effective code system.
And step S44, loading a corresponding code recognizer which is trained in advance through deep learning according to the code system type of the input image predicted by the code system classifier, and recognizing the input image mapping as coding information by the code recognizer.
Specifically, according to the code system type of the target features corresponding to the bar codes or the two-dimensional codes predicted by the code system classifier, loading corresponding code identifiers which are trained in advance through deep learning, mapping and identifying the target features corresponding to the bar codes or the two-dimensional codes as corresponding prediction coding information by the code identifiers, and performing binarization processing on the prediction coding information.
Referring to FIG. 11, a diagram of a code system classifier and a code identifier using a multi-objective detection model (fast-RCNN or SSD) network structure according to an embodiment of the present invention is shown. In this embodiment, when the fast-RCNN algorithm model is adopted, after the region is pooled (region pooling), a plurality of region proposals (region proposal) are output, namely, candidate target features are represented and used for classifying the target, so that the features contained in each region proposal are the target features. For another example, when the SSD algorithm is adopted, each feature pixel in the Multi-scale feature map (Multi-Scale Feature Map) includes a feature that represents a possible detection target, so the channel feature where the feature pixel is located is the target feature. The principle of multi-target detection and identification is the same as that of the prior art, and is not described in detail herein.
And step S45, decoding the coded information obtained by the code identifier through mapping and identifying the input image to obtain the original information of the bar code or the two-dimensional code.
Specifically, the code information obtained by identifying the target features corresponding to the bar codes or the two-dimensional codes by the code identifier is decoded respectively, so as to obtain the original information of the bar codes or the two-dimensional codes.
Referring to fig. 12, the training of the multi-target detection model by deep learning includes:
step S50, bar codes or two-dimensional code images of different code system types are acquired to form a second data set.
The second data set needs to additionally mark the position size information of each code in the image, wherein the position size information is used for training the multi-target detection model; that is, the labeling content of each code includes at least: image save path, position size information, code system type, binary sequence coding information.
For example, the position size information is expressed by (x, y, w, h) and represents the starting position and the length and width of the target in the XY axis of the image, and for example, there is a 300×300 example image including an EAN-13 code and a QR-2 code, then two pieces of labeling data are required: { demo.jpg, (60, 90, 80, 20), 1, 1010001..101 }, { demo.jpg, (210, 150, 50, 50), 2, 0010001..00 }.
Step S51, setting the target category of the multi-target detection model to be 2.
Specifically, only whether the target area is coded or not is predicted, wherein the not coded also represents the background category.
The multi-target detection technology has the capability of classifying targets, and because the code system categories of the bar codes and the two-dimensional codes are identified through the code system classifier, the multi-target detection model mainly realizes the positioning and detection of the targets so as to determine whether the targets to be detected are the background or the truly existing bar codes, and therefore the target category is set to be 2.
Step S52, minimizing a loss function of the multi-objective detection model by the second data set and a deep learning technique to train the multi-objective detection model.
The multi-objective detection model has a specified loss function, for example, a multi-objective detection model such as SSD and YOLO, which is the same as the principle of minimizing the loss function in the prior art, and will not be described herein.
In other embodiments, the multi-target detection model, the code system classifier and the code recognizer may be trained in a combined manner, that is, the training processes of the three are performed simultaneously, and the specific method is as follows:
And respectively calculating the loss of the multi-target detection model, the cross entropy (CrossEntropy) loss of the code system classifier and the loss of the code recognizer (formula (2)) for the same input image, summing the loss of the multi-target detection model, the cross entropy loss of the code system classifier and the loss of the code recognizer, and carrying out minimization treatment on the sum of the losses to realize joint training.
Referring to fig. 13, a schematic structural diagram of a barcode recognition device based on deep learning according to an embodiment of the present invention is shown, where the device 60 includes a storage unit 61, an image acquisition unit 62, a processing unit 63, and a model training unit 64.
The storage unit 61 is configured to store deep learning model parameters, code types, coding information, and an application program itself; the medium of the memory may be, for example, a floppy disk, a hard disk, a CD-ROM, a semiconductor memory, etc.
The image acquisition unit 62 is configured to acquire a barcode or a two-dimensional code image to be identified.
Further, the processing unit 63 includes an image processing unit 631 and a decoding unit 632.
The image processing unit 631 is configured to identify the encoded information of the barcode or the two-dimensional code from the image input by the image acquisition unit 62.
The decoding unit 632 is configured to decode the encoded information of the barcode or the two-dimensional code identified by the image processing unit 631, and output the original information of the barcode or the two-dimensional code. The decoding mode depends on the coding rule of each code system, for example, the EAN-13 bar code is decoded through table lookup, and the QR code is decoded through operations such as masking.
Further, the image processing unit 631 includes:
The code system classifying module 6311 is configured to load a code system classifier that is trained in advance by deep learning, and predict a code system type of an input image using the code system classifier;
The code identifying module 6312 is configured to determine whether the code system is valid according to whether the probability prediction value of the classification result of the code system classifier is greater than a threshold value, load a corresponding code identifying device that is pre-trained through deep learning according to the code system type of the input image predicted by the code system classifying module 6311 when the code system is determined to be valid, and identify the input image map as encoding information by the code identifying device.
In this embodiment, the code recognition module 6312 selects a corresponding code recognizer according to the code system type determined by the code system classification module 6311, calculates and obtains predictive coding information according to the code recognizer and the formula (1), and performs binarization processing on the predictive coding information.
Further, the code system classification module 6311 is configured to input a barcode or a two-dimensional code image to be identified to a deep learning network, and determine a code system type corresponding to the maximum probability according to an output of the deep learning network.
Further, the model training unit 64 is used for acquiring data and training a deep learning model. Specifically, the model training unit 64 acquires bar codes or two-dimensional code images of different code types to form a first data set; performing deep learning model training by using the first data set to obtain the code system classifier; wherein each piece of data at least contains { image save path, code system type, binary sequence coding information }.
The model training unit 64 further performs the calculation of the encoder by using the formula (1), the calculation of the encoder loss function by using the formula (2), and the deep learning training of the encoder G c by using the formulas (1), (2) and the first data set.
Specifically, z c=Gc (x) (1)
Wherein x is an input image, belongs to a c-type code system, c to [1, M ], M is a positive integer, y c is a coding information label, G c is a code identifier of the c-type code system, and N c is the binary sequence coding information length of the code system; z c is predictive coding information, also a sequence of length N c. sigmoid is an activation function used to scale the value of z c to between 0 and 1, loss c is the Loss of the encoder G c for the class c code system.
Further, the model training unit 64 is further configured to jointly train the code system classifier and the code recognizer, in particular: for the same input, the cross entropy (CrossEntropy) loss of the code classifier and the loss of the code recognizer (formula (2)) are calculated respectively, the cross entropy loss and the loss of the code recognizer are summed, and the sum of the losses is minimized to realize joint training.
Fig. 14 is a schematic structural diagram of a barcode recognition device based on deep learning according to another embodiment of the present invention. The apparatus 70 comprises a storage unit 71, an image acquisition unit 72, a processing unit 73 and a multi-objective model training unit 74. Wherein the processing unit 73 includes an image processing unit 731 and a decoding unit 732; the image processing unit 731 includes a code system classification module 7311, an identification module 7312, and a multi-object detection module 7313.
In this embodiment, when the barcode or the two-dimensional code image that the operator needs to identify is a plurality of targets, the multi-target detection module 7313 is configured to load a pre-trained deep learning multi-target detection model, and use the deep learning multi-target detection model to detect and identify the input image so as to obtain target features corresponding to the plurality of barcodes or the two-dimensional code.
The code system classification module 7311 is configured to load a code system classifier that is trained in advance by deep learning, and predict code system types of target features corresponding to the plurality of bar codes or the two-dimensional code, respectively, using the code system classifier.
The code identifying module 7312 is configured to load corresponding code identifying devices that are trained in advance through deep learning according to code types of target features corresponding to the plurality of bar codes or the two-dimensional codes predicted by the code system classifier, map and identify the target features corresponding to the plurality of bar codes or the two-dimensional codes as corresponding prediction coding information respectively by the code identifying devices, and binarize the prediction coding information.
The decoding unit 732 is configured to decode encoded information obtained by identifying target features corresponding to the plurality of barcodes or two-dimensional codes by the identifier, so as to obtain original information of the plurality of barcodes or two-dimensional codes.
The multi-target model training unit 74 is configured to acquire barcode or two-dimensional code images of different code system types to form a second data set, set a target class of the multi-target detection model to 2, and minimize a loss function of the multi-target detection model through the second data set and a deep learning technique to train the multi-target detection model. The second data set needs to additionally mark the position size information of each code in the image, wherein the position size information is used for training the multi-target detection model; that is, the labeling content of each code includes at least: image save path, position size information, code system type, binary sequence coding information.
Further, the multi-target model training unit 74 is further configured to jointly train the multi-target detection model, the code system classifier and the code recognizer, in particular: and respectively calculating the loss of the multi-target detection model, the cross entropy (CrossEntropy) loss of the code system classifier and the loss of the code recognizer (formula (2)) for the same input, summing the loss of the multi-target detection model, the cross entropy loss of the code system classifier and the loss of the code recognizer, and carrying out minimization treatment on the sum of the losses to realize joint training.
According to the bar code recognition method and device based on deep learning, the code system classifier and the code recognition device are trained in advance through deep learning, so that the code system classifier is loaded on an obtained image of a bar code or a two-dimensional code to predict the code system type, and the corresponding code recognition device is loaded to recognize coding information, so that most of the traditional recognition processes of one-time processing detection, correction, binarization, grid division and the like are realized, and the problems of complex flow and poor anti-interference capability of the existing bar code or two-dimensional code recognition method are solved; meanwhile, the code system categories of the target bar code and the two-dimensional code image are identified by utilizing a pre-trained deep learning code system classifier, and the subsequent processing is carried out according to different code system categories, so that the method is applicable to various code systems; furthermore, the target recognition can be carried out on a plurality of acquired bar codes or two-dimensional code images by loading a multi-target detection model based on deep learning, so that the method is suitable for multi-target bar code recognition.
In the several embodiments provided in the present invention, it should be understood that the disclosed systems, devices, and methods may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the modules or units is merely a logical functional division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection may be through some interfaces, devices or units, and may be electrical or other forms.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present invention may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. With such understanding, all or part of the technical solution of the present invention may be embodied in the form of a software product stored in a storage medium, including instructions for causing a computer device (which may be a personal computer, a management server, or a network device, etc.) or a processor to perform all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a usb disk, a removable hard disk, a read-only memory (abbreviated as ROM), a random access memory (abbreviated as Random Access Memory) and various media capable of storing program codes such as a magnetic disk or an optical disk.
The foregoing description is only illustrative of the present invention and is not intended to limit the scope of the invention, and all equivalent structures or equivalent processes or direct or indirect application in other related technical fields are included in the scope of the present invention.
Claims (9)
1. The bar code recognition method based on deep learning is characterized by comprising the following steps of:
Acquiring a bar code or two-dimensional code image to be identified;
Loading a code system classifier which is trained in advance through deep learning, and predicting the code system type of an input image by using the code system classifier; the code system type comprises a code system and a version of a bar code and a two-dimensional code;
Judging whether the code system is effective or not according to whether the probability prediction value of the classification result of the code system classifier is larger than a threshold value;
when the code system is determined to be effective, loading a corresponding code recognizer which is trained in advance through deep learning according to the code system type of the input image predicted by the code system classifier, and mapping and recognizing the input image as coding information by the code recognizer; and
Decoding the coded information obtained by mapping and identifying the input image by the code identifier to obtain the original information of the bar code or the two-dimensional code;
training the code system classifier in advance through deep learning specifically comprises the following steps:
Acquiring bar codes or two-dimensional code images of different code system types to form a first data set; wherein each piece of data at least comprises { image preservation path, code system type, binary sequence coding information };
training a deep learning model by utilizing the first data set to obtain the code system classifier;
training a code recognizer through deep learning, specifically comprising:
Calculating a coder by using a formula (1), and calculating a loss function of the coder by using a formula (2); wherein x is an input image, belongs to a c-type code system, c to [1, M ], M is a positive integer, y c is a coding information label, G c is a code identifier of the c-type code system, and N c is the binary sequence coding information length of the code system; z c is predictive coding information, also a sequence of length N c; sigmoid is an activation function used to scale the value of z c to between 0 and 1, loss c is the Loss of the encoder G c for the class c code system;
zc=Gc(x)(1)
And (3) performing deep learning training on the coder G c by using the formulas (1) and (2) and the first data set.
2. The method for recognizing a barcode based on deep learning according to claim 1, wherein a code system classifier trained in advance by deep learning is loaded and a code system type of an input image is predicted using the code system classifier, comprising:
Inputting a bar code or a two-dimensional code image to be identified to a deep learning network;
and judging the code system type corresponding to the maximum probability according to the output of the deep learning network.
3. The method for recognizing a barcode based on deep learning according to claim 1 or 2, wherein the loading of the corresponding recognition device which is pre-trained by deep learning according to the code type of the input image predicted by the code classifier, and the recognition device mapping and recognizing the input image as the encoded information specifically comprises:
Selecting a corresponding code identifier from a plurality of pre-trained code identifiers according to the code system type of the input image predicted by the code system classifier;
using the formula (1) to map and identify an input image to obtain predictive coding information; and
And carrying out binarization processing on the predictive coding information so as to obtain the coding information of the input image.
4. The method for recognition of a barcode based on deep learning according to claim 1, wherein when the barcode or two-dimensional code image to be recognized is a plurality of targets, the method further comprises:
Loading a pre-trained deep learning multi-target detection model, and detecting and identifying an input image by using the deep learning multi-target detection model to obtain target characteristics corresponding to a plurality of bar codes or two-dimensional codes;
loading a code system classifier which is trained in advance through deep learning, and predicting the code system type of an input image by using the code system classifier, wherein the code system type is specifically as follows: loading a code system classifier which is trained in advance through deep learning, and respectively predicting code system types of target features corresponding to the bar codes or the two-dimensional codes by using the code system classifier;
Loading a corresponding code recognizer which is trained in advance through deep learning according to the code system type of the input image predicted by the code system classifier, and mapping and recognizing the input image as coding information by the code recognizer, wherein the specific steps are as follows: respectively loading corresponding code identifiers which are trained in advance through deep learning according to code system types of target features corresponding to the bar codes or the two-dimensional codes respectively obtained through prediction of the code system classifier, respectively mapping and identifying the target features corresponding to the bar codes or the two-dimensional codes as corresponding prediction coding information through the code identifiers, and carrying out binarization processing on the prediction coding information;
Decoding the coded information obtained by the code identifier through mapping and identifying the input image to obtain the original information of the bar code or the two-dimensional code, wherein the method specifically comprises the following steps: and respectively decoding the coded information obtained by the code identifier through identifying the target features corresponding to the bar codes or the two-dimensional codes so as to obtain the original information of the bar codes or the two-dimensional codes.
5. The method for recognizing a barcode based on deep learning according to claim 4, wherein the multi-target detection model is trained in advance by deep learning, comprising:
acquiring bar codes or two-dimensional code images of different code system types to form a second data set; the second data set additionally marks the position size information of each code in the image, and the marking content at least comprises the following components: image preservation path, position size information, code system type and binary sequence coding information;
setting the target category of the multi-target detection model to be 2;
minimizing a loss function of the multi-objective detection model by the second dataset and a deep learning technique to train the multi-objective detection model.
6. A bar code recognition device based on deep learning comprises a storage unit, an image acquisition unit and a processing unit; the processing unit comprises an image processing unit and a decoding unit; the image acquisition unit is used for acquiring a bar code or two-dimensional code image to be identified; characterized in that the image processing unit comprises:
The code system classifying module is used for loading a code system classifier which is trained in advance through deep learning and predicting the code system type of an input image by using the code system classifier;
the code identifying module is used for judging whether the code system is effective according to whether the probability prediction value of the classification result of the code system classifier is larger than a threshold value, loading a corresponding code identifier which is finished through deep learning and pre-training according to the code system type of the input image predicted by the code system classifying module when the code system is determined to be effective, and mapping and identifying the input image as coding information by the code identifier;
the decoding unit is used for decoding the coding information obtained by mapping and identifying the input image by the code identifier so as to obtain the original information of the bar code or the two-dimensional code;
Model training unit for:
acquiring bar codes or two-dimensional code images of different code types to form a first data set; wherein each piece of data at least comprises { image save path, code system type, binary sequence coding information };
training a deep learning model by utilizing the first data set to obtain the code system classifier;
Calculating a coder by using a formula (1), calculating a loss function of the coder by using a formula (2), and performing deep learning training on the coder G c by using the formulas (1), (2) and the first data set;
zc=Gc(x)(1)
Wherein x is an input image, belongs to a c-type code system, c to [1, M ], M is a positive integer, y c is a coding information label, G c is a code identifier of the c-type code system, and N c is the binary sequence coding information length of the code system; z c is predictive coding information, also a sequence of length N c; sigmoid is an activation function used to scale the value of z c to between 0 and 1, loss c is the Loss of the encoder G c for the class c code system.
7. The device of claim 6, wherein the code recognition module is further configured to select a corresponding code recognizer according to the code system type determined by the code system classification module, calculate and obtain predictive coding information according to the code recognizer and formula (1), and binarize the predictive coding information.
8. The deep learning based bar code recognition device of claim 6, wherein the image processing unit further comprises a multi-target detection module;
When the bar code or the two-dimensional code image to be identified is a plurality of targets, the multi-target detection module is used for loading a pre-trained deep learning multi-target detection model, and detecting and identifying an input image by using the deep learning multi-target detection model so as to obtain target characteristics corresponding to the bar codes or the two-dimensional codes respectively;
The code system classification module is used for loading a code system classifier which is trained in advance through deep learning, and predicting code system types of target features corresponding to the bar codes or the two-dimensional codes respectively by using the code system classifier;
the code recognition module is used for loading corresponding code recognition devices which are trained in advance through deep learning according to code system types of target features corresponding to the bar codes or the two-dimensional codes respectively obtained through prediction of the code system classifier, mapping and recognizing the target features corresponding to the bar codes or the two-dimensional codes respectively by the code recognition devices as corresponding prediction coding information, and carrying out binarization processing on the prediction coding information;
The decoding unit is used for respectively decoding the coded information obtained by identifying the target features corresponding to the bar codes or the two-dimensional codes by the code identifier so as to obtain the original information of the bar codes or the two-dimensional codes.
9. The deep learning-based bar code recognition device of claim 8, further comprising a multi-objective model training unit for acquiring bar codes or two-dimensional code images of different code system types to form a second dataset, setting an objective class of the multi-objective detection model to 2, and minimizing a loss function of the multi-objective detection model by the second dataset and a deep learning technique to train the multi-objective detection model; the second data set additionally marks the position size information of each code in the image, and the marking content at least comprises the following components: image save path, position size information, code system type, binary sequence coding information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111106727.4A CN114021596B (en) | 2021-09-22 | 2021-09-22 | Bar code recognition method and device based on deep learning |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111106727.4A CN114021596B (en) | 2021-09-22 | 2021-09-22 | Bar code recognition method and device based on deep learning |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114021596A CN114021596A (en) | 2022-02-08 |
CN114021596B true CN114021596B (en) | 2024-08-27 |
Family
ID=80054527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111106727.4A Active CN114021596B (en) | 2021-09-22 | 2021-09-22 | Bar code recognition method and device based on deep learning |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114021596B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115909351B (en) * | 2023-02-08 | 2023-06-13 | 江苏金恒信息科技股份有限公司 | Container number identification method and device based on deep learning |
CN116451720A (en) * | 2023-06-09 | 2023-07-18 | 陕西西煤云商信息科技有限公司 | Warehouse material scanning and identifying method and identifying system thereof |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105809094A (en) * | 2014-12-31 | 2016-07-27 | 研祥智能科技股份有限公司 | Bar code identification method based on machine vision |
CN108416412A (en) * | 2018-01-23 | 2018-08-17 | 浙江瀚镪自动化设备股份有限公司 | A kind of logistics compound key recognition methods based on multitask deep learning |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101908125B (en) * | 2010-06-01 | 2014-07-02 | 福建新大陆电脑股份有限公司 | QR (Quick Response) bar code decoding chip and decoding method thereof |
US8905314B2 (en) * | 2010-09-30 | 2014-12-09 | Apple Inc. | Barcode recognition using data-driven classifier |
CN107665324B (en) * | 2016-07-27 | 2020-08-28 | 腾讯科技(深圳)有限公司 | Image identification method and terminal |
CN110378165B (en) * | 2019-05-31 | 2022-06-24 | 创新先进技术有限公司 | Two-dimensional code identification method, two-dimensional code positioning identification model establishment method and device |
CN110427793B (en) * | 2019-08-01 | 2022-04-26 | 厦门商集网络科技有限责任公司 | Bar code detection method and system based on deep learning |
CN112347805A (en) * | 2020-11-25 | 2021-02-09 | 广东开放大学(广东理工职业学院) | Multi-target two-dimensional code detection and identification method, system, device and storage medium |
-
2021
- 2021-09-22 CN CN202111106727.4A patent/CN114021596B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105809094A (en) * | 2014-12-31 | 2016-07-27 | 研祥智能科技股份有限公司 | Bar code identification method based on machine vision |
CN108416412A (en) * | 2018-01-23 | 2018-08-17 | 浙江瀚镪自动化设备股份有限公司 | A kind of logistics compound key recognition methods based on multitask deep learning |
Also Published As
Publication number | Publication date |
---|---|
CN114021596A (en) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114021596B (en) | Bar code recognition method and device based on deep learning | |
CN111275038A (en) | Image text recognition method and device, computer equipment and computer storage medium | |
CN101882207B (en) | Bar code decoding chip of Data Matrix codes and decoding method thereof | |
CN101908125B (en) | QR (Quick Response) bar code decoding chip and decoding method thereof | |
CN110114781B (en) | Method for detecting and identifying remote high density visual indicia | |
CN110866402A (en) | Named entity identification method and device, storage medium and electronic equipment | |
CN116758544B (en) | Wafer code recognition system based on image processing | |
CN109388727A (en) | BGP face rapid retrieval method based on clustering | |
CN106446732B (en) | A kind of recognition methods of bar code, device and equipment | |
Chen et al. | Rapid detection of multi-QR codes based on multistage stepwise discrimination and a compressed MobileNet | |
CN110942057A (en) | Container number identification method and device and computer equipment | |
CN113435499B (en) | Label classification method, device, electronic equipment and storage medium | |
CN118428382B (en) | Bar code identification method, terminal and system | |
US20140084061A1 (en) | Optical information reading device, optical information reading method, computer-readable program and recording medium | |
CN113297870A (en) | Image processing method, image processing device, electronic equipment and computer readable storage medium | |
CN117195928A (en) | Bar code positioning detection method based on deep learning | |
CN117094342A (en) | Image bar code detection method, device, equipment and storage medium | |
CN114021595B (en) | Two-dimensional code identification method and device | |
CN110348023A (en) | A kind of method, apparatus, storage medium and the electronic equipment of Chinese text participle | |
CN111368576B (en) | Global optimization-based Code128 bar Code automatic reading method | |
CN115147847A (en) | Text recognition result determining method and device, storage medium and computer equipment | |
US9530039B2 (en) | Identifier eligibility | |
CN101882211A (en) | Chinese-sensible code barcode decoding chip and decoding method thereof | |
CN118569285B (en) | Bar code identification method, terminal and system under low-quality image scene | |
KR102682942B1 (en) | Method and device for identification barcode image |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |