自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(341)
  • 资源 (22)
  • 收藏
  • 关注

原创 【总】机器学习博文导航

4.SVM支持向量机进行分类与回归操作。6.数据降维:投影及流形学习降维方法。5.集成学习:决策树与随机森林。

2022-08-19 05:45:21 265

原创 ROS仿真与URDF/Xacro教程

使用定义可重用的代码块,通过params指定参数。</</</</</</</</通过本教程,你学习了URDF和Xacro的基本概念,掌握了使用Xacro编写URDF文件的方法,理解了仿真中TF树的作用以及如何解决常见问题。这些知识将帮助你在ROS中更高效地进行机器人仿真和开发。

2025-03-13 15:26:11 912

原创 【自动驾驶】ROS中的TF坐标变换(一):静态坐标变换

机器人系统上,有多个传感器,如激光雷达、摄像头等,有的传感器是可以感知机器人周边的物体方位(或者称之为:坐标,横向、纵向、高度的距离信息)的,以协助机器人定位障碍物,可以直接将物体相对该传感器的方位信息,等价于物体相对于机器人系统或机器人其它组件的方位信息吗?现有一机器人模型,核心构成包含主体与雷达,各对应一坐标系,坐标系的原点分别位于主体与雷达的物理中心,已知雷达原点相对于主体原点位移关系如下: x 0.2 y0.0 z0.5。对于在三维空间里的一个参考系,任何坐标系的取向,都可以用三个欧拉角来表现。

2024-08-15 23:15:00 1217

原创 【自动驾驶】ROS中的重名问题:工作空间、节点、参数

需要将话题名称修改为一致,才能使用,如何实现?ROS 会解析 .bashrc 文件,并生成 ROS_PACKAGE_PATH ROS包路径,该变量中按照 .bashrc 中配置设置工作空间优先级,在设置时需要遵循一定的原则:ROS_PACKAGE_PATH 中的值,和 .bashrc 的配置顺序相反—>后配置的优先级更高,如果更改自定义空间A与自定义空间B的source顺序,那么调用时,将进入工作空间A。又或者,两个节点是可以通信的,两个节点之间使用了相同的消息类型,但是由于,话题名称不同,导致通信失败。

2024-08-13 23:45:00 1076

原创 【自动驾驶】ROS中参数服务器通信(c++)

Talker 通过 RPC 向参数服务器发送参数(包括参数名与参数值),ROS Master 将参数保存到参数列表中。ROS Master 根据步骤2请求提供的参数名查找参数值,并将查询结果通过 RPC 发送给 Listener。Listener 通过 RPC 向参数服务器发送参数查找请求,请求中包含要查找的参数名。3.ROS Master 向 Listener 发送参数值。2.Listener 获取参数。1.Talker 设置参数。

2024-08-13 23:30:00 406

原创 【自动驾驶】ROS远程节点的分布式通信

ROS是一个分布式计算环境。一个运行中的ROS系统可以包含分布在多台计算机上多个节点。根据系统的配置方式,任何节点可能随时需要与任何其他节点进行通信。

2024-08-13 23:30:00 606

原创 【自动驾驶】ROS运行管理:元功能包、launch文件、param 、rosparam、args

rosparam总是在launch文件中最先执行,故要想让其最后执行,要把其单独放在另一个launch文件内,这样人为控制该launch文件最后执行。该节点是否必须,如果为 true,那么如果该节点退出,将杀死整个 roslaunch启动的节点。在指定命名空间 xxx 中启动节点,为节点名称设置前缀如/hello/jiedian。如果定义在node节点下,对应参数为/节点名/参数名,即变量加入了私有的命名空间。重新映射话题,使得两个节点使用的话题名称相同,让两个节点能通讯。

2024-08-13 22:45:00 1269

原创 【自动驾驶】ROS中自定义格式的服务通信,含命令行动态传参(c++)

服务通信是基于请求产生的通信。

2024-08-09 21:45:00 1096

原创 【自动驾驶】自定义消息格式的话题通信(C++版本)

编译时先编译带有自定义消息mymsg.msg的功能包,再编译整体的功能,其顺序不能出错,不然可能生成不了头文件。发布者包含该消息,生成头文件,由发布者publisher包含该消息头文件即可。在功能包目录下,新建msg文件夹,下面新建mymsg.msg文件,其内容为。新增了message_generation。这样工程才能找到生成的消息文件。配置 msg 源文件。

2024-08-08 20:45:00 489

原创 【自动驾驶】话题通信

然后退回到工作空间所在的下层目录,进行catkin_make编译。在功能包目录下新建launch目录,下面放launch文件。节点名称(在 ROS 网络拓扑中节点的名称)节点类型(与之相同名称的可执行文件)

2024-08-08 14:09:21 691

原创 【自动驾驶】ubuntu20.04安装完整ROS的Noetic版本

虽然 apt-get 处理所有软件包安装、升级、系统升级、清除软件包、解决依赖关系等,但 Aptitude 比 apt 处理更多的东西,包括 apt-mark 的功能 和 apt-cache 即在已安装软件包列表中搜索软件包、将软件包标记为自动或手动安装、保留软件包使其无法升级等。每当从命令行调用并指定要安装的包的名称时,它都会在 ‘/etc/apt/sources.list’ 中指定的源配置列表中找到该包以及依赖项列表查找该包并对它们进行排序,并自动将它们与当前包一起安装,从而让用户不必担心安装依赖项。

2024-08-07 23:00:00 673

原创 【自动驾驶】ubuntu server安装桌面版

ubuntu20.04服务器版本安装桌面版

2024-08-07 11:08:34 603

原创 【FPGA】优化设计指南(二):性能指标

需要注意的是,Block RAM、UltraRAM和DSP48三者资源利用率都不能超过80%,若超过了80%,则要保证三者平均利用率低于80%。与传统的Block RAM相比,UltraRAM具有更高的存储密度和更低的时延,这使得它在某些应用中能够提供更好的性能和效率。它是Xilinx FPGA架构中的一部分,与传统的Block RAM(BRAM)不同,UltraRAM提供了更高容量的存储和更灵活的配置选项。输入到输出的延迟通常用时钟周期个数来表示,称为Latency,该指标也反映了设计的流水级数。

2024-04-22 01:42:47 1848

原创 【FPGA】优化设计指南(一):设计原则

面积和速度是对立统一的。因此,在时钟网络中,MMCM 经常用于生成不同时钟域内的时钟信号,确保这些信号之间具有明确的相位关系,以保证电路的正确功能和稳定性。毛刺通常是短暂的、不稳定的信号脉冲,可能会对电路的正常功能造成影响,特别是在时序要求严格的系统中,如数字电路中的时钟信号处理。在同步设计中,时钟信号的控制可以帮助过滤掉这些毛刺,因为触发器只在时钟的有效沿触发,而不会受到毛刺的影响。在FPGA中,"乒乓操作"通常指的是在时序逻辑中的一种特定操作,用于在两个时钟周期之间交替执行某个操作或改变某个状态。

2024-04-22 01:20:10 1369 1

原创 【DeepStream】基于英伟达DeepStream框架进行算法开发(三):Gst-nvinfer模块介绍

该插件接受来自上游的批处理的 NV12/RGBA 缓冲区。NvDsBatchMeta 结构必须已附加到 Gst 缓冲区。底层库(libnvds_infer)可处理任何 INT8 RGB、BGR 或 GRAY 数据,其尺寸为网络高度和网络宽度。Gst-nvinfer 插件根据网络要求对输入帧执行变换(格式转换和缩放),并将转换后的数据传递给低级库。底层库对转换后的帧进行预处理(执行归一化和均值减法),生成最终的 float RGB/BGR/GRAY 平面数据,然后传递给 TensorRT 引擎进行推理。

2024-02-28 18:52:16 1391

原创 【DeepStream】基于英伟达DeepStream框架进行算法开发(二):推理基础流程

当需要将一个元素连接到另一个元素时,可以使用 get_request_pad() 方法从目标元素中请求一个 pad,然后将这个 pad 与其他元素的 pad 进行连接,实现元素之间的数据传输。这行代码将 caps 元素的输出 pad 和之前获取的 streammux 元素的请求 pad 进行连接,即将属性设置元素的输出与合流器元素的输入连接起来,使视频流能够正确传递到合流器中的指定输入通道。这行代码从 caps 元素的 “src” pad 中获取一个静态 pad,并将其存储在 srcpad 变量中。

2024-02-27 14:20:10 1419

原创 【vscode】vscode在离线环境下配置远程服务器客户端

当需要在离线环境下配置远程服务器客户端时,Visual Studio Code (VS Code) 是一个优秀的工具选择。通过配置远程开发插件,可以在本地使用 VS Code 编辑远程服务器上的文件,提高开发效率和灵活性。在本博客中,我们将深入介绍如何在离线环境下配置 VS Code 远程开发环境,帮助开发者更好地利用这一功能进行远程开发工作。

2024-02-27 13:45:22 1403

原创 【DeepStream】基于英伟达DeepStream框架进行算法开发(一):GStreamer基础

在当今快速发展的人工智能和计算机视觉领域,英伟达的DeepStream框架提供了强大的工具和功能,帮助开发者快速部署和优化实时视频分析应用。本博客将重点介绍基于英伟达DeepStream框架进行算法开发的方法和技巧,包括如何利用DeepStream框架构建高效的算法模型、实现实时视频流处理和应用优化等内容。通过本博客的学习,读者将能够掌握在DeepStream框架下进行算法开发的关键技能,为自己的视频分析项目提供更加稳定和高效的解决方案。

2024-02-27 09:50:25 829

原创 【redis】redis系统实现发布订阅的标准模板

Redis发布订阅功能是Redis的一种消息传递模式,允许多个客户端之间通过消息通道进行实时的消息传递。在发布订阅模式下,消息的发送者被称为发布者(publisher),而接收消息的客户端被称为订阅者(subscriber)。在Redis中,发布者可以将消息发布到一个或多个频道(channel),而订阅者可以选择订阅感兴趣的频道以接收相关的消息。同时,一个订阅者也可以订阅多个频道。当有消息发布到已被订阅的频道时,所有订阅该频道的客户端都能够接收并处理这些消息。

2023-12-19 20:30:00 564

原创 【向量数据库】相似向量检索Faiss数据库的安装及余弦相似度计算(python)

在使用 Faiss 库进行人脸余弦相似度计算的应用中,通常会遵循以下步骤:特征提取:首先,需要使用人脸识别模型对人脸图像进行特征提取。这些特征通常是高维度的向量,代表了每张人脸图像的抽象特征。构建 Faiss 索引:将提取出的人脸特征向量构建成 Faiss 可以处理的索引结构。通常会选择使用内积(dot product)作为相似度度量方式,因为 Faiss 默认使用内积进行近似的余弦相似度计算。

2023-12-18 21:45:00 2592

原创 【redis】redis使用get及set功能,及发布订阅

【代码】【redis】redis使用get及set功能,及发布订阅。

2023-12-14 10:33:50 289

原创 【DQN】基于pytorch的强化学习算法Demo

DQN(Deep Q-Network)是一种基于深度神经网络的强化学习算法,于2013年由DeepMind提出。它的目标是解决具有离散动作空间的强化学习问题,并在多个任务中取得了令人瞩目的表现。DQN的核心思想是使用深度神经网络来逼近状态-动作值函数(Q函数),将当前状态作为输入,输出每个可能动作的Q值估计。通过不断迭代和更新网络参数,DQN能够逐步学习到最优的Q函数,并根据Q值选择具有最大潜在回报的动作。DQN的训练过程中采用了两个关键技术:经验回放和目标网络。

2023-11-24 08:59:33 746 1

原创 【C++】linux下的gdb程序调试

在 Linux 环境下,我们可以使用 GDB (GNU Debugger) 工具来帮助我们进行程序调试。以上是在 Linux 环境下使用 GDB 调试 C++ 程序的基本步骤和常用命令。通过设置断点,我们可以在程序执行到特定位置时停下来,以便查看程序状态。命令即可启动 GDB 调试器,并加载你的程序。此外,还有其他许多 GDB 命令可用以帮助进行调试和查看程序的状态,可以使用。在进行调试之前,我们需要先用调试符号编译你的 C++ 程序。执行后,程序将开始运行,直到遇到第一个断点或程序结束。

2023-11-21 18:26:00 482

原创 【SOPHON】算能盒子SE-16中c++版本pipeline的环境配置

arm SoC平台,内部已经集成了相应的libsophon、sophon-opencv和sophon-ffmpeg运行库包,位于下。通常在x86主机上交叉编译程序,使之能够在arm SoC平台运行。您需要在x86主机上使用SOPHON SDK搭建交叉编译环境,将程序所依赖的头文件和库文件打包至soc-sdk目录中。

2023-11-02 17:54:42 331

原创 【SOPHON】算能盒子SE-16的C++模型转换

本文以 arcface 为例, 介绍如何编译迁移一个onnx模型至TPU平台运行。有疑问具体可参考。

2023-10-27 17:57:36 435

原创 【optuna】将实验结果保存为excel

Optuna 是一个用于自动超参数优化的开源 Python 库。它提供了一个简单且灵活的接口,帮助你在机器学习和深度学习任务中优化算法的超参数。Optuna 的设计目标是使超参数优化过程更加高效和易用。它采用了一种基于序列化和并行化的策略,允许用户定义自己的目标函数,并在超参数搜索空间中动态地探索参数组合,以找到最佳的超参数配置。Optuna 的核心概念是 “Study” 和 “Trial”:Study(研究)是一个优化过程的最高级别实体。

2023-10-26 19:30:00 635

原创 【SOPHON】算能盒子SE-16的配套x86交叉编译环境搭建

