#!/usr/bin/env python

import cv2 as cv
from klasifikator import AgeKlasifikator

''' POSTAVKE '''
DIR_ZA_UCENJE = 'uzorci_za_ucenje/'
DIR_ZA_TESTIRANJE = 'uzorci_za_testiranje/'

''' FORMAT ZAPISA: ISPRAVNO|KLASIFICIRANO'''

primjer = AgeKlasifikator(DIR_ZA_UCENJE)
primjer.postaviSkupine([13, 21, 60])
primjer.postaviPCA(100)
primjer.doPCALDA()

datoteka = open('SVM_POLY_klasifikacija_testiranje.txt','a')
primjer.postaviSVM(dict(kernel_type = cv.SVM_POLY, svm_type = cv.SVM_C_SVC, C = 1, degree = 1, gamma = 1))
primjer.trainSVM()
primjer.batchPredict(DIR_ZA_TESTIRANJE)
for pripadnost, prediction in primjer.razlikaRazred:
    datoteka.writelines(str(pripadnost) + "|" + str(int(prediction)) + "\n")
datoteka.close()

datoteka = open('SVM_RBF_klasifikacija_testiranje.txt','a')
primjer.postaviSVM(dict(kernel_type = cv.SVM_RBF, svm_type = cv.SVM_C_SVC, C = 1,  gamma = 1))
primjer.trainSVM()
primjer.batchPredict(DIR_ZA_TESTIRANJE)
for pripadnost, prediction in primjer.razlikaRazred:
    datoteka.writelines(str(pripadnost) + "|" + str(int(prediction)) + "\n")
datoteka.close()
示例#2
0
#!/usr/bin/env python

from matplotlib import pyplot as Pyplot
from mpl_toolkits.mplot3d import Axes3D
from klasifikator import AgeKlasifikator

# 3D ispis tocaka nakon LDA (radi samo za cijelu sliku...znaci broj okvira 1!!)
test1 = AgeKlasifikator('uzorci_za_ucenje/')
test1.postaviSkupine([13, 21, 60])
test1.postaviPCA(100)
test1.doPCALDA()

# Uzorci za ucenje
tocke = test1.ldaMatricaUzorakaFinal
pripadnost = test1.pripadnost
dob = test1.dob

# Uzorci za testiranje
ttocke, tpripadnost, tdob = test1.ldaTest('uzorci_za_testiranje/')

figure = Pyplot.figure(num=None, figsize=(12, 6), dpi=80, facecolor='w', edgecolor='k')
ax1 = figure.add_subplot(121, projection='3d')
ax1.scatter(tocke[:,0], tocke[:,1], tocke[:,2], c=pripadnost)
ax2 = figure.add_subplot(122, projection='3d')
ax2.scatter(ttocke[:,0], ttocke[:,1], ttocke[:,2], c=tpripadnost)
Pyplot.savefig("uzorciUcenjeTestRazredi.png")

figure = Pyplot.figure(num=None, figsize=(12, 6), dpi=80, facecolor='w', edgecolor='k')
ax1 = figure.add_subplot(121, projection='3d')
ax1.scatter(tocke[:,0], tocke[:,1], tocke[:,2], c=dob)
ax2 = figure.add_subplot(122, projection='3d')