YOLO2 (3) 快速训练自己的目标
1快速训练自己的目标
在 YOLO2 (2) 测试自己的数据 中记录了完整的训练自己数据的过程。
训练时目标只有一类 car。
如果已经执行过第一次训练,改过一次配置文件,之后仍然训练同样的目标还是只有一类 car,即可按如下过程快速实现。
1数据输入
1 复制原始图像到\darknet\x64\data\obj下,清空原来的训练图像
2 复制生成的每一个图像对应的txt标定文件到\darknet\x64\data\obj下,清空原来的txt
3 将记录训练集图像路径的train.txt复制到\darknet\x64\data下替换
4 将记录训练集图像路径的var.txt复制到\darknet\x64\data下替换
说明:linux下生成的分别是infrared_train.txt和infrared_val.txt,在windons上使用注意修改名字为train.txt和var.txt。


2 开始训练
在\darknet\x64\下运行命令行
darknet.exe detector train data/obj.data data/yolo-obj.cfg darknet19_448.conv.23
3 输出结果
在\darknet\x64\backup 得到输出结果。
如何通过外网访问windons服务器训练:
1windons 下载软件 teamviewer

打开之后,左侧显示本机地址,右侧显示要连接的电脑
这里我们需要连接已经安装好yolo2检测程序的服务器,地址
伙伴ID: 232981386
连接之后需要输入用户名和密码。这里需要让服务器管理员给你创建可使用的用户名和密码。

通过文件传输命令,把自己的图片和相应txt文件上传到服务器。按照本篇前半部分教程,放在指定文件夹目录下。
然后通过远程控制,运行训练命令。
如何访问linux服务器训练:
linux服务器目前只能在局域网内访问,如果需要外网访问需要端口映射收费。
但是,windons服务器和linux服务器在同一个局域网内,所以使用windons服务器充当中继,间接访问linux服务器。
1 通过上一步 “如何通过外网访问windons服务器训练”把需要训练的图像传送给windons服务器
2 windons服务器 通过局域网访问linux服务器。
说明:linux服务器
在服务器 / 目录下有以自己的姓名拼音命名的文件夹,作为自己的文件夹,此文件夹只有自己拥有 增 删 改 执行 的权限
/ 目录下还有一个software文件夹, 用来安装软件, 此文件夹任何用户都拥有 增 删 改 执行 的权限
过程:
Xftp 用来传文件 Xshell用来输命令跑程序
登录服务器时 用户名:姓名拼音 密码:默认6个空格
2.1 打开Xshell 5 应用控制linux服务器命令行桌面。


新建会话 输入地址
服务器的IPV6地址 2001:250:1004:5023:d294:66ff:fe05:d79d
然后身份验证
用户名由管理员分配
假设使用 x'x'x'x'x 初始6个空格


然后点击连接(新建会话3 )

然后就进入linux服务器命令行界面。
如何修改自己的密码:
在命令行桌面输入
passwd 用户名
输入当前密码
输入修改密码
确认修改密码
2.2进入windons服务器后 ,打开桌面Xftp 应用,把图像数据传送给linux服务器

打开后 ,新建会话

输入地址
主机: 2001:250:1004:5023:d294:66ff:fe05:d79d
用户名; xxx(管理员分配)
密码:6个空格
修改协议 :SFTP


确定,然后点击连接。

