- 博客(167)
- 资源 (5)
- 收藏
- 关注
原创 毫米波感知的原理
毫米波感知的原理:TOF,用来判断距离;多普勒效应,通过回波的频率变化来判断相对速度;测量方位角,可以通过两个并列天线的回波相位差,来得出方位信息。
2023-04-03 17:37:45
293
原创 CMake Write once, run everywhere
首先允许开发者编写一种平台无关的 CMakeList.txt 文件来定制整个编译流程,然后再根据目标用户的平台进一步生成所需的本地化 Makefile 和工程文件,如 Unix 的 Makefile 或 Windows 的 Visual Studio 工程。从而做到“Write once, run everywhere”。
2023-02-24 15:21:00
209
原创 C++ RAII
RAII 的做法是使用一个对象,在其构造时获取资源,在对象生命期控制对资源的访问使之始终保持有效,最后在对象析构的时候释放资源。
2023-02-24 12:13:36
184
原创 YOLOv8和General Focal Loss中的分支合并深度解析--从原理到实现
YOLOv5在工业界应用很多,也激发了人们对它的各种修改。但是,笔者看到的各类开源的YOLOv5修改版没有对检测头进行重新设计,比如采用流行的Anchor-Free的思想,也没有对Objectness分支进行修改。而这两点对于提高目标检测的召回率有着可解释的意义,简单的说,采用无锚框的做法可适应的目标范围更广,合并Objectness分支避免了去掉有价值的低质量预测框。YOLOv8对这两点进行了设计并采用了General Focal Loss的损失函数,笔者认为这两点为YOLOv8的涨点做出了贡献。
2023-02-14 11:08:26
374
原创 语义分割Mask的预测
FCN同时预测类别和对应的Mask全卷积网络先使用卷积神经网络抽取图像特征,然后通过 1*1 卷积层将通道数变换为类别个数(每个类别一层Mask),最后再通过转置卷积层将特征图的高和宽变换为输入图像的尺寸。因此,模型输出与输入图像的高和宽相同,且最终输出的通道包含了该空间位置像素的类别预测。Mask R-CNN先分类检测,然后预测Mask,串行Conlnst分类检测和Mask预测的并行方法...
2022-01-14 16:29:12
2341
原创 Transformer 的通用建模能力
像素-像素,物体-像素和物体-物体的关系建模。此前,前两种关系建模主要是分别由卷积和 RoIAlign 来实现的,最后一种关系通常没有很好的建模方法。但是,Transformer 中的注意力单元因其通用的建模能力,可以被应用到所有这些基本关系的建模中。一方面 Transformer 可以看作是一种图建模方法。图是全连接的,节点之间的关系通过数据驱动的方式来学习得到。由于任意概念(无论具体或抽象)都可以用图中的节点来表示,且概念之间的关系可以用图上的边来刻画,因此 Transformer 建模具有很强的通
2022-01-14 15:41:11
1889
原创 Swin Transformer 不重叠窗口
Swin Transformer 的主要思想是将具有很强建模能力的 Transformer 结构和重要的视觉信号先验结合起来。这些先验具有层次性(Hierarchy)、局部性(locality)以及平移不变性的特点(translation invariance)。Swin Transformer 的一个重要设计是移位的不重叠窗口(shifted windows),不同于传统的滑动窗,不重叠窗口的设计对硬件实现更加友好,从而具有更快的实际运行速度。...
2022-01-14 15:26:31
1912
原创 网络增强 (NetAug) 一种用于提高Tiny神经网络性能的新训练方法
NetAug 增强了网络(反向 dropout),而不是将噪声插入数据集或网络中。它将小模型放入更大的模型中,并鼓励它作为更大模型的子模型工作,以获得额外的监督,以及作为独立模型的功能。在测试时,仅使用微小模型进行推理,从而产生零推理开销。...
2022-01-14 14:48:43
332
原创 预训练Scale Match
For dataset X, we define the probability density function of objects’ size s in X as Psize(s;X). Then we define a scale transform T, which is used to transform the probabilitydistribution of objects’ size in extra dataset E to that in the targeted dataset
2021-03-24 12:59:00
314
原创 骨干网络对比-EfficientNet-Lite
训练后量化使用 Relu6替代swish 激活函数,swish激活复杂度高,并且对量化有不利影响。Efficientnet Architecture模型扩展的有效性在很大程度上依赖于baseline网络。为了进一步提高性能,作者还开发了一个新的基线网络,通过使用 AutoML MNAS 框架执行神经结构搜索,优化了准确性和效率。 最终的架构使用移动反向bottleneck卷积(MBConv) ,类似于 mobileenetv2和 MnasNet。作者系统的研究了网络深度(Depth)、宽度(..
2021-03-18 22:39:27
2131
原创 YOLOv4-yiny 消融实验
We design an experiment to show how flexible can be if one uses CSPNet with partial functions in computational blocks. We also compare with CSPDarknet53, in which we perform linear scaling down on width and depth.
2021-03-17 20:11:51
827
原创 YOLOv3的多尺度检测
YOLOv3的网络结构多尺度检测YOLOv3通过聚类的方法得到9种尺度的anchor,将9种尺度的anchor box均匀的分配给3种尺度的特征图。实现了多尺度检测。YOLOv3-Tiny在YOLOv3的基础上去掉了一些特征层,只保留了2个独立预测分支,如下图所示。...
2021-03-15 11:21:54
2675
原创 FPN自底向上的通路增强
Our framework is illustrated in Figure 1. Path augmentation and aggregation are conducted for improving performance. A bottom-up path is augmented to make low-layer information easier to propagate. We design adaptive feature pooling to allow each proposal.
2021-03-09 08:19:13
360
1
原创 小目标检测难点分析与解决方案
相对于原图比例的定义小目标检测的场景Anchor 自适应算法差分进化算法超参优化算法BML自动超参搜索极端高宽比的案例----货架挡板的检测小目标数据增广目标尺度分布不均衡,小目标样本稀缺,漏检率高。...
2021-02-04 21:36:47
2450
1
原创 FPN的改进----引入融合因子(fusion factor)提升对小目标的检测能力
原文链接:Effective Fusion Factor in FPN for Tiny Object Detection本文提出了一种新的概念:融合因子(fusion factor),以控制深层传递到浅层的信息,以使FPN适应小目标的检测,实验证明,在小目标检测数据集上(如TinyPerson)性能提升明显。动机An intuitive question arises: why current FPN-based detectors unfit tiny object detection and
2021-01-30 22:19:28
5185
1
原创 COCO-style 数据集的准备与训练
COCO-style 标注格式json 标注文件的格式{ "info": info, "licenses": [license], "images": [image], "annotations": [annotation], "categories": [category]}annotationsannotation{ "id": int, # 对象ID,因为每一个图像有不止一个对象,所以要对每一个对象编号(每个对象的ID是唯一的)
2021-01-24 20:53:40
626
1
原创 残差注意力网络原理与应用分析
Attention not only serves to select a focused location but also enhances different representations of objects at that location.Recent advances of image classification focus on training feedforward convolutional neural networks using “very deep” structure.
2021-01-13 19:36:34
3264
原创 DSSD解卷积单阶段检测器核心思想解析与实践
引言卷积神经网络在结构上存在固有的问题,高层网络感受野比较大,语义信息表征能力强,但是特征图分辨率低,几何细节信息表征能力弱。低层网络感受野比较小,几何细节信息表征能力强,分辨率高,但语义信息表征能力弱。SSD采用多尺度的特征图来预测物体,使用具有较大感受野的高层特征信息预测大物体,具有较小感受野的低层特征信息预测小物体。这样就带来一个问题:使用的低层网络的特征信息预测小物体时,由于缺乏高层语义特征,导致SSD对于小物体的检测效果较差。而解决这个问题的思路就是对高层语意信息和低层细节信息进行融合。T
2021-01-09 10:48:35
269
原创 Beyond Skip Connections -- TDM 特征融合模块设计思想
Top-down 的神经生物学基础In the human visual pathway, once receptive field properties are tuned using feedforward processing,top-down modulations are evoked by feedback and horizontal connections.These connections modulate representations at multiple levels and
2020-12-31 22:09:34
401
原创 使用 Slim 评估模型(Evaluating Models)
Slim 评价指标(Metrics)slim提供了很多评价指标操作(metric operation),这些op使得模型的评估变得容易。理论上,计算评价指标的值能够被分为三部分:初始化(Initialization):初始化评价指标相关的一些variables;聚合(Aggregation):执行很多计算评价指标需要的操作(sum等);最终操作(Finalization):(可选) 执行任何计算评价指标的最终操作。例如,计算均值(means)、最小值(mins)、最大值(maxes)等。ima
2020-12-29 15:12:22
465
1
原创 在一个不同的任务上微调模型(Fine-Tuning a Model on a different task)
我们有一个预训练好(pre-trained)的VGG16模型。这个模型是在1000类的ImageNet数据集上训练的。但是,我们想要将它应用到只有20类的Pascal VOC数据集上。为了达到这个目的,我们可以用预训练好的模型的参数来初始化我们的新模型(除了最后一层):# Load the Pascal VOC dataimage, label = MyPascalVocDataLoader(...)images, labels = tf.train.batch([image, label], bat
2020-12-29 11:20:15
258
原创 训练 VGG 模型(Working Example: Training the VGG16 Model)
import tensorflow as tfimport tensorflow.contrib.slim.nets as netsslim = tf.contrib.slimvgg = nets.vgg...train_log_dir = ...if not tf.gfile.Exists(train_log_dir): tf.gfile.MakeDirs(train_log_dir)with tf.Graph().as_default(): # Set up the dat
2020-12-28 20:21:35
325
原创 让 slim 知道额外的 loss 并处理 losses
# Load the images and labels.images, scene_labels, depth_labels, pose_labels = ...# Create the model.scene_predictions, depth_predictions, pose_predictions = CreateMultiTaskModel(images)# Define the loss functions and get the total loss.classificati
2020-12-28 20:11:53
158
原创 用紧凑的代码定义模型
def vgg16(inputs): with slim.arg_scope([slim.conv2d, slim.fully_connected], activation_fn=tf.nn.relu, weights_initializer=tf.truncated_normal_initializer(0.0, 0.01), weights_regularizer=sl
2020-12-28 19:59:25
130
原创 梯度下降对比图解与优化器的选择
从上图可以看出,在鞍点(saddle points)处(即某些维度上梯度为零,某些维度上梯度不为零),SGD、Momentum与NAG一直在鞍点梯度为零的方向上振荡,很难打破鞍点位置的对称性;Adagrad、RMSprop与Adadelta能够很快地向梯度不为零的方向上转移。从上面两幅图可以看出,自适应学习速率方法(Adagrad、Adadelta、RMSprop与Adam)在这些场景下具有更好的收敛速度与收敛性。如果你的数据特征是稀疏的,那么你最好使用自适应学习速率SGD优化方法(Adagrad、A.
2020-12-18 21:46:39
333
1
原创 YOLOv3模型的优化
PP-YOLOv3模型结构Backbone的优化ResNet-D 优化信息丢失问题可变性卷积对检测性能的提升,特别是对检测速度的提升。其他优化策略卡间同步batch normDrop Block 减少过拟合指数滑动平均,把梯度的上下抖动平滑掉。用IoU来表征定位精度乘到score里,通过定位精度调整score让定位精度高的检测框排在前边。结合Sigmoid函数理解...
2020-12-18 16:22:28
1358
原创 cv2图像的基本操作
jupyter lab 中的实验import numpy as npimport cv2from matplotlib import pyplot as pltimg = cv2.imread("model01.jpg") #当前目录im2=img[:,:,::-1] #load image as bgrplt.imshow(im2)#显示原图im4=np.clip(img, 0, 255)#限制图像的范围plt.imshow(im4)im3=img[:, ::-1]#图像翻转
2020-12-11 20:28:18
317
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人