python将图片转换为二维数组
时间: 2024-09-17 22:03:21 浏览: 56
Python实现二维数组输出为图片
在Python中,我们可以使用PIL(Python Imaging Library)或其更现代的替代品Pillow库来将图片转换为二维数组。这两个库都支持读取图像文件并将其内容表示为像素矩阵。
```python
from PIL import Image
def image_to_array(img_path):
# 打开图片
img = Image.open(img_path)
# 将图片转换为灰度图(如果需要),因为彩色图像可以转换为灰度后简化处理
img_gray = img.convert('L') if img.mode != 'L' else img
# 获取图像的宽度和高度
width, height = img_gray.size
# 将像素数据转换为二维列表
pixel_list = list(img_gray.getdata())
# 每个像素是一个单色值(例如8位灰度图像有0-255的范围)
# 所以像素列表实际上是形状为(高度, 宽度)的二维数组
pixel_array = [row for row in zip(*[iter(pixel_list)] * width)]
return pixel_array
# 使用示例
img_path = "example.jpg"
array = image_to_array(img_path)
```
阅读全文