Laden Sie eine RGB-Bilddatei und speichern Sie sie im Graustufen- und CSV-Format Es scheint eine gefragte Nische zu sein, daher ist die Farbe meines eigenen Memos stark.
google colaboratory
https://newtechnologylifestyle.net/%E7%94%BB%E5%83%8F%E3%83%87%E3%83%BC%E3%82%BF%E3%81%8B%E3%82%89numpy%E5%BD%A2%E5%BC%8F%E3%81%AB%E5%A4%89%E6%8F%9B%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/ Ich habe es als Referenz verwendet.
from PIL import Image
import os, glob
import numpy as np
#Bitte passen Sie sich hier Ihrer eigenen Umgebung an
files = glob.glob(path + "/" + class_names[1] + "/" + "*.png ")
img_list = []
image = Image.open(files[0])
# image = image.convert("RGB")
image = image.convert("L")
data = np.asarray(image) # <class 'numpy.ndarray'> (33, 13, 3)
print(data)
print(type(data))
print(data.shape)
from matplotlib import pyplot as plt
plt.imshow(data, cmap="gray")
plt.show()
img_list.append(data) # <class 'list'>
print(type(img_list))
img_list = np.array(img_list) # <class 'numpy.ndarray'> shape(1, 33, 13, 3)
plt.imshow(img_list[0], cmap="gray")
plt.show()
import pandas as pd
df = pd.DataFrame(data)
save_path = drive_root_dir + "/xxxxxxx/data/" + "train.csv"
df.to_csv(save_path, encoding="")
Fügen Sie anschließend den Vorgang zum Hinzufügen von Bildern zu img_list hinzu. Die dritten 3 in (33, 13, 3) repräsentierten RGB. Ich habe es endlich verstanden.
Ich möchte es zu den train.csv-Daten des Bildes machen, also ändere ich die Stelle, an der es hinzugefügt wird, indem ich es an den Listentyp anhänge. Dieser Code hat auch einen starken Charakter für mein eigenes Memo, daher lasse ich auch einen Kommentar zur Bestätigung aus.
from matplotlib import pyplot as plt
from PIL import Image
import os, glob
import numpy as np
files = glob.glob(path + "/" + class_names[1] + "/" + "*.png ")
img_list = []
for i, file in enumerate(files):
image = Image.open(file)
image = image.convert("L")
data = np.asarray(image) # <class 'numpy.ndarray'> (33, 13, 3)
# print(data)
# print(type(data))
# print(data.shape)
# plt.imshow(data, cmap="gray")
# plt.show()
img_list.append(data) # <class 'list'>
# print(type(img_list))
# img_list = np.array(img_list) # <class 'numpy.ndarray'> shape(1, 33, 13, 3)
plt.imshow(img_list[i], cmap="gray")
plt.show()
if i == 3: #Ich möchte es nur testen, damit ich kaputt gehe
break
import pandas as pd
df = pd.DataFrame(img_list)
save_path = drive_root_dir + "/xxxxx/data/" + "train.csv"
df.to_csv(save_path, encoding="")
print("end")
Recommended Posts