import matplotlib.pyplot as plt
import cv2
import os
root = "./data" #Der Ordner, der die Bilder enthält. Bitte entsprechend ändern
lsdir = os.listdir(root)
imgs = []
for l in lsdir:
target = os.path.join(root,l)
img = cv2.imread(target)
img = cv2.cvtColor(img,cv2.COLOR_BGR2RGB) #Farbkonvertierung für die Anzeige im Pyplot
imgs.append(img)
shownumber = 10 #Anzahl der zu arrangierenden Bilder
showaxis = 1
while(showaxis*showaxis < shownumber):
showaxis += 1
cnt = 0
while(1):
#limit = 30
#if cnt >= limit:
# break
fig,axs = plt.subplots(showaxis,showaxis)
ar = axs.ravel()
for i in range(showaxis*showaxis):
ar[i].axis('off')
if i < shownumber:
ar[i].imshow(imgs[cnt])
cnt += 1
plt.show()
shownumber = 9
shownumber = 10
――Ich habe das Gefühl, dass ich mich jedes Mal, wenn ich ein Bild anzeige, über matplotlib
wundere, also wollte ich einen Standard für mich selbst setzen.
cv2.cvtColor
in das RGB-Formatwhile(showaxis*showaxis < shownumber):
showaxis += 1
Beachten Sie, dass aufgrund der Struktur des Codes am Ende definitiv ein Referenzfehler außerhalb des Bereichs auftritt. Ich habe den Fluchtprozess in den Kommentaren geschrieben.
Recommended Posts