Summary of the invention
This specification one or more embodiment describes a kind of two dimensional code bearing calibration, device and equipment, can be to depositing
It is corrected in the two dimensional code of deformation and distortion.
In a first aspect, providing a kind of two dimensional code bearing calibration, comprising:
Obtain the image that multiframe includes same two dimensional code;
Characteristic point is extracted from the first image arbitrary in the multiple image, and other figures in the multiple image
The characteristic point is tracked as in;
The coordinate of coordinate, the characteristic point in other images based on the characteristic point in the first image
And three-dimensional reconstruction algorithm, determine the three-dimensional coordinate of the characteristic point in three dimensions;
Based on at least frame image in the multiple image, two dimensional code mould corresponding with the version of the two dimensional code is obtained
Plate;
The corresponding feature locations of the characteristic point are determined from the two-dimentional code mask;
The coordinate and elasticity of three-dimensional coordinate, the feature locations based on the characteristic point in the two-dimentional code mask
Registration Algorithm converts the two-dimentional code mask, so that the two dimension code mask generates and two in the first image
Tie up the identical deformation of code;
Transformed two-dimentional code mask is projected in the first image or is projected to the first image described
On transformed two dimension code mask;
Two-dimentional code mask after projection is sampled, with the two dimensional code after being corrected.
Second aspect provides a kind of two dimensional code means for correcting, comprising:
Acquiring unit, for obtaining the image that multiframe includes same two dimensional code;
Extraction unit, for extracting characteristic point from the first image arbitrary in the multiple image, and in the multiframe
The characteristic point is tracked in other images in image;
Determination unit, for based on coordinate of the characteristic point in the first image, the characteristic point it is described its
Coordinate and three-dimensional reconstruction algorithm in its image, determine the three-dimensional coordinate of the characteristic point in three dimensions;
The acquiring unit is also used to obtain and the two dimensional code based on at least frame image in the multiple image
The corresponding two-dimentional code mask of version;
The determination unit is also used to determine the feature from the two-dimentional code mask that the acquiring unit obtains
The corresponding feature locations of point;
Converter unit, three-dimensional coordinate, the feature locations for the characteristic point that unit based on the determination determines
Coordinate and elastic registration algorithm in the two-dimentional code mask convert the two-dimentional code mask, so that described two
It ties up code mask and generates deformation identical with the two dimensional code in the first image;
Projecting cell, for the transformed two-dimentional code mask of the converter unit to be projected in the first image or
The first image is projected on the transformed two-dimentional code mask;
Sampling unit, for being sampled to the two-dimentional code mask after projection, with the two dimensional code after being corrected.
The third aspect provides a kind of two dimensional code calibration equipment, comprising:
Memory;
One or more processors;And
One or more programs wherein the storage of one or more of programs is in the memory, and are configured to
It is executed by one or more of processors, described program performs the steps of when being executed by the processor
Obtain the image that multiframe includes same two dimensional code;
Characteristic point is extracted from the first image arbitrary in the multiple image, and other figures in the multiple image
The characteristic point is tracked as in;
The coordinate of coordinate, the characteristic point in other images based on the characteristic point in the first image
And three-dimensional reconstruction algorithm, determine the three-dimensional coordinate of the characteristic point in three dimensions;
Based on at least frame image in the multiple image, two dimensional code mould corresponding with the version of the two dimensional code is obtained
Plate;
The corresponding feature locations of the characteristic point are determined from the two-dimentional code mask;
The coordinate and elasticity of three-dimensional coordinate, the feature locations based on the characteristic point in the two-dimentional code mask
Registration Algorithm converts the two-dimentional code mask, so that the two dimension code mask generates and two in the first image
Tie up the identical deformation of code;
Transformed two-dimentional code mask is projected in the first image or is projected to the first image described
On transformed two dimension code mask;
Two-dimentional code mask after projection is sampled, with the two dimensional code after being corrected.
Two dimensional code bearing calibration, device and the equipment that this specification one or more embodiment provides, obtaining multiframe includes
The image of same two dimensional code.Characteristic point is extracted from arbitrary first image in multiple image, and its in multiple image
Characteristic point is tracked in its image.Based on characteristic point in the seat of coordinate, characteristic point in other images in the first image
It is marked with and three-dimensional reconstruction algorithm, determines the three-dimensional coordinate of characteristic point in three dimensions.Based on at least frame in multiple image
Image obtains two-dimentional code mask corresponding with the version of two dimensional code.The corresponding feature of characteristic point is determined from two-dimentional code mask
Position.The coordinate and elastic registration algorithm of three-dimensional coordinate, feature locations based on characteristic point in two-dimentional code mask, to two dimension
Code mask is converted, so that two-dimentional code mask generates deformation identical with the two dimensional code in the first image.By transformed two
Dimension code mask projects on the first image or will be in the first image projection to transformed two-dimentional code mask.To two after projection
Dimension code mask is sampled, with the two dimensional code after being corrected.Namely in the scheme of this specification offer, first by restoring two
The three-dimensional structure of code is tieed up to determine deformation caused by two dimensional code, deformation is applied to by two dimensional code by elastic registration algorithm later
Two dimensional code in template, after being corrected finally by the two-dimentional code mask after deformation is projected and sampled.As a result, may be used
To carry out precise calibration to the two dimensional code for generating different deformation, to have preferable versatility.
Specific embodiment
With reference to the accompanying drawing, the scheme provided this specification is described.
Before the scheme that this specification provides is described, first the inventive concept of this programme is made the following instructions.
As described in the content of background technique, with the diversification of the application form of two dimensional code, two dimensional code itself can have one
A little deformation and distortion.To realize that realization approach can be such that there are the two dimensional codes of deformation and distortion to be corrected
Firstly, restoring the three-dimensional structure of deformation two dimensional code.Specifically, available multiframe includes same deformation two dimensional code
Image.In one example, which can be as shown in Figure 1.It, can be with for any frame image in the multiple image
Therefrom extract several characteristic points.Later, for each characteristic point, position of this feature point in other frame images can be tracked
It sets, and based on position of this feature point in above-mentioned frame image and other frame images and three-dimensional reconstruction algorithm, to determine
The position of this feature point in three dimensions.Based on the position of several identified characteristic points in three dimensions, Lai Huifu
The three-dimensional structure of deformation two dimensional code.
It is understood that actually having determined that out two dimensional code after the three-dimensional structure for recovering deformation two dimensional code
Generated deformation and distortion.
Secondly, deformation is applied on corresponding two-dimentional code mask by elastic registration algorithm.Two described in this specification
Dimension code mask may include the feature locations of several known coordinates.It this feature position can be with the module phase in two-dimentional code mask
It is corresponding.Here module can be understood as the black and white module in two dimensional code, i.e., it may include several pixels, only
The pixel value of these pixels is also uncertain, so that the color value of the module is sky.Specifically, for the feature of said extracted
Point determines corresponding feature locations from two-dimentional code mask.Based on this feature point position in three dimensions and two
Tie up corresponding feature locations in code mask, to determine the first transformation relation between characteristic point and feature locations, and based on this
One transformation relation executes the first transformation to two-dimentional code mask.Here first transformation can refer to similarity transformation, may include but
It is not limited to translation, rotation and scaling etc..It is understood that after executing the first transformation to two-dimentional code mask, two dimensional code mould
Plate can be located under the same coordinate system with two dimensional code to be reconstructed, and so far be achieved that two-dimentional code mask and two dimension to be reconstructed
The preliminary registration of code.
It should be noted that before executing above-mentioned preliminary registration, due to each spy in characteristic point and two-dimentional code mask
Position is levied not under the same coordinate system, therefore, identified corresponding feature locations are usually inaccurate through the above steps.
Therefore, after completing above-mentioned preliminary registration, for features described above point, can be become by elastic registration algorithm in execution first
The corresponding feature locations of characteristic point are redefined in two-dimentional code mask after changing, and determine that characteristic point is corresponding with what is redefined
The second transformation relation between feature locations.Based on second transformation relation, the second transformation is executed to two-dimentional code mask.Here
Second transformation can refer to non-rigid transformation, can include but is not limited to rotation, translation, scaling and distortion etc..So far, two-dimentional
Code mask just produces deformation identical with deformation two dimensional code.
Finally, the two-dimentional code mask for generating deformation is projected and is sampled.It should be noted that passing through above steps
Only so that two-dimentional code mask produces deformation identical with deformation two dimensional code, but due to each Q-character in the two dimension code mask
The color value of corresponding module is set as sky, therefore can't be using the two-dimentional code mask of the generation deformation as the two dimensional code of reconstruct.
For the two dimensional code reconstructed, following steps can also be performed: will execute the second transformed two-dimentional code mask project to it is above-mentioned
On any frame image in multiple image or by any frame image projection in above-mentioned multiple image to after executing the second transformation
Two dimensional code not in the class, the two dimensional code after so far just being reconstructed.It is understood that the two dimensional code after reconstructing here is to produce
The two dimensional code of raw deformation.And hence it is also possible to be sampled to the two-dimentional code mask after projection, i.e., corresponding face after projecting module
Color value is filled on corresponding non-deformation two dimensional code template, with obtain removal deformation after two dimensional code, after the removal deformation two
It ties up code and is also referred to as the two dimensional code after correcting.
Above it is exactly the inventive concept that this specification provides, this programme can be obtained by based on the inventive concept.It is right below
This programme is described in detail.
Fig. 2 is that the two dimensional code that this specification provides decodes system schematic.As shown in Fig. 2, the system may include: to obtain
Module 202, correction module 204 and decoder module 206.
Module 202 is obtained, for obtaining the image that multiframe includes same deformation two dimensional code.
Correction module 204, for restoring the three-dimensional structure of two dimensional code based on the multiple image for obtaining the acquisition of module 202.Base
In the three-dimensional structure of the two dimensional code of recovery, deformation caused by two dimensional code is determined.Deformation is applied to by elastic registration algorithm
On two-dimentional code mask.Two-dimentional code mask after deformation is projected and sampled with the two dimensional code after being corrected.Its specific school
The subsequent explanation of positive process.
Decoder module 206, for being decoded to the two dimensional code after correction.
Fig. 3 is the two dimensional code bearing calibration flow chart that this specification one embodiment provides.The executing subject of the method
It can be the equipment with processing capacity: server or system or module, can be the correction module 204 in Fig. 2 e.g.
Deng.As shown in figure 3, the method can specifically include:
Step 302, the image that multiframe includes same two dimensional code is obtained.
Here two dimensional code can refer to the two dimensional code (abbreviation deformation two dimensional code) for generating deformation.And multiple image here
It can refer to multiple image in time continuously or discontinuously captured by user.
Step 304, characteristic point is extracted from the first image arbitrary in multiple image, and other figures in multiple image
Line trace is clicked through to this feature as in.
For example, several characteristic points can be extracted from the first image by Corner Detection Algorithm.Here Corner Detection
Algorithm can include but is not limited to Harris (Harris) algorithm, Scale invariant features transform (Scale-invariant
Feature transform, SIFT) algorithm, acceleration robust feature (Speeded Up Robust Features, SURF) algorithm
And binary feature (Oriented FAST and Rotated BRIEF, ORB) algorithm with rotation etc..
The characteristic point that this specification is extracted may include two types: first kind characteristic point and the second category feature point.
Wherein, first kind characteristic point is referred to as key feature points, can be corresponding with the angle point of targeted graphical.Goal
Figure can include but is not limited to detection figure, correction graph or positioning pattern etc..Second category feature point is referred to as it
Its characteristic point, can be from the extracted characteristic point with corner feature of any position of two dimensional code.
After extracting several characteristic points in the first image, for each characteristic point, to this feature point in multiframe
It can be with to the tracking process of this feature point in other images in image in addition to the first image are as follows:
Coordinate based on characteristic point in the first image selects corresponding region in the first image center.From other images,
Such as second determine the region in image corresponding region.The characteristic point searched in corresponding region and extracted in the first image
The characteristic point to match.The characteristic point that this is matched is determined as the character pair point in the second image.It should be noted that by
The variation of picture material is usually smaller between continuous multiple image in time, therefore, usually can be quasi- by this method
Really and efficiently characteristic point is tracked.
Certainly, in practical applications, the tracking process of characteristic point may be: several features are extracted from other images
Point.Feature describing word based on characteristic point, to from each characteristic point extracted in the first image and from other images
Extracted each characteristic point carries out characteristic matching.It, will be in other images for any feature point extracted from the first image
Matched characteristic point is determined as character pair point.
Step 306, the coordinate and three-dimensional based on characteristic point in the coordinate, characteristic point in the first image in other images
Algorithm for reconstructing determines the three-dimensional coordinate of characteristic point in three dimensions.
Here three-dimensional reconstruction algorithm can for example be calculated for exercise recovery structure (Structure from Motion, SFM)
Method etc..The basic principle of SFM algorithm is: calculating the three-dimensional coordinate of characteristic point by double vision or more views based on image-forming principle, then
The optimal estimation of characteristic point position in three dimensions is obtained by minimizing re-projection error.
Step 308, based on at least frame image in multiple image, two dimensional code mould corresponding with the version of two dimensional code is obtained
Plate.
In the present specification, the version of two dimensional code can be determined by the following two kinds mode.
In one implementation, three detection figures and spy can be detected in at least frame image in multiple image
The central point of mapping shape.It is chosen from three detection figures and is located at two ipsilateral detection figures.Figure is detected based on two
Central point calculates the distance between two detection figures.According to distance, the version of two dimensional code is determined.It should be noted that this two
The determination method for tieing up the version of code, can be adapted for the two dimensional code of any version, to have preferable versatility.
The concentric square that detection figure can be regarded as being overlapped by 3 described in this specification forms.In binaryzation
Image in, the line segment black and white length ratio of the detection figure meets 1:1:3:1:1.It therefore, being somebody's turn to do based on detection figure
Feature detects detection figure and its central point in the first image.Since detection figure and its central point are detected as
Traditional routine techniques, therefore therefore not to repeat here.
In one example, the version of two dimensional code determines that formula can be with are as follows: (distance (f1, f2)/(moduleSize*
cos(theta)-10))/4;Wherein, f1, f2 are positioned at the central point of two ipsilateral detection figures, and moduleSize is module
Length, theta are the angle of scan line with two detection centre of figure point lines in the lateral or vertical direction.Here module can
To refer to the black or white module for being constituted two dimensional code, which is usually made of several pixels.Above-mentioned block length
It can refer to that said one is black or the side length of white module.
In another implementation, the version of two dimensional code can also be read from the specified region of two dimensional code.For example, right
In version number be more than or equal to 7 QR code, due to its functional area can comprising two dimensional code version, can directly from
The version of functional area reading two dimensional code.
After determining the version of two dimensional code, so that it may be based on the version, obtain corresponding two-dimentional code mask.
Two-dimentional code mask in this specification may include the feature locations of several known coordinates, of this feature position
Number can be determined according to the size of two-dimentional code mask.In one example, the size of two-dimentional code mask can be with are as follows: (17+4*n) *
(17+4*n), wherein n is version number.For by taking version number is 1 as an example, the size of two-dimentional code mask can be with are as follows: 21*21, thus
The two dimension code mask may include 21*21 feature locations.
It should be noted that features described above position can be corresponding with the module in two-dimentional code mask.Come by taking Fig. 4 as an example
It says, one feature locations of in two-dimentional code mask a module represents.Here module can be understood as black in two dimensional code
White module, i.e., its may include several pixels, only the pixel value of these pixels is also uncertain, thus the module
Color value is sky.In addition, the size of the two-dimentional code mask in Fig. 4 can be with are as follows: can wrap in 21*21 namely the two dimension code mask
Containing 21*21 feature locations.The coordinate of each feature locations can be respectively as follows: (1,1), (2,1) ..., (21,1) ..., (1,
2)、(2,2)、…、(21,21)。
It should be noted that the two-dimentional code mask that the step obtains is the template of standard, without any deformation.
Step 310, the corresponding feature locations of extracted characteristic point are determined from two-dimentional code mask.
Specifically, to first kind characteristic point, the position of the angle point of corresponding targeted graphical is determined.It will be in two-dimentional code mask
The position is determined as corresponding feature locations.As an example it is assumed that being located at the detection figure in the upper left corner in a certain characteristic point and QR code
The angle point in the lower right corner of shape is corresponding, and the position due to the angle point in two dimensional code are as follows: and (7,7), so as to by two dimensional code
Coordinate in template are as follows: (7,7) position is determined as the corresponding feature locations of this feature point.
To the second category feature point, can calculate between each feature locations in the second category feature point and two-dimentional code mask
Feature locations corresponding with minimum range are determined as corresponding feature locations by distance.Specifically, it can be based on the second class spy
The known coordinate of each feature locations in the coordinate and two-dimentional code mask of point is levied, to calculate above-mentioned distance.
Step 312, the coordinate and elastic registrating of the three-dimensional coordinate based on characteristic point, feature locations in two-dimentional code mask
Algorithm converts two-dimentional code mask, obtains two-dimentional code mask and generates deformation identical with the two dimensional code in the first image.
The conversion process is specifically as follows:
Firstly, the coordinate of three-dimensional coordinate and feature locations in two-dimentional code mask based on characteristic point, determines characteristic point
The first transformation relation between feature locations.Based on the first transformation relation, the first transformation is executed to two-dimentional code mask.
It should be noted that due to coordinate of the feature locations in two-dimentional code mask be it is two-dimensional, execute it is above-mentioned
Before determining the first transformation relation, first the coordinate of feature locations can be pre-processed.The pretreatment is specifically as follows will be special
The two-dimensional coordinate of sign position is extended to three-dimensional coordinate.With the coordinate of feature locations are as follows: for for (1,1), extension after three
Tieing up coordinate can be with are as follows: (1,1, Z), wherein the value of Z can be 0, or any positive integer.
After the coordinate to feature locations pre-processes, the step of determining the first transformation relation, is specifically as follows: logical
Cross the error between the three-dimensional coordinate of the three-dimensional coordinate and feature locations that minimize characteristic point, determine characteristic point and feature locations it
Between the first transformation relation.
After determining above-mentioned first transformation relation, the first transformation can be executed to two-dimentional code mask.It specifically, can be with
It is that the first transformation is executed to each module (or feature locations) in two-dimentional code mask.Here the first transformation can refer to phase
Like transformation, translation, rotation and scaling etc. can include but is not limited to.It is to be appreciated that becoming executing first to two-dimentional code mask
After alternatively, two-dimentional code mask can be located under the same coordinate system with two dimensional code to be reconstructed, and so far be achieved that two dimensional code mould
The preliminary registration of plate and two dimensional code to be reconstructed.
It should be noted that before executing above-mentioned preliminary registration, due to each spy in characteristic point and two-dimentional code mask
Position is levied not under the same coordinate system, therefore, identified feature locations are usually inaccurate through the above steps.Therefore, exist
After completing above-mentioned preliminary registration, the first transformed two dimensional code is being executed by elastic registration algorithm for features described above point
The corresponding feature locations of characteristic point, and second between determining characteristic point and the feature locations redefined are redefined in template
Transformation relation.According to the second transformation relation, the second transformation is executed to the first transformed two-dimentional code mask is executed.
It should also be noted that, since first kind characteristic point is corresponding with the angle point of targeted graphical namely it is with clear
Position, therefore, feature locations corresponding with first kind characteristic point are generally also determining.To which elastic registration algorithm can be only
Corresponding feature locations are redefined for the second category feature point, and are determined between characteristic point and the feature locations redefined
Second transformation relation.Later, based on second transformation relation to execute the first transformed modules (or characteristic point) again
Execute the second transformation.
Above-mentioned elastic registration algorithm can include but is not limited to iteration closest approach (Iterative Closest Point,
ICP) algorithm and radial basis function (Radial basis function, RBF) etc..Above-mentioned second transformation can refer to non-
Rigid transformation can include but is not limited to rotation, translation, scaling and distortion etc..The second transformation is executed in two-dimentional code mask
Afterwards, two-dimentional code mask just produces deformation identical with deformation two dimensional code.
It should be noted that this programme first obtains the two-dimentional code mask without any deformation, restored later based on current
Two dimensional code three-dimensional structure, adaptively the deformation of current two-dimension is applied on two-dimentional code mask, so as to not
Deformation two dimensional code with form is corrected.
Step 314, transformed two-dimentional code mask is projected on the first image or by the first image projection to converting
On two-dimentional code mask afterwards.
By above steps only so that two-dimentional code mask produces deformation identical with deformation two dimensional code, but due to this
The color value of modules is also uncertain in two-dimentional code mask, therefore can't be using the two-dimentional code mask of the generation deformation as weight
The two dimensional code of structure.For the two dimensional code reconstructed, following steps can also be performed: the second transformed two-dimentional code mask will be executed
It projects on any frame image in above-mentioned multiple image, alternatively, by any frame image projection in above-mentioned multiple image to holding
On the transformed two-dimentional code mask of row second, the two dimensional code after so far just being reconstructed.It is understood that after reconstructing here
Two dimensional code be generate deformation two dimensional code.
Step 316, the two-dimentional code mask after projection is sampled, with the two dimensional code after being corrected.
Here it can be and each module (or feature locations) in the two-dimentional code mask after projection sampled, to obtain
Take the pixel value for executing each pixel that each module is included in the two-dimentional code mask after projecting.It is obtained later based on sampling
Pixel pixel value, determine the color value of each module.As an example it is assumed that some module includes 7 pixels, and adopt
Sample obtain wherein 6 pixels pixel value be it is black, the pixel value of 1 pixel is white, then the color value of the module is black.
After the color value for determining each module, the color value of each module is filled into non-deformation two dimensional code template
On, so that it may the two dimensional code after obtaining removal deformation, the two dimensional code after the removal deformation are also referred to as the two dimensional code after correcting.Here
Non- deformation two dimension code mask can be and refer to the two-dimentional code mask that calls in step 310.
To sum up, the two dimensional code bearing calibration that this specification embodiment provides, can not preset deformation model and (not set whole
The deformation model of body), so as to be corrected to various forms of deformation two dimensional codes.In addition, this programme is by extracting image angle
The mode of point obtains the characteristic point of deformation, rather than relies on correction graph merely and carry out deformation correction.Since the coding of two dimensional code is special
Property, angle point largely exist in two dimensional code, therefore more general using angle point as characteristic point.Finally, this programme is providing correction
In the case where figure, deformation can be removed with higher efficiency, but in the case where no correction graph, this method is still effective.
Accordingly with above-mentioned two dimensional code bearing calibration, a kind of two dimensional code that this specification one embodiment also provides corrects dress
It sets, as shown in figure 5, the apparatus may include:
Acquiring unit 502, for obtaining the image that multiframe includes same two dimensional code.
Extraction unit 504, for extracting feature from the first image arbitrary in the multiple image that acquiring unit 502 obtains
Point, and characteristic point is tracked in other images in multiple image.
Extraction unit 504 specifically can be used for:
Coordinate based on characteristic point in the first image selects corresponding region in the first image center.
The corresponding region of frame favored area is determined from other images.
The characteristic point to match with the characteristic point in the first image is searched in corresponding region.
Character pair point of the characteristic point that the characteristic point to match is determined as in the first image in other images.
Determination unit 506, for based on characteristic point in the coordinate of coordinate, characteristic point in other images in the first image
And three-dimensional reconstruction algorithm, determine the three-dimensional coordinate of characteristic point in three dimensions.
Acquiring unit 502 is also used to obtain corresponding with the version of two dimensional code based on at least frame image in multiple image
Two-dimentional code mask.
Acquiring unit 502 is specifically used for:
Three detection figures are detected in an at least frame image in multiple image and detect the central point of figure.
It is chosen from three detection figures and is located at two ipsilateral detection figures.
The central point that figure is detected based on two, calculates the distance between two detection figures.
According to distance, the version of two dimensional code is determined.
Obtain two-dimentional code mask corresponding with the version of two dimensional code.
Determination unit 506 is also used to determine the corresponding spy of characteristic point from the two-dimentional code mask that acquiring unit 502 obtains
Levy position.
Converter unit 508, the three-dimensional coordinate of characteristic point, feature locations for being determined based on determination unit 506 are in two dimension
Coordinate and elastic registration algorithm in code mask, convert two-dimentional code mask, so that two-dimentional code mask generates and first
The identical deformation of two dimensional code in image.
Converter unit 508 specifically can be used for:
The coordinate of three-dimensional coordinate and feature locations in two-dimentional code mask based on characteristic point, determines characteristic point and feature
The first transformation relation between position.
Based on the first transformation relation, the first transformation is executed to two-dimentional code mask.
By elastic registration algorithm, the corresponding spy of characteristic point is redefined in executing the first transformed two-dimentional code mask
Position is levied, and determines the second transformation relation between characteristic point and the feature locations redefined.
According to the second transformation relation, the second transformation is executed to the first transformed two-dimentional code mask is executed.
Here the first transformation can refer to similarity transformation, including translation, rotation and scaling etc..Second transformation can refer to
Non-rigid transformation, including translation, rotation, scaling and distortion etc..
Projecting cell 510, for projecting on the first image or inciting somebody to action the transformed two-dimentional code mask of converter unit 508
In first image projection to transformed two-dimentional code mask.
Sampling unit 512 is sampled for the two-dimentional code mask after projecting to projecting cell 510, after obtaining correction
Two dimensional code.
Optionally, features described above point may include first kind characteristic point and the second category feature point.First kind characteristic point and two
Tie up code in targeted graphical angle point it is corresponding, which includes one or more of: detection figure, correction graph and
Positioning pattern.
Selection unit 506 specifically can be used for:
To first kind characteristic point, the position of the angle point of corresponding targeted graphical is determined.By the position in two-dimentional code mask
It is determined as corresponding feature locations.
To the second category feature point, calculate between each feature locations in the second category feature point and two-dimentional code mask away from
From feature locations corresponding with minimum range are determined as corresponding feature locations.
Converter unit 508 also specifically can be used for:
Coordinate of the feature locations in two-dimentional code mask is extended to three-dimensional coordinate.
By minimize characteristic point three-dimensional coordinate and feature locations three-dimensional coordinate between error, determine characteristic point with
The first transformation relation between feature locations.
The function of each functional module of this specification above-described embodiment device can pass through each step of above method embodiment
Rapid to realize, therefore, the specific work process for the device that this specification one embodiment provides does not repeat again herein.
The two dimensional code means for correcting that this specification one embodiment provides, it includes same two that acquiring unit 502, which obtains multiframe,
Tie up the image of code.Extraction unit 504 extracts characteristic point from the first image arbitrary in multiple image, and in multiple image
Characteristic point is tracked in other images.Determination unit 506 is based on coordinate of the characteristic point in the first image, characteristic point at it
Coordinate and three-dimensional reconstruction algorithm in its image, determine the three-dimensional coordinate of characteristic point in three dimensions.502 base of acquiring unit
An at least frame image in multiple image obtains two-dimentional code mask corresponding with the version of two dimensional code.Determination unit 506 from two
The corresponding feature locations of characteristic point are determined in dimension code mask.Three-dimensional coordinate, feature locations of the converter unit 508 based on characteristic point
Coordinate and elastic registration algorithm in two-dimentional code mask, convert two-dimentional code mask, so that two-dimentional code mask generates
Deformation identical with the two dimensional code in the first image.Transformed two-dimentional code mask is projected to the first image by projecting cell 510
It is upper or will be in the first image projection to transformed two-dimentional code mask.Sampling unit 512, for the two dimensional code mould after projection
Plate is sampled, with the two dimensional code after being corrected.Thus, it is possible to precise calibration is carried out to the two dimensional code for generating different deformation,
To have preferable versatility.
The two dimensional code means for correcting that this specification one embodiment provides can be a son of correction module 204 in Fig. 2
Module or subelement.
Accordingly with above-mentioned two dimensional code bearing calibration, a kind of two dimensional code correction that this specification one embodiment also provides is set
It is standby, as shown in fig. 6, the equipment may include: memory 602, one or more processors 604 and one or more programs.
Wherein, which stores in the memory 602, and is configured to be executed by one or more processors 604,
The program performs the steps of when being executed by processor 604
Obtain the image that multiframe includes same two dimensional code.
Characteristic point is extracted from the first image arbitrary in multiple image, and to spy in other images in multiple image
Sign clicks through line trace.
It is calculated based on characteristic point in coordinate of the coordinate, characteristic point in the first image in other images and three-dimensional reconstruction
Method determines the three-dimensional coordinate of characteristic point in three dimensions.
Based on at least frame image in the multiple image, two-dimentional code mask corresponding with the version of two dimensional code is obtained.
The corresponding feature locations of characteristic point are determined from two-dimentional code mask.
The coordinate and elastic registration algorithm of three-dimensional coordinate, feature locations based on characteristic point in two-dimentional code mask, it is right
Two-dimentional code mask is converted, so that two-dimentional code mask generates deformation identical with the two dimensional code in the first image.
Transformed two-dimentional code mask is projected on the first image or by the first image projection to transformed two dimension
On code mask.
Two-dimentional code mask after projection is sampled, with the two dimensional code after being corrected.
The two dimensional code calibration equipment that this specification one embodiment provides can carry out the two dimensional code for generating different deformation
Precise calibration, to have preferable versatility.
All the embodiments in this specification are described in a progressive manner, same and similar portion between each embodiment
Dividing may refer to each other, and each embodiment focuses on the differences from other embodiments.Especially for equipment reality
For applying example, since it is substantially similar to the method embodiment, so being described relatively simple, related place is referring to embodiment of the method
Part explanation.
The step of method in conjunction with described in this disclosure content or algorithm can realize in a manner of hardware,
It can be and the mode of software instruction is executed by processor to realize.Software instruction can be made of corresponding software module, software
Module can be stored on RAM memory, flash memory, ROM memory, eprom memory, eeprom memory, register, hard
Disk, mobile hard disk, CD-ROM or any other form well known in the art storage medium in.A kind of illustrative storage Jie
Matter is coupled to processor, to enable a processor to from the read information, and information can be written to the storage medium.
Certainly, storage medium is also possible to the component part of processor.Pocessor and storage media can be located in ASIC.In addition, should
ASIC can be located in server.Certainly, pocessor and storage media can also be used as discrete assembly and be present in server.
Those skilled in the art are it will be appreciated that in said one or multiple examples, function described in the invention
It can be realized with hardware, software, firmware or their any combination.It when implemented in software, can be by these functions
Storage in computer-readable medium or as on computer-readable medium one or more instructions or code transmitted.
Computer-readable medium includes computer storage media and communication media, and wherein communication media includes convenient for from a place to another
Any medium of one place transmission computer program.Storage medium can be general or specialized computer can access it is any
Usable medium.
It is above-mentioned that this specification specific embodiment is described.Other embodiments are in the scope of the appended claims
It is interior.In some cases, the movement recorded in detail in the claims or step can be come according to the sequence being different from embodiment
It executes and desired result still may be implemented.In addition, process depicted in the drawing not necessarily require show it is specific suitable
Sequence or consecutive order are just able to achieve desired result.In some embodiments, multitasking and parallel processing be also can
With or may be advantageous.
Above-described specific embodiment has carried out into one the purpose of this specification, technical scheme and beneficial effects
Step is described in detail, it should be understood that being not used to limit this foregoing is merely the specific embodiment of this specification
The protection scope of specification, all any modifications on the basis of the technical solution of this specification, made, change equivalent replacement
Into etc., it should all include within the protection scope of this specification.