tpu-mlir 为TPU编译器工程提供一套完整的工具链,可以将不同框架下预训练的神经网络,转化为可以在算能TPU上高效运行的二进制文件BModel。目前直接支持的框架包括tflite、onnx和Caffe。libsophon 提供BMCV、BMRuntime、BMLib等库,用来驱动VPP、TPU等硬件,完成图像处理、张量运算、模型推理等操作,供用户进行深度学习应用开发。

2023-10-19 13:49:23 1030

原创 【python】ThreadPoolExecutor线程池

在构造函数__init__中,我们传入了两个参数max_workers和max_pending_tasks,分别代表线程池的最大工作线程数和最大挂起任务数。我们还初始化了executor成员变量为一个ThreadPoolExecutor对象,并设置了max_workers为传入的max_workers值,pending_tasks初始化为0。否则,它会使用executor.submit方法来提交任务,并调用_task_wrapper方法包装任务,最后增加挂起任务数并返回任务的Future对象。

2023-10-14 17:56:27 384

原创 【向量数据库】相似向量检索Faiss数据库的安装及余弦相似度计算(C++)

Faiss 是一个强大的向量相似度搜索库,具有以下优点:高效的搜索性能:Faiss 在处理大规模向量数据时表现出色。它利用了高度优化的索引结构和近似搜索算法,可以快速地执行最近邻搜索和相似度匹配,具有很低的查询延迟。高度可扩展:Faiss 提供了多种索引结构和算法的选择,包括 k-d树、IVF(Inverted File System)和 PQ(Product Quantization)等。这些索引结构能够轻松应对大规模的向量数据集,并支持高效的并行计算和分布式处理。

2023-09-07 23:45:00 1835 1

原创 【高性能计算】opencl语法及相关概念(五):图像的仿射变换缩放

要使用仿射变换完成图像等宽高比缩放,可以按照以下步骤进行操作:定义仿射变换矩阵:首先,定义一个仿射变换矩阵,用于描述缩放操作。该矩阵是一个2x3的矩阵,包含平移、缩放和旋转的参数。对于缩放而言,我们只需要调整矩阵中的缩放参数。其中,scale_x和scale_y分别表示在 x 和 y 方向上的缩放因子。构建仿射变换矩阵:使用上述定义的缩放因子,将其填充到仿射变换矩阵的相应位置。应用仿射变换:对于每个图像像素,根据仿射变换矩阵的逆矩阵将其映射到原始图像中的位置。

2023-09-04 23:45:00 325

原创 【高性能计算】opencl语法及相关概念(四):结合opencv进行图像高斯模糊处理

高斯模糊是一种常用的图像处理技术,用于减少图像中的噪点和细节,并实现图像的平滑效果。它是基于高斯函数的卷积操作,通过对每个像素周围的邻域像素进行加权平均来实现模糊效果。具体而言,高斯模糊通过在图像上滑动一个卷积核,将卷积核与输入图像的对应像素进行一一相乘,并将结果相加,从而产生输出图像的每个像素值。这个卷积核是一个二维高斯函数,它的形状决定了模糊的程度。在高斯函数中,离中心像素越远的像素会被赋予更小的权重,从而降低了离中心像素的贡献,实现模糊的效果。通过调整高斯核的大小和标准差参数,可以控制模糊的程度。

2023-08-31 23:30:00 991

原创 【高性能计算】opencl语法及相关概念(二):索引,队列,核函数

设备(device):宿主机使用的 OpenCL设备集合。内核 (kernel):在 OpenCL 设备上运行的 OpenCL 函数。程序对象 (program object):实现内核的程序源代码和可执行文件。内存对象(memory object):内存中对OpenCL设备可见的组对象,包含可以由内核实例处理的值。

2023-08-30 23:30:00 1130

原创 【高性能计算】opencl语法及相关概念(三)事件,内存

当谈到OpenCL中的事件时,它们代表了执行的各个阶段或操作的状态信息。通过使用事件,您可以跟踪和管理内核执行以及内存操作的进度和顺序。以下是与OpenCL事件相关的关键概念:创建事件:您可以使用或函数手动创建事件,或者使用OpenCL API执行其他操作时自动创建事件。内核执行事件:当您将内核提交到命令队列进行执行时,会返回一个事件对象,您可以利用该事件对象来跟踪内核执行的状态。等待事件:可以使用或函数来阻塞程序直到指定的事件完成。这对于确保内核执行顺序以及依赖关系非常重要。

2023-08-30 23:30:00 648

原创 【高性能计算】opencl语法及相关概念(一):工作流程,实例

