使用python将图像像素信息通过表格输出
csv文件格式介绍
CSV(逗号分隔值)文件是一种特殊的文件类型,可在Excel 中创建或编辑。 CSV 文件不是采用多列的形式存储信息,而是使用逗号分隔的形式存储信息。 将文本和数字保存在CSV 文件中时,可轻松将它们从一个程序移动至另一个程序。
使用csv以及opencv库进行图片像素信息提取
- 从灰度图片中提取最大最小以及平均灰度并写入csv文件
import cv2
import os
import csv
# 定义要处理的文件夹路径
folder_path = ''
# 定义CSV文件路径
csv_path = ''
# 定义CSV文件的表头
header = ['Image Name', 'Average Gray', 'Max Gray', 'Min Gray']
# 初始化CSV文件,并写入表头
with open(csv_path, 'w', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow(header)
# 遍历文件夹中的所有图像文件
for filename in os.listdir(folder_path):
# 读取图像文件
img_path = os.path.join(folder_path, filename)
img = cv2.imread(img_path)
# 转换为灰度图像
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 计算平均灰度值、最大灰度值和最小灰度值
avg_gray = cv2.mean(gray_img)[0]
(min_gray, max_gray, _, _) = cv2.minMaxLoc(gray_img)
# 将结果写入CSV文件
with open(csv_path, 'a', newline='') as csvfile:
writer = csv.writer(csvfile)
writer.writerow([filename, avg_gray, max_gray, min_gray])
以下为效果图,可以通过excel自带的排序和公式功能方便快捷的找到整个文件夹下图片极值与平均值
结尾
欢迎大家在评论区讨论、学习!
B站:Silver__Wolf_
Q:130856474