自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(950)
  • 资源 (12)
  • 收藏
  • 关注

原创 VTK中的双标量组件的体绘制

在 C++ 中使用 VTK 实现双标量组件体绘制的关键在于使用和分别控制颜色和不透明度,同时通过渲染体数据。你可以根据自己的需求调整颜色映射和不透明度映射的定义,以达到所需的可视化效果。

2025-05-09 13:59:04 37

原创 体绘制中的传输函数(transfer func)介绍

VTK中的梯度不透明度传输函数(Gradient Opacity Transfer Function)是体积渲染中的一个高级特性,它基于体积数据的局部梯度来调整不透明度。颜色传输函数是体积渲染中的一个强大工具,它能够显著增强数据的可视化效果和可解释性。VTK中的颜色传输函数(Color Transfer Function)是体积渲染中另一个关键组件,它定义了如何将体积数据中的标量值映射到颜色。不透明度传输函数是体积渲染中的一个强大工具,合理设置可以大大提高可视化的质量和信息传达的效果。

2025-05-08 17:35:35 200

原创 在VTK中使用VTKCamera

在VTK(Visualization Toolkit)中,vtkCamera 类用于控制三维场景中相机的视角。相机决定了你从哪个角度和位置观察三维场景。使用 vtkCamera 的一般步骤包括创建相机对象、配置相机参数、将相机设置为渲染器的活动相机,以及更新相机视图。

2025-04-30 15:49:01 404

原创 在VTK中使用巴特沃斯低通滤波器(频域处理)

没有脉冲响应:与其他类型的滤波器(如理想滤波器)不同,巴特沃斯滤波器的频率响应在截止频率附近呈平滑过渡,而非突变。图像的频域信息包括低频成分(图像的平滑区域)和高频成分(图像的细节和噪声)。阶数的影响:巴特沃斯滤波器的阶数(order)决定了滤波器在截止频率处的过渡斜率。反傅里叶变换:使用反向傅里叶变换(Inverse FFT)将处理后的频域图像转换回时域,从而得到去噪后的图像。应用巴特沃斯低通滤波器:将巴特沃斯低通滤波器应用到图像的频域表示,设置一个适当的截止频率。巴特沃斯滤波器的传递函数。

2025-04-29 14:19:40 288

原创 在VTK中使用vtkImageAccumulate进行直方图统计

vtkImageAccumulate 是 VTK 中一个用于对图像数据进行累积的滤波器。它的功能是对输入的图像进行“累积”,即统计图像像素值的分布。这对于图像的直方图计算非常有用,它可以生成一个输入图像的直方图或累积直方图。在 vtkImageAccumulate 中,输出的是一个包含输入图像的累积信息的图像数据。可以通过这个输出获得有关图像的统计信息,比如每个灰度值的像素数量等。

2025-04-29 10:31:30 209

原创 对VTK中的Volume Data体数据进行二维图像处理

在进行二维图像处理时,通常从三维数据中提取出单个切片(沿某个方向的切片)。这可以使用 vtkImageReslice 完成,vtkImageReslice 可以帮助从三维数据中生成二维切片。一旦您提取了二维切片,就可以对其进行各种图像处理操作,如平滑、滤波、阈值化、边缘检测等。在 VTK 中对体数据进行二维图像处理的过程通常涉及从三维体数据中提取二维切片,并对这些切片进行处理。然后,可以选择性地将处理后的切片数据重新合并成新的体数据。处理过的二维切片可以重新组合为新的三维体数据。对二维切片进行图像处理。

2025-04-28 17:24:35 488

原创 基于VTK的光线投影法体绘制

光线投射法是最常用的体绘制方法。它是一种基于图像序列的直接体绘制方法,其基本原理是从投影图像平面(通常为平面)的每个像素沿着视线方向发射一条穿过体数据的射线然后在射线上按照一定的步长进行等距采样,对每个采样点采用插值技术来计算其体素值,根据颜色传输函数和不透明度传输函数来获取相应的颜色值和不透明度,最后利用光线吸收模型将颜色值进行累加直至光线穿过体数据,即可得到当前平面像素的渲染颜色,生成最终的显示图像。与面绘制不同,体绘制技术不需要提取体数据内部的等值面,它是一个对三维体数据进行采样和合成的过程。

