-
2021-04-21 16:59:20
注:借鉴整理,仅供自学,侵删
自适应锚框计算,无需重新聚类anchor
深入浅出Yolo系列之Yolov3&Yolov4&Yolov5核心基础知识完整讲解
- Yolov4在Yolov3的基础上进行了很多的创新:
输入端采用mosaic数据增强
Backbone上采用CSPDarknet53、Mish激活函数、Dropblock等方式
Neck中采用SPP、FPN+PAN的结构
输出端则采用CIOU_Loss、DIOU_nms操作 - Yolov5
输入端:Mosaic数据增强、自适应锚框计算、自适应图片缩放
Backbone:Focus结构,CSP结构
Neck:FPN+PAN结构
Prediction:GIOU_Loss
更多相关内容 - Yolov4在Yolov3的基础上进行了很多的创新:
-
yolo,yolov2,yolov3论文原文
2018-11-01 16:16:46yolo,yolov2和yolov3的论文原文,属于单阶段目标检测的代表性作品,对检测速度有很大提升,可以细细读一读 -
TPH-yolov5论文解读
2022-06-27 17:09:25TPH-yolov5论文简介。注:个人愚见,有问题欢迎批评指针。
论文:《TPH-YOLOv5: Improved YOLOv5 Based on Transformer Prediction Head for Object Detection on Drone-captured Scenarios》
代码:GitHub - TfeiSong/tph-yolov5: CBAM-TPH-biFPN-yolov5
TPH:Transformer Prediction Head
总结比较实用的点:
1. tph(transformer prediction head)。能够捕获更多的全局信息和上下文信息(使用的self-attention和全连接)。
2. CBAM提高通道和空间注意力机制。简单有效好嵌入CNN架构。
3. 增加小目标预测head。在大尺寸feature上实现对小目标的预测,提高小目标预测的准确率。
4. self-training classifier。对难区分的类别截取预测框,送小网络训练一个分类器,提高类别预测准确度。
5. ms-testiong。nms融合多个尺度图像的预测结果,提高mAP。
6. 模型集成:训练多个模型,融合多个模型的预测结果,提高mAP。摘要:无人机拍摄场景下的目标检测最近很时兴。难题:1. 因无人机总是在不同高度拍摄图像,导致目标尺寸变化剧烈,网络不易优化。2. 且高速低空飞行会对密集堆叠的物体产生运动模糊,对区分目标带来更大挑战。解决方法:本文提出TPH-yolov5,在yolov5中使用transformer prediction heads 替换原始的预测头,探索自注意力机制,去检测不同尺寸的目标。同时也整合CBAM模块,稠密目标的关注区域。另外,增加了有效策略:数据增强,多尺度测试,多模型融合,利用额外分类器。测试集:VisDrone2021。之前的sota方法:DPNetV3,提升1.81%。比yolov5提升了7%。
1. 介绍
无人机场景的目标检测主要有三个问题:1.尺寸多变,2.目标高密度,3.目标对象覆盖范围大。
网络结构框架:
整体较yolov5的改变:TPH,CBAM,增加更多头对不同尺寸检测,应用训练技巧(数据增强、多尺度测试、模型集成和自训练分类器)
对于类别相似的图像作者使用了self-trained classifier,把图像裁剪出来作为分类训练集训练模型。
本文贡献:
1. 增加更多的预测头,来处理大尺度变化的目标。
2. 整合TPH模块到yolov5中,提高在稠密场景下位置定位的准确性。
3. 整合CBAM到yolov5中,有利于网络寻找大区域内的感兴趣区域。
4. 对于无人机捕获到的场景使用有效地训练技巧:。
5. 使用自训练分类器,提高区分相似类别的分类能力。
2. 相关工作
2.1 数据增强
扩充不同场景的数据集,提高模型鲁棒性。光学变化增强(hue,saturation and value of the images),几何变化增强(random scaling, cropping, translation, shearing, and rotating),mixup,CutMix,Mosaic。
2.2 多模型集成方法在目标检测上
因为每次训练模型时生成的模型权重文件都是不同的,这就导致不同模型预测结果不同。为了降低差异,联合多个模型的预测结果。联合多个模型的方法是,对多个模型预测的框进行nms,soft-nms,WBF等处理。
2.3 目标检测
目标检测可划分多个类型。
1. one-stage 检测器:YOLOX,FCOS,DETR,Scaled-YOLOv4,EfficientDet。
2. two-stage 检测器:VFNet,CenterNet2
3. anchor-based 检测器:Scaled-YOLOv4,YOLOv5
4. anchor-free 检测器:CenterNet,YOLOX,RepPoints。
5. 专门针对无人机捕捉场景检测器:RRNet,PENet,CenterNet。
目标检测通常有三部分组成:backbone,neck,prediction head。
backbone:VGG,ResNet,DenseNet,MobileNet,EfficientNet,CSPDarknet53,Swin Transformer等等。
neck:neck设计的目的是为了更好地为backbone提供特征提取能力。通常由bottom-up和top-down形式。最早期的neck是up和down采样快。通常使用路径聚合块:FPN,PANet,NAS-FPN,BiFPN,ASFF,SFAM。neck上还有一些额外的块,比如:SPP,ASPP,RFB,CBAM等。
head:检测头目的是用来检测目标框位置和目标类别的。head一般被分为两种类型:one-stage和two-stage的目标检测器。two-stage目标检测方式一直主导方法,比如RCNN系列。one-stage目标检测器直接预测bounding box和目标类别,比如yolo系列,SSD,RetinaNet等。
3. TPH-YOLOv5
3.1 YOLOv5综述
yolov5共四个模型:yolov5s,yolov5m,yolov5l,yolov5x。
yolov5组成:backbone是CSPDarknet53 + SPP,Neck是PANet,detection head是YOLO head。
数据增强:Mosaic,MixUp,photometric distortions,geometric distortions。
3.2 TPH-YOLOv5
TPH-YOLOv5模型框架如图3所示。本文修改官方的yolov5模型,使她更加适应VisDrone2021数据集。
Prediction head for tiny objects:因为比赛数据集VisDrone2021包含了很多极其小的目标,所以增加更多小目标的预测头。共四个预测头,来缓解物体剧烈变化带来的尺寸变化。如图3第一个TPH就是专门用来预测小目标(tiny object)产生的。虽然计算量和内存增加,但是效果也有很大提升。
Transformer encoder block:受transformer启发,本文使用transformer encode block替换convolutional blocks和CSP bottleneck blocks。这个结构如图4所示。
作者认为transformer encode block相对于CSPDarknet53块 能够捕获更多的全局信息和丰富的上下文信息。transformer encode block包含两子层:多头注意力层和全连接层。
Convolutional block attention module (CBAM):CBAM是一个轻量级且有效的模块,可轻易嵌入CNN框架中。给出一个特征图,CBAM可以在通道和空间上给出注意力图。CBAM如图5所示。实验表明CBAM对最终效果有巨大的提升。
Ms-testing and model ensemble:本文在不同视角训练五个不同的模型。推理时,使用ms-testing策略:1. 缩放图像至原图的1.3倍。2. 分别把图像缩小1倍,0.83倍,0.67倍。3. 水平翻转图像。最终获取6个人不同尺度的图像,并使用nms融合预测结果。 不同模型使用相同的ms-testing操作,最终通过WBF融合5个模型的预测结果。
Self-trained classifier:自训练分类器,主要对一些预测的检测框很准确但是对分类能力较差的类别从原图上剪切出来,并resize到64*64大小,使用ResNet18做一个分类网络,最终结果提升0.8%~1.0%的AP。
4. 实验
数据集:VisDrone 2021。
测试集:VisDrone 2021中的testset-challenge,testset-dev
测评指标:mAP([0.5:0.95],AP50)
4.1 实现细节
pytorch版本:1.8.1
算法:TPH-YOLOv5
显卡:NVIDIA RTX3090 GPU (训练和测试)
预训练模型:yolov5x。因为TPH-YOLOv5和YOLOv5共享大部分backbone(block 0~8)和部分head(block 10~13 和 block 15~18)。
训练epoch:65 epoch。因为训练集较少。
warm-up:2 epoch。
优化器:adam optimizer。
初始学习率:3e-4。
schedule:cosine lr。
last epoch学习率:衰减到初始学习率的0.12倍。
输入图像尺寸:最长边1536个像素
batch size:2
数据分析:模型训练前先遍历整个数据,对提高mAP是有很大帮助的。本文分析VisDrone2021训练集的bounding boxes,当输入是1536时,有622 / 342391个label框小于3个像素的,如图7所示。对训练集做预处理:用灰色方块覆盖小目标,在训练的话mAP提高了0.2。
多尺度测试:训练时使用多种数据增强方式提高模型效果,那么测试时使用数据增强,理论上也能够带来性能的提升。本文使用三种不同尺寸的图像做测试,并且每种尺寸图像做翻转增强,所以一张测试图像共获取6张不同的图像。然后测试这6张不同图像,融合他们的结果,得到最终结果。
4.2 对比sota算法
对比数据集:VisDrone2021-DET testset-challenge。
受比赛服务器的限制,本文只得到了4个模型在测试集挑战上的结果和5个模型集成的最终结果。
效果mAP:39.18(VisDrone2021) > 38.37(VisDrone2020)
比赛排名:5名,比第一名39.43,低了0.25。 如果没有提交次数限制,本算法将获取更高的排名。
table1 是历年VisDrone比赛得分和提交算法的对比。
4.3 消融实验
测试数据集:VisDrone2021-DET testset-dev。
table 2就是本文算法的消融实验结果,添加对应模块的效果。
有效额外预测头:增加小目标检测头,yolov5x层的数量有607增加到719。GFLOPs:219.0 -> 259.0。虽然计算量增加了,但是效果也有很大的提升。如图9所示,小目标的检测效果有很大的提升,所以增加计算量是值得的。
有效的transformer编码块:使用transformer encoder block后,模型层数由719 -> 705,GFLOPs由259.0 -> 237.3。使用transformer encoder block不仅能够提高mAP,还能够降低网络尺寸。同时,在稠密目标和大目标检测中,扮演者重要角色。
有效的模型集成:table 3是5个不同模型在每个分类上的最终融合结果和对比。 每个模型都是不一样的:In training phrase, we use different input image sizes and change the weight of each category to make each model unique.
-
YOLOV4论文全文翻译.pdf
2020-08-02 10:08:03本文件为最新目标检测框架YOLOV4的论文翻译,详细介绍了YOLOV4结构组成及各种优化方法的实验对比,翻译比较完整准确表达了原文的内容,希望能够帮助到学习目标检测的朋友们,近期也会在博客中分享一些YOLOV4知识,感... -
TPH-YOLOv5 论文笔记
2021-10-18 08:43:07TPH-YOLOv5: Improved YOLOv5 Based on Transformer Prediction Head for Object Detection on Drone-captured Scenarios TPH-YOLOv5 2021 ICCV workshop 论文链接: https://arxiv.org/abs/2108.11539 一、 ...TPH-YOLOv5: Improved YOLOv5 Based on Transformer Prediction Head for Object Detection on Drone-captured Scenarios
TPH-YOLOv5 2021 ICCV workshop
论文链接: https://arxiv.org/abs/2108.11539
一、 Problem Statement
利用和改进YOLOv5进行无人机目标识别。无人机目标识别通常有以下几个问题:
- 目标大小变化较大
- 运动模糊且目标密度大,目标覆盖重叠多
- 杂乱的地理元素,也就是目标的背景信息多
二、 Direction
基于YOLOv5,作者做了以下改进:
- 增加一个Prediction head。
- 使用Transformer encoder blocks替换一些convolutional blocks和CSP bottleneck blocks。
- 增加了CBAM block。
- Multi-scale testing 和 self-trained classifier。
三、 Method
先来看一下整体的网络框架:
1. Prediction head for tiny objects
对于小目标检测,作者添加了一个Prediction head,如上图的head 1。这样总共四个Prediction head可以减轻目标大小变化较大的影响。所添加的那个Prediction head的输入是low-level和high-resolution的特征图,对小目标比较敏感。尽管添加了一个prediction head会带来速度影响,但是精度却提高较多。
2. Transformer encoder block
用transformer encoder block 替换一些convolutional block和CSP bottleneck blocks。作者认为transformer encoder block可以捕获全局信息和充足的背景信息,而且高密度遮挡目标上的表现也更好。
作者在prediction head上和backbone的末尾使用了transformer。因为网络的末端的特征图分辨率较小,可以降低计算和存储消耗。
3. CBAM
在无人机拍摄的图像上,大的覆盖区域总是包含令人困惑的地理元素。使用CBAM可以提取注意区域,帮助TPH-YOLOv5抵抗混乱的信息,并专注于有用的目标对象。
4. Multi-scale testing and self-trained classifier
作者发现TPH-YOLOv5有较好的定位能力,但是分类能力较弱。因此提出了一个额外的self-trained classifier。首先会通过裁剪ground-truth bounding boxes和resize到64x64来构建训练集。然后使用ResNet18,进行训练。
每个模块对应的提升效果如下:
四、 Conclusion
对于改进YOLOv5提供了tricks,可以借鉴参考。
Reference
-
YOLOv1论文原文、YOLOv1推测过程详细PPT以及论文精度标注
2022-05-03 21:04:191.YOLOv1论文原文 2.本人在精度论文标注版本,标注内容来自(yolov1PPT,B站UP主同济子豪兄论文精度) 3.YOLOv1推测阶段最经典PPT,内容十分详细 比较适合初学YOLOv1同学,精度论文的资料,帮助理解 -
【tph-yolov5】论文简读
2022-05-09 14:15:05论文名称: TPH-YOLOv5: Improved YOLOv5 Based on Transformer Prediction Head for Object Detection on Drone-captured Scenarios 论文下载地址:https://arxiv.org/abs/2108.11539 代码运行参考博客:...论文名称: TPH-YOLOv5: Improved YOLOv5 Based on Transformer Prediction Head for Object Detection on Drone-captured Scenarios
论文下载地址:https://arxiv.org/abs/2108.11539
代码运行参考博客:https://blog.csdn.net/zztjl/article/details/123870061添加链接描述一、摘要
概述了模型解决的问题域,以及tph-yolov5主要模块。
问题域:主要针对无人机图像检测。无人机拍摄图像相比一般目标检测图像的检测难点有:
- 飞行高度变化导致目标尺度变化剧烈,增加模型负担
- 快速低空飞行造成密集目标区域的运动模糊,给目标区分带来挑战。
模型:本文模型在yolov5的基础上,提出了不同的模块以解决上述问题。
- 增加了一个预测头检测不同尺度的目标
- 使用TPH(Transformer Prediction Heads)代替原始预测头,开发自注意力机制的预测潜力(这里后面可以再看看,还是有点不明白)
- 使用CBAM(Convolutional block attention model)发现密集目标的注意区域
- 采用了一系列tricks:数据增强、多尺度测试、多模型融合、额外分类器等
训练集及结果
数据集:VisDrone2021
实验结果:VisDrone2021挑战赛第五名(AP39.18%),与第一名(AP39.43%)差距很小。
二、Introduction
2.1 直接使用常规目标检测模型检测无人机图像存在的挑战:
- 尺度变化问题:飞行高度的改变导致目标尺度变化剧烈
- 高密度:无人机图像包含密集目标对象,对象间产生遮挡
- 困惑目标:无人机图像因为覆盖范围大往往包含许多令人困惑的地理元素
2.2 本文训练过程示意图
网络组成: - backbone: CSPDark-net53;neck:PANet(path aggregation network).和YOLOV5版本一致
- detection heads:tiny、small 、medium、large objects(引入了tiny object dectection head)
- TPH代替原始预测头,可以在高密度场景准确定位目标
- CBAM寻找图片中的attention region
- tricks:训练时采用数据增加,增加模型对目标尺度变化的鲁棒性;推理阶段,采用ms-testing和multi-model ensemble策略;引入了一个自训练分类器(ResNet 18)来提高模型的分类能力。(此分类器的训练数据来自原始训练数据的裁剪补丁???)
三、相关工作
3.1 数据增强:光度畸变、几何畸变;MixUP、Mosaic、传统方法。
3.2 Multi-Model Ensemble Method
就是ensemble来自不同检测模型的boxes方法:NMS、Soft-NMS、WBF。3.3 TPH-Yolov5
- Prediction head for tiny objects:发现Visdrone2021数据集中存在很多极小实例目标,增加了一个额外的tiny目标检测头用于tiny物体检测。
- Transformer encoder block:捕获全局信息和上下文信息,替换掉一些卷积层,在处理密集场景中的物体时表现更好;将transformer encoder blocks 放在backbone的尾部以及head部分的原因是为了特征图分辨率较低,能够有效降低昂贵的计算和内存成本。
- CBAM:在处理令人困惑的地理区域时,使模型更好的专注于有用的目标对象。
- Ms-testing and model ensemble:模型输入有六种不同的图片尺寸,使用NMS融合预测结果,在不同模型上,使用WBF得到最后结果。
- self-trained classifier:选择ResNet18 作为分类网络,加强网络分类能力。
四、实验
4.1基础环境
Pytorch 1.8.1、显卡:RTX3090
4.2 实现细节- pre-trained:yolov5x(成本比较高,自己可以用yolov5s,感觉精度相差应该不大)
- 65 epochs,前两个用于warm-up
- 优化器:adam optimizer
- 初始学习率:3e-4,最后一个epoch降为初始的0.12
- 输入图片比较大(1536*1536),batch size为2
4.3 细微调整
- 对部分极小的标签(小于3个像素)使用灰色方框进行遮挡。准确率提高0.2%。
参考连接:https://blog.csdn.net/wxd1233/article/details/120171037
-
yolov5
2021-12-24 16:46:49Yolov4核心基础知识完整讲解》对 Yolov4的相关基础知识做了比较系统的梳理,但Yolov4后不久,又出现了Yolov5,虽然作者没有放上和Yolov4的直接测试对比,但在COCO…https://zhuanlan.zhihu.com/p/172121380进击的... -
YOLOv4论文阅读(附原文翻译)
2021-10-08 11:00:45YOLOv4论文阅读Abstract摘要1.Introduction 引言2.Related work相关工作2.1.Object detection models目标检测模型2.2.Bag of freebies免费礼包2.3.Bag of specials特价礼包 Abstract摘要 There are a huge number of... -
一文读懂YOLOv5 与 YOLOv4.pdf
2021-06-24 09:22:44微信公众号截取内容 -
YOLOv3论文
2022-03-04 09:23:10【精读AI论文】YOLO V3目标检测(附YOLOV3代码复现)_哔哩哔哩_bilibili AP50的意思就是0.5IOU为阈值的mAP 是sigmoid函数,把坐标限定在一个grid cell内。 yolo的创新其实就在于把目标检测任务变成回归任务,用... -
深度学习论文: TPH-YOLOv5: Improved YOLOv5 Based on Transformer Prediction Head 及其PyTorch实现
2021-09-14 10:17:23深度学习论文: TPH-YOLOv5: Improved YOLOv5 Based on Transformer Prediction Head for Object Detection on Drone-captured Scenarios及其PyTorch实现 TPH-YOLOv5: Improved YOLOv5 Based on Transformer ... -
Yolo-Z:改进的YOLOv5用于小目标检测(附原论文下载)
2022-01-20 00:23:18关注并星标从此不迷路计算机视觉研究院公众号ID|ComputerVisionGzq学习群|扫码在主页获取加入方式论文地址:https://arxiv.org/pdf/2112.11798.... -
YOLOv1v2v3论文.zip
2020-08-09 14:28:49YOLO算法v1v2v3三篇论文英文原文,cv目标检测、深度学习必学经典论文。。。。。。。。。。。。。。。 -
YOLOv3论文精读
2021-11-15 19:44:12对于320*320分辨率的图像,YOLOv3对每一张图片运行只需要22ms,并且保持着28.2的mAP,这和SSD算法一样准确但是速度快了三倍。当我们使用这个旧的0.5为IoU阈值时的mAP检测指标时,YOLOv3是很好的。在Titan X显卡上... -
YOLOv3论文全文完整理解翻译
2019-05-22 17:29:28理所当然,我选择了这篇简短的YOLOv3。不得不说翻译这篇文章是一件很愉快的事,因为作者的确是很可爱。前后花了一天多的时间吧,毕竟水平有限,借助了谷歌翻译,也参考了别人的翻译,为了保证其中专有名词翻译的精准... -
YOLOV3论文阅读(学习笔记二)
2022-03-21 16:22:17论文下载地址:YOLOv3: An Incremental Improvement yolov网址:https://pjreddie.com/darknet/yolo/ 2.2多类别标注分类(Class Prediction) 原文: 在yolov3中每一个预测框会输出输出85个值,其中的5个是中心点... -
YOLOv5算法相关论文整理
2022-05-26 18:57:59个人学习记录:看了yolov5的代码还是有点懵,对yolov5中涉及到的相关的论文进行了整理 论文合集下载链接稍后补充 Hendrycks D, Gimpel K. Gaussian error linear units (gelus)[J]. arXiv preprint arXiv:1606.... -
TPH-YOLOv5简述
2021-11-05 16:45:37数据集是ICCV 2021workshop下的“Vision Meets Drones: A Challenge”,写作上,引言是写无人机检测的困难问题,以及贴出相应场景的图片进行说明,不过论文引用YOLOv5的时候用的不是YOLOv4的论文,而是用的github... -
YOLOV1论文小整理
2022-04-11 22:30:18我们先从初代版本V1开始,主要是第一篇论文不多,那么这里主要是关于这个神经网络的一个结构,它后面的一个具体的一个工作流程,这部分主要是分两个部分,一个是训练部分,还有一个是识别部分。这里咱们主要是对整个... -
yolov1原文地址以及论文翻译
2018-07-18 09:47:45论文原文:https://arxiv.org/pdf/1506.02640.pdf Tensorflow版本yolo v1:https://github.com/gliese581gg/YOLO_tensorflow Abstract 摘要 本文提出了一种新的物体检测方法YOLO。YOLO之前的物体检测方法主要.... -
【深度学习 论文篇 02-1 】YOLOv1论文精读
2022-04-15 12:50:01Python微信订餐小程序课程视频 ...Python实战量化交易理财系统 ...2. 论文思想 2.1 算法流程 2.2 网络结构 2.3 预训练分类网络 2.4 训练检测网络 2.5 损失函数(L2 Loss) 3. YOLOv1的缺陷 4. 其他一些检测 -
目标检测经典论文——YOLOv2论文翻译(纯中文版):YOLO9000:更好、更快、更强
2020-08-02 19:10:00目标检测经典论文翻译汇总:[翻译汇总] 翻译pdf文件下载:[下载地址] 此版为纯中文版,中英文对照版请稳步:[YOLOv2中英文对照版] YOLO9000:更好、更快、更强 Joseph Redmon*†, Ali Farhadi*† ... -
YOLOV5目标检测----上手
2020-07-07 16:21:28YOLOV5目标检测----上手 2020年4月23日,YOLOV4开源 2020年6月10日,YOLOV5开源 这两个日子,可是把CV类公众号的运营者忙坏了,各大公众号都在忙着抢“首发” 当然,YOLOV4是货真价实的YOLO系列的第四个版本,虽然J... -
YOLOv5重磅来袭!
2020-05-31 16:51:51结果YOLOv4还没消化好,在5月30日,"YOLOv5"来了! 不过看这个项目,发现其作者并不是得到YOLO之父承认的Alexey Bochkovskiy大神,而是Ultralytics LLC 公司。 该项目YOLOv5是基于PyTorch实现的,它其实是u版... -
YOLOv4论文翻译
2021-08-10 20:07:04论文原文链接: [2004.10934] YOLOv4: Optimal Speed and Accuracy of Object Detection (arxiv.org) https://arxiv.org/abs/2004.10934 arXiv:2004.10934v1 [cs.CV] 23 Apr 2020 说明 基于谷歌翻译的基础上... -
目标检测——yolov3论文精读
2022-02-14 08:22:18yolov3论文精读 -
YOLOv4论文(中文版)
2020-09-14 15:28:45因此在YOLOv3[63]的设计中,Redmon和Farhadi有所改进SPP模块,将内核大小为k×k的最大池输出连接起来,其中k = {1,5,9,13}, stride = 1。在此设计下,一个较大的k×k maxpooling有效地增加了骨干特征的接受域。添加... -
YOLOv4原文翻译 - v4它终于来了!
2020-12-20 16:58:31论文原文:https://arxiv.org/abs/2004.10934源码:https://github.com/AlexeyAB/darknet 写在前面 不久之前,YOLO创始人Redmon宣布退出CV界,很多人都觉得真的很惋惜,当然我也不例外。对我而言,YOLO系列的算法... -
YOLOV2论文详解
2021-11-21 17:33:08本文主要介绍了YOLOV2的Better和Faster部分 1. Better YOLOV1存在如下两个缺点: 定位误差大 与基于region proposal的方法相比,召回率低 因此,我们集中提高定位准确性和召回率,同时保证分类的准确性 1.1 Batch...