Darknet下使用YOLO的常用命令

整理了一下,随手记一下。

在终端里,直接运行时Yolo的Darknet的各项命令,/home/wp/darknet/cfg/coco.data文件,使用原件:
=======================================coco.data=====================================================
classes= 80
train  = /home/pjreddie/data/coco/trainvalno5k.txt
valid  = coco_testdev
#valid = data/coco_val_5k.list
names = data/coco.names
backup = /home/pjreddie/backup/
eval=coco
====================================================================================================

(1)检测一张图片
wp@wp-MS-7519:~/darknet$ ./darknet detect cfg/yolov3.cfg wp_data/yolov3.weights data/dog.jpg

出现问题:
./darknet detector test cfg/yolov3.cfg wp_data/yolov3.weights data/dog.jpg报错names: Using default 'data/names.list'。。。Couldn't open file: data/names.list
./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg 没有结果出来。

(2)检测一段视频
接好usb后,直接运行usb视频检测
wp@wp-MS-7519:~/darknet$ ./darknet detector demo /home/wp/darknet/cfg/coco.data /home/wp/darknet/cfg/yolov3.cfg /home/wp/darknet/weights/yolov3.weights
说明:在CPU下,运行的特别卡。"直接接USB,然后执行:./darknet detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights就可以了啊,

官网https://pjreddie.com/darknet/yolo/说的很详细的。"

++++++++++++++++++++++++++++++++++++YOLO V3常用命令总结++++++++++++++++++++++++++++++++++++++++++++++
参考@http://www.cnblogs.com/pprp/p/9525508.html
(1)在GPU下训练自己的模型
    1.1 单GPU训练:./darknet -i <gpu_id> detector train <data_cfg> <train_cfg> <weights>
$ ./darknet detector train cfg/voc.data cfg/yolov3-voc.cfg darknet53.conv.74

1.2 多GPU训练,格式为0,1,2,3:./darknet detector train <data_cfg> <model_cfg> <weights> -gpus <gpu_list>
$ ./darknet detector train cfg/voc.data cfg/yolov3-voc.cfg darknet53.conv.74 -gpus 0,1,2,3

(2)单张测试命令:
$ ./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg

添加阈值:阈值范围0~1,By default, YOLO only displays objects detected with a confidence of .25 or higher. You can change this by passing the -thresh <val> flag to the yolo command. For example, to display all detection you can set the threshold to 0:
$ ./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg -thresh 0

(3)批量测试图片
    官网的测试命令,只能单张测试,如果需要批量测试则yolov3-voc.cfg(cfg文件夹下)文件中batch和subdivisions两项必须为1,并修改detector.c文件中的相关地方,重新进行编译make clean,make。
    开始批量测试:
$ ./darknet detector test cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_20000.weights
    接着在终端中,输入Image Path(所有的测试文件的路径,可以复制voc.data中valid后边的路径):
/home/learner/darknet/data/voc/2007_test.txt # 完整路径。
    结果都保存在./data/out(detector.c中设定路径)文件夹下。

(4)生成预测结果:
$ ./darknet detector valid <data_cfg> <test_cfg> <weights> <out_file>
    yolov3-voc.cfg(cfg文件夹下)文件中batch和subdivisions两项必须为1。
    结果生成在<data_cfg>的results指定的目录下以<out_file>开头的若干文件中,若<data_cfg>没有指定results,那么默认为<darknet_root>/results。
    执行语句如下:在终端只返回用时,在./results/comp4_det_test_[类名].txt里保存测试结果
$ ./darknet detector valid cfg/voc.data cfg/yolov3-voc.cfg backup/yolov3-voc_20000.weights

(5)官网的测试命令作为入口 @https://pjreddie.com/darknet/yolo/
5.1 单张测试命令:
$ ./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
./darknet 是执行当前文件下面已经编译好的darknet文件
detect 是命令 后面三个分别是参数: 网络模型 网络权重 需要检测的图片
命令“ ./darknet detect ”等同于“ ./darknet detector test ”,The detect command is shorthand for a more general version of the command. It is equivalent to the command:
$ ./darknet detector test cfg/coco.data cfg/yolov3.cfg yolov3.weights data/dog.jpg
 
5.2 多张测试命令:
$ ./darknet detect cfg/yolov3.cfg yolov3.weights
Enter Image Path: data/dog1.jpg
Enter Image Path: data/dog2.jpg

