Я пишу этот простой код для описания моего вопроса:
import cv2
import numpy as np
input = cv2.imread("./Lenna.jpg")
cv2.imshow('input', input)
cv2.waitKey()
b, g, r = cv2.split(input)
bgr_new = b * 1.1, g * 1.1, r * 1.1
merged_uint8 = cv2.merge(np.array(bgr_new).astype(np.uint8))
cv2.imshow('uint8', merged_uint8)
cv2.waitKey()
merged_float32 = cv2.merge(np.array(bgr_new).astype(np.float32))
cv2.imshow('float32', merged_float32)
cv2.waitKey()
merged = cv2.merge(np.array(bgr_new))
cv2.imwrite('Lenna_output.jpg', merged)
lenna_output = cv2.imread("./Lenna_output.jpg")
cv2.imshow('imwrite and imread', lenna_output)
cv2.waitKey()
Результат выглядит следующим образом:
Последнее изображение, обработанное с помощью cv2.imwrite()
, - это то, что Я хочу. Но как я могу получить тот же результат, что и предыдущий, без необходимости cv2.imwrite()
it