2025-04-23 13:57:21 392

原创 利用VTK读取DCM文件

对DCM医学图像信息的访问(图像维数、原点坐标和像素间隔)

2025-04-23 08:42:51 157

原创 VTK官方C++ demo1

【代码】VTK官方C++ demo1。

2025-04-21 15:31:27 343

原创 在windows上运行VTK测试代码

VTK(Visualization Toolkit)是一个开源软件系统,用于3D计算机图形、图像处理和可视化。它由Kitware公司开发,广泛应用于科学计算、工程、医学成像以及其他领域的数据可视化。VTK支持多种数据格式并提供丰富的工具集来处理和可视化复杂的数据集。下面我将在windows上的vs2019上实现一个简单的VTK 测试demo。vs2019->新建项目->空项目。

2025-04-21 14:07:15 377

原创 基于直方图均衡的图像增强(uint16_t)

在 OpenCV 中,对于 uint16_t 类型的灰度图像,默认的 equalizeHist() 函数只支持 CV_8U 类型的灰度图像。为了对 uint16_t 类型的灰度图像(即深度为 16 位的图像)进行直方图均衡化,我们需要手动实现一个直方图均衡化的过程,并适应 uint16_t 图像的灰度范围(0-65535)。

2025-04-18 10:42:27 49

原创 安检数据集汇总

https://github.com/NeelBhowmik/xray?tab=readme-ov-file

2025-04-17 16:37:36 36

原创 VSCode在linux上对CMake工程进行debug配置

【代码】VSCode在linux上对CMake工程进行debug配置。

2025-04-17 15:20:23 245

原创 麒麟服务器上的VTK部署

Q1:当你在没有图形界面的麒麟 Server 系统上运行 VTK 代码时,出现 bad X server connection. DISPLAY=local:0.0. Aborting. 错误,这通常是因为 VTK 默认尝试连接到 X 服务器进行图形显示,但服务器系统没有可用的 X 服务器。A1:Xvfb(X Virtual Frame Buffer)是一个虚拟的 X 服务器,它可以在没有实际显示设备的情况下模拟 X 服务器的功能。这样,VTK 就可以在虚拟的 X 服务器上进行渲染,而不会出现连接错误。

2025-04-07 13:04:52 286

原创 基于昇腾NPU的YOLOv8部署

由于模型检测结果是用内存连续的一维数组进行表示的,因此,需要根据yolov8输出尺寸的实际含义,来访问需要的数组内存地址来获取需要的值。根据资料显示,yolov8模型不另外对置信度进行预测, 而是采用类别里面最大的概率作为置信度的值,8400是yolov8模型各尺度输出特征图叠加之后的结果,一般推理不需要处理。即可,参考onnx输出尺寸[1,84,8400]中的84-4 = 80 , 比如自定义的模型输出为[1,26,8400],则 size_t classNum = 22 (26-4).

2025-04-02 19:51:50 399

原创 在麒麟系统上装opencv3.4.14和opencv_contrib

【代码】在麒麟系统上装opencv和opencv_contrib。

2025-04-02 11:09:39 212

原创 使用RKNN进行yolo11-cls部署

实现方式:通常对 YOLO 系列的骨干网络(Backbone)进行微调,去除原模型中用于检测边界框的头部(Head)部分,添加适用于分类任务的全连接层或全局平均池化层等,将输出调整为对应分类类别的概率分布。例如,在 YOLOv8 中就包含了分类模型,它基于其强大的骨干网络,通过简单的结构调整,能够高效地完成图像分类任务。YOLO(You Only Look Once)是一系列高效的目标检测算法,其核心思想是将目标检测任务转化为一个回归问题,通过单个神经网络直接在图像上预测边界框和类别概率。

2025-04-01 23:25:34 246 2

原创 提高YOLO对小目标检测的精度

