自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 视频流frame转换为base64格式数据

在调用百度云的功能模块时,是使用读取图片数据为二进制,然后转为base64。现在需要根据实际使用的需求,需要把读取的视频流的帧转换为base64。

2024-03-11 08:55:24 381

原创 yolov8多batch推理,nms后处理

yolov8, 多batch,nms

2024-03-08 16:00:41 594

原创 jetson agx上配置开机自启

jetson 上电自启

2023-10-08 15:38:27 171

原创 numpy tofile() 生成bin文件 float32转为int8

昇腾AI适配

2023-01-28 16:34:30 1091

原创 远程tensorboard

tensorboard远程访问

2022-12-23 16:44:18 839

原创 Ubuntu18.04 Cmake安装,报错openssl

ubuntu18.04下, 下载cmake-3.18.2.tar.gz,tar xvf cmake-3.18.2.tar.gzcd cmake-3.18.2./bootstrapsudo makesudo make install执行./bootstrap后报错:– Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR (miss

2022-05-30 15:07:15 1660 2

原创 ubuntu18.04 支持中文字符

在ubuntu18.04里,不支持中文字符的显示。1. 在ubuntu的/etc/profile下增加以下两个环境变量:export LC_ALL=C.UTF-8export LANG=C.UTF-8如下图所示2. 系统环境设置1)可以在命名行中执行:export LC_ALL=C.UTF-8export LANG=C.UTF-8获取暂时的中文字符的支持2)vim打开这个文件: ~/.bashrc添加:source /etc/profile重启永久获取的中文字符.

2022-05-17 15:02:49 548

原创 欧式距离转为百分比

1. 说明项目中生成了每个数据的2048维的向量,计算出不同数据之间的欧式距离值。把这些欧式距离转化为百分比,利于查看。2. 欧式距离值0.19806965771678278 0062_040.34178271687627493 0062_000.35060763229637537 0062_030.4269194352275009 0062_020.7022175557782318 0068_220.710594292130457 0068_240.7156636741429231 0

2022-04-22 16:06:20 951

原创 all query identities do not appear in gallery

问题描述: 在reid-strong-baslline使用Market-1501数据集训练reid模型后,使用自己的数据集仿照Market-1501制作相同格式的数据集。训练时报如下错误:查看原因:Martet-1501中Query和gallery集可能来自相同的摄像头视角,但是对于每个Query identity,来自同一个摄像头的gallery samples会被排除。基于上述原因,把gallery中的数据的名字做下更改例如:00011_c1s1_000001_02.jpg 改为 0001.

2022-03-30 14:46:47 795 1

原创 使用图片生成base64格式的数据,制作labelme标注生成的json文件

**1. 简介**平时标注数据时,例如检测框、分割等,使用labelme工具。labelme标注后会生成一个json文件。例如用于目标检测,由于需要标注的数据较多。前期可手动标注一部分数据,然后训练一个检测模型。通过该检测模型对剩余未标注的图片进行检测,生成对应图片的目标框的值。然后使用这些值,自己生成对应图片的json文件,这样就可以减少标注的工作量,剩下的就是对这些自动标注的数据进行质检就可以了。这个过程中,有一个比较关键的问题就是,json文件中有每个图片的base64编码。2. 图片转换

2022-03-29 09:50:59 3337 5

原创 retinaface中pytorch转onnx遇到的问题

说明:基于retinaFace源码,pytorch转onnx遇到的问题。**问题一:opset版本**解决方法 :添加opset_version=11参数torch_out = torch.onnx.export(net, inputs, output_onnx, export_params=True, verbose=True, input_names=input_names, output_names=output_names, opset_version=11)问题二:opencv版

2021-12-16 17:13:03 2164

原创 tensorboard 本地访问远程服务器中docker环境中log文件

1. 首先docker rundocker run --gpus all --name Detectron2 -itd --privileged –network host --volume="$PWD:/app" -v /dev:/dev -v /etc/localtime:/etc/localtime:ro nvidia/cuda:11.1.1-cudnn8-devel-ubuntu18.04 /bin/bashdocker run的时候添加参数–network host,docker网络环境映射

2021-12-16 17:11:01 1002

原创 计算时间间隔(高精度)

#include <chrono>#include <iostream>#include <time>#include <unistd.h>using namespace std;int main(){ auto beginTime = std::chrono::high_resolution_clock::now(); sleep(5); auto endTime = std::chrono::high_resoluti

2021-10-08 15:44:49 110

