小知識2021/1/22
阿新 • • 發佈:2021-01-23
迴圈遍歷資料夾下的圖片
#directory_name放圖片的資料夾
for filename in os.listdir(directory_name):
image = Image.open(directory_name + "/" + filename)
字典根據鍵key去找值value
dict={'aa': 0, 'bb': 1, 'cc': 2, 'dd': 3, 'ee': 4, 'ff': 5, 'gg': 6}
pring(dict['aa'])
#輸出0
字典根據值value去找鍵key
{'aa': 0, 'bb': 1, 'cc': 2, 'dd': 3, 'ee': 4, 'ff': 5, 'gg': 6, 'hh': 7, 'ii': 8, 'jj': 9, 'kk': 10, 'll': 11, 'mm': 12, 'nn': 13, 'oo': 14, 'pp': 15, 'qq': 16}
#idx=3
h = list(c.keys())[list(c.values()).index(idx)]
#輸出dd
for合併列表中key相同的value值
#合併列表中key相同的value值
[{'00004.jpg': 'ee'}, {'00004.jpg': 'ee'}, { '00081.jpg': 'dd'}, {'401.jpg': 'ff'}, {'404.jpg': 'gg'}, {'404.jpg': 'hh'}, {'584.jpg': 'kk'}, {'584.jpg': 'hh'}, {'584.jpg': 'jj'}, {'985.jpg': 'mm'}, {'985.jpg': 'pp'}]
for _ in dict:
for k, v in _.items():
dic.setdefault(k, []).append(v)
merge=[{k: v}for k, v in dic.items( )]
for讀取合併字典的鍵值key value
#讀取合併字典的鍵值
for _ in merge:
for key,value in _.items():
print(f'圖片{key}檢測結果有:{value}')
[{'00004.jpg': ['ee', 'ee']}, {'00081.jpg': ['dd']}, {'401.jpg': ['ff']}, {'404.jpg': ['gg', 'hh']}, {'584.jpg': ['kk', 'hh', 'jj']}, {'985.jpg': ['mm', 'pp']}]
#將類別名畫在影象上
draw = ImageDraw.Draw(image)
font = ImageFont.truetype("C:\Windows\Fonts\Arial.ttf", 24)
draw.text((120,10),"class:{}".format(h), (255, 0, 0),font=font) # 寫文字,引數為文字新增位置,新增的文字字串,文字顏色,格式
image.save("results/det_results{}".format(filename))