自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 yolov3

ubuntu下Python的安装与卸载https://www.cnblogs.com/shuimuqingyang/p/14506537.htmlYOLO-V3实战(darknet)https://www.cnblogs.com/xieqi/p/9818056.html

2021-10-29 17:02:20 234

原创 资源网站整理合集--adding

综合导航- 阿虚同学http://axutongxue.com/- 好网站不私藏https://www.207788.xyz/爱达杂货铺https://adzhp.cn/- 书签地球https://www.bookmarkearth.com/不死鸟https://iao.su/- iMySharehttps://imyshare.com/专项导航- 书享家http://shuxiangjia.cn/- 搜图导航https://www.91sotu.com/- SCI_HUBhttps://tool.yovi

2021-10-27 18:53:08 8949

原创 01_python_main函数-启动-传递参数

python_main函数-启动-传递参数1.python中的main函数if __name__ == "__main__":2.传递参数 Python3 命令行参数2.1sys.argv2.2 getopt 模块getopt.getopt 方法1.python中的main函数Python作为一门较为灵活的解释型脚本语言,其中定义的main()函数只有当该Python脚本直接作为执行程序时才会执行;当该python脚本被作为模块(module)引入(import)时,其中的main()函数将不会被执行。

2021-10-26 16:51:24 9572

原创 nvidia backend 安装失败 解决NVIDIA软件或驱动安装包出错

nvidia backend解决NVIDIA软件或驱动安装包出错出版 2016年09月30日07:55更新 2018年07月11日09:59解决NVIDIA软件或驱动安装包出错当NVIDIA GeForce Experience软件或 NVIDIA 显卡驱动程序安装失败时,有时候并没有明确指出一般出错的原因,这些错误大多是在较差的电脑系统环境下导致。如果软件安装失败,最好的第一步解决方式是重启电脑并且重新安装。若依旧无效,尝试完整卸载之前的版本 (若有先前版本),并重启电脑与重新安装。若持续.

2021-10-24 18:19:31 21451 8

原创 CATIA 版本代号的含义

CATIA 各个版本代号详解一. 第几代(V-"version")简介-----V5二.系列(R)简介-----R17三.平台(P-"platform")简介-----p3P1 平台P2 平台P3 平台四、升级版本(GA)简介-----SP8五、各个版本发布时间六、CATIA V5R18 p3 SP4的下载地址参考链接:以CATIA V5R18 p3 SP8为例,说明CATIA 版本代号的含义。一. 第几代(V-“version”)简介-----V51982—1988年,catia相继发布了第一代—V

2021-09-27 10:16:49 8573 2

原创 conda安装----arm-linux-ubuntu平台安装miniconda

conda安装----arm平台安装minicondacondaarm平台安装minicondalinux相关版本介绍下载与安装miniconda使用教程conda --versionconda create --name your_env_nameconda env listconda activate your_env_name更改仓库地址-加速下载速度conda remove --name test1 --allconda listconda install 软件包的名字conda list --ex

2021-09-27 10:01:28 6548 1

原创 GPU 选择 深度学习 图像识别

GPU 选择 深度学习 图像识别1.显卡1.1.Nvidia显卡分类1.1.1 Geforce系列1.1.2 Quadro系列1.1.3 Tesla系列1.2 GPU几个比较重要的参数GPU架构:CUDA核心数量:显存位宽:GPU工作频率:显存带宽:显存容量:功耗:1.3 如何选择2.NVIDIA嵌入式系统2.1 Jetson Nano2.2 Jetson TX2 系列2.3 Jetson Xavier NX2.4Jetson AGX Xavier 系列3.Pascal架构、Volta架构和Turing架构

2021-09-24 16:30:48 6376

原创 Python_windows打包_生成EXE文件

Python_windows打包_生成EXE文件1.pyinstaller介绍与安装2.生成可执行程序1.pyinstaller介绍与安装Python 默认并不包含 PyInstaller 模块,因此需要自行安装 PyInstaller 模块。安装 PyInstaller 模块与安装其他 Python 模块一样,使用 pip 命令安装即可。在命令行输入如下命令:pip install pyinstaller强烈建议使用 pip 在线安装的方式来安装 PyInstaller 模块,不要使用离线包的

