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

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(看了之后没有选择改变原来的网络,而选用了现在的方法)

相关文章:

  • 2022-12-23
  • 2021-11-01
  • 2021-08-10
  • 2021-08-24
  • 2022-02-25
  • 2021-08-24
  • 2021-04-21
  • 2022-01-11
猜你喜欢
  • 2021-12-08
  • 2021-12-10
  • 2022-01-23
  • 2022-12-23
  • 2021-06-17
  • 2021-09-21
相关资源
相似解决方案