在Ubuntu16.04下使用YOLOv3实现通用物体检测

ubuntu16.04运行YOLOV5并部署 YOLOV5模型运行及工程化部署 阅读详情

使用YOLOv3

环境的准备

数据集的准备

实现步骤

控制台的log日志信息

对模型进行测试

首先使用YOLOv3是因为它属于one-stage的目标检测算法,虽然他检测的精度比faster-RCNN、SSD低一些,但是,yolov3的检测速度是很快的。而我使用yolov3也是在出于时间有限的情况下去进行实验。而且在yolo系列当中,v3的性能要比v2和v1要好,比v4要差,这也是出于后续做yolov4的实验做对比。

我使用的环境是在Ubuntu16.04的系统上,CUDA是10.1

采用的数据集是coco2014数据集,coco数据集共有80个类别,种类相当丰富,也可以使用voc数据来完成通用物体的目标检测,我只使用了train和val,以及instances train-val这三个。没有下载测试集,是因为前3个数据量过大,达到20G,系统内存有点撑不住,所以没下。当然,训练好的模型我直接用网图或者其他图片进行检测也没问题,所以觉得也没必要下载。
下面是我coco数据集的百度网盘下载地址:链接: https://pan.baidu.com/s/1eU8bcrZXfW4SLsASzxzuLQ 提取码: 21kc

当然,你也可以根据GitHub中下载的yolov3里的get_coco_dataset.sh一个下载coco数据集的脚本文件进行下载(不推荐:数据量大,网不好这会断开连接),如图所示

#!/bin/bash

# Clone COCO API
git clone https://github.com/pdollar/coco
cd coco

mkdir images
cd images

# Download Images
#very slow downloading
#wget -c https://pjreddie.com/media/files/train2014.zip
#wget -c https://pjreddie.com/media/files/val2014.zip
wget -c http://images.cocodataset.org/zips/train2014.zip
wget -c http://images.cocodataset.org/zips/val2014.zip

# Unzip
unzip -q train2014.zip
unzip -q val2014.zip

cd ..

# Download COCO Metadata
wget -c https://pjreddie.com/media/files/instances_train-val2014.zip
wget -c https://pjreddie.com/media/files/coco/5k.part
wget -c https://pjreddie.com/media/files/coco/trainvalno5k.part
wget -c https://pjreddie.com/media/files/coco/labels.tgz
tar xzf labels.tgz
unzip -q instances_train-val2014.zip

Set Up Image Lists

