我正在开展一个人脸识别项目。为了提高算法的准确性,我们尝试按照本文进行一些预处理:
http://lear.inrialpes.fr/pubs/2007/TT07/Tan-amfg07a.pdf
基于此,我们制作了以下代码:
def dif_gaussian(img, sigma0 = 1.0, sigma1 = 2.0):
blur1 = cv2.GaussianBlur(img,(0,0),sigma0)
blur2 = cv2.GaussianBlur(img,(0,0),sigma1)
result = cv2.subtract(blur1,blur2)
return np.uint8(result)
def gamma_correction(img, correction):
temp = img/255.0
result = cv2.pow(temp, correction)
return np.uint8(result*255)
predict_image_pil = Image.open('image.jpg').convert('L')
predict_image = np.array(predict_image_pil, 'uint8')
predict_gamma = gamma_correction(predict_image,0.2)
predict_gauss = dif_gaussian(predict_gamma,1.0,2.0)
predict_hist = cv2.equalizeHist(predict_gauss)
但是我们生成的图像,特别是高斯部分的差异,与文章中显示的图像有所不同。处理中是否有任何错误,我没有看到?