2021-09-09 17:46:44 165

原创 UBUNTU(和windows双系统) 时间同步 和 默认启动项设置(windows)

#时间同步#1.安装时间同步工具sudo apt install ntpdate#2.利用时间工具与互联网同步正确的时间sudo ntpdate time.windows.com#3.将时间机制从UTC改成LOCAL TIME 并同步BIOS硬件时间sudo hwclock --localtime --systohc#设置启动项#1.打开文件sudo gedit /etc/default/grub#2.改GRUB_DEFAULT=2...

2021-08-30 08:40:59 185

原创 四元数 旋转矩阵 欧拉角

四元数 旋转矩阵 欧拉角1.四元数1.四元数https://www.cnblogs.com/meteoric_cry/p/7987548.html在这里插入代码片

2021-08-27 08:32:05 153

原创 Airsim无人机状态获取getMultirotorState

Airsim无人机状态获取getMultirotorStategetMultirotorStateKinematicsStategetMultirotorState此 API 一次调用即可返回车辆的状态。状态包括碰撞、估计运动学(即通过融合传感器计算的运动学)和时间戳(自纪元以来的纳秒)。这里的运动学意味着 6 个量:位置、方向、线速度和角速度、线速度和角加速度。请注意,simple_slight 目前不支持状态估计器,这意味着 simple_flight 的估计和地面实况运动学值将相同。但是,除了角加

2021-08-27 08:31:41 1481

原创 显卡、显卡驱动、nvcc、cuda driver、cudatoolkit、cudnn的解释与关系

显卡、显卡驱动、nvcc、cuda driver、cudatoolkit、cudnn的解释与关系1. GPU型号含义2. CUDA名称含义3.CUDA Toolkit4.cudnn1. GPU型号含义显卡: 简单理解这个就是我们前面说的GPU,尤其指NVIDIA公司生产的GPU系列,因为后面介绍的cuda,cudnn都是NVIDIA公司针对自身的GPU独家设计的。显卡驱动:很明显就是字面意思,通常指NVIDIA Driver,其实它就是一个驱动软件,而前面的显卡就是硬件。GPU架构:Tesla、Fe

2021-08-20 10:57:03 1554

原创 Ubuntu中启动Anaconda图形界面anaconda-navigator

base环境是安装anaconda时候conda自动配置的。source ~/anaconda3/bin/activate rootanaconda-navigator就能启动图形界面anaconda-navigator

2021-08-15 19:08:54 5001 1

原创 3_Airsim的settings.json文件设置与使用

windows环境下,将文件放到C:\Users\Administrator\Documents\AirSimubuntu下,将文件放到~/Documents下下载依赖pip install msgpack-rpc-pythonpip install airsim

2021-08-11 14:11:32 812

原创 ue4和Airsim仿真无人机,键盘控制无人机运动

代码#键盘测试import keyboardimport airsimclient = airsim.MultirotorClient()client.confirmConnection()def abc(x): w = keyboard.KeyboardEvent('down', 28, 'w') s = keyboard.KeyboardEvent('down', 28, 's') a = keyboard.KeyboardEvent('down', 28, 'a

2021-08-11 13:59:45 2015 1

原创 windows安装airsim

安装教程https://zhuanlan.zhihu.com/p/267321662?utm_source=wechat_session问题报错2.1update_from_git.bat报错Get-ItemProperty : 找不到路径“HKEY_CLASSES_ROOT\Unreal.ProjectFile\shell\rungenproj”,因为该路径不存在。没有生成Blocks.sln工程文件,重启并不能解决问题。...

2021-08-10 15:13:58 2075 6

原创 DJI OSDK和DJI Onboard-SDK-ROS

DJI OSDK 相关介绍DJI 软件开发工具包Mobile SDK:定制专属移动APP,做无人机行业应用专家UX SDK:使用UI组件快速构建无人机行业应用Windows SDK:定制专属桌面级应用,做无人机行业应用专家Payload SDK:打造专用空中工具包Guidance SDK:Onboard SDK:使用机载计算扩展无人机的无限潜能Linux: 使用Linux API 进行通讯ROS: 在ROS环境下进行通讯Embedded systems:其它支持串行通讯的系统DJI 下

2021-08-09 09:11:30 830

