Java cos cosineCoefficient(double[] hist1, double[] hist2)

Here you can find the source of cosineCoefficient(double[] hist1, double[] hist2)

Description

cosine Coefficient

License

Open Source License

Declaration

public static double cosineCoefficient(double[] hist1, double[] hist2) 

Method Source Code

//package com.java2s;
/*//w w w .  ja v a2 s  .  co m
 * This file is part of the LIRE project: http://www.semanticmetadata.net/lire
 * LIRE is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * LIRE is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with LIRE; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 * We kindly ask you to refer the any or one of the following publications in
 * any publication mentioning or employing Lire:
 *
 * Lux Mathias, Savvas A. Chatzichristofis. Lire: Lucene Image Retrieval ?
 * An Extensible Java CBIR Library. In proceedings of the 16th ACM International
 * Conference on Multimedia, pp. 1085-1088, Vancouver, Canada, 2008
 * URL: http://doi.acm.org/10.1145/1459359.1459577
 *
 * Lux Mathias. Content Based Image Retrieval with LIRE. In proceedings of the
 * 19th ACM International Conference on Multimedia, pp. 735-738, Scottsdale,
 * Arizona, USA, 2011
 * URL: http://dl.acm.org/citation.cfm?id=2072432
 *
 * Mathias Lux, Oge Marques. Visual Information Retrieval using Java and LIRE
 * Morgan & Claypool, 2013
 * URL: http://www.morganclaypool.com/doi/abs/10.2200/S00468ED1V01Y201301ICR025
 *
 * Copyright statement:
 * ====================
 * (c) 2002-2013 by Mathias Lux (mathias@juggle.at)
 *  http://www.semanticmetadata.net/lire, http://www.lire-project.net
 *
 * Updated: 19.05.13 11:24
 */

public class Main {
    public static double cosineCoefficient(double[] hist1, double[] hist2) {
        double distance = 0;
        double tmp1 = 0, tmp2 = 0;
        for (int i = 0; i < hist1.length; i++) {
            distance += hist1[i] * hist2[i];
            tmp1 += hist1[i] * hist1[i];
            tmp2 += hist2[i] * hist2[i];
        }
        if (tmp1 * tmp2 > 0) {
            return (distance / (Math.sqrt(tmp1) * Math.sqrt(tmp2)));
        } else
            return 0d;
    }
}

Related

  1. cosd(double degreeAngle)
  2. cosd(double x)
  3. cosDeg(double degrees)
  4. cosf(float f)
  5. cosf(float value)
  6. cosineInterpolate(float y1, float y2, float mu)
  7. cosineTheorem(double d12, double d23, double theta123)
  8. cosInt(double s)