簡體   English   中英

如何對數據集的文件名進行排序,我使用 glob.glob('path/*.png')

[英]How do I sort the filenames for a dataset, I got the names using glob.glob('path/*.png')

圖片

你好。 我正在嘗試加載數據集,我想將文件名排序為 1、2、3 ...,但我將它們作為 1、10、100、1000 ....,正如您在圖像中看到的那樣? 我應該如何完成它?

filenames = glob.glob("/content/path/train/*.png")
filenames.sort()
images = [cv2.imread(img) for img in filenames]

嗯,這是字母順序...如果您知道名稱都是數字,那么您可以提供一個key function 到.sort()使用您想要的順序。

def bynumber(fn):
    return int(os.path.basename(fn)[:-4])
...
filenames.sort( key=bynumber )

或者:

filenames.sort( key=lambda fn: int(os.path.basename(fn)[:-4]) )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM