C# 클래스 SoundFingerprinting.Math.SimilarityUtility

상속: ISimilarityUtility
파일 보기 프로젝트 열기: AddictedCS/soundfingerprinting

공개 메소드들

메소드 설명
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

비공개 메소드들

메소드 설명
SimilarityUtility ( IHashConverter hashConverter ) : System.Collections.Concurrent

메소드 상세

AccumulateHammingSimilarity() 공개 메소드

public AccumulateHammingSimilarity ( IEnumerable candidates, HashedFingerprint expected, ResultEntryAccumulator>.ConcurrentDictionary accumulator ) : void
candidates IEnumerable
expected SoundFingerprinting.Data.HashedFingerprint
accumulator ResultEntryAccumulator>.ConcurrentDictionary
리턴 void

CalculateHammingDistance() 공개 메소드

public CalculateHammingDistance ( byte a, byte b ) : int
a byte
b byte
리턴 int

CalculateHammingSimilarity() 공개 메소드

public CalculateHammingSimilarity ( byte a, byte b ) : int
a byte
b byte
리턴 int

CalculateJaccardSimilarity() 공개 메소드

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
리턴 double

SimilarityUtility() 공개 메소드

public SimilarityUtility ( ) : System.Collections.Concurrent
리턴 System.Collections.Concurrent