Я занимаюсь классификацией изображений с помощью глубокого обучения и хочу реализовать нормализацию освещения, которая представлена в разделе 4.4 документа https://arxiv.org/pdf/1907.09449.pdf ,, но я не получил ожидаемых результатов.
В разделе 4.4 документа он использует фильтр Гаусса Керенла для получения фонового изображения, затем вычитает его из канала Y в цветовом пространстве YCrCb, я пытаюсь воспроизвести результат, но он не такой, как бумага на рисунке 4.
ниже мой код
image = cv2.imread(file)
cv2.imshow("origin", image)
# illumination normalize
ycrcb = cv2.cvtColor(image, cv2.COLOR_BGR2YCrCb)
y, cr, cb = cv2.split(ycrcb)
# get background which paper says (gaussian method using standard deviation 5 pixel)
gaussian = cv2.GaussianBlur(y, (0, 0), 5, 5)
# subtract background from Y channel which paper says
y = y - gaussian
ycrcb = cv2.merge([y, cr, cb])
output = cv2.cvtColor(ycrcb, cv2.COLOR_YCrCb2BGR)
cv2.imshow("output", output)
, но изображение результата вывода (см. Ниже) не такое, как написано на бумаге (рис. 4)
исходное изображение -> нормализованное изображение освещенности
кто-нибудь знает, как это сделать? спасибо за вашу огромную помощь: -)