US20100033603A1 - Method for extracting raw data from an image resulting from a camera shot - Google Patents

Method for extracting raw data from an image resulting from a camera shot Download PDF

Info

Publication number
US20100033603A1
US20100033603A1 US12/581,197 US58119709A US2010033603A1 US 20100033603 A1 US20100033603 A1 US 20100033603A1 US 58119709 A US58119709 A US 58119709A US 2010033603 A1 US2010033603 A1 US 2010033603A1
Authority
US
United States
Prior art keywords
image
dist
point
calculating
camera
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.)
Abandoned
Application number
US12/581,197
Inventor
Martin Lefebure
Anas Benabid
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Real Eyes 3D SA
Original Assignee
Real Eyes 3D SA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from FR0402960A external-priority patent/FR2868184B1/en
Application filed by Real Eyes 3D SA filed Critical Real Eyes 3D SA
Priority to US12/581,197 priority Critical patent/US20100033603A1/en
Publication of US20100033603A1 publication Critical patent/US20100033603A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals

Abstract

The method according the invention allows the extracting raw data from an image resulting from a camera shot.
It comprises determining, for each point of the image of a combination V0[C,L] of colour components of the image, calculating, for each point of the image, of a value VN+1[C,L], iterating said calculating a predetermined number of times then taking into account the values of the final image VNfinal [C, L] in each point of the image, calculating for each point of the image of the difference D [C, L]=VNfinal [C, L]−V0 [C, L], calculating of a noise contextual datum VS, correcting the extracted raw data D[C, L], with the contextual datum VS, calculating of a corrected value I*[C, L] taking into D*[C, L] and presenting the extracted data under a desired angle.