原创 旭日3 -- 颜色空间转换(BGR、NV12)

前言:因为最近在研究地平线旭日xj3AI芯片的使用,其中牵涉到颜色空间转换的问题。因为好时间没有使用过C++,有点生疏,这里做个记录。旭日xj3中使用的是NV12格式的数据,这里主要基于C++、opencv库完成BGR到NV12的互相转换。NV12简单介绍:图像格式为NV12格式,那么图像大小是wxhx3/2,具体就是Y分量大小是wxh,UV分量大小为wxh/2;如果图像是Y格式,那么图像大小是wxh。代码实现:NV12转BGR 方式一:#include <opencv2/hi

2021-10-08 14:00:34 4307

原创 vscode 添加 includePath

使用vscode打开C++项目时,vscode无法找到头文件路径解决:编辑~/.vscode/c_cpp_properties.json(ctrl + shift + p,键入C/Cpp : Edit Configurations,这样就打开了配置文件), 在includePath字段添加头文件的路径即可...

2021-09-22 17:47:37 3942

原创 执行pip/pip3命令报错:sys.stderr.write(f“ERROR: {exc}“)

pip/pip3升级到最新版本(>21)后出现错误Python 2.7 已于2020年1月1日到期,请停止使用。请升级您的Python,因为不再维护Python 2.7。pip21.0将于2021年1月停止对Python 2.7的支持。pip 21.0将删除对此功能的支持。解决办法:将pip降级,可以考虑降到pip 20.3.4版本。可执行下面两条指令:wget https://bootstrap.pypa.io/pip/2.7/get-pip.py如果是升级pip,执行: pyt

2021-07-08 09:56:05 1667

原创 pytorch: ModuleNotFoundError: No module named ‘models‘

使用yolov5去做检测,正常使用的时候,没有问题。后面因为使用pyqt5编写了一个小demo,使用到yolov5检测的功能,出现的上面问题。查看原因时文件目录结构的问题初始启动程序main.py内容更改后的内容main.py函数中添加了:root_path = os.getcwd()sys.path.insert(0, root_path + "/application/deepsort/")/application/deepsort/, 为原始yolov5工程执行检测时,启动的文.

2021-06-24 18:03:21 1489 1

原创 Pytorch 读取二进制格式的数据集来训练

使用pickle制作类cifar10二进制格式的数据集使用pytorc框架来训练(以猫狗大战数据集为例)import torchimport osimport torchvision.transforms as transformsimport torch.nn as nnimport torch.nn.functional as Fimport torch.optim as optimfrom PIL import Imageimport pickleimport numpy

2020-12-16 13:57:30 2129

原创 使用自己人脸数据集制作成COCO格式数据集

背景因为最近查看的最新的检测算法(2018-2019),使用的数据集大都是VOC或者COCO数据集。还有的算法只使用COCO格式的数据集。因为VOC数据集格式容易实现,只需要每张图片和相应的.xml文件就行了。而COCO数据集中的.json文件,则比较复杂。下面介绍COCO数据集相关内容,使用自己人脸数据集制作COCO格式的数据集的代码实现和此过程中应该注意的问题。准备.jpg文件.x...

2019-04-09 15:13:12 3757 2

原创 FPN_Pytorch实现(pytorch 0.2.0版本,0.2.0迁移到0.4.0版本)

参考源码github地址:https://github.com/guoruoqian/FPN_Pytorch/不知道原作者是否能够跑通,在自己的环境中,基于pytorch 0.2.0(python2.7)和pytorch 0.4.0(python3.5)都有些许bug。下面记录两种环境中,出现的问题和pytorch 0.2版本迁移到0.4版本时,应该注意的地方。另一篇ssd.pytorch...

2019-02-27 14:32:32 2446 3

原创 ssd.pytorch源码迁移实现(pytorch版本从0.2迁移到0.4(1.0))

pytorch版本ssd源码地址:https://github.com/amdegroot/ssd.pytorch以前都是使用caffe框架,近期开始pytorch框架的使用。由于pytorch版本从0.1-0.3升级到0.4时变化较大,而且许多算法使用的是0.4以下版本,现在为了方便,都使用0.4版本的pytorch,但使用该源码训练模型时,出现一些因版本等问题出现的bug。下面就以ss...

2019-02-25 17:59:06 3793 16

原创 强化学习(一)Q-Learning/DQN之CartPole

