Esempio n. 1
0
def getMinHistogram(imageHistograms,targetHistograms):
	minValue = math.inf 
	minIndex = -1
	for i in range(len(imageHistograms)):
		for target in targetHistograms:
			val = computeHistogram.compare(imageHistograms[i],target)
			if val<minValue:
				minValue = val
				minIndex = i
	if minValue > 1.0:
		return -1
	return minIndex
Esempio n. 2
0
def getMinNHistograms(imageHistograms, targetHistograms, N):
	distances = []
	for index,hist in enumerate(imageHistograms):
		for target in targetHistograms:
			distances.append((index, computeHistogram.compare(hist,target)))
	distances = sorted(distances, key = lambda pair : pair[1])
	minHistograms = {}
	ret = []
	for index, _ in distances:
		if not index in minHistograms:
			minHistograms[index] = -1
			ret.append(index)
		if len(minHistograms)==N:
			break
	return ret
Esempio n. 3
0
	def getBestAffinity(hist):
		currAffinities = []
		for target in targets:
			currAffinities.append(computeHistogram.compare(hist, target))
		return min(currAffinities)