import cv2 from skimage.io import imsave import glob # 有助于文件的遍历 import matplotlib.pyplot as plt plt.rcParams['font.sans-serif']=['simhei'] # 添加中文字体为简黑 plt.rcParams['axes.unicode_minus'] =False import os # In[2]:图像处理 # (1)获取指定文件夹的图像文件名列表 str1 = '01ImagesIN/' str2 = '01ImagesOUT/' img_list = glob.glob(str1 + '*.png') img_list = img_list + glob.glob(str1 + '*.jpg') img_list = img_list + glob.glob(str1 + '*.jpeg') # (2)遍历文件名列表的每个文件 for i, img_path in enumerate(img_list): # A.以灰度模式读取原始图像、可视化 # cv2.IMREAD_COLOR:加载彩色图片,这个是默认参数,可以直接写1。 # cv2.IMREAD_GRAYSCALE:以灰度模式加载图片,可以直接写0。 # cv2.IMREAD_UNCHANGED:包括alpha,可以直接写-1 print('%d----'%(i+1), img_path) (filepath,tempfilename) = os.path.split(img_path) (Myfilename,extension) = os.path.splitext(tempfilename) # 分离文件名的后缀 # ===后面会使用分离出的文件名Myfilename,生成其它的文件名 imgIn = cv2.imread(img_path) plt.figure(figsize = (10,10)) plt.imshow(imgIn) plt.title('输入图像--'+ Myfilename, size = 20) plt.xticks([]) plt.yticks([]) plt.show() # 将该图像转存为至其它位置,文件名是在Myfilename基础上产生的 imsave(str2+ Myfilename +'_out.jpeg',imgIn )的详解 
时间: 2023-05-22 21:03:23 浏览: 24
这段代码主要是导入了OpenCV和scikit-image库中的一些函数和模块,以便在Python程序中使用它们。
其中,import cv2语句用于导入OpenCV库,该库是一个广泛应用的计算机视觉库,提供了丰富的图像处理、分析和机器学习功能。
从skimage.io模块中导入了imsave函数,该函数用于保存图像。glob模块则用于匹配文件路径,可以帮助程序自动批量处理多个文件。
相关问题
skimage.io.imsave
skimage.io.imsave 是一个函数,用于将 NumPy 数组或 PIL.Image 对象保存为图像文件。该函数的语法为:
```python
skimage.io.imsave(fname, arr, plugin=None, check_contrast=True, **plugin_args)
```
其中,fname 是保存的文件名(包括路径和扩展名),arr 是要保存的图像数据,可以是 NumPy 数组或 PIL.Image 对象。plugin 是保存图像时使用的插件,默认为 None,自动选择插件。check_contrast 表示是否检查图像的对比度,默认为 True。plugin_args 是传递给插件的参数。
例如,要将 NumPy 数组保存为 JPEG 格式的图像文件,可以使用以下代码:
```python
from skimage import io
import numpy as np
# 生成一个随机数组
arr = np.random.rand(100, 100)
# 将数组保存为 JPEG 图像文件
io.imsave('test.jpg', arr)
```
skimage.io.imsave保存png
要将 NumPy 数组或 PIL.Image 对象保存为 PNG 图像文件,可以使用 skimage.io.imsave 函数,并将文件名的扩展名设置为 ".png"。例如:
```python
from skimage import io
import numpy as np
# 生成一个随机数组
arr = np.random.rand(100, 100)
# 将数组保存为 PNG 图像文件
io.imsave('test.png', arr)
```
如果要将 PIL.Image 对象保存为 PNG 图像文件,可以先将其转换为 NumPy 数组,然后再使用 skimage.io.imsave 函数保存为 PNG 图像文件。例如:
```python
from skimage import io
from PIL import Image
# 打开图像文件
img = Image.open('test.jpg')
# 将 PIL.Image 对象转换为 NumPy 数组
arr = np.array(img)
# 将数组保存为 PNG 图像文件
io.imsave('test.png', arr)
```
注意,PNG 图像文件支持透明度通道,因此如果要保存带有透明度通道的图像,需要将数组的 dtype 设置为 np.uint8 或 np.uint16,并且通道数必须是 3 或 4。如果通道数是 3,则表示没有透明度通道;如果通道数是 4,则最后一个通道表示透明度通道。
相关推荐













