我对 Python 和深度学习标记数据还很陌生。我已经安装了 Labelimg 程序来标记自定义数据集,但当我创建 YOLO 训练样本时,它一直崩溃。每次打开程序并指定图像目录时,我都可以浏览图像,但是当我创建边界框并尝试单击“下一个图像”按钮时,它会崩溃并显示错误消息。
作为注释,我关注了 this安装 Labelimg 的教程。
以下是我创建错误的方法:
- 打开 Anaconda 提示
- 激活之前在 conda 中创建的 labelimg 环境
conda 激活 labelimg
- 指定解压后的 labelimg 文件夹的位置
cd D:\labelimg
- 打开 python 脚本,然后是图像目录的位置、先前创建的带有标签名称 (weed) 的文本文件以及先前创建的带有其中类名称 (weed) 的文本文件:
python labelimg.py D:\photo_directory D:\label.txt D\:classes.txt
然后程序打开,显示以下内容:
请注意,我正在尝试将样本导出为 YOLO 训练样本。图片的名称是“weed0”。每当我创建示例并单击“下一个图像”按钮时,程序就会崩溃并出现以下错误:
Traceback (most recent call last):
File "labelimg.py", line 1299, in openNextImg
self.saveFile()
File "labelimg.py", line 1339, in saveFile
self._saveFile(savedPath)
File "labelimg.py", line 1371, in _saveFile
if annotationFilePath and self.saveLabels(annotationFilePath):
File "labelimg.py", line 837, in saveLabels
self.lineColor.getRgb(), self.fillColor.getRgb())
File "D:\labelimg\libs\labelFile.py", line 89, in saveYoloFormat
writer.save(targetFile=filename, classList=classList)
File "D:\labelimg\libs\yolo_io.py", line 64, in save
out_file = codecs.open(targetFile, 'w', encoding=ENCODE_METHOD)
File "D:\anaconda3\envs\labelimg\lib\codecs.py", line 898, in open
file = builtins.open(filename, mode, buffering)
FileNotFoundError: [Errno 2] No such file or directory: 'D:\\weed0.txt'
如何才能保证导出YOLO训练样本时程序不崩溃?我已经完成了所有操作,但重新安装了该程序,这对我来说没有意义,因为我刚刚下载了它。
最佳答案
只需删除位于 C:\Users\your_account.labelImgSettings.pkl 的文件 .labelImgSettings.pkl,删除此文件并再次打开该工具即可。
关于python - 尝试导出 YOLO 训练样本时 Labelimg 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63929874/