自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Python游戏脚本开发-大漠插件调用

大漠插件是集前后台,文字识别,图色,键鼠,窗口,内存,DX,Call等功能于一身的综合插件, 作者开发维护多年, 现在常见的自动化软件多依赖此插件实现.

2024-05-21 10:54:26 136

原创 windows系统CUDA的详细安装教程

hello,大家好,之前一直在ubuntu系统上做开发,今天给大家分享如何在windows系统上安装CUDA。首先需要下载两个安装包,CUDA toolkit 和 cuDNN,CUDA(Compute Unified Device Architecture)是由NVIDIA开发的并行计算平台和编程模型。它利用了NVIDIA的GPU(图形处理器)来加速计算任务,使得许多复杂的计算任务可以在GPU上并行处理,从而提高计算性能。

2024-04-23 14:14:48 1414

原创 windows平台游戏外挂实现原理

windows游戏外挂泛滥的根本原因就是太容易,只需要明白windows的原理。我们都知道windows下的可执行文件的扩展名为exe(executable file)。exe文件是一个二进制文件,是由0、1构成的数据流(stream),把这个数据流想象成一条有固定长度的纸带,纸带上有等分的格子,每个格子上有一个符号,要么是0,要么是1,然后按照一定的要求来读取上面的内容,比如每8个格子代表一个信息如:01000101。

2024-04-15 10:07:39 732

原创 基于TensorRT在jetson nx中部署yolov5目标检测模型

Jetson Xavier NX是nvidia开发的体型超小(只有70mm*45mm)的AI超级计算机,适用于嵌入式系统和边缘系统。NVIDIA® Jetson Xavier™ NX 是外形小巧的模组系统 (SOM),可为边缘系统提供超级计算机性能。借助高达 21 TOPS 的加速计算能力,它可以并行运行现代神经网络并处理来自多个高分辨率传感器的数据,这是完整 AI 系统的要求。Jetson Xavier NX 是生产就绪型产品,可支持所有热门 AI 框架。

2024-04-09 18:11:55 1158 1

原创 基于c++onnxruntime部署yolov5模型

最近因业务需要需要使用yolo模型来做目标检测的任务,翻了网上的各种博客没有比较完整的教程,在部署过程踩了不少坑,特别是在装英伟达驱动和cuda\cudnn版本时,甚至把ubuntu系统搞坏。于是想把训练及部署过程记录下来,并留给后来者方便使用。实验的系统是ubuntu20.04。

2024-04-09 17:40:57 1056

原创 windows系统搭建OCR半自动标注工具PaddleOCR

PaddleOCR是一个基于飞桨开发的OCR(Optical Character Recognition,光学字符识别)系统。其技术体系包括文字检测、文字识别、文本方向检测和图像处理等模块。

2024-04-09 15:04:35 1505

原创 ubuntu下修改硬盘名字和开机挂载硬盘

ubuntu下修改硬盘名字和开机挂载硬盘。

2024-03-14 14:07:19 584

原创 Ubuntu系统安装docker

Docker是一种流行的容器化平台,它能够简化应用程序的部署和管理。本文将介绍在Ubuntu操作系统上安装Docker的步骤,以便我们可以开始使用Docker来构建和运行容器化应用程序。获取更多技术资料,请点击!系统版本本文以Ubuntu20.05系统为例安装docker,Ubuntu官方下载地址。检查卸载老版本dockerubuntu下自带了docker的库,不需要添加新的源。但是ubuntu自带的docker版本太低,需要先卸载旧的再安装新的。

2024-03-13 10:21:42 862

原创 基于Pytorch搭建分布式训练环境

随着近几年大模型的问世,传统的单机单卡模式已经无法满足超大模型进行训练的要求,如何更好地、更轻松地利用多个 GPU 资源进行模型训练成为了人工智能领域的热门话题。我们今天为大家带来的这篇文章详细介绍了一种名为 DDP(Distributed Data Parallel)的并行训练技术,作者认为这项技术既高效又易于实现。(1) DDP 的核心思想是将模型和数据复制到多个 GPU 上并行训练,然后汇总平均梯度。

2024-03-08 17:02:02 1246

