首页 > 解决方案 > 将图像文件转换为 csv 文件

问题描述

我正在研究日本女性面部表情 (JAFFE) 数据库。您可以在此链接http://www.kasrl.org/jaffe.html上找到数据库. 当我下载数据库时,我得到了一个图片列表。我想将这些图像文件转换为 CSV 文件,但我还是深度学习的新手,我不知道如何操作。有人建议我使用 OpenCV。我应该怎么办?

标签: pythonimage-processing

解决方案


我有一个简单的例子,希望对您有所帮助。

from PIL import Image
import numpy as np
import sys
import os
import csv


def createFileList(myDir, format='.jpg'):
    fileList = []
    print(myDir)
    for root, dirs, files in os.walk(myDir, topdown=False):
        for name in files:
            if name.endswith(format):
                fullName = os.path.join(root, name)
                fileList.append(fullName)
    return fileList
# load the original image
myFileList = createFileList('path/to/directory/')
for file in fileList:
    print(file)
    img_file = Image.open(file)

    # get original image parameters...
    width, height = img_file.size
    format = img_file.format
    mode = img_file.mode

     # Make image Greyscale
     img_grey = img_file.convert('L')
     value = np.asarray(img_grey.getdata(), dtype=np.int).reshape((img_grey.size[1], img_grey.size[0]))


     value = value.flatten()
     print(value)
     with open("img_pixels.csv", 'a') as f:
          writer = csv.writer(f)
          writer.writerow(value)

推荐阅读