上一篇
Python加载图片尺寸的4种方法 - 详细教程与代码示例
- Python
- 2025-08-03
- 649
Python图片尺寸加载完全指南
学习使用多种Python库获取图片尺寸的详细方法
为什么需要获取图片尺寸?
在图像处理和计算机视觉应用中,获取图片尺寸(宽度和高度)是最基础的操作之一。无论是调整图片大小、创建缩略图、图像分析还是深度学习预处理,都需要首先获取图片的尺寸信息。
网页设计
确保响应式布局中图片比例正确,避免布局偏移
计算机视觉
图像处理前的基本信息获取,是后续处理的基础
数据分析
批量处理图片数据集时获取元信息
使用Pillow库获取图片尺寸
Pillow是Python中最流行的图像处理库,是PIL(Python Imaging Library)的分支和升级版。
安装方法:
pip install Pillow
示例代码:
from PIL import Image # 打开图像文件 img = Image.open('example.jpg') # 获取图片尺寸 width, height = img.size print(f"图片宽度: {width} 像素") print(f"图片高度: {height} 像素") print(f"图片模式: {img.mode}") # 输出图像模式(如RGB、RGBA等)
优点: 简单易用,轻量级,支持多种图像格式
缺点: 功能相对基础,不适合复杂的计算机视觉任务
使用OpenCV获取图片尺寸
OpenCV是计算机视觉领域最流行的库,提供了丰富的图像处理功能。
安装方法:
pip install opencv-python
示例代码:
import cv2 # 读取图像 img = cv2.imread('example.jpg') # 获取图片尺寸 height, width, channels = img.shape print(f"图片宽度: {width} 像素") print(f"图片高度: {height} 像素") print(f"通道数: {channels}") # 彩色图像通常为3(BGR),灰度图为1
注意: OpenCV使用BGR颜色空间而不是RGB,处理时需注意转换
其他方法
使用Matplotlib
import matplotlib.pyplot as plt img = plt.imread('example.jpg') height, width, channels = img.shape print(f"尺寸: {width}x{height}")
使用Scikit-image
from skimage import io img = io.imread('example.jpg') height, width, channels = img.shape print(f"尺寸: {width}x{height}")
方法比较
方法 | 安装大小 | 速度 | 功能丰富度 | 适用场景 |
---|---|---|---|---|
Pillow | 小 | 快 | 基础 | 简单图像处理 |
OpenCV | 大 | 非常快 | 非常丰富 | 计算机视觉项目 |
Matplotlib | 中 | 中 | 中等 | 数据可视化 |
Scikit-image | 中 | 快 | 丰富 | 科研图像处理 |
最佳实践建议
- 简单任务使用Pillow:如果只需要获取尺寸或简单处理
- 计算机视觉项目使用OpenCV:需要高级功能时
- 处理网络图片:结合requests和Pillow
- 批量处理:使用Pillow或OpenCV,避免重复加载
本文由JingXin于2025-08-03发表在吾爱品聚,如有疑问,请联系我们。
本文链接:https://521pj.cn/20257190.html
发表评论