然而,由于添加了额外的特征尺度,p2 模型需要额外的成本。尽管减少了 box 和 dfl 损失权重,但使用关键点目标后,box mAP50 仍然增加了 12% 以上,从之前训练中的 44.8 增加到使用基于姿势的模型的 50.6。在这里,我们将姿势模型的权重加载到检测模型中,它们完美匹配,因为直到姿势头的所有层都是相同的,我们将新模型保存为best_detect.pt。您可以看到所有指标几乎相同,事实上,这里的指标略高一些,FLOPs 计数显示为 8.1,这与我们在原始检测模型中所得到的相同。

2025-03-25 14:39:59 136

原创 在YOLO中扩充新类别并且不影响旧类的识别精度

让我们先从简单的部分开始:用我们的新类训练自定义 YOLOv8 模型。在本教程中,我们将向模型添加车牌类。我们将使用Roboflow 中的一个数据集。这个数据集有两个车牌类。在开始训练之前,我们还必须对库进行一些更改。为了节省时间,我还将本教程中我们将进行的更改转换为补丁该补丁包含多项更改,但大多数更改都用于指南的下一部分。if RANK!= -1:是的,我们将编写一个回调。我们希望将此自定义训练模型的头部与 COCO 预训练模型中的旧头部一起使用。

2025-03-25 10:59:14 327

原创 基于DINO自监督学习对YOLO11 Backbone进行预训练

这PoolHead将获取前一层的输出并应用卷积,然后应用自适应平均池化以将特征图的空间维度减小为固定且一致的大小(1x1)。这是必需的,因为否则空间维度会根据输入的大小而变化,这将使将 DINO 头部附加到主干变得困难,因为它需要固定的输入大小。在本指南中,我们将介绍如何使用 Lightly 使用 DINO 预训练 YOLO 11主干,以及如何将其重新加载到 Ultralytics 中进行微调。您可以使用不同的大小,例如,640这与 YOLO 中的默认图像大小更一致,但它也会在训练期间消耗更多 VRAM。

2025-03-19 17:00:17 163

原创 构建rknn的docker镜像

容器 ID 或容器名称></容器 ID 或容器名称>``:可以通过 docker ps` 命令查看正在运行的容器的 ID 或名称。<要执行的命令></要执行的命令>``:通常是 /bin/bash或/bin/sh`,用于启动一个 shell 会话。中选择一个合适的镜像作为基类镜像,然后根据自己的需求,添加一些库。-t:为命令分配一个伪终端,模拟一个交互式的终端环境。PS:dockerfile要在当前路径下,否则找不到。PS:参数的含义自己去查表,不能完全照搬。-t:指定镜像的标签(名称和版本)。

2025-03-13 11:05:08 426

原创 训练yolo11模型:从数据标注到模型微调训练

将标注好的数据集分成训练和验证集,建议比例为4:1。编辑predict_det.py文件。编辑train.py文件。选择你需要标注的文件夹。训练模型,在终端键入。

2025-03-12 16:12:24 135

原创 PKU-MMD人体行为分析数据解析

我们总共选择了 51 个动作类别,分为两部分:41 个日常动作(喝水、挥手、戴上玻璃杯等)和 10 个交互动作(拥抱、握手等)。我们的视频只包含一部分动作,要么是日常动作,要么是互动动作。第一阶段包含 51 个动作类别中的 1076 个长视频序列,由 66 个受试者在三个摄像机视图中执行。我们数据集的总规模为 5,312,580 帧,3,000 分钟,包含 21,545 个时间局部动作。阶段#2包含41个动作类别的1009个短视频序列,由13个受试者在三个摄像机视角下表演。是左视图中的第一个视频。

2025-03-07 11:09:58 107

原创 使用LSTM对2D pose sequence进行行为分类

数据集下载,链接。

2025-03-06 17:16:36 173

原创 UCI HAR Dataset解析

该文件包含了活动的标签,格式如下:其中,每一行的第一个数字是活动的 ID,第二列是活动的名称。该文件列出了所有的特征名称,每一行表示一个特征的名称,格式如下:...总共有 561 个特征,其中包括加速度计和陀螺仪的各种统计特征,如均值、标准差等。特征名称的前缀标识了它们的来源(例如 tBodyAcc 表示身体加速度、fBodyAcc 表示傅里叶变换后的加速度等)。X_train.txt 和 X_test.txt这两个文件分别包含了训练集和测试集的特征数据。

2025-03-05 14:47:52 156

