- 博客(19)
- 收藏
- 关注
原创 cv::FileStorage和cv::Mat使用遭遇
例如:入口角点应该在一个合理的距离内,它们之间没有第三个角点,对于标准的停车场,入口线和分割线的角度为90°或45°或135°,在这些方向上,沿着提出的分割线验证线的存在。delta_x和delta_y是车库终点相对于车库起始角点的偏移量。网络预测的另一输出为direction,direction包含两个通道,一个通道负责x’的预测,另一个通道负责y’的预测。读取的txt中最后一个值为0.00033882403,赋值后temp的最后一个值却为0.000316。
2024-09-12 10:35:30
434
原创 图像分类识别入门训练模型(PyTorch)
1、数据集加载(自定义加载数据集的方法,并分为训练集和测试集)本人常用该工程测试GPU Pytorch环境的搭建。2、网络加载(加载网络并加载预训练权重)包含了一个训练预测模型的完整流程。其中包含了训练准确率的可视化显示。3、网络训练与结果保存。2、模型的加载与预测。
2023-12-02 11:46:12
574
1
原创 常见的CNN卷积神经网络
一、FPN原来多数的object detection算法都是只采用顶层特征做预测,但我们知道低层的特征语义信息比较少,但是目标位置准确;高层的特征语义信息比较丰富,但是目标位置比较粗略。另外虽然也有些算法采用多尺度特征融合的方式,但是一般是采用融合后的特征做预测,而本文不一样的地方在于预测是在不同特征层独立进行的。二、Hourglass通过重复自底向上和自顶向下并联合中间结果的监督用在人体姿态估计中可以很好地利用身体不同部位的空间关系。其中的每个子网络如下三、HRNe..
2022-10-02 12:49:15
584
原创 VsCode配置C/C++开发环境
VsCode的配置难点就在于配置文件,网上很多教程给出的配置文件需要读者根据自己的安装路径修改,这对于新手来说极为不友好,且新手往往不明白配置文件中代码的含义,导致很多新手的配置文件出错,始终无法调试成功第一个程序。大多数时候,配置文件可以在程序调试通过后慢慢熟悉修改,因此本文给出了一种配置文件,无需任何修改!直接复制粘贴,你的程序就能运行。
2022-09-03 19:02:19
1010
原创 各种数据集标签的转换
代码均已上传至GitHub项目:LABEL-CONVERT1、InriaToYolov5.py此文件用于将INRIAPerson数据集转为YOLO
2022-01-04 17:17:38
4230
原创 Towards-Realtime-MOT源代码学习之YOLOLayer中的forward()函数
该函数用于计算置信度、目标框和id的损失。训练时,该函数在models.py中的Darknet()类中的forward()函数中调用将batchsize改为1,依次输出各变量的值def forward(self, p_cat, img_size, targets=None, classifier=None, test_emb=False): p, p_emb = p_cat[:, :24, ...], p_cat[:, 24:, ...] nB, nGh, nGw = p.s
2021-12-29 11:09:49
2043
原创 Towards-Realtime-MOT源代码学习之build_targets_thres()函数
该函数用于获取真实的置信度、目标框与id,其中目标框为投射到18*10大小特征图上的目标框def build_targets_thres(target, anchor_wh, nA, nC, nGh, nGw): ID_THRESH = 0.5 FG_THRESH = 0.5 BG_THRESH = 0.4 nB = len(target) # number of images in batch assert(len(anchor_wh)==nA)
2021-12-27 15:07:35
925
原创 Towards-Realtime-MOT源代码学习之JDETracker中的update()函数
该函数主要作用是将模型的预测输出进行处理,计算当前帧所检测到的目标对象与已有目标对象(前一帧所跟踪到的、一定时间内跟丢的、前一帧新出现的目标)之间的特征距离、iou距离,得到当前帧目标对象与已有目标对象的最佳匹配,然后根据目标对象的状态(跟住、跟丢、新出现、跟丢又出现、新出现但跟丢)进行相应的处理self.frame_id += 1activated_starcks = [] # activated_starcks在这段代码结束后包含三部分的对象: # ①前一帧跟住且这一帧也跟住了的
2021-12-15 18:03:25
4527
原创 AlphaPose源代码学习之getPrediction()函数
该函数的作用是从预测的热力图中获取关键点,位于eval.py中,完整代码如下def getPrediction(hms, pt1, pt2, inpH, inpW, resH, resW): ''' 从热力图中获得关键点 ''' assert hms.dim() == 4, 'Score maps should be 4-dim' maxval, idx = torch.max(hms.view(hms.size(0), hms.size(1), -1), 2)
2021-12-10 21:48:57
2074
5
原创 AlphaPose源代码学习之DetectionLoader中的update()函数
该函数调用YOLO检测模型检测出人员目标def update(self): for i in range(self.num_batches): img, orig_img, im_name, im_dim_list = self.dataloder.getitem() if img is None: self.Q.put((None, None, None, None, None, None, None)) ret
2021-12-10 15:45:40
2993
原创 AlphaPose源代码学习之DetectionProcessor中的update()函数
由于调试该程序查看变量输出的时候会同时以线程方式调用DetectionLoader,因此要在DetectionLoader的update()函数最后添加一个time.sleep(200000),让线程停下200000秒,否则,DetectionLoader会的以线程方式不断执行,在DetectionProcessor中获取到的视频图像帧、人员检测框等信息在不断变化。def update(self): # keep looping the whole dataset for i in..
2021-12-09 09:27:51
504
1
原创 Simple Baselines for Human Pose Estimation and Tracking源代码学习之JointsMSELoss()函数
该函数用于计算预测热力图与真实热力图的损失,在train()函数中调用依次输出函数中各变量的值,方便代码的理解class JointsMSELoss(nn.Module): def __init__(self, use_target_weight): super(JointsMSELoss, self).__init__() self.criterion = nn.MSELoss(size_average=True) self.use_t
2021-11-23 13:35:21
1563
2
原创 Simple Baselines for Human Pose Estimation and Tracking源代码学习之accuracy()函数
该函数用于计算关键点预测的准确率def accuracy(output, target, hm_type='gaussian', thr=0.5): idx = list(range(output.shape[1])) norm = 1.0 if hm_type == 'gaussian': pred, _ = get_max_preds(output) target, _ = get_max_preds(target) h =
2021-11-22 19:15:47
1593
3
原创 Simple Baselines for Human Pose Estimation and Tracking源代码学习之get_max_preds()函数
get_max_preds()函数主要从热力图中获取关键点的坐标,完整函数代码如下def get_max_preds(batch_heatmaps): ''' get predictions from score maps heatmaps: numpy.ndarray([batch_size, num_joints, height, width]) ''' assert isinstance(batch_heatmaps, np.ndarray), \
2021-11-20 19:04:34
946
2
原创 YOLOV5源代码学习之check_anchors()函数
该函数主要在train.py中调用为了方便直观的阅读代码,对代码中的变量值进行了输出def check_anchors(dataset, model, thr=4.0, imgsz=640): # Check anchor fit to data, recompute if necessary prefix = colorstr('autoanchor: ') print(f'\n{prefix}Analyzing anchors... ', end='') .
2021-11-10 14:50:37
2220
3
原创 YOLOV5源代码学习之ComputeLoss中的__call__函数
ComputeLoss()函数在train.py中调用。 def __call__(self, p, targets): # predictions, targets, model device = targets.device # 初始化loss lcls, lbox, lobj = torch.zeros(1, device=device), torch.zeros\ (1, device=device), tor
2021-11-08 11:54:15
2713
1
原创 YOLOV5源代码学习之build_targets()函数
build_targets()函数的作用:找出与该gt最匹配的先验框(anchor)下面的代码调试均是将train函数中的batchsize设置为2进行的,且每张数据集图片中只有一个目标为了更方便直观的理解代码,每一步都输出了变量的值#这里na为锚框种类数 nt为目标数 这里的na为3,nt为2na, nt = self.na, targets.shape[0]# 类别 边界盒 索引 锚框tcls, tbox, indices, anch = [], [], [], []# 利用ga.
2021-11-07 15:51:45
4298
3
原创 求最小K个数、进制转换、三数之和、iou计算
1、求最小K个数(设计一个算法,找出数组中最小的k个数。以任意顺序返回这k个数均可。)设计一个算法,找出数组中最小的k个数。以任意顺序返回这k个数均可。示例:输入: arr = [1,3,5,7,2,4,6,8], k = 4输出: [1,2,3,4]提示:0 <= len(arr) <= 1000000 <= k <= min(100000, len(arr))一开始想到的方法是直接排...
2021-09-06 15:39:12
373
mingw-x86-64-8.1.0-release-posix-seh-rt-v6-rev
2022-08-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人