自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 RTL8188FU回炉重造过程

2.1 hi3516cv610_musl/open_source/linux/linux-5.10.y/drivers/net/wireless 目录下面创建realtek_8188。在open_source/linux/linux-5.10.y/drivers/net/wireless/realtek_8188/rtl8188fu/ 中执行。2.5 drivers/network/wireless/目录下的Kconfig 中添加如下语句。生成rtl8188fu.ko。

2025-12-16 10:50:50 399

原创 3516cv610 5.10.y linux内核版本移植 wifi驱动移植过程流水账

移植rtl8188 驱动

2025-09-11 19:55:16 284

原创 3516cv610 mqtt库移植

1,下载最新发布版本 paho.mqtt.c-1.3.14.tar.gz,并解压。2,修改makefile。

2025-07-22 16:40:57 242

原创 3516cv610 npu 开发典型功能点的介绍

在SVP ACL中,Stream是一个任务队列,应用程序通过Stream来管理任务的并行,一个Stream内部的任务保序执行,即Stream根据发送过来的任务依次执行;不同Stream中的任务并行执行。一个默认Context下会挂一个默认Stream,如果不显式创建Stream,可使用默认Stream。默认tream作为接口入参时,直接传NULL。

2025-07-19 20:38:40 909

原创 3516cv610 npu 开发首个应用

在模型推理结束后,需及时调用svp_acl_destroy_data_buffer接口和svp_acl_mdl_destroy_dataset接口释放描述模型输入的数据,且先调用svp_acl_destroy_data_buffer接口,再调用svp_acl_mdl_destroy_dataset接口。– 显式创建Context时,调用svp_acl_rt_create_context接口,此时需显式调用svp_acl_rt_destroy_context接口释放。默认不启动dump配置。

2025-07-19 10:52:06 894

原创 3516cv610 npu 准备环境

● 本文以如下安装路径示例来说明操作步骤,实际编译、运行应用前, 请务必获取这些组件的实际安装路径,以便后续操作时使用,其中,$HOME表示安装用户的家目录:以非root用户安装ACLlib组件安装包,安装路径示例为$HOME/acl,在该路径下,包括“acllib”目录。● 板端环境的操作系统为Linux时,在部署与调试后,使用过程中,若板端环境上的空间不足时,您可以使用mount命令将NFS服务器上的目录挂载到板端环境的指定目录。

2025-07-19 10:28:05 284

原创 3516cv610 npu 开发流程

1. 资源初始化,包括SVP ACL初始化、运行管理资源申请、模型推理资源申请等,请参见“ 资源初始化”。用SVP ACL接口开发应用时,必须先调用svp_acl_init接口进行SVP ACL初始化,否则可能会导致后续系统内部资源初始化出错,进而导致其它业务异常。4. 若需要处理模型推理的结果,还需要进行数据后处理,例如对于图片分类应用,通过数据后处理从推理结果中查找最大置信度的类别标识。请参见“ 模型推理”。步骤5 编译运行应用,包括模型转换、编译代码、运行应用,请参见“ 编译及运行应用”。

2025-07-19 10:24:59 353

原创 3516cv610 svp接口调用流程

8. 释放相关数据类型的数据。5. 调用svp_acl_mdl_create_dataset接口创建svp_acl_mdl_dataset类型的数据,并调用svp_acl_mdl_add_dataset_buffer接口向svp_acl_mdl_dataset类型的数据中增加svp_acl_data_buffer类型的数据。输入动态AIPP场景下,svp_acl_mdl_set_aipp_src_image_size接口和svp_acl_mdl_set_aipp_input_format接口必须调用。

2025-07-19 10:22:27 1080

原创 海思3516cv610 NPU学习

● 默认Context不允许用户执行svp_acl_rt_get_current_context或svp_acl_rt_set_current_context操作,也不允许执行svp_acl_rt_destroy_context操作。● 线程调度依赖运行的操作系统,Stream上下发了任务后,Stream的调度由Device的调度单元调度,但如果一个进程内的多Stream上的任务在Device存在资源争抢的时候,性能可能会比单Stream低。

2025-07-19 09:16:36 1057

原创 海思3516CV610 卷绕 研究

【现象3】VPSS全在线情况下,开卷绕,业务压力大的情况下,VENC log报miss。【分析4】非卷绕时VPSS在完成帧时送给VENC,卷绕时VPSS在硬件启动前就发送帧给。【现象2】VPSS全在线情况下,与vedu大码流通路开卷绕,同时开多路小码流编码,帧,后续才收到上一非卷绕帧,导致time_ref错误,编码丢掉最后一个非卷绕帧。【现象4】离线通路帧率较高,VPSS-VENC从非卷绕切换到卷绕时,出现编码报。因此非卷绕切换为卷绕时,可能前一个非卷绕帧还未做完,此时编码已收到新。

2025-07-17 22:35:06 752

原创 Rust Trait 学习

