CN112580383A - Two-dimensional code identification method and device, electronic equipment and storage medium - Google Patents
Two-dimensional code identification method and device, electronic equipment and storage medium Download PDFInfo
- Publication number
- CN112580383A CN112580383A CN202011590063.9A CN202011590063A CN112580383A CN 112580383 A CN112580383 A CN 112580383A CN 202011590063 A CN202011590063 A CN 202011590063A CN 112580383 A CN112580383 A CN 112580383A
- Authority
- CN
- China
- Prior art keywords
- dimensional code
- dimensional
- image
- dimension
- code
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 94
- 238000010586 diagram Methods 0.000 claims abstract description 110
- 230000011218 segmentation Effects 0.000 claims description 11
- 238000005260 corrosion Methods 0.000 claims description 9
- 230000007797 corrosion Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 7
- 238000004422 calculation algorithm Methods 0.000 abstract description 12
- 230000008569 process Effects 0.000 abstract description 8
- 239000003153 chemical reaction reagent Substances 0.000 description 19
- 238000005286 illumination Methods 0.000 description 17
- 238000005138 cryopreservation Methods 0.000 description 15
- 238000003384 imaging method Methods 0.000 description 15
- 230000003068 static effect Effects 0.000 description 12
- 238000004458 analytical method Methods 0.000 description 10
- 238000007710 freezing Methods 0.000 description 9
- 230000008014 freezing Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 239000011159 matrix material Substances 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000002829 reductive effect Effects 0.000 description 7
- 230000006835 compression Effects 0.000 description 6
- 238000007906 compression Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 230000006872 improvement Effects 0.000 description 5
- 230000003628 erosive effect Effects 0.000 description 4
- 230000004927 fusion Effects 0.000 description 4
- 230000036961 partial effect Effects 0.000 description 4
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 3
- 230000010339 dilation Effects 0.000 description 3
- 238000005530 etching Methods 0.000 description 3
- 229920003023 plastic Polymers 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000003708 edge detection Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004033 plastic Substances 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 239000012472 biological sample Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000011109 contamination Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003631 expected effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
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/1417—2D bar codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
- G06T5/30—Erosion or dilatation, e.g. thinning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/40—Image enhancement or restoration using histogram techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Electromagnetism (AREA)
- General Health & Medical Sciences (AREA)
- Toxicology (AREA)
- Artificial Intelligence (AREA)
- Image Processing (AREA)
Abstract
The invention provides a two-dimension code identification method, a two-dimension code identification device, electronic equipment and a storage medium, wherein the method comprises the following steps: dividing a two-dimensional code array image to be identified to obtain a plurality of two-dimensional codes; identifying the current two-dimensional code based on an adjacent enhancement mode to obtain an identification result of the current two-dimensional code; and the adjacent enhancement mode is an image enhancement mode used for successfully identifying the adjacent two-dimensional codes of the current two-dimensional code in the two-dimensional code array image. The method, the device, the electronic equipment and the storage medium provided by the invention realize batch identification of all the two-dimensional codes in the two-dimensional code array diagram, reduce the identification time in the process of batch identification of the two-dimensional codes, reduce the complexity of an identification algorithm and improve the efficiency of batch identification of the two-dimensional codes.
Description
Technical Field
The invention relates to the technical field of image recognition, in particular to a two-dimensional code recognition method and device, electronic equipment and a storage medium.
Background
In the fields of biological and medical research, large batches of pharmaceutical reagents or biological samples are often required to be analyzed. These reagents and samples are typically stored in reagent tubes. The two-dimensional code carrying the identification information is imprinted on the top or the bottom of the reagent tube, and the two-dimensional code is identified by using an image processing and identifying technology, so that automatic management of sample information can be realized.
In the prior art, one or a few two-dimensional codes are generally scanned and identified. The existing two-dimension code identification method cannot realize batch identification of the two-dimension codes and has low identification success rate.
Disclosure of Invention
The invention provides a two-dimension code identification method, a two-dimension code identification device, electronic equipment and a storage medium, which are used for solving the problems that the two-dimension codes cannot be identified in batch in the prior art and the identification success rate is low.
The invention provides a two-dimensional code identification method, which comprises the following steps:
dividing a two-dimensional code array image to be identified to obtain a plurality of two-dimensional codes;
identifying the current two-dimensional code based on an adjacent enhancement mode to obtain an identification result of the current two-dimensional code;
and the adjacent enhancement mode is an image enhancement mode used for successfully identifying the adjacent two-dimensional codes of the current two-dimensional code in the two-dimensional code array image.
According to the two-dimension code identification method provided by the invention, the identification of the current two-dimension code based on the adjacent enhancement mode to obtain the identification result of the current two-dimension code comprises the following steps:
taking the image enhancement result of the current two-dimensional code in the adjacent enhancement mode as a graph to be identified;
carrying out two-dimensional code recognition on the graph to be recognized;
if the two-dimension code is successfully identified, taking a result obtained by identifying the two-dimension code as an identification result of the current two-dimension code, and otherwise, taking an image enhancement result of the current two-dimension code in other image enhancement modes as an image to be identified;
and the other image enhancement modes are image enhancement modes except the adjacent enhancement mode.
According to the two-dimension code identification method provided by the invention, the current two-dimension code is identified based on the adjacent enhancement mode to obtain the identification result of the current two-dimension code, and then the method further comprises the following steps:
determining known two-dimensional codes which are successfully identified in the at least two-dimensional code array diagrams based on the identification result of each two-dimensional code in the at least two-dimensional code array diagrams; the at least two-dimensional code array diagrams are acquired from the same two-dimensional code array;
aligning each two-dimension code array diagram based on the position of the known two-dimension code in each two-dimension code array diagram;
and fusing the identification results of the two-dimension codes in the aligned two-dimension code array diagrams to obtain the identification results of the two-dimension codes in the two-dimension code array.
According to the two-dimensional code identification method provided by the invention, aligning each two-dimensional code array diagram based on the position of the known two-dimensional code in each two-dimensional code array diagram comprises the following steps:
determining the distance between the known two-dimensional code and a reference origin in a reference image by taking any two-dimensional code array image as the reference image;
determining the distance between the known two-dimensional code and each corner point in the rest two-dimensional code array images;
if the distance between the known two-dimensional code and any one corner point is equal to the distance between the known two-dimensional code and the reference origin point, taking the any one corner point as the reference origin point of the rest two-dimensional code array images;
and aligning each two-dimensional code array diagram based on the reference origin of the reference image and the reference origins of the other two-dimensional code array diagrams.
According to the two-dimensional code identification method provided by the invention, the two-dimensional code array image to be identified is segmented to obtain a plurality of two-dimensional codes, and the method comprises the following steps:
filling unclosed holes in the binarized image of the two-dimensional code array diagram after corrosion operation based on the shape characteristics of the two-dimensional codes, and performing expansion operation on the filled binarized image to obtain a candidate connected region of each two-dimensional code;
and dividing the two-dimension code array graph based on the candidate connected region of each two-dimension code to obtain a plurality of two-dimension codes.
According to the two-dimensional code identification method provided by the invention, the dividing of the two-dimensional code array graph based on the candidate connected region of each two-dimensional code to obtain a plurality of two-dimensional codes comprises the following steps:
detecting the candidate connected region of each two-dimension code to obtain a target region corresponding to each two-dimension code;
and dividing the two-dimension code array graph based on the target area corresponding to each two-dimension code to obtain a plurality of two-dimension codes.
According to the two-dimensional code identification method provided by the invention, the two-dimensional code array graph is segmented based on the target area corresponding to each two-dimensional code to obtain a plurality of two-dimensional codes, and the method comprises the following steps:
performing pixel traversal on a target area corresponding to each two-dimensional code in the two-dimensional code array diagram, and determining boundary coordinates of each two-dimensional code;
determining the area size of each two-dimensional code and the interval between the two-dimensional codes based on the boundary coordinates of each two-dimensional code;
and dividing the two-dimension code array graph based on the area size of each two-dimension code and the interval between the two-dimension codes to obtain a plurality of two-dimension codes.
The invention also provides a two-dimensional code recognition device, which comprises
The segmentation unit is used for segmenting the two-dimensional code array image to be identified to obtain a plurality of two-dimensional codes;
the identification unit is used for identifying the current two-dimensional code based on an adjacent enhancement mode to obtain an identification result of the current two-dimensional code;
and the adjacent enhancement mode is an image enhancement mode used for successfully identifying the adjacent two-dimensional codes of the current two-dimensional code in the two-dimensional code array image.
The invention also provides an electronic device, which comprises a memory, a processor and a computer program which is stored on the memory and can run on the processor, wherein the processor executes the program to realize the steps of the two-dimensional code identification method.
The present invention also provides a non-transitory computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements the steps of the two-dimensional code recognition method as described in any of the above.
According to the two-dimension code identification method, the two-dimension code identification device, the electronic equipment and the storage medium, the current two-dimension code is identified in the image enhancement mode, the success rate of two-dimension code identification under the conditions of unsatisfactory ambient illumination and low imaging quality is improved, the current two-dimension code is identified according to the image enhancement mode used by successful two-dimension code identification of adjacent two-dimension codes in the two-dimension code array diagram, the identification result of the current two-dimension code is obtained, batch identification of all the two-dimension codes in the two-dimension code array diagram is realized, multiple image enhancement results corresponding to the current two-dimension code are prevented from being identified one by one, the identification time in the process of batch identification of the two-dimension code is shortened, the complexity of an identification algorithm is reduced, and the efficiency of batch identification of the two-dimension code is improved.
Drawings
In order to more clearly illustrate the technical solutions of the present invention or the prior art, the drawings needed for the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and those skilled in the art can also obtain other drawings according to the drawings without creative efforts.
Fig. 1 is a schematic flow chart of a two-dimensional code identification method provided by the present invention;
fig. 2 is a schematic flowchart of an embodiment of step 120 in the two-dimensional code identification method according to the present invention;
FIG. 3 is a flowchart of an algorithm for recognizing two-dimensional codes by using neighboring enhancement methods according to the present invention;
FIG. 4 is a schematic flow chart of a two-dimensional code array graph fusion recognition method provided by the present invention;
fig. 5 is a schematic flowchart illustrating an embodiment of step 140 in the two-dimensional code recognition method according to the present invention;
fig. 6 is a schematic flow chart of a two-dimensional code alignment method provided by the present invention;
fig. 7 is a schematic flowchart of an embodiment of step 110 in the two-dimensional code identification method according to the present invention;
fig. 8 is a schematic flowchart of an embodiment of step 112 in the two-dimensional code recognition method according to the present invention;
fig. 9 is a schematic flowchart of an embodiment of step 1122 in the two-dimensional code recognition method according to the present invention;
fig. 10 is a schematic flow chart of a two-dimensional code batch identification method for medical reagent tubes provided by the present invention;
fig. 11 is a schematic structural diagram of a two-dimensional code recognition device provided by the present invention;
fig. 12 is a schematic structural diagram of an electronic device provided in the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings, and it is obvious that the described embodiments are some, but not all embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The two-dimensional Code is a common information carrier, has multiple categories such as Data Matrix, QR Code, Maxi Code, PDF417, Code49, and the like, forms a '0' bit stream and a '1' bit stream of a logic foundation in a computer through the arrangement and combination of internal dark-color Code elements and light-color Code elements, realizes the coding and storage of Data character symbol information, and has the characteristics of high coding density, large information capacity, strong fault-tolerant capability and the like. For example, a Data Matrix two-dimensional code may encode 30 numbers on an area of only 25mm 2.
The two-dimensional code identification method in the prior art is suitable for scenes with relatively sparse two-dimensional code distribution, ideal illumination conditions and high imaging quality. For scenes with small two-dimensional code size, dense arrangement, complex ambient illumination and low imaging quality, the existing two-dimensional code identification method cannot identify the scenes, or the identification efficiency and accuracy cannot achieve the expected effect.
Fig. 1 is a schematic flow chart of a two-dimensional code identification method provided by the present invention, and as shown in fig. 1, the method includes:
and 110, segmenting the two-dimensional code array image to be identified to obtain a plurality of two-dimensional codes.
Specifically, the two-dimensional code array diagram is an image obtained by collecting a plurality of two-dimensional codes arranged according to a certain rule. For example, a plurality of two-dimensional codes are arranged linearly, circumferentially, or vertically and horizontally, and a corresponding two-dimensional code array diagram can be obtained. For another example, in the medical field, the pharmaceutical reagents are generally stored in reagent tubes with two-dimensional code labels, the reagent tubes are stored in a freezing storage box in batches, the freezing storage box mainly comprises a transparent plastic top cover and an opaque plastic bearing bottom, the bearing body adopts a grid-type clamping groove design, so that the reagent tubes are ensured to be regularly placed and not to be easily inclined and fall off, the reagent tubes are generally designed in various specifications and colors, and the reagent tubes are usually provided with 100 holes of 10 × 10, 50 holes of 5 × 10 and the like. And (3) carrying out image acquisition on the cryopreservation box to obtain an image containing the two-dimensional code array, and processing the image to obtain a two-dimensional code array diagram.
And identifying the two-dimensional code array diagram, namely identifying data information corresponding to each two-dimensional code in the two-dimensional code array diagram. Before the identification, the two-dimensional code array diagram can be segmented, so that a plurality of two-dimensional codes in the two-dimensional code array diagram are obtained.
Specifically, the recognition result of the two-dimensional code is data information included in the two-dimensional code. And image enhancement, namely, selectively highlighting or suppressing partial features in the image by adding information to the original image or performing data transformation. The image enhancement mode can be contrast improvement, brightness compression and the like.
For example, histogram equalization may be employed to achieve contrast boosting. Histogram equalization is a method for adjusting the contrast of an image using an image histogram in the field of image processing. Luminance boosting can be achieved with logarithmic (log) image enhancement. The logarithmic image enhancement can expand the low gray value part of the image, display more details of the low gray value part, compress the high gray value part of the image and reduce the details of the high gray value part, thereby achieving the purposes of improving the image brightness and emphasizing the low gray value part of the image. Brightness compression may be achieved using gamma (gamma) image enhancement. The gamma image enhancement is mainly used for correcting images, and corrects pictures with over-high gray levels or over-low gray levels, so that brightness compression is realized, and the contrast is enhanced. The acquisition of ambient illumination is complicated, so that the two-dimensional code array image may have the problems of poor image uniformity, local highlight shielding and the like, and meanwhile, the imaging quality of the equipment is not high, so that the two-dimensional code array image may have the problems of geometric deformation, local imaging blur and the like. The problem may cause an unrecognizable phenomenon when the current two-dimensional code is recognized. A plurality of image enhancement results of the current two-dimensional code can be obtained by adopting an image enhancement mode, and the identification result of the current two-dimensional code is obtained after identification. When the two-dimensional code array image has a large-area illumination abnormal condition, each two-dimensional code may be identified for many times to obtain a result, and the identification efficiency is seriously low.
Considering that the current two-dimensional code and the adjacent two-dimensional code have similar illumination characteristics, for example, each two-dimensional code in an illumination dark area can be successfully identified by using an image enhancement mode of brightness improvement generally, and each two-dimensional code in an illumination bright area can be successfully identified by using an image enhancement mode of brightness compression generally.
That is, in the same two-dimensional code array diagram, if an adjacent two-dimensional code can be successfully identified by using a certain image enhancement method, it is more likely that the current two-dimensional code is successfully identified by using the image enhancement method than by using other image enhancement methods. Therefore, the image enhancement mode used by the successful identification of the adjacent two-dimensional code can be marked as the adjacent enhancement mode for the identification of the current two-dimensional code.
The adjacent enhancement mode is adopted to identify the current two-dimensional code to obtain the identification result of the current two-dimensional code, so that the situation that a plurality of image enhancement results corresponding to the current two-dimensional code are identified one by one can be avoided, and the frequency of attempting identification is reduced. For example, when the current two-dimensional code and the adjacent two-dimensional code are in a dark illumination area, the adjacent two-dimensional code is successfully identified through a brightness-enhanced image enhancement mode, and at this time, the adjacent enhancement mode is brightness enhancement. When the current two-dimensional code is identified, the current two-dimensional code can be identified by directly adopting an adjacent enhancement mode, and if the identification result of the current two-dimensional code can be obtained, the image enhancement and the identification of the current two-dimensional code are not needed to be carried out by adopting modes such as contrast enhancement, brightness compression and the like.
According to the two-dimensional code identification method provided by the embodiment of the invention, the current two-dimensional code is identified by adopting an image enhancement mode, the identification success rate of the two-dimensional code under the conditions of unsatisfactory ambient illumination and low imaging quality is improved, the current two-dimensional code is identified according to the image enhancement mode used by the successful identification of the adjacent two-dimensional code in the two-dimensional code array diagram, the identification result of the current two-dimensional code is obtained, the batch identification of all the two-dimensional codes in the two-dimensional code array diagram is realized, the identification of a plurality of image enhancement results corresponding to the current two-dimensional code one by one is avoided, the identification time in the process of batch identification of the two-dimensional code is reduced, the complexity of an identification algorithm is reduced, and the efficiency of batch identification of the two-dimensional code is.
Based on the foregoing embodiment, fig. 2 is a schematic flowchart of an implementation manner of step 120 in the two-dimensional code identification method provided by the present invention, and as shown in fig. 2, step 120 includes:
Specifically, when the current two-dimensional code is identified, an image enhancement result of the current two-dimensional code in an adjacent enhancement mode is used as a to-be-identified image for identification.
For example, when the adjacent enhancement mode is brightness improvement, it indicates that the image enhancement mode used for successfully identifying the adjacent two-dimensional codes in the two-dimensional code array image is brightness improvement. Then, for the current two-dimensional code, the image enhancement result under the brightness improvement can be directly used as the image to be recognized for recognition. And if the identification is successful, taking the result obtained by the two-dimension code identification as the identification result of the current two-dimension code, otherwise, taking the image enhancement result of the current two-dimension code in the other image enhancement modes as the image to be identified, and continuing to identify. The remaining image enhancement modes may be selected as modes other than brightness enhancement, such as contrast enhancement and brightness compression.
Fig. 3 is a flowchart of an algorithm for recognizing two-dimensional codes by using an adjacent enhancement method according to the present invention, and as shown in fig. 3, a two-dimensional code array diagram is divided to obtain a plurality of two-dimensional codes, where i is a label of a two-dimensional code, and the plurality of two-dimensional codes are stored in a code _ image _ list. When the ith two-dimensional code is identified, the image enhancement is carried out on the ith two-dimensional code by adopting N image enhancement modes to obtain N image enhancement results, wherein N is a positive integer. Each image enhancement result corresponds to an image enhancement mode. j is an image enhancement mode of the two-dimensional code. current _ j is the neighbor enhancement mode. N is the identification serial number of the N image enhancement results of the two-dimensional code i. The code _ image _ list is a two-dimensional code storage file, and the code _ image _ list is a two-dimensional code identification result storage file.
If i is equal to 0, the two-dimensional code i is the 1 st two-dimensional code in the identification process, and no adjacent two-dimensional code is identified before, j may be set to 0, and the identification of the N image enhancement results may be started one by one.
If i is not 0, there is an adjacent two-dimensional code that is successfully identified before identifying the two-dimensional code i, j may be set to current _ j, that is, the two-dimensional code i is identified according to the adjacent enhancement mode current _ j, and if the identification is successful, the identification result is stored in code _ info _ list.
If the recognition fails, the recognition serial number N of the two-dimensional code i is adjusted, and the rest image enhancement modes are recognized one by one according to the sequence, namely N is N +1, and j is (j + 1)% N. If the other image enhancement modes are successfully identified, the identification result is stored in the code _ info _ list, and at this time, current _ j is set to be j, which indicates that the other image enhancement modes j which are successfully identified are set to be adjacent enhancement modes.
In particular, if the adjacent enhancement mode and the rest of the image enhancement modes fail to be identified, the rest of the image enhancement modes which are attempted to be identified at the last time can be saved as the adjacent enhancement modes, and the identification result can be set as unidentified.
According to the method, all the two-dimensional codes in the code _ image _ list are identified, and the obtained identification results of all the two-dimensional codes are stored in the code _ info _ list.
According to the two-dimensional code identification method provided by the embodiment of the invention, the image enhancement result of the current two-dimensional code in the adjacent enhancement mode is used as the image to be identified, and the two-dimensional code identification is carried out on the image to be identified to obtain the identification result of the current two-dimensional code, so that the situation that a plurality of image enhancement results corresponding to the current two-dimensional code are identified one by one is avoided, the identification time in the process of identifying the two-dimensional codes in batches is reduced, the complexity of an identification algorithm is reduced, and the efficiency of identifying the two-dimensional codes in batches is improved.
Based on any of the above embodiments, fig. 4 is a schematic flow chart of the two-dimensional code array graph fusion identification method provided by the present invention, as shown in fig. 4, after step 120, the method further includes:
and 150, fusing the identification results of the two-dimensional codes in the aligned two-dimensional code array diagrams to obtain the identification results of the two-dimensional codes in the two-dimensional code array.
Specifically, the two-dimensional code array represents the position relationship among the two-dimensional codes according to a certain regular arrangement form of the two-dimensional codes, for example, the arrangement form of each reagent tube in the cryopreservation box represents the position relationship of each reagent tube, and also represents the position relationship among the two-dimensional codes at the top of each reagent tube.
The uneven illumination causes poor image quality of the two-dimensional code array image, for example, partial high light reflection causes part of the two-dimensional code to be hidden. In addition, due to reasons of the image acquisition equipment, such as insufficient resolution of a camera, the image edge is blurred, and image occlusion or contamination caused by the reasons are difficult to repair by using an image enhancement method. Therefore, a plurality of two-dimension code array graphs acquired by the same two-dimension code array can be compositely superposed on the identification result of each two-dimension code in the plurality of two-dimension code array graphs, and the identification success rate of the two-dimension code is improved.
For example, considering that influences such as distortion blurring or highlight reflection generally exist locally, by adjusting the position and the angle of the cryopreservation box, the part which is hidden during the last imaging can be adjusted to be a clearly visible region, for example, when highlight noise exists, the image is rotated and transformed to transfer the noise influence position, or when imaging, the edge corner region of the cryopreservation box with blurring is placed in the center of a lens of the acquisition equipment as much as possible for imaging. Although some two-dimension codes in a single two-dimension code array diagram are not recognizable, the two-dimension codes in other two-dimension code array diagrams can be recognizable, and the recognition results of a plurality of two-dimension code array diagrams are recorded and overlapped, so that the whole recognition result of the two-dimension codes on the cryopreservation box can be obtained by mutual complementation.
After the identification result of each two-dimensional code in at least two-dimensional code array diagrams is obtained, the known two-dimensional code which is successfully identified in each two-dimensional code array diagram can be determined. When the known two-dimensional code is selected, the known two-dimensional code at the center of the two-dimensional code array graph is avoided to be selected as much as possible. Preferably, a known two-dimensional code is selected that is close to the four corner points of the two-dimensional code array map. The number of the two-dimensional codes may be one or more, and this is not particularly limited in the embodiment of the present invention.
And after the known two-dimensional codes and the positions of the two-dimensional codes are determined, aligning each two-dimensional code array diagram according to the positions of the known two-dimensional codes in each two-dimensional code array diagram. And fusing the identification results of the aligned two-dimension code array diagrams to obtain the identification result of each two-dimension code in the two-dimension code array.
According to the two-dimension code identification method provided by the embodiment of the invention, the plurality of two-dimension code array diagrams are aligned according to the positions of the known two-dimension codes which are successfully identified in the plurality of two-dimension code array diagrams, the identification results of the two-dimension code array diagrams are fused, and the success rate of identifying the two-dimension codes under the conditions of non-ideal ambient illumination and low imaging quality is improved.
Based on any of the above embodiments, fig. 5 is a schematic flowchart of an implementation manner of step 140 in the two-dimensional code identification method provided by the present invention, and as shown in fig. 5, step 140 includes:
and 144, aligning each two-dimensional code array diagram based on the reference origin of the reference image and the reference origins of the other two-dimensional code array diagrams.
Specifically, each two-dimensional code array diagram is acquired by collecting the same two-dimensional code array, as long as the reference origin of each two-dimensional code array diagram can be determined, each two-dimensional code array diagram can be aligned, and two-dimensional codes at the same position of each aligned two-dimensional code array diagram are used as the same two-dimensional code.
Any two-dimensional code array image can be used as a reference image in at least two-dimensional code array images. For the reference image, the upper left corner point of the reference image may be selected as a reference origin. The position of the known two-dimensional code is marked in the reference image, and the distance between the known two-dimensional code and the reference origin is determined. For the rest of the two-dimensional code array images, the reference origin needs to be determined, and therefore, the reference origin can be determined by calculating the distance between the known two-dimensional code and each corner point in the rest of the two-dimensional code array images.
In the following, two-dimensional code arrays are aligned, and the two-dimensional codes in the two-dimensional code arrays are distributed in a determinant manner. Fig. 6 is a schematic flow chart of the two-dimensional code alignment method provided by the present invention, and as shown in fig. 6, in the reference image, the row number and the column number of the reference origin O can be represented as (0, 0). The row number m and the column number n of the distribution of the two-dimensional code a are known and are denoted as (m, n). The distance l between the known two-dimensional code a and the reference origin O in the reference image can be expressed as:
in the rest of the two-dimensional code array diagrams, the row number p and the column number q of the two-dimensional code a distribution are known and are represented as (p, q). Respectively calculating the distances between the known two-dimensional code A and four angular points of the rest two-dimensional code array diagrams, namely the upper left corner, the upper right corner, the lower left corner and the lower right corner, wherein the distances are respectively as follows:
in the formula, l1 is a distance between the known two-dimensional code a and an upper left corner point, l2 is a distance between the known two-dimensional code a and an upper right corner point, l3 is a distance between the known two-dimensional code a and a lower left corner point, l4 is a distance between the known two-dimensional code a and a lower right corner point, M is the number of two-dimensional codes in each row in the rest two-dimensional code array diagrams, and N is the number of two-dimensional codes in each column in the rest two-dimensional code array diagrams.
Because the two-dimensional code array image is acquired by the same two-dimensional code array, one of the four distances l1, l2, l3 and l4 is necessarily equal to the distance l from the known two-dimensional code A to the reference origin in the reference image, and the corresponding corner point is the reference origin of the other two-dimensional code array images.
After the reference original points of the rest two-dimensional code array diagrams are determined, the two-dimensional code array diagrams can be aligned, namely the row and column numbers of the two-dimensional codes in the identification results of the rest two-dimensional code array diagrams are updated.
For the rest two-dimensional code array images, if the reference origin is the upper left corner point, the row and column numbers of the two-dimensional codes are kept unchanged; if the reference origin is the upper right corner point, updating the row and column numbers of the two-dimensional codes to (p ', q') (N-q, p); if the reference origin point is the lower left corner point, updating the row and column numbers of the two-dimensional codes to (p ', q') (q, M-p); if the reference origin is the lower right corner point, the row and column number of each two-dimensional code is updated to (p ', q') (M-q, N-p).
According to the two-dimensional code identification method provided by the embodiment of the invention, the reference origin points of the rest two-dimensional code array drawings are determined by calculating the distance between the known two-dimensional code and the reference origin point in the reference image and the distance between the known two-dimensional code and each corner point in the rest two-dimensional code array drawings, so that each two-dimensional code array drawing is aligned.
Based on any of the above embodiments, fig. 7 is a schematic flowchart of an implementation manner of step 110 in the two-dimensional code identification method provided by the present invention, and as shown in fig. 7, step 110 includes:
step 111, filling unclosed holes in the binarized image of the two-dimensional code array diagram after corrosion operation based on the shape characteristics of the two-dimensional codes, and performing expansion operation on the filled binarized image to obtain a candidate connected region of each two-dimensional code;
and 112, dividing the two-dimension code array graph based on the candidate connected region of each two-dimension code to obtain a plurality of two-dimension codes.
Specifically, because the two-dimensional code has a small size and is influenced by highlight masking and noise, when the line segments and the angular points in the two-dimensional code are detected by using an angular point or hough line detection algorithm, the detection accuracy is low, and even the line segments and the angular points may not be detected. In addition, the acquired two-dimensional code array map may further include background features, the two-dimensional codes are arranged densely, if a feature clustering method is adopted for area positioning and area segmentation of the two-dimensional codes, adjacent two-dimensional codes and backgrounds are likely to interfere with each other, so that clustering combination errors are caused, the two-dimensional code area positioning is inaccurate, the two-dimensional codes obtained after segmentation may include interferences such as backgrounds, or incomplete two-dimensional codes obtained after segmentation may occur.
The two-dimensional code array image can be binarized, so that the data volume in the image is greatly reduced, and the outline of the two-dimensional code is highlighted. And then, based on the idea of the connected domain mark, dividing and extracting the two-dimension code candidate connected region. The candidate connected region is an image region formed by pixel points belonging to the same two-dimensional code in the binary image.
In order to obtain candidate connected regions, erosion and dilation morphological operations are generally required, the erosion operation may shrink the image boundary, eliminate small and meaningless objects, and the dilation operation may expand the object boundary outward, fill some holes in the object region, and eliminate small particle noise included in the object region, which may be specifically expressed as:
wherein x and y are coordinates of pixel points in the binary image, A is an input image, and B is a structural element. The structural elements can be arranged into various shapes such as a rectangle, a cross, an ellipse and the like, the two-dimensional code is generally in a rectangular shape, and correspondingly, the structural elements can be arranged into a rectangle.
In a binary image, the two-dimensional code is generally in a white-background black code form. The expansion and erosion are for white areas, the expansion operation shrinks the black symbols of the two-dimensional code, and the erosion operation expands the black symbols. In the prior art, a binary image is firstly subjected to corrosion operation to connect black code elements separated from the interior of a two-dimensional code together, and then expansion operation is carried out to eliminate background interference on the boundary of the two-dimensional code, so that a candidate connected region where the two-dimensional code is located is separated.
Because the two-dimensional codes in the two-dimensional code array diagram are densely distributed, the two-dimensional code array diagram is easily interfered by the background. For example, in the image acquired by the cryopreservation box, the edge gap between the grid background and the two-dimensional code is small, and the corrosion operation is adopted to connect the code elements in the two-dimensional code, so that the two-dimensional code and the grid background are easily adhered to form a whole, and the candidate connected region where the two-dimensional code is located cannot be accurately screened.
Although the two-dimensional code and the background can be distinguished by adopting the color features, in the actual processing process, because the background color is complex or the illumination is not uniform, the stable color features cannot be extracted, and the interference of the background in the two-dimensional code array image is difficult to remove through the color features.
The average interval between black symbols inside the two-dimensional code is small, for example, the boundary of the Data Matrix two-dimensional code is composed of two virtual edges of L-shaped positioning solid edges and black and white alternating edges, and the interval between boundary symbols is definitely smaller than that of the internal holes.
Preferably, the etching operation is performed under the condition that the two-dimensional code does not adhere to the background, for example, the size of the structural element is set according to the size of the two-dimensional code, so that the two-dimensional code does not adhere to the grid background in the cryopreservation box in a binary image corresponding to the two-dimensional code array image after the etching operation.
At this time, a part of unclosed holes may still exist in the two-dimensional code, and if the dilation operation is directly performed, the internal code elements of the two-dimensional code cannot be fully closed, and the obtained candidate connected region includes the holes, so that the detection of the candidate connected region fails.
At this time, according to the shape characteristics of the two-dimensional code, the unclosed holes in the binary image of the two-dimensional code array diagram after the etching operation can be filled.
Before the expansion operation, contour detection can be performed on a region where the two-dimensional code is located in the binary image, and hole screening can be performed according to the shape and the area of the detected contour region.
For example, an area threshold T0 is set according to the area of the two-dimensional code, and when it is detected that the area contourArea of the outline region is smaller than T0, it is determined that a hole exists in the outline region. For another example, an area threshold T1 and a shape threshold T2 may be set according to the shape of the two-dimensional code, and when it is detected that the area contourArea of the outline region is smaller than T1 and max (contourHeight) is smaller than min (contourWidth) T2, the outline region is considered to have a hole.
In the above formula, contourArea is the area of the outline region, contourWidth is the width of the outline region, contourHeight is the height of the outline region, and the area threshold T0, the area threshold T1, and the shape threshold T2 may be set and adjusted according to the shape characteristics of the two-dimensional code.
And taking the detected region containing the holes as a Mask (Mask), then superposing the Mask on an image obtained by carrying out corrosion operation on the binary image of the two-dimensional code array diagram, filling the detected unclosed internal holes, then carrying out expansion operation on the filled binary image, eliminating edge sawteeth, and obtaining a candidate connected region of each two-dimensional code with smooth boundary.
According to the two-dimension code identification method provided by the embodiment of the invention, according to the shape characteristics of the two-dimension code, unclosed holes are filled after the binary image of the two-dimension code array diagram is subjected to corrosion operation, and the filled binary image is subjected to expansion operation to obtain the candidate connected region of each two-dimension code, so that the internal code element of the candidate connected region of each two-dimension code is fully closed without being interfered by the background in the two-dimension code array diagram, and the accuracy of two-dimension code segmentation is improved.
Based on any of the above embodiments, fig. 8 is a schematic flowchart of an implementation manner of step 112 in the two-dimensional code identification method provided by the present invention, and as shown in fig. 8, step 112 includes:
and step 1122, dividing the two-dimensional code array graph based on the target area corresponding to each two-dimensional code to obtain a plurality of two-dimensional codes.
Specifically, the candidate connected regions of each two-dimensional code may correspond to real two-dimensional codes, or may be false targets formed by image noise, so that it is necessary to perform feature analysis on these candidate connected regions to screen out effective target regions, that is, target regions corresponding to each two-dimensional code.
The characteristic analysis mode comprises area analysis, shape analysis and the like. For example, Canny edge detection and contour detection can be performed on the candidate connected regions of each two-dimensional code, and the minimum bounding rectangle of each candidate connected region is obtained. Calculating the average area of the candidate connected regions according to the detected contour region, and expressing the average area as follows by a formula:
in the formula, Avg _ Area is the average Area of the candidate connected regions, Σ Region _ Area is the total Area of the candidate connected regions, N _ Region is the number of candidate connected regions, and Region _ Area is the Area of any one candidate connected Region, and can be calculated according to the detected contour Region.
If the Area Region _ Area of any candidate connected Region does not satisfy the following relation:
Avg_Area*α≤Region_Area≤Avg_Area*β
wherein α and β are area float coefficients;
the candidate connected region may be the region where the false target is located and should be culled.
Further, the larger the ratio between the area of a candidate connected region and the area of its smallest bounding rectangle, the closer the shape of the candidate connected region is to the rectangle. Therefore, if the ratio of the Area Region _ Area of any candidate connected Region to the Area Region _ Area of the minimum bounding rectangle thereof does not satisfy the following relation:
where μ is the form factor, generally not greater than 0.5;
the candidate connected region may be the region where the false target is located and should be culled.
Further, the aspect ratio of the minimum bounding rectangle of the remaining candidate connected regions is calculated. Here, since the image data is processed, the aspect ratio is replaced with the aspect ratio obtained from the image data. The aspect ratio of the minimum bounding rectangle is formulated as:
in the formula, Rect _ width is the width of the minimum bounding rectangle in the image, and Rect _ height is the height of the minimum bounding rectangle in the image.
If the aspect ratio of the minimum bounding rectangle is large, the corresponding candidate connected region may be the region where the false target is located and should be removed. For example, if the ratio is greater than 1.5, it is considered that the candidate connected region cannot be a square two-dimensional code region.
The candidate connected regions of each two-dimension code are detected to obtain the characteristics of the candidate connected regions, such as the area, the shape and the like, the regions where the false targets are located are removed after characteristic analysis is carried out, and the target regions corresponding to the two-dimension codes are obtained.
According to the two-dimension code identification method provided by the embodiment of the invention, the candidate connected region of each two-dimension code is detected to obtain the target region corresponding to each two-dimension code, the false target formed by image noise is eliminated, and the accuracy of two-dimension code segmentation is improved.
Based on any of the above embodiments, fig. 9 is a schematic flowchart of an implementation manner of step 1122 in the two-dimensional code identification method provided in the present invention, and as shown in fig. 9, step 1122 includes:
Specifically, because the number of the two-dimensional codes in the two-dimensional code array diagram and the distribution of the two-dimensional codes are difficult to determine in advance, the size of each two-dimensional code and the interval between each two-dimensional codes cannot be known in advance, and a plurality of two-dimensional codes cannot be obtained by direct segmentation.
Therefore, the area size of each two-dimensional code and the interval between the two-dimensional codes can be determined by adopting a pixel traversal method, and the two-dimensional code array graph is further segmented.
Firstly, pixel traversal is carried out on a target area corresponding to each two-dimensional code in a two-dimensional code array diagram, and boundary coordinates of each two-dimensional code are determined. The boundary coordinates include upper and lower boundary coordinates and left and right boundary coordinates.
For example, before traversing the pixels in the two-dimensional code array map, the two-dimensional code array map may be subjected to an inversion and normalization operation, namely (255-image)/255 processing, where image is the two-dimensional code array map. The purpose of the inversion and normalization operations is to reduce the amount of computation. After processing, the background in the two-dimensional code array image is black, and only the pixel value in the target area corresponding to the two-dimensional code is left to be 1. And projecting the processed two-dimensional code array diagram in the horizontal direction and the vertical direction respectively, counting the number of non-0 pixels in each row and each column, and representing the number of non-0 pixels as row _ static and col _ static respectively by using an array.
Then, four containers, top _ y, bottom _ y, left _ x and right _ x, are set, and are respectively used for storing the upper, lower, left and right boundary coordinates of each row and each column of area blocks. Traversing an array row _ static element by element, when row _ static [ i ] ≦ 0 and row _ static [ i +1] >0 are satisfied, describing the upper boundary of the behavior two-dimensional code region, storing the row coordinate index i into a top _ y container, when row _ static [ i ] >0 and row _ static [ i +1] ≦ 0 are satisfied, describing the lower boundary of the behavior two-dimensional code region, and storing the row coordinate index i into a bottom _ y container; similarly, the col _ static array is traversed, when col _ static [ j ] ≦ 0 and col _ static [ j +1] >0 are satisfied, the column is described as the left boundary of the two-dimensional code region, the column coordinate index j is stored in the left _ x container, when col _ static [ j ] >0 and col _ static [ j +1] ≦ 0 are satisfied, the column is described as the right boundary of the two-dimensional code region, and the column coordinate index j is stored in the right _ x container. top _ y is consistent with bottom _ y in length, the element at the corresponding position defines the upper and lower boundary coordinates of a certain two-dimensional code area block in the two-dimensional code array diagram, left _ x is consistent with right _ x in length, and the element at the corresponding position defines the left and right boundary coordinates of the certain two-dimensional code area block in the two-dimensional code array diagram.
Secondly, when the two-dimensional code array image is divided, what is needed to be obtained is the row and column position of each two-dimensional code in the two-dimensional code array image, not the specific pixel coordinate value. Therefore, the area size of each two-dimensional code and the interval between the respective two-dimensional codes can be determined according to the boundary coordinates of each two-dimensional code.
For example, the interval between the respective two-dimensional codes may be represented by a default number of rows and columns between areas of each two-dimensional code. The number of default rows and columns among the detected two-dimensional code area blocks are respectively represented by the number of n _ present _ row and n _ present _ col, wherein the default rows and columns before the first row and after the last row are also included, and the dimension sizes are len (top _ y) +1 and len (left _ x) + 1. Calculating the average size of the detected two-dimensional codes:
avg_code_lengh=(∑(bottom_y[i]-top_y[i])+∑(right_x[j]-left_x[j]))/(len(top_y)+len(left_x))
then, the interval value between the upper boundary of the current row of two-dimensional code and the lower boundary of the previous row of two-dimensional code in the detected two-dimensional code is calculated one by one as top _ y [ i ] -bottom _ y [ i-1], then the default row number between the two detected rows of two-dimensional codes can be represented as n _ present _ row [ i ] (interval + avg _ code _ length)/avg _ code _ length _ σ + bias-1, where len (top _ y) ≧ i ≧ 1, and avg _ code _ length σ represents the distance between the centers of two adjacent two-dimensional codes in the two-dimensional code array diagram, and the distance value is represented by the σ coefficient and the average size of the two-dimensional code, for example, if the two-dimensional code array diagram is acquired based on a frozen memory box, the σ value can be approximately 2, the bias parameter of the σ is used to compensate the deviation of the average size code _ avg and the calculation bias of the average size _ code _ avg _ length, the value can be expressed as bias 0.2+ interval/image _ height 0.3, with the larger interval the larger the tolerable deviation.
Similarly, the interval value between the left boundary of the current column of two-dimensional codes and the right boundary of the previous column of two-dimensional codes in the detected two-dimensional codes, i.e., left _ x [ j ] -right _ x [ j-1], may be calculated one by one, and the default number of columns of two-dimensional codes between two columns is n _ present _ col [ j ] (interval + avg _ code _ length) avg _ code _ length σ + bias-1; the default number of rows and columns of the two-dimensional code before the initial row and the initial column may be represented as n _ present _ row [0] ═ top _ y [0]/avg _ code _ length ∑ bias0, n _ present _ col [0] ═ left _ x [0]/avg _ code _ length + _ bias, where _ bias is empirically about 0.3; similarly, the end default number of rows and columns may be expressed as:
n_absent_row[-1]=(image_height-bottom_y[-1])/avg_code_lengh*σ+_bias,n_absent_col[-1]=(image_width-right_x[-1])/avg_code_lengh*σ+_bias。
and thirdly, dividing the two-dimensional code array graph according to the area size of each two-dimensional code and the interval between the two-dimensional codes to obtain a plurality of two-dimensional codes.
For example, n _ present _ row, n _ present _ col are accumulated element by element, i.e.
Then, the row and column number (M, N) corresponding to a certain detected two-dimensional code region block (Range (top _ y [ i ], bottom _ y [ i ]), Range (left _ x [ j ], right _ x [ j ])) is M ═ N _ present _ row [ i ] + i, N ═ N _ present _ col [ j ] + j, M, N index values start from 0, and the total row and column number (M, N) of the two-dimensional code array chart is:
M=n_absent_row[-1]+len(top_y)
N=n_absent_col[-1]+len(left_x)
sequentially combining upper, lower, left and right boundary coordinates (Range (top _ y [ i ], bottom _ y [ i ]), Range (left _ x [ j ], right _ x [ j ])), dividing the local block from the two-dimensional code array image as a mask block, when the mask block has a non-0 foreground element, indicating that the area is a two-dimensional code target area, dividing a foreground part corresponding to the mask block from the two-dimensional code array image as a two-dimensional code image, calculating a rotation moment according to a rotation angle of a minimum circumscribed rectangle of the mask block, carrying out affine transformation on the two-dimensional code image to rotate the two-dimensional code image to a positive angle to be used as a final two-dimensional code image to be identified, and respectively storing each two-dimensional code image to be identified and a corresponding row-column number coordinate (m, n) into a code _ image _ list file and a code _ index _ list file once.
According to the two-dimension code identification method provided by the embodiment of the invention, the pixel traversal is carried out on the target area corresponding to each two-dimension code in the two-dimension code array diagram, the area size of each two-dimension code and the interval between the two-dimension codes are determined, the two-dimension code array diagram is further segmented, a plurality of two-dimension codes are obtained, the segmentation algorithm is simple and convenient, and the efficiency of batch identification of the two-dimension codes is improved.
Based on any of the above embodiments, fig. 10 is a schematic flow chart of a two-dimensional code batch identification method for medical reagent tubes provided by the present invention, as shown in fig. 10, the method includes:
step one, collecting images
In the field of medical research, pharmaceutical reagents are generally stored in reagent tubes with two-dimensional code labels, the reagent tubes are stored in a freezing box in batches, and images of the freezing box are acquired so that images containing a two-dimensional code array can be obtained.
The image acquisition equipment comprises a high-speed shooting instrument, a scanner, a mobile terminal and the like. In the field of medical research, high-speed cameras are often used for image acquisition. The high appearance of clapping takes the form of image from top to bottom, at the in-process of imaging to the object below the lens, receives top and all directions ambient light's interference all around very easily to the freezing box of plastics material produces local high reflection of light very easily and leads to some two-dimensional code not clear or visible. In addition, because the high restriction of taking a picture of appearance lens holder height can only the short distance formation of image, receives lens physical characteristic and lens group structure influence, barrel-shaped distortion appears in formation of image under the wide angle field of view very easily, leads to the high edge sharpness of center acutance low, appears the edge fuzzy phenomenon.
Step two, preprocessing the image and positioning and extracting the area of the cryopreservation box
Affected by imaging environment and quality of imaging equipment, the image may have the problems of color cast, geometric distortion, insufficient contrast and the like, a white balance algorithm such as a gray scale world method is adopted to carry out color cast correction on the image, a camera parameter Matrix and a distortion coefficient distCoeffs in the camera are obtained by a calibration camera to carry out distortion correction on the image, and a histogram equalization image enhancement algorithm is adopted to improve the image contrast. Since the freezing box in the image has a larger target area and a regular rectangular shape compared with other background sundries, the rectangular freezing box area can be simply positioned from the image according to the characteristics of the outline area and the shape.
Specifically, the image may be converted into a grayscale and binarized, and then canny edge detection and contour extraction are performed, the area contourArea of each contour region and the corresponding minimum circumscribed rectangle area recarea are calculated, when contourArea/recarea >0.9 is satisfied, the contour is described to be in a rectangular shape, and the contour of this portion is retained, and the region max (recarea) with the largest area is taken as the target region of the cryopreservation box. Then, a rotation matrix rotate _ mat is calculated according to the rotation angle rotate _ angle of the minimum circumscribed rectangle, affine transformation warpAffine is carried out, the image corresponding to the target area of the freezing box is rotated to the normal position, and the image is rotated to the normal position so as to facilitate subsequent positioning of each two-dimensional code position. The rotation angle rotation _ angle of the minimum circumscribed rectangle refers to a rotation angle corresponding to the x-axis rotating along the counterclockwise direction to the nearest side, and satisfies 0 < | rotation _ angle | < | > 90 degrees.
In order to rotate the freezing box to the closest flat state as much as possible, when the absolute rotation _ angle | < 45 degrees, the absolute rotation _ angle _ t is taken as absolute rotation _ angle | (-1), when the absolute rotation _ angle | > is 45 degrees, the absolute rotation _ angle _ t is taken as 90- | rotation _ angle |, and the absolute rotation _ angle _ t is taken as positive to represent counterclockwise rotation. After the rotation angle is determined, a rotation matrix can be calculated: rotate _ mat is getroto matrix2D (center, rotation _ angle _ t, scale), where center is the center Point of the rotated image, center is Point (width/2, height/2), and scale is the scaling ratio, and 1 may be taken.
The rotation matrix obtained is represented asUsing the matrix to pair two-dimensional vectorsWhen performing affine transformation as
After the area of the cryopreservation box is obtained, binarization processing is needed to separate the foreground and the background of the two-dimensional code. Considering that the brightness of different areas in the target image of the cryopreservation box has large difference under the influence of uneven illumination, if a global threshold value method is adopted for binarization, two-dimensional codes in a plurality of different brightness areas are difficult to be separated from the background by a single threshold value, so that a local threshold value method is mainly adopted for processing. Local threshold method for dividing image into a plurality of local blocksm×n. Here, m and n represent the number of horizontal partial blocks and the number of vertical partial blocks in the image, respectively. Preferably, m is 4 and n is 4.
And calculating a weighted average value of the brightness in each local area, for example, distributing weights by using a Gaussian distribution function, calculating the weighted average value, and then performing binarization on each local block by taking the corresponding average value as a basis, so that different image areas can be binarized by adopting different thresholds according to different self-adaptations of the brightness, and a two-dimensional code foreground part can be effectively extracted.
The method mainly comprises the steps that after a target image of a cryopreservation box is obtained, local binarization processing is carried out on the image, the fact that the brightness of different areas in the image is greatly different under the influence of uneven illumination is mainly considered, if global threshold methods such as an OTSU Otsu method and the like are adopted for binarization, a single threshold value is difficult to be used for simultaneously separating the foreground and the background in a plurality of different brightness areas, when a local threshold value method is adopted, different threshold values are adopted for binarization according to the brightness in each local neighborhood, and the details of two-dimensional codes in each local area can be effectively reserved. The local domain value method can be expressed as adaptiveThreshold (src, dst,255, adaptivetMethod, threshold, block _ size, C), where src is the frozen storage box target image, dst is the processed binary image, adaptivetMethod is the algorithm used for calculating the threshold in each neighborhood, and methods such as ADAPTIVE _ THRESH _ MEAN _ C or DAPTIVE _ THRESH _ GAUSSIAN _ C can be selected, and the average value and Gaussian average value in the neighborhood are respectively used as the neighborhood threshold after subtracting the offset value adjustment value C, the size of the neighborhood block is controlled by the block _ size parameter, and threshold type.
Step three, connected domain marking
Filling unclosed holes in the binarized image of the target image of the cryopreservation box after corrosion operation based on the shape characteristics of the two-dimensional codes on the reagent tube, and performing expansion operation on the filled binarized image to obtain a communication area of each two-dimensional code.
And step four, performing characteristic analysis on the connected regions, and screening a false target formed by image noise, wherein the connected regions of each two-dimensional code in the two-dimensional code target region may correspond to real two-dimensional codes, so that an effective target region, namely the target region corresponding to each two-dimensional code, needs to be screened out by performing characteristic analysis on the connected regions. The characteristic analysis mode comprises area analysis, shape analysis and the like.
Step five, positioning and dividing the target area of the two-dimension code to obtain each two-dimension code
And performing pixel traversal on a target area corresponding to each two-dimensional code in the target image of the cryopreservation box, determining the boundary coordinates of each two-dimensional code, and further determining the area size of each two-dimensional code and the interval between the two-dimensional codes. And segmenting the target image of the cryopreservation box according to the area size of each two-dimensional code and the interval between the two-dimensional codes to obtain a plurality of two-dimensional codes.
Sixthly, identifying each two-dimensional code
In the identification process, aiming at the problem of difficulty in two-dimension code identification caused by environmental illumination and imaging quality reasons, various image enhancements are carried out on each local two-dimension code image, and the current two-dimension code is identified according to the image enhancement mode used by the successful identification of the adjacent two-dimension code. Meanwhile, a scheme of compositely superposing a plurality of recognition results is adopted, so that the two-dimensional code under noise interference can obtain recognition information, and the success rate of overall recognition is effectively improved.
Based on any of the above embodiments, fig. 11 is a schematic structural diagram of a two-dimensional code recognition apparatus provided by the present invention, as shown in fig. 11, the apparatus includes:
the dividing unit 1110 is configured to divide a two-dimensional code array diagram to be identified to obtain a plurality of two-dimensional codes;
the identification unit 1120 is configured to identify the current two-dimensional code based on the adjacent enhancement mode to obtain an identification result of the current two-dimensional code;
the adjacent enhancement mode is an image enhancement mode used for successfully identifying the adjacent two-dimensional codes of the current two-dimensional codes in the two-dimensional code array image.
Specifically, the dividing unit 1110 is configured to divide the two-dimensional code array map to be identified to obtain a plurality of two-dimensional codes. The identification unit 1120 is configured to identify the current two-dimensional code according to an image enhancement mode used for successful identification of an adjacent two-dimensional code of the current two-dimensional code in the two-dimensional code array diagram, so as to obtain an identification result of the current two-dimensional code.
The two-dimensional code recognition device provided by the embodiment of the invention adopts an image enhancement mode to recognize the current two-dimensional code, improves the success rate of recognizing the two-dimensional code under the conditions of unsatisfactory ambient illumination and low imaging quality, recognizes the current two-dimensional code according to the image enhancement mode used by the successful recognition of the adjacent two-dimensional code in the two-dimensional code array diagram to obtain the recognition result of the current two-dimensional code, realizes the batch recognition of all the two-dimensional codes in the two-dimensional code array diagram, avoids the recognition of a plurality of image enhancement results corresponding to the current two-dimensional code one by one, reduces the recognition time in the process of batch recognition of the two-dimensional code, reduces the complexity of a recognition algorithm and improves the efficiency of batch recognition of the two-dimensional code.
Based on any of the above embodiments, the identifying unit 1120 includes:
the image to be recognized determining subunit is used for taking the image enhancement result of the current two-dimensional code in the adjacent enhancement mode as the image to be recognized;
the identification subunit is used for carrying out two-dimensional code identification on the image to be identified;
the image to be recognized switching subunit is used for taking a result obtained by two-dimension code recognition as a recognition result of the current two-dimension code if the recognition is successful, or taking an image enhancement result of the current two-dimension code in other image enhancement modes as an image to be recognized; the other image enhancement modes are image enhancement modes except the adjacent enhancement mode.
Based on any one of the above embodiments, the apparatus further comprises a fusion recognition unit, the fusion recognition unit comprising:
the known two-dimensional code determining subunit is used for determining known two-dimensional codes which are successfully identified in the at least two-dimensional code array diagrams based on the identification result of each two-dimensional code in the at least two-dimensional code array diagrams; the at least two-dimensional code array diagrams are acquired from the same two-dimensional code array;
the array diagram alignment subunit is used for aligning each two-dimensional code array diagram based on the position of the known two-dimensional code in each two-dimensional code array diagram;
and the array diagram fusing subunit is used for fusing the identification results of the two-dimensional codes in the aligned two-dimensional code array diagrams to obtain the identification results of the two-dimensional codes in the two-dimensional code array.
Based on any one of the above embodiments, the array diagram alignment subunit includes:
the first distance determining module is used for determining the distance between a known two-dimensional code and a reference origin in a reference image by taking any two-dimensional code array image as the reference image;
the second distance determining module is used for determining the distance between the known two-dimensional code and each corner point in the rest two-dimensional code array images;
the reference origin determining module is used for taking any one corner point as a reference origin of the rest two-dimensional code array images if the distance between the known two-dimensional code and the any one corner point is equal to the distance between the known two-dimensional code and the reference origin;
and the array diagram alignment module is used for aligning each two-dimensional code array diagram based on the reference origin of the reference image and the reference origins of the other two-dimensional code array diagrams.
Based on any of the above embodiments, the segmentation unit 1110 includes:
the hole filling subunit is used for filling unclosed holes in the binarized image of the two-dimensional code array diagram after corrosion operation based on the shape characteristics of the two-dimensional codes, and performing expansion operation on the filled binarized image to obtain a candidate connected region of each two-dimensional code;
and the array map dividing subunit is used for dividing the two-dimensional code array map based on the candidate connected region of each two-dimensional code to obtain a plurality of two-dimensional codes.
Based on any one of the above embodiments, the array map dividing subunit includes:
the target area determining module is used for detecting the candidate connected area of each two-dimensional code to obtain a target area corresponding to each two-dimensional code;
and the two-dimension code determining module is used for segmenting the two-dimension code array graph based on the target area corresponding to each two-dimension code to obtain a plurality of two-dimension codes.
Based on any one of the above embodiments, the two-dimensional code determination module includes:
the boundary coordinate determination submodule is used for performing pixel traversal on a target area corresponding to each two-dimensional code in the two-dimensional code array diagram and determining the boundary coordinate of each two-dimensional code;
the region interval determining submodule is used for determining the region size of each two-dimensional code and the interval between every two-dimensional codes based on the boundary coordinates of each two-dimensional code;
and the segmentation submodule is used for segmenting the two-dimensional code array graph based on the area size of each two-dimensional code and the interval between the two-dimensional codes to obtain a plurality of two-dimensional codes.
Based on any of the above embodiments, fig. 12 is a schematic structural diagram of an electronic device provided by the present invention, and as shown in fig. 12, the electronic device may include: a Processor (Processor)1210, a communication Interface (Communications Interface)1220, a Memory (Memory)1230, and a communication Bus (Communications Bus)1240, wherein the Processor 1210, the communication Interface 1220, and the Memory 1230 communicate with each other via the communication Bus 1240. Processor 1210 may invoke logical commands in memory 1230 to perform the following method:
dividing a two-dimensional code array image to be identified to obtain a plurality of two-dimensional codes; identifying the current two-dimensional code based on an adjacent enhancement mode to obtain an identification result of the current two-dimensional code; the adjacent enhancement mode is an image enhancement mode used for successfully identifying the adjacent two-dimensional codes of the current two-dimensional codes in the two-dimensional code array image.
In addition, the logic commands in the memory 1230 can be implemented in software functional units and stored in a computer readable storage medium when the logic commands are sold or used as independent products. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes a plurality of commands for enabling a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
Embodiments of the present invention further provide a non-transitory computer-readable storage medium, on which a computer program is stored, where the computer program is implemented to perform the method provided in the foregoing embodiments when executed by a processor, and the method includes:
dividing a two-dimensional code array image to be identified to obtain a plurality of two-dimensional codes; identifying the current two-dimensional code based on an adjacent enhancement mode to obtain an identification result of the current two-dimensional code; the adjacent enhancement mode is an image enhancement mode used for successfully identifying the adjacent two-dimensional codes of the current two-dimensional codes in the two-dimensional code array image.
The above-described embodiments of the apparatus are merely illustrative, and the units described as separate parts may or may not be physically separate, and parts displayed 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 modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware. With this understanding in mind, the above technical solutions may be embodied in the form of a software product, which can be stored in a computer-readable storage medium, such as ROM/RAM, magnetic disk, optical disk, etc., and includes commands for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the method according to the embodiments or some parts of the embodiments.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.
Claims (10)
1. A two-dimensional code recognition method is characterized by comprising the following steps:
dividing a two-dimensional code array image to be identified to obtain a plurality of two-dimensional codes;
identifying the current two-dimensional code based on an adjacent enhancement mode to obtain an identification result of the current two-dimensional code;
and the adjacent enhancement mode is an image enhancement mode used for successfully identifying the adjacent two-dimensional codes of the current two-dimensional code in the two-dimensional code array image.
2. The two-dimensional code recognition method according to claim 1, wherein recognizing the current two-dimensional code based on the adjacent enhancement mode to obtain the recognition result of the current two-dimensional code comprises:
taking the image enhancement result of the current two-dimensional code in the adjacent enhancement mode as a graph to be identified;
carrying out two-dimensional code recognition on the graph to be recognized;
if the two-dimension code is successfully identified, taking a result obtained by identifying the two-dimension code as an identification result of the current two-dimension code, and otherwise, taking an image enhancement result of the current two-dimension code in other image enhancement modes as an image to be identified; and the other image enhancement modes are image enhancement modes except the adjacent enhancement mode.
3. The two-dimensional code recognition method according to claim 1, wherein the recognizing a current two-dimensional code based on an adjacent enhancement mode to obtain a recognition result of the current two-dimensional code, and then further comprising:
determining known two-dimensional codes which are successfully identified in the at least two-dimensional code array diagrams based on the identification result of each two-dimensional code in the at least two-dimensional code array diagrams; the at least two-dimensional code array diagrams are acquired from the same two-dimensional code array;
aligning each two-dimension code array diagram based on the position of the known two-dimension code in each two-dimension code array diagram;
and fusing the identification results of the two-dimension codes in the aligned two-dimension code array diagrams to obtain the identification results of the two-dimension codes in the two-dimension code array.
4. The two-dimensional code recognition method according to claim 3, wherein aligning the two-dimensional code array diagrams based on the positions of the known two-dimensional codes in the two-dimensional code array diagrams comprises:
determining the distance between the known two-dimensional code and a reference origin in a reference image by taking any two-dimensional code array image as the reference image;
determining the distance between the known two-dimensional code and each corner point in the rest two-dimensional code array images;
if the distance between the known two-dimensional code and any one corner point is equal to the distance between the known two-dimensional code and the reference origin point, taking the any one corner point as the reference origin point of the rest two-dimensional code array images;
and aligning each two-dimensional code array diagram based on the reference origin of the reference image and the reference origins of the other two-dimensional code array diagrams.
5. The two-dimensional code recognition method according to any one of claims 1 to 4, wherein the dividing the two-dimensional code array diagram to be recognized to obtain a plurality of two-dimensional codes comprises:
filling unclosed holes in the binarized image of the two-dimensional code array diagram after corrosion operation based on the shape characteristics of the two-dimensional codes, and performing expansion operation on the filled binarized image to obtain a candidate connected region of each two-dimensional code;
and dividing the two-dimension code array graph based on the candidate connected region of each two-dimension code to obtain a plurality of two-dimension codes.
6. The two-dimensional code recognition method according to claim 5, wherein the dividing the two-dimensional code array map based on the candidate connected region of each two-dimensional code to obtain a plurality of two-dimensional codes comprises:
detecting the candidate connected region of each two-dimension code to obtain a target region corresponding to each two-dimension code;
and dividing the two-dimension code array graph based on the target area corresponding to each two-dimension code to obtain a plurality of two-dimension codes.
7. The two-dimensional code recognition method according to claim 6, wherein the dividing the two-dimensional code array map based on the target area corresponding to each two-dimensional code to obtain a plurality of two-dimensional codes comprises:
performing pixel traversal on a target area corresponding to each two-dimensional code in the two-dimensional code array diagram, and determining boundary coordinates of each two-dimensional code;
determining the area size of each two-dimensional code and the interval between the two-dimensional codes based on the boundary coordinates of each two-dimensional code;
and dividing the two-dimension code array graph based on the area size of each two-dimension code and the interval between the two-dimension codes to obtain a plurality of two-dimension codes.
8. A two-dimensional code recognition device, comprising:
the segmentation unit is used for segmenting the two-dimensional code array image to be identified to obtain a plurality of two-dimensional codes;
the identification unit is used for identifying the current two-dimensional code based on an adjacent enhancement mode to obtain an identification result of the current two-dimensional code;
and the adjacent enhancement mode is an image enhancement mode used for successfully identifying the adjacent two-dimensional codes of the current two-dimensional code in the two-dimensional code array image.
9. An electronic device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, wherein the processor implements the steps of the two-dimensional code recognition method according to any one of claims 1 to 7 when executing the computer program.
10. A non-transitory computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, implements the steps of the two-dimensional code recognition method according to any one of claims 1 to 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011590063.9A CN112580383B (en) | 2020-12-29 | 2020-12-29 | Two-dimensional code identification method and device, electronic equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011590063.9A CN112580383B (en) | 2020-12-29 | 2020-12-29 | Two-dimensional code identification method and device, electronic equipment and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112580383A true CN112580383A (en) | 2021-03-30 |
CN112580383B CN112580383B (en) | 2023-08-29 |
Family
ID=75143866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011590063.9A Active CN112580383B (en) | 2020-12-29 | 2020-12-29 | Two-dimensional code identification method and device, electronic equipment and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112580383B (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112906421A (en) * | 2021-04-08 | 2021-06-04 | 苏州华兴源创科技股份有限公司 | Product two-dimensional code identification method |
CN112926352A (en) * | 2021-04-07 | 2021-06-08 | 上海商米科技集团股份有限公司 | Bar code reading method based on multi-decoding-base self-learning |
CN114581360A (en) * | 2021-04-01 | 2022-06-03 | 正泰集团研发中心(上海)有限公司 | Photovoltaic module label detection method, device, equipment and computer storage medium |
CN115022605A (en) * | 2022-05-17 | 2022-09-06 | 深圳市当智科技有限公司 | Projection method, projector, and computer-readable storage medium |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4896029A (en) * | 1988-04-08 | 1990-01-23 | United Parcel Service Of America, Inc. | Polygonal information encoding article, process and system |
US5371533A (en) * | 1991-08-30 | 1994-12-06 | Hughes Aircraft Company | Image restoration systems and methods utilizing input signals with modified DC signal content |
WO2005001749A1 (en) * | 2003-06-27 | 2005-01-06 | Lp Technologies (Shanghai) Inc. | Method of enhancing digital image information of two-dimensional bar code |
US20080069398A1 (en) * | 2005-03-18 | 2008-03-20 | Fujitsu Limited | Code image processing method |
US20150144693A1 (en) * | 2013-11-22 | 2015-05-28 | Ncr Corporation | Optical Code Scanner Optimized for Reading 2D Optical Codes |
WO2017157034A1 (en) * | 2016-03-15 | 2017-09-21 | 中兴通讯股份有限公司 | Method, device, and storage medium for identifying two-dimensional code |
CN108229232A (en) * | 2016-12-21 | 2018-06-29 | 腾讯科技(深圳)有限公司 | The method of batch scanning Quick Response Code and the device of batch scanning Quick Response Code |
CN109522768A (en) * | 2018-10-22 | 2019-03-26 | 清华大学 | The recognition methods of QR code and device |
CN109800615A (en) * | 2018-12-28 | 2019-05-24 | 新大陆数字技术股份有限公司 | The detection localization method and system of two-dimension code area |
US20200074129A1 (en) * | 2016-12-09 | 2020-03-05 | Beijing Bigcode Technology Co., Ltd. | Combined two-dimensional code, electronic certificate carrier, and generation and reading apparatus and method |
CN111783493A (en) * | 2020-06-18 | 2020-10-16 | 福州富昌维控电子科技有限公司 | Identification method and identification terminal for batch two-dimensional codes |
KR20200127928A (en) * | 2013-11-22 | 2020-11-11 | 삼성전자주식회사 | Method and apparatus for recognizing object of image in electronic device |
-
2020
- 2020-12-29 CN CN202011590063.9A patent/CN112580383B/en active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4896029A (en) * | 1988-04-08 | 1990-01-23 | United Parcel Service Of America, Inc. | Polygonal information encoding article, process and system |
US5371533A (en) * | 1991-08-30 | 1994-12-06 | Hughes Aircraft Company | Image restoration systems and methods utilizing input signals with modified DC signal content |
WO2005001749A1 (en) * | 2003-06-27 | 2005-01-06 | Lp Technologies (Shanghai) Inc. | Method of enhancing digital image information of two-dimensional bar code |
US20080069398A1 (en) * | 2005-03-18 | 2008-03-20 | Fujitsu Limited | Code image processing method |
US20150144693A1 (en) * | 2013-11-22 | 2015-05-28 | Ncr Corporation | Optical Code Scanner Optimized for Reading 2D Optical Codes |
KR20200127928A (en) * | 2013-11-22 | 2020-11-11 | 삼성전자주식회사 | Method and apparatus for recognizing object of image in electronic device |
WO2017157034A1 (en) * | 2016-03-15 | 2017-09-21 | 中兴通讯股份有限公司 | Method, device, and storage medium for identifying two-dimensional code |
US20200074129A1 (en) * | 2016-12-09 | 2020-03-05 | Beijing Bigcode Technology Co., Ltd. | Combined two-dimensional code, electronic certificate carrier, and generation and reading apparatus and method |
CN108229232A (en) * | 2016-12-21 | 2018-06-29 | 腾讯科技(深圳)有限公司 | The method of batch scanning Quick Response Code and the device of batch scanning Quick Response Code |
CN109522768A (en) * | 2018-10-22 | 2019-03-26 | 清华大学 | The recognition methods of QR code and device |
CN109800615A (en) * | 2018-12-28 | 2019-05-24 | 新大陆数字技术股份有限公司 | The detection localization method and system of two-dimension code area |
CN111783493A (en) * | 2020-06-18 | 2020-10-16 | 福州富昌维控电子科技有限公司 | Identification method and identification terminal for batch two-dimensional codes |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114581360A (en) * | 2021-04-01 | 2022-06-03 | 正泰集团研发中心(上海)有限公司 | Photovoltaic module label detection method, device, equipment and computer storage medium |
CN114581360B (en) * | 2021-04-01 | 2024-03-12 | 正泰集团研发中心(上海)有限公司 | Photovoltaic module label detection method, device, equipment and computer storage medium |
CN112926352A (en) * | 2021-04-07 | 2021-06-08 | 上海商米科技集团股份有限公司 | Bar code reading method based on multi-decoding-base self-learning |
CN112906421A (en) * | 2021-04-08 | 2021-06-04 | 苏州华兴源创科技股份有限公司 | Product two-dimensional code identification method |
CN115022605A (en) * | 2022-05-17 | 2022-09-06 | 深圳市当智科技有限公司 | Projection method, projector, and computer-readable storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN112580383B (en) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113160192B (en) | Visual sense-based snow pressing vehicle appearance defect detection method and device under complex background | |
CN112686812B (en) | Bank card tilt correction detection method, device, readable storage medium and terminal | |
CN112580383B (en) | Two-dimensional code identification method and device, electronic equipment and storage medium | |
Chaudhuri et al. | Automatic building detection from high-resolution satellite images based on morphology and internal gray variance | |
CN106960208B (en) | Method and system for automatically segmenting and identifying instrument liquid crystal number | |
CN108596166A (en) | A kind of container number identification method based on convolutional neural networks classification | |
CN113435407B (en) | Small target identification method and device for power transmission system | |
CN111680690B (en) | Character recognition method and device | |
WO2018018788A1 (en) | Image recognition-based meter reading apparatus and method thereof | |
CN112749696B (en) | Text detection method and device | |
CN111695373B (en) | Zebra stripes positioning method, system, medium and equipment | |
CN106846339A (en) | Image detection method and device | |
CN118275449B (en) | Copper strip surface defect detection method, device and equipment | |
CN112686248B (en) | Method, device, readable storage medium, and terminal for detecting increase or decrease of certificate types | |
CN110598566A (en) | Image processing method, device, terminal and computer readable storage medium | |
CN113033558B (en) | Text detection method and device for natural scene and storage medium | |
CN113538500B (en) | Image segmentation method and device, electronic equipment and storage medium | |
US20200302135A1 (en) | Method and apparatus for localization of one-dimensional barcodes | |
CN113392819B (en) | Batch academic image automatic segmentation and labeling device and method | |
Gilly et al. | A survey on license plate recognition systems | |
CN112580447A (en) | Power line detection method based on edge second-order statistics and fusion | |
Çavdaroğlu et al. | A character segmentation method to increase character recognition accuracy for Turkish number plates | |
CN112633289B (en) | Method and system for segmenting sticky characters | |
CN118520893A (en) | Method, device and storage medium for identifying bar code label applied to AOI | |
CN110473222A (en) | Image-element extracting method and device |
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 |