首页 > 解决方案 > 从颜色直方图创建 CSV 数据表

问题描述

我有一个简单的程序来抓取图像并绘制其蓝色和绿色像素直方图。我得到了情节,但我想在情节上做一些数据科学。有没有一种简单的方法可以将绘图转换为表格,我可以从.csv 复制和粘贴或直接粘贴到.csv?

import tkinter as tk
from tkinter import filedialog

root = tk.Tk()
root.withdraw()

file_path = filedialog.askopenfilename()

import cv2
import numpy as np
from matplotlib import pyplot as plt

img = cv2.imread(file_path)
color = ('b','g')
for i,col in enumerate(color):
    histr = cv2.calcHist([img],[i],None,[256],[0,256])
    plt.plot(histr,color = col)
    plt.xlim([0,256])
plt.show()

标签: pythonpython-3.x

解决方案


cv2.imread()返回一个 numpy 数组,您可以将其保存到文件中,默认为二进制格式。要获取 CSV 格式的文本文件,请使用以下sep参数:

img.tofile('image.csv', sep=',')

有关更多信息,请参阅官方文档


推荐阅读