I'd like to identify person from another using Gabor filter.
It is working fine but I don't understand how to classify.
Does it need for example to SVM as classifier?
I understand from this paper that it don't need SVM OR another classifier
The full code in real-time(video):
import cv2
import numpy as np
from imutils.video import FPS
# capturing video through webcam
import time
cap = cv2.VideoCapture(0)
#video dimension in python-opencv
width = cap.get(3) # float
height = cap.get(4) # float
print width,height
time.sleep(2.0)
fps = FPS().start()
while(1):
_, img = cap.read()
if _ is True:
img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# img =cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
else:
continue
g_kernel = cv2.getGaborKernel((21, 21), 8.0, np.pi / 4, 10.0, 0.5, 0, ktype=cv2.CV_32F)
# print g_kernel
filtered_img = cv2.filter2D(img, cv2.CV_8UC3, g_kernel)
# print filtered_img
# kernel_resized = cv2.resize(g_kernel)
cv2.imshow("Original Tracking", img)
cv2.imshow("Color Tracking", filtered_img)
h, w = g_kernel.shape[:2]
g_kernel = cv2.resize(g_kernel, (3 * w, 3 * h), interpolation=cv2.INTER_CUBIC)
cv2.imshow('gabor kernel (resized)', g_kernel)
# cv2.imshow("kernel", g_kernel)
if cv2.waitKey(10) & 0xFF == ord('q'):
cap.release()
cv2.destroyAllWindows()
break
fps.update()
fps.stop()
print("[INFO] elapsed time: {:.2f}".format(fps.elapsed()))
print("[INFO] approx. FPS: {:.2f}".format(fps.fps()))
please help me
Thank you in advance.