Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * Copyright 2013 Alibaba.com All right reserved. This software is the
  * confidential and proprietary information of Alibaba.com ("Confidential
  * Information"). You shall not disclose such Confidential Information and shall
  * use it only in accordance with the terms of the license agreement you entered
  * into with Alibaba.com.
  */
 package com.alibaba.simpleimage.analyze.harris.match;
 
类SurfMatch.java的实现描述:TODO 类实现描述

Author(s):
axman 2013-5-23 下午4:34:17
public class SurfMatch {
    int slopeArc;
    public SURFInterestPointN getSp1() {
        return ();
    }
    public SURFInterestPointN getSp2() {
        return ();
    }
    double dist1;
    public double getDist1() {
        return ();
    }
    double dist2;
    public double getDist2() {
        return ();
    }
    public SurfMatch(SURFInterestPointN sp1SURFInterestPointN sp2double dist1double dist2){
        this. = sp1;
        this. = sp2;
        this. = dist1;
        this. = dist2;
    }
    public static class MatchWeighter implements Comparator<SurfMatch> {
        private double distExp;
        private double quotExp;
        public MatchWeighter(){
            this(1.0d, 1.0d);
        }
        // The formula goes like this, with lowest weight being best matches:
        // w(kp) = kp.dist1^{distExp} *
        // {\frac{1}{kp.dist2 - kp.dist1}}^{quotExp}
        //
        // This means, as both dist1 and dist2 are in [0.0 ; 1.0], that a high
        // distExp exponent (and distExp > quotExp) will make the absolute
        // distance for the best match more important. A high value for
        // quotExp will make the difference between the best and second best
        // match more important (as in "how many other candidates are likely
        // matches?").
        public MatchWeighter(double distExpdouble quotExp){
            this. = distExp;
            this. = quotExp;
        }
        public double OverallFitness(SurfMatch m) {
            double fitness = Math.pow(m.getDist1(), ) * Math.pow(1.0 / (m.getDist2() - m.getDist1()), );
            return (fitness);
        }
        public int compare(SurfMatch o1SurfMatch o2) {
            double fit1 = OverallFitness(o1);
            double fit2 = OverallFitness(o2);
            if (fit1 < fit2return (-1);
            else if (fit1 > fit2return (1);
            return (0);
        }
    }
    
New to GrepCode? Check out our FAQ X