41 lines
1.3 KiB
Python
41 lines
1.3 KiB
Python
# -*- coding: utf-8 -*-
|
|
import os.path as osp
|
|
import shutil
|
|
import os
|
|
from tqdm import tqdm
|
|
import cv2
|
|
|
|
# 此函數將原始的紅色圖像轉換為黑白的二值圖像
|
|
def gt2png(folder_path="C:/Users/chenmingsong/Desktop/unetnnn/data/Training_GT", save_folder="C:/Users/chenmingsong/Desktop/unetnnn/data/Training_Labels"):
|
|
# folder_path = osp.join(sys_path, "ISBI2016_ISIC_Part1_Training_GroundTruth")
|
|
# save_folder = osp.join(sys_path, "labels")
|
|
|
|
# 如果儲存資料夾已存在,則刪除後重新建立
|
|
if osp.isdir(save_folder):
|
|
shutil.rmtree(save_folder)
|
|
os.makedirs(save_folder)
|
|
else:
|
|
os.makedirs(save_folder)
|
|
|
|
images = os.listdir(folder_path)
|
|
|
|
# 使用進度條顯示轉換進度
|
|
with tqdm(total=len(images)) as pbar:
|
|
for image in images:
|
|
image_name = image.split(".")[0]
|
|
src_path = osp.join(folder_path, image)
|
|
# 讀取圖像,將其轉換為灰階模式
|
|
img = cv2.imread(src_path, 0)
|
|
# 將非零像素設為 255
|
|
img[img > 0] = 255
|
|
save_path = osp.join(save_folder, image_name + ".png")
|
|
# 儲存轉換後的圖像
|
|
cv2.imwrite(save_path, img)
|
|
pbar.update(1)
|
|
|
|
print("標籤轉換完成")
|
|
|
|
|
|
if __name__ == '__main__':
|
|
gt2png()
|