自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 pycharm通过ssh连接Atlas远程代码调试

近期买了块Atlas 200I DK 2A尝试做AI部署工作,记录下pycharm远程调试过程。

2024-09-30 15:51:40 334

原创 使用atc工具进行onnx到om转换踩坑记录

在客户端输入得到如下图所示:得到的310B4就是设备名称,在使用时在前面加上Ascend就是–soc_version的值。

2024-09-30 15:20:50 1086

原创 语义分割MIoU代码解析

MIoU计算具体代码可去大神的仓库获取,主体逻辑代码如下:首先拿到所有的label和pre然后读取每个标签-预测图像对对一个图片计算n×n的hist矩阵,n表示预测类别,我这次用的是5。经过计算,就可以得到所有标签-预测图像对中,0到n方-1这n方个数中每个数出现的次数。这是一种很巧妙的做法,这个矩阵对角线上的数字,意味着每个类别预测值和标签值完全相同的个数。

2024-08-21 17:06:52 432

原创 DETR pytorch代码详解及原理分析

DETR 将目标检测视为集合预测问题,使用一种匹配方法(如匈牙利算法)来将预测的框与真实框进行匹配。模型会生成固定数量的预测框,并通过匈牙利算法来确保预测框与真实边界框的匹配,这种方式自然地解决了重叠和冗余问题。DETR 的设计使其能够在无须 NMS 的情况下直接生成高质量的目标检测结果,通过全局上下文、集合预测和有效的匹配算法,减少了重叠和冗余框的问题。这种简化的处理方式是其相较于传统目标检测方法的一个主要优势。DETR 通过 Transformer 框架直接从输入图像中预测边界框和相应类别。

2024-08-12 16:44:59 652

原创 目标检测map代码分析

