一、问题:直接将转好的灰度图像输入神经网络,发现
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/jacke121/article/details/80086866(python单通道转3通道)
https://blog.csdn.net/wp1988/article/details/86062473(RGB变单通道灰度图像)
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(看了之后没有选择改变原来的网络,而选用了现在的方法)
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:探究灰度图像对目标检测测试结果影响—-RGB转灰度图像、灰度图像扩充成三通道 - Python技术站