自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(715)
  • 资源 (14)
  • 收藏
  • 关注

原创 C++的线程安全队列模板类封装

C++的线程安全队列模板类封装

2024-05-24 09:16:41 180

原创 用调试的方式来阅读复杂的C++工程代码以及调试技巧

用调试的方式来阅读复杂的C++工程代码以及调试技巧

2024-05-14 10:25:28 375

原创 华为昇腾310B1平台视频解码失败[ERROR] Send frame to vdec failed, errorno:507018

华为昇腾310B1平台 [ERROR] Send frame to vdec failed, errorno:507018

2024-05-11 11:02:26 826

原创 华为昇腾310B1平台深度学习算法模型转换

华为昇腾310B1平台深度学习算法模型转换

2024-05-09 14:57:55 1181

原创 CNStream代码中C++反射机制的使用

CNStream代码中C++反射机制的使用

2024-05-06 19:22:56 825

原创 /usr/bin/ld: /lib/aarch64-linux-gnu/libcairo.so.2: undefined reference to `FT_Done_MM_Var‘

/usr/bin/ld: /lib/aarch64-linux-gnu/libcairo.so.2: undefined reference to `FT_Done_MM_Var'

2024-04-28 16:03:21 373

原创 vscode远程调试服务器docker内部代码

vscode远程连接调试服务器docker内部代码

2024-04-24 16:25:33 1049

原创 利用ollama和open-webui本地部署通义千问Qwen1.5-7B-Chat模型

利用ollama和open-webui本地部署通义千问Qwen1.5-7B-Chat模型

2024-04-23 16:41:01 1556 1

原创 大模型的RAG(检索增强生成) ----大模型外挂

检索增强生成(RAG)是一个概念,也可以称为一种范式,它旨在为大语言模型(Large Language Model,LLM)提供额外的、来自外部知识源的信息。

2024-04-19 10:58:05 878

原创 大模型LLM架构--Decoder-Only、Encoder-Only、Encoder-Decoder

这类结构的模型适用于需要生成序列的任务,可以从输入的编码中生成相应的序列。这类结构的代表也就是我们平时非常熟悉的GPT模型的结构,所有该家族的网络结构都是基于Decoder-Only的形式来逐步演化。既包含编码器也包含解码器,先理解输入的信息(Encoder部分),然后基于这个理解生成新的、相关的内容(Decoder部分),通常用于序列到序列(Seq2Seq)任务,如。模型在时间线上的位置表示它们的发布日期。仅包含编码器部分,主要适用于不需要生成序列的任务,只需要对输入进行编码和处理的单向任务场景,如。

2024-04-18 11:23:09 476

原创 GPT状态和原理 - 解密OpenAI模型训练

基础模型有很多熵。

2024-04-17 15:57:42 1167 1

原创 Transformer的Decoder的输入输出都是什么

decoder input: Encoder input(我有一只猫) + start [---I have a cat /end--- masked]decoder input: Encoder input(我有一只猫) + start I [---have a cat /end--- masked]训练时,decoder的并行计算是指 翻译第i+1个单词无需等待第i个单词的输出,因为训练时知道所有训练数输入数据的真实标签值,无需等待,可并行运算。/结束符,方便预测第一个Token/结束预测过程。

2024-04-16 18:16:26 1232

原创 GPT中的Transformer架构以及Transformer 中的注意力机制

看了两个比较好的视频,简单做了下笔记。

2024-04-11 15:33:04 1289

原创 SOPHON算能服务器SDK环境配置和相关库安装

于是我直接在google搜索:dkms.noarch 0:3.0.12-1.el7.rpm下载,找到如下网页。后面安装的libsophon以及sophon-mw都在SDK大包里面。在下载的SDK大包中找到下面的内容,然后拷贝到算能服务器中。其中在安装dkms的时候提示下面的错误。在前面下载的SDK大包中找到如下内容,然后把其中的四个拷贝到算能服务器上。然后使用下面的命令安装。然后使用下面的命令安装。

2024-03-19 14:21:31 429

原创 GCC的符号可见性: 解决Linux多个库同名符号冲突问题以及引用不同版本库的问题

某项目中因为使用到了不同版本库的问题,因此整理下GCC的符号可见性问题,方便自己以后再次使用。

2024-02-26 11:12:17 1102

原创 vscode远程调试服务器的Python代码

这篇博客首先参考了我自己之前的两篇博客。

2024-02-23 11:32:29 513

原创 SOPHON算能科技新版SDK环境配置以及C++ demo使用过程