原创 KL散度和交叉熵的应用介绍

KL散度(Kullback-Leibler Divergence)和交叉熵(Cross Entropy)是在机器学习中广泛使用的概念。这两者都用于比较两个概率分布之间的相似性,但在一些方面,它们也有所不同。本文将对KL散度和交叉熵的详细解释和比较。在本文中,我们介绍了KL散度和交叉熵这两个概念,并比较了它们之间的异同。KL散度用于比较两个概率分布之间的差异,而交叉熵用于衡量模型预测和真实标签之间的差异。尽管它们有一定的联系,但它们在使用和应用上还是有所区别。

2024-03-07 17:06:59 891

原创 通过实验验证GAP、GMP、FC性能表现

简单来说,就是在卷积层之后,用GAP替代FC全连接层。有两个有点:一是GAP在特征图与最终的分类间转换更加简单自然;二是不像FC层需要大量训练调优的参数,降低了空间参数会使模型更加健壮,抗过拟合效果更佳。我们再用更直观的图像来看GAP的工作原理:假设卷积层的最后输出是h × w × d 的三维特征图,具体大小为6 × 6 × 3,经过GAP转换后,变成了大小为 1 × 1 × 3 的输出值,也就是每一层 h × w 会被平均化成一个值。

2024-02-29 11:23:57 915

原创 Vision Transformer(VIT)模型介绍

这种映射方式的假设是,输入图像的特征可以被表示为低维空间中的点,这些点之间的距离可以捕捉到图像的局部和全局结构。在Vision Transformer(ViT)模型中,也存在着Inductive bias,它指的是ViT模型的设计中所假定的先验知识和偏见,这些知识和偏见可以帮助模型更好地学习和理解输入图像。Patch embedding是Vision Transformer(ViT)模型中的一个重要组成部分,它将输入图像的块转换为向量,以便输入到Transformer编码器中进行处理。

2024-01-18 18:09:23 969

原创 头部姿态估计算法原理

头部姿态估计是通过一幅面部图像来获得头部的姿态角.

2024-01-17 15:39:15 1452

原创 boost.circular_buffer的使用和介绍

如果达到容量上限,继续push_back方法压入元素时,原来begin处的元素就会被覆盖,原来begin + 1处的元素成为新的begin,push_front功能类似。这几种方式都有各自的缺点:用list构造无法实现随机访问,用vector构造移动数据头开销较大,用数组构造需要维护数据头指针和防止计数器溢出,计算位置和数据的移除也相对较麻烦。也就是说,circular_buffer的内部还是通过数组来实现,只不过给我们做好了封装工作,提供了vector类似的接口,用起来非常简便。

2024-01-17 10:27:43 855

原创 最火的AI技术之NeRF三维重建

要说这两年哪个AI技术最火爆,NeRF绝对是其中最火爆的技术之一,随意截取了计算机视觉在哔哩哔哩发布的NeRF部分应用,可谓应用广泛,前景无限美好。NeRF(Neural Radiance Fields)是最早在2020年ECCV会议上的Best Paper,其将隐式表达推上了一个新的高度,仅用 2D 的 posed images 作为监督,即可表示复杂的三维场景。一石激起千层浪,自此之后NeRF迅速发展起来被应用到多个技术方向上例如新视点合成、三维重建等等,并取得非常好的效果,其影响力是十分巨大的。

2024-01-08 10:52:17 848

原创 理解BatchNormalization层的作用

Batch Normalization作为最近一年来DL的重要成果,已经广泛被证明其有效性和重要性。虽然有些细节处理还解释不清其理论原因,但是实践证明好用才是真的好,别忘了DL从Hinton对深层网络做Pre-Train开始就是一个经验领先于理论分析的偏经验的一门学问。本文是对论文《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》的导读。

2023-12-01 18:02:13 207

原创 AI虚拟主播开发实战(附源码)

https://blog.csdn.net/icemanyandy/article/details/124035967

2023-10-20 17:08:40 468

原创 无人直播系统开发实战(附源码)

