我正在開始我的第一個計算機視覺專案,并希望嘗試影像增強來改進我的資料集。我用 imgaug 嘗試過,一切正常,只要我只顯示它們。但是一旦我將它們保存到檔案中,它們就會變成灰色/藍色。
這是我正在使用的代碼:
import cv2
import imgaug.augmenters as iaa
import imageio as iio
import numpy as np
path = ('C:\\Users\\kathr\\Desktop\\JPG\\cards.jpg')
img = cv2.imread(path)
augmentation= iaa.Sequential([
iaa.Crop(px=(0,2)),
iaa.Flipud(0.5),
iaa.Fliplr(0.5),
iaa.Sometimes(
0.5,
iaa.GaussianBlur(sigma=(0,0.5)),
)] ,
random_order = True)
image = cv2.imread(path)
cv2.imshow('orign', img)
cv2.waitKey(100)
images = np.array([image for _ in range(32)], dtype=np.uint8)
images_aug = augmentation.augment_images(images)
for i in range(32):
iio.imwrite('C:\\Users\\kathr\\Desktop\\Aug\\' str(i) 'aug.jpg', images_aug[i], format= '.jpg')
uj5u.com熱心網友回復:
Opencv 以 B、G、R 順序讀取影像。在保存之前將它們轉換為 R、G、B 將使用 imageio 解決您的問題。查看此帖子以獲取更多資訊。
for i in range(32):
images_aug[i] = cv2.cvtColor(images_aug[i], cv2.COLOR_BGR2RGB)
iio.imwrite('C:\\Users\\kathr\\Desktop\\Aug\\' str(i) 'aug.jpg', images_aug[i], format= '.jpg')
由于您已經在使用 opencv,您也可以直接使用 opencv 保存它們,避免轉換。
for i in range(32):
cv2.imwrite('C:\\Users\\kathr\\Desktop\\Aug\\' str(i) 'aug.jpg', images_aug[i])
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/348691.html