在上述代码中,get_global_id(0) 是在内核函数 vectorAdd 中使用的,表示获取当前工作项在全局范围的第一个维度(维度编号为0)上的索引。例如,如果在执行内核函数时将全局执行范围设置为 128,那么在第一个维度上,工作项的索引值将从 0 到 127,总共有 128 个唯一的索引值。例如,如果在执行内核函数时使用了 128 个工作项并且当前工作项的全局索引是 10,那么 get_global_id(0) 会返回 10,表示当前工作项在全局范围的第一个维度上的索引是 10。

2023-08-28 23:30:00 809

原创 【高性能计算】opencl安装及相关概念

安装特定硬件厂商提供的OpenCL SDK:如果您的系统不提供默认的OpenCL运行时和驱动程序,或者您希望使用特定硬件厂商提供的最新版本运行时和驱动程序,那么可以安装相应厂商提供的OpenCL SDK。虽然特定硬件厂商提供的OpenCL SDK可能包含额外的工具和优化,但OpenCL的核心标准和函数接口是跨平台的,并且可以在没有特定SDK的情况下进行开发和编译。总而言之,异构计算利用不同类型的计算资源的特点和优势,通过合理分配和协同使用这些资源,实现更高的计算性能、能源效率和灵活性。

2023-08-24 23:15:00 2347

原创 【架构】探索计算机处理器的世界:ARM和x86架构解析及指令集

通过本文的介绍,我们了解了ARM和x86这两个重要的处理器架构。它们在不同的领域发挥着重要的作用,驱动着计算机技术的不断进步。在选择合适的处理器架构时,我们需要考虑应用需求、性能要求和生态系统支持等因素。祝愿读者在处理器的世界里,找到最适合自己的架构!

2023-08-24 22:00:00 3230

原创 【OpenMp】openmp库的介绍及安装

OpenMP(Open Multi-Processing)是一种并行编程框架,用于在共享内存系统中实现并行计算。它是GCC编译器的一部分,提供了一组指令和编译器指导,帮助程序员实现程序的并行化。OpenMP的目标是简化并行编程,提高程序的执行效率。

2023-08-23 23:30:00 3528 1

原创 【OpenMp】openmp库的基本语法

动态调度模式是先到先得的方式进行任务分配,不用size参数的时候,先把任务干完的线程先取下一个任务,以此类推,而不是一开始就分配固定的任务数。总之,reduction指令是OpenMP中用于对并行循环中的变量进行归约操作的指令,能够自动将每个线程的局部变量的结果累加到一个全局变量中。在并行循环中,每个线程都会拥有自己的sum的局部副本,并在循环的迭代过程中进行累加操作。当循环结束后,reduction指令将会将每个线程的sum的局部副本的结果相加,并将最终的总和存储到全局的sum变量中。

2023-08-23 17:58:56 1347

原创 【ffmpeg】基于需要使用videocapture的opencv编译配置(C++)

opencv使用videocapture读取视频流时,需要借助底层的ffmpeg库。如果不能正确编译,会报错,现记录正确编译配置方法。

2023-08-22 18:01:51 1356

原创 【判别方法】模糊图像的拉普拉斯判别,C++及python版本

通过判断一组合格的图像,利用下列代码,得到所有图像的模糊值,取其中最小值作为模糊的阈值下限,在实际应用中,一旦超过该值,则认为图像清晰,小于该值,则认定图像模糊。

2023-08-22 17:42:49 688

自动驾驶ROS中的TF坐标变换(一):静态坐标变换

是博文对应的源码资料,里面的工程内含一个静态坐标及发布的使用示例,可以用c++进行编译调用,详细内容请看博文

2024-08-15

cuda的host函数的导出库制作的示例工程

在本文件夹内的两个C++工程案例中,涉及到了CUDA与C++的混编以及动态链接库(DLL)的创建和使用。以下是对这两个工程的详细介绍: 本文件夹内两个工程,一个导出了cuda的host函数为dll,一个引用了该函数。工程使用CUDA_NVCC编译器及g++编译器进行c++以及cuda的代码的混编,并使用cmake生成.sln文件进行编译。在windows上使用msvc编译器。

2024-08-09

c++类及函数动态库导出的示例工程,基于cmakelist,使用g++编译器

在C++开发中,CMake是一个功能强大的跨平台构建系统,它能够生成标准的构建文件,从而简化编译过程。该文件详细描述两个C++工程的构建过程,它们使用CMake进行配置,并涉及到动态库的导出和引用。在这两个工程中,CMake发挥了至关重要的作用,它不仅简化了构建过程,还提供了跨平台的兼容性。动态库工程允许其他程序在运行时链接到这些库,而类库工程则提供了封装好的功能,可以被其他程序以静态方式链接。通过这种方式,C++开发者可以更加高效地管理和重用代码。

2024-08-09

自动驾驶ROS中自定义格式的服务通信,含命令行动态传参(c++)

详细见博文

