制作一个获取图片内容坐标的程序,保存的坐标文件格式为.csv
时间: 2024-03-17 08:42:52 浏览: 51
data_matlab_数据坐标提取_图片提取数据_
5星 · 资源好评率100%
好的,以下是一个Python示例程序,可以获取输入图片中所有非空像素的坐标,并将坐标保存到CSV文件中:
```python
from PIL import Image
import numpy as np
import csv
# 加载图像
img = Image.open("input.png")
# 将图像转换为numpy数组
data = np.array(img)
# 获取非空像素的坐标
non_empty_indices = np.where(data != 0)
non_empty_coords = list(zip(non_empty_indices[1], non_empty_indices[0]))
# 将坐标保存到CSV文件中
with open("output.csv", "w", newline="") as f:
writer = csv.writer(f)
writer.writerow(["x", "y"])
writer.writerows(non_empty_coords)
```
这个程序使用了PIL库和numpy库,首先加载输入图像,然后将图像转换为numpy数组。接着,使用numpy库中的where()函数找到所有非空像素的坐标,并将坐标保存到一个列表中。
最后,使用Python内置的csv模块将坐标列表写入到CSV文件中。写入CSV文件时,需要先写入一个包含列标题的行,然后使用writerows()函数将所有行写入到文件中。
请将程序中的"input.png"替换为您要处理的图像文件名,将"output.csv"替换为您要保存的CSV文件名。程序将在同一目录下生成保存了坐标的CSV文件。
阅读全文