Python如何批量读取文件夹图片,裁剪后添加自定义后缀保存到其他目录
你需要修改convertjpg函数中cv2.imwrite对应的文件名生成逻辑,具体调整如下:
修改说明
原代码中直接使用原始文件名保存,你需要先把文件名拆分为主体和后缀,拼接上_augment标识后再写入:
- 保留其他逻辑不变,只需要替换
cv2.imwrite行的内容,或在该行之前添加文件名处理代码 - 注意你当前代码的glob规则匹配的是
.png文件,如果实际存储的是jpg格式,需要同步修改glob的后缀匹配规则
修改后的完整代码
import os.path import glob import cv2 def convertjpg(jpgfile,outdir): src = cv2.imread(jpgfile, cv2.IMREAD_UNCHANGED) try: dst = src[100:500, 200:600] #dst = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY) print(dst.shape) # 以下为新增/修改的文件名处理逻辑 base_name = os.path.basename(jpgfile) name_part, ext_part = os.path.splitext(base_name) new_name = f"{name_part}_augment{ext_part}" cv2.imwrite(os.path.join(outdir, new_name), dst) except Exception as e: print(e) # 如果实际是jpg文件,把下面的*.png改成*.jpg即可 for jpgfile in glob.glob(r'/home/hammad/thyroid/data/Hammad/Hammad/HH_Scans_Prediction/7104220_576_F/OriginalScan/*.png'): convertjpg(jpgfile,r"/home/hammad/thyroid/data/Hammad/Hammad/HH_Scans_Prediction/7104220_576_F/Cropped/")
内容的提问来源于stack exchange,提问作者Hamad Yunis 2330-FETBSEEF14
相关产品推荐
相关产品推荐

