2014-11-16 1 views
0

지문의 특징점에서 능선을 얻는 방법내가 YYZhang의 알고리즘을 희석, 지문을 진화이 방법으로 픽셀의 주위를 찾고 minutiaes있어

public static ArrayList<Point> timesPattern01(int i, int j, byte[][] image){ 

     ArrayList<Point> ps = new ArrayList<>();  


     if(image[i-1][j]==0 && image[i-1][j+1]==1) ps.add(new Point(i-1,j+1)); 
     if(image[i-1][j+1]==0 && image[i][j+1]==1) ps.add(new Point(i,j+1)); 
     if(image[i][j+1]==0 && image[i+1][j+1]==1) ps.add(new Point(i+1,j+1)); 
     if(image[i+1][j+1]==0 && image[i+1][j]==1) ps.add(new Point(i+1,j)); 
     if(image[i+1][j]==0 && image[i+1][j-1]==1) ps.add(new Point(i+1,j-1)); 
     if(image[i+1][j-1]==0 && image[i][j-1]==1) ps.add(new Point(i,j-1)); 
     if(image[i][j-1]==0 && image[i-1][j-1]==1) ps.add(new Point(i-1,j-1)); 
     if(image[i-1][j-1]==0 && image[i-1][j]==1) ps.add(new Point(i-1,j)); 

     return ps; 
    } 

그리고

for(int i=Wx+Xfactor; i<Ex-Xfactor; i++){ 
     for(int j=Ny+Yfactor; j<Sy-Yfactor; j++){ 
      ArrayList<Point> patterns = timesPattern01(i,j,fpImage); 
      if(fpImage[i][j]==1){ 
       if(patterns.size() ==1){ 
        termination.add(new Minutiae("termination",patterns,new Point(i,j))); 

       } 
       if(patterns.size()==3){ 
        bifurcation.add(new Minutiae("bifurcation",patterns,new Point(i,j))); 

       } 
      } 
     } 
    } 

(Wx 또는 Ex) + Xfactor 및 (Sy 또는 Ny) + Yfactor는 지문의 테두리이므로 국경을 넘지 않는 거짓 지문을 얻을 수 없습니다

하지만 내 문제는, 과장된 거짓말 쟁이 능선을 추적해야합니다. 산마루를 추적 할 수있는 방법은 무엇입니까? 아니면 분기점에서 3 개의 산마루를 추적 할 수 있습니까? 죄송합니다. 그러나이 방법으로는 생각할 수 없습니다.

답변

0

NIST는 User Guide to NIST Biometric Image Software.에 템플릿을 사용하기위한 알고리즘에 대한 자세한 설명을 제공합니다. 소스 코드를보고 싶다면 소프트웨어는 공개 된 도메인입니다.

페이지의 62 - 68은 잘못된 상세 점을 제거하기위한 세부적인 방법에 대해 설명합니다.