Windows PowerShell运行YOLOv3训练命令报错:./darknet未识别
Windows PowerShell运行YOLOv3训练命令报错的解决方法
问题详情
执行的训练命令:
./darknet detector train DATASET/voc.data cfg/yolov3-voc.cfg darknet53.conv.74
报错信息:
./darknet : The term './darknet' is not recognized as the name of a cmdlet, function, script file, or operable
program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1
- ./darknet detector train DATASET/voc.data cfg/yolov3-voc.cfg darknet5 ...
+ CategoryInfo : ObjectNotFound: (./darknet:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
解决步骤
确认Windows下的可执行文件名称
Windows环境编译后生成的不是darknet,而是darknet.exe,且路径写法与Linux不同,必须使用.exe后缀。切换到darknet.exe所在目录执行命令
先通过cd命令进入darknet.exe的存放路径(示例路径需替换为你本地实际路径):cd C:\your-path\darknet-master\build\darknet\x64再执行带
.exe后缀的命令,同时调整相对路径适配当前目录:.\darknet.exe detector train ..\..\..\DATASET\voc.data ..\..\..\cfg\yolov3-voc.cfg ..\..\..\darknet53.conv.74使用绝对路径直接调用
若不想切换目录,直接用darknet.exe的完整绝对路径执行,同时把所有配置文件的路径也换成绝对路径:C:\your-path\darknet-master\build\darknet\x64\darknet.exe detector train C:\your-path\DATASET\voc.data C:\your-path\cfg\yolov3-voc.cfg C:\your-path\darknet53.conv.74检查是否完成darknet编译
如果找不到darknet.exe,说明未完成Windows环境下的编译。需用Visual Studio打开darknet工程文件(通常是darknet-master\build\darknet\darknet.sln),选择Release+x64配置,编译生成可执行文件。
内容的提问来源于stack exchange,提问作者Piyush Joshi
相关产品推荐
相关产品推荐