原创 使用rknn进行yolo11-pose部署

使用 RKNN 进行 YOLOv11 Pose 部署的必要性在于,RKNN 能将 YOLOv11 Pose 模型转化为适合 Rockchip 硬件平台(如 RV1109、RV1126)执行的格式,充分利用其 AI 加速功能,显著提高推理速度和效率。此外,RKNN 提供模型优化(如量化)功能,有助于减少计算资源消耗,提升实时处理能力,特别适合在嵌入式设备上进行高效、低功耗的姿态估计任务,满足边缘计算和实时应用的需求。修改nn/modules/head.py中的Pose.forward函数。

2025-02-19 19:22:28 472

原创 微调YOLO11用于手机目标检测

YOLOv11 是在大规模数据集(如 COCO 或 ImageNet)上进行预训练的。通过微调,你可以在已有的预训练权重基础上进行针对性调整,而不必从头开始训练模型。加速训练:微调通常只需要训练相对较少的参数(特别是模型的后期层),相比从头开始训练,能够显著减少训练时间。提高准确性:因为模型已经在大规模数据集上学习到了通用的特征和模式,所以微调可以在目标数据集上更快速地适应,提升最终的检测准确率。

2025-02-17 11:26:48 343

原创 基于傅里叶变换的图片模糊度判断

傅里叶变换可以将图像从空间域转换到频率域。清晰图像在频率域中具有更多的高频成分,而模糊图像的高频成分较少。

2025-02-13 19:37:05 178

原创 在ros2中发布自定义服务(C++)

【代码】在ros2中发布自定义服务(C++)

2025-02-13 10:53:54 59

原创 在ROS2中发布服务(C++)

服务端负责响应请求,客户端发送请求并接收响应。因此,需要分别编写两个节点:一个作为服务端,另一个作为客户端。接下来,功能包的创建。用户可能已经知道如何创建功能包,但需要确认依赖项。服务端和客户端都需要rclcpp,而如果使用example_interfaces中的AddTwoInts服务,还需要依赖该包。如果是自定义服务接口,则需要添加rosidl生成相关的依赖。这里用户可能希望使用现有接口,比如example_interfaces,但为了全面性,可能需要同时说明自定义接口的情况。然后,编写服务端代码。

2025-02-12 10:37:19 58

原创 CMake中的rpath使用

在CMakeLists.txt中,RPATH(运行时路径)用于指定程序在运行时搜索共享库的路径。这在你需要程序在运行时找到特定位置的共享库时非常有用,尤其是当这些库不在系统默认的库搜索路径中时。下面详细介绍RPATH在CMakeLists.txt中的使用方法。

2025-02-11 16:14:16 341

原创 基于USB摄像头发布ROS2话题

【代码】基于USB摄像头发布ROS2话题。

2025-02-11 10:44:19 72

原创 使用rknn进行facenet部署

修改facenet网络的forward函数代码。

2025-02-10 09:24:07 535

原创 基于retinaface的人脸水平校正

水平校正可以将人脸调整到标准姿态,使得特征提取更加一致,从而提高特征匹配的准确性。人脸识别模型在训练时通常使用大量的正面、水平的人脸图像。通过对输入图像进行水平校正,可以使测试图像更接近训练数据的分布,从而提高模型的泛化能力,使其能够更好地处理各种姿态的人脸。水平校正可以显著改善人脸对齐的质量,使得关键点(如眼睛、鼻子、嘴巴等)能够更准确地定位,从而提供更可靠的对齐结果。人脸水平校正是人脸分析处理流程中的一个重要环节。水平校正可以在一定程度上标准化人脸姿态,减少因姿态变化导致的识别错误。

2025-01-24 14:28:46 129

原创 搭建一个人脸识别pipeline

恭喜!您已成功使用 Python 和机器学习技术创建了一个基本的人脸识别系统。此基础可以扩展到更复杂、更强大的应用程序,例如实时人脸识别或使用深度学习模型提高准确性。

2025-01-20 18:58:48 92

原创 基于deepface的脸部表情识别

这个项目使用 deepface 库和 OpenCV 实现了实时的面部情感检测。它检测面部,并预测与每张面孔相关的情感。情感标签会实时显示在每一帧上。这可能是实现情感监控的最简洁代码。检测结果不理想,模型需要微调。