paste <(awk “{print “KaTeX parse error: Can't use function '\"' in math mode at position 4: PWD\̲"̲}" <5k.part) 5k…PWD”}” <trainvalno5k.part) trainvalno5k.part | tr -d ‘\t’ > trainvalno5k.txt
`

如何去实现?我自己在学完yolo算法后,到GitHub下载相关的包,然后直接根据作者的提示直接就训练了模型,这也是我接触了人脸检测算法后感觉最快上手的一次模型搭建训练的一次过程。所以,我也推荐刚刚入坑的,和我一样的朋友先用YOLO进行搭建一个属于自己的目标检测,来提高自己在深度学习领域的热情和成就感。

具体步骤如下:
1.到GitHub下拉去到任务包:git clone https://github.com/pjreddie/darknet.git
2.进入到darknet目录下,打开Makefile文件进行GPU,CUDA,OPENCV等配置,如图,设置为1,这代表着使用,反之。
在这里插入图片描述
3.打开终端,输入:make 进行编译。编译不报错则代表成功。如果你遇到报错是关于OpenCV的话,你需要从新卸载安装 OpenCV并且添加额外的Python库。具体报错的信息,直接复制到百度,就会有相应的答案,这个到不必担心。
4.这个时候就该处理数据集了。如果你对Linux系统不熟悉,那么这一步相对其他步骤来说比较繁琐了。不过按照步骤来倒是没什么大问题。
可以根据上面的get_coco_dataset.sh,先

mkdir coco
	cd coco
mkdir images
cd images
在images里放入那3 个数据集并且解压缩
unzip -q train2014.zip
unzip -q val2014.zip
然后退回到上一级目录,执行下面的代码就能获得数据集路径的TXT文件
cd ..
wget -c https://pjreddie.com/media/files/instances_train-val2014.zip
wget -c https://pjreddie.com/media/files/coco/5k.part
wget -c https://pjreddie.com/media/files/coco/trainvalno5k.part
wget -c https://pjreddie.com/media/files/coco/labels.tgz
tar xzf labels.tgz
unzip -q instances_train-val2014.zip
paste <(awk "{print \"$PWD\"}" <5k.part) 5k.part | tr -d '\t' > 5k.txt
paste <(awk "{print \"$PWD\"}" <trainvalno5k.part) trainvalno5k.part | tr -d '\t' > trainvalno5k.txt

5.处理配置文件信息
配置信息有3个:
1.cfg/coco.data 分别对应了你的数据集,验证集路径,还有backup存放模型的路径
在这里插入图片描述
2.cfg/yolov3.cfg
主要是第一个net,得根据你的电脑GPU配置来选择,其中比较重要的是batch =64或者32,甚至为1都行,还有就是subduvusions=8、16、32,64这几个值都行,我在YOLOV4中只能设置64,不能是其他值。learning_rate= 0.001,在YOLOV4中是0.00263左右导致了梯度爆炸,总共训练500200次,但是到2W的时候数据loss就开始收敛了,我训练了5W次,效果还行在这里插入图片描述
6.开始训练

./darknet detector train cfg/coco.data cfg/yolov3.cfg

控制台的log日志信息
在这里插入图片描述
58427是训练的次数

模型测试

./darknet detector test cfg/coco.data cfg/yolov3.cfg backup/yolov3_50000.weights data/carandperson.jpg 

在训练命令的基础上,将train改成test 后面在加上backup中最后训练的模型名称 空格 加上图片路径
在这里插入图片描述

ubuntu下快速实现yolo v3目标检测 本文以尽可能少的步骤和安装命令,实现在最短的时间内搭建yolo的运行环境,让yolo在你的电脑上跑起来的目的。 阅读详情

相关推荐

目标检测实战:使用YOLOv11训练自己的数据集

ultralytics发布了最新的作品YOLOv11,这一次YOLOv11的变化相对于ultralytics公司的上一代作品YOLOv8变化不是很大的(YOLOv9、YOLOv10均不是ultralytics公司作品)。本文记录使用YOLOv11训练自己的数据集的过程。以上就是今天要讲的内容,本文介绍了yolov11使用自己的数据集进行训练、预测,希望对大家使用yolov11有帮助,希望本文能够帮助到大家。

爱唱歌的卡卡西的博客 1万+

ubuntu18安装、测试YOLOV3记录

YOLOV3搬运工,记录本人安装测试过程

qq_38988221的博客 1635

ubuntu18.04+yolov3v4配置环境+cuda+cudnn+opencv4

目录 0、前言 1、ubuntu18.04系统安装 2、安装nvidia驱动安装+cuda+cudnn 2.1、安装驱动 2.2、安装cuda 2.3、cudnn的安装 3、opencv的安装 4、yolov3,yolov4的编译 5、关于调用摄像头、检测结果的保存等 6、结束语 0、前言 yolov3、yolov4在物体检测这块比较火,网上也有挺多关于配置的教程,但不同的配置环境总会有不同的报错。本文旨在将自己安装过程的经验分享,同时记录下安装过程及遇到的报错问题,便于后边查阅

m0_51210142的博客 1170

ubuntu16.04完美测试yolo v3—darknet模型

yolo v3——darknet模型C源码: https://github.com/arnoldfychen/darknet 本次测试只记录测试过程中的报错问题: 单独用GPU编译darknet源码时出现如下错误: Makefile:92: recipe for target ‘obj/convolutional_kernels.o’ failed 解决方法: 修改Makefile NVCC = /usr/local/cuda-9.0/bin/nvcc 重新编译,错误解决 make 解决pjredd

源代码杀手的博客 1503

yolov3-tiny训练+openvino调用

yolov3-tiny训练+openvino调用yolov3-tiny模型训练数据集制作yolov3-tiny模型的训练yolov3-tiny模型的测试 本人环境:ubuntu16.04 + opencv3.4.5 + cuda9.0 + cudnn7 显卡:GeForce GTX 1050/PCIe/SSE2 yolov3-tiny模型训练 数据集制作 数据集的制作参照的博客:链接:link里面讲的很详细 1、获取训练图片 由于我们的目的是做垃圾分类的识别,所以我们的数据集用我们实物上的的摄像头拍摄。

mai0026的博客 3079

yolov3损失函数公式及代码位置,绝对良心(更新)

有句话说“把知识讲的农妇都能听懂,那才是真的懂了” 本人小白,毕设正在做基于yolov3的目标检测系统研究,在网上找了一万遍,基本没有靠谱的损失函数,全是假的或者旧版本的,害人不浅,最后终于找到一个靠谱的。本人花了两天好不容易在源码中找到了其位置并对应上,源码超级零散,各种调用,创作者用的变量定义也不知道是不是故意的,竟然有好几个重名,还没有注释,弄得我差点拉裤。 为了避免各位同学不再重蹈覆辙,现...

yxt916的博客 1万+

Ubuntu安装YOLOv3

服务器 Ubuntu16.04 + Titan xp + darknet_YOLOv3  YOLO官网:https://pjreddie.com/darknet/yolo/ 安装超级简单,但一定要注意编码方式,生成的 *.txt 文件的时候一定要在ubuntu中生成,不然会出现各种各样的错误,比如我因为用的是服务器,开始 *.txt 文件都是在Windows中生成的,会报五花八门的错误,运行同...

JH0lmes的博客 7308

DarkNet-YOLOv3 训练自己的数据集 Ubuntu16.04+cuda8.0

配置DarkNet 参考YOLO官网 https://pjreddie.com/darknet/yolo/ (1)安装相关依赖项(可选) opencv: https://www.cnblogs.com/arkenstone/p/6490017.html cuda: https://blog.csdn.net/u010837794/article/details/63251725 (2)下载源码: ...

qq_33287871的博客 1200

darknet_ros +yolov3+Basler camera 实时目标检测环境配置(Ubuntu16.04+ROS kinetic)

一、开发环境配置 (1)ubuntu16.04 +ROS kinetic安装 (2)Ubuntu16.04+ROS kinetic +Basler_camera环境配置以及相机标定 二、darknet_ros下载与环境配置 1.代码下载 代码Github主页:https://github.com/leggedrobotics/darknet_ros 下载命令: mkdir -p darknet_ros_yolov3/src cd darknet_ros_yolov3/src git clone --recu

weixin_42469289的博客 3578

coco训练集5k.part

coco训练集5k.part(2014),包含coco训练集的图片路径(相对路径)如果发生找不到图片的情况,可修改为绝对路径

Ubuntu16.04下YOLO V3训练自己的数据集(超详细))

Ubuntu16.04下YOLO-V3的配置方法,里面添加了一些配置成功的网址,实测有效

ubuntu下安装YOLOV4进行目标识别

我电脑上安装的的是ubuntu16.04,如果安装其他版本也可以,目的很明确,就是能装过并使用。 第一步,我们先装YOLOV4 1,新建一个目录作为,总的一个文件夹,我们从github上先git darknet git clone https://github.com/AlexeyAB/darknet 2.我们对darknet进行编译 cd darknet make 3.使用yolov4.weights的预训练权重文件进行测试 ./darknet detector test

ninwji的博客 1924

【SLAM】探索explore_lite在移动机器人自主建图中的高效边界检测策略

本文深入解析了explore_lite在移动机器人自主建图中的应用,重点探讨了其高效的贪婪边界检测策略。该工具包专为资源受限平台设计,通过直接利用SLAM生成的地图信息,以极低的计算开销实现快速、稳定的未知区域探索,并与move_base导航框架无缝协作,是轻量级机器人自主探索的优选方案。

purple的博客 1066

YOLOv3训练自己的数据(附优化与问题总结)

YOLOv3 训练自己的数据附优化与问题总结 环境说明 系统:ubuntu16.04 显卡:Tesla k80 12G显存 python环境: 2.7 && 3.6 前提条件:cuda9.0 cudnn7.0 opencv3.4.0 安装cuda和cudnn教程 安装opencv3.4.0教程 实现YOLOV3的demo 首先安装da...

皮卡丘的博客 1万+

OCSP环境搭建--Windows Server 2016

OCSP环境搭建--Windows Server 2016 一. OCSP环境中相关信息 1. 服务器1 操作系统:Win Server 2016 Standard版 IP地址:172.16.0.19/23,网关:172.16.0.1,首选DNS:127.0.0.1 服务器角色:域控制器、证书颁发机构、radius服务器、DNS服务器 ...

CsdnCHong_566的博客 3350

Sobel原理及计算过程详解

该算子包含两组3x3的矩阵,分别为横向及纵向,将之与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。首先,我们需要构建一个Sobel算子,通常是一个 3x3 的矩阵。Sobel算子可以分别计算水平和垂直方向的梯度值,然后将两者合并得到总梯度值。索贝尔算子(Sobel operator)主要用作边缘检测,在技术上,它是一离散性差分算子,用来运算图像亮度函数的灰度近似值。所以,我们假设选择图像矩阵中的点A(1, 1),即第二行第二列的元素,对应的。接下来,我们将使用Sobel算子计算这个点的梯度值。

2301_76461741的博客 1万+

物体识别全流程(Ubuntu16.04)结合ROS

物体识别全流程(Ubuntu16.04)结合ROS 1.使用labellmg,标记图片,生成xml标签 在此下载labellmg包 下载之后解压到要放置的目录 推荐使用Python3+Qt5 打开labellmg包 在当前目录终端下运行如下命令行 sudo apt-get install pyqt5-dev-tools sudo pip3 install -r requirements/requi...

weixin_44290841的博客 2501

别再只调A*算法了!聊聊ROS机器人导航中,OpenCV视觉信息如何与激光雷达数据“打配合”

本文探讨了ROS机器人导航中激光雷达与OpenCV视觉融合的实战策略,揭示了如何通过多模态感知提升导航精度。文章详细介绍了视觉特征到代价地图的转化方法、系统级挑战的工程解决方案,以及融合感知下的路径规划进化,帮助开发者优化机器人导航系统。

weixin_29278805的博客 226

手把手教你用yolov3模型实现目标检测教程(一) - 环境配置

手把手教你用yolov3模型实现目标检测(一) 写在前面: 由于项目需要,使用yolov3模型做了各种现实场景物体的目标检测。做完了过了好长时间,感觉有些遗忘,还是该留下点东西,方便自己查找,也希望能惠及他人。 同时,为了督促自己补充理论体系,尽量做到知其然知其所以然 1、环境配置 首先,本教程是完全在ubuntu 18.04下进行的,你能找到的成熟框架不外乎以下三个: https://githu...

胡椒面er 4505

【TouchDesigner】三维渲染

Cmera COMP Uniform Scale(按比例缩放):沿x,y,z三个轴等比例缩放相机(通常不建议改变相机大小)。 Constrain To(约束到):让相机附属到某个指定元件上,跟随指定元件运动。 Look At(朝向):让相机在移动过程中始终面对指定的元件。 Pah SOP(相机的路径):输入SOP元件名字,为相机指定移动路径。 Geometry Comp Geometry COMP中的参数与Camera COMP中的参数用法大部分都相似。特殊的是它的instacne页面的

wangpuqing1997的博客 5459

YOLOv11 改进策略之 Conv 篇:基于 C2fC 与 RepC_SPELAN4 的性能跃迁教程

某工业质检场景中,采用本文改进模块的 YOLOv11 模型,对微小零件缺陷的检测准确率提升 22%;YOLOv10 提出的 C2fC 模块与 RepC_SPELAN4 结构,是针对特征融合与卷积效率的突破性设计,掌握它们,你就能让自己的 YOLOv11 模型在精度与速度的平衡上实现“质的飞跃”。别再让“模型精度不足”成为你的瓶颈——现在就动手修改代码,让你的 YOLOv11 模型在特征提取与检测效率上实现质的飞跃,用技术实力证明你的 AI 研发能力!中的卷积层为 RepC_SPELAN4。

m0_71589036的博客 97

一、YOLO安装及基本使用

操作环境:ubuntu16.04 64位 1.下载darknet git clone https://github.com/pjreddie/darknet cd darknet make 2.下载预先训练的权重样本 使用命令: wget https://pjreddie.com/media/files/yolov3.weights 或直...

胸毛飘荡的博客 4104

Python图像处理之光斑分析

光斑是工程中经常出现的图像数据,其特点是目标明确,分布清晰。对光斑图像的分析,主要包括质心定位、目标截取以及半径拟合等。

微小冷的学习笔记 2857

使用 RGB-D 相机(Astra)实现 YOLO v3 实时目标检测

RGB-D 相机使用 YOLO v3 对周围环境进行图像识别

qq_57061492的博客 4196

[毕设项目-大模型微调]现代文翻译文言文【基于LLaMA3.1-8B微调】

教你基于LLaMA3.1-8B微调如何做到现代文翻译文言文

逐梦苍穹的博客 2296

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

YOLOv3使用-笔记

YOLOv3使用笔记 最近使用YOLO做了一个比较简单的物体检测,途中遇到了一些问题,打算在这里写一下,方便以后参考 github地址:https://github.com/Kingqibin/EWATT3 ,跟上一篇blog是统一个项目 环境 ubuntu 16.04 LTS yolov3 等 YOLOv3的安装 安装跟着官网的历程走就可以,没有什么太大的难度。 安装并且编译darkn...

qq_33765199的博客 1432

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

上一篇: 卷积神经网络的调参技巧3
下一篇: 学习计算机视觉之目标检测的总结
bingbing0607
博客等级 码龄9年 74粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值