python如何读取照片_python打开图片路径

python如何读取照片_python打开图片路径在 Python 中读取图片数据集 你可以使用多种库 以下是几种常用的方法 使用 PIL 库 Python Imaging Library pythonfrom PIL import Imageimport glob 获取目录下所有图片的文件路径 image dir path to images image files glob glob image dir

在Python中读取图片数据集,你可以使用多种库,以下是几种常用的方法:

使用PIL库(Python Imaging Library)

python

from PIL import Image

import glob

获取目录下所有图片的文件路径

image_dir = '/path/to/images'

image_files = glob.glob(image_dir + '/*.jpg') 可根据具体的图片格式进行修改

批量读取图片

images = []

for file in image_files:

image = Image.open(file)

images.append(image)

处理图片...

使用OpenCV库

python

import cv2

import glob

获取目录下所有图片的文件路径

image_dir = '/path/to/images'

image_files = glob.glob(image_dir + '/*.jpg') 可根据具体的图片格式进行修改

批量读取图片

images = []

for file in image_files:

image = cv2.imread(file)

images.append(image)

处理图片...

使用Matplotlib库

python

import matplotlib.pyplot as plt

import glob

获取目录下所有图片的文件路径

image_dir = '/path/to/images'

image_files = glob.glob(image_dir + '/*.jpg') 可根据具体的图片格式进行修改

批量读取图片

images = []

for file in image_files:

image = plt.imread(file)

images.append(image)

处理图片...

使用GDAL库

python

from osgeo import gdal

def get_data(filepath):

打开数据集

ds = gdal.Open(filepath)

获取数据宽度

ds_width = ds.RasterXSize

获取数据高度

ds_height = ds.RasterYSize

获取波段数

ds_bands = ds.RasterCount

获取仿射地理变换参数

ds_geo = ds.GetGeoTransform()

获取投影信息

ds_prj = ds.GetProjection()

print(f'影像的宽度为: {ds_width}')

print(f'影像的高度为: {ds_height}')

print(f'波段数为: {ds_bands}')

print(f'投影信息为: {ds_prj}')

使用requests和BeautifulSoup抓取网页上的图片数据

python

import requests

from bs4 import BeautifulSoup

发起请求

url = 'https://example.com' 替换为你要抓取图片的网页URL

response = requests.get(url)

解析网页内容

soup = BeautifulSoup(response.text, 'html.parser')

找到所有的图片标签

img_tags = soup.find_all('img')

遍历图片标签,获取图片链接并保存

for img_tag in img_tags:

img_url = img_tag['src']

img_data = requests.get(img_url).content

替换为适当的文件路径和文件名

with open('/path/to/save/image.jpg', 'wb') as f:

f.write(img_data)

使用base64解码图片数据

python

import base64

from PIL import Image

假设有一个Base64编码的图片字符串

base64_str = 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAAAAAAAD/4gIoSUNDX1BST0ZJTEUAAQEAAAIYAAAAAAIQAABtbnRyUkdCIFhZJiouMjY7...(此处省略其他Base64编码的内容)' 替换为实际的Base64编码字符串

去掉前缀

base64_data = base64_str.split(',')

解码Base64数据

image_data = base64.b64decode(base64_data)

保存图片

with open('/path/to/save/image.jpg', 'wb') as f:

f.write(image_data)

以上方法可以根据具体需求选择适合的方法进行使用。需要注意的是,对于网页图片的抓取,请确保遵循网站的版权和使用规定

编程小号
上一篇 2026-05-13 17:56
下一篇 2026-05-13 17:51

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/42125.html