2024-08-09

自动驾驶自定义消息格式的话题通信(C++版本)

详细见博客描述

2024-08-08

自动驾驶话题通信节点测试程序源码c++版本

详见对应的博客文章

2024-08-08

SOPHON算能盒子SE-16中c++版本pipeline的环境配置,中已经编译完成的算能安装sdk环境

适用于交叉编译

2023-11-02

SOPHON算能盒子SE-16的配套x86交叉编译环境搭建

算能的交叉编译所需包,主要用于构建一个x86的交叉编译环境。 交叉编译是指在一台计算机上使用某种编译器和工具链,将针对一种特定处理器架构(目标架构)的程序或软件,在不同的处理器架构(主机架构)上进行编译和构建的过程。 具体过程详见对应博文。

2023-10-19

cmake工程标准编译框架

这个CMake工程标准编译框架是一个用于管理C++项目的自动化构建系统,它包括一个主的CMakeLists.txt文件和一个辅助的CMakeLists.txt文件,通过使用Bash脚本来协调它们的工作。主CMakeLists.txt文件定义了项目的源代码、编译器标志、编译目标等信息,而辅助的CMakeLists.txt文件用于管理项目的第三方依赖项。 版本号管理是这个CMake工程标准编译框架的一个重要特性。它允许开发者使用标准的语义化版本号规则,如主版本号、次版本号和修订版本号,来管理项目的版本。这个框架还提供了一组方便的命令来获取和设置版本号,以及在构建过程中将版本号嵌入到生成的二进制文件中。 该框架还支持使用不同的编译器对不同的文件进行编译,以达到优化代码的目的。开发者可以在主CMakeLists.txt文件中定义编译器标志来控制编译器的行为,也可以在辅助的CMakeLists.txt文件中指定使用哪个编译器来编译特定的文件。

2023-05-05

Inno Setup:windows下安装程序制作软件,及打包模板

Inno Setup是一款免费的安装程序制作工具,用于创建Windows平台下的安装程序。它具有易于使用、功能强大、灵活性高等特点,是Windows安装程序制作的首选工具之一。 Inno Setup使用Pascal脚本语言编写,因此对于Pascal程序员来说非常友好。同时,它还提供了一个易于使用的向导式界面,使得即使是非程序员也能够轻松地创建安装程序。 Inno Setup支持多种安装程序功能,如选择安装路径、创建快捷方式、注册表项、文件关联、安装服务等。它还支持自定义安装程序界面、图标、说明文本等元素,以及多语言支持。 Inno Setup的安装程序也具有很高的兼容性,能够在Windows 95/98/Me/NT/2000/XP/Vista/7/8/10等Windows操作系统中运行。同时,它还支持多种安装方式,如标准安装、静默安装、自解压缩安装等。 除此之外,Inno Setup还提供了众多的插件,如增强的脚本编写工具、自动更新插件、加密插件、安装程序压缩插件等,使得用户可以根据自己的实际需求选择安装。 总的来说,Inno Setup是一款非常优秀的安装程序制作工具.。

2023-03-20

win10 opencv python 显示中文

def cv2AddChineseText(img, text, position, textColor=(0, 255, 0), textSize=30): if (isinstance(img, np.ndarray)): # 判断是否OpenCV图片类型 img = Image.fromarray(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) # 创建一个可以在给定图像上绘图的对象 draw = ImageDraw.Draw(img) # 字体的格式 fontStyle = ImageFont.truetype( r"D:\其它\tensorRT_Pro-main\example-python\simsun.ttc", textSize, encoding="utf-8") # 绘制文本 draw.text(position, text, textColor, font=fontStyle) # 转换回OpenCV格式 return cv2.cv

2023-02-06

5点和68点人脸识别模型shape-predictor-68-face-landmarks.dat及使用说明

shape_predictor_68_face_landmarks.dat 是一个预训练的人脸特征点检测模型,用于在人脸图像中定位和识别 68 个关键点。这些关键点涵盖了人脸的各个部位,如眼睛、鼻子、嘴巴、脸颊等。该模型基于一种机器学习技术,即对许多人脸图像进行训练,以学习人脸关键点的特征。使用该模型,可以在计算机视觉应用中自动定位和识别人脸关键点,从而实现人脸识别、人脸对齐、表情识别等功能。可以在 Python、C++ 等多种语言中使用。 在使用说明中,给出了c++版及python版本的调用说明代码: # 加载人脸关键点检测模型 predictor = dlib.shape_predictor("shape_predictor_68_face_landmarks.dat") # 加载人脸检测器 detector = dlib.get_frontal_face_detector()

2023-01-31

lbpcascade-frontalface.xml与 haarcascade-eye-tree-eyeglasses.xml