5.3 改变阈值
YOLO默认阈值0.25,可以自行设定:
$ ./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg -thresh 0

5.4 Real-Time Detection on a Webcam
实时视频检,测需要Darknet with CUDA and OpenCV,-c <num>,OpenCV默认为0:
$ ./darknet detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights

本地视频检,直接输入视频:
$ ./darknet detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights <video file>

5.5 在预训练的模型上继续训练
在 CPU  下训练:$ ./darknet detector train cfg/voc.data cfg/yolov3-voc.cfg darknet53.conv.74
在 多GPU下训练:$ ./darknet detector train cfg/coco.data cfg/yolov3.cfg darknet53.conv.74 -gpus 0,1,2,3
从定点继续训练:$ ./darknet detector train cfg/coco.data cfg/yolov3.cfg backup/yolov3.backup -gpus 0,1,2,3

5.6 测试公开数据
$ ./darknet detector test cfg/openimages.data cfg/yolov3-openimages.cfg yolov3-openimages.weights

=====================================================
(6)对  视频 进行测试命令:
对本地视频进行测试 命令:
>>>Darknet环境中,$ ./darknet detector test cfg/coco.data cfg/yolov3.cfg yolov3.weights data/xxx.mp4
>>>OpenCV 环境中, $ python3 object_detection_yolo.py --video=run.mp4
【a single image:
    python3 object_detection_yolo.py --image=bird.jpg
 a video file:
    python3 object_detection_yolo.py --video=run.mp4 】

对USB摄像头视频进行测试 命令:
>>>Darknet环境中,$ ./darknet detector test cfg/coco.data cfg/yolov3.cfg yolov3.weights
>>>OpenCV 环境中, $ (暂略)

对WebCam网络视频(比如大华、海康相机)进行测试 命令:
这里使用命令前需要作相应的修改,需要相机+电脑在同一局域网,这样才能访问。首先,要知道相机的IP,然后在电脑里添加相机的六段IP地址,在IPv4中添加类似:192.168.6.111,前二位表示在同一局域网,第三位1表示1段的IP、6表示6段的IP。接着获取相机的用户名、密码。这样才能使用 添加摄像机 命令,
$ ./darknet detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights  rtsp://admin:hik12345@30.14.199.6:554/h265/ch1/main/av_stream
$ ./darknet detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights  rtsp://admin:abcd12345@30.14.6.192:554/Streaming/Channels/1/
$ ./darknet detector demo cfg/coco.data cfg/yolov3.cfg yolov3.weights  rtsp://admin:abcd12345@30.14.6.192:554/Streaming/Channels/101/

+++++++++++++++++++++++++++++++++《摄像机Rtsp地址格式大全》++++++++++++++++++++++++++++++
@https://www.cnblogs.com/dpf-10/p/5533698.html
@http://www.mamicode.com/info-detail-2190692.html
@https://blog.csdn.net/viola_lulu/article/details/53330727
 一. 海康、中威摄像机
     格式1
         主码流:rtsp://admin:12345@192.168.1.64:554/Streaming/Channels/1
         子码流:rtsp://admin:12345@192.168.1.64:554/Streaming/Channels/2
       第三码流:rtsp://admin:12345@192.168.1.64:554/Streaming/Channels/3
     格式2

rtsp://admin:12345@192.168.1.64:554/ch1/main/av_stream

如果摄像机密码是a12345678,IP是192.168.1.64,RTSP端口默认554未做改动,是H.264编码,那么
主码流取流:
rtsp://admin:a12345678@192.168.1.64:554/h264/ch1/main/av_stream
子码流取流:
rtsp://admin:a12345678@192.168.1.64:554/h264/ch1/sub/av_stream
【如果是H.265编码的,那么将H.264替换成H.265即可】

二. 大华
      rtsp://admin:12345@192.168.1.64:554/cam/realmonitor?channel=1&subtype=0
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

