+1
Tối ưu bộ nhớ khi convert từ ảnh sang array
Chào mọi người. Mình có hàm convert ảnh như dưới.
def create_grayscale_image(img):
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
hsv = np.array(hsv, dtype=np.float64)
hsv[:, :, 2] = hsv[:, :, 2] * 1.5
hsv[:, :, 2][hsv[:, :, 2] > 255] = 255
img_gray = cv2.cvtColor(np.array(hsv, dtype=np.uint8), cv2.COLOR_HSV2BGR)
img_gray = cv2.cvtColor(img_gray, cv2.COLOR_BGR2GRAY)
img_gray = cv2.cvtColor(img_gray, cv2.COLOR_GRAY2BGR)
return img_gray
Nhưng xử lý ở dòng hsv[:, :, 2] = hsv[:, :, 2] * 1.5
khá là tốn bộ nhớ dẫn đến trường hợp lúc xử lý ảnh lớn thì bị kill.
Các cao nhân cho mình hỏi có hướng nào khắc phục không ạ ?
Cảm ơn mọi người đã đọc.
Thêm một bình luận