2025-01-17 17:21:55 93

原创 用于边缘端的机器人操作系统

ROS 2 是 ROS(Robot Operating System)的进化版本,专为支持分布式系统、实时性、边缘计算和大规模应用设计。ROS 2 改进了原 ROS 的实时性、可靠性和安全性,适用于复杂的机器人应用。在边缘端(Edge)部署的机器人系统通常需要考虑到低延迟、高实时性和资源受限等特点,因此,边缘端机器人操作系统(Edge Robot Operating Systems)也要具备适应这些需求的功能。Micro-ROS 是 ROS 2 的一个衍生版本,旨在支持资源受限的嵌入式设备和边缘端平台。

2025-01-17 10:19:06 80

原创 使用rknn进行retinaface部署(C++)

RetinaFace采用了单阶段检测器的结构,避免了传统两阶段检测器(如Faster R-CNN)中的区域提议网络(RPN),从而提高了检测速度。:为了处理不同尺度的人脸,RetinaFace使用了特征金字塔网络(FPN),在不同尺度上提取特征,从而增强对各种大小人脸的检测能力。:为了提升模型的泛化能力,RetinaFace使用了大量的人脸数据进行训练,包括各种姿态、光照条件和遮挡情况的人脸图像。:RetinaFace在设计锚点时,针对不同尺度的人脸采用了不同的锚点策略,以提高小尺度人脸的检测效果。

2025-01-14 17:14:40 395

原创 使用rknn进行yoloV8部署(C++)

RKNN 是一个为 Rockchip 处理器(尤其是集成 NPU 的处理器)量身打造的神经网络推理框架,旨在为开发者提供高效的 AI 推理能力。RKNN(Rockchip Neural Network)是由 Rockchip(瑞芯微电子)公司开发的深度学习框架,旨在提供高效、优化的神经网络推理(inference)能力,支持各种类型的神经网络模型的加速运行,特别是针对 Rockchip 的 ARM 处理器和 NPU(神经网络处理单元)进行优化。操作硬件:香橙派开发板。操作硬件:x86主机。

2024-12-30 16:43:44 964

原创 使用惯性测量单元(IMU)进行点云运动畸变校准

有运动就有畸变。

2024-12-11 17:52:39 912

poseTrack 2017

姿态跟踪数据集2017

2024-08-16

重庆高分二号遥感测试数据

高分二号测试数据,用于地块提取

2024-05-14

基于地理栅格的地理矢量化工具

对栅格线进行线矢量化,并自动生成地块面矢量。

2023-09-14

realsense515近景配置文件

realsense515近景配置文件,基于该配置文件启动realsen-ros,可在近距离对物体进行较好的深度成像。

2023-05-26

荷兰_哨兵二号.txt

荷兰、哨兵二号、十米分辨率

2022-05-12

荷兰_谷歌影像.txt

荷兰、谷歌影像、1.5米分辨率

2022-05-12

基于深度学习的细胞分割c++推理源码

1.c++ 2.语义分割 3.模型推理 4.动态库

2022-03-21

丹麦耕地地块数据集.txt

丹麦地块影像及标签

2022-02-19

高分二号乡村道路数据集.txt

影像:高分二号 影像大小:1000*1000pixel 标注:矢量shapefile

2022-02-11

荷兰全域影像(法国P星).txt

卫星影像

2022-01-21

荷兰耕地地块矢量.txt

荷兰耕地全域矢量

2022-01-21

基于高分二号的重庆地块数据.txt

遥感、高分二号、耕地地块、矢量标注

2022-01-20

基于谷歌地球影像的重庆地块数据.txt

矢量、RGB影像、西南山区

2022-01-14

二维网格索引

基于java的二维网格索引,资源包括可独立运行的app,源码,界面用javafx写的

2019-02-12

基于C#的解析空中三角测量

基于C#的解析空中三角测量,资源包括相关实验数据,源码

2019-02-11

基于sift算法的图像拼接

基于SIFT算法的图像拼接,资源包括SIFT简介,MATLAB源码,实验图片,GUI设计

2019-02-11

空空如也

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

TA关注的人

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