- 博客(64)
- 资源 (6)
- 收藏
- 关注
原创 BCEWithLogitsLoss
BCEWithLogitsLoss 是 PyTorch 深度学习框架中的一个损失函数,用于二元分类问题。它结合了 Sigmoid 激活函数和二元交叉熵损失(Binary Cross Entropy Loss),使得在训练过程中更加数值稳定。
2024-08-21 14:49:23
2050
原创 目标检测 | yolov10 原理和介绍
在过去的几年里,YOLO 已成为实时目标检测领域的主要范式,因为它们在计算成本和检测性能之间有效平衡。研究人员探索了 YOLO 的架构设计、优化目标、数据增强策略等,取得了显着进展。然而,对非最大抑制(NMS)进行后处理的依赖阻碍了YOLO的端到端部署,并对推理延迟产生不利影响。此外,YOLOs中各个组件的设计缺乏全面和彻底的检测,导致计算冗余明显,限制了模型的能力。它使次优效率,以及性能改进的巨大潜力。在这项工作中,我们的目标是从后处理和模型架构中进一步推进 YOLO 的性能效率边界。
2024-08-20 19:59:49
5604
原创 目标检测 | yolov9 原理和介绍
今天的深度学习方法侧重于如何设计最合适的目标函数,以便模型的预测结果可以最接近基本事实。同时,必须设计能够促进获取足够信息进行预测的适当架构。现有方法忽略了输入数据经过逐层特征提取和空间变换时的事实,会丢失大量信息。当数据通过深度网络传输时,本文将深入研究数据丢失的重要问题,即信息瓶颈和可逆函数。我们提出了可编程梯度信息 (PGI) 的概念来应对深度网络实现多个目标所需的各种变化。PGI可以为目标任务提供完整的输入信息来计算目标函数,从而获得可靠的梯度信息来更新网络权重。
2024-08-20 14:58:38
2533
1
原创 目标检测 | yolov8 原理和介绍
近年来,You Only Look Once (YOLO)系列目标检测算法因其在实时应用中的速度和准确性而受到广泛关注。本文提出了一种新的目标检测算法YOLOv8,它建立在以前迭代的基础上,旨在进一步提高性能和鲁棒性。受到从YOLOv1到YOLOv7的YOLO架构演变的启发,以及从YOLOv5和YOLOv6等模型的比较分析中获得的见解,YOLOv8结合了关键创新,以实现最佳的速度和准确性。利用注意力机制和动态卷积,YOLOv8引入了专门为小物体检测量身定制的改进,解决了YOLOv7中突出的挑战。
2024-08-19 11:59:02
2613
1
原创 目标检测 | yolov7 原理和介绍
YOLOv7是目标检测领域中YOLO系列的最新进展,它在速度和准确性上都取得了显著的提升,被认为是目标检测领域的新里程碑。模型重参数化:YOLOv7首次将模型重参数化技术引入网络架构中,这一技术最早在REPVGG中提出,有助于提升模型表达能力而不增加计算复杂度。标签分配策略:YOLOv7采用了结合YOLOv5和YOLOX优点的标签分配策略,通过跨网格搜索和匹配策略,提高了检测准确性。
2024-08-16 18:16:28
5077
原创 目标检测 | yolov6 原理和介绍
YOLOv6是由美团视觉智能部研发的一款目标检测框架,专注于工业应用,致力于提供极致的检测精度和推理效率。相较于YOLOv4和YOLOv5,YOLOv6在网络结构方面进行了深入优化,提升了模型的检测精度,并在处理复杂场景时更加稳健。同时,YOLOv6还在保持高效性的基础上,减少了模型的参数量,适合在移动端等计算资源有限的设备上运行。YOLOv6的改进包括采用轻量级的卷积模块和引入注意力机制,更好地捕捉图像中的关键信息。它还针对小目标检测问题进行了优化,改进了锚框的生成方式,适应不同尺寸的目标。
2024-08-15 20:44:29
2558
1
原创 目标检测 | yolov5 原理和介绍
YOLOv5是YOLO系列中一个重要的版本,它在目标检测领域具有显著的性能提升和改进。Mosaic数据增强:YOLOv5在训练阶段采用了Mosaic数据增强技术,这种技术通过将四张图片随机缩放、裁剪并拼接成一张图片,增加了模型训练时的多样性,有助于提升模型对小目标的检测能力。自适应锚框计算:YOLOv5引入了自适应锚框计算方法,该方法使用K-means聚类对训练集中的边界框进行分析,并自动调整锚框的大小和比例,以适应不同数据集的特点。
2024-08-07 18:21:55
1021
原创 目标检测 | yolov4 原理和介绍
YOLOv4是一种高效且准确的目标检测模型,它在YOLOv3的基础上引入了多项改进,这些改进主要集中在网络结构的优化和训练技巧的更新上。论文链接:https://arxiv.org/abs/2004.10934时间:2020年作者:Alexey Bochkovskiy代码参考:https://github.com/Tianxiaomo/pytorch-YOLOv4大量的特征据说可以提高卷积神经网络(CNN)的精度。需要在大数据集上对这些特征的组合进行实际测试,并对结果进行理论证明。
2024-08-06 16:18:03
2483
原创 目标检测 | yolov3 原理和介绍
YOLOv3 擅于预测出合适的目标,但无法预测出非常精准的边界框。YOLOv3 小目标预测能力提升,但中大目标的预测反而相对较差。若将速度考量进来,YOLOv3 整体来说表现非常出色。YOLOv3在小目标\密集目标的改进1.grid cell个数增加,YOLOv1(7×7),YOLOv2(13×13),YOLOv3(13×13+26×26+52×52)2.YOLOv2和YOLOv3可以输入任意大小的图片,输入图片越大,产生的grid cell越多,产生的预测框也就越多。
2024-08-05 18:41:17
3864
1
原创 目标检测 | yolov2/yolo9000 原理和介绍
论文链接:https://arxiv.org/abs/1612.08242时间:2016年作者:Joseph Redmon作者首先在YOLOv1的基础上提出了改进的YOLOv2,然后提出了一种检测与分类联合训练方法,使用这种联合训练方法在COCO检测数据集和ImageNet分类数据集上训练出了YOLO9000模型,其可以检测超过9000多类物体。所以,这篇文章其实包含两个模型:YOLOv2和YOLO9000,不过后者是在前者基础上提出的,两者模型主体结构是一致的。
2024-08-01 19:05:30
1366
原创 目标检测 | yolov1 原理和介绍
论文链接:https://arxiv.org/abs/1506.02640时间:2015年作者:Joseph Redmon代码参考:https://github.com/abeardear/pytorch-YOLO-v1。
2024-08-01 17:11:39
1436
原创 vscode离线安装ssh插件(本机和服务器都离线)
点击复制(因为我写博客和自己实际用的离线机器不同,所以截图中的ID有差别,以实际ID为准,图片只做示范参考)假设远程ssh服务器是linux64位的,利用这个ID下载server-linux-x64压缩包。把下载好的vscode-server-linux-x64.tar.gz文件放在远程ssh服务器上。.........
2022-08-10 12:01:07
3198
原创 ubuntu下使用ftp
get b.txt:下载ftp服务器当前的目录下的文件b.txt到本地主机的当前进入的目录XX。put a.txt: 上传本地文件a.txt到ftp服务器。修改ftp的配置文件 /etc/vsftpd.conf。cd XXX: 进入服务器文件夹目录 ~/XXX。lcd XX:进入本地文件夹目录 ~/XX。...
2022-08-04 14:41:43
3732
原创 pip源设置并批量下载包
修改 ~/.pip/pip.conf (没有就创建一个pip文件夹及pip.conf 文件。requirements.txt中例如。
2022-08-04 14:25:50
378
原创 anaconda安装和使用
ubuntu: bash Anaconda3-2021.11-Linux-x86_64.sh 也是记着安装目录。windows:exe安装,设置安装目录,记着就好,其他的可以默认设置。命令行创建一个虚拟的环境,并指定python版本。成功后在用户目录有个.condarc文件。...
2022-08-04 14:23:58
231
原创 海思Hi3519AV100 emmc flash方式 linux系统移植 hitool工具烧写
hi3519av100 emmc模式 linux系统烧录启动
2022-04-18 20:10:03
3879
1
原创 ubuntu18.04编译使用 caffe cpu 使用工具示例 训练示例
ubuntu18.04安装cpu版本的caffe使用caffe生成网络神经图
2021-12-02 19:36:47
1228
2
原创 docker安装和使用
安装docker1.卸载旧版本sudo apt-get remove docker docker-engine docker.io containerd runc2.更新 apt 包索引sudo apt-get update3.安装 apt 依赖包sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common4.添加 Docker 的官方 GPG 密钥
2021-12-02 11:37:17
1042
原创 anaconda安装记录
下载安装anaconda 官网:ananconda.com Anaconda3-2021.05-Linux-x86_64.sh安装 bash Anaconda3-2021.05-Linux-x86_64.sh
2021-10-24 21:09:33
451
原创 cmake创建库和使用库工程示例(多个cmakelists)
使用cmake构建一个工程,该工程创建了两个静态库,另外生成一个引用该两个静态库的可执行文件。1.构建工程该工程生成两个库liaadd.a和liabmul.a。一个工程管理的cmake,一个生成lib的cmake,一个生成可执行测试程序的cmake。文件:add.hint add(int a, int b);文件:add.c#include "add.h"int add(int a, int b){ return a + b;}文件:mul.hint mul(int a, i
2021-10-09 14:44:58
4132
2
原创 C语言实现linux系统获取高精度时间差(毫秒)
简介通过函数gettimeofday获取当前时间代码#include <stdio.h>#include <sys/time.h>#include <unistd.h>int main(){ double dbCostms; struct timeval tvStart, tvEnd; gettimeofday(&tvStart, NULL); usleep(30000); gettimeofday(&tvEnd, NULL)
2021-09-17 16:21:23
1327
原创 昇腾AI推理环境搭建
官网参考文档:https://support.huaweicloud.com/devg-mindstudio302/atlasms_02_0033.html主机环境:ubuntu18.04初始化root密码sudo passwd root允许root账号远程登录:sudo vim /etc/ssh/sshd_config修改 PermitRootLogin yes 保存退出切换到root用户或者使用root用户远程登录1.python3.7.5手动安装安装python所需依赖apt-get
2021-09-03 16:15:52
620
原创 linux下c语言简单实现写日志函数(多线程安全)
调用时包含log.h文件后使用LOG函数进行写入日志操作// eg:LOG("[%s][%d] a:%d b:%s", __FILE__, __LINE, a, b);log.h// log.h: 标准系统包含文件的包含文件// 或项目特定的包含文件。#pragma once#include <stdio.h>#include <sys/types.h> #include <unistd.h> #include <stdlib.h>
2021-08-23 17:43:40
1288
原创 linux下c语言简单实现获取配置文件中的配置项
类比windows下GetPrivateProfileString、GetPrivateProfileInt获取配置的API使用vs2019创建linux空项目及测试的配置文件以及测试结果如下图ini.h#ifndef __INI_H__#define __INI_H__#include <stdio.h>#include <string.h>#include <stdlib.h>#include <errno.h>#define B
2021-08-23 17:34:26
572
原创 vs+cmake+使用静态库
1.创建使用vs2019创建cmake项目vs2019创建、编译、调试cmake Linux项目include文件夹存放链接库的目录和源文件lib存放生成后的动态库和静态库(需要在linux中的include目录下执行make生成)src为调用libadd库的测试代码2.详解各文件内容和含义静态库或动态库源文件,设计了一个接口add_test返回两个整数之和供外部调用2.1 链接库的源码add.cpp#include "add.h"int add_test(int a, int b){
2021-07-27 17:03:25
2303
1
原创 (三)海思3519av100开发:海思sample代码测试之tde
海思文档+nfsAxe+SecureCRT 8.1破解版资源网盘链接提取码:pzxg3.海思sample代码测试tde用例目录Hi3519AV100_SDK_V2.0.1.0\smp\a53_linux\mpp\sample,该文件下每个子文件都是一个例子。我们以最简单(没有输入)的例子tde作为 测试。它不需要输入, 直接使用tde目录下的res目录下的图像数据,经hdmi输送到屏幕。3.1 编译在sample目录下切换到超级用户root,直接make就行。有错误提示路径可以修改该目录下smp_l
2021-07-21 11:36:04
1504
原创 (二)海思3519av100开发:开发板环境搭建
本文省去kernel、uboot、文件系统烧写步骤,详见海思文档。工具:开发板、usb转串口(dp9)、usb转网卡、网线、windows10系统+nfsAxe+SecureCRT 8.1、ubuntu18.04虚拟机海思文档+nfsAxe+SecureCRT 8.1资源网盘链接提取码:pzxg其中usb转串口用于通信、网卡用于nfs文件传输,也可以使用其他方法进行通信和文件传输,不做叙述。实物图开发板连接串口上电启动确认usb转网卡的ip地址(开发板需要和连接的网卡的ip地址在同一网段
2021-07-20 17:57:39
1549
1
原创 (一)海思3519av100开发:linux环境搭建
1.引言参考文档: ReleaseDoc\zh\01.software\board\SVP\HiSVP 开发指南.pdf概念:NNIE(Neural Network Inference Engine)(神经网络推理机)其他概念和开发流程等等都省略,只为安装好对应的环境,和记录自己踩过的坑。、2.环境1.Ubuntu18.042.gcc4.8.5关于gcc的版本要多注意下,因为我最开始使用的是默认的版本,7.x的,在运行nnie_mapper_12时遇到了未定义符号问题,后续会讲到。3.下载和
2021-07-12 18:07:26
2177
3
原创 使用vs2019编译和调试开源项目opencv3.4.0版本+opencv3.4.0源码网盘链接
1.引言opencv一些经典的算法申请了版权,所以版本上选择3.4.3以下的版本。最新因为在学习海思平台的东西,所以参考它的opencv版本为3.4.0,刚好避开了经典算法的版权。2.下载opencv3.4.0源码我的猜测是因为版权原因,所以一般的途径下载速度超级超级慢,并且会一直下载失败。比如我在windows上谷歌浏览器中的官网和github官网下载都失败了,这里为了看到的童鞋不要踩坑,讲一个我后续下载成功的一个方法。使用linux环境,不行就装个虚拟机,在虚拟机中搞个linux环境,使用系统自
2021-07-09 18:32:27
753
1
原创 c++实现矩阵运算的加减法乘法以及测试用例
最新在看图像AI相关的知识,在此记录一个自己思考的代码用例。关于矩阵的应用在AI中应用还是很广泛,尤其是深度学习及其特征值提取中。这里先简单记录上自己简单的基础矩阵算法的类,后续学习中会不断丰富这个类。参考opencv3.4.0源码中libjasper模块中的jas_seq.c(本例中增加了加减乘运算,缩减和扩充了一些自己的理解)测试程序结果:对于矩阵的赋值都采用了调用类创建矩阵时赋值或不赋值(默认参数)处理,具体见代码。matrix.h 矩阵类的定义/*******************
2021-07-09 16:38:24
4199
原创 win7 net start npf 服务名无效 WinPcap已安装
这个问题的根源是wireshark找不到本地的接口引起的,我试过在管理员模式下启动dos输入:net start npf显示服务名无效然后网上找到解决方案是:把新版winpcap删除再重装个老版的接着就是怎么删除的问题找到相应文件,并把扩展名修改即可:● C:\Windows\SysWOW64 的wpcap.dll改成 wpcap.dll.old● C:\Windows\SysWOW64的packet.dll改成 packet.dll.old其实参照如上做法就可以顺利的把 WinPcap4
2021-06-10 23:00:21
5278
原创 学习记录-c语言-大小写转换问题理解和记录
今天看了ffpaly源码,在源码中看到一段很有意思的函数(大写转换小写,小写转换大写)。觉得很有意思,故而写下对它的理解源码如下libavutil\avstring.h/** * Locale-independent conversion of ASCII characters to uppercase. */static inline av_const int av_toupper(int c){ if (c >= 'a' && c <= 'z')
2021-06-09 17:18:32
598
3
原创 ffmpeg学习记录、源码编译、windows下vs2019构建demo调试
1 下载ffmpeg源码(github或ffmpeg官网【http://ffmpeg.org】2 下载msys2,官网地址【http://www.msys2.org】3 安装msys2,默认安装路径(C:\msys64)4 更新msys2数据源4.1 C:\msys64\etc\pacman.d\mirrorlist.mingw32http://mirrors.ustc.edu.cn/msys2/mingw/i6864.2 C:\msys64\etc\pacman.d\mirrorlist.m
2021-06-07 18:33:33
635
原创 Linux动态库静态库生成与使用
静态库先基于.cpp或者.c文件生成对应的.o文件,将几个.o文件 使用ar -cr命令 生成libname.a文件libname.a 为静态库, name 为静态库的名字1.静态库的两个函数对应四个文件,一个函数对应一个.h声明文件和.cpp实现文件函数1:fun1源文件fun1.h#include <iostream>using namespace std;void fun1();源文件fun1.cpp#include "fun1.h"void fun1(){
2021-05-10 14:59:15
370
原创 WindowsAPI MFC C++各种时间类型转换
时间类型及其意义FILETIME:结构持有的64位无符号的文件的日期和时间值。此值表示自UTC(Coordinated Universal Time)时间1601年1月1日开始的100纳秒为单位的时间。SYSTEMTIME:这个和tm有点类似,代表系统时间。其中,SYSTEMTIME.year的值为多少就表示公元哪一年。tm:Systemtime-1900得到tm.year,其他的还有些差别 tm.year的值加上1900才表示公元哪一年。time_t:是日历时间;其值表示从UTC(Coordina
2021-03-01 19:11:43
681
原创 三种最大公约数算法耗时比较(vs2008使用MFC程序测试)
关键代码void CMFCTESTDlg::OnBnClickedButton1(){ UpdateData(); // 刷新数据 DWORD dw1 = GetTickCount(); DWORD nGCD1 = GetGCD1(m_num1, m_num2); DWORD dw2 = GetTickCount(); DWORD nGCD2 = GetGCD2(m_num1, m_num2); DWORD dw3 = GetTickCount(); DWORD nGCD3 = GetG
2021-01-15 19:01:12
305
MPEG2_CHS(中文).pdf
2020-09-28
数字电视业务信息及其编码.pdf
2020-09-28
TSToES工具(ts文件提取音频视频es、ps,去DTS_PTS)
2020-09-28
apk_sign.zip
2020-03-03
json_all-master.zip
2019-11-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人