Patent ID: 11900634
Assignee: DALIAN UNIVERSITY OF TECHNOLOGY
Field: Audio-visual technology (Electrical engineering)
Classification: CPC G  H | IPC G  H

Claim 2:
3. The method for adaptively detecting chessboard sub-pixel level corner points according to claim 2, wherein step 4) comprises the following specific steps:
4-1) calculating coordinates of four initial corner points of the unit grid defined by the marks in a pixel coordinate system according to geometrical relationship;
4-2) letting a sub-pixel level corner point to be solved be q, then the line vector between surrounding points pi and q thereof is (pi−q); for any point pi in a search window thereof, letting the gray gradient at pi be Gi, then the following formula is obtained:

Gi*(pi−q)=0

solving the formula by least square method:

GiTGiq=GiTGipi 

i.e.:

q=(GiTGi)−1*(GiTGipi)

the coordinate of an initial corner point is an integer and is assumed to be q0, and a window is selected centering on q0; the radius win of the iteration window of the sub-pixel level corner point is obtained; each point of the window is pi; the quantity of pi is N, Gaussian weight is introduced, the weight at point pi is wi, and the coordinate q of the sub-pixel level corner point is:, q
  =
  
   
    ∑
    
     i
     =
     0
    
    N
   
   
    
     
      (
      
       
        G
        i
        T
       
       ⁢
       
        G
        i
       
      
      )
     
     
      -
      1
     
    
    *
    
     (
     
      
       G
       i
       T
      
      ⁢
      
       G
       i
      
      ⁢
      
       w
       i
      
      ⁢
      
       p
       i
      
     
     )
    
   
  
 

using sobel convolution to calculate the gray gradient Gi at point pi; for point pi:, G
    i
   
   =
   
    
     
      
       [
       dx
      
     
     
      
       dy
       ]
      
     
    
   
  
  ⁢
  

  
   
    G
    i
    T
   
   =
   
    [
    
     
      
       
        d
        ⁢
        x
       
      
     
     
      
       
        d
        ⁢
        y
       
      
     
    
    ]
   
  
  ⁢
  

  
   
    
     
      G
      i
      T
     
     ⁢
     
      G
      i
     
    
    =
    
     [
     
      
       
        
         d
         ⁢
         x
         ⁢
         d
         ⁢
         x
        
       
       
        
         d
         ⁢
         x
         ⁢
         d
         ⁢
         y
        
       
      
      
       
        
         d
         ⁢
         x
         ⁢
         d
         ⁢
         y
        
       
       
        
         d
         ⁢
         y
         ⁢
         d
         ⁢
         y
        
       
      
     
     ]
    
   
   ;
  
 

4-3) obtaining lengths of the four sides of the initially marked unit grid through the pixel coordinates of the four corner points of the unit grid defined by the marks, naming the lengths of the four sides in the same direction (clockwise or counterclockwise) as d1, d2, d3, d4 and the corresponding included angles of every two adjacent sides as θ1, θ2, θ3, θ4 respectively; when the average value d of the four side lengths of the unit grid and the radius win of the iteration window satisfy the following fitting relation:, win
  =
  
   [
   
    
     
      k
      *
      
       d
       ¯
      
     
     +
     c
    
    
     
      ρ
      *
      
       
        ∑
        
         i
         =
         1
        
        4
       
       
        
         
          ❘
          "\[LeftBracketingBar]"
         
         
          
           θ
           i
          
          -
          
           π
           2
          
         
         
          ❘
          "\[RightBracketingBar]"
         
        
        4
       
      
     
     +
     b
    
   
   ], the sub-pixel level corner point detected is the most accurate, wherein k and ρ are coefficients of first order terms, and c and b are constants; based on the known k, ρ, c, b d and θi, the initial value of the radius win of the window is taken as w0;
4-4) verifying the four sub-pixel level corner point coordinates; naming the lengths of the four sides of the unit grid in the same direction (clockwise or counterclockwise) as d′1, d′2, d′3, d′4, the tangents of the four sides as ϕ1, ϕ2, ϕ3, ϕ4, and the corresponding included angles of every two adjacent sides as θ′1, θ′2, θ′3, θ′4 respectively; setting parameters μ1, μ2, λ1, λ2, η1, η2, δ1 and δ2, and taking μ1=λ1=η1=δ1=0.9 and μ2=λ2=η2=δ2=1.1; the side lengths needs to satisfy that:, μ
    1
   
   ≤
   
    
     d
     1
     ′
    
    
     d
     3
     ′
    
   
   ≤
   
    μ
    2
   
  
  ,
  
   
    λ
    1
   
   ≤
   
    
     d
     2
     ′
    
    
     d
     4
     ′
    
   
   ≤
   
    λ
    2
   
  
  ,
  
   
    
     η
     1
    
    ≤
    
     
      ϕ
      1
     
     
      ϕ
      3
     
    
    ≤
    
     
      η
      2
     
     ⁢
        
     and
     ⁢
        
     
      δ
      1
     
    
    ≤
    
     
      ϕ
      2
     
     
      ϕ
      4
     
    
    ≤
    
     δ
     2
    
   
   ;, if the above relations are not satisfied, the size of the iteration window win for calculating sub-pixel level corner points shall be dynamically adjusted until the relations are satisfied.