游戏的全过程可以理解为AI智能体和环境之间的互动,我们把其中复杂的因素抽象为三个变量——报酬、行动、状态。状态编号名称最小值最大值0小车的位置-2.42.41小车的速度-infinf2木棒的角度-41.841.83木棒的速度-infinf...

2019-01-25 09:52:01 3024

原创 配置win10+vs2013+cuda8.0环境,解决cuda, vs兼容问题

1 前言由于前段时间要使用windows下的IDE中的仿真库来熟悉AI芯片的使用,在使用仿真库是可以使用cuda加速,故配置cuda环境。(win10,gtx1050ti),配置cuda环境时,使用的是cuda_8.0.61_win10.exe,出现下面的错误:通过自定义的方式取消Visual Studio Intergration进行安装这样安装cuda后可以正常使用cuda.如果...

2019-01-11 14:47:24 3794

原创 YOLOv3转换为caffe模型

yolov3里面有些层,比如:shortcut, route, upsample, yolo等这些层是caffe不支持的,但在caffe中可以用eltwise替换shortcut,用concat替换route,但是yolo层只能自己实现写了, upsample可以自己在caffe里添加该层的实现。1 caffe中添加upsample层的实现感谢chen大神提供的代码。添加upsample...

2019-01-04 13:36:47 9388 8

原创 YOLOv3实战记录

1. 下载YOLOv3工程并编译配置git clone https://github.com/pjreddie/darknetcd darknetvim Makefile编辑该文件GPU=1 #使用GPU设置为1, CPU设置为0CUDNN=1其实,很多博客中说,根据自己的路径,还应修改NVCC, COMMON, LDFLAGS等选项。我这里只修改了GPU和CUDNN就能使用GPU...

2018-12-28 15:49:29 3419 1

原创 起步上路

始于2016-09-11开篇,中间基于工作的内容,记录了几篇相关内容的博客,离上一次发博客(2017-07-24),也过了1年多的时间。这个期间,开始转战人工智能方向,深度学习算法的内容。几经磨难,算是踏入门槛,期间也记录了些许内容。期间也看了各路朋友相关的博客内容,其中不乏精彩之作,为初学者提供了很好的帮助。目前接触和比较熟悉的是目标检测相关的内容,大多基于caffe深度学习框架,博客内容不...

2018-12-28 11:25:13 147

原创 OCX制作CAB(三) -- INF文件的编写及WEB JS 调用OCX和CAB

2.4、INF 文件INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件设备的信息或脚本以控制硬件操作。 1)结构 INF文件其实是一种纯文本文件,可以用任意一款文本编辑软件来打开进行编辑,如记事本、写字板等。INF文件有一整套的编写规则,每一个INF文件都是严格按照这些规则来

2017-07-24 12:02:21 706

原创 OCX制作CAB(二)-- OCX打包CAB和签名

大家知道,得到 OCX 之后,如果想要调用,首先要注册。在不注册的情况下,没办法调用 OCX 。 最简单的注册办法是手动注册。手动注册需要在命令行操作。对于开发人员来说,多多少少要和命令行打交道,可能没有问题,不过对于使用我们系统的客户来说,让他进行命令行操作的确不合适。不管我们文档写得多么详细,对客户来说这都是不友好的,而且手动注册也设计到安全性问题。所以就需要在客户不知情的情况下自动对

2017-07-24 11:20:46 549

原创 OCX制作CAB(一) -- OCX工程的创建

第一章:OCX工程的创建,及生成相应的OCX文件1、创建简单的OCX文件并调试调用 这里不再对该种情况做详细介绍,网络上有许多类似的文档2、OCX封装dll 2.1、创建OCX工程 2.2、添加功能函数,对应于该工程文件要实现的功能的接口 这里举一个例子说明(我这里添加一个读取卡片信息的接口)

2017-07-24 11:11:20 429

原创 JAVA调用DLL -- JNA和Fat Jar的使用及打包问题(二)

…接着上面第一篇,继续 3-3、工程打包问题 由于上面的工程中使用了外部的jar包jna.jar,在该工程打包后的jar包 中,包含jna.jar。由于一般的打包方式,使打包后生成的IDCardCPPToJava_fat.jar中的jna.jar不能使用,而不得不再次引用(import)jna.jar包。为了解决这个问题,可以使用Fat Jar来处理。 由于上面已经介绍的Fat

2017-07-24 10:46:44 1811 1

原创 JAVA调用DLL -- JNA和Fat Jar的使用及打包问题(一)