统计各个类别的所有框的json:airplane_dr.json,遍历所有预测框,把该类别的所有框都写进来,格式是{“confidence”:confidence, “file_id”:file_id, “bbox”:bbox,经过按照confidence从高到低排序。根据ap的计算公式可以看到,rec没有变化的区间内,区间内取准确率是取最后的索引值(讲道理应该取最大的啊,也就是mpre[]i-1才对嘛)也就意味着,置信度低的框,其tp的个数统计趋于平稳,fp会增加。将召回率前面加个0,后面加个1。

2024-08-07 11:37:42 913

原创 目标跟踪调研

多目标跟踪MOT(Multiple Object Tracking),也有一些文献称作MTT(Multiple Target Tracking)。对视频中的行人、汽车、动物等多个目标进行检测并赋予ID进行轨迹跟踪。不同的目标拥有不同的ID,以便实现后续的轨迹预测、精准查找等工作。目前多目标跟踪领域的重要基准是, OpenDataLab平台已经上架了多目标跟踪(MOT)系列数据集https://opendatalab.com/?

2024-02-02 18:16:10 865

原创 服务器伪分布式安装hadoop+kafka

Windows打开cmd,输入ssh-keygen,然后三下回车。会在C盘用户目录下生成.ssh文件夹。在/etc/profile.d/my_env.sh中配置JAVA_HOME。source一下/etc/profile文件,让新的环境变量PATH生效。source一下/etc/profile文件,让新的环境变量PATH生效。会在/home的用户目录生成.ssh文件夹。在linux的.ssh文件夹中创建authorized_keys。1.1 进入$HADOOP_HOME/etc/hadoop。

2023-04-21 10:49:04 162

原创 Django自定义全局异常类

Django中通过继承django.utils.deprecation.MiddlewareMixin中间件来自定义类。由请求到逐个中间件运行,在逐个返回。process_request(self, request):在每个request在被决定使用哪个view之前调用,它会返回None或HttpResponse对象。process_exception(self, request, exception):exception是view函数中raise的Exception对象,当 view 函数 raise 一

2023-04-19 17:29:23 448

原创 windows安装hadoop3.1.3及一些小坑坑

windows安装hadoop3.1.3

2023-03-08 09:40:42 590

原创 python手写lfw数据集转pair.txt形式

python手写lfw数据集转pair.txt形式最近在搞facenet的人脸识别,用到了lfw数据集,发现没有个合适的将自己数据集转为lfw_pair.txt的代码,所以自己撸了一个。数据集用的就是lfw,文件夹是名字,名字文件夹內放的就是人脸图像。没有其他文件所有没有做是否是图像的校验。主要思路就是根据lfw的要求,匹配数据通过同一个人有多张人脸构造,不匹配数据通过不同文件夹的内容构造。利用python的set数据结构去重特性,一直往里面加就行了,加到数量够了就break。然后将两个set集合

2022-03-21 17:29:24 2181 16

原创 以YOLOV4为例详解anchor_based目标检测训练过程

以YOLOV4为例详解anchor_based目标检测训练过程yolov4的代码使用的是Bubbliiiing大神提供的代码,代码地址是https://github.com/bubbliiiing/yolov4-pytorch。target形成过程将xml中的标注信息转为box形式首先写入图片名,然后经过convert_annotation方法增加box属性。list_file.write('%s/VOC%s/JPEGImages/%s.jpg'%(os.path.abspath(VOCdevk

2022-01-24 18:02:26 5817 2

原创 pytorch转onnx部署+一些小坑坑

pytorch转onnx安装onnxconda install onnx -c conda-forge安装onnxruntimepip install onnxruntime下载个模型试试import torchimport torchvision.models as models # downloadmodel = models.resnet50(pretrained=True)# 保存成pthtorch.save(model, 'resnet50.pth')保存成onnx

2021-12-15 12:03:40 6423 4

原创 linux根据本地conda虚拟环境进行docker部署

环境打包-n 选择conda虚拟环境名-o 在当前位置输出,可设置文件名-p 在指定位置输出,文件名为虚拟环境名.tar.gz运行Django程序也可启动虚拟环境。打包好的虚拟环境可用于docker中,省去了docker中重新安装依赖库可能出现安装失败,包名错误等问题。tips:在这个过程,如果conda创建的是python3.10以上环境,可能会出现如下图所示问题解决方法比较简单粗暴直接把/miniconda3/envs 下使用的虚拟环境打包压缩即可然后解压运行程序根据cond

2021-11-30 11:10:57 4477

原创 python通过Canal进行数据监控后的数据缓存设计

python通过Canal进行数据监控后的数据缓存设计使用场景本次做了个人脸识别项目,分为编码阶段和检测阶段。编码阶段将输入人脸进行编码,存到Mysql数据库中。检测阶段读取数据库全量数据,将输入的检测图像进行人脸编码与数据库中编码好的数据进行比对。由于编码数据可能有增删改的操作,且批量较大,所以在本地做了数据缓存用于编码对比。并通过Canal对Mysql数据库进行行为监测,将本地缓存数据与数据库操作行为数据进行合并,构成新的本地缓存数据。Canal客户端在服务中单独启了一个Canal客户端线程,

2021-11-24 15:52:37 1607

原创 利用pytorch来深入理解CELoss、BCELoss和NLLLoss之间的关系

pytorch损失函数总结损失函数为为计算预测值与真实值之间差异的函数,损失函数越小,预测值与真实值间的差异越小,证明网络效果越好。对于神经网络而言,损失函数决定了神经网络学习的走向,至关重要。pytorch中的所有损失函数都可以通过reduction = ‘mean’或者reduction = ‘sum’来设置均值还是总值。L1 LossL1 Loss即绝对值损失,为预测值和真实值间误差的绝对值。L1(x,y)=1N∑i=1n∣xi−yi∣ L1(x, y) = \frac{1}{N} \su

2021-11-11 14:33:16 14836 4

原创 由`non_max_suppression`思考box形成过程

non_max_suppression代码分析简单根据置信度进行NMSdef non_max_suppression(boxes, conf_thres=0.5, nms_thres=0.3): detection = boxes # 1、找出该图片中得分大于门限函数的框。在进行重合框筛选前就进行得分的筛选可以大幅度减少框的数量。 mask = detection[:, 4] >= conf_thres detection = detection[mask]

2021-11-08 16:17:58 3030

原创 python定时任务调度器APScheduler

定时任务scheduler 三种trigger:corn interval datecorn:year (int|str) – 4-digit yearmonth (int|str) – month (1-12)day (int|str) – day of the (1-31)week (int|str) – ISO week (1-53)day_of_week (int|str) – number or name of weekday (0-6 or m

2021-08-20 13:20:32 871

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除