lbpcascade_frontalface.xml 和 haarcascade_eye_tree_eyeglasses.xml 是 OpenCV 中的人脸和眼睛识别分类器。lbpcascade_frontalface.xml 是基于 Local Binary Patterns (LBP) 算法的人脸识别分类器,可以用来检测人脸。haarcascade_eye_tree_eyeglasses.xml 是基于 Haar 特征的眼睛识别分类器,可以用来检测带有眼镜的眼睛。

2023-01-28

多类模型转onnx工具

1 caffe转onnx 命令:python model_convert.py --model_path ./caffe_model --model_type caffe --output ./output.onnx 参数说明:model_path:caffe模型所在的文件夹,文件夹里需要有对应的.caffemodel文件和.prototxt文件 model_type:模型类型,此处固定为caffe output:输出onnx模型的文件路径 2 tensorflow(h5)转onnx 命令:python model_convert.py --model_path ./test.h5 --model_type tf-h5 --output ./output.onnx 参数说明:model_path:h5模型所在的路径(非文件夹) model_type:模型类型,此处固定为tf-h5 output:输出onnx模型的文件路径 等。

2023-01-15

intel官方人眼睁闭分类模型onnx,输入图片为单眼区域,返回睁或闭的状态

models: - name: open-closed-eye-0001 classification preprocessing: - type: resize size: 32 - type: normalization mean: 127.0, 127.0, 127.0 std: 255.0, 255.0, 255.0 metrics: - type: accuracy reference: 0.9584 Inputs Image, name: input.1, shape: 1, 3, 32, 32 in 1, C, H, W ,BGR Outputs Name: 19, shape: 1, 2, 1, 1 - Softmax output,取两个概率值中大的index对应open或closed

2023-01-15

centos下opencv的编译后的安装包(编译时带opencv-contrib扩展包)c++

编译过程及具体用法,详见博文:【opencv】centos下opencv的编译(带opencv_contrib扩展包)

2022-12-20

arcfaceresnet100-8及scrfd_2.5g_kps_S模型(openvino的xml及bin及普通的onnx模型)

arcfaceresnet100-8及scrfd_2.5g_kps_S模型(openvino的xml及bin及普通的onnx模型) 两者均为开源预训练模型,注意arcfaceresnet100-8模型输入已由RGB调整为BGR,即可由opencv读取后直接输入。其内findface.xml为opencv的开源人脸检测库。调用方式为: cv::CascadeClassifier cascade_face = cv::CascadeClassifier("findFace.xml"); cascade_face.detectMultiScale(frame,faces,1.09,1,0,Size(90,90),Size(400,400)); if(faces.size()!=0) { }

2022-12-02

openvino.rar

oppenvino推理用runtime,适用于windows系统包含lib及dll 其64位qt配置为: LIBS += -L$$PWD/runtime/lib/intel64/Release -lopenvino -lopenvino_c -lopenvino_ir_frontend -lopenvino_onnx_frontend -lopenvino_paddle_frontend INCLUDEPATH +=\ $$PWD/runtime/3rdparty/tbb/bin \ $$PWD/runtime/bin/intel64/Release \ $$PWD/runtime/3rdparty/hddl/bin \ $$PWD/compile_tooln \ $$PWD/runtime/include \ $$PWD/runtime/include/ie \ $$PWD/runtime/include/ngraph \ $$PWD/runtime/include/openvino

2022-12-02

protobuf-cpp-3.11.4.rar

编译过程: mkdir release & cd release cmake -G "NMake Makefiles" -DCMAKE BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../../../../install ../.. nmake nmake install 博文:【protobuf】win10 C++版编译。见内部install文件夹

2022-10-13

sci-kitlearn中的'mnist_784'数据集

手写数字识别,解压后进行加载: from scipy.io import loadmat mnist = loadmat('/app/datasets/mnist-original.mat') mnist.keys()

2022-09-04

qt翻页按钮控件及示例.rar

可与表格进行组合,做表格的翻页工作。 具体功能有: 1.数目可变的页码按钮 2.跳转到最开始及最后一页 3.跳转到指定页 4.控制每页显示的行数(或某控件数量) 5.提供示例可与分页查询相结合。 Qt [1] 是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。 2008年,Qt Company科技被诺基亚公司收购,Qt也因此成为诺基亚旗下的编程语言工具。2012年,Qt被Digia收购。

2022-08-08

windows关于qt的数据库操作封装类以及用例,c++代码