你有看到过那种不间断型的、循环播放视频音乐的直播间吗?或者那种直播播放电影的直播间?还有层出不穷的文章,类似如下标题:“如何搭建一个24小时不间断的直播间?躺入xxxx元!“24小时电影直播间,每天到账xxx~xxxx,不出镜副业,人人可做!“50块的云服务器直播推流让我月入过千?轻轻松松打造一个属于自己的被动收入”“无人直播循环播放x个小时羊了个羊累计成交额xxxx元”看到这些文章标题,是不是心动了?慢着,本文不是要写如何使用这些技术赚钱,而是探索这些赚钱的技术到底是啥原理、是怎么做到的。

2023-10-20 17:05:32 1459

原创 如何查看onnx网络结构和参数

https://github.com/DefTruth/lite.ai.toolkithttps://www.zhihu.com/question/386526462

2023-10-19 17:26:55 351

原创 计算机视觉实战--直方图均衡化和自适应直方图均衡化

均衡化是数字图像处理中常用的一种技术,用于增强图像的视觉效果和对比度。,今天我们将实现对同一张图像的直方图均衡化和自适应直方图均衡化处理,学习一下两者的的基本原理和实现过程。直方图均衡化(Histogram Equalization)和自适应直方图均衡化(Adaptive Histogram Equalization)都是用于图像增强的技术,目的是改善图像的对比度和视觉效果。它们的主要区别在于处理图像的方式和局部性。直方图均衡化是一种全局的方法,它基于整个图像的灰度直方图来调整像素的灰度值分布。

2023-10-10 20:52:22 1143

原创 计算机视觉--通过HSV和YIQ颜色空间处理图像噪声

利用HSV和YIQ颜色空间处理图像噪声。在本次实验中,我们使用任意一张图片,通过RGB转HSV和YIQ的操作,加入了椒盐噪声并将其转换回RGB格式,最终实现对图像的噪声处理。在本文中,我们使用RGB转HSV和YIQ的操作,通过加入椒盐噪声并将其转换回RGB格式,对图像进行了噪声处理。我们展示了原始RGB图像以及其R、G、B通道的显示,接着将图像转换为HSV和YIQ格式,并在H通道和Y通道中分别加入了椒盐噪声。然后,我们将加入了噪声的H、S、V通道以及Y通道进行了显示。

2023-10-10 17:11:39 497

原创 计算机视觉--距离变换算法

计算机视觉CV是人工智能一个非常重要的领域。在本次的距离变换任务中,我们将使用D4距离度量方法来对图像进行处理。通过这次实验,我们可以更好地理解距离度量在计算机视觉中的应用。希望大家对计算机视觉和图像处理有了更深入的了解。让我们一起来看看实际的计算结果和可视化效果吧!距离变换是一种常用的方法,它可以帮助我们计算出每个像素点与最近的前景像素点之间的距离。这对于图像分析、目标检测和图像配准等任务至关重要。D4距离定义为两个像素点之间在水平和垂直方向上的绝对距离之和。

2023-10-10 10:15:52 408

原创 Linux环境变量LD_LIBRARY_PATH和LIBRARY_PATH

LIBRARY_PATH和LD_LIBRARY_PATH是Linux下的两个环境变量,二者的含义和作用分别如下:LIBRARY_PATH环境变量用于在程序编译期间查找动态链接库时指定查找共享库的路径,例如,指定gcc编译需要用到的动态链接库的目录。设置方法如下(其中,LIBDIR1和LIBDIR2为两个库目录)

2023-09-23 14:30:19 3084

原创 自动驾驶之高精地图介绍

高精地图(High Definitation Map,HD MAP),和普通导航电子地图的主要区别是精度更高、信息更丰富。精度更高主要体现在高精地图的绝对坐标精度更高(指的是地图上某个目标和外部的真实世界事物所在位置之间的精度),可以精确到厘米级别;信息更丰富主要体现在高精地图不仅包含了道路信息,还涵盖了几乎所有与交通相关的周围静态信息。相比于普通导航电子地图,高精度地图所包含的道路交通信息更丰富和准确。

2023-09-10 03:22:19 2964 1

原创 Vulkan图形开发简介