Description

    BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The present invention relates to a method for extracting raw data from an image resulting from a camera shot.
  • More specifically but not exclusively, it relates to a method for presenting data extracted from an image along a desired view angle, from a digital image taken by a photographic or cinematographic camera whether integrated or not into a communication device under any incidence.
  • It is notably applied to transmission and storage of text data and digitized graphics viewed beforehand by a camera under any incidence and then processed by correcting the projective deformation and/or optionally by enhancing the resolution in order to obtain a corrected image having higher legibility, viewed along an angle of incidence different from that of the camera shot, for example under normal incidence or any predetermined incidence. Of course, with the invention useful information may be extracted before or after correction. Such a process is most particularly suitable for transmitting text and/or graphic information taken by a camera fitted onto a portable communications terminal, such as for example, a cellular radio transmitter/receiver.
  • 2. Description of the Prior Art
  • Of course, in order to extract raw data relating to printed or hand-written information in an image and to infer from them, zones to be corrected, the applicant has already proposed a solution consisting of extracting the information by calculating, as extracted raw data, a difference image D(C, L) (in fact, the contrast between the background's light level and the light level of the data to be extracted). A threshold value is used for selecting the values to be extracted from this difference image. This threshold value Vs may thereby be selected as a threshold value of the gradient for removing the grid of lines (square pattern). However, this method has the following drawbacks:
  • If no grid of lines is present in the original image, value Vs corresponds to the threshold for removing noise. It is found that this threshold is difficult to obtain by using a conventional histogram technique which does not provide satisfactory results.
  • If grid lines are present, the correct threshold for finding a pattern may be determined, but this threshold value cannot always be used as a threshold for extracting a piece of information. Indeed, this threshold value always does not remove either grid lines or noise completely because the non-predictive image contrast varies like a diffuse saturation and like fogged image surfaces due to random illumination conditions.
  • In the case of color images, three channels (red, green and blue) need to be considered and it is not clearly apparent whether one should have one threshold per channel or one threshold for all the channels.
  • Moreover, it is known that reading and/or interpretation by a person of a text or graphic reproduced from information delivered by a camera which views an original document, assumes that shooting is performed under or close to normal incidence in order to allow recognition of letters composing the text and interpretation of the graphic (which most often requires observance of the shapes and proportions).
  • Indeed, when the document is viewed by a camera under any incidence, the produced image has a projective deformation: accordingly, starting from a certain distance from the camera, disappearance of details which are required for character recognition and for consequently understanding the document, is reported.
  • In order to eliminate these drawbacks, the applicant has already proposed a solution consisting of extracting identifiable contextual data present in the image taken by the camera and correcting the raw or extracted data delivered by the camera by means of these contextual data, the corrected data being then stored in memory and/or transmitted to an addressee so as to be displayed for reading purposes.
  • The contextual data used for performing the correction of raw data may affect a pattern (a physical, plotted or printed contour) initially existing in the document or reported beforehand, certain parameters of which are known beforehand. The correction process may then comprise the following steps:
      • searching for this pattern in the raw image taken by the camera,
      • calculating projective deformations exhibited by the raw image, from deformations of the pattern which it contains and which arise through changes in the aforementioned parameters,
      • determining the corrections to be made to the raw data or to the extracted data depending on the projective deformations,
      • generating an image containing the corrected data, while taking into account the corrections determined beforehand.
  • The pattern searching step is then obtained by a first searching sequence including:
      • detecting boundaries present in the image,
      • extracting boundaries, the length of which exceeds a predetermined value, and
      • detecting zones delimited by the boundaries found, with a sufficient surface area (larger than a predetermined value) and not touching the edge of the image.
  • For each area found, this process comprises a calculation step for determining the main axis of the zone, for finding a point external to the zone on said main axis, the construction of an external cone issued from the external point, the extraction of the points from the boundary, the external normal of which is opposed to the vector which joins it and starts from the external point, the calculation of the line borne by the main axis of the extracted points, when the four lines are found, the calculation of four apices of the quadrilateral derived from the four lines and then, when the surface area of the quadrilateral is close to the surface area of the zone, the calculation of the homography deforming the quadrilateral into a rectangle having pre-established proportions.
  • It is found that one of the drawbacks of this method precisely consists in that it involves proportions set beforehand. Of course, if these proportions set beforehand are not the initial ones, the homographic transformation performed on the image leads to changes in the proportions of the objects contained in the corrected image.
  • Moreover, it is found that the homographic calculations used hitherto, are particularly complicated. Indeed, for each pixel of the final image, a zone of the initial image needs to be determined, the luminance and chrominance values of which are read in order to subsequently assign them in the final image to the location which this pixel should have according to a homographic relationship.
  • Now, it is seen that the written text portion in an image generally does not comprise more than 20% of the pixels of this image so that the remaining 80% of the pixels of the image are of no interest.
  • OBJECT OF THE INVENTION
  • Accordingly, the object of the invention notably is to solve these problems.
  • For this purpose, first of all, it provides a method for accurately determining a noise contextual datum used for correcting the extracted raw data, and notably, the threshold value Vs at which the printed or handwritten information may be extracted without being concerned with knowing whether the grid lines are present or not, regardless of the sought-after pattern. Further, this threshold value may be used as a gradient threshold for seeking the pattern in order to reduce the processing requirements to the one and only pattern searching step. If the intention is to extract information for a color image, each color component of the image should be considered for calculating a unique threshold in order to extract color information.
  • An image having a grey level is then considered, which may consist in a combination of three color channels of the image (red-green-blue) or in one of these channels.
  • SUMMARY OF THE INVENTION
  • More specifically, the invention provides a method for extracting raw data from an image resulting from a camera shot, characterized in that it comprises the following steps:
  • a) determining for each point located by column C and line L of the image, a value Vs[C, L] consisting of a combination of components of the color of the image, expressed as:

  • V 0 [C,L]=αRed[C,L]+βGreen[C,L]+γBlue[C,L]
  • formula wherein α, β, γ are coefficients which may for example satisfy the following relationships:

  • α+β+γ=1 and α,β,γ≧0
  • b) calculating for each point of the image, a background value VBack.(C, L)
  • c) calculating for each point of the image, the difference D[C, L]

  • D[C,L]=V Back. −V 0 [C,L](dark data/bright background)

  • or

  • V0[C,L]−VBack.(bright data/dark background)
  • d) calculating a threshold value VS consisting of a noise contextual datum used for correcting the extracted raw data, from at least one contrast histogram and/or from the probability q that a regional maximum of the raw data D[C, L] contains noise
  • e) correcting the raw data D[C, L] by means of the noise contextual datum VS resulting in extracted data D*[C, L]
  • f) calculating for each point of the image, a corrected value I*[C,L], taking into account the corrected raw datum D*[C, L]
  • g) optionally presenting the extracted data or the image containing them under a desired angle.
  • Advantageously,
      • the background value VBack. may be determined by an operating sequence comprising the following steps:
        • calculating for each point of the image, a value VN+1[C,L] which is the maximum (dark data on bright background) or minimum (bright data on dark background) value between the value VN[C,L] and different averages of VN values over symmetrical structuring items centered on [C,L],
        • iterating said calculation a predetermined number of times (N_final) and then taking into account the values of the final image VN final as the values of the background image VBack.,
        • the calculation of value VN+1[C,L] may be obtained by a relationship of the type:
  • V N + 1 [ C , L ] = max ( dark bright background ) ( or min ( bright dark background ) ) { V N [ C , L ] V N [ C + 1 , L + 1 ] + V N [ C - 1 , L - 1 ] 2 V N [ C + 1 , L - 1 ] + V N [ C - 1 , L + 1 ] 2 V N [ C , L + 1 ] + V N [ C , L - 1 ] 2 V N [ C + 1 , L ] + V N [ C - 1 , L ] 2 }
      • the background image VBack. may also be determined by an operating sequence comprising the following steps:
        • generating an image VN+1, four times smaller than VN, comprising the calculation for each point of the image, of a value VN+1[C,L] which is the maximum (dark data on bright background) or the minimum (bright data on dark background) between a local average of VN centered on the point [2C+½, 2L+½] (the four adjacent pixels here) and at least a local average including a larger number of pixels (the 16 adjacent pixels here); image VN+1 then being four times smaller than image VN,
        • iterating said calculation, a predetermined number of times VNFinal,
        • interpolating values of the image VN Final in order to obtain the values of VBack. which has the same size as the initial image V0,
      • the value VN+1[C,L] may be determined by an operating sequence comprising:
  • V N + 1 [ C , L ] = max ( dark bright background ) ( or min ( bright dark background ) ) { V N [ 2 C , 2 L ] + V N [ 2 C + 1 , 2 L ] + V N [ 2 C , 2 L + 1 ] + V N [ 2 C + 1 , 2 L + 1 ] 4 , ( V N [ 2 C - 1 , 2 L - 1 ] + V N [ 2 C - 1 , 2 L ] + V N [ 2 C - 1 , 2 L + 1 ] + V N [ 2 C - 1 , 2 L + 2 ] + V N [ 2 C , 2 L - 1 ] + V N [ 2 C , 2 L ] + V N [ 2 C , 2 L + 1 ] + V N [ 2 C , 2 L + 2 ] + V N [ 2 C + 1 , 2 L - 1 ] + V N [ 2 C + 1 , 2 L ] + V N [ 2 C + 1 , 2 L + 1 ] + V N [ 2 C + 1 , 2 L + 2 ] + V N [ 2 C + 2 , 2 L - 1 ] + V N [ 2 C + 2 , 2 L ] + V N [ 2 C + 2 , 2 L + 1 ] + V N [ 2 C + 2 , 2 L + 2 ] + ) 16 }
  • The raw data D[C,L] are generally affected by a perspective deformation due to the arbitrary position of the camera in front of the supporting medium. The perspective deformation of the extracted raw data may be corrected with a known method for extracting geometrical contextual data. Likewise, these extracted raw data are also affected by luminous and/or electronic noise which may be eliminated by thresholding as follows:
  • After having calculated the noise contextual datum VS, for each point of the image, a comparison of value D[C,L] with threshold value VS is made in order to determine the value D*[C,L] to be extracted in the following way:
      • if D[C,L]<VS then D*[C,L]=0
      • if D[C,L]≧VS, value D[C,L] is retained, i.e. D*[C,L]=D[C,L] or else it is replaced with
      • D[C,L]−VS i.e. D*[C,L]=D[C,L]−VS
  • Generation of image I*(p) containing the extracted data according to the subtractive principle, results from the calculation I*(p)=Imax−f·D*(p) (dark data/bright background), with Imax, value of the bright background, which may be equal to 255 for example, or I*(p)=Imin+f·D*(p) (bright data/dark background), Imin may be equal to zero.
  • The threshold value VS is a noise contextual datum used for correcting raw data D[C,L]. It may be calculated according to a method based on the probability q that any regional maximum of raw data contains noise. This method comprises the following operating phases:
      • a first phase wherein for each pixel p of a grey image I (either a color channel or luminance) the following is performed:
  • a) for each direction d, with 0<|d|<D
  • if the following condition is satisfied:
      • convexity of I on [p−d, p+d], i.e.,

  • I(p+(1−2×)d)≦λI(p−d)+(1−λ)I(p+d) for any 0≦λ≦1 in case of dark data bright background)
  • or
      • concavity of I on [p−d, p+d], i.e.,

  • I(p+(1−2×)d)≧λI(p−d)+(1−λ)I(p+d) for any 0≦λ≦1(bright data/dark background)
  • then G(p,d)=(I(p+d)+I(p−d))/2 is calculated
  • or else G(p,d)=0
  • b) a value S(p) is calculated, which is equal to the maximum value of G(p,d) for all directions d with 0<|d|<D
  • as an alternative to this calculation of S(p), S(p) may be replaced with D(p), D(p) corresponding to the raw data,
      • a second step wherein a value Smax is calculated, which is equal to the maximum value of S(p), for all pixels p
      • a third step wherein a histogram H(s) is reset to 0 for all values of s between 0 and Smax
      • a fourth step for calculating the contrast histogram for the regional maximum pixels containing the noise to be eliminated, wherein this calculation may comprise:
      • a step wherein for each pixel p in the image S(p), if S(p) is a regional maximum, H(S(p)) is incremented according to the relationship H(S(p))←H(S(p))+1
      • a step wherein the identities S=Smax and N=1/q are determined and as long as H(S) is less than N, S is replaced with S−1, the final value of S is called 5 min, N is the minimum number of regional maximum pixels such that the mathematical expected value of the number of pixels containing noise is larger than or equal to 1
      • a step wherein value VS is calculated according to formula

  • V S =r·S min+(1−rS max, with ½≦r≦1
  • The threshold value VS may also be calculated according to the following method:
  • 1) A first step for calculating a histogram of the pits, H_pits, including the following operating phases:
  • a) for each pixel p of image I, the following is performed:
  • i. for each direction d with 0<|d|<D:
  • if the following condition is satisfied:
      • convexity of I on [p−d, p+d]

  • I(p+(1−2×)d)≦λI(p−d)+(1−λ)I(p+d) for any 0≦λ≦1
  • then G(p,d)=(I(p+d)+I(p−d))/2 is calculated
  • or else G(p,d)=0
  • ii. S(p)=maximum value of G(p,d), is calculated for all the directions d with 0<|d|<D
  • as an alternative to this calculation of S(p), S(p) may be replaced with a value D(p) which corresponds to the raw data (dark data/bright background)
  • b) the maximum value of the pits, S pits_max is calculated, which is equal to the maximum value of S(p) for all pixels p
  • c) the pit histogram, H_pits, is reset to zero for each value of s between 0 and the maximum value of the pits, S_pit max
  • d) for each pixel p of the image S(p) the following calculations are performed:
  • i. if S(p) is a regional maximum, H_pits (S(p)) is incremented in the following way:

  • H_pits(S(p))←H_pits(S(p))+1
  • 2) A second step for calculating the histogram of the bumps, H_bumps, includes the following operating phases:
  • a) for each pixel p of image I, the following is performed:
  • i. for each direction d with 0<|d|<D:
  • if the following condition is satisfied:
      • concavity of I on [p−d, p+d], i.e.,

  • I(p+(1−2λ)d)≧λI(p−d)+(1−λ)I(p+d) for any 0≦λ≦1(bright data/dark background) are satisfied
  • then G(p,d)=(I(p+d)+I(p−d))/2 is calculated
  • or else G(p,d)=0
  • ii. S(p)=maximum value of G(p,d) is calculated for all the directions d with 0<|d|<D
  • as before, as an alternative to this calculation of S(p), the value S(p) may be replaced with a value D(p) which corresponds to the raw data (bright data/dark background)
  • b) the maximum value of the bumps, S bumps_max, is calculated, which is equal to the maximum value of S(p) for all pixels p
  • c) the bump histogram H_bumps(s) is reset to 0 for each s between 0 and the maximum value of the bumps, S bumps_max
  • d) for each pixel p of the image S(p), the following calculations are performed:
  • i. if S(p) is a regional maximum
  • H_bumps(S(p)) is incremented in the following way:

  • H_bumps(S(p))←H_bumps(S(p))+1
  • 3) A third step for superimposing pit histogram H_pits and bump histogram H_bumps, includes the following phases:
  • a) S_max is calculated according to the expression:

  • S_max=Max(maximum value of the pits,S_pits_max, maximum value of the bumps,S_bumps_max)
  • b) H_max is calculated according to the expression:

  • H_max=maximum value of the pits H_pits(S) and the bumps H_bumps(S) for all values of S
  • c) S0 is calculated according to the expression:

  • s0=maximum value of s such that H_pits(s)=H_max
  • or H_bumps(s)=H_max
  • d) s=s0+1 is calculated and α is selected such that 0<α<½ and as long as:

  • |ln(1+H_pits(s)−ln(1+H_bumps(s))|<α·ln(1+H_max)
  • s←s+1 is performed (wherein ln is Napier's logarithm function)
  • finally, value Smin is determined by the final value of s incremented by 1
  • 4) a step for calculating the extraction threshold VS according to the relationship:

  • V S =r·S min+(1−rS max where ½≦r≦1
  • It is seen that step b) of the method for extracting raw data, is iterated a large number of times, so that the threshold values calculated by means of both methods described earlier via calculation of S(p) do not allow the extracted raw data to be corrected efficiently.
  • This drawback may be suppressed by using the alternative consisting of replacing S(p) with D(p).
  • Thus, in this case, when the probability q that any regional maximum of the raw data contains noise, is known, the process for extracting the noise contextual datum may comprise the following steps:
      • a first step wherein a value Smax is calculated, which is equal to the maximum value of D(p) for all the pixels p=[C,L], D being the image of the raw data to be corrected
      • a second step wherein a histogram is reset H(S)=0 for all values of S between 0 and Smax
      • a third step wherein for each pixel p in image D(p), if D(p) is a regional maximum, H(D(p)) is incremented according to the relationship

  • H(D(p))←H(D(p))+1
      • a fourth step wherein the identities S=Smax and N=1/q are determined and as long as H(S) is less than N, S is replaced with S−1, the final value of S is called Smin
      • a fifth step wherein the value of the noise contextual datum VS is calculated according to formula

  • V S =r·S min+(1−rS max with ½≦r≦1
  • If the probability q that any regional maximum of the raw data contains noise, is not known, the process for extracting the noise contextual datum VS may comprise the following steps:
  • 1) a first step for calculating a pit histogram, H_pits includes the following operating phases:
      • a) the maximum values of the pits S_pits_max is calculated, which is equal to the maximum value of D(p) for all the pixels p, D being the image of the extracted dark-on-bright-background raw data
      • b) the pit histogram H_pits is reset to 0 for each value of s between 0 and the maximum value of the pits, S_pits_max
      • c) for each pixel p of image D(p),
        • if D(p) is a regional maximum
        • H_pits (D(p)) is incremented in the following way:

  • H_pits(D(p))←H_pits(D(p))+1
  • 2) A second step for calculating a bump histogram, H_bumps includes the following operating phases:
      • a) the maximum value of the pits S_bumps_max is calculated, which is equal to the maximum value of D(p) for all pixels p, D being the image of the extracted bright-on-dark-background raw data
      • b) the pit histogram H_bumps is reset to 0 for each value of s between 0 and the maximum value of the pits, S bumps_max
      • c) for each pixel p of the image D(p),
        • if D(p) is a regional maximum
        • H_bumps(D(p)) is incremented in the following way:

  • H_bumps(D(p))←H_bumps(D(p))+1
  • 3) A third step for superimposing pit H_pits and bump H_bumps histograms includes the following operating steps:
      • a) calculating S_max according to the expression:

  • S max=Max(maximum value of the pits S_pits_max,maximum value of the bumps S_bumps_max)
      • b) calculating H_max according to the expression:

  • H_max=maximum value of the pits H_pits(S) and of the bumps, H_bump(S) for all values of S
      • c) calculating s0 according to the expression:
        • S0=maximum value of s such that

  • H_pits(s)=H_max
        • or H_bumps(s)=H_max
      • d) s=s0+1 is calculated and α is selected such that 0<α<½ and as long as:

  • |ln(1+H_pits(s))−ln(1+H_bumps(s))|<α·ln(1+H_max)
        • s←s+1 is performed (where ln is Napier's logarithm function)
        • finally the value Smin is determined by the final value of s incremented by 1
  • 4) a step for calculating the value of the noise contextual datum VS according to the relationship:

  • V S =r·S min+(1−rS max where ½≦r≦1
  • Of course, information from a color image with red, green, blue color channels needs to be extracted. The steps of the method described earlier may be followed for each color channel, by determining a threshold for each channel. Extraction of the color information from the red, green, blue channels and their recombination into a final color image may be performed by extracting the red, green, blue values in each pixel for which it is seen that the threshold has been exceeded.
  • Moreover, with the purpose of eliminating the drawbacks of the searching methods for patterns (physical, plotted, or printed contours), expressing some contextual data and involving proportions set beforehand, the invention proposes determining the real height/width ratio of the quadrilateral formed by four identified points of a pattern present in the image of a contour which is used for determining some contextual data of the image and this, in order to be able to reconstruct a document having the same proportions.
  • For this purpose, the applicant provides a method for presenting information extracted from an image of the aforementioned type along a desired view angle, from a picture taken by a camera under any incidence, this method comprising:
      • searching for at least four identifiable characteristic points of a pattern present in the image taken by the camera, defining contextual data,
      • optional extraction of the data according to predetermined criteria,
      • calculating geometrical deformations to be made on the raw image, the information or the extracted data, from the relative position of four points with respect to relative reference positions,
      • determining corrections to be made to the raw image or to the extracted data depending on the geometrical deformations,
      • generating an image containing the extracted data, taking into account the thereby determined geometrical corrections.
  • This method is characterized in that, for obtaining an image containing extracted data having the same proportions as the object, it comprises the determination of the real height/width ratio of the quadrilateral defined by the aforementioned points and the taking into account of this ratio r in generating the corrected image.
  • More specifically, determination of the proportions of the quadrilateral (rectangle) is carried out according to a process comprising the following steps:
      • searching for four identifiable characteristic points of a pattern present in the image,
      • determining the vanishing points from the sides of the quadrilateral defined by the four points and determining a horizon line connecting the vanishing points,
      • determining the coordinates of the projection point F of the optical centre O of the camera on the horizon line,
      • calculating the camera base point (orthogonal projection of the optical centre of the camera on the plane of the pattern) from distances between the vanishing points and the projection point F and from the distance between this projection point F and the optical centre O,
      • calculating the focal length from the distances between the optical centre, the projection point F and the camera base point,
      • calculating the coordinates of the intersection points M1 N1, M2 N2, between the vanishing lines and the lines connecting the camera base point and the vanishing points as well as points O1, O2, P1, P2, located on the vanishing lines, at conventional (elliptical) distances from the camera base point,
      • calculating the ratio of the sides of the initial pattern from the coordinates calculated earlier by considering that the rectangle O1, O2, P1, P2, is the projection of a square extending in the plane of the pattern.
  • If only the vanishing lines of a same pair intersect at a vanishing point while both other vanishing lines are parallel (vanishing point projected to infinity), calculation of the r ratio will be carried out by starting with a pre-established focal length f of the camera.
  • If all the vanishing points are projected to infinity, ratio r is equal to the ratio of the lengths of the adjacent sides of the quadrilateral.
  • An important advantage of this method consists in that it is not very sensitive to lack of orthogonality of the adjacent sides of the quadrilateral which is frequently the case when the quadrilateral is a pattern plotted by hand. Indeed, conventional solutions are particularly sensitive to such defects (instability in the case of lack of orthogonality).
  • Another advantage of this solution consists in that texts may be reproduced in which there is no alignment of characters.
  • With the purpose of alleviating homographic calculations notably by avoiding unnecessary calculations and by only applying them to the pixels which are relevant to the written text in the image and by reusing as much as possible calculations which have already been performed, the applicant proposes an operating sequence including the following phases:
      • creating an initial (deformed) binary mask of the zones to be corrected by isolating the useful portion of the initial image containing the extracted data and by assigning the same binary value (0 or 1) to the pixels of this useful portion,
      • calculating an ideal binary mask by a direct homographic transformation of the initial mask (based on the transformation of any polygonal shape into a reference polygonal shape),
      • for each pixel (u, v) of the useful portion of the ideal binary mask, calculating by inverse homography, the position (x, y) in the initial image, determining the value of the final image at pixel (u, v) by an interpolated value at (x, y) in the initial image.
  • Advantageously, the calculation of the inverse homography may comprise a preliminary calculation by inverse homography of the lines and columns of each pixel of the ideal mask. It will then be possible to infer the position of a given pixel in the initial image by calculating the intersection of both lines.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Embodiments of the invention will be described hereafter, as non-limiting examples, with reference to the appended drawings wherein:
  • FIG. 1 is a schematic illustration of the shooting of a document by a camera, the main parameters used in the method according to the invention may be shown with this illustration;
  • FIG. 2 is a projection of the view illustrated in FIG. 1 in the plane of the image of the document;
  • FIG. 3 is a projection of the FIG. 2 type, but wherein one of the two vanishing points is projected to infinity;
  • FIG. 4 is a diagram relating to the characterization of the inside of a quadrilateral;
  • FIG. 5 illustrates a projective geometrical invariant;
  • FIG. 6 is a schematic illustration of the operating steps for an image processing process according to the invention in order to obtain a corrected image;
  • FIGS. 7-11 are diagrams for illustrating the calculations performed according to the process illustrated in FIG. 6;
  • FIG. 12 shows an example of a pair of histograms, H_pits and H_bumps in a logarithmic coordinate reference system;
  • FIG. 13 is a schematic illustration for showing the main geometrical parameters of a camera;
  • FIG. 14 is a diagram illustrating the principle for constructing a rectangular pattern having a prescribed physical aspect ratio, in the case of absence of vanishing points.
  • DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • In the example illustrated in FIG. 1, the original document which is intended to be shot with a camera is positioned on a planar supporting medium, horizontally.
  • The camera is positioned above the plane of the supporting medium and therefore of the document, at a determined height, the axis of the camera which is orientated towards the document being oblique (here, an angle of incidence of about 30°).
  • The image of the document taken by the camera is located in an image plane which extends perpendicularly to the optical axis of the camera.
  • The orthogonal projection of the optical centre C of the camera in the plane of the supporting medium is called the base of the camera.
  • The plane passing through point C which is parallel to the plane of the supporting medium is the apparent horizon of the supporting medium.
  • The pattern of a rectangle of document DT provides at the image, a quadrilateral A, B, C, D (FIG. 2), the segments DC and AB of which are borne by two lines (vanishing lines) which intersect at a point F1 while segments DA and CB are borne by two lines (vanishing lines) which intersect at a point F2. The line bearing the segment F1F2 is the horizon line.
  • As illustrated in FIG. 2:
      • X is the base of the camera (projection of the optical centre C in the plane of the document)
      • M1 is the intersection of lines (AD) and (F1X)
      • N1 is the intersection of lines (BC) and (F1X)
      • M2 is the intersection of lines (AB) and (F2X)
      • N2 is the intersection of lines (CD) and (F2X)
      • δ is a positive constant representative of a conventional distance measured from point X on axes (F1,X) and (F2,X)
      • i is the angle of incidence
      • E is an ellipse with a major axis parallel to (FX); its major axis has a length δ/cos(i) and its minor axis has a length δ
      • O1 and P1 are the intersections of (F1,X) with ellipse E
      • O2 and P2 are the intersections of (F2,X) with ellipse E
      • O is the centre of the image
      • F is the orthogonal projection of the optical centre O of the camera on line (F1,F2)
  • In accordance with the method according to the invention, calculation of the physical aspect ratio r (r=horizontal length/vertical length) of the rectangle forming the original pattern is achieved according to one of the following three operating sequences:
      • 1) The case when points F1 and F2 exist, segments AB, BC, CD, DA not being parallel. In this case, the operating sequence comprises the following phases:
      • a first phase for calculating the coordinates of point F by projecting the centre of the image O on the horizon line (F1, F2)
      • a second phase for calculating the position of the base of the camera by its distance to point F, dist (X,F) by means of the relationship:
  • dist ( X , F ) = dist ( F , F 1 ) · dist ( F , F 2 ) dist ( O , F )
  • This results from the following demonstration in three steps:
  • a) the angle between the base of the camera and horizon is 90° and it is inferred that
  • i . tan ( i ) = OX f and tan ( π 2 - i ) = OF f ii . therefore XF OF = 1 + OX OF = 1 cos 2 ( i )
  • b) the angle between F1 and F2 is also 90° and it is inferred that
  • i . tan ( j ) = FF 1 g and tan ( π 2 - j ) = FF 2 g
  • with g=OF/cos(i) and j being the angle between F1 and F2
  • from this, we obtain
  • ii . therefore 1 cos 2 ( i ) = FF 1 · FF 2 OF 2
  • c) the final formula for XF is obtained by combining relationships a) ii. and b) ii.,
      • a third phase for calculating the focal length f with the relationship:

  • f=√{square root over (dist(O,Xdist(O,F))}{square root over (dist(O,Xdist(O,F))}(inferred from a)i. above)
      • a fourth phase for calculating the angle of incidence i expressed by:
  • tan ( i ) = dist ( O , X ) dist ( O , F ) ( inferred from a ) i , above
      • a fifth phase for determining the coordinates of points M1, N1, O1 and P1 from the values calculated earlier
      • a sixth phase for determining the coordinates of points M2, N2, O2 and P2 from the values calculated earlier
      • a seventh phase for calculating the physical aspect ratio r by using the crossed ratios and the fact that the rectangle O1, O2, P1, P2 is the projection of a square extending in the plane of the pattern centred on the base according to the relationship
  • r = dist ( M 1 , N 1 ) dist ( M 2 , N 2 ) · dist ( F 1 , O 1 ) dist ( F 1 , M 1 ) · dist ( F 1 , P 1 ) dist ( ( F 1 , N 1 ) · dist ( F 2 , M 2 ) dist ( F 2 , O 2 ) · dist ( F 2 , N 2 ) dist ( F 2 , P 2 )
  • This results from the fact that [O1,P1] and [O2,P2] are projections of two segments of the same length: [O1,P1] and [O2,P2] may be used as segments and the relative lengths of segments [M1,N1] and [M2,N2] may be measured by using the crossed ratios and r may be inferred from them.
  • 2) The case when two of the segments are parallel (intersection point is projected to infinity) (FIG. 3))
  • In this case, ratio r is obtained according to the following relationship:
  • r = dist ( A , B ) · dist ( C , D ) ( dist ( C , D ) - dist ( A , B ) ) · f 2 + dist ( O , F 2 ) 2
  • formula wherein f is the focal length of the camera (with the understanding that this focal length f is calculated beforehand).
  • 3) The case when there is no vanishing point (segments AB, BC, CD, DA being parallel, two by two)
  • In this case, the ratio r is simply
  • r = dist ( A , B ) dist ( A , D )
  • These relationships are essentially based on invariants in projective geometry and in particular on the crossed ratios of four points, the relationships of which are expressed facing FIG. 5 which shows two views A*B*C*D*-A*1B*1C*1D*1 of a same object taken by a camera with optical centre O* with two different angles of incidence.
  • From points A*, B*, C*, and D*, a first series of crossed ratios
  • A * B * A * D * ÷ CB * CD * .
  • may be obtained.
  • Likewise, from points A*1, B*1, C*1, D*1 a second series of crossed ratios
  • A 1 * B 1 * A 1 * D 1 * ÷ C 1 * B 1 * C 1 * D 1 *
  • is obtained.
  • Conservation of the crossed ratio is then expressed as
  • A * B * A * D * ÷ CB * CD * = A 1 * B 1 * A 1 * D 1 * ÷ C 1 * B 1 * C 1 * D 1 *
  • In the case when one of the points, for example point A, is projected to infinity, the ratio A*B*/A*D* is considered to be equal to 1.
  • As mentioned earlier, the invention also provides a method for reshaping the image allowing the complexity of the homographic calculations to be reduced, calculations which were hitherto used notably when this image contains text.
  • FIG. 6 illustrates the different steps of this re-shaping mode which comprises:
  • a) a first step for calculating a binary mask deformed from an image where the frame (or the page) has been detected, and the text (written) portion has been extracted. This step consists of affecting a zero value to all the pixels which are outside a quadrilateral surrounding the useful portion of the image as well as the pixels which do not correspond to the writing.
  • The position of a point inside or outside a quadrilateral may be determined according to the method illustrated in FIG. 4.
  • This figure shows in an x,y coordinate reference plane, a quadrilateral A′, B′, C′, D′, as well as, inside this quadrilateral, two points P and G of coordinates xp, yp and xo, yo. The G point may consist of the centre of gravity of the quadrilateral A′, B′, C′, D′ or more simply of the centre of its diagonals, for example the centre of segment B′D′.
  • Segments A′B′-B′C′-C′D′ and D′A′ are borne by lines D1, D2, D3, D4, respectively.
  • The expression of these lines and more generally of a line Di with i=1, 2, 3, 4 is of the type:

  • ai·x+bi·y+ci=0
  • ai, bi, ci being constants.
  • Point P is therefore inside the quadrilateral if and only if, it is always on the same side as G relatively to the limits of the quadrilateral (each limiting line D1-D4 dividing the plane into two portions): this amounts to stating that:
  • ai·xp+bi·yp+ci and ai·xo+bi·yo+co have the same sign for i belonging to the set {1,2,3,4}. This is written in the following form:

  • iε{1,2,3,4}(ai·xp+bi·yp+ci)·(ai·xo+bi·xo+ci)≧0
  • b) A second step for calculating the ideal mask by direct homography.
  • Reference will be made here to FIG. 7 which illustrates the principle for calculating the image of a point by homography. On this figure, a quadrilateral P1, P2, P3, P4 determined by using the method described earlier (page) and a point of coordinates (u,v) located inside this quadrilateral, are illustrated.
  • Point O, if it exists, is the intersection of lines (P1, P2) and (P3, P4). Point Q is the intersection of lines (P1, P4) and (P2, P3). Point I is the intersection of segments OP and P1P4, whereas J is the intersection of segments QP and P3P4.
  • It is known that homography provides the transformation of a quadrilateral (here, P1-P4) into a rectangle H(P1), H(P2), H(P3), H(P4) visible in FIG. 8.
  • In this FIG. 8, a point (x,y) with coordinates H(I), H(J) is also illustrated and the length Dx and the width Dy of the rectangle are shown.
  • Conservation of the crossed ratios then gives:
  • OP 4 OP 3 · JP 3 JP 4 = Dx - 1 - x x QP 4 QP 1 · IP 1 IP 4 = Dy - 1 - y y
  • The coordinates of H(P) may be inferred therefrom
  • x = ( Dx - 1 ) · OP 3 · JP 4 OP 3 · JP 4 + OP 4 · JP 3 y = ( Dy - 1 ) · OP 1 · JP 4 QP 1 · IP 4 + QP 4 · IP 1
  • The calculation of the image of a line by homography obviously results from this calculation as the image of a line simply consists of the segment joining the images of both points of the original line.
  • The calculation of the ideal mask is performed according to the following process:
  • Let (i,j) be a pixel which corresponds to the writing in the deformed binary mask with its four subpixels which surround it (FIG. 9):
  • ( i - i 2 , j - 1 2 ) , ( i - 1 2 , j + 1 2 ) , ( i + 1 2 , j + 1 2 ) ( i + 1 2 , j - 1 2 )
  • Let us assume that A, B, C and D are the images of these subpixels by direct homography (FIG. 10). A, B, C, D is therefore a quadrilateral. Let us consider the smallest rectangle which this quadrilateral contains. All the pixels contained in this rectangle are set to the “true” value for example 1.
  • An ideal binary mask may be obtained from this. A mechanism should then be established for calculating the image of a point with coordinates in the form of (u±½, v+½) wherein u, v is a pixel.
  • For this purpose, a point P of the coordinate plane (u+½, v+½) is considered. This point is determined by the intersection of two intermediate lines: the vertical line of coordinate u+½ and the horizontal line of coordinate v+½. The image of point P is then at the intersection of the images of the horizontal and vertical lines obtained by homography.
  • Accordingly, the images of these intermediate lines (and intermediate columns) are calculated beforehand. As soon as these images have been precalculated, the images of the subpixels are obtained by the intersection of two precalculated images of intermediate lines.
  • c) A third inverse homography step.
  • In order to calculate the final image, to each pixel of the binary mask, an intensity value must be assigned, which is calculated by finding the position of this pixel in the initial image: for this purpose, an inverse homography calculation needs to be performed.
  • Thus, by repeating the symbology of FIGS. 7 and 8, (x,y) is considered to be a pixel of the ideal mask. This pixel is at the intersection of line y and of column x. The position of this pixel in the deformed image is then obtained by obtaining the intersection of the images of the line and column by inverse homography.
  • The parameters of lines (QJ) and (OI) should then be found in order to calculate their intersection P. The position of points I and J should then be calculated. This result is easily obtained by finding distances JP3 and IP1, for example.
  • This is possible by using the following form of crossed ratios:
  • OP 4 OP 3 · JP 3 P 3 P 4 JP 3 = Dx - 1 - x x OP 4 OP 1 · JP 1 P 1 P 4 JP 1 = Dy - 1 - y y IP 1 = P 1 P 4 · ( Dy - 1 - y ) · QP 1 ( Dy - 1 - y ) · QP 1 + y · QP 4
  • It then becomes possible to calculate the position of point P.
  • Practically, the images are calculated beforehand by inverse homography of the lines and columns of the ideal mask. The position of a given pixel is then inferred in the original image by calculating the intersection of two lines (in this example, the two lines avec (OI) and (QJ)).
  • Of course, the invention is not limited to this single method.
  • d) A fourth step for creating the final image:
  • Let (u,v) be a pixel of the ideal mask. Its position in the deformed initial image is calculated by the intersection of precalculated inverse images of line v and column u. The point which is found, is then called (x,y). An intensity value should then be assigned to pixel (u,v) which will be interpolated in point (x,y) of the initial image. To accomplish this operation, bilinear interpolation is used, for example.
  • If the pixels surrounding point (x,y) such as illustrated in FIG. 11, are considered, the interpolated intensity is given by formula:

  • I(x,y)=(y−j)[(i+1−x)I(i,j+1)+(x−i)I(i+1,j+1)]+(j+1−y)[(i+1−x)I(I,j)+I(I+1,j)]
  • Pixel (u,v) in the final image will then have intensity I(x,y) with the understanding that the grey levels are quantified in the final image.
  • Advantageously, the image containing the corrected extracted data from the noise may be calculated according to the subtractive principle.
  • It is known that luminance is equal to a combination of the intensities of the fundamental colours (red, green, blue): for example L=0.5G+0.3R+0.2B.
  • Thus, in accordance with the method according to the invention, for each of the pixels, one successively proceeds with extracting the luminance, extracting the raw data D(p), calculating the noise contextual datum VS, extracting the noise corrected raw data D*(p) by means of the noise contextual datum, and then generating the luminance image corrected by the following calculation:
  • I * ( p ) = { I max - f · D * ( p ) ( dark data bright ) ( I max may be equal to 255 ) I min + f · D * ( p ) ( bright data dark ) ( I min may be equal to zero )
  • Advantageously, in the case of a colour image, the subtractive principle may be used by removing contrasts of determined chrominances from the background colour, as with a filter, in order to obtain the sought-after colour for the final image.
  • For example, the noise contextual datum VS may be extracted on the basis of the luminance image, and then the corrected raw data may be extracted from the noise (D*R,D*G,D*B) of the colour channels by calculating the raw data of channels DR, DG, DB, expressing the contrast between the observed chrominance RGB and that of the background (VR Back., VG Back., VB Back.) and thresholding by means of VS, and finally generating the corrected chrominance image.
  • R * G * B * = { ( V R Back , V G Back , V B Back ) - f · ( D R * · D G * , D B * ) ( dark data bright ) ( ( V R Back , V G Back , V B Back ) may be equal to ( 255 , 255 , 255 ) ) ( V R Back , V G Back , V B Back ) + f · ( D R * · D G * , D B * ) ( bright data dark ) ( ( V R Back , V G Back , V B Back ) may be equal to ( 0 , 0 , 0 ) ) }
  • As an example, let us assume that at a pixel, the estimated chrominance of the background corresponding to a white area of the supporting medium is (VR Back., VG Back., VB Back.)=(160, 140, 110), and that this pixel represents a blue writing area with chrominance (VR 0, VG 0, VB 0)=(120, 115, 105). Let us assume that the corrected white/blue contrast of the optical noise is (D*R,D*G,D*B)=(160-120, 140-115, 110-105)=(40, 25, 5). Let us set the chrominance of the pixels of the final image representing the white areas of the supporting medium to (RB, GB, BB)=(255, 255, 255), the corrected chrominance of this pixel in the final image is then determined by subtracting the contrast weighted earlier by an f factor, from that of the white, so that the corrected chrominance (R*,G*,B*) of the final image in this pixel will be, if f=1, (R*,G*,B*)=(RB−D*R,GB−D*G,BB−D*B)=(255−40, 255−25, 255−5)=(215, 230, 250).
  • The f factor mentioned earlier may be advantageously used for aligning the obtained colours with reference colours, displayed for example on a test pattern.
  • Of course, the invention is not limited to the embodiments described earlier.
  • Thus, it is notably found that the usual process for determining the threshold value VS at which a handwritten or printed piece of information may be extracted from each pixel of the difference image D(p) (based on knowing beforehand the probability q that a regional maximum of raw data D(p) is generated by noise), has the two following drawbacks:
      • First of all, probability q must be known experimentally for each camera module in order to perform extraction of information from their images. This prevents any extracted information derived from an image captured by an unknown camera module, from being considered as trustworthy information (for example, extraction of information from an image received on a server, for forwarding it by fax to an addressee).
      • Next, it is mandatory to know beforehand whether the information is dark-on-bright-background information or vice versa.
  • The invention therefore provides an enhancement of this method with which the two drawbacks mentioned earlier may be avoided. This enhancement notably provides accurate determination of the threshold value VS, at which the printed or handwritten information may be extracted from the difference image D(p) (analogous to D[C,L]) and determination whether the information is dark on a bright background or vice versa, bright on a dark background.
  • By considering a grey level image I(p) which may either be a combination of the three colour channels of the image (red, blue, green) or one of these three channels, the method according to the invention comprises the following steps, with reference to FIG. 12:
  • 1) A first step for calculating a pit histogram H_pits includes the following operating phases:
  • a) for each pixel p of image I, the following is performed:
  • i. for each direction d with 0<|d|<D:
  • if the condition
      • convexity of I on [p−d, p+d] i.e.

  • I(p+(1−2×)d)≦λI(p−d)+(1−λ)I(p+d) for any 0≦λ≦1
  • is satisfied
  • then G(p,d)=(I(p+d)+I(p−d))/2 is calculated
  • or else G(p,d)=0
  • ii. S(p)=maximum value of G(p,d) is calculated for all directions d with 0<|d|<D
  • b) the maximum value of the pits, S_pits_max is calculated, which is equal to the maximum value of S(p) for all the pixels p
  • c) the pit histogram H_pits is reset to 0 for each value of s between 0 and the maximum value of the pits, S_pits_max
  • d) for each pixel p of image S(p) the following calculations are performed:
  • i. if S(p) is a regional maximum,
  • H_pit (S(p)) is incremented in the following way:

  • H_pit(S(p))←H_pit(S(p))+1
  • 2) A second step for calculating the bump histogram H_bumps includes the following operating phases:
  • a) for each pixel p of image I, the following is performed:
  • i. for each direction d with 0<|d|<D
      • if the following condition
      • concavity of I on [p−d, p+d], i.e.,

  • I(p+(1−2λ)d)≧λI(p−d)+(1−λ)I(p+d) for any 0≦≦λ≦1
  • then G(p,d)=(I(p+d)+I(p−d))/2 is calculated
  • or else G(p,d)=0
  • ii. S(p)=maximum value of G(p,d) is calculated for all directions d with 0<|d|<D
  • b) the maximum value of the bumps S bumps_max is calculated, which is equal to the maximum value of S(p) for all the pixels p
  • c) the bump histogram H_bumps(s) is reset to 0 for each s between 0 and the maximum value of the bumps, S bumps_max
  • d) for each pixel p of image S(p), the following calculations are performed:
  • i. if S(p) is a regional maximum
  • H_bumps(S(p)) is incremented in the following way:

  • H_bumps(S(p))←H_bumps(S(p))+1
  • 3) A third step for superimposing pit H_pits and bump H_bumps histograms includes the following operating steps:
      • a) calculating S_max according to the expression:

  • S max=Max(maximum value of the pits S_pits_max,maximum value of the bumps S_bumps−max)
      • b) calculating H_max according to the expression:

  • H_max=maximum value of the pits,H_pits(S) and of the bumps,H_bumps(S), for all values of S
      • c) calculating s0 according to the expression:
      • s0=maximum value of s such that

  • H_pits(s)=H_max
      • or H_bumps(s)=H_max
      • d) s=s0+1 is calculated and α is selected such that 0<α<½ and as long as:

  • |ln(1+H_pits(s))−ln(1+H_bumps(s))<α·ln(1+H_max)
  • s=s+1 is performed (where in is Napier's logarithm function)
  • finally, value 5 min is determined by the final value of s incremented by 1
  • 4) A step for calculating the value of the extraction threshold VS according to the relationship:

  • V S =r·S min+(1−rS max where ½≦r≦1
  • 5) A step for comparing H_pits and H_bumps includes the following operating phases for β>0:
  • a) calculating a value N_pits from the relationship:

  • N_pits=sum of H_pits(s)β for s=5 min to s=S_pits_max
  • b) calculating a value N_bumps from the relationship:

  • N_bumps=sum of H_bumps(s)β for s=S min to s=S_bumps_max
  • c) if N_pits is less than N_bumps, then the dark-on-bright-background information should be extracted or else the bright-on-dark-background information should be extracted
  • 6) A step for extracting luminance information L(p) includes the following operating phases:
  • a) calculating D according to a known method
  • b) for each pixel p in the difference image D(p),
  • if D(p)>VS, then D(p) is considered relevant and is extracted
  • i. if the information is dark-on-bright-background information, calculating a value, L(p)=Imax−f·D(p), Imax may be equal to 255
  • ii. or else the value L(p)=Imin+f·D(p) is calculated, Imin may be equal to 0
  • If D(p) is not considered relevant
  • i. if the information is dark-on-bright-background information, the value of L(p) is equal to Imax (bright background)
  • ii. or else the value of L(p) is equal to Imin (dark background)
  • As an example, satisfactory results may be obtained with the following parameters:
  • D=3
  • α=20%
  • r=85% for extraction
  • f=5
  • The invention also relates to the simulation of an image of a rectangle (A, B, C, D) with a prescribed physical aspect ratio r=CD/AD, a prescribed point of the projected rectangle in the image (for example point D) and a known projected distance (for example CD) with a camera having a prescribed focal length (f), a tilt angle (π/2)−i where i is the angle of incidence), α is an angle of rotation around the axis of the camera and if i≠0, a prescribed skew angle (β) relatively to one of the existing vanishing points (for example F1). These different parameters are indicated in FIG. 13 which schematically illustrates a camera, with its optical axis and the focal point with the ox, oy, oz coordinate reference system which is bound to this focal point.
  • The solution of this problem comprises the three following steps which refer to FIGS. 2 and 3 and to FIG. 14, i.e.:
      • A first step for calculating the position of the three unknown points A, B and C (point D being prescribed) in the new image which must be generated. The points must be consistent with the physical aspect ratio r of the pattern which must be projected on this new image and the position of the camera (focal distance, tilt angle, angle of rotation, skew angle) which must be simulated.
      • A second step for calculating homographic relationships in order to project the information contained in the pattern of the original image on the calculated pattern of the simulated image.
      • A third step for determining luminance and chrominance of the new image within the contour calculated from the original image with homographic relationships.
  • Calculation of the three unknown points of the pattern takes into account the three following cases:
  • If i≠0 (there is at least one vanishing point), the calculation comprises the four following operating phases:
      • 1. OX=f·tan(i)
      • 2. OF=f/tan(i)
      • 3. Points X and F are placed on a line crossing through the centre of image O and forming an angle α relatively to the vertical
      • 4. Point F1 is placed such that

  • FF 1 =f tan(β)/sin(i)
  • a) if β≠0 (2 vanishing points)
      • i) point F2 is placed such that FF2=(OF·XF)/FF1
      • ii) points M1, C, N1, O1, P1, O2, P2 and N2 are inferred from points X, F1, F2 (if β≠0), D and from distance DC,
      • iii) point M2 is placed so as to obtain the relationship
  • r = dist ( M 1 , N 1 ) dist ( M 2 , N 2 ) · dist ( F 1 , O 1 ) dist ( F 1 , M 1 ) · dist ( F 1 , P 1 ) dist ( F 1 , N 1 ) · dist ( F 2 , M 2 ) dist ( F 2 , O 2 ) · dist ( F 2 , N 2 ) dist ( F 2 , P 2 )
  • b) if β≠0 (only one vanishing point: F1=F) (FIG. 3)
  • i) point A is placed on line (DF) such that
  • AF = r · DF · f 2 + OF 2 DC + r f 2 + OF 2
  • ii) point B is placed on line (FC) such that BF=CF·(AF/DF)
  • c) if i=0 (no vanishing point) (FIG. 14)
      • 1) point C is placed by using point D, distance DC and the angle of rotation α
      • 2) point B is placed such that (A, B, C, D) is a rectangle.