推荐使用cmake中的find_package查找libsophon和sophon-mw的库包,并链接到自己的程序中。部分头文件不包含于libsophon,如bm_wrapper.hpp、utils.hpp。SoC模式下,原来/system下的软件库包,现位于/opt/sophon/下。SoC模式下,通过开机时的systemd服务,自动加载/opt/sophon/libsophon-current/data下的ko内核模块。如用户定义的自启动服务,并且依赖BM168X,请确保在ko加载后启动。

2024-02-20 16:16:04 1539

原创 yolov5导出onnx模型问题

我改完之后,输出变成x y w h box_score idxs label1_confidence label2_confidence .... labeln_confidence.原来的yolov5输出是x y w h box_score label1_confidence label2_confidence .... labeln_confidence.为了适配C++工程代码,我在导出onnx模型时,会把models/yolo.py里面的forward函数改成下面这样,

2024-01-31 17:55:08 936

原创 利用tpu-mlir工具将深度学习算法模型转成算能科技平台.bmodel模型的方法步骤

上图就是tpu-mlir的整体架构图,主要分两步, 一是通过将原始模型 转换成mlir文件, 二是通过将mlir文件转换成bmodel/cvimodel。如果要转INT8模型, 则需要调用生成校准表, 然后传给。如果INT8模型不满足精度需要, 可以调用生成量化表, 用来决定哪些层采用浮点计算, 然后传给生成混精度模型。

2024-01-24 16:31:52 1491 4

原创 程序员的周末——硬件设计中的Hello World__STM32核心板绘制

周末有时间,用Altium Designer 20绘制一个STM32核心板电路,走一遍原理图设计、原器件布局、布线、覆铜、电气规则检测等大体流程,下面简单记录下过程。

2024-01-19 16:35:03 1085

原创 基于EasyDarwin、ffmpeg实现rtsp推流

某项目中测试时需要用到推流,于是用EasyDarwin、ffmpeg实现了RTSP推流,简单记录下过程,

2023-12-20 15:53:22 882

原创 error while loading shared libraries: libva.so.1: cannot open shared object file: No such file or di

然后问bing ai说要从github下载源码然后配置编译安装,太麻烦了,但是其实自己电脑中是有这个库的,只不过软连接的名字不一样,解决方法如下。这里可以看到自己电脑中是把 libva.so.2.100.0链接为libva.so.2,所以,那我再软连接个libva.so.1就行了,在做某项目的时候遇到这个问题,

2023-12-20 14:42:08 597

原创 将Linux中的screen命令封装成class类并使用它在代码中执行相应命令

可以用screen -ls查看所有会话,比如。

2023-12-08 14:49:03 478

原创 父子进程继承问题:OSError: [Errno 88] Socket operation on non-socket错误记录

基本上没有什么有用信息,于是我想那我就去Python的flask库源码里面看看,然后我在flask库源码里面添加了打印,至于在哪些代码添加打印,从报错可以看到代码执行顺序,所以按照报错信息提示的代码执行流程去添加打印。这里很明显有个问题,就是我传进去的port是10000,然后第一次打印确实是10000,但是第二次打印为什么变成0了,于是去找第二行打印那里的代码。修改完之后再次执行程序,现在发现两行打印的端口号是统一的了,第二行打印不再是0了,程序也不再报错了,问题解决。然后我运行程序,发现打印内容如下。

2023-12-06 13:58:24 1094

原创 利用flask将yolov5算法封装成在线推理服务

本脚本主要参考了yolov5工程文件夹下面的detect.py,将yolov5算法封装成了一个在线的推理服务,可以接受app请求,然后推理图片,并将检测结果以json返回,该服务可以供数据标注平台请求。

2023-12-05 17:40:55 761

原创 移植NXP官方uboot到IMX6ULL开发板--以及过程中遇到的疑问和错误记录

移植NXP官方uboot到IMX6ULL。

2023-11-28 16:19:34 1563 1

原创 利用opencv/暗通道方法检测图像是否有雾-利用opencv/暗通道方法对深度学习目标检测算法结果进行二次识别提高准确率

本来利用yolov5检测浓雾的,但是发现yolov5的检测结果会把一些正常天气检测成雾天,这种时候其实可以通过增加正常类,也就是将正常天气被误检成浓雾的图片当成一个正常类别去训练,但是不想标注图片,也不想重新训练算法了,因此想是不是可以用opencv对yolov5检测到的图像进行二次识别,从而提高准确率,结果发现是可以的。

2023-11-22 14:14:31 714

原创 conda环境使用过程中的两个错误记录

