Найти EyeMap изображения с помощью Python OpenCV

Я пробовал кодировать для EyeMapC но не смог получить ожидаемый результат.

EyeMapC = 1/3 (Cb2 + Cr '2 + Cb / Cr)

где Cr' = 255 - Cr

Вот мой код

from __future__ import division
import cv2
import numpy as np

img = cv2.imread('img/file.jpg')
EyeMap = cv2.cvtColor(img,cv2.COLOR_BGR2YCR_CB)
y,Cr,Cb = cv2.split(EyeMap)
Q = np.square(Cb) #,dtype=np.float64)
Cr_bar = (255-Cr)
R = np.square(Cr_bar) #,dtype=np.float64)
G = Cb/Cr
EyeC = (Q/3+R/3+G/3)
#EyeC = np.mod(EyeC,255)

cv2.imshow('EyeC',EyeC)
cv2.waitKey(0)
cv2.destroyAllWindows()

Cb2 и Cr '2 должны быть нормализованы между [0,255] перед введением в формулу или окончательный EyeC значение должно быть нормализовано?

Исходное изображение: Исходное изображение

Вывод: Вывод изображения

0 ответов

Другие вопросы по тегам