在Colab上训练yolov3(一)

用Colab的好处:
电脑搭建cuda环境需要有nvidia显卡(我没有),但在colab上不用搭环境,而且免费,非常友好。

步骤:

1、登录谷歌硬盘:https://drive.google.com
2、在谷歌硬盘空白处点击鼠标右键,选择更多->关联更多应用;
在这里插入图片描述
3、在搜索框输入cloaboratory,找到软件并安装。
在这里插入图片描述
4、进入Colab,回到谷歌硬盘截面,再次在空白区点击鼠标右键,选择更多,此时发现Colab已经安装,打开即可。
在这里插入图片描述
5、打开界面如下,并点击右上角连接等待连接成功。
在这里插入图片描述
6、左上角修改,打开笔记本设置,选择GPU。
在这里插入图片描述
在这里插入图片描述

7、按照下图顺序点击,在弹出窗口选择连接到Google云端硬盘,左边出现文件目录drive。
在这里插入图片描述
出现drive
在这里插入图片描述
8、点击“+”添加代码,下载示例程序,点三角形运行。

!git clone https://github.com/AlexeyAB/darknet

在这里插入图片描述
9、配置一下

%cd darknet
!sed -i 's/OPENCV=0/OPENCV=1/' Makefile
!sed -i 's/GPU=0/GPU=1/' Makefile
!sed -i 's/CUDNN=0/CUDNN=1/' Makefile

在这里插入图片描述
10、编译(有点慢,需要一分钟左右)

!make

在这里插入图片描述
11、下载coco数据及上预训练的权重(需要保证网络畅通,不然会特别特别慢)。

!wget https://pjreddie.com/media/files/yolov3.weights

在这里插入图片描述
12、添加显示、上传、下载文件的代码。

# 显示
def imShow(path):
  import cv2
  import matplotlib.pyplot as plt
  %matplotlib inline

  image = cv2.imread(path)
  height, width = image.shape[:2]
  resized_image = cv2.resize(image,(3*width, 3*height), interpolation = cv2.INTER_CUBIC)

  fig = plt.gcf()
  fig.set_size_inches(18, 10)
  plt.axis("off")
  plt.imshow(cv2.cvtColor(resized_image, cv2.COLOR_BGR2RGB))
  plt.show()

# 上传文件
def upload():
  from google.colab import files
  uploaded = files.upload() 
  for name, data in uploaded.items():
    with open(name, 'wb') as f:
      f.write(data)
      print ('saved file', name)

# 下载文件 
def download(path):
  from google.colab import files
  files.download(path)

在这里插入图片描述
13、到这里全部的工作已经完成了。检测一下环境然后使用官方提供的照片进行试验并显示(训练过程较慢,耐心等待即可)。

%cd /content/darknet
!./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
imShow('predictions.jpg')

在这里插入图片描述
结果如下:
在这里插入图片描述
截止到这里已经完成啦,如果想要训练自己的图片,可以接着往下看。

14、运行下面代码,然后到自己存有图片的磁盘中上传自己的图片

%cd ..
upload()

在这里插入图片描述
上传好后:
在这里插入图片描述

扫描二维码关注公众号,回复: 15664397 查看本文章

15、运行加载代码,将图片名改为自己的。

%cd darknet
!./darknet detect cfg/yolov3.cfg yolov3.weights ../3.jpg
imShow('predictions.jpg')

在这里插入图片描述

16、效果显示:
这是原图:
在这里插入图片描述
这是输出的图:
在这里插入图片描述
完成。

猜你喜欢

转载自blog.csdn.net/weixin_43737995/article/details/124461534