特征(trait)是rust中的概念,类似于其他语言中的接口(interface)。特征定义了一个可以被共享的行为,只要实现了特征,你就能使用该行为。如果不同的类型具有相同的行为,那么我们就可以定义一个特征,然后为这些类型实现该特征。定义特征是把一些方法组合在一起,目的是定义一个实现某些目标所必需的行为的集合。例如,我们现在有圆形和长方形两个结构体,它们都可以拥有周长,面积。因此我们可以定义被共享的行为,只要实现了特征就可以使用。这里使用 trait 关键字来声明一个特征,Figure 是特征名。

2025-05-04 08:57:29 918

原创 RUST变量学习笔记

1,捕获环境。

2025-05-03 17:35:34 525

原创 FPGA flash烧写基础知识

而近些年,随着芯片生产工艺的不断发展,很多其他厂家生产的 SPI 接口的 FLASH 芯片也能够达到 EPCS 的技术标准,因此 Altera 就放开了该限制,并指出可以使用其他芯片厂家生产的 SPI 接口的 FLASH 芯片代替 EPCS。第一种方式,也就是传统的方式,是使用专用 AS 接口(与 JTAG 10 针接口独立)来直接烧写该配置芯片,该种方式需要在电路板上设置一个独立的 AS 接口,占用 PCB 板面积较大,使用起来不方便。该芯片性能优异,性价比较高,完全能够达到 EPCS 的性能标准。

2024-10-29 11:06:33 1813

原创 windows下调试usb通讯

pyusb 下和usb设备通讯

2024-10-10 10:20:41 776

原创 PyNvVideoCodec 调试笔记

一个是8bit的,一个是16bit的。

2024-09-23 17:27:08 1031

原创 python GIL理解笔记

随着技术的发展和Python生态系统的进步,我们相信对于GIL的限制也会有更多的解决方案和改进,为Python程序的并发性能提供更多可能性。限制CPU密集型任务的并行性,简化内存管理: 对于CPU密集型任务,由于GIL的存在,多线程无法充分利用多核CPU,因为在任何给定时刻,只有一个线程能够执行Python字节码。总而言之,虽然GIL是Python的一个挑战,但通过合理的技术选择和编程实践,我们能够最大程度地发挥Python的优势,并充分利用多核CPU,提高程序的效率和性能。

2024-09-11 16:24:31 1054

原创 C++ ABI 导致的python调用C++问题

执行test.py,ssp_python需要libssp.so支持,但是在运行的时候,找不到相应的类了。

2024-09-06 17:29:11 502

原创 python中调用C++类

【pybind11笔记】python调用c++类_pybind11调用c++类-优快云博客

2024-09-05 18:51:16 477

原创 数据库连接问题

1,本机安装mysql,并配置。2,mysql 操作。

2024-08-16 11:56:08 260

原创 windows下面Opencv4.5.5版本使用mingw7.3编译排坑

编译出错,按照以下修改,修改完成之后可以编译通过。下载源码,或者windows版本。4,关闭了 objdetect。1,关闭了python。2,关闭了proto。5,关闭ffmpeg。

2024-08-16 11:07:30 200

原创 ffmpeg支持mpeg4,openh264,x264编码器实践

是编译 ffplayer 所必须的外部库,而 Ubuntu 环境并不会对其默认安装,故而需要用户手动安装。SDL 下载地址:http://www.libsdl.org/download-2.0.php。S1执行命令:./configure --prefix=/usr/local。有些朋友肯定好奇,我们明明在编译安装。下载后,同样解压,然后进入加压目录。有些过时,目前使用广泛的是。3,安装yasm nasm。2,下载FFMPEG代码。5,安装gcc g++7,编译 FFMPEG。更新清华源,中科大源。

2023-11-15 19:50:05 812

原创 tensorrt初使用记录

下一步学习多stream如何处理。

2023-10-27 09:39:24 259

原创 2D人体骨架图生成3D人体骨架图

集微网消息,近日,美国专利商标局公布了微软一项名为“3d Skeletonization Using Truncated Epipolar Lines(利用截平极线的3D骨架化)”的专利。这份发明文件主要描述了利用从不同视点捕获的目标对象二维图像来生成三维骨架的技术。可以在捕获的图像中识别对象的特征关键点。微软进一步解释说,可以接收和分析从不同视点描绘目标对象的图像,从而检测目标对象的可识别特征。专利文件继续写道,所述的一个或多个三维模型可以“输出到全息显示设备或其他类型的显示设备。

2023-10-19 15:40:27 560

原创 HP MPF 136W连入局域网

1,把打印机设置成wifi direct 模式。4,在打印机配置页面里面设置wifi。3,用amdin账号登录。

2023-10-18 11:47:15 984

原创 张正友棋盘格标定法

【精选】python计算机视觉 相机标定--张正友棋盘格标定法_python张正友标定检测角点_༄༄小半生༅࿐的博客-优快云博客

2023-10-18 11:30:45 493

原创 DLT算法学习

【代码】DLT算法学习。

2023-10-17 16:36:30 300

原创 DLT 计算三维重建参数

安装好这个之后就能make成功了。eigen3 这个库没有被安装。

2023-10-17 16:22:03 312

原创 natapp实现ssh内网穿透

