精华内容
下载资源
问答
  • 多功能训练器
    千次阅读
    2021-03-08 02:20:24

    学习后,您将会做什么?

    对于初学者或者没有接触过变频器的你,通过本课程的学习,可以比较深入了解变频器的结构和参数功能,能在现场调试变频器设备.

    对于具有一定变频器基础,在现场调试过一些变频器的你,通过本课程的学习,能够更加全面的掌握变频器参数功能,加深理解变频器参数的意义,

    并能掌握一些变频器参数功能的应用技巧

    适用人群

    课程适用于变频器技术初学者,

    课程特色

    本课以深圳汇川高性能矢量型变频器为蓝本,全面详细的讲解了变频器功能参数的含义、逻辑关系以及如何应用。不仅用图表,图示来深入浅出的透析参数的功能,

    而且用大量的实操演练来揭示 功能参数和控制端子接线的内在关系。使变频器参数设置更加容易学习、掌握。 深入细致讲解了PLC与变频器之间的通讯应用程序、变频器通讯参数设置。

    使难以掌握的通讯技术,一学就明了,实用易懂。 参数设置是非常重要的,对于初学者能尽快掌握变频器技术是一种捷径,也是必经之路。对于具有一定变频器技术基础的技术人员。

    能更加全面透彻的理解和掌握变频器功能参数的设置及其应用。 对于参数设置的技术数据,上机已测试,准确无误。PLC通信设计程序,通过了近十种型号的变频器通讯控制测试。

    本课程是难得的拿来就用、解决现实问题的、技术实用型视频教材。通过这一课 程的学习、训练,能很快领会贯通变频器 参数的设置,并能举一反三,精通其他品牌。快速成为变频器技术能手。

    第1讲、变频器硬件结构及系统原理(第1—4课时)1、变频器硬件结构及系统原理

    2、变频器装置调试程序

    第2讲、变频器主回路和控制回路接线方式(第5—7课时)

    1、变频器主要电路基本接线

    2、主电路端子说明

    3、变频器控制回路接线方式

    4、操作与显示

    第3讲、常用功能参数说明和实操训练(第8—32课时)1、控制方式参数

    2、命令源选择

    3、主频率源X选择

    4、命令源参数和频率源参数设置实操训练

    5、加速时间和减速时间

    6、v/f曲线设定

    7、输入端子DI1~DI5多功能选择

    8、输出端子DO1和FM及TA.TB.TC多功能选择

    9、模拟量输出端AO1多功能选择

    10、启动方式

    11、电机制动和停止方式

    12、启停命令源和频率源一同切换

    13、设置偏置频率

    14、运行方向及上下限频率

    15、载波频率

    第4讲、电机参数及自调谐(自学习,自整定,自辨别)(第33课时)

    1、电机的种类和性能参数

    2、变频器一拖多台电机的调谐

    3、编码器参数

    第5讲、特殊参数功能与频率控制(第34—40课时)

    1、矢量控制(PI速度闭环控制)

    2、过程控制PID功能

    3、摆频功能的输出频率

    4、定长控制功能

    5、计数器定长控制功能

    6、转矩控制功能

    7、PID工艺闭环控制的休眠与唤醒功能

    8、电机保护与故障监控

    9、恢复出厂值及参数显示选择

    第6讲、PLC与变频器通信例子(第41—50课时)

    更多相关内容
  • 行业分类-设备装置-多功能手脚训练器.zip
  • OpenCV57:级联分类训练

    千次阅读 2022-01-24 16:01:44
    级联分类训练过程 学习函数: opencv_createsamples opencv_annotation opencv_traincascade opencv_visualisation 原理 使用弱分类的增强级联包括两个主要阶段:训练阶段和检测阶段。对象检测教程中介绍...

    目的

    在本章中,将学习:

    原理

    使用弱分类器的增强级联包括两个主要阶段:训练阶段和检测阶段。对象检测教程中介绍了使用基于HAAR或LBP(中心点为阈值,大于它的设为1,小于它的设为0)模型的检测阶段。本文档概述了训练弱分类器的级联所需的函数。当前指南将逐步完成所有不同阶段:

    • 收集训练数据
    • 准备训练数据
    • 训练实际模型

    为了支持本教程,将使用几个官方的OpenCV应用程序:

    • opencv_createsamples
    • opencv_annotation
    • opencv_traincascade
    • opencv_visualisation

    注意

    自opencv 4.0版本以来,createsamplestraincascade被禁用。考虑使用这些应用程序为级联分类器的3.4分支训练,因此模型格式在3.4和4.x之间相同。

    重要提示

    • 如果遇到任何提及旧的opencv_haartraining工具的教程,请忽略该教程并坚持使用opencv_traincascade工具。该工具是较新的版本,根据OpenCV 2.x和OpenCV 3.x API用C ++编写。opencv_traincascade支持类似**HAAR小波特征LBP(局部二进制模式)特征**。与HAAR特征相比,LBP特征产生整数精度,HAAR产生浮点精度,因此LBP的训练和检测速度都比HAAR特征快几倍。关于LBP和HAAR的检测质量,主要取决于所使用的训练数据和选择的训练参数。可以训练基于LBP的分类器,该分类器将在训练时间的一定百分比内提供与基于HAAR的分类器几乎相同的质量。
    • 来自OpenCV 2.x和OpenCV 3.x(cv::CascadeClassifier)的较新的级联分类器检测接口支持使用新旧模型格式。如果由于某种原因而使用旧界面,则opencv_traincascade可以旧格式保存(导出)经过训练的级联,然后可以在最稳定的界面中训练模型。
    • opencv_traincascade应用程序可以使用TBB进行多线程处理。 要在多核模式下使用它,必须在启用TBB支持的情况下构建OpenCV。

    准备训练数据

    为了训练弱分类器的增强级联,需要一组正样本(包含要检测的实际对象)和一组负样本(包含不想检测的所有内容)。负样本集必须手动准备,而正样本集是使用opencv_createsamples应用程序创建的。

    负样本|Negative Samples

    负样本来自任意图像,不包含要检测的对象。这些生成样本的负片图像应列在一个特殊的负片图像文件中,该文件每行包含一个图像路径(可以是绝对路径,也可以是相对路径)。注意,负样本和样本图像也称为背景样本或背景图像,在本文档中可以互换使用。

    所描述的图像可能具有不同的尺寸。但是,每个图像都应等于或大于所需的训练窗口大小(与模型尺寸相对应,多数情况下是对象的平均大小),因为这些图像用于将给定的负像子采样为几个图像,具有此训练窗口大小的样本。

    负样本描述文件的示例:

    目录结构:

    /img
      img1.jpg
      img2.jpg
    bg.txt
    

    bg.txt样式:

    img/img1.jpg
    img/img2.jpg
    

    这样的一组负窗口样本将用于机器学习步骤中,试图找到的感兴趣对象时不寻找什么。

    正样本|Positive Samples

    正样本由opencv_createsamples应用程序创建。正样本告诉机器学习算法来定义在尝试找到感兴趣的对象时模型应实际寻找的内容。该应用程序支持两种生成正样本数据集的方式。

    • 可以从单个正对象图像生成一堆正值
    • 可以自己提供所有肯定的内容,仅使用该工具将其裁剪调整大小并以opencv所需的二进制格式放置

    尽管第一种方法对固定对象(例如非常刚性的Logo)效果不错,但对于刚性较差的对象,它往往就会失效。在这种情况下,建议使用第二种方法。

    网络上的许多教程甚至都指出,通过使用opencv_createsamples应用程序可以生成100个真实对象图像,而不是1000个人工生成的正值。但是**,如果采用第一种方法,请记住以下几点**:

    • 需要在将其交给所提到的应用程序之前需要多个正示例,因为它只适用透视变换;
    • 如果想要一个健壮的模型,请获取涵盖对象类中可能出现的各种变化的样本。例如,对于人脸,应考虑不同的种族和年龄段,情绪以及胡须风格当使用第二种方法时,这一条也适用

    第一种方法采用带有公司徽标的单个对象图像,并通过随机旋转对象,更改图像强度以及将图像放置在任意背景上,从给定的对象图像中创建大量正样本。随机性的数量和范围可以通过opencv_createsamples应用程序的命令行参数来控制。

    命令行参数:

    • -vec <vec_file_name> :包含用于训练的正样本的输出文件的名称

    • -img <image_file_name> :源对象图像(例如,公司徽标)

    • -bg <background_file_name> :背景描述文件; 包含图像列表,这些图像用作对象的随机变形版本的背景

    • -num <number_of_samples> :要生成的正样本数

    • -bgcolor <background_color> :背景色(当前假定为灰度图像); 背景色表示透明色。由于可能存在压缩伪影,因此可以通过-bgthresh指定颜色容忍度-bgcolor-bgthresh和bgcolor + bgthresh范围内的所有像素均被解释为透明的

    • -bgthresh <background_color_threshold>

    • -inv:如果指定,颜色将被反转

    • -randinv :如果指定,颜色将随机反转

    • -maxidev <max_intensity_deviation> :前景样本中像素的最大强度偏差

    • -maxxangle <max_x_rotation_angle> :朝向x轴的最大旋转角度,必须以弧度为单位

    • -maxyangle <max_y_rotation_angle> :朝向y轴的最大旋转角度,必须以弧度为单位

    • -maxzangle <max_z_rotation_angle> :朝向z轴的最大旋转角度,必须以弧度为单位

    • -show :如果指定,将显示每个样本。 按Esc将继续示例创建过程,而不会显示每个示例

    • -w <sample_width> :输出样本的宽度(以像素为单位)

    • -h <sample_height> :输出样本的高度(以像素为单位)

    当以此方式运行opencv_createsamples时,将使用以下过程创建示例对象实例:给定的源图像围绕所有三个轴随机旋转。 所选角度受-maxxangle-maxyangle-maxzangle限制。 然后,像素在[bg_color-bg_color_threshold; bg_color + bg_color_threshold]范围内被设置为透明。白噪声被添加到前景的强度。如果指定-inv键,则前景像素强度将反转。如果指定-randinv 键,则算法将随机选择是否应对该样本应用反演。最后,将获得的图像从背景描述文件放置到任意背景上,将其大小调整为由 -w-h 指定的所需大小,并存储到由 -vec 命令行选项指定的vec文件中。

    正样本也可以从先前标记的图像的集合获得,这是在构建鲁棒目标模型时是所需的方式,该集合由类似于背景描述文件的文本文件描述。此文件的每一行对应于图像。该行的第一个元素是文件名,后跟对象注释的数量,后跟描述对象边界矩形的坐标(x,y,宽度,高度)的数字。

    正样本描述文件的示例:

    目录结构:

    /img
      img1.jpg
      img2.jpg
    info.dat
    

    info.data文件内容:

    img/img1.jpg  1  140 100 45 45
    img/img2.jpg  2  100 200 50 50   50 30 25 25
    

    图像img1.jpg包含具有以下边界矩形坐标的单个对象实例:(140,100,45,45)。图像img2.jpg包含了两个对象实例,分别为(100,200,50,50)以及(50,30,25,25)

    要从此系列中创建正示例,应指定-info参数而不是-img

    • -info <collection_file_name> :标记图像集合的描述文件

    请注意,在这种情况下, -bg,-bgcolor,-bgthreshold,-inv,-randinv,-maxxangle,-maxyangle-maxzangle等参数将被简单地忽略并且不再使用。在这种情况下,样本创建的方案如下。通过从原始图像中切出提供的边界框,从给定图像中获取对象实例,然后将它们调整为目标样本大小(由-w-h定义),并存储在由 -vec 参数定义的输出vec文件中。没有应用任何失真,因此仅有的影响参数是-w-h-show-num

    也可以使用opencv_annotation工具完成手动创建 -info 文件的过程。这是一个开放源代码工具,用于在任何给定图像中直观地选择对象实例的关注区域。

    额外事项

    • opencv_createsamples实用程序可用于检查存储在任何给定正样本文件中的样本。为此,仅应指定 -vec-w-h 参数
    • 此处提供了vec文件的示例 opencv/data/vec_files/trainingfaces_24-24.vec 。它可以用于训练具有以下窗口大小的面部检测器:-w 24 -h 24

    使用OpenCV集成的标注工具

    由于OpenCV 3.x社区一直在提供和维护一个用于生成-Info文件的开源注释工具。如果Command OpenCV_Annotation,则可以访问该工具,如果opencv应用程序在其中构建。

    使用该工具非常简单,该工具接受几种必需的和一些可选参数:

    • --annotations (必需):txt标注文件的路径,要在其中存储标注,然后将其传递给-info 参数[example-/data/annotations.txt]
    • --images (必需):包含带有对象的图像的文件夹的路径[example-/data/testimages/]
    • --maxWindowHeight (可选):如果输入图像的高度大于此处的给定分辨率,则调整图像的大小以用于 使用 --resizeFactor 可以简化注释。
    • --resizeFactor (可选):使用–maxWindowHeight` 参数时用于调整输入图像大小的因子

    请注意,可选参数只能一起使用。可以使用的命令示例如下所示

    opencv_annotation --annotations=/path/to/annotations/file.txt --images=/path/to/image/folder/
    

    在这里插入图片描述

    此命令将启动一个窗口,其中包含第一张图像和鼠标光标,这些窗口将用于标注。有关如何使用标注工具的视频,请参见此处。基本上,有几个按键可以触发一个动作。鼠标左键用于选择对象的第一个角,然后继续绘制直到满意为止,并在单击鼠标第二次单击时停止。每次选择后,有以下选择:

    • c确认标注,将标注变为绿色并确认已存储
    • d从标注列表中删除最后一个注释(易于删除错误的注释)
    • n :继续进行操作下一张图片
    • ESC 键:退出注释软件

    标注完成后,将获得一个可用的标注文件,该文件可以传递给opencv_createsamples-info 参数。

    训练级联分类器

    下一步是根据预先准备的正负数据集对弱分类器的增强级联进行实际训练。

    opencv_traincascade应用程序的命令行参数按目的进行分组:

    • 常用参数

      • -data <cascade_dir_name> :应将经过训练的分类器存储在何处,该文件夹应事先手动创建
      • -vec <vec_file_name>· :带有正样本的vec文件(由opencv_createsamples·实用程序创建)
      • -bg <background_file_name> :背景描述文件,这是包含阴性样本图像的文件
      • -numPos <number_of_positive_samples> :在每个分类器阶段的训练中使用的阳性样本数
      • -numNeg <number_of_negative_samples> :在每个分类器阶段的训练中使用的负样本数
      • -numStages <number_of_stages>:要训练的级联级数
      • -precalcValBufSize <precalculated_vals_buffer_size_in_Mb> :用于预先计算的特征值的缓冲区大小(以Mb为单位)。分配的内存越多,训练过程就越快,但是请记住-precalcValBufSize-precalcIdxBufSize总和不应超过可用的系统内存
      • -precalcIdxBufSize <precalculated_idxs_buffer_size_in_Mb> :用于预先计算的特征索引的缓冲区大小(以Mb为单位)。分配的内存越多,训练过程就越快,但是请记住,-precalcValBufSize-precalcIdxBufSize的总和不应超过可用的系统内存。
      • -baseFormatSave :对于类似Haar的功能,此参数是实际的。如果指定,级联将以旧格式保存。仅出于向后兼容的原因,并且允许用户停留在旧的不赞成使用的界面上,至少可以使用较新的界面训练模型,才可以使用此功能
      • -numThreads <max_number_of_threads>:训练期间要使用的最大线程数。实际使用的线程数可能会更少,具体取决于计算机和编译选项。默认情况下,如果使用TBB支持构建了OpenCV,则会选择最大可用线程,这是此优化所必需的
      • -acceptanceRatioBreakValue <break_value>此参数用于确定模型应保持学习的精确度以及何时停止。良好的指导原则是进行不超过10e-5的训练,以确保模型不会对训练数据过度训练。默认情况下,此值设置为-1以禁用此特征
    • 级联参数

      • -stageType <BOOST(default)>:阶段的类型,目前仅支持提升分类器作为阶段类型。
      • -featureType <{HAAR(default),LBP}>:特征类型:HAAR-类似Haar的特征LBP-本地二进制模式
      • -w <sampleWidth> :训练样本的宽度(以像素为单位),必须具有与训练样本创建期间使用的值完全相同的值
      • -h <sampleHeight> :训练样本的高度(以像素为单位)。必须具有与训练样本创建期间使用的值完全相同的值
    • 提升分类器参数

      • -bt <{DAB,RAB,LB,GAB(default)}>:增强分类器的类型:DAB-Discrete AdaBoostRAB-Real AdaBoostLB-LogitBoostGAB-Gentle AdaBoost

      • -minHitRate <min_hit_rate> :分类器每个阶段的最低期望命中率。总命中率可以估计为(min_hit_rate ^ number_of_stages

      • -maxFalseAlarmRate <max_false_alarm_rate> :分类器每个阶段的最大期望误报率。总体误报率可以估计为(max_false_alarm_rate ^ number_of_stages

      • -weightTrimRate:指定是否应使用修剪及其权重,推荐设置为0.95

      • -maxDepth <max_weak_tree> :弱树的最大深度,推荐设置为1

      • -maxWeakCount <max_weak_tree_count>:每个级联阶段的弱树的最大计数。提升分类器(阶段)将具有如此多的弱树(<= maxWeakCount),以实现给定的-maxFalseAlarmRate

    • 类似Haar的特征参数:

      • -mode <BASIC(default)|CORE| ALL> :选择训练中使用的Haar特征集的类型。 BASIC仅使用竖着的特征,而ALL使用整套竖着和45度旋转特征集,更多信息参考该论文
      • 本地二进制模式参数:本地二进制模式没有参数

    opencv_traincascade应用程序完成工作后,经过训练的级联将保存在 -data 文件夹中cascade.xml 文件中。此文件夹中的其他文件是为中断训练而创建的,因此可以在训练完成后将其删除。训练完成后,可以测试级联分类器。

    级联分类器的可视化

    有时,可视化经过训练的级联可能很有用,以查看其选择的特征以及其阶段的复杂程度。为此,OpenCV提供了一个opencv_visualisation应用程序。该应用程序具有以下命令:

    • --image(必需):对象模型参考图像的路径。 这应该是标注,标注 [-w,-h]传递给opencv_createsamplesopencv_traincascade应用程序

    • --model (必需):训练模型的路径,该路径应该在opencv_traincascade应用程序的-data参数提供的文件夹中。

    • --data (可选):如果提供数据文件夹,应该事先手动创建它,那么将存储阶段输出和特征的视频。 下面是一个示例命令:

    opencv_visualisation --image=/data/object.png --model=/data/model.xml --data=/data/result/
    

    当前可视化工具的某些限制

    • 仅能处理级联分类器模型() 使用opencv_traincascade工具进行训练),其中包含树桩作为决策树[默认设置]。

    • 提供的图像必须是带有原始模型尺寸的样本窗口,并传递给–image参数

    例子

    在安吉丽娜·朱莉(Angelina Jolie)图像上使用HAAR /LBP人脸模型在给定窗口上运行**,该窗口具有与级联分类器文件相同的预处理**–>24x24像素图像灰度转换和直方图均衡

    每个阶段都会制作一个视频,每个特征都可视化:

    visualisation_video.png

    每个阶段都会制作一个视频,以显示每个特征:

    visualisation_single_stage.png

    附加资源

    展开全文
  • OpenCV-Python 级联分类器训练 | 六十三

    千次阅读 2020-04-27 13:11:39
    作者|OpenCV-Python Tutorials 编译|Vincent ...本文档概述了训练自己的弱分类的级联所需的功能。当前指南将逐步完成所有不同阶段:收集训练数据,准备训练数据并执行实际模型训练。 为了支持本...

    作者|OpenCV-Python Tutorials 编译|Vincent 来源|OpenCV-Python Tutorials

    简介

    使用弱分类器的增强级联包括两个主要阶段:训练阶段和检测阶段。对象检测教程中介绍了使用基于HAAR或LBP模型的检测阶段。本文档概述了训练自己的弱分类器的级联所需的功能。当前指南将逐步完成所有不同阶段:收集训练数据,准备训练数据并执行实际模型训练。

    为了支持本教程,将使用几个官方的OpenCV应用程序:opencv_createsamples,opencv_annotation,opencv_traincascade和opencv_visualisation。

    重要的事项

    • 如果您遇到任何提及旧的opencv_haartraining工具(不推荐使用,仍在使用OpenCV1.x界面)的教程,请忽略该教程并坚持使用opencv_traincascade工具。此工具是较新的版本,根据OpenCV 2.x和OpenCV 3.x API用C ++编写。opencv_traincascade支持类似HAAR的小波特征[227]和LBP(局部二进制模式)[127]特征。与HAAR特征相比,LBP特征产生整数精度,产生浮点精度,因此LBP的训练和检测速度都比HAAR特征快几倍。关于LBP和HAAR的检测质量,主要取决于所使用的训练数据和选择的训练参数。可以训练基于LBP的分类器,该分类器将在训练时间的一定百分比内提供与基于HAAR的分类器几乎相同的质量。
    • 来自OpenCV 2.x和OpenCV 3.x(cv::CascadeClassifier)的较新的层叠分类器检测接口支持使用新旧模型格式。如果由于某种原因而使用旧界面,则opencv_traincascade甚至可以旧格式保存(导出)经过训练的级联。然后至少可以在最稳定的界面中训练模型。
    • opencv_traincascade应用程序可以使用TBB进行多线程处理。 要在多核模式下使用它,必须在启用TBB支持的情况下构建OpenCV。

    准备训练数据

    为了训练弱分类器的增强级联,我们需要一组正样本(包含您要检测的实际对象)和一组负样本(包含您不想检测的所有内容)。负样本集必须手动准备,而阳性样本集是使用opencv_createsamples应用程序创建的。

    负样本 负样本取自任意图像,不包含要检测的对象。这些生成样本的负片图像应列在一个特殊的负片图像文件中,该文件每行包含一个图像路径(可以是绝对路径,也可以是相对路径)。注意,负样本和样本图像也称为背景样本或背景图像,在本文档中可以互换使用。

    所描述的图像可能具有不同的尺寸。但是,每个图像都应等于或大于所需的训练窗口大小(与模型尺寸相对应,多数情况下是对象的平均大小),因为这些图像用于将给定的负像子采样为几个图像 具有此训练窗口大小的样本。

    负样本描述文件的示例:目录结构:

    /img
      img1.jpg
      img2.jpg
    bg.txt

    文件 bg.txt

    img/img1.jpg
    img/img2.jpg 

    您的一组负窗口样本将用于模型训练,在这种情况下,当尝试查找您感兴趣的对象时,可以增强不需要查找的内容。

    正样本

    正样本由opencv_createsamples应用程序创建。提升过程使用它们来定义在尝试找到感兴趣的对象时模型应实际寻找的内容。该应用程序支持两种生成正样本数据集的方式。

    1. 您可以从单个正对象图像生成一堆正值。
    2. 您可以自己提供所有肯定的内容,仅使用该工具将其切出,调整大小并以opencv所需的二进制格式放置。 尽管第一种方法对固定对象(例如非常刚性的徽标)效果不错,但对于刚性较差的对象,它往往很快就会失效。在这种情况下,我们建议使用第二种方法。网络上的许多教程甚至都指出,通过使用opencv_createsamples应用程序,可以生成100个真实对象图像,而不是1000个人工生成的正值。但是,如果您决定采用第一种方法,请记住以下几点:
    • 请注意,在将其提供给上述应用程序之前,您需要多个正样本,因为它仅适用于透视变换。
    • 如果您想要一个健壮的模型,请获取涵盖对象类中可能出现的各种变化的样本。例如,对于面孔,您应考虑不同的种族和年龄段,情绪以及胡须风格。当使用第二种方法时,这也适用。

    第一种方法采用带有公司徽标的单个对象图像,并通过随机旋转对象,更改图像强度以及将图像放置在任意背景上,从给定的对象图像中创建大量正样本。随机性的数量和范围可以通过opencv_createsamples应用程序的命令行参数来控制。

    命令行参数:

    • -vec <vec_file_name>:包含用于训练的正样本的输出文件的名称。
    • -img <image_file_name>:源对象图像(例如,公司徽标)。
    • -bg <background_file_name>:背景描述文件; 包含图像列表,这些图像用作对象的随机变形版本的背景。
    • -num <number_of_samples>:要生成的正​​样本数。
    • -bgcolor <background_color>:背景色(当前假定为灰度图像); 背景色表示透明色。由于可能存在压缩伪影,因此可以通过-bgthresh指定颜色容忍度。bgcolor-bgthresh和bgcolor + bgthresh范围内的所有像素均被解释为透明的。
    • -bgthresh <background_color_threshold>
    • -inv:如果指定,颜色将被反转。
    • randinv:如果指定,颜色将随机反转。
    • -maxidev <max_intensity_deviation>:前景样本中像素的最大强度偏差。
    • -maxxangle <max_x_rotation_angle>:朝向x轴的最大旋转角度,必须以弧度为单位。
    • -maxyangle <max_y_rotation_angle>:朝向y轴的最大旋转角度,必须以弧度为单位。
    • -maxzangle <max_z_rotation_angle>:朝向z轴的最大旋转角度,必须以弧度为单位。
    • -show:有用的调试选项。 如果指定,将显示每个样本。 按Esc将继续示例创建过程,而不会显示每个示例。
    • -w <sample_width>:输出样本的宽度(以像素为单位)。
    • -h <sample_height>:输出样本的高度(以像素为单位)。

    当以此方式运行opencv_createsamples时,将使用以下过程创建示例对象实例:给定的源图像围绕所有三个轴随机旋转。 所选角度受-maxxangle-maxyangle-maxzangle限制。 然后,像素在[bg_color-bg_color_threshold; bg_color + bg_c​​olor_threshold]范围内被设置为透明。白噪声被添加到前景的强度。如果指定了-inv键,则前景像素强度将反转。如果指定了-randinv键,则算法将随机选择是否应对该样本应用反演。最后,将获得的图像从背景描述文件放置到任意背景上,将其大小调整为由-w-h指定的所需大小,并存储到由-vec命令行选项指定的vec文件中。

    也可以从以前标记的图像的集合中获取正样本,这是构建鲁棒对象模型时的理想方式。该集合由类似于背景描述文件的文本文件描述。该文件的每一行都对应一个图像。该行的第一个元素是文件名,后跟对象注释的数量,后跟描述包围矩形(x,y,宽度,高度)的对象坐标的数字。

    一个描述文件的示例:

    目录结构:

    /img
        img1.jpg
        img2.jpg info.dat

    文件 info.dat

    img/img1.jpg  1  140 100 45 45
    img/img2.jpg  2  100 200 50 50   50 30 25 25 

    图像img1.jpg包含具有以下边界矩形坐标的单个对象实例:(140,100,45,45)。图像img2.jpg包含两个对象实例。

    为了从此类集合创建正样本,应指定-info参数而不是-img

    • -info <collection_file_name>:标记图像集合的描述文件。

    请注意,在这种情况下,-bg,-bgcolor,-bgthreshold,-inv,-randinv,-maxxangle,-maxyangle-maxzangle等参数将被简单地忽略并且不再使用。在这种情况下,样本创建的方案如下。通过从原始图像中切出提供的边界框,从给定图像中获取对象实例。然后将它们调整为目标样本大小(由-w和-h定义),并存储在由-vec参数定义的输出vec文件中。没有应用任何失真,因此仅有的影响参数是-w-h-show-num

    也可以使用opencv_annotation工具完成手动创建-info文件的过程。这是一个开放源代码工具,用于在任何给定图像中直观地选择对象实例的关注区域。以下小节将详细讨论如何使用此应用程序。

    额外事项

    • opencv_createsamples实用程序可用于检查存储在任何给定正样本文件中的样本。为此,仅应指定-vec-w-h参数。
    • 此处提供了vec文件的示例opencv/data/vec_files/trainingfaces_24-24.vec。它可以用于训练具有以下窗口大小的面部检测器:-w 24 -h 24

    使用OpenCV中的集成标注工具 从OpenCV 3.x开始,社区一直在提供和维护开源注释工具,该工具用于生成-info文件。如果构建了OpenCV应用程序,则可以通过命令opencv_annotation访问该工具。

    使用该工具非常简单。该工具接受几个必需参数和一些可选参数:

    • --annotations必需):注释txt文件的路径,您要在其中存储注释,然后将其传递给-info参数[example-/data/annotations.txt] - --images(必需):包含带有对象的图像的文件夹的路径[示例-/data/testimages/]
    • --maxWindowHeight可选):如果输入图像的高度大于此处的给定分辨率,则调整图像的大小以用于 使用--resizeFactor可以简化注释。
    • --resizeFactor可选):使用--maxWindowHeight参数时用于调整输入图像大小的因子。

    请注意,可选参数只能一起使用。可以使用的命令示例如下所示

    opencv_annotation --annotations=/path/to/annotations/file.txt --images=/path/to/image/folder/ 

    此命令将启动一个窗口,其中包含第一张图像和您的鼠标光标,这些窗口将用于注释。有关如何使用注释工具的视频,请参见此处。基本上,有几个按键可以触发一个动作。鼠标左键用于选择对象的第一个角,然后继续绘制直到您满意为止,并在单击鼠标第二次单击时停止。每次选择后,您有以下选择:

    • c:确认注释,​​将注释变为绿色并确认已存储。
    • d:从注释列表中删除最后一个注释(易于删除错误的注释)
    • n:继续进行操作下一张图片
    • ESC键:这将退出注释软件

    最后,您将获得一个可用的注释文件,该文件可以传递给opencv_createsamples的-info参数。

    级联训练

    下一步是根据预先准备的正负数据集对弱分类器的增强级联进行实际训练。

    按用途分组的opencv_traincascade应用程序的命令行参数:

    • 常用参数

      • -data <cascade_dir_name>:应将经过训练的分类器存储在何处。此文件夹应事先手动创建。
      • -vec <vec_file_name>:带有正样本的vec文件(由opencv_createsamples实用程序创建)。
      • -bg <background_file_name>:背景描述文件。这是包含阴性样本图像的文件。
      • -numPos <number_of_positive_samples>:在每个分类器阶段的训练中使用的阳性样本数。
      • -numNeg <number_of_negative_samples>:在每个分类器阶段的训练中使用的负样本数。
      • -numStages <number_of_stages>:要训练的级联级数。
      • -precalcValBufSize <precalculated_vals_buffer_size_in_Mb>:用于预先计算的特征值的缓冲区大小(以Mb为单位)。分配的内存越多,训练过程就越快,但是请记住,-precalcValBufSize-precalcIdxBufSize的总和不应超过可用的系统内存。
      • -precalcIdxBufSize <precalculated_idxs_buffer_size_in_Mb>:用于预先计算的特征索引的缓冲区大小(以Mb为单位)。分配的内存越多,训练过程就越快,但是请记住,-precalcValBufSize-precalcIdxBufSize的总和不应超过可用的系统内存。
      • -baseFormatSave:对于类似Haar的功能,此参数是实际的。如果指定,级联将以旧格式保存。仅出于向后兼容的原因,并且允许用户停留在旧的不赞成使用的界面上,至少可以使用较新的界面训练模型,才可以使用此功能。
      • -numThreads <最大线程数>:训练期间要使用的最大线程数。请注意,实际使用的线程数可能会更少,具体取决于您的计算机和编译选项。默认情况下,如果您使用TBB支持构建了OpenCV,则会选择最大可用线程,这是此优化所必需的。
      • -acceptanceRatioBreakValue <break_value>:此参数用于确定模型应保持学习的精确度以及何时停止。良好的指导原则是进行不超过10e-5的训练,以确保模型不会对您的训练数据过度训练。默认情况下,此值设置为-1以禁用此功能。
    • 级联参数

      • -stageType <BOOST(default)>:阶段的类型。目前仅支持提升分类器作为阶段类型。
      • -featureType <{{HAAR(default),LBP}>>:功能类型:HAAR-类似Haar的功能,LBP-本地二进制模式。
      • -w <sampleWidth>:训练样本的宽度(以像素为单位)。必须具有与训练样本创建期间使用的值完全相同的值(opencv_createsamples实用程序)。
      • -h <sampleHeight>:训练样本的高度(以像素为单位)。必须具有与训练样本创建期间使用的值完全相同的值(opencv_createsamples实用程序)。
    • 提升分类器参数:

      • -bt <{DAB,RAB,LB,GAB(default)}>:增强分类器的类型:DAB-离散AdaBoost,RAB-真实AdaBoost,LB-LogitBoost,GAB-温和AdaBoost。
      • -minHitRate <min_hit_rate>:分类器每个阶段的最低期望命中率。总命中率可以估计为(min_hit_rate ^ number_of_stages),[228]§4.1。
      • -maxFalseAlarmRate <max_false_alarm_rate>:分类器每个阶段的最大期望误报率。总体误报率可以估计为(max_false_alarm_rate ^ number_of_stages),[228]§4.1。
      • `-weightTrimRate ·:指定是否应使用修剪及其权重。不错的选择是0.95。
      • -maxDepth <max_weak_tree>:弱树的最大深度。一个不错的选择是1,这是树桩的情况。
      • -maxWeakCount <max_weak_tree_count>:每个级联阶段的弱树的最大计数。提升分类器(阶段)将具有如此多的弱树(<= maxWeakCount),以实现给定的-maxFalseAlarmRate。
    • 类似Haar的特征参数:

      • -mode <BASIC(default)|CORE| ALL>:选择训练中使用的Haar功能集的类型。 BASIC仅使用直立功能,而ALL使用整套直立和45度旋转功能集。有关更多详细信息,请参见[129]。
    • 本地二进制模式参数:本地二进制模式没有参数。

    opencv_traincascade应用程序完成工作后,经过训练的级联将保存在-data文件夹中的cascade.xml文件中。此文件夹中的其他文件是为中断培训而创建的,因此您可以在训练完成后将其删除。

    训练完成后,您可以测试级联分类器!

    可视化级联分类器

    有时,可视化经过训练的级联可能很有用,以查看其选择的功能以及其阶段的复杂程度。为此,OpenCV提供了一个opencv_visualisation应用程序。该应用程序具有以下命令:

    • --image(必需):对象模型参考图像的路径。 这应该是标注,标注[-w,-h]传递给opencv_createsamples和opencv_traincascade应用程序。
    • --model必需):训练模型的路径,该路径应该在opencv_traincascade应用程序的-data参数提供的文件夹中。
    • --data可选):如果提供了一个数据文件夹,必须事先手动创建它,那么将存储舞台输出和功能的视频。 下面是一个示例命令: opencv_visualisation --image=/ data/object.png --model=/data/model.xml --data =/data/result/

    当前可视化工具的某些限制

    • 仅处理级联分类器模型, 使用opencv_traincascade工具进行培训,其中包含树桩作为决策树[默认设置]。

    • 提供的图像必须是带有原始模型尺寸的样本窗口,并传递给--image参数。

    HAAR / LBP人脸模型的示例在安吉丽娜·朱莉(Angelina Jolie)的给定窗口上运行,该窗口具有与级联分类器文件相同的预处理–> 24x24像素图像,灰度转换和直方图均衡:每个阶段都会制作一个视频,每个特征都可视化:

    每个阶段都会制作一个视频,以显示每个功能:

    每个阶段都作为图像存储,以供将来对功能进行验证:

    这项工作是由StevenPuttemans为OpenCV 3 Blueprints创建的,但是Packt Publishing同意将其集成到OpenCV中。

    欢迎关注磐创AI博客站: http://panchuang.net/

    OpenCV中文官方文档: http://woshicver.com/

    欢迎关注磐创博客资源汇总站: http://docs.panchuang.net/

    展开全文
  • 1.概述在opencv中有两个类型的分类:opencv_haartraining和opencv_traincascade,后者是2.x版本中基于C++写的新版本的分类。二者最主要的区别是opencv_traincascade支持Haar和LBP。LBP在训练和检测方面要比Haar...

    1.概述

    首先澄清一个概念:人脸检测是要检测图像中有没有人脸,人脸识别是要检测出图像中的人脸是谁

    在opencv中有两个类型的分类器:opencv_haartraining和opencv_traincascade,后者是2.x版本中基于C++写的新版本的分类器。二者最主要的区别是opencv_traincascade支持Haar和LBP。LBP在训练和检测方面要比Haar特征快数倍。Haar和LBP的检测质量取决于要训练的数据和训练的参数设置。
    opencv_traincascade与opencv_haartraining以不同的文件类型存储训练分类器。新的cascade检测接口支持者两种格式。opencv_traincascade可以保存(输出)旧格式的级联器,但是opencv_traincascade和opencv_haartraining不能在训练中断后加载另一种格式的分类器。
    需要注意的是opencv_traincascade可使TBB用于多线程,而使用多核心的opencv一定是基于TBB。

    opencv_createsamples:用于准备训练数据的正样本和测试样本。opencv_createsamples可以生成支持opencv_haartraining和opencv_traincascade分类器的正样本数据。输出文件是以.vec为后缀的包含图像信息的二进制数据类型。

    opencv_performance:可以用来评估分类器的质量。但仅对opencv_haartraining生成的分类器有效。它需要一个被标记的图像集合,运行分类器,报告运行过程中找到目标的数量、丢失目标数量、误报警数量和其他信息。
    在其官方文档中提到opencv_haartraining已经是一个过时的应用,而opencv_traincascade将会得到进一步发展。

    Windows中两个.exe文件位于..\opencv\build\x64\vc12\bin中,如果是32位则把路径中x64改为x86即可;Linux版本两个应用程序位于/usr/local/bin文件夹中。找到两个应用拷贝到样本所在的文件夹。

    2.样本

    2.1样本准备

    样本训练需要正负样本。负样本和目标图像没有任何关系,正样本是与检测目标相关的图像。

    2.2负样本

    负样本是不包含检测目标的任意图像。负样本在一个特殊的文件中被枚举,每一行包含一张图片的名称。这个文件必须手动生成。应该注意到负样本和样本图片也被称为背景样本或背景样本图片。这些描述图片尺寸大小可以不同,单是一定要大于训练窗口尺寸,因为这些图片会按照训练尺寸进行二次抽样。

    描述文件例子:

    /img
        img1.jpg
        img2.jpg
    bg.txt
    

    也就是说在img的文件夹中有若干图片样本img1.jpg、img2.jpg,生成的描述文件bg.txt格式如下:

    img/img1.jpg
    img/img2.jpg
    

    针对不同的OS版本分别给出方案:
    Linux-Ubuntu
    打开终端,输入如下命令

    ls ./neg/*.*>neg.txt
    

    运行后在cascade文件夹下会多出一个名字为neg.txt的文件,打开会看到包含图像的名称和路径,如下

    Windows
    打开cmd命令,进入样本所在文件夹,然后执行

    dir /b >neg.txt
    

    在负样本文件夹下出现neg.txt文件,打开删除文本neg.txt

    利用查找替换操作,给文件名加上相对路径,如下:

    完成后将neg.txt剪切到上一层文件目录下即与neg、pos等文件相同目录

    至此负样本准备工作完成

    2.3正样本
    正样本是通过opencv_createsamples从单张张目标图片或一些实现标识图片创建,需要注意的是训练正样本模型需要大量的图像数据支持,如果是一种刚性的图片如OpenCV的Logo,识别这种图像看似只有一个正样本图像,但是我们可以通过旋转Logo、调整光照等各种方式来得到大量的样本进行下一步的训练。样本数量和范围的随机性可以通过OpenCV_createsamples来控制,其命令行参数如下:

    -vec<vec_file_name>
        包含训练正样本数据的输出文件名
    -img<img_file_name>
        源目标图像(如一个公司logo)
    -bg<background_file_name>
        负样本描述文件,包含一个用作背景的随机负样本图片列表
    -num<number_of_samples>
        正样本数量
    -bgcolor<background_color>
        背景色(假定当前是灰度图),背景色预置为透明色,对于压缩图片,颜色方差由bgthresh参数来指定,所有像素在bgcolor-bgthresh和bgcolor+bgthresh范围内都是透明的
    -bgthresh<background_color_threshold>
        背景色阈值
    -inv
        如果指定,颜色会反色
    -randinv
        如果指定,颜色会反色,颜色随机
    -maxidev<max_intensity_deviation>
        前置样本(foreground samples)像素最大偏离差,我的理解就是要训练的图像中物体像素的最大偏差
    -maxxangle<max_x_rotation_angle>
    -maxyangle<max_y_rotation_angle>
    -maxzangle<max_z_rotation_angle>
        三个方向最大旋转角度,以弧度为单位
    -show
        很有用的debugging选项。如果指定每个样本会被现实出来,"ESC"会关闭这一功能,即不显示样本图片而样本创建会继续进行。
    -w<sample_width>
        输出样本的宽(以像素为单位)
    -h<sample_height>
        输出样本的高(以像素为单位)
    -pngoutput
        这个选项是打开opencv_createsamples工具创建一个PNG类型的样本和一系列注释类型文件来替代一个矢量vec文件
    

    正样本描述文件如下:

    /img
        img1.jpg
        img2.jpg
    info.dat
    

    也就是说在img的文件夹中有若干图片样本img1.jpg、img2.jpg,生成的描述文件info.dat格式如下

    img/img1.jpg 1 140 100 45 45
    img/img2.jpg 2 100 200 50 50  50 30 25 25
    

    img1.jpg后面参数是其生成矩形边界(140 100 45 45)对应(x,y,width,height),img2.jpg包含两个目标实例。为了能够从集合中创建正样本,-info参数在指定时需用-img代替:
    -info
    标记图像的文件集合
    在生成vec描述文件时,图像不失真,只有-w、-h、-show和-num等参数对文件有影响。
    使用opencv_createsamples程序生成正样本描述文件时,只有-vec、-w、-h等参数是需要被指定的。

    Linux-Ubuntu
    命令与负样本类似,如下:

    ls ./pos/*.*>pos.dat
    

    打开pos.dat文件将利用查找替换操作将文件名归一化为如下形式:

    保存,之后执行如下命令生成.vec文件

    opencv_createsamples -vec pos.vec -info pos.dat -bg neg.txt -w 20 -h 20
    

    需要注意的是命令行中文件w h的值必须与上面归一化中设置的尺寸相同。如下:

    文件夹中多了一个pos.vec,这时针对Linux系统中的正样本就已经准备好了。

    Windows
    打开cmd命令,进入样本所在文件夹,然后执行

    dir /b >pos.dat
    

    打开文件删除行pos.dat,然后对文件进行归一化如下:

    保存,然后将pos.dat剪切到上层目录下即与neg、pos等文件相同目录,执行如下命令:

    opencv_createsamples.exe -vec pos.vec -info pos.dat -bg neg.txt -w 20 -h 20
    

    生成pos.vec文件,至此针对Windows下正样本就已经准备就绪

    3.cascade training

    上面样本准备好之后就可以进行分类器训练了,前面提到过opencv提供了opencv_haartraining和opencv_traincascade两种方式来训练一个cascade分类器,但只有最新的opencv_traincascade会被长期支持。其参数命令如下:
    常用命令行

    -data<cascade_dir_name>
        训练的分类器存储文件夹
    -vec<vec_file_name>
        包含正样本的vec文件(由opencv_cratesamples创建)
    -bg<background_file_name>
        背景描述文件
    -numPos<number_of_positive_samples>
    -numNeg<number_of_negative_samples>
        用于每个分类器训练层级的正负样本数量
    -numStages<number_of_stages>
        用于训练分类器的级(stage)数
    -precalcValBufSize<precalculated_vals_buffer_size_in_Mb>
        缓存大小,用于存储预先计算的特征点值(单位为:Mb)
    -precalcIdxBufSize<precalculated_idxs_buffer_size_in_Mb>
        缓存大小,用于存储预先计算的特征索引,单位为Mb,分配空间越大,训练就越快
    -baseFormatSave
        这个参数在使用Haar特征时有效,如果指定这个参数,级联分类器将以老的格式存储训练数据。
    -acceptanceRatioBreakValue
        这个参数是用来指定你的训练学习的精度和什么时候结束。一个好的指导方针是精度最好不好大于10e-5,以防止会重复训练已经训练过的数据。默认值是-1来忽视这个特征。
    

    cascade 参数

    -stageType<BOOST(default)>
        级别类型,目前只支持BOOST类型
    -featureType<{HAAR(default),LBP}>
        特征类型:HAAR-类HAAR特征;LBP-局部纹理模式特征
    -w<sampleWidth>
    -h<sampleHeight>
        正样本的尺寸(单位:像素).必须跟训练样本创建时的尺寸一致
    

    Boosted分类器参数

    -bt<{DAB,RAB,LB,GAB(default)}>
        boosted分类器的类型:DAB-Discrete AdaBoost,RAB-Real AdaBoost,LB-LogitBoost,GAB-Gentle AdaBoost
    -minHitRate<min_hit_rate>
        分类器的每一级希望得到最小检测率(即正样本被判断有效的比例),总的检测率大约为min_hit_rate^number_of_stages
    -maxFalseAlarmRate<max_false_alarm_rate>
        分类器的每一级希望的最大误检率(负样本判定为正样本的概率)总的误判率为max_false_alarm_rate^number_of_stages
    -weightTrimRate<weight_trim_rate>
        指定是否使用图像裁剪并指定其裁剪权重,典型值是0.95
    -maxDepth<max_depth_of_weak_tree>
        弱分类器数的最大深度,典型值是1,代表二叉树
    -maxWeakCount<max_weak_tree_count>
        每一级中弱分类器的最大数目,强分类器中包含很多弱的树(<maxWeakCount)来实现设定的最大误检率。
    

    Haar-like特征参数

    -mode<BASIC(default)|CORE|ALL>
        选择训练中使用的Haar特征类型。BASIC只使用右上特征,ALL使用所有右上特征及45度旋转特征。
    

    Linux-Ubuntu
    在文件夹中新建data文件夹,执行如下命令

    opencv_traincascade -data data -vec pos.vec -bg neg.txt -numPos 100 -numNeg 200 -numStages 20 -w 20 -h 20 -minHitRate 0.9999 -maxFalseAlarmRate 0.5 -mode ALL
    

    然后训练开始:

    Windows
    新建data文件夹,执行如下命令:

    opencv_traincascade.exe -data data -vec pos.vec -bg neg.txt -numPos 100 -numNeg 200 -numStages 20 -w 20 -h 20 -minHitRate 0.9999 -maxFalseAlarmRate 0.5 -mode ALL
    

    训练开始

    注意
    上面的正负样本参数是我手头有的,样本容量太少,层级用20只能训练到16级

    展开全文
  • pytorch1.7教程实验——分类器训练

    千次阅读 2022-03-31 15:32:40
    而且目标检测网络现在要自己单独构建写一个出来,发现也是太难,除了普通的特征提取,检测头模块包含的东西实在太,自己尚无力解决,于是这种从底层认识挖掘的想法暂时搁浅了。 在摸索的过程中,是基于pytorch,...
  • 级联分类器训练过程(步骤)

    万次阅读 2018-04-23 17:56:33
    本文借助百度翻译,翻译自:...正文详情如下:介绍使用改进的级联弱分类包括两个主要阶段:训练阶段和检测阶段。检测阶段使用HAAR或基于LBP的模型,在对象检测教程(object detection tut...
  • pytorchgpu训练,单机多卡,机多卡

    千次阅读 多人点赞 2019-10-09 09:42:03
    pytorchgpu并行训练 暂时只是使用了单机多卡的GPU进行测试, 并没有使用机多卡, 这里只简述了如何使用DistributedDataParallel代替DataParallel torch.nn.DataParallel   我一般在使用GPU的时候, 会喜欢使用...
  • 先进的深度学习模型参数正以指数级速度增长:去年的GPT-2有大约7.5亿个参数,今年的GPT-3有1750亿... 分布式训练作业使您能够克服单GPU内存瓶颈,通过同时利用个GPU来开发更大,功能更强大的模型。 这篇文章是使用tor
  • PyTorch 使用DataParallel()实现GPU训练

    千次阅读 2020-08-22 15:22:54
    PyTorch 使用DataParallel()实现GPU训练
  • 手把手教你训练分类

    千次阅读 2014-07-28 14:44:21
    手把手教你训练分类 转载自: 训练过程就是上面的三步 关于正负样本的一些理解:  正样本即包括目标的图片,一般较小(教程里提到的一般是24*24 20*20 18*18单位是像素> 但是在实际做的...
  • PyTorch-训练可视化

    千次阅读 多人点赞 2020-01-30 20:51:44
    介绍使用TensorBoardX对PyTorch模型训练进行可视化监控。
  • linux系统下打开usb摄像头: 虚拟机–可移动设备–camera – 连接 正样本 负样本 第一步:创建一个名为train的新文件夹。...将这两个文件拷贝到训练文件夹下,并将正、负样本的文件夹和描述文件——positi
  • 最近在恶补深度学习基础知识,以下为根据公众号“ 阿力阿哩哩”的《寄己训练寄己|自编码》而总结的内容。可以结合作者在哔哩大学的视频。 4.5 自编码 自编码是一种输入等于输出的神经网络模型,可能大家会...
  • 自编码(Autoencoder,AE)是一类在半监督学习和非监督学习中使用的人工神经网络,其功能是通过将输入信息作为学习目标,对输入信息进行表征学习(representation learning)。本文主要对MATLAB2020实现堆栈自编码...
  • 同一正样本目标的图像太会使局部特征过于明显,造成这个目标的训练过拟合,影响检测精度,不利于训练器泛化使用。   我们采集视频的人脸,先把视频解码后保存成jpg图片。   此处省略一万字… 创建样本:opencv...
  • m paddle.distributed.launch --gpus '0,1,2,3' tools/train.py -c configs/det/det_mv3_db.yml \ -o Global.pretrained_model=./pretrain_models/MobileNetV3_large_x0_5_pretrained # 机多卡训练,通过 --ips ...
  • 但是,使用离线强化学习(RL)(智能体使用以前收集的数据开展训练,在试验和错误中学习的一种方法)来训练,即使是一个单一任务(例如抓取),也可能需要花费成千上万个机器人小时,此外还需要大量的工程来大规模实现...
  • 不得不说,这深度学习框架更新太快了尤其到了Keras2.0版本,快到Keras中文版好多都是错的,快到官方文档也有旧的没更新,前... 笔者先学的caffe,从使用来看,比caffe简单超级,非常好用,特别是重新训练一个模型,但
  • 本文档概述了训练自己的弱分类的级联所需的功能。当前指南将逐步完成所有不同阶段:收集训练数据,准备训练数据并执行实际模型训练。 与Haar特征相比,LBP特征是整数特征,训练和检测过程都会比Haar特征快几倍。...
  • PyTorch读取自己的本地图片数据集训练自编码

    万次阅读 多人点赞 2018-08-28 18:09:46
    下面我就以一些动漫头像为例,来说明怎样利用torch来进行训练和测试数据的预处理。下面是图片的格式: 上述图片一共有51223张,每个图片的大小为3*96*96。下载地址为:百度云链接 网络的基本结构是通过 卷积层*2...
  • OpenCV训练分类 Python版本 2贰进制-Echo 日期:2021年3月 目录1. 概述2. 数据收集2.1 正样本2.2 负样本3. 数据预处理3.1 文件归一化3.2 图像处理3.2.1 灰度处理3.2.2 像素处理4. 训练前准备4.1 安装OpenCV4.2 ...
  • 训练DDPG智能体控制双积分系统双积分的MATLAB环境创建环境接口创建DDPG智能体训练智能体DDPG智能体仿真 该示例说明了如何训练深度确定性策略梯度(DDPG)智能体来控制以MATLAB®为模型的二阶动态系统。 有关DDPG...
  • 卷积神经网络训练花卉识别分类

    千次阅读 2020-03-27 12:24:52
    卷积神经网络训练花卉识别分类
  • 9. 对于难例的处理, 所谓的难例就是第一次训练出的分类负样本原图中检测到的有行人的样本, 这些误报使得行人检测的分类不是那么准确, 所以可以将误报的矩形框保存为新的负样本, 对新的负样本进行二次训练, 实现...
  • 关键字:训练器,contrib,Trainer 问题描述:在使用Trainer函数创建训练器的时候,出现错误,错误提示NameError: name ‘Trainer’ is not defined。 报错信息: &lt;ipython-input-7-4908863d4852&...
  • 训练级联分类

    千次阅读 2013-09-05 16:55:15
    除此之外OpenCV的data目录下有很多训练好的级联分类(如人脸,眼睛检测等),load进来就可以用,无需训练。官方例程中的objectdetection,facedetect等例子就是直接用了这些训练好的分类,如自带的face ...
  • torch.nn.DataParallel()--个GPU加速训练

    万次阅读 2021-06-05 08:42:54
    公司配备多卡的GPU服务器,当我们在上面跑程序的时候,当迭代次数或者epoch足够大的时候,我们通常会使用nn.DataParallel函数来用个GPU来加速训练。一般我们会在代码中加入以下这句: device_ids = [0, 1] ...
  • XLM-RoBERTa: 一种语言预训练模型

    千次阅读 2020-07-26 17:12:09
    尽管社区的单语训练模型越来越,但还有一种似乎不太受关注的替代方法:语言模型。 在本文中,我们重点介绍XLM-R模型的关键要素,并探讨其在德语中的性能。我们发现,在三个流行的德语数据集上,它的表现优于我们...
  • 用opencv训练分类

    千次阅读 2015-08-15 14:04:51
    注:本文转自西电之梦《采用opencv_cascadetrain进行训练的步骤及注意事项》,原文链接...OpenCV中有两个程序可以训练级联分类: opencv_haartraining 和opencv_traincascade。opencv_traincascade 是一个

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 108,951
精华内容 43,580
关键字:

多功能训练器