Vulkan 是 OpenGL 的下一代版本,和 DirectX 12 一样都是基于 AMD 私有的 Mantle API,不同的是 Vulkan 是开源的图形 API,它承诺通过给予开发者访问硬件底层的能力而大幅提升 3D 应用的性能。AMD 同时发布了支持 Vulkan API 的 beta 版驱动,竞争对手 Nvidia 也宣布将会发布新驱动支持 Vulkan。Vulkan 等新一代图形 API 让开发者自己去管理显存和指令,而不是将其留给驱动程序。

2023-09-07 20:22:12 266

原创 评估驾驶员头部姿态变化幅度的统计方法

评估驾驶员头部姿态变化幅度的统计方法可以帮助分析驾驶员的注意力和警觉性。这些统计方法可以根据具体的应用场景和数据类型进行选择和组合,以评估驾驶员头部姿态变化幅度,并从中获取有关驾驶员状态和行为的信息。

2023-09-06 15:42:32 229

原创 ADB入门教程

基本用法命令语法如果只有一个设备/模拟器连接时,可以省略掉 [-d|-e|-s ] 这一部分,直接使用 adb。为命令指定目标设备如果有多个设备/模拟器连接,则需要为命令指定目标设备。参数 含义-d 指定当前唯一通过 USB 连接的 Android 设备为命令目标-e 指定当前唯一运行的模拟器为命令目标-s 指定相应 serialNumber 号的设备/模拟器为命令目标。

2023-09-01 15:28:47 940

原创 Ubuntu开启生成Core Dump的方法

Ubuntu下无法生成Core Dump解决方法。

2023-08-30 10:36:45 1338

原创 什么是光流传感器

光流利用的是图像的变化处理,用于检测地面的状态,从而监测飞机的移动;主要用于保持飞机的水平位置,以及在室内实现定高和定点飞行。其实光流是数字图像处理理论的一部分,详细可以看这篇文章,我觉得讲的不错:计算机视觉—光流。

2023-08-29 20:08:28 628

原创 自动化脚本之AirTest 基本使用及框架介绍

最近有个朋友问我能不能帮忙写个游戏自动化脚本,帮他解放一下双手。我想了想,在我认知里应该有很多辅助脚本制作工具,比如按键精灵、AutoJs、AirTest等等。但是从来没有化时间认认真真的去研究一个自动化脚本框架,翻了些资料,打算用AirTest来折腾折腾,毕竟Python实现的,用起来更加顺手一些。下面我贴一下相关学习资料:链接链接。

2023-08-29 16:21:31 430

原创 SLAM-VIO视觉惯性里程计

VIO(visual-inertial odometry)即视觉惯性里程计,有时也叫视觉惯性系统(VINS,visual-inertial system),是融合相机和IMU数据实现SLAM的算法,根据融合框架的区别又分为紧耦合和松耦合,松耦合中视觉运动估计和惯导运动估计系统是两个独立的模块,将每个模块的输出结果进行融合,而紧耦合则是使用两个传感器的原始数据共同估计一组变量,传感器噪声也是相互影响的,紧耦合算法上比较复杂,但充分利用了传感器数据,可以实现更好的效果,是目前研究的重点。

2023-08-20 18:45:51 1331

原创 OpenCV-SIFT算法详解

至此SIFT算法就讲解完毕了,匹配的部分根据提的特征采用其他的聚类算法即可,总的来说这个算法还是有一定难度,本文也只是针对其他博客没有提到的细节引入了数学推导,使得整个思考过程更加连贯,更加详细的数学证明如有限差分法还请移步参考。

2023-08-09 17:18:19 989

原创 人脸检测之给照片加上眼镜

基于UV空间融合法的方法作为一种快速且易实施的加眼镜的方式,可以获得基本的戴眼镜效果。其优缺点都很明显。优点:基于3维人脸重建,可自适应不同角度的人脸;眼镜素材丰富且获得简单;不需要复杂的渲染即可得到眼镜反光、半透视、有色眼镜等特效;能很好的保持原图的人物面部属性。缺点:人脸yaw角度稍大效果欠佳。眼镜像是涂在皮肤上的感觉,缺乏立体感。因为眼镜图片是基于单张正脸图片抠出来的,眼镜腿等细节部分存在缺失。