功能: 自动与sqlite3数据库做连接 数据的插入,查询,删除、更新操作 数据库建立与表建立 支持关于where语句查询的自动拼接。 支持text的模糊查询 windows 关于qt的数据库操作封装类 以及用例: SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的功能特点有: 1. ACID事务 2. 零配置 – 无需安装和管理配置 3.储存在单一磁盘文件中的一个完整的数据库 4.数据库文件可以在不同字节顺序的机器间自由的共享 5.支持数据库大小至2TB 6. 足够小, 大致13万行C代码, 4.43M 7. 比一些流行的数据库在大部分普通数据库操作要快 8. 简单, 轻松的API 9. 包含TCL绑定, 同时通过Wrapper支持其他语言的绑定 10. 良好注释的源代码, 并且有着90%以上的测试覆盖率 11. 独立: 没有额外依赖 12. 源码完全的开源, 你可以用于任何用途, 包括出售它 13. 支持多种开发语言,C, C++, PHP, Perl, Java, C#,Python, Ruby等

2022-08-08

QT windows32位可用的web服务器 C++ 内含部署说明

部署方式:(详细见文件内) 启动时加入: void MyApplication::setupWebservice() { QSettings* settings=new QSettings("./setting.ini",QSettings::IniFormat); if(!QFile("./setting.ini").exists()) { settings->setIniCodec(QTextCodec::codecForName("utf-8")); settings->setValue("host","192.168.25.188"); settings->setValue("port",5007); settings->setValue("minThreads","4");

2022-07-22

windows下c++程序打包成安装包的相关程序和脚本,已修改成可自动将打包后的程序管理员运行的状态

包含脚本及打包程序和打包的配置说明

2022-07-19

【openVINO】Model Zoo预训练模型下载及编译博文对应VS工程

【openVINO】Model Zoo预训练模型下载及编译博文对应VS工程

2022-06-06

【pytorch】将yolov5模型通过openVINO2022部署至生产环境(二):C++版本 异步模式

【pytorch】将yolov5模型通过openVINO2022部署至生产环境(二):C++版本 异步模式

2022-05-31

【pytorch】将yolov5模型通过openVINO2022部署至生产环境(二):C++版本博文对应源码

【pytorch】将yolov5模型通过openVINO2022部署至生产环境(二):C++版本博文对应源码

2022-05-27

cmake适用于win10 64bit版本,用于安装openvino

cmake适用于win10 64bit版本,用于安装openvino

2022-05-17

博文:【pytorch】将模型部署至生产环境:借助TensorRT 8完成代码优化及部署(二):C++接口实现 的代码备份。

博文:【pytorch】将模型部署至生产环境:借助TensorRT 8完成代码优化及部署(二):C++接口实现 的代码备份。

2022-05-16

windows opencv 在画面中添加中文,解决乱码问题。附带动态链接库Gdi32.Lib,gdi32.dll

添加动态链接库Gdi32.Lib,gdi32.dll 头文件包含windows.h 使用示例: 在图像坐标为(50,60)位置加上字符串“这是中文”,字体颜色:白色,字体大小:40,字体类型:微软雅黑 putTextZH(srcImg, "这是中文", Point(50, 60), Scalar(255, 255, 255), 40, "微软雅黑");

2022-05-13

tensorRT的python接口用pycuda的wheel安装包

tensorRT的python接口用pycuda的wheel安装包,pycuda-2021.1+cuda115-cp39-cp39-win32及64

2022-05-11

opencv4.5.0windows64位版,release及debug

opencv4.5.0windows64位版,release及debug,附带额外contrib库

2022-05-06

训练好的口罩检测模型及口罩数据集(正负例各300张)对应博文:pytorch:基于yolov5的口罩检测记录。

训练好的口罩检测模型及口罩数据集(正负例各300张)对应博文:pytorch:基于yolov5的口罩检测记录。

2022-03-30

用于图片标注,win10版本可用,可生成yolo及voc两种版本的标注文件。

快捷键: a前一张图;d后一张图;w快速弹出标注箭头;可选择自动保存模式快速保存图片。

2022-03-29

tensorflow h5py数据

实验用数据集,方便快速实验 服装四分类,提取方法 xData=[] yLabel=[] with h5py.File("myTextData", 'r') as d: xData=np.array(d['x']) yLabel=np.array(d['label']) #(157, 28, 28, 3) print(xData.shape) #(157,4) print(yLabel)

2022-03-11

图片标注用,免安装版本

图片标注用,免安装版本

2022-01-19

myfirst3.xml

人脸识别训练文件,配合博文《基于OPencv LBP的人脸识别代码》

2021-09-17

opencv-4.5.3.rar

opencv最新版源码

2021-09-15

opencv_contrib-4.5.3.zip

opencv附带库源码

2021-09-15

opencv32.rar

opencv32位编译后debug及release版本,动态库及头文件 亲测可用

2021-09-15

空空如也

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

TA关注的人

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