Handwritten character recognition with Gabor Filter and SVM with PCAPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Handwritten character recognition with Gabor Filter and SVM with PCA

Сообщение Anonymous »

Я пытаюсь создать простую программу в Python для классификации рукописных цифр (чисел) с помощью фильтра Габора. Фильтр для различных ориентаций и масштабов. class = "lang-py prettyprint-override"># Import required libraries
import numpy as np
from sklearn.decomposition import PCA
from sklearn import svm
from skimage.filters import gabor
import matplotlib.pyplot as plt
from sklearn.model_selection import cross_val_score
from sklearn.model_selection import train_test_split
import idx2numpy
from sklearn.model_selection import KFold
from sklearn.multiclass import OneVsOneClassifier

# Load MNIST dataset.
trainX = idx2numpy.convert_from_file("data/train-images-idx3-ubyte")
labelsX = idx2numpy.convert_from_file("data/train-labels-idx1-ubyte")

features = np.empty((1, 2))
labels = np.empty((1,))
mxm = 100
for i in range(mxm):
image = trainX
for freq in np.arange(0.2,1.2,0.2):
for orientation in range(0,360,45):
filt_real, filt_imag = gabor(image,frequency=freq,theta=orientation) # Compute Gabor Filter on image i for a given scale and orientation
phase = np.angle(filt_real + 1.0j*filt_imag) # Compute phase with real and complex part
pca = PCA(n_components=2) # Initialize a 2-component PCA
pca.fit(phase) # Fit phase in PCA
curr = pca.transform(phase) # Feature reduction
features = np.append(features,curr,axis=0) # Append features
labels = np.append(labels,[labelsX]*len(curr)) # Append labels

kf = KFold(n_splits=mxm)

counter = 1
for train, test in kf.split(features):
print('Fold',counter)
counter = counter + 1
X_train, X_test, y_train, y_test = features[train], features[test], labels[train], labels[test]
clf = OneVsOneClassifier(svm.SVC(kernel='rbf'))
clf.fit(X_train,y_train)
print('Accuracy:',clf.score(X_test,y_test))
< /code>
Но по какой -то причине это дает мне очень низкую точность (около 0,1). Итак, мой вопрос: SVM с PCA - хорошая стратегия для извлечения функций фильтра Габора?
Я не хочу использовать нейронные сети.>

Подробнее здесь: https://stackoverflow.com/questions/693 ... m-with-pca
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Возникла проблема при запуске приложения для обнаружения ocr с зависимостью mlkit-text-recognition v16.2.0.
    Anonymous » » в форуме Android
    0 Ответы
    41 Просмотры
    Последнее сообщение Anonymous
  • Struts2 и вызывают ошибку
    Anonymous » » в форуме JAVA
    0 Ответы
    36 Просмотры
    Последнее сообщение Anonymous
  • Razor jQuery Select Filter Filter
    Anonymous » » в форуме Html
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Razor jQuery Select Filter Filter
    Anonymous » » в форуме Jquery
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Razor jQuery Select Filter Filter
    Anonymous » » в форуме Javascript
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»