Natapp是基于ngrok的国内收费内网穿透工具,免费版本:提供http,https,tcp全隧道穿透,随机域名/TCP端口,不定时强制更换域名/端口,自定义本地端口。3,ssh登录命令要写对 ssh user@url -p port模式才是正确的。因为SSH是基于TCP协议的,所以隧道协议选择TCP,注意本地端口选择22。首先注册一个账户(需要用支付宝实名认证一下),选择购买隧道-免费购买。附上链接:https://natapp.cn。在系统上启动该natapp。1,要选择tcp模式的隧道。

2023-10-17 09:05:56 267

原创 python实现添加水印

filestools模块其本质上也是对ImageDraw.Draw.text()方法做了进一步的封装,让我们用起来会更加的简便,使用add_mark()方法可以生成数量较多的水印,该方法当中里面有8个参数,其中比较重要的几个是。color、size、opacity、space、angle:水印文字的样式包括文字的大小、颜色、透明程度等等。从git上下载watermarker代码,然后集成到系统里面。方式三:filestools模块。mark:水印的文字内容。修改代码支持参数配置。

2023-10-16 13:42:55 814 1

原创 python编小游戏

【代码】python编小游戏。

2023-10-14 15:02:02 165 1

原创 YOLOV8保存处理后的图像

【代码】YOLOV8保存处理后的图像。

2023-10-09 17:12:26 1750 2

原创 docker使用测试

当尝试使用-v 参数进行挂载目录的时候:如下有两个目录同时挂载的时候,当尝试使用-v 参数进行挂载目录的时候:如下有两个目录同时挂载的时候。这里也提醒一下自己,注意docker镜像命名规范(必须为小写)

2023-10-08 18:52:11 168 1

原创 Flask 实现文件下载

例如,如果你有一个名为 'my_file.txt' 的文件存放在 'static' 文件夹中,你可以通过访问 '/download/my_file.txt' 来下载这个文件。这个参数告诉浏览器这是一个需要下载的文件,而不是在浏览器中打开的文件。在这种情况下,你可以将应用的静态文件夹(默认是 'static')作为文件存储的位置。首先,确保你的文件存放在 'static' 文件夹中,或者你指定的其他文件夹中。在 Flask 中,要实现根据指定文件名下载文件的功能,你可以使用 Flask 的。

2023-10-07 10:13:13 1077 1

原创 python中的互斥锁和信号量使用

Lock的使用:lock.acquire(),lock.release()

2023-10-07 10:11:40 105 1

原创 docker容器操作

这是因为对于容器来说,当其中的应用退出后,容器的使命完成,也就没有继续运行的必要了。所需要的命令主要为docker run , 等价于先执行docker create命令,在执行docker start命令。由于容器是整个Docker技术栈的核心,create命令和后续的run命令支持的选项十分复杂,需要在实践中不断体会。使用docker create命令新建的容器处于停止状态,可以使用docker start 命令来启动。除了创建容器后通过start命令来启动,也可以直接新建并启动容器。

2023-09-27 17:44:07 441 1

原创 docker学习使用记录

注意,选中 'docker-desktop' 而非 './docker-desktop-4.23.0-amd64.deb'docker-desktop : 依赖: docker-ce-cli 但无法安装它。E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。有一些软件包无法被安装。没有可用的软件包 docker-ce,但是它被其它的软件包引用了。E: 无法定位软件包 docker-ce-cli。正在分析软件包的依赖关系树... 完成。正在分析软件包的依赖关系树... 完成。

2023-09-27 16:42:17 3441 1

原创 python 获取线程返回值的方法

在上面的代码中,我们创建了一个队列,用于线程间通信。等待线程结束后,我们从队列中取出该返回值,最后输出结果。在上面的代码中,我们创建了一个线程t,执行方法task,并等待线程t结束。等待结束后,我们可以从线程t中获取任务返回的结果,并打印输出结果。Thread.join()方法可以阻塞主线程,等待子线程结束后才会继续执行。使用队列能够解决线程安全问题,这也是一种获取线程返回值的有效方法。这种方法可以获取数据,result中包括多个对象时就有问题了,多个对象可以做成元组。

2023-09-26 09:30:43 2574 1

原创 ubuntu安装ftp和配置

下面介绍了vsftpd的配置文件列表,而所有的配置都是基于vsftpd.conf这个配置文件的。userlist_enable设置项设置使用vsftpd.user_list文件,userlist _deny设置为NO表示vsftpd.usre_list文件用于设置只允许登录的用户账号,文件中未包括的用户账号被禁止FTP登录。PAM认证文件(此文件中file=/etc/vsftpd/ftpusers字段,指明阻止访问的用户来自/etc/vsftpd/ftpusers文件中的用户)

2023-09-25 14:30:30 388 1

原创 Flask 使用笔记

【代码】Flask 使用笔记。

2023-09-25 12:07:44 110 1

原创 CUDA failure 999: unknown error

1、错误信息:2、解决办法:重新加载nvidia内核模块,输入以下命令:

2023-09-25 10:56:24 1066 3

python实现水印叠加,调整成函数接口

python实现水印叠加,调整成函数接口

2023-10-16

空空如也

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

TA关注的人

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