2023-08-02 09:44:20 801 1

原创 pthread_sigmask使用详解

对于线程信号,你应该忘记signal / sigaction ,他们只为单进程单线程设计pthread_sigmask 跟 sigprocmask 类似;sigprocmask 只能用于单进程单线程;fork的子进程拥有一份屏蔽信号拷贝;pthread_sigmask 用于多线程;新线程拥有一份pthread_create那个线程的屏蔽信号拷贝;对于线程信号的处理 , 最好还是用一个线程来统一处理比较, 否则太乱啦!关于线程安全和可重入, 完全2个概念:线程安全 可重入。

2023-08-01 17:15:37 940

原创 线程安全和函数可重入

这意味着, 在main中gethostbyname的调用刚执行完或者只执行了一半, 此时signal来了, 转到sig_handler继续调用gethostbyname ,由于实现是一个静态变量,因此后调用gethostbyname将把前一次的数据覆盖.可重入函数只有在signal下会发生, 比如一个函数在执行时被中断, 在中断处理函数中又一次被调用, 这2次(每次)调用都能产生正确的结果,那就个可重入函数;一个函数中如果使用了静态/全局变量, 那他基本是一个不可重入的函数,当然具体还是看实现;

2023-08-01 14:00:10 128

原创 基于OpenCV solvePnP函数估计头部姿势

在许多应用中,我们需要知道头部是如何相对于相机倾斜的。例如,在虚拟现实应用程序中,可以使用头部的姿势来渲染场景的右视图。在驾驶员辅助系统中,在车辆中观察驾驶员面部的摄像头可以使用头部姿势估计来查看驾驶员是否正在注意道路。当然,人们可以使用基于头部姿势的手势来控制免提应用程序/游戏。例如,从左到右偏头可能表示“否”。

2023-07-28 18:15:21 2216

原创 解决安装face_detection失败问题

安装retinaface,提示ERROR: Could not find a version that satisfies the requirement face_detection (from versions: none)

2023-07-27 14:17:33 636

原创 Ubuntu系统使用v4l-utils工具来查看所连接摄像头参数

问题:通过opencv录制下来的视频,打开的时候显示“无法解码多工流传输的视频”。笔记本自带的摄像头,录制方法就是用opencv的VideoWrite。问题原因发现及解决:网上看了很多录制下来打不开的原因,无非就是保存的帧率、视频尺寸和相机不匹配,去跟淘宝问了个软件,就是很简单的显示相机参数的软件,然后发现尺寸和我想的不一样(实际上我用opencv去设置了相机参数,但成功的话应该没有这个问题的了,这个问题…以后有时间研究一下),就是把尺寸调好以后就正常了。

2023-07-21 14:05:36 960

原创 Retinaface 人脸检测及数据集介绍

数据集介绍WIDER FACE 数据集是一个人脸检测基准数据集,其中图像选自公开可用的WIDER 数据集。我们选择了 32,203张图像并这些采集的图像中共标记了393,703 个人脸,在尺度、姿势和遮挡方面具有高度可变性,如样本图像中所示。WIDER FACE 数据集基于 61 个事件类进行组织。对于每个事件类,我们随机选择 40%/10%/50% 的数据作为训练、验证和测试集。我们采用与PASCAL VOC 数据集相同的评估指标。类似于MALF和加州理工学院数据集。

2023-07-20 12:06:20 669

原创 NVIDIA Deep Learning Accelerator (DLA) 输入输出的几种张量格式

DLA_LINEAR 是 NVIDIA Deep Learning Accelerator (DLA) 所支持的一种内存组织方式,它是一种行优先存储的连续内存块格式,用于存储卷积层和全连接层的输入输出数据。在 DLA_LINEAR 格式中,每个元素都是一个定点数,可以是 8 位或 16 位,具体取决于网络的精度要求。在 DLA_LINEAR 格式中,一维数组中的每个元素都是一个定点数,代表了卷积核或全连接层的一个输入或输出通道的值。

2023-07-14 21:37:31 799

空空如也

空空如也

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

TA关注的人

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