然后就是提示没有相应的包,我用screen -r连接到那个screen看了,他也激活conda环境了,问题原因在:我是在某个conda环境中执行的这个脚本,那相当于我在conda环境中开的screen,然后再在screen中激活另一个conda环境,这就不成功。具体根本原因我也没细究,为了项目进度,解决问题的方法就是,先退出当前的conda环境再激活某个screen,再进入另一个conda环境就好了,所以把上面的代码增加一行就好了。运行提示没有pynvml报的问题,于是那我当然用下面的命令去安装这个包,

2023-11-10 17:03:46 294

原创 搭建嵌入式GDB调试环境以及VSCode+gdbserver 图形化调试

然后我又试了下gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf的gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/libc/usr/bin这个目录下的gdbserver放到开发板上是可以用的。在不涉及到交叉编译的时候,--build、--host、--target是一样的,不需要特别设置。--target:编译出来的工具链生成的代码的运行平台。

2023-11-07 19:23:11 2449 2

原创 Linux开发板移植FTP服务器和OpenSSH时发现的问题

的时候,我就试了下FileZilla登录Linux开发板,然后发现竟然可以,怎么回事呀,我以为是开发板里面已经有vsftpd了,我top命令看了下到底有什么服务在运行,我在里面没找到vsftpd,但是看到了一个sftp-server,我猜测就是这个。今天闲着没事,想试一下在Linux开发板移植FTP服务器以及移植OpenSSH,具体操作就不说了,网上有的是,我想记录下自己在这个过程中发现的问题。于是我做了实验,把这个sftp-server给去掉,发现确实连接不上了,

2023-11-06 16:21:15 218

原创 Linux内核input子系统详解

函数,这里设置了中断处理函数是gtp_irq_handler,在gtp_irq_handler函数里面就是真正读取触摸屏数据的最底层的硬件函数了,里面就是调用i2c_transfer函数读取数据的了。假设nr设置为1,max_slots设置为5,那么督导的数据保存在:samp[0][0]、samp[0][1]、samp[0][2]、samp[0][3]、samp[0][4]和samp[1][0]、samp[1][1]、samp[1][2]、samp[1][3]、samp[1][4]中。

2023-11-03 16:47:57 661 2

原创 使用python_opencv比较图像差异/使用python_opencv找出两张图像的差异范围

发现效果还是不对,这是因为我想反了,其实diff图中,右下角黑色那块,黑色的的像素值低, 所以,我thresh不应该设置成230,要设置成20,这样保留的就是右下角那块黑色的了。其实增加了三个if判断,对矩形进行过滤之后,上面的那个图片已经能够检测出差异了,但是我还有其他图片,发现效果还是不好,单纯这种优化方法还是不够,还需要继续优化。其实从diff图来看,opencv已经能够很明显的发现右下角的差异了,那么说明用这种方法其实是可以解决我这个问题的,那为什么最后的效果不好呢,我看了下我的diff图,

2023-10-20 14:09:28 955 2

原创 Linux内核UART串口子系统驱动框架详解

具体看函数内部,申请了imx_uart结构体之后,显示解析了设备树获取了寄存器信息,然后设置这个uart_port结构体,然后uart_port结构体里面的ops操作结构体对应的是uart_ops结构体,这个uart_ops结构体里面对应的就是一些imx6ull自己的一些操作函数了,这就具体到底层硬件操作函数了,设置完这些东西之后就开始调用uart_add_one_port(&imx_reg, &sport->port)函数去添加一个port。

2023-10-19 14:28:07 4232 11