左侧是windons服务器的电脑文件,右侧是linux服务器电脑指定可看的文件。
需要复制文件直接拖住进去即可。
YOLO2 (3) 快速训练自己的目标的更多相关文章
- bert,albert的快速训练和预测
随着预训练模型越来越成熟,预训练模型也会更多的在业务中使用,本文提供了bert和albert的快速训练和部署,实际上目前的预训练模型在用起来时都大致相同. 基于不久前发布的中文数据集chineseGL ...
- YOLO2解读,训练自己的数据及相关转载以供学习
https://pjreddie.com/darknet/yolo/ 具体安装及使用可以参考官方文档https://github.com/pjreddie/darknet https://blog.c ...
- 如何快速使用YOLO3进行目标检测
本文目的:介绍一篇YOLO3的Keras实现项目,便于快速了解如何使用预训练的YOLOv3,来对新图像进行目标检测. 本文使用的是Github上一位大神训练的YOLO3开源的项目.这个项目提供了很多使 ...
- 如何用OpenCV自带的adaboost程序训练并检测目标
参考博文: 1.http://blog.csdn.net/wuxiaoyao12/article/details/39227189 2.http://www.cnblogs.com/easymind2 ...
- pythonTensorFlow实现yolov3训练自己的目标检测探测自定义数据集
1.数据集准备,使用label标注好自己的数据集. https://github.com/tzutalin/labelImg 打开连接直接下载数据标注工具, 2.具体的大师代码见下链接 https:/ ...
- 活动报名 | 如何基于开源项目 Tapdata PDK,快速完成数据源和目标的开发?
近日,Tapdata 启动 PDK 插件生态共建计划,宣布开源插件开发框架 Tapdata PDK,将自身的数据接口能力开放出来,帮助开发者根据实际需求,自助接入数据源和目标,快速开启「Data ...
- Video Target Tracking Based on Online Learning—深度学习在目标跟踪中的应用
摘要 近年来,深度学习方法在物体跟踪领域有不少成功应用,并逐渐在性能上超越传统方法.本文先对现有基于深度学习的目标跟踪算法进行了分类梳理,后续会分篇对各个算法进行详细描述. 看上方给出的3张图片,它们 ...
- 第三十五节,目标检测之YOLO算法详解
Redmon, J., Divvala, S., Girshick, R., Farhadi, A.: You only look once: Unified, real-time object de ...
- 基于word2vec训练词向量(二)
转自:http://www.tensorflownews.com/2018/04/19/word2vec2/ 一.基于Hierarchical Softmax的word2vec模型的缺点 上篇说了Hi ...
随机推荐
- 【手记】.net正则行尾匹配符$的问题
本来想用正则Split一下sql语句中简单场景的的GO,于是用^GO$(配合忽略大小写和多行模式),可居然连这种情况都搞不掂: go 如果删掉$就能匹配了,但这显然不是办法,遂又在VS的C#交互窗口. ...
- java Future用法和意义一句话击破
在并发编程时,一般使用runnable,然后扔给线程池完事,这种情况下不需要线程的结果. 所以run的返回值是void类型. 如果是一个多线程协作程序,比如菲波拉切数列,1,1,2,3,5,8...使 ...
- 将javaWeb项目转maven项目
不经常做此类转换,所以总是忘记转换方法,特此,记录下转换步骤 1.首先从SVN检出项目 2.找到导出项目路径 3.按住Shift+鼠标右键,打开控制台 3.输入命令mvn eclipse:eclips ...
- How to distinguish between strings in heap or literals?
Question: I have a use case where I can get pointers of strings allocated either in memory or litera ...
- js之选项卡(tag标签)
目标效果:点击不同按钮显示不同内容 代码如下 <!DOCTYPE html> <html lang="en"> <head> <meta ...
- Python 3.4:Chromedrive,IEDriverServer,geckoDriver
import sys; import time; import os; #from huoche import PythonTickt; from splinter.browser import Br ...
- 用 JS 写 (轮播图 / 选项卡 / 滑动门)
页面中经常会用到各式各样的轮播图,今天贺贺为大家介绍一种常用的方法,对于JS我们需要举一反三,一种方法可以对多个轮播样式进行渲染. <head> <meta charset=&quo ...
- Mobile first! Wijmo 5 + Ionic Framework之:费用跟踪 App
费用跟踪应用采用了Wijmo5和Ionic Framework创建,目的是构建一个hybird app. 我们基于<Mobile first! Wijmo 5 + Ionic Framework ...
- Linux 磁盘分区方案简析
Linux 磁盘分区方案简析 by:授客 QQ:1033553122 磁盘分区 任何硬盘在使用前都要进行分区.硬盘的分区有两种类型:主分区和扩展分区.一个硬盘上最多只能有4个主分区,其中一个主分区 ...
- 浅谈Arrays.asList()方法的使用
首先,该方法是将数组转化为list.有以下几点需要注意: (1)该方法不适用于基本数据类型(byte,short,int,long,float,double,boolean) (2)该方法将数组与列表 ...
