计算机视觉
图像增广
增广类型
1 | import mxnet as mx |
使用图像增广进行多GPU训练
1 | import mxnet as mx |
1 | training on [gpu(1)] |
微调(fine-tuning)
1 | from mxnet import gluon, init, nd, autograd |
1 | 2019-08-26 20:34:27---The training is finished, and output file is producing ......... |
目标检测与边界框
1 | from mxnet import image |
锚框
相关函数 | 参数 | 作用 | 返回值 |
---|---|---|---|
MultiBoxPrior() | 1.图像 2.尺寸 3.宽高比 |
返回w*h*(m+n-1)个锚框 | 形状为(批量大小,锚框个数,4) |
MultiBoxTarget() | 1.锚框 2.真实锚框 3.偏移量 |
为锚框标注类别和偏移量, 该函数将背景类别设为0, 并令从零开始的目标类别的整数索引自增1 |
返回三项: 1.(批量大小,锚框个数*4)的各锚框偏移值,其中负类偏移值为0; 2.掩码(mask)变量,形状(批量大小,锚框个数*4),负类锚框置为0,正类锚框置为1; 3.各锚框的标注类别,形状(批量大小,锚框个数) |
MultiBoxDetection() | 1.各锚框预测概率(批量大小,含背景类别*锚框数) 2.预测锚框偏移值(锚框数*4) 3.锚框(批量大小,锚框数*4) 4.阈值 |
构造预测结果 | 返回形状(批量大小,锚框个数,6), 6为(从0开始的预测类别,预测边界框的置信度,坐标) |
生成多个锚框
1 | from mxnet import image, contrib, gluon, nd |
1 | 561 728 |
标注训练集的锚框
1 | from mxnet import image, contrib, gluon, nd |
1 | [[ 0.00e+00 0.00e+00 0.00e+00 0.00e+00 1.40e+00 1.00e+01 2.59e+00 |
输出预测边界框
1 | from mxnet import image, contrib, gluon, nd |
1 | [[[ 0. 0.9 0.1 0.08 0.52 0.92] |
多尺度目标检测
1 | from mxnet import image, contrib, gluon, nd |
目标检测数据集(皮卡丘)
疑问
有个疑问:
标签形状为(批量,m,5),5的第一个元素代表类别,而文中提到-1代表填充非法边界框
而我在测试MultiBoxTarget是否会自动忽略这种非法边界框的时候报错:
1 | Traceback (most recent call last): |
完整代码(之前那个标注边界框小改动的得到的):
1 | from mxnet import image, contrib, gluon, nd |
所以想知道这里如何处理真实边框数组中的非法边界框
正在等待回复
1 | from mxnet import image, contrib, gluon, nd |
单发多框检测(SSD)
模型训练
1 | from mxnet import image, contrib, gluon, nd, autograd, init |
1 | (2, 55, 20, 20) (2, 33, 10, 10) |
预测
1 | from mxnet import image, contrib, gluon, nd, autograd, init |
平滑L1范数损失(Smooth_l1)和焦点损失(Focal loss)
1 | from mxnet import image, contrib, gluon, nd, autograd, init |
区域卷积神经网络(R-CNN)系列
R-CNN
Fast R-CNN
1 | from mxnet import nd |
Faster R-CNN
语义分割和数据集
1 | from mxnet import gluon, image, nd |
1 | y.shape: (281, 500) |
全卷积层网络(FCN)
转置卷积层
1 | from mxnet import gluon, image, init, nd |
1 | [[[[ 1. 2. 3. 4.] |
构造模型
1 | from mxnet import gluon, image, init, nd |
1 | HybridSequential( |
模型数据测试
1 | from mxnet import gluon, image, init, nd, autograd |
1 | (1, 3, 320, 480) |
训练
1 | from mxnet import gluon, image, init, nd, autograd |
1 | epoch 1, loss 1.3595, train acc 0.737, test acc 0.821, time 23.9 sec |
预测
1 | from mxnet import gluon, image, init, nd, autograd |
1 | read 1114 examples |
样式迁移
1 | from mxnet import autograd, gluon, image, init, nd |
1 | training on: gpu(0) |