原创 /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21‘ not found (required by

出现上述错误的原因是安装了高版本的GCC之后没有更新软连接,只需要查找安装GCC时生成的最新动态库,然后添加软连接即可。然后我看了下/usr/lib64/libstdc++.so.6是链接到哪里去了,这个问题其实我之前遇到过,之前的博客笔记。然后看了下g++版本是8.5.0。在某项目中遇到下面的错误,

2023-10-08 10:58:55 2293

原创 Linux内核SPI子系统驱动框架详解

当我们在应用程序中调用比如write函数的时候,其实调用的就是spi设备驱动注册进去的file_operations结构体里面的write函数,也就是图中的spidev_write函数,这个spidev_write函数进一步调用的就是spi_write函数,这个spi_write函数就就是在SPI核心层定义的,然后spi_write函数进一步调用的就是SPI控制器驱动程序中的spi_sync函数。如上图所示是spi控制器和spi设备的软件架构图,左边是SPI控制器驱动软件结构,右边是SPI设备的软件结构,

2023-09-22 17:17:51 1636 7

原创 Can‘t find default configuration “arch/x86/configs/100ask_imx6ull_defconfig“!----编译内核时找不到配置文件

这说明make命令没有去arch/arm目录下查找配置文件,而是去了arch/x86目录下查找,make命令默认是去arch/$(ARCH)/configs/目录下查找配置文件的,环境变量,您可以告诉编译系统您正在编译的目标架构是ARM。这样,编译系统就会使用适合ARM架构的编译选项和工具链来编译代码。这个环境变量通常在编译Linux内核或其他针对特定架构的软件时使用。在arch这个目录下有配置文件,但是前面的报错是。所以,我需要设置一下ARCH环境变量,编译配置内核时,提示下面的错误。

2023-09-08 10:17:23 708

原创 Linux内核的GPIO子系统驱动框架详解以及基于pinctrl和gpio子系统的LED驱动程序

上图就是gpio子系统的层次结构图,在其他的驱动程序里面,我们可以直接用gpiod_set_value这种函数来设置引脚的值,这个函数是在gpio库里面定义的,gpio库起到一个承上启下的作用,然后这个gpiod_set_value函数最终调用的是chip->set(chip, gpio_chip_hwgpio(desc), value)函数,这里的chip就是在gpio驱动程序里面注册的结构体,这个结构体体里面就包含了一些对gpio的操作函数。base // 这个GPIO控制器的GPIO编号。

2023-09-06 20:02:15 2037 3

转载 自动驾驶——自动泊车之AVM环视系统算法框架

360环视原理介绍和demo,备份,留以后用。

2023-08-29 10:30:20 315

原创 Linux内核的pinctrl子系统驱动框架详解

然后在这个结构体中,分别包含了pins,还有一些操作函数,然后又调用了imx_pinctrl_probe_dt(pdev, info);首先设备树中的iomuxc节点会被转化成一个platform_device,然后根据compatible = "fsl,imx6ul-iomuxc"进行匹配时,imx6ul_pinctrl_probe函数会被调用,在这个函数中,先是取出了pinctrl_info = (struct imx_pinctrl_soc_info *) match->data;

2023-08-28 21:21:51 909

原创 利用nntc工具将深度学习算法模型转成算能科技平台.bmodel模型的方法步骤

将深度学习算法模型转换为算能科技的.bmodel

2023-08-22 09:49:06 1210 1

华为ascend平台模型转换工具和脚本

华为ascend平台模型转换工具和脚本,用于将深度学习算法模型转换为华为平台的.om格式模型。

2024-05-09

activeMQ收发工具.rar

activeMQ的测试工具,用于发送和接收activeMQ消息,jar包形式的,安装完jdk之后用java -jar xxx.jar命令运行

2021-11-24

105套个人工作总结汇报PPT模板,

105套个人工作总结汇报PPT模板,下,71-105套

2020-12-24

个人工作总结汇报PPT模板

105套个人工作总结汇报PPT模板,前70套

2020-12-24

yuvviewer,yuv播放器

yuvviewer,yuv播放器,支持播放各种格式的yuv,nv12,nv,i420

2020-12-16

PCA特征值压缩原理.docx

PCA降维原理,包含基本的线性代数基础知识,以及降维的原理,和降维矩阵的求解方法。。。。。。。。。。。。。。。。。。。。。。。

2020-08-31

HI3536交叉编译工具链.txt

Hi3536交叉编译工具链的资源和安装方法的百度云网盘链接,链接永久有效

2020-08-21

ndjpnladcallmjemlbaebfadecfhkepb.zip

chrome浏览器的office插件,支持在线编辑office,这样可以在linux中的google浏览器使用office,

2020-08-04

2020-07-24-21-20-52-download-P3X-OneNote-2020.10.105.AppImage

linux上安装的P3X-OneNote,网络下载太慢,因此上传供同学下载,安装后可以在linux上使用onenote

2020-08-04

pytorch学习视频百度网盘链接.txt

pytorch学习视频,2.5个G。包括 深度学习初见/ 开发环境安装/ 回归问题/ pytorch基础教程/ pytorch进阶教程/ 随机梯度下降/ 神经网络与全连接层/ 过拟合/ 卷积神经网络CNN/ CIFAR10与resnet实战/ 循环神经网络RNN&lstm/

2020-02-23

HI3559a的各种资料百度网盘链接.txt

含有HI3559a的各种资料,手册,交叉编译工具链,各种工具,软硬件设计资料,一共九个多G

2019-07-11

httpclient.zip

httpclient的demo,用于向服务器发送http请求,在项目中用过,可用

2019-07-11

SDC APP开发指南.pdf

海思3559a的SDC APP开发指南,内含有SDC接口介绍以及简单demo,SDC APP开发指南.pdf

2019-07-11

HiSVP API 参考.pdf

海思3559a的SVP开发手册,可以用来开发海思3559a的NNIE,HiSVP API 参考.pdf

2019-07-11

ucos2官方资料

ucos源码

2014-08-29

空空如也

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

TA关注的人

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