概述: 由于工作的需要,探索了下有关JAVA调用DLL方面的内容,经过三天的努力,基本掌握了解决此问题所用到的内容。 后面的应用工程中,逐渐加深的对JAVA调用DLL,及使用JAVA封装C++接口的方法和方式的理解,并对给文档进行补充总结。 在解决此问题的过程中,需要用到的相关内容有JNA和Fat Jar。1、 工具简介1-1、 JNA简介 JNA(Java Nati

2017-07-24 10:19:12 3573 3

原创 Eclipse for C/C++(六)调试

使用Eclipse for C/C++的调试工具,进行调试。下面介绍调试两种不同文件类型的方法。 1、调试应用程序 2、调试dll文件一、&&调试应用程序&&1、创建简单的应用程序“exetest”。 2、添加“断点”, –在要添加断点的代码行,“行号前”双击,如下图所示 3、调试: 点击图标 进行调试 或“运行”–>“调试配置…”。在弹出的对话框中,“C/C

2016-09-20 23:11:05 12960 1

原创 Eclipse for C/C++(五)文件导入--已有工程和Git工程

下面介绍导入文件的两种方式,两种不同的文件保存方式。1、常规:现有项目到工作空间中 2、Git: 来自Git的项目导入步骤:这两种方法的步骤基本相同。 “文件”–>“导入…”选择导入源:选择一种导入方式,找到相应项目文件所在的路径。下面用图例,来展示两种方式添加工程的步骤。一、添加现有项目到工作空间添加现有项目到工作空间第一步:选择“现有项目到工作空间”,下一步 第二步:“选择根

2016-09-20 22:48:54 17555 2

原创 Eclipse for C/C++(四)编译器

这里简单说明一下,编译器选择的问题。“项目”–>“属性”–>“C/C++构建”–>“工具链编辑器” 在“当前工具链”中选择相应的编译器。(这里会显示所有,本机中已经安装的编译器,根据不同需求,选择相应的编译器) 预编译同一个工程中,不同设备使用不同的文件来生成相应的dll。而选择生成什么设备对应的dll时,通过预编译的指定来决定。 例如:设置预编译的步骤:1)“项目”–>“属性”–>“C/C+

2016-09-20 22:25:28 2737

原创 Eclipse for C/C++ (三)编写DLL文件之def文件的使用

一、def文件说明 通常我们编写动态链接库时,一般使用的都是vc或vs等相关的集成开发环境。在编写的过程中,当使用__stdcall 标准方式调用时,有一个问题是经常遇到的,那就是导出的函数名的问题。 在vc或vs相关集成开发环境下,有许多相关的文档,说明了解决问题的方法,这里不再赘述。由于工作的原因,需要在Eclipse for C/C++上编写相应的动态库文件。经过两天的摸

2016-09-20 22:15:58 4539 2

原创 Eclipse for C/C++(二)编写DLL文件之创建项目

编写简单的应用程序时,和其他平台相比,并没有太大的差别。(这里不做详细介绍)下面详细介绍,编写DLL项目时,需要了解和掌握的一些内容。比如,创建项目的步骤、需要的文件类型、编译器的选择、链接器的选择和链接文件的使用、生成文件的名称等。1、”文件“ –>“新建”–>“C++项目”, “点击”下一步,完成 2、(如前面所述)添加相应的头文件、源文件,分别命名为dlltest.h、dlltest.

2016-09-18 22:19:33 1987

原创 Eclipse for C/C++(一)简介和简单使用

一、Eclipse for C/C++简介:Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过外挂程式使其作为其他计算机语言比如C++和Python的开发工具。 搭建Eclipse for C/C++集成开发环境,可以有两种方式: 1、直接下载Eclipse for C/C++版本的应用程序,安装即可(eclipse-cpp-

2016-09-18 21:55:38 23980 2

原创 开篇

时光匆匆划过,转眼间已经毕业两年多了,由于个中缘故,去年才真正的进入IT行业,成为一名程序猿。虽不敢说历经沧桑,但也不复当年无知无畏,无忧无虑之态。作为一名软件工程师,只是美其名曰。菜鸟的天空还很辽阔,只是还待展翅的时刻。从业数月,也是刚开始自己的职业道路,慢慢的认识到工作的意义和重要性。虽不曾想过经世济国,也不怀其才,看看眼前的路,现如今,妄想、空谈已是昨日黄花,踏实的对待当下的工作,学好必

2016-09-11 09:47:48 269

空空如也

空空如也

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

TA关注的人

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