class RecognizerTest(unittest.TestCase): def setUp(self): self.original_base = ImageReader.base ImageReader.base = 'tests/fixtures/' + ImageReader.base self.subject = Recognizer() def tearDown(self): ImageReader.base = self.original_base def test_fit_predict(self): self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [RecognizerFlatten(), RecognizerSVM()] self.subject.fit() for X, y in zip(self.subject.data.X, self.subject.data.y): self.assertEqual(self.subject.predict(X), y) def test_fit_predict_with_PCA_SVM(self): self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [RecognizerFlatten(), RecognizerPCA(), RecognizerSVM()] self.subject.fit() for X, y in zip(self.subject.data.X, self.subject.data.y): self.assertEqual(self.subject.predict(X), y) def test_fit_predict_with_Split_PCA_SVM(self): self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [RecognizerFlatten(), RecognizerSplit(), RecognizerPCA(), RecognizerSVM()] self.subject.fit() self.subject.score() def test_fit_predict_with_LDA_SVM(self): self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [RecognizerFlatten(), RecognizerLDA(), RecognizerSVM()] self.subject.fit() for X, y in zip(self.subject.data.X, self.subject.data.y): self.assertEqual(self.subject.predict(X), y) def test_dump_load(self): model_filename = 'tmp/test_model.pkl' self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [RecognizerFlatten(), RecognizerPCA(), RecognizerSVM()] self.subject.fit() self.subject.dump(model_filename) self.subject = Recognizer() self.subject.load(model_filename) data = Data() data.load_data(['BLACK', 'BLUE']) for X, y in zip(data.X, data.y): self.assertEqual(self.subject.predict(X), y)
class RecognizerLDATest(unittest.TestCase): def setUp(self): self.original_base = ImageReader.base ImageReader.base = 'tests/fixtures/' + ImageReader.base self.subject = Recognizer() def tearDown(self): ImageReader.base = self.original_base def test_fit_predict(self): self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [RecognizerFlatten(), RecognizerLDA()] self.subject.fit() for X, y in zip(self.subject.data.X, self.subject.data.y): self.assertTrue(self.subject.predict(X) is not None)
class RecognizerLDATest(unittest.TestCase): def setUp(self): self.original_base = ImageReader.base ImageReader.base = 'tests/fixtures/' + ImageReader.base self.subject = Recognizer() def tearDown(self): ImageReader.base = self.original_base def test_fit_predict(self): self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [RecognizerFlatten(), RecognizerLDA()] self.subject.fit() for X, y in zip(self.subject.data.X, self.subject.data.y): self.assertTrue(self.subject.predict(X) is not None)
class RecognizerTest(unittest.TestCase): def setUp(self): self.original_base = ImageReader.base ImageReader.base = 'tests/fixtures/' + ImageReader.base self.subject = Recognizer() def tearDown(self): ImageReader.base = self.original_base def test_fit_predict(self): self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [RecognizerFlatten(), RecognizerSVM()] self.subject.fit() for X, y in zip(self.subject.data.X, self.subject.data.y): self.assertEqual(self.subject.predict(X), y) def test_fit_predict_with_PCA_SVM(self): self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [ RecognizerFlatten(), RecognizerPCA(), RecognizerSVM() ] self.subject.fit() for X, y in zip(self.subject.data.X, self.subject.data.y): self.assertEqual(self.subject.predict(X), y) def test_fit_predict_with_Split_PCA_SVM(self): self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [ RecognizerFlatten(), RecognizerSplit(), RecognizerPCA(), RecognizerSVM() ] self.subject.fit() self.subject.score() def test_fit_predict_with_LDA_SVM(self): self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [ RecognizerFlatten(), RecognizerLDA(), RecognizerSVM() ] self.subject.fit() for X, y in zip(self.subject.data.X, self.subject.data.y): self.assertEqual(self.subject.predict(X), y) def test_dump_load(self): model_filename = 'tmp/test_model.pkl' self.subject.load_data(['BLACK', 'BLUE']) self.subject.model = [ RecognizerFlatten(), RecognizerPCA(), RecognizerSVM() ] self.subject.fit() self.subject.dump(model_filename) self.subject = Recognizer() self.subject.load(model_filename) data = Data() data.load_data(['BLACK', 'BLUE']) for X, y in zip(data.X, data.y): self.assertEqual(self.subject.predict(X), y)