如何删除没有注释的图片?
How to delete images without annotations?
我有一个包含数千张图片的文件夹。有些图像有一个同名的 txt 文件。例如 abc.jpg 和 abc.txt。我想保留这些图像并删除所有没有 txt 文件的图像。有没有办法做到这一点?
这会将所有 .jpg
、.png
、.jpeg
及其各自的 .txt
文件移动到新文件夹。
import os
import shutil
folderdir = "folder_path"
dirs = os.listdir(folderdir)
for i in dirs:
if i.endswith(".txt"):
txt = i
jpg = str(i.split(".txt")[0]) + ".jpg"
png = str(i.split(".txt")[0]) + ".png"
jpeg = str(i.split(".txt")[0]) + ".jpeg"
try:
shutil.move(folderdir + "/" + jpg, 'dataset')
shutil.move(folderdir + "/" + txt, 'dataset')
except:
try:
shutil.move(folderdir + "/" + png, 'dataset')
shutil.move(folderdir + "/" + txt, 'dataset')
except:
shutil.move(folderdir + "/" + jpeg, 'dataset')
shutil.move(folderdir + "/" + txt, 'dataset')
print("DONE")
我有一个包含数千张图片的文件夹。有些图像有一个同名的 txt 文件。例如 abc.jpg 和 abc.txt。我想保留这些图像并删除所有没有 txt 文件的图像。有没有办法做到这一点?
这会将所有 .jpg
、.png
、.jpeg
及其各自的 .txt
文件移动到新文件夹。
import os
import shutil
folderdir = "folder_path"
dirs = os.listdir(folderdir)
for i in dirs:
if i.endswith(".txt"):
txt = i
jpg = str(i.split(".txt")[0]) + ".jpg"
png = str(i.split(".txt")[0]) + ".png"
jpeg = str(i.split(".txt")[0]) + ".jpeg"
try:
shutil.move(folderdir + "/" + jpg, 'dataset')
shutil.move(folderdir + "/" + txt, 'dataset')
except:
try:
shutil.move(folderdir + "/" + png, 'dataset')
shutil.move(folderdir + "/" + txt, 'dataset')
except:
shutil.move(folderdir + "/" + jpeg, 'dataset')
shutil.move(folderdir + "/" + txt, 'dataset')
print("DONE")