原本以为学习SLAM就和机器学习说拜拜了,没想到SLAM还是可以结合机器学习的,YOLO3是我接触的第一个机器学习框架,在这里记下其在Ubuntu虚拟机下的使用方法,仅供参考。

1.安装YOLO3

YOLO(You Only Look Once)是一种基于深度神经网络的对象识别和定位算法,其最大的特点是运行速度很快,可以用于实时系统。
可以打开终端,从作者大大的github上clone下YOLO3:

git clone https://github.com/pjreddie/darknet

clone到本地后,是一个cmake好的项目,所以不用再mkdir build 然后cmake了,直接进入darknet文件夹打开终端make就好了。

这里多说一点,因为我使用的VM虚拟机,没办法共享主机的显卡(VM是用的虚拟显卡,无法使用主机显卡资源),所以没办法使用GPU加速。

如果你是在主机上使用YOLO3,你需要确保有Nvidia显卡并安装cuda,cuda是英伟达推出的并行计算架构,可以用于大规模计算开发。安装好之后,打开darknet/makefile文件,做如下修改

    GPU=1 #如果使用GPU设置为1,CPU设置为0

这样可以使用GPU加速了。

2.下载模型并使用

只安装还不行,需要下载预训练好的模型(或者说是权重)文件:

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

这个要翻出去下,要不然很慢很慢,200多M得七八个小时。看来看去CSDN上下载都要积分,有点懵,我这里就不要积分了
下载好放在darknet文件夹下,然后就可以检测啦

./darknet detect cfg/yolov3.cfg yolov3.weights data/kate.jpg
# kate.jpg可以换成你自己的文件

这里检测的是作者给的几个图片之一,如果你想检测自己的图片,就要把图片放在data文件夹下,然后在上面这个命令中把文件名写对就可以了
检测结果如下:

可以看到因为我用的虚拟机,本来性能就差,还没有GPU加速,检测速度很慢很慢。往下给出了各个类的可能性百分比。然后在darknet文件夹会生成结检测结果文件

各个类都被方框标记出来了。

Ubuntu下使用YOLO3相关推荐

  1. 在Ubuntu下构建Bullet以及执行Bullet的样例程序

    在Ubuntu下构建Bullet以及执行Bullet的样例程序 1.找到Bullet的下载页,地址是:https://code.google.com/p/bullet/downloads/list 2 ...

  2. 在ubuntu下设置eclipse开发STM32等嵌入式设备

    之前为了能够让ROS与底层能够顺利通讯,我采用可开源开发板arduino ,因为arduino有ROS的库,能够按照ROS wiki上所给的教程就可以顺利的开发,但由于arduino的局限性,我觉得是 ...

  3. Ubuntu 下安装thttpd Web服务器

    不知道大家是不是真的需要用appache这么复杂的功能这么强大的web server,其实有很多时候使用webserver也只是一种远程共享访问的方式.这里,Ubuntu repository的提供了 ...

  4. Ubuntu下安装Apache+PHP+Mysql

    Ubuntu下安装 apache+php+mysql文本服务器! ------------------------------------------------------------------- ...

  5. Ubuntu下使用CMake编译OpenSSL源码操作步骤(C语言)

    OpenSSL的版本为1.0.1g,在ubuntu下通过CMake仅编译c代码不包括汇编代码,脚本内容如下: build.sh内容: #! /bin/bashreal_path=$(realpath ...

  6. ubuntu下nginx+php5的部署

    ubuntu下nginx+php5环境的部署和centos系统下的部署稍有不同,废话不多说,以下为操作记录: 1)nginx安装 root@ubuntutest01-KVM:~# sudo apt-g ...

  7. 在Ubuntu下FFmpeg编译,支持x264和x265(HECV)

    所有下载的源 在Ubuntu下FFmpeg编译,支持x264和x265. Ubuntu 12.04 FFmpeg 2.1 Release 注意: cmake要升级要2.8.8 yasm要升级到1.2. ...

  8. Ubuntu下添加新分区并设置挂载点

    Ubuntu下添加新分区并设置挂载点 最近在做Android项目,可是解压根文件系统以后,就报警说硬盘不够.当初设置使用的大小为15G.不过扩展分区还是很方便的.当然首先你得设置添加使用的硬盘大小,这 ...

  9. ubuntu下安装ftp服务器

    ubuntu下安装ftp服务器 Ftp服务器是使用以vsftp为例. 1. 安装     $sudo aptitude install vsftpd     $ps aux | grep 'ftp' ...

最新文章

  1. Python——拼接字符串
  2. mysql like 多个条件_MySQL高性能索引策略
  3. iOS序列化与反序列化
  4. spring 源码阅读入门
  5. 深度对比Apache CarbonData、Hudi和Open Delta三大开源数据湖方案
  6. 第3章 动态规划 矩阵连乘问题
  7. java deadlock oracle_【DEADLOCK】Oracle“死锁”模拟
  8. Unity3D开发资料
  9. dev-cpp的安装教程
  10. 联想G460驱动问题
  11. 基于Android的简易的二手物品交易app
  12. C#开发测量程序-计算坐标方位角
  13. UVM实战 卷I学习笔记2——为验证平台加入各个组件(1)
  14. 新版Iconfont-阿里巴巴矢量图标库支持三种引用方式
  15. atan2函数的用法
  16. 2022-2028年中国地理信息行业发展战略规划及投资机会预测报告
  17. Gradle/Maven编译时找不到com.sun包的原因与解决方法
  18. TensorRT下FP32转INT8的过程
  19. c语言中百分号ld是什么意思,URL 中的百分号的麻烦
  20. 5W1H聊开源之What——开源是什么?

热门文章

  1. 编译原理总结(《编译与反编译技术》)
  2. web 静默打印PDF插件(类似lodop)
  3. iOS 基础:证书介绍
  4. Namp的功能与使用
  5. ACS 模拟仿真 VOIP诊断 和 VOIP物理端口 测试
  6. JS a标签下载文件而不打开文件
  7. stm32 检测相位差 并简单实现两个单片机的通信
  8. 2022-2028全球及中国信息和通信技术(ICT)资本支出行业研究及十四五规划分析报告
  9. linux中流设备_Linux IO请求处理流程 (2) — 蓄流和泄流
  10. 定向写作模型CTRL