Pythonでcsv.writerで出力した輝度値の分布に座標を付与させたい

実現したいこと

Pythonのcsv.writerでの数値を入力する方法についてご教示ください.画像を読み込んで輝度をcsvファイルに出力するプログラムにx,y座標を合わせて出力したいです.
下の画像の肌色の部分を挿入できればと考えています.

現状
10, 20, 25
10, 46, 17
94, 34, 12

やりたいこと
0, 1, 2, 3
1, 10, 20, 25
2, 10, 46, 17
3, 94, 34, 12
イメージ説明

前提

1つのセルに1ピクセルの輝度値が順番に出力されているので,x,y座標を示すセルがないことが現状の課題となっております.輝度はcsv.writerで出力しています.

該当のソースコード

Python

1import csv 2from PIL import Image 3import cv2 4import numpy as np 5import glob 6 7# 画像読込8 9for i in range(0, 7201, 30):10 # 画像読込 11 img = Image.open("img_000"+str(i)+".png")12 13 # モノクロ画像へ変換14 img = img.convert("L")15 16 width=72017 height=48018 ########################################################19 # 輝度値の取得、CSVファイルに保存20 21 # 画像の輝度値をlistで取得22 data = list(img.getdata())23 24 # 輝度値をCSVファイルで保存25 with open('image_data'+str(i)+'.csv', 'w+', newline='') as csvfile:26 spamwriter = csv.writer(csvfile)27 28 # 画像データを一行ごと書き込み29 x = 030 for y in range(height):31 # 一行分のデータ32 line_data = data[x:x+width]33 # 一行分のデータを書き込み34 spamwriter.writerow(line_data)35 x += width

試したこと

writerow() で指定した数字を入力する方法を試しましたが,今後のためにもできれば変数を使って解決したいと考えています.

コメントを投稿

0 コメント