Claims (16)

1. Method for extracting raw data from a digital image taken by a photographic or cinematographic for correcting the extracted raw data and for generating an improved digital image containing the corrected raw data in the case when extracted data from an image or of an image containing them, are shown according to a desired view angle, from an image taken by a camera under any incidence, which comprises the steps:
searching for at least four identifiable characteristic points of a pattern present in the image taken by the camera defining contextual data, these characteristic points may consist of corners of the image,
optionally extracting data according to predetermined criteria,
calculating geometrical deformations to be made to the raw image or to the extracted data or to the image containing them, from the relative position of the four points, with respect to relative reference positions,
determining corrections to be made to the raw image or to the extracted data or to the image containing them, depending on the geometrical deformations, and
generating a corrected image taking into account the thereby determined corrections.
2. The method according to claim 1, for obtaining a corrected image having the same proportions as the object, said method comprises the determination of the real height/width ratio of the quadrilateral defined by the said points and the taking into account of this ratio r in the generation of the corrected image.
3. The method according to claim 2, wherein said quadrilateral is the projection of a rectangle, and in that the determination of the proportions of the rectangle is performed in accordance with a process comprising the following steps:
determining vanishing points from contours of the pattern and determining a horizon line connecting the vanishing points,
determining the coordinates of the projection point F of the optical centre O of the camera on the horizon line,
calculating the camera base point as orthogonal projection of the optical centre of the camera on the plane of the pattern from distances between the vanishing points and the projection point F and from the distance between this projection point F and the optical centre O,
calculating the focal length from the distances between the optical centre, the projection point F and the camera base point,
calculating the coordinates of the intersection points between the vanishing lines and the lines connecting the camera base point and the vanishing points as well as points O1, O2, P1, P2, located on the vanishing lines, at a conventional distance from the camera base point, and
calculating the ratio of the sides of the initial pattern from the coordinates calculated beforehand by considering that the rectangle O1, O2, P1, P2, is the projection of a square extending in the plane of the pattern.
4. The method according to claim 3,
which comprises the following steps in the case when both vanishing points exist,
calculating the coordinates of the point F by projecting the centre of the image O on the horizon line (F1, F2)
calculating the position of the base of the camera by its distance to point F, dist (X,F), by means of the relationship:
dist ( X , F ) = dist ( F , F 1 ) · dist ( F , F 2 ) dist ( O , F )
calculating the focal length f with the relationship:

f=√{square root over (dist(O,Xdist(O,F))}{square root over (dist(O,Xdist(O,F))}
determining the coordinates of points M1, N1, O1 and P1 from the values calculated beforehand
determining the coordinates of points M2, N2, O2 and P2 from the values calculated earlier, and
calculating the physical aspect ratio r by using the crossed ratios and the fact that the rectangle O1, O2, P1, P2 is the projection of a square extending in the plane of the pattern according to the relationship
r = dist ( M 1 , N 1 ) dist ( M 2 , N 2 ) · dist ( F 1 , O 1 ) dist ( F 1 , M 1 ) · dist ( F 1 , P 1 ) dist ( F 1 , N 1 ) · dist ( F 2 , M 2 ) dist ( F 2 , O 2 ) · dist ( F 2 , N 2 ) dist ( F 2 , P 2 )
5. The method according to claim 2 wherein, in the case when only one pair of vanishing lines intersect at a vanishing point whereas the other two vanishing lines are parallel, wherein the vanishing point projected to infinity, the calculation of the ratio r will be performed from a pre-established focal length f of the camera.
6. The method according to claim 5 wherein said ratio r is obtained according to the following relationship wherein f is
r = dist ( A , B ) · dist ( C , D ) ( dist ( C , D ) - dist ( A , B ) ) · f 2 + dist ( O , F 2 ) 2
the focal length of the camera wherein the focal length f is calculated beforehand.
7. The method according to claim 2 wherein, if there is no vanishing point, the ratio r is equal to the ratio
r = dist ( A , B ) dist ( A , D )
8. The method according to claim 1 wherein, the generation of a corrected image comprises an operating sequence including the following phases:
creating an initial, deformed binary mask of the area to be corrected by isolating the useful portion of the initial image containing the extracted data and by assigning the same binary value to the pixels of this useful portion,
calculating an ideal binary mask by a direct homographic transformation of the initial mask based on the transformation of any polygonal shape into a reference polygonal shape, and
for each pixel (u, v) of the ideal binary mask, calculating by inverse homography, the position (x, y) in the initial image, determining the value of the final image at pixel (u, v) by an (x, y) interpolated value in the initial image.
9. The method according to claim 8 wherein said step for creating a binary mask comprises assigning a zero value to all the pixels which are outside a quadrilateral surrounding the useful portion of the image as well as to the pixels which do not correspond to optionally extracted data.
10. The method according to claim 9 wherein the pixels are considered to be within the quadrilateral if they are always on the same side as a point G inside the quadrilateral relatively to the limits of the quadrilateral, point G may consist of the centre of gravity or the point of intersection of the diagonals.
11. The method according to the claim 1 comprising a precalculation of the images of intermediate lines and intermediate columns in order to obtain the images of subpixels by intersection of precalculated images of intermediate lines and intermediate columns.
12. The method according to the claim 8, wherein, in the calculation of the final image, to each pixel of the ideal binary mask is assigned an intensity value which is calculated by finding the position of this pixel in the initial image or the image of the extracted data.
13. The method according to the claim 8, wherein, in the phase for calculating the final image, the images are precalculated by inverse homography of the lines and columns of the ideal mask, and the position of a given pixel in the initial image is then inferred by calculating the intersection of two lines.
14. The method according to claim 1, wherein the step for creating the final image comprises the calculation of the position in the deformed image of a pixel u,v of the ideal mask, by the intersection of the precalculated inverse images of line v and column u, an intersection which defines an x,y point of the initial image, and in that an intensity value is assigned to the pixel (u,v) which is then interpolated at the x, y point of the initial image or image of data extracted from the luminance image or from each colour channel.
15. The method according to claim 14,
wherein the interpolation is bilinear.
16. The method according to the claim 1, comprising the simulation of an image, projected from data contained in a rectangular object with apices (A, B, C, D) having a prescribed physical aspect ratio r=CD/AB, a prescribed projected point D in the image and a known projected distance (CD), with a camera having a prescribed focal length (f), a tilt angle ((π/2)−i) where i is the angle of incidence, an angle of rotation α around the axis of the camera and if i≠0, a prescribed skew angle (β) relatively to one of the existing vanishing points F1,
said method comprising the following steps:
a first step for calculating the position of the three unknown points (A,B,C) consistently with the physical aspect ratio r,
a second step for calculating homographic relationships in order to project the information contained in the original rectangular object onto the simulated image, and
a third step for determining luminance and chrominance of the simulated image with the homographic relationships determined earlier.
US12/581,197 2004-03-23 2009-10-19 Method for extracting raw data from an image resulting from a camera shot Abandoned US20100033603A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/581,197 US20100033603A1 (en) 2004-03-23 2009-10-19 Method for extracting raw data from an image resulting from a camera shot

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
FR0402960 2004-03-23
FR0402960A FR2868184B1 (en) 2004-03-23 2004-03-23 METHOD FOR PRESENTING AN IMAGE ACCORDING TO A DESIRED VIEW ANGLE, FROM AN IMAGE TAKEN UNDER ANY INCIDENCE
FR0413047 2004-12-07
FR0413047A FR2868185B1 (en) 2004-03-23 2004-12-07 METHOD FOR EXTRACTING RAW DATA FROM IMAGE RESULTING FROM SHOOTING
US11/086,985 US7606439B2 (en) 2004-03-23 2005-03-23 Method for extracting raw data from an image resulting from a camera shot
US12/581,197 US20100033603A1 (en) 2004-03-23 2009-10-19 Method for extracting raw data from an image resulting from a camera shot

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/086,985 Division US7606439B2 (en) 2004-03-23 2005-03-23 Method for extracting raw data from an image resulting from a camera shot

Publications (1)

Publication Number Publication Date
US20100033603A1 true US20100033603A1 (en) 2010-02-11

Family

ID=34967748

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/086,985 Expired - Fee Related US7606439B2 (en) 2004-03-23 2005-03-23 Method for extracting raw data from an image resulting from a camera shot
US12/581,197 Abandoned US20100033603A1 (en) 2004-03-23 2009-10-19 Method for extracting raw data from an image resulting from a camera shot

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US11/086,985 Expired - Fee Related US7606439B2 (en) 2004-03-23 2005-03-23 Method for extracting raw data from an image resulting from a camera shot

Country Status (6)

Country Link
US (2) US7606439B2 (en)
EP (1) EP1730692A1 (en)
JP (1) JP2007531094A (en)
KR (1) KR20070008652A (en)
FR (1) FR2868185B1 (en)
WO (1) WO2005098750A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090262209A1 (en) * 2008-04-18 2009-10-22 Primax Electronics Ltd. Notebook computer and method of capturing document image using image pickup device of such notebook computer

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060164682A1 (en) * 2005-01-25 2006-07-27 Dspv, Ltd. System and method of improving the legibility and applicability of document pictures using form based image enhancement
US9769354B2 (en) 2005-03-24 2017-09-19 Kofax, Inc. Systems and methods of processing scanned data
US20090021533A1 (en) * 2007-07-17 2009-01-22 Michael Guerzhoy Method For Extracting An Inexact Rectangular Region Into An Axis-Aligned Rectangle Image
US8139894B2 (en) 2007-12-20 2012-03-20 Intel Corporation Automatic dominant orientation estimation in text images based on steerable filters
US20090214134A1 (en) * 2008-02-27 2009-08-27 Motorola, Inc. System and method for image data extraction and assembly in digital cameras
US8125544B2 (en) * 2008-09-02 2012-02-28 Casio Computer Co., Ltd. Image processing apparatus for extracting quadrangle area in image
KR101035744B1 (en) * 2008-12-08 2011-05-20 삼성전자주식회사 Apparatus and method for character recognition using camera
US8958605B2 (en) 2009-02-10 2015-02-17 Kofax, Inc. Systems, methods and computer program products for determining document validity
US9767354B2 (en) 2009-02-10 2017-09-19 Kofax, Inc. Global geographic information retrieval, validation, and normalization
US9576272B2 (en) 2009-02-10 2017-02-21 Kofax, Inc. Systems, methods and computer program products for determining document validity
JP4856263B2 (en) * 2009-08-07 2012-01-18 シャープ株式会社 Captured image processing system, image output method, program, and recording medium
CN102054271B (en) * 2009-11-02 2013-11-20 富士通株式会社 Text line detection method and device
ES2938620T3 (en) * 2010-09-20 2023-04-13 Fraunhofer Ges Forschung Procedure for distinguishing background and foreground of a scene and procedure for replacing a background in images of a scene
JP5488548B2 (en) * 2011-08-04 2014-05-14 カシオ計算機株式会社 Image processing apparatus, image processing method, and program
US10146795B2 (en) 2012-01-12 2018-12-04 Kofax, Inc. Systems and methods for mobile image capture and processing
US8989515B2 (en) 2012-01-12 2015-03-24 Kofax, Inc. Systems and methods for mobile image capture and processing
US11321772B2 (en) 2012-01-12 2022-05-03 Kofax, Inc. Systems and methods for identification document processing and business workflow integration
US9058515B1 (en) 2012-01-12 2015-06-16 Kofax, Inc. Systems and methods for identification document processing and business workflow integration
CN102663685B (en) * 2012-03-19 2014-08-13 宁波大学 Geometric correction method based on nonlinearity
WO2014160426A1 (en) 2013-03-13 2014-10-02 Kofax, Inc. Classifying objects in digital images captured using mobile devices
US9355312B2 (en) 2013-03-13 2016-05-31 Kofax, Inc. Systems and methods for classifying objects in digital images captured using mobile devices
US10127636B2 (en) 2013-09-27 2018-11-13 Kofax, Inc. Content-based detection and three dimensional geometric reconstruction of objects in image and video data
US10783615B2 (en) * 2013-03-13 2020-09-22 Kofax, Inc. Content-based object detection, 3D reconstruction, and data extraction from digital images
US9208536B2 (en) * 2013-09-27 2015-12-08 Kofax, Inc. Systems and methods for three dimensional geometric reconstruction of captured image data
US20140316841A1 (en) 2013-04-23 2014-10-23 Kofax, Inc. Location-based workflows and services
DE202014011407U1 (en) 2013-05-03 2020-04-20 Kofax, Inc. Systems for recognizing and classifying objects in videos captured by mobile devices
JP2016538783A (en) 2013-11-15 2016-12-08 コファックス, インコーポレイテッド System and method for generating a composite image of a long document using mobile video data
US9760788B2 (en) 2014-10-30 2017-09-12 Kofax, Inc. Mobile document detection and orientation based on reference object characteristics
US10467465B2 (en) 2015-07-20 2019-11-05 Kofax, Inc. Range and/or polarity-based thresholding for improved data extraction
US10242285B2 (en) 2015-07-20 2019-03-26 Kofax, Inc. Iterative recognition-guided thresholding and data extraction
US9779296B1 (en) 2016-04-01 2017-10-03 Kofax, Inc. Content-based detection and three dimensional geometric reconstruction of objects in image and video data
US10803350B2 (en) 2017-11-30 2020-10-13 Kofax, Inc. Object detection and image cropping using a multi-detector approach
CN111965630A (en) * 2020-08-17 2020-11-20 南京先能光电科技有限公司 Space positioning system
CN113470117B (en) * 2021-06-28 2022-12-27 上海交通大学 Unit attitude three-dimensional structured light calibration system and method based on spherical reverse perspective projection
CN114037637B (en) * 2022-01-10 2022-04-19 苏州浪潮智能科技有限公司 Image data enhancement method and device, computer equipment and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5886742A (en) * 1995-01-12 1999-03-23 Sharp Kabushiki Kaisha Video coding device and video decoding device with a motion compensated interframe prediction
US20020108118A1 (en) * 2000-11-10 2002-08-08 Dropfire, Inc. Wireless digital camera adapter and systems and methods related thereto and for use with such an adapter
US6758399B1 (en) * 1998-11-06 2004-07-06 Datalogic S.P.A. Distortion correction method in optical code reading
US6999111B2 (en) * 2001-06-26 2006-02-14 Eastman Kodak Company Electronic camera and system for transmitting digital over a communication network
US7028081B2 (en) * 1998-10-21 2006-04-11 Canon Kabushiki Kaisha Network-device management apparatus and method, recording medium, and transmission apparatus
US7127271B1 (en) * 2001-10-18 2006-10-24 Iwao Fujisaki Communication device
US7596286B2 (en) * 2003-08-06 2009-09-29 Sony Corporation Image processing apparatus, image processing system, imaging apparatus and image processing method
US7978930B2 (en) * 2004-07-07 2011-07-12 Nec Corporation Wide-field image input method and device

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2546017B1 (en) * 1983-05-11 1986-01-17 Thomson Csf METHOD FOR PERFORMING A GEOMETRIC TRANSFORMATION ON A VIDEO IMAGE, AND DEVICES IMPLEMENTING THIS METHOD
JP2903923B2 (en) * 1993-01-19 1999-06-14 株式会社日立製作所 Car number recognition device
DE59708043D1 (en) * 1996-06-17 2002-10-02 Siemens Ag Communication system and method for taking and managing digital images
US6199073B1 (en) * 1997-04-21 2001-03-06 Ricoh Company, Ltd. Automatic archiving of documents during their transfer between a peripheral device and a processing device
JPH10210360A (en) * 1997-01-27 1998-08-07 Minolta Co Ltd Digital camera
JPH10257323A (en) * 1997-03-14 1998-09-25 Minolta Co Ltd Image reader
WO2000031966A1 (en) 1998-11-23 2000-06-02 Ni4U Corporation System and method for taking, selecting and processing electronic pictures
JP2001005852A (en) * 1999-06-23 2001-01-12 Canon Inc Device and method for processing finite element model
JP2001177716A (en) * 1999-12-17 2001-06-29 Ricoh Co Ltd Image processing method and image processor
JP4010754B2 (en) * 2000-08-10 2007-11-21 株式会社リコー Image processing apparatus, image processing method, and computer-readable recording medium
FR2818480A1 (en) 2000-12-04 2002-06-21 Marc Jacky Labarthe Camcorder in mobile phone has video phone or remote storage video camera modes
KR20040044858A (en) * 2001-09-07 2004-05-31 코닌클리케 필립스 일렉트로닉스 엔.브이. Image device having camera and image perspective correction and possibly rotation and staggering correction
JP2003331263A (en) * 2002-05-13 2003-11-21 Nippon Telegr & Teleph Corp <Ntt> Map generating method for making camera image correspond to real spatial coordinate, map generating apparatus for making camera image correspond to real spatial coordinate, and program and recording medium
FR2840093B1 (en) * 2002-05-27 2006-02-10 Real Eyes 3D CAMERA SCANNING METHOD WITH CORRECTION OF DEFORMATION AND IMPROVEMENT OF RESOLUTION
JP2004040395A (en) * 2002-07-02 2004-02-05 Fujitsu Ltd Image distortion correction apparatus, method, and program

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5886742A (en) * 1995-01-12 1999-03-23 Sharp Kabushiki Kaisha Video coding device and video decoding device with a motion compensated interframe prediction
US7028081B2 (en) * 1998-10-21 2006-04-11 Canon Kabushiki Kaisha Network-device management apparatus and method, recording medium, and transmission apparatus
US6758399B1 (en) * 1998-11-06 2004-07-06 Datalogic S.P.A. Distortion correction method in optical code reading
US20020108118A1 (en) * 2000-11-10 2002-08-08 Dropfire, Inc. Wireless digital camera adapter and systems and methods related thereto and for use with such an adapter
US6999111B2 (en) * 2001-06-26 2006-02-14 Eastman Kodak Company Electronic camera and system for transmitting digital over a communication network
US7127271B1 (en) * 2001-10-18 2006-10-24 Iwao Fujisaki Communication device
US7596286B2 (en) * 2003-08-06 2009-09-29 Sony Corporation Image processing apparatus, image processing system, imaging apparatus and image processing method
US7978930B2 (en) * 2004-07-07 2011-07-12 Nec Corporation Wide-field image input method and device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090262209A1 (en) * 2008-04-18 2009-10-22 Primax Electronics Ltd. Notebook computer and method of capturing document image using image pickup device of such notebook computer
US7911532B2 (en) * 2008-04-18 2011-03-22 Primax Electronics Ltd. Notebook computer and method of capturing document image using image pickup device of such notebook computer

Also Published As

Publication number Publication date
FR2868185B1 (en) 2006-06-30
FR2868185A1 (en) 2005-09-30
JP2007531094A (en) 2007-11-01
WO2005098750A8 (en) 2006-12-21
US7606439B2 (en) 2009-10-20
KR20070008652A (en) 2007-01-17
EP1730692A1 (en) 2006-12-13
WO2005098750A1 (en) 2005-10-20
US20050212925A1 (en) 2005-09-29

Similar Documents

Publication Publication Date Title
US7606439B2 (en) Method for extracting raw data from an image resulting from a camera shot
CN112348815B (en) Image processing method, image processing apparatus, and non-transitory storage medium
US10366469B2 (en) Method and system that efficiently prepares text images for optical-character recognition
US9946954B2 (en) Determining distance between an object and a capture device based on captured image data
US10187546B2 (en) Method and device for correcting document image captured by image pick-up device
US7342572B2 (en) System and method for transforming an ordinary computer monitor into a touch screen
US6965684B2 (en) Image processing methods and apparatus for detecting human eyes, human face, and other objects in an image
US7780084B2 (en) 2-D barcode recognition
US8285077B2 (en) Automatic correction of digital image distortion
US9818226B2 (en) Method for optimizing occlusion in augmented reality based on depth camera
US20180137321A1 (en) Method and system for decoding two-dimensional code using weighted average gray-scale algorithm
US9818034B1 (en) System and method for pattern detection and camera calibration
CN1957370B (en) Method for extracting raw data of a photographed image
CN114820417A (en) Image anomaly detection method and device, terminal device and readable storage medium
JP2019528543A (en) Digital object unique identifier (DOI) recognition method and apparatus
JP2007241356A (en) Image processor and image processing program
CN114937050A (en) Green curtain matting method and device and electronic equipment
CN112419207A (en) Image correction method, device and system
JP6797046B2 (en) Image processing equipment and image processing program
CN116894849A (en) Image segmentation method and device
US11525671B2 (en) High contrast structured light patterns for QIS sensors
CN115601616A (en) Sample data generation method and device, electronic equipment and storage medium
CN113850100B (en) Method for correcting two-dimensional code and electronic equipment
CN113095102B (en) Method for positioning bar code area
US8472708B2 (en) Image processor, method for processing image and computer readable medium

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION