自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 资源 (10)
  • 问答 (2)
  • 收藏
  • 关注

原创 QT5.15.2下android的配置

qt5.15.2下安卓的设置截图

2023-03-09 10:31:42 322

原创 机器人地面站-[QGroundControl源码解析]-[10]-[Comm]

本文简单介绍comm目录下的代码。

2022-10-12 17:24:33 643 1

原创 机器人地面站-[QGroundControl源码解析]-[9]-[Camera]

本篇介绍Camera文件夹下的内容,该文件夹下又三个类文件,分别是QGCCameraManager,QGCCameraIO,QGCCameraControl

2022-09-27 17:11:47 661

原创 机器人地面站-[QGroundControl源码解析]-[8]-[Audio]

本篇主要讲解了Audio目录下的两个类。第一个类是功能类,主要用于将语音文本转为语音,进行应用数据的实时播报。第二个类是测试类

2022-09-27 10:35:28 299

原创 机器人地面站-[QGroundControl源码解析]-[7]-[api]

api文件夹下的代码分析

2022-09-23 17:00:18 940

原创 机器人地面站-[QGroundControl源码解析]-[6]-[AnalysizeView2]

本篇讲解了AnalyzeView页面下mavlink相关操作的两个类,分别处理了mavlink消息的管理,和mavlink控制台的逻辑处理

2022-09-23 11:52:43 420

原创 机器人地面站-[QGroundControl源码解析]-[5]-[AnalyzeView1]

本篇主要介绍QGC项目AnalysizeView文件夹下的内容。

2022-09-22 17:30:37 481

原创 机器人地面站-[QGroundControl源码解析]-[4]-[Airmap]

本篇文章讲解AirMap。

2022-09-22 09:42:44 387

原创 机器人地面站-[QGroundControl源码解析]-[3]-[ADSB]

项目中要使用QGC,还要做一些更改,感觉Qgc源码很多,又是一个开源项目,对于qt开发项目经验不足的我们来说实在是一个不可多得学习资料,所以决定花一些时间对源码进行注释和解读,这样也能更好的利用到项目中去。

2022-09-20 19:17:12 946

原创 机器人地面站-[QGroundControl源码解析]-[2]

项目中要使用QGC,还要做一些更改,感觉Qgc源码很多,又是一个开源项目,对于qt开发项目经验不足的我们来说实在是一个不可多得学习资料,所以决定花一些时间对源码进行注释和解读

2022-09-20 11:53:19 1010

原创 机器人地面站-[QGroundControl源码解析]-[1]

项目中要使用QGC,还要做一些更改,感觉Qgc源码很多,又是一个开源项目,对于qt开发项目经验不足的我们来说实在是一个不可多得学习资料,所以决定花一些时间对源码进行注释和解读,这样也能更好的利用到项目中去。

2022-09-16 19:50:18 1897

原创 项目偶遇-[算法]-[向上或向下求一个数最近的2的整数次幂]

此算法在项目中需要,所以在网上找了一下,发现向上求解的很多,自己修改了一下徐诶了一个向下求解的,但是没有经过很多数的测试,有问题可以提出来。

2022-07-06 11:10:29 354

原创 我与计算机视觉-[CUDA]-[CPU多线程下CUDA的多流]

首先问题出在cpu下的多线程,当你想要在多个线程下调用同一个cuda核函数的时候,你会发现效率很低,那么经过验证,的确,不管你有多少个线程,cuda总是将线程中的核函数放入默认流中进行队列方式的处理,相当于单线程,但是这个问题在cuda7后已经得到了解决,下面对这个问题进行一些测试。这里使用了以下链接中的内容:https://www.cnblogs.com/wujianming-110117/p/14091897.htmlhttps://developer.nvidia.com/blog/gpu

2021-07-29 17:46:47 1955 5

原创 我与计算机视觉-[CUDA]-[Opencv.Resize的CPU实现和GPU实现]