YOLO---Darknet下使用YOLO的常用命令的更多相关文章

  1. linux下维护服务器之常用命令

    linux下维护服务器之常用命令! 第1套如下: 正则表达式: 1.如何不要文件中的空白行和注释语句: [root@localhost ~]# grep -v '^$' 文件名 |grep -v '^ ...

  2. Centos下磁盘管理的常用命令记录(如查找大文件)

    Centos下磁盘管理的常用命令记录 查看系统磁盘空间占用,使用命令: df -h 结果: 查看磁盘inode使用情况,如果inode用完了,磁盘就没法写入新的内容了: df -i 结果: 如何查找磁 ...

  3. linux下安装nginx以及常用命令指南

    安装nginx之前,要先在服务器上安装nginx运行所需要的依赖包 目录选择:一般选择 "/usr/local/" 1.安装PCRE库 离线安装包:https://pan.baid ...

  4. linux下svn版本控制的常用命令大全

    1.将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 简写:s ...

  5. centos下svn的主要常用命令(解决商城系统添加的文件无法自动更新至svn服务器)

    问题描述: 在商城中通过网页上传的png文件无法自动添加到版本库中. 查找过程: 通过程序分析,增加的主要是数据文件,主要分布在data目录中. svn list /home/ggg --depth= ...

  6. Linux下安装redis以及常用命令

    https://blog.csdn.net/zgf19930504/article/details/51850594 安装: 1.获取redis资源 wget http://download.redi ...

  7. windows下安装RabbitMq和常用命令

    ----RabbitMq安装-----windows下安装:(1)首先windows下安装好了erlang和rabbitmq.如下地址同时下载和安装:Erlang:http://www.erlang. ...

  8. Windows下内网渗透常用命令总结

    域内信息收集常用命令 net group /domain //获得所有域用户组列表 net group zzh /domain //显示域中zzh组的成员 net group zzh /del /do ...

  9. Linux环境下vi/vim编辑器常用命令

    使用vi文本编辑器 配置文件是Linux系统中的显著特征之一,其作用有点类似于Windows系统中的注册表,只不过注册表是集中管理,而配置文件采用了分散的自由管理方式.那么如何使用Linux字符操作界 ...

  10. 2017-7-18-每日博客-关于Linux下的history的常用命令.doc

    History history命令可以用来显示曾执行过的命令.执行过的命令默认存储在HOME目录中的.bash_history文件中,可以通过查看该文件来获取执行命令的历史记录.需要注意的是.bash ...

随机推荐

  1. 【Fiori系列】浅谈SAP Fiori的设计美感与发展历程

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[Fiori系列]浅谈SAP Fiori的设计美 ...

  2. 产品之我见(1)-女性APP

    我曾下载过几款女性APP,下载的初衷是想要记录.同时预估下一次生理周期开始的时间. 在查找网上测评推荐及个人下载试用了四五款后,我当时留下美柚.大姨吗.Clue这三款.            美柚  ...

  3. java_guide_类加载器

    类加载器总结 JVM 中内置了三个重要的 ClassLoader,除了 BootstrapClassLoader 其他类加载器均由 Java 实现且全部继承自java.lang.ClassLoader ...

  4. 前端JS之HTML利用XMLHttpRequest()和FormData()进行大文件分段上传

    用于网页向后端上传大文件 ### 前端代码<body> <input type="file" name="video" id="fi ...

  5. mac必装软件

    1.IINA: https://iina.io/ 2.keka: https://www.keka.io/zh-cn/ 3.欧陆词典: https://www.eudic.net/v4/en/app/ ...

  6. Netty学习篇①

    什么是netty Netty封装了JDK自带的NIO,运用起来更加简单快速,Netty是一个异步事件驱动的网络应用框架,让开发更加简便 Netty相比JDK自带的NIO的优点 Netty的api调用简 ...

  7. #【Python】【基础知识】【模块】【Python的常用模块】

    在IDE解释器中,执行help('modules')可查看当前环境可调用的Python模块: >>> help('modules') Please wait a moment whi ...

  8. Flask Bug记录之The innermost block that needs to be closed is 'block'.

    源码 <!DOCTYPE html> <title>{% block title %}{% endblock title %} - Flask</title> &l ...

  9. IDEA插件之alibaba编程规范

    1.做什么 这是阿里巴巴的编码规范插件,规范内容可以查阅 https://github.com/alibaba/p3c/blob/master/阿里巴巴Java开发手册(华山版).pdf 2.File ...

  10. 【51nod】2027 期望问题

    [51nod]2027 期望问题 %%%zsy 看不懂题解的垃圾选手在zsy大佬的讲解下终于知道了这道题咋做-- 先把所有\(a\)从大到小排序 设\(f_{i}\)为前\(i\)个数组成的排列的值, ...