コード例 #1
0
ファイル: buildIndex.py プロジェクト: PierreHao/QScode
class IndexTrainer(object):

	def __init__(self):
		self.index = InvertedIndex()
		self.bow = Bow()
		self.extractor = Extractor('surf')
		print self.index.author
		print self.index.description

	def load_feature(self, path='../models/feature.npy'):
		self.features = np.load(path)
		if len(self.features) > 200000:
			self.features = self.features[:200000]
		print "feature shape: ", self.features.shape
		return self.features

	def run(self, path):
		self.bow.load()
		self.index.reset(self.bow.centers)
		images = imutil.get_list_image(path)
		t = imutil.Timer(1)
		t.tic()
		for i,image in enumerate(images):
			descriptors = self.extractor.extract(image)
			self.index.append(image, descriptors)
			if (i+1)%1000 == 0:
				t.toc('finish 1000 images: ')
				t.tic()
コード例 #2
0
ファイル: trainIndex.py プロジェクト: PierreHao/QScode
class IndexTrainer(object):

	def __init__(self, centers):
		self.bow = Bow(centers)
		self.index = InvertedIndex()

	def load_feature(self, path='../models/feature.npy'):
		self.features = np.load(path)
		if len(self.features) > 500000:
			self.features = self.features[:500000]
		print "feature shape: ", self.features.shape
		return self.features

	def train(self):
		self.bow.load('../models/bow.pkl')
		self.index.reset(self.bow.centers)
		self.index.append('img1',self.features[:100])
		self.index.append('img2',self.features[100:200])
		self.index.append('img3',self.features[200:300])
		print self.index