原创 Ubuntu安装屏幕亮度控制器Brightness

Ubuntu安装屏幕亮度控制器Brightness1.添加软件源2.更新软件源并安装Brightess3.打开Brightess,调节屏幕亮度在使用Ubuntu16.04的时候,发现屏幕亮度控制器没有了,屏幕太亮,看一会眼睛疼,于是就打算安装亮控制器1.添加软件源sudo add-apt-repository ppa:apandada1/brightness-controller 2.更新软件源并安装Brightesssudo apt-get update sudo apt-get insta

2021-08-08 13:36:22 628

原创 Ubuntu截图软件gnome-serceenshot使用

Ubuntu自带了一个截图工具——gnome-serceenshot工具,但是Ubuntu默认的截图快捷键中并没有设置想QQ一样截图的快捷键,,每次截一张图之后都必须在输入文件名然后保存成文件,才能将图片发给别人或者粘贴到文档中,非常不方便。但是Ubuntu又不能安装QQ和微信,只能忍受着使用。1、先来认识一下gnome-serceenshot工具:在命令窗中输入gnome-screenshot -h 这边就是这个工具所有的命令行操作方式;可以看到 -c选项是支持直接截图到剪贴板的,所以我可以

2021-08-08 13:33:47 239

原创 C++ 字符串char[]和string类

C++ 字符串char[]和string类char[]strcpy(s1, s2);strcat(s1, s2);strlen(s1);strcmp(s1, s2);strchr(s1, ch);strstr(s1, s2);string1. 构造函数2. 对 string 对象赋值3. 求字符串的长度4. string对象中字符串的连接5. string对象的比较6. 求 string 对象的子串substr 成员函数可以用于求子串 (n, m),原型如下:7. 交换两个string对象的内容8. 查找子

2020-07-31 15:39:54 1063

原创 c++字符串char*s与char s[]的区别与使用方法_学习笔记

c++字符串char*s与char s[]的区别与使用方法_学习笔记1.char *a2.char arr[]3.char*a 与char arr[]3.2 大小区别3.3 转换方法1.char *aa是一个指向已知字符串的指针,实质是指针变量 。2.char arr[]arr本身是一个字符串数组,arr指向该数组的第一个元素,实质是数组。char c[] = "hello";char* p_c = c;//c是一个指针常量char one = 'c';p_c = &one;one

2020-07-31 14:46:15 989

原创 C++中string、char *、char[]的转换_以及相关函数学习

C++中string、char *、char[]的转换一、string转char*。1.data()方法,如2.c_str()方法,如:3.copy()方法,如:二、char * 转string。三、string转char[]四、char[]转string一、string转char*。主要有三种方法可以将str转换为char*类型,分别是:data(); c_str(); copy();1.data()方法,如string str = "hello";const char* p = str.dat

2020-07-31 14:31:07 181

原创 快速排序和合并排序——学习笔记

快速排序和合并排序快速排序(nlogn)合并排序(nlogn)快速排序(nlogn)快速排序就是一种分治算法。#include <iostream>#include <vector>using namespace std;void print_vector(vector<int> num) { for (int i = 0; i < num.size(); i++) { cout << num[i] <<

2020-07-25 22:11:51 119

原创 1、TCP/UDP

TCP/UDP网络分层模型数据包的封装封装的步骤分割(用户区和内核区)TCP和UDP--端口号UDPTCP报文格式简介TCP三次握手建立连接通路的过程称为TCP的三次握手三次握手详解关闭连接通路的TCP的四次挥手(Four-Way Wavehand)“四次挥手”的详解网络分层模型OSI一般指开放式系统互联网。TCP/IP模型。1. 物理层:主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后再转

2020-07-23 12:46:58 130

原创 C++_封装__笔记