首先原理和cpu的实现我这里就不赘述了,大家可以移步此篇文章,讲的很详细,并且gpu的代码也是按照这篇的思路去做的,链接:图像处理之双线性插值法。下面直接贴代码:CPU端实现:void Resize(cv::Mat matDst1, cv::Mat matSrc) { uchar* dataDst = matDst1.data; int stepDst = matDst1.step; uchar* dataSrc = matSrc.data; int stepSrc = matSrc.

2021-06-22 18:58:55 1036 3

原创 我与边缘计算 - [Jetson Xavier] - [浪潮边缘主机环境拓荒]

目的目的是使用边缘主机运行yolov4.过程我使用的这款机器说明书名称为NE1008N1边缘智算小站,我就叫他边缘主机了,因为搭载的是英伟达的JetsonNano后边简称jn,所以去网上查资料准备安装环境,网上说jn拿到的时候一般已经安装好cuda,opencv等深度学习环境,但是我找了一圈没找到,可能是浪潮那边弄掉了吧。所以这种情况下只能自己搭建环境,这里记录一下过程,以便自己后边迁移。1.opencv这里使用的是opencv3.3.1版本,github下载后使用mv命令移动到 /u.

2021-02-20 14:33:09 1167

原创 我与计算机视觉 - [Today is yolo] - [记一次使用c++训练yolo模型的经历]

1.准备darknet源码目录结构如下:在darknet-master\build\darknet\x64新建cfg文件,可以直接复制yolov3.cfg,然后重命名为你的名字.cfg,然后修改这个文件中的一些内容:将batch 改成64 :batch=64将subdivisions 改成8 :subdivisions=8将每个yolo下(共有3处)的classes改成你自己的类的数量 :classes = 1(我的是1类)将每个yolo上面第一个convolutiona..

2020-11-30 18:02:08 499 3

原创 我与C++ - [ThreadSafeHashPacket] - [线程安全的哈希桶]

转载自:https://blog.csdn.net/clh01s/article/details/80350845直接上代码:/* * threadsafe_map.cpp * * Created on: May 11, 2018 * Author: clh01s * 线程安全的查找表 * 通过boost的shared_mutex实现读写锁 * 假设有一定数量的桶,每一个键都有一个桶 * 这就意味着可以安全地为每一个桶分配一个独立

2020-07-18 13:52:25 151 1

原创 我与深度学习 - [Back Propagatio] - [反向传播]

对于BP3,证明:对于BP4,证明:以上就是书中对反向传播算法的介绍。下面看一个比较有启发的博客,https://blog.csdn.net/lien0906/article/details/79193103反向传播的引入,先要看下梯度下降...

2019-10-31 14:54:43 118

原创 我与深度学习 - [Gradient Descent] - [梯度下降]

首先我们看一个代价函数:这⾥ w 表⽰所有的⽹络中权重的集合,b 是所有的偏置,n 是训练输⼊数据的个数,a 是表⽰当输⼊为 x 时输出的向量,求和则是在总的训练输⼊ x 上进⾏的。我们把 C 称为⼆次代价函数;有时也被称为均⽅误差或者 MSE。可以看到 C(w, b) 是⾮负的,因为求和公式中的每⼀项都是⾮负的。此外,代价函数 C(w, b) 的值相当⼩,即 C(w, b) ≈ 0,...

2019-10-30 19:09:51 189

原创 我与深度学习 - [Tensorflow] - [最简单的神经网络]

一个入门的简单的训练x_data = np.random.rand(100)y_data = x_data * 0.1 + 0.2b = tf.Variable(0.)k = tf.Variable(0.)y = x_data * k + bloss = tf.reduce_mean(tf.square(y - y_data))optimizer = tf.train.Gradi...

2019-10-24 15:06:12 107

原创 我与计算机视觉 - [Today is Live555] - [流媒体服务器-工具篇]

以下内容为我学习live555源码的一个记录,学习时间会相对漫长,统计了一下源码大约一万三千行,并且第一行我就没看懂。代码没有固定顺序,会一边学习一遍画组织结构图,下面开始啦。目录UsageEnvironmentBoolean.hhstrDup.hhstrDup.cpp哈希桶HashTable.hhHashTable.cppBasicUsageEnviro...

2019-09-20 17:44:23 799

原创 我与计算机编程 - [Today is Java] - [Netty与Protobuf]

最近公司在做一个远程控制的机器人,我这边主要负责了控制端的编写,在开发过程中因为要实现控制端的登陆验证问题,以及从服务器获取可操控设备列表,选择设备这一系列的操作,本来准备通信直接用原生的tcp还有json来实现,但是因为考虑到字段其实不少,并且后期可能扩展,为了更方便维护,决定使用protobuf,java服务器端使用netty来代替原生tcp。以下是java使用netty编写的一个小demo给...

2019-09-20 15:44:54 162 1

原创 我与机器人 - [Today is Robot] - [16进制存储]

今天接入一个机器人设备的udp通讯,协议中都是使用的16进制的表示方式,之前接触的比较少,尤其是低八位,高八位又是代表的什么意思,所以先去了解了一下。 计算机内部是以二进制形式进行存储数据的,而我们代码中得到的地址却是用16进制的方式表示的。 一个16进制数比如0xff,其实转化为2进制就是 1111 1111,在十进制中就是表示255。一个计算机的一...

2019-07-24 11:16:03 433

原创 我与计算机视觉 - [Today is OpenCV] - [OpenCV与多线程]

在使用opencv处理视频的过程中,通常我们会读取视频帧,读取出来的视频帧就相当于一幅图像,我们只要读取到了图像就可以对图像进行各种各样的操作。例如,行人检测,汽车检测这些算法,目前非常火的目标识别算法就是yolo3,无论是在速度上还是精度上,yolo3都要比他的前辈,RCNN,FASTRCNN,YOLOv1要好很多。但是就算是这样的背景下,我们在实际运用yolo的过程中,也是会遇到这样那...

2019-04-22 16:55:18 3315 11

原创 我与计算机视觉 - [Today is OpenCV] - 形态学处理

目录概述 基础理论腐蚀和膨胀 腐蚀的原理 膨胀的原理 源码 测试代码开运算和闭运算 开运算(Opening Operation) = 先腐蚀,后膨胀 闭运算(Closing Operation) = 先膨胀,后腐蚀 测试代码形态学梯度 原理 测试代码顶帽和黑帽 ...

2019-04-20 18:46:45 216

原创 我与计算机视觉 - [Today is OpenCV] - [HSV色彩空间]

HSV(Hue,Saturation,Value)是根据颜色的直观特性由A.R.Smith在1978年创建的一种颜色空间,也称六角锥体模型(Hexcone Model)。HSV色系对用户来说是一种直观的颜色模型,对于颜色,人们直观的会问”什么颜色?深浅如何?明暗如何?“,而HSV色系则直观的表示了这些信息。在许多图像编辑工具中HSV色系应用也比较广泛,如photoshop等工具。这个模型中颜色...

2019-04-20 14:58:56 154

原创 我与计算机视觉 - [Today is yolo] - [you only look once]

目录背景YOLOv1 YOLOv1简介 YOLOv1训练 YOLOv1测试YOLOv2 关于YOLOv2 边框预测计算: YOLOv2所带来的改变YOLOv3 结构代码 utils.py convert.py voc_annotation.py kmeans.py...

2019-04-19 17:46:57 1195 1

原创 我与机器学习 - [Today is AdaBoost] - [自适应分类器]

当作重要决定时,大家可能会考虑吸取多个专家的意见而不是只有一个人的意见。机器学习处理问题时何尝不是如此,这就是元算法背后的思路,元算法是对其他算法进行组合的一种方式。接下来我们将集中关注一个 AdaBoost的最流行的元算法。由于某些人认为这是最好的监督学习的方式,所以该方法是机器学习工具箱中最强有力的工具之一。优点:泛化错误率低,易编码,可以应用在大部分的分类器上,无参数调整。缺点:对离...

2019-01-18 17:15:32 749

原创 我与机器学习 - [Today is HMM] - [隐马尔可夫模型]

隐马尔可夫模型,在语音识别,NLP,生物信息,模式识别等领域被实践证明是有效的算法。HMM是关于时序的概率模型,描述由一个隐藏的马尔科夫链生成不可观测的状态随机序列,再由各个状态生成观测随机序列的过程。HMM随机生成的状态随机序列,称为状态序列,每个状态序列生成一个观测,由此产生的观测随机序列,称为观测序列。HMM由初始概率分布pai,状态转移概率分布A以及观测概率分布B确定。lamd...

2019-01-17 20:37:08 299

原创 我与机器学习 - [Today is EM] - [EM算法]

EM算法,主要是为了解决GMM高斯混合模型所提出来的一种解决方案,但是也会使用于HMM中。先看一下高斯混合模型。这种双峰的数据,或者单个高斯模型无法拟合的情况可以考虑使用高斯混合模型,例如图像的前景背景分割。就是用高斯混合模型来处理。 先来看一下对于一组高斯分布来说,我们使用最大似然估计来对参数进行计算:这时倘若数据来自不同的分布,例如数据来自两个或者多个高斯分布,那参...

2019-01-14 22:29:36 124

原创 我与机器学习 - [Today is Knn] - [K-近邻算法]

优点:精度高,对异常值不敏感,无数据输入假定缺点:计算复杂度高,空间复杂度高适用数据范围:数值型和标称型k近邻,也就是KNN算法,他的工作原理是:一个有监督的学习,有一个带有标签的训练集,训练,当我们输入没有标签的的新数据后,将新数据的每个特征与训练集中的每个特征比较,然后算法提取样本集中特征最相似数据(最近邻)的分类标签,一般来说只选择样本数据集中,最相似的前K个数据,这就是K的由来...

2018-12-20 11:30:46 78

原创 我与机器学习 - [Today is DT] - [决策树]

优点:计算复杂度不高,输出结果易于理解,对中间值的缺失不敏感,可以处理不相关特征数据缺点:可能会产生过度匹配的问题适用数据类型:数值型和标称型在构造决策树时,我们需要解决的第一个问题就是当前是那个特征在决定决策树的划分。为了找到起决定性的特征,划分出最好的结果,我们必须评估每个特征。所以构建决策树的流程就是,首先判断数据是否是同一个类型的,如果不是,找到划分这些数据起决定性因素的特...

2018-12-20 11:30:34 142

原创 我与大数据 - [Today is Linux] - [命令学习]

uname 显示系统信息ifconfig 查看网络配置信息date 查看时间信息ps -ef 查看系统进程信息ps -ef | grep java 查看系统进程信息并进行过滤  grep过滤 |管道线 由上一个命令产生的结果传递到后面的命令中去top 查看系统cpu 内存使用情况 swab 缓存  mem内存grep 过滤以及查找操作   grep sshd 【路径】 查找...

2018-12-19 13:25:09 85

原创 我与数据科学 - [Today is Matplotlib] - [plt随用笔记]

在matplotlib上如何输出中文的一般步骤: mpl.rcParams['font.sans-serif'] = [u'SimHei'] mpl.rcParams['axes.unicode_minus'] = False  设置colormap的一般写法:cm_light = mpl.colors.ListedColormap(['#A0FFA0', '...

2018-12-19 13:24:45 127

原创 我与GitHub - [Today is github] - [基本操作]

将本地目录上传到github首先在github上新建一个repository,复制链接,在要上传的目录内右键点击,选择 git bash here,出现命令行窗口1.在命令行中,输入“git init”,使Test文件夹加入git管理;2.输入“git add .”(不要漏了“.”),将Test文件夹全部内容添加到git。3.输入“git commit -m "first comm...

2018-12-19 13:24:35 132

原创 我与机器学习 - [Today is RF] - [随机森林]

条件熵:H(X,Y) - H(X) : (X,Y)发生所包含的熵,减去X单独发生包含的熵,即在X发生的前提下,Y发生新带来的熵。该式子定义为X发生前提下,Y的熵  H(Y|X)推导: 即:即:1 * H(Y|X) 所以 H(X,Y) - H(X) = H(Y|X)信息增益:当熵和条件熵中的概率是由数据估计(极大似然估计)得到的,则称对应的熵和条件熵为经验熵和经验...

2018-12-19 13:24:19 138

原创 我与数据科学 - [Today is Numpy] - [np随用随记]

numpy.loadtxt(fname, dtype=, comments='#', delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0)data = np.loadtxt(path, dtype=float, delimiter=',', converters={4: iris_t...

2018-12-19 13:24:08 140

原创 我与语言处理 - [Today is TF-IDF] - [词频-逆文件频率]

下看一个简单的解释。最通俗易懂:TF-IDF  要解决的问题,如何衡量一个关键字在文章中的重要性总起  TF-IDF,理解起来相当简单,他实际上就是TF*IDF,两个计算值的乘积,用来衡量一个词库中的词对每一篇文档的重要程度。下面我们分开来讲这两个值,TF和IDF。TF  TF,是Term Frequency的缩写,就是某个关键字出现的频率,具体来讲,就是词库中的某个词在当前文...

2018-12-19 13:23:53 258

原创 我与数据科学 - [Today is sklearn] - [sklearn api]

分割数据将数据分为训练集和测试集,使用sklearn的model_selection库里面的 train_test_splitfrom sklearn.model_selection import train_test_splitx_train, x_test, y_train, y_test = train_test_split(x, y, train_size=0.7, random_...

2018-12-19 13:23:35 136

原创 我与机器学习 - [Today is Bayes] - [贝叶斯]

基于贝叶斯决策理论的分类方法优点:在数据较少的情况下仍然有效,可以处理多类别问题缺点:对于输入数据的准备准备方式较为敏感朴素贝叶斯是贝叶斯决策理论的一部分,我们用p1(x, y)表示数据点(x,y)属于第一类别,用p2(x,y)表示数据点属于第二类别,现在有一个新的数据点(x,y),可以用下面的规则来判断他的类别。如果p1(x,y) > p2(x,y) 那么属于类别1如果...

2018-12-19 13:23:14 96

yolotrain.zip

使用darknet训练yolov3模型,用python封装好的可以直接使用的工程,本人darknet为gpu版本,使用的是cuda9.0,附带博客内容讲解。https://blog.csdn.net/weixin_43409627/article/details/109849035

2020-11-30

ffmpeg编写的拉流转推工具.txt

1.使用ffmpeg编写。 2.输入支持本地视频和网络rtsp/rtmp视频。 3.输出支持rtsp/rtmp视频,在配置里配置。 4.支持解码后输出opencv可以处理的mat数据,在配置里配置是否解码。 5.64位debug和release应该都可以跑。 6.下载即用,所有的dll和lib头文件均已收入和相对路径配置好。 7.运行时如报错缺少必要的dll,可联系我。一般做c++,opencv和音视频的都有这些系统dll。 8.源码为c++,流媒体服务器使用达尔文流媒体。 9.资源如有问题或有疑惑请联系我。

2020-10-27

C++实现opencv+yolo+tensorflow+deepsort.txt

C++实现opencv+yolo+tensorflow+deepsort检测,网上都是python的,用c++重写的,库全部配置好,需要cuda9.0,cudnn7,tensorflow使用的1.12.0gpu,已在工程中配置好。下载即用。文件太大,已记录百度云链接,资源有问题请加文本中的qq

2020-07-30

OpenCV3.4.0+Contrib-不含Gpu-编译好的64位debug-Release版本.txt

OpenCV3.4.0+Contrib-不含Gpu-编译好的64位debug-Release版本,由于文件过大所以保存在百度云。连接失效请联系文件中的qq。

2020-07-24

protobuf-2.6.1_x64.zip

protobuf2.6.1源码编译的64位的debug版本和release版本。包含次版本所需要的头文件。

2020-07-24

live555.zip

live555整理好的vs2017的工程,打开sln可以直接运行。记得添加库的依赖。

2019-09-20

protobuf.zip

使用protobuf进行开发的开发者,一个包就够用了,里面还有c#的编译器还有java的编译器,还有写好的批处理文件。一键生成java,c#代码。

2019-09-20

protodemo.zip

一个基于netty+protobuf的tcp服务器。封装好的框架。并且含有protobuf生成c#和java文件的批处理文件。一键生成脚本。

2019-09-20

python-opencv多线程

在使用opencv处理视频的过程中,通常我们会读取视频帧,读取出来的视频帧就相当于一幅图像,我们只要读取到了图像就可以对图像进行各种各样的操作。我们期望cap能够跳过算法的处理时间,直接读取当前帧而抛掉算法运行过程中的帧。创建一个自定义的帧缓冲区,开启一个线程使用cap函数读取视频帧,将读取到的视频帧存入我们自定义的缓冲区,这个缓冲区可以设计成固定大小,每次新增新的帧进入缓冲区,将挤掉旧的帧

2019-07-05

opencv+contrib+32+64位都编译好的

这个是opencv版本3.4.1,32位和64位下VS2017,c++15,全部编译好的代码,亲自测试可用,文件过大放入云盘。

2019-02-27

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

TA关注的人

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