/bin/bash: ./darknet: 权限被拒绝

/bin/bash: ./darknet: Permission denied

我使用 Roboflow's 教程创建了一个对象检测模型,并拥有所有已保存的权重。我遇到的一个问题是将它部署在 Google Colaboratory 中。我已经更改了一些代码,但它似乎不起作用。所以简而言之,模型已经训练好了。

如何在另一个 Google Colaboratory 中使用该模型?我直接下载了整个darknet文件夹到环境,一些绘图函数然后运行:

然后

!./darknet detect cfg/custom-yolov4-detector.cfg backup/custom-yolov4-detector_last.weights {img} #-dont-show

只能得到:

/bin/bash: ./darknet: 权限被拒绝

有什么建议吗?

您没有该脚本的执行权限,您需要执行 chmod +x darknet

只需在您的命令前添加: !chmod +x ./darknet

在这个 tutorial 的第 4 步中,您将找到命令 !chmod +x ./darknet。根据您的目录,您可能需要 运行 !chmod +x ./darknet/darknet。这取决于您的文件夹结构。为我工作。

如果您的文件已经使用 !make 命令编译,则使用 !chmod +x ./darknet/darknet 否则先编译它然后使用 !chmod +x ./darknet/darknet

如果还是不行,删除整个darknet包,然后重新克隆。

需要重新运行 darknet !make 文件

%cd /your_path/
!sed -i 's/OPENCV=0/OPENCV=1/g' Makefile
!sed -i 's/GPU=0/GPU=1/g' Makefile
!sed -i 's/CUDNN=0/CUDNN=1/g' Makefile
!sed -i "s/ARCH= -gencode arch=compute_60,code=sm_60/ARCH= ${ARCH_VALUE}/g" Makefile
!make

使用 make 函数编译暗网

!make

别忘了更改 makefile

GPU=1
CUDNN=1
OPENCV=1