C++_封装_继承_多态_笔记封装数据封装的实例设计策略封装封装是面向对象编程中的把数据和操作数据的函数绑定在一起的一个概念,这样能避免受到外界的干扰和误用,从而确保了安全。数据封装引申出了另一个重要的 OOP 概念,即数据隐藏。数据封装是一种把数据和操作数据的函数捆绑在一起的机制,数据抽象是一种仅向用户暴露接口而把具体的实现细节隐藏起来的机制。C++ 通过创建类来支持封装和数据隐藏(public、protected、private)。我们已经知道,类包含私有成员(private)、保护成员(pro

2020-07-23 08:51:01 99

原创 虚拟地址空间_linux的io系统函数——学习笔记

这里写目录标题虚拟地址空间-内核区-用户区内核区--PCB进程控制块-进程管理0-3G的用户区ELF格式局部变量-栈空间new或者meloc 给指针分配地址空间共享库,动态库调用了一个C标准函数,比如说fread,fwrite静态库 a.out命令行参数环境变量虚拟地址,虚拟地址空间, 交换分区虚拟地址空间-内核区-用户区32位会分配一个地址空间4G的。2^32 == 4G0-3G的用户区,3-4G内核区。内核区–PCB进程控制块-进程管理PCB进程控制块里面有一个文件描述符的表。 其实是一个

2020-07-22 22:55:21 141

原创 Linux下创建进程的三种方式_学习笔记

Linux下创建进程的三种方式forkvforkclone在Linux中主要提供了fork、vfork、clone三个进程创建方法。在linux源码中这三个调用的执行过程是执行fork(),vfork(),clone()时,通过一个系统调用表*映射到sys_fork(),sys_vfork(),sys_clone(),再在这三个函数中去调用do_fork()去做具体的创建进程工作。forkfork创建一个进程时,子进程只是完全复制父进程的资源,复制出来的子进程有自己的task_struct结构和pi

2020-07-22 21:57:59 163

原创 GCC编程语言编译器——学习笔记

这里写目录标题gcc编译器的工作流程GCC(GNU Compiler Collection,GNU编译器套件)是由GNU开发的编程语言译器。GNU编译器套件包括C、C++、 Objective-C、 Fortran、Java、Ada和Go语言前端,也包括了这些语言的库(如libstdc++,libgcj等。)gcc编译器的工作流程预处理器,cpp:预处理:头文件展开、宏的替换、注释去掉。编译器,gcc:编译:C文件编程汇编文件。(此步最费时间)汇编器:as:汇编:汇编文件编程二进制文件。链接器

2020-07-22 20:51:31 236

原创 C库函数_linux中的系统io函数_学习笔记

linux中的系统io函数_学习笔记C语言中的C库函数FILE *fp文件指针文件描述符文件读写位置指针io缓冲区*****不需要用户去关心缓存区的数据存入硬盘的情况C语言中的C库函数linux中的系统io函数和C语言中的C库函数都是相对应的。除了fopen和fclose之外,其余的C库函数都需要用到文件指针。FILE *fp文件指针FILE文件指针是一个结构体,文件描述符、文件读写位置指针、io缓冲区文件描述符文件描述符:用来索引对应的磁盘文件。文件读写位置指针文件在打开之后,会有一

2020-07-22 20:33:29 145

原创 线程池思路分析_学习笔记

线程池思路分析线程池线程处理流程共享空间——任务队列线程池-满最大线程和进程数量的查看线程池线程池:线程池工作阶段,客户端连接到服务器上,当客户端有一个数据发送过来的话,服务器就应该把客户端发送过来的数据处理掉。要想保证Select监听的时效性,服务器应该起一个线程对每一个客户端发送过来的数据进行处理,此处要解决的问题就是怎么高效的进行数据的处理–线程池。线程池的原因,一、线程的创建和销毁需要消耗资源,二、当接收到客户端的数据之后再创建线程,处理完再销毁,就会导致处理时间比较长。会延误处理的时间。**

2020-07-22 20:01:55 131

原创 02、冒泡排序-最简单的交换排序 学习笔记

冒泡排序是一种最简单的交换排序算法。 堆排序也是一种交换排序(通过交换元素进行排序)。定义四个变量标识i一趟,j比较的元素,temp临时交换值,flag是否交换标志位。void pop_sort(vector<int>&num) { int i, j, temp; bool flag;//有没有交换元素 flag = true;//一开始flag=ture,为了进入循环 i = num.size()-1;//需要比较n-1次,i的范围是[1,n-

2020-07-21 11:28:42 246

原创 算法 时间复杂度 空间复杂度 大O 学习笔记

数据结构+算法 = 程序数据结构是程序的骨架,算法是程序的灵魂。算法是对特定问题求解步骤的一种描述。算法的特性:有穷性,确定性,可行性,输入输出。好的算法标准:正确性、易读性、健壮性、*高效性、*低存储性。时间复杂度:算法的执行次数(o(循环次数))。空间复杂度:额外需要的空间。...

2020-07-20 19:33:00 125

原创 C++ STL vector 学习笔记

C++ STL vector 学习笔记一、vector的介绍二、vector的定义三、vector的一些操作(具体调用方式自行查找)三、使用sort对于vector分类一、vector的介绍vector是C++里面的一个容器,也是我们数学上面理解的向量,有一些比较常见的操作。二、vector的定义#include<vector>using namespace std;//int 说明的是vector存储的数据类型vector<int> odd_vector;三、v

2020-07-20 18:24:17 95

原创 21. 合并两个有序链表 简单 学习笔记

将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。思路:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : val(x), next(nullptr) {} *

2020-07-20 15:51:39 79

原创 面试题 02.05. 链表求和_学习笔记

给定两个用链表表示的整数,每个节点包含一个数位。这些数位是反向存放的,也就是个位排在链表首部。编写函数对这两个整数求和,并用链表形式返回结果。思路:创建一个新的链表用于存储结果,并加一个cur指针创建两个指针cur1 和 cur2,然后再创建一个int jinwei依次遍历整个链表...

2020-07-20 15:37:43 343

原创 138. 复制带随机指针的链表 链表的深度拷贝 中等

复制带随机指针的链表 链表的深度拷贝 中等题目介绍方法一:使用hashmap2、复制节点并插入当前节点后面题目介绍给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。要求返回这个链表的 深拷贝。我们用一个由 n 个节点组成的链表来表示输入/输出中的链表。每个节点用一个 [val, random_index] 表示:val:一个表示 Node.val 的整数。random_index:随机指针指向的节点索引(范围从 0 到 n-1);如果不指向任何节点,则为

2020-07-20 13:36:29 149

原创 86. 分隔链表 中等

分隔链表 中等一级目录一级目录给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前。你应当保留两个分区中每个节点的初始相对位置。方法:1、建立四个指针small_head,small,big_head,big然后遍历一遍。2、行程两个链表small_head和big_head,然后连接两个链表。3、返回small_head。...

2020-07-20 10:56:57 74

原创 1、插入排序_基础知识_学习笔记

插入排序排序插入排序排序排序分为稳定排序和不稳定排序。稳定排序:key1 = key2;输入时key1在key2的前面,拍完序之后,key1仍然在key2的前面,那么就是稳定排序。两个相等的元素,排序前后位序没有变。不稳定排序:输入时key1在key2的前面,拍完序之后,key1仍然在key2的后面,位序发生变化,那么就是不稳定排序。[key1,key2];key1 == key2;拍完序之后[key1,key2];//稳定排序[key2,key1];//不稳定排序非递减排序(a1&

2020-07-20 00:44:48 201

原创 链表中快慢指针的妙用

这里写目录标题快慢指针的妙用1、找中间值2、判断链表中的环3、删除倒数第n个节点快慢指针的妙用我们先来简单介绍一下何为快慢指针。快慢指针就是定义两根指针,移动的速度一快一慢,以此来制造出自己想要的差值。这个差值可以让我们找到链表上相应的节点。如果现在对这里的简介不是很理解,没有关系,我们一起来看看如下的几个例子。相信看完后,就会明白了。1、找中间值一般的思路是:先遍历一次链表,记录住一共有多少个节点,然后,再次遍历找寻中点。利用快慢指针,我们来看看这个问题会变成什么样。思路如下:我们把一个链表看

2020-07-19 22:14:52 167

原创 141. 环形链表 简单 学习笔记

141. 环形链表 简单方法一:哈希表方法三:快慢指针(双指针)给定一个链表,判断链表中是否有环。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。方法一:哈希表思路我们可以通过检查一个结点此前是否被访问过来判断链表是否为环形链表。常用的方法是使用哈希表。算法我们遍历所有结点并在哈希表中存储每个结点的引用(或内存地址)。如果当前结点为空结点 null(即已检测到链表尾部的下一个结点),那么我们已经

2020-07-19 21:55:31 80

空空如也

空空如也

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

TA关注的人

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