C# Class SoundFingerprinting.Math.SimilarityUtility

Inheritance: ISimilarityUtility
Afficher le fichier Open project: AddictedCS/soundfingerprinting

Méthodes publiques

Méthode Description
AccumulateHammingSimilarity ( IEnumerable candidates, HashedFingerprint expected, ResultEntryAccumulator>.ConcurrentDictionary accumulator ) : void
CalculateHammingDistance ( byte a, byte b ) : int
CalculateHammingSimilarity ( byte a, byte b ) : int
CalculateJaccardSimilarity ( bool x, bool y ) : double

Calculate similarity between 2 fingerprints.

Similarity defined as (A intersection B)/(A union B) for types of columns a (1,1), b(1,0), c(0,1) and d(0,0), it will be equal to Sim(x,y) = a/(a+b+c) +1 = 10 -1 = 01 0 = 00

SimilarityUtility ( ) : System.Collections.Concurrent

Private Methods

Méthode Description
SimilarityUtility ( IHashConverter hashConverter ) : System.Collections.Concurrent

Method Details

AccumulateHammingSimilarity() public méthode

public AccumulateHammingSimilarity ( IEnumerable candidates, HashedFingerprint expected, ResultEntryAccumulator>.ConcurrentDictionary accumulator ) : void
candidates IEnumerable
expected SoundFingerprinting.Data.HashedFingerprint
accumulator ResultEntryAccumulator>.ConcurrentDictionary
Résultat void

CalculateHammingDistance() public méthode

public CalculateHammingDistance ( byte a, byte b ) : int
a byte
b byte
Résultat int

CalculateHammingSimilarity() public méthode

public CalculateHammingSimilarity ( byte a, byte b ) : int
a byte
b byte
Résultat int

CalculateJaccardSimilarity() public méthode

Calculate similarity between 2 fingerprints.
Similarity defined as (A intersection B)/(A union B) for types of columns a (1,1), b(1,0), c(0,1) and d(0,0), it will be equal to Sim(x,y) = a/(a+b+c) +1 = 10 -1 = 01 0 = 00
public CalculateJaccardSimilarity ( bool x, bool y ) : double
x bool Fingerprint x
y bool Fingerprint y
Résultat double

SimilarityUtility() public méthode

public SimilarityUtility ( ) : System.Collections.Concurrent
Résultat System.Collections.Concurrent