探究灰度图像对目标检测测试结果影响----RGB转灰度图像、灰度图像扩充成三通道

一、问题:直接将转好的灰度图像输入神经网络,发现

FileNotFoundError: [Errno 2] No such file or directory: 'home/JPEGImages/Image_24.jpg'

二、分析:灰度图像只有一个通道,而RGB有三个通道

三、解决:将一个通道的灰度图像,复制两次,得到三通道所需图像

import cv2
import os
from PIL import Image
import numpy as np
file_dir='home/JPEGImages2/' #'输入文件夹/'
out_dir = 'home/JPEGImages/' #'输出文件夹/'
a = os.listdir(file_dir)
# img = Image.open("home/img/Image_01.jpg") #单个图像打开方法

for i in a:
print(i)
I = Image.open(file_dir + i)
L = I.convert('L')
a= np.array(L) # 转化成numpy数组
image = np.expand_dims(a, axis=2)
image = np.concatenate((image, image, image), axis=-1) # axis=-1就是最后一个通道
# image.save(out_dir + i) #保存图片(将图像保存成图像)
cv2.imwrite(out_dir + i, image) # 保存图片(将数组保存成图像)
# print(image)

参考链接:

https://blog.csdn.net/zgcr654321/article/details/88015327(数组保存成图像几种方法,他也有附参考stackoverflow的)

https://stackoom.com/question/3WAWn/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E5%B8%A6%E6%9C%89%E7%81%B0%E5%BA%A6%E5%9B%BE%E5%83%8F%E7%9A%84%E9%A2%84%E5%85%88%E8%AE%AD%E7%BB%83%E7%9A%84%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C(看了之后没有选择改变原来的网络,而选用了现在的方法)

猜你喜欢

转载自www.cnblogs.com/wywshtc/p/12699028.html