python工具包读取图片及格式转换

本文介绍了Python中使用PIL和OpenCV读取图片,以及如何处理通道问题和显示图片。针对OpenCV读取图片的BGR顺序,讨论了通过transpose和transforms.ToTensor方法转换通道顺序以适应Tensorboard显示。

关于python怎么读取文件,一直没搞清楚,最近使用tensorboard,搞明白了

1导包和设置图片位置

from PIL import Image
from torch.utils.tensorboard import SummaryWriter
import matplotlib.pyplot as plt
import numpy as np
import cv2
import torch
import torchvision.transforms as transforms

# 使用的图片是著名的蜜蜂蚂蚁数据集,不用多说了
img_path = 'D:/ml/data/hymenoptera/train/ants/9715481_b3cb4114ff.jpg'

1.读取文件

我接触过的有主要两种

(1)使用PIL

img_PIL = Image.open(img_path)
print(type(img_PI))  
# output:  <class 'PIL.JpegImagePlugin.JpegImageFile'>

(2)使用opencv

img_cv2 = cv2.imread(img_path)
print(type(img_cv2))  # <class 'numpy.ndarray'>

两种方式的区别之一是读取后img的格式不同,PIL读出来的img是PIL格式,cv2读出来的是numpy.ndarry格式。确认一下shape

print(img_cv2.shape)
# output : (333, 500, 3)

2.图片显示

(1)imshow方法

使用ma

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值