自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 资源 (9)
  • 收藏
  • 关注

原创 经典QoS调度算法——mClock算法的正确打开方式

最近有人找我请教mClock算法,我给他解释完之后,他觉得我讲的不对并搬出某技术网站的博客,如下图:我暗自一笑,说道“这篇文章完全理解错了,下面请听正解!“。mClock的调度目标为什么我一看看那篇博客就立刻说他理解错了呢?其实不看mClock的算法原理,光看mClock的调度目标我就能断定那篇博客理解错了。下面我们一起来看看mClock的调度目标,这里用一个简单的例子来解释。假设有三个...

2019-12-06 23:56:09 946

原创 推荐一个提高卡通照片分辨率的在线工具

最近写博客总要上传图片,但是有些喜欢的图片分辨率太低,最后终于找到了一个可以提高卡通照片分辨率的在线工具:waifu2x。这个工具不仅可以提高分辨率,而且可以对图片进行放大。具体的技术细节,咱也不懂,咱也不敢问,就当黑盒使用吧!...

2019-10-28 11:10:21 10542

原创 CMake构建问题:Could NOT find Threads (missing: Threads_FOUND)

今天使用CMake编译dmclock源码,结果出现了下面这个令人头疼的问题:cmake ..在网上查到的唯一的解决方法是修改CMakeLists文件:project(dmclock CXX) --> project(dmclock C CXX)但是,cmake阶段没出问题,结果在make阶段出了问题:所以,这种方法也不能解决问题。多次查资料,未果,我觉得是cmake的版本出...

2019-10-28 11:08:40 6379

原创 1KB快捷方式病毒的解决方法

以前在学校打印店不小心把U盘感染了1KB快捷方式病毒,结果发现U盘里的文件和文件夹全部变成了快捷方式。通过查找相关资料,终于找到了病毒的运行原理和处理方法,不过当时没有总结。现在我以为这个病毒已经销声匿迹了,结果今天又有个同学又遇到了它,于是想起来总结一下。它干了什么其实这个病毒只是想搞一个恶作剧,并没有做什么出格的事(比如,删你的文件),它只是把你的所有文件和文件夹的属性设置成了系统...

2018-04-15 22:01:05 46481 7

原创 OpenCV:Depth和Type傻傻分不清楚

刚开始使用OpenCV时,经常会胡乱使用CV_8U和CV_8UC1,这两种宏经常傻傻分不清楚。下面我们就来理一理它们之间的关系和区别。Depth官方文档对Depth的解释是单独一个通道的类型,通俗的说就是图像中单独一个元素的类型,它可以有以下的类型:#define CV_8U 0#define CV_8S 1#define CV_16U 2#define CV_16S 3...

2018-04-09 20:58:06 3036 1

原创 使用CMake构建OpenCV项目

上一篇文章中,我们介绍了如何在ubuntu上安装配置OpenCV,这篇文章我们来对我们的安装进行测试,并介绍如何用CMake工具快捷地构建OpenCV项目。项目结构为了使整个项目更加条理,我们的文件夹采用如下组织方式:binbuildCMakeLists.txtsrc其中bin目录用于放编译生成的可执行文件,build目录用于cmake构建项目,src用于放源代码。O...

2018-04-07 10:05:53 43777 3

原创 OpenCV的安装与配置(ubuntu)

本安装方法目前已在ubuntu 16.04进行测试,其他ubuntu版本应该也适用。安装所需依赖项在Linux下我们需要编译安装,而编译OpenCV需要必要的软件包。下面是必要的软件包:GCC 4.4.x或者更高GTK+2.x或者更高,包括它的头文件(libgtk2.0-dev)pkg-config带有开发包的Python 2.6或者更高和Numpy 1.5或者更高(pyt...

2018-04-06 22:08:12 4783 2

原创 OpenCV中的基础操作(一)

最近天气越来越热,春天的气息也越来越浓了。这篇文章算是我专栏里的第一篇文章了(前面那个算是引言吧),这篇文章中主要介绍OpenCV中的基础操作,包括加载图片、显示图片、保存图片等操作。这篇文章里的大部分内容都来自OpenCV的官方教程,其中也有我自己的理解和一部分数字图像处理中的知识。函数库要完成这些操作,我们需要两个函数库:core module和highgui module。前者包括了...

2018-03-28 21:38:38 1572 2

原创 从OpenCV学习数字图像处理

OpenCV是学习数字图像处理的好工具,本专栏拟打算从对OpenCV源码的学习来研究数字图像处理中的基本操作。我开设本专栏不为别的,只希望能系统地学习OpenCV,并把我支离破碎的数字图像处理知识好好理一理。当然,最终还是为了我的毕设啦!这是我大学的最后一个作品了,我希望能有一个好的结果。因此,本专栏的所有文章相当于我的学习笔记,内容仅供参考,也欢迎各位批评指正。OpenCVOpe

2018-02-01 21:23:36 4378 1

原创 Windows下Qt creator调试器的安装与配置

最近正在学习Qt,不过在使用Qt时发现没法进行调试。当我点击调试按钮,就会出现一个错误对话框: Unknown debugger type “No engine” Unable to create a debugger engine of the type “No engine”很明显这是因为Qt找不到合适的调试器。我使用的编译环境时MSVC2015 64bit,因此需要配置相应的调试器

2017-12-03 17:17:13 13206

原创 虚拟机安装ubuntu花屏问题

问题昨天在虚拟机virtualbox上安装ubuntu时,发现在加载镜像文件之后,虚拟机一直显示花屏:解决方案方案一在网上搜索之后,很多都说先按Ctrl+F1,然后再按Ctrl+F7,但是根本没有效果。实际上,在virtualbox(windows环境)中home键是右Ctrl键,或者Ctrl+Alt,因此真正的方法是先按右Ctrl+F1,然后再按右Ctrl+F7或者Ctrl+Alt+F1,然后再按

2017-10-17 11:20:25 5093

原创 使用tf库:编写tf监听器

上一个教程中,我们创建了一个tf广播器来发布乌龟的位姿信息,这篇文章我们来学习下如何创建tf监听器。该节点的主要任务是监听tf中turtle2到turtle1转换,然后将转换信息转化为速度信息发送给turtle2。

2017-06-24 11:01:11 1751

原创 关于TF转换信息(Transforms)的理解

在tf中,我们使用tf工具tf_echo获取到的转换信息十分令人费解。前面的文章中我们已经对其做了简单的解释,这里我们将对其进行详细的解释。

2017-05-14 21:29:02 11543 3

原创 使用tf库:编写tf广播器(C++)

上一篇文章我们演示了一个有趣的例子,而且对tf中的转换信息做了简要的说明。之后的两篇文章中,我们将使用tf库一步一步地实现这个小例子。首先,我们需要先大概了解一些这个小例子的基本原理。其实原理很简单,首先我们需要运行turtlesim功能包中的乌龟节点(turtlesim_node),具体可以参考ROS初级教程:Understanding ROS Nodes,然后,启动乌龟的键盘控制节点(turtl

2017-05-14 21:20:50 2006 1

原创 tf初步

上一篇文章中,我们对tf已经有了一个大致的了解。在这篇文章中,大家将会看到一个使用tf库编写的有趣的小栗子,另外,我们也会介绍如何在tf中查看坐标转换树。

2017-05-09 21:33:07 1949

原创 了解tf

tf是一个可以让用户实时追踪多个坐标系的功能包。tf通过一个实时缓存的树结构来维护坐标系之间的关系,可以让用户任何时间点完成两个坐标系之间点、向量之间的转换。

2017-05-06 11:39:17 857

原创 GY85使用

这是一个针对惯性测量模组(IMU)的Arduino驱动代码,目前只支持GY85。惯性测量模组是一种用于测量和报告设备速度、方向和重力的电子设备,它能将加速度计和陀螺仪,甚至是磁场强度计等传感器的数据进行综合。GY85在国内是一个很常用的惯性测量模组,用途很广范,主要用于无人机、机器人等。

2017-03-22 22:31:52 14440 1

原创 C指针基础(五)

字符串与指针也有一定的关系,所以这篇文章我们将会介绍指针在字符串中的一些用法。

2017-03-15 20:06:56 398

原创 C指针基础(四)

这篇文章我们来一起讨论一下指针与数组。指针与数组密不可分,但是绝不能将二者混为一谈。

2017-03-14 22:02:18 438

原创 C指针基础(三)

这篇文章中,我们来讨论一下指针的算术运算。在C语言中支持3种格式的指针算术运算,而且只有三种:指针加上整数、指针减去整数、两个指针相减。

2017-03-13 21:46:58 421

原创 C指针基础(二)

这篇文章我们来谈谈指针在函数中的用法,即作为参数和作为返回值的用法。

2017-03-13 20:18:30 377

原创 C语言空白字符读取问题

当我们读取字符或者字符串时,有时会遇到烦人的空白字符问题。因为结果很奇怪,为什么明明程序看起来没有错,但是结果读取到的值却是空的呢?下面我们来仔细分析一下。

2017-03-13 15:52:18 7492

原创 JDK、JRE、JVM三者的区别

在Java中,理解JDK、JRE、JVM三者的区别是十分重要的,但是很多人并未注意到这一点。

2017-03-12 20:34:19 8303

原创 C指针基础(一)

理解指针首先要记住一点,那就是指针是地址,永远不要忘记这一点。

2017-03-12 20:31:32 384

原创 如何安全地使用锂电池

在机器人的开发过程中,难免会涉及到使用锂电池,而锂电池如果使用不当就会造成很大的隐患甚至酿成灾祸,因此我这里将如何安全使用锂电池总结出来与大家分享。

2017-03-06 16:43:28 1863

原创 Linux下安装ActiveMQ CPP Library 3.9.4

ActiveMQ CPP是一个提供消息库,即API。通过使用其提供的接口,我们可以使用多种协议来与消息中间件进行通信。下面我将我在Linux下的安装经验分享给大家。

2017-03-05 16:49:24 2710

转载 使用 GDB 调试 Linux 软件

Linux 的大部分特色源自于 shell 的 GNU 调试器,也称作 gdb。gdb 可以让您查看程序的内部结构、打印变量值、设置断点,以及单步调试源代码。它是功能极其强大的工具,适用于修复程序代码中的问题。在本文中,David Seager 将尝试说明 gdb 有多棒,多实用。

2017-02-26 11:54:40 429

原创 C++中数组的最大长度

最近写程序的时候,突然想到了这个问题:在C++中数组的长度有限制吗?我觉得肯定是有的,但限制是多少呢?经过了好长时间,我才勉强总结了一个答案。

2017-02-25 16:46:18 41839 2

原创 Git处理换行符问题

在你通过github或者其他远程托管服务器来和其他人进行协同开发代码的时候,确保换行符被正确处理是一项很重要的事。

2017-02-23 21:15:01 21025 7

原创 并发计算 VS 并行计算

上一篇文章中,我们学习了如何在CUDA中隐藏数据传输,而其中用到的主要技术就是并发计算。这时你可能会问,这个专栏不是CUDA并行计算吗?怎么又说什么并发计算呢?其实,这里所说的“CUDA并行计算”并

2017-01-21 14:07:14 3920

翻译 在CUDA C/C++中如何隐藏数据传输

在上一篇博客中,我们讨论了如何在主机和设备之间高效地进行数据传输。在这篇文章中,我们将讨论如何使用主机端的计算、设备端的计算以及某些情况下的主机与设备端的数据传输来隐藏数据传输。要实现使用其他操作隐藏数据传输需要使用CUDA流,所以首先让我们来了解一下CUDA流。

2017-01-21 14:04:37 1193

原创 turtlebot3D传感器的配置

写在前面前面我们已经介绍过了如何在Jetson TK1(当然,对其他的上位机也类似)上安装turtlebot以及一些基本配置,下面我们介绍一下如何配置3D传感器。

2016-12-31 10:52:49 2754 1

原创 turtlebot学习——搭建Jetson TK1上位机

本文主要介绍了如何搭建turtlebot的Jetson TK1上位机,以及相关测试。

2016-12-21 20:59:29 2749

翻译 [译]CUDA C/C++如何优化数据传输

这篇文章主要介绍了如何高效地进行数据传输,其中涉及到了固定主机内存的使用以及NVIDIA性能分析工具的nvprof的使用。

2016-12-05 16:27:30 557

原创 便携版git(git-portable)的初始化配置

写在前面用过git的人都知道,在每个linux系统上都自带git软件。但对于windows系统就不是这样了。而在国内,使用git的人不算多数,所以并不是每台windows系统上都装有git。如果我们需要临时使用git,而那台电脑又刚好没有安装git的话,这就比较麻烦了。你可能会临时装一个git,但是又苦于无法避免繁琐的安装和配置步骤。还好,我们有更好的解决方法——使用便携版的git。

2016-11-26 08:39:25 16661 2

翻译 在CUDA C/C++中如何衡量代码性能

这篇文章主要介绍了如何用CUDA事件API获取核函数的执行时间。CUDA事件使用GPU计时器,因此避免了与主机设备同步相关的问题。

2016-11-21 23:32:27 600

翻译 通过提交信息来关闭issue

本文主要介绍如何通过提交信息来关闭issues.

2016-11-06 09:58:50 7333

原创 共享内存之bank冲突

前面我们说到了共享内存的使用方法以及一些高级特性,并简单说明了一下bank冲突,这里我们将会通过一些简单的例子来详细介绍一下bank冲突。

2016-11-01 07:11:55 1955 1

原创 自定义配置ros arduino bridge功能包集

写在前面首先我对未及时分享自己的配置及源码向各位网友道歉。本文是对博文ros_arduino_bridge功能包集的使用的拓展,主要是对如何修改ros arduino bridge功能包集,使其兼容其他硬件做一些简要的说明。在这里我以自己的配置为例为大家讲解,如有疑问可以通过csdn私信我或者通过邮箱联系我,我的email:[email protected],欢迎大家为我纠错。...

2016-10-25 23:29:30 5959 14

翻译 在CUDA C/C++中使用共享存储器

本文主要介绍了共享内存的基本组成、特性、基本用法以及高级用法。

2016-10-23 23:38:13 1394 2

基于SSM框架的OA人事管理系统(mysql数据库)下载即可使用

本系统开发采用B/S架构,主要包括后台数据库的建立与维护及前端应用程序的开放两个方面。本系统数据库使用的是mysql,系统基于Java平台, 应用当前主流框架spring、sprintMVC、mybaitis。采用 Eclipse集成开发环境进行开发及调试,应用服务器选择Tomcat服务器。以上开发工具均是开源软件,可免费下载使用。并且这些都是当前较为先进的开发技术。

2018-04-13

中小企业园区网建设项目

某企业计划建设自己的企业园区网络,希望通过这个新建的网络,提供一个安全、可靠、可扩展、高效的网络环境,将两个办公地点连接到一起,使企业内能够方便快捷的实现网络资源共享、全网接入Internet等目标,同时实现公司内部的信息保密隔离,以及对于公网的安全访问

2018-03-26

ROS turtlebot android app

turtlebot安卓软件。

2016-12-17

ROS android端遥控软件-teleop

可以通过手机端遥控你的ROS机器人。

2016-12-17

便携版notepad++

便携版notepad++,随时随地使用notepad++。

2016-12-17

便携版git——git-portable

git-portable是针对windows版git所设计的一款软件。顾名思义,它就是便携版或移动版的git。你可以选择将它安装在U盘等便携设备上。它不需要安装,也不会在注册表上留下记录,有关内容可以参考这篇博客:http://blog.csdn.net/github_30605157/article/details/53347865。

2016-12-17

Algorithms In C Parts 1-4

Algorithms In C.Parts1-4.Fundamentals Data Structures Sorting Searching 3rd Edition英文版。文件格式为DjVu,有目录但需要通过压缩包内的软件打开。

2016-10-23

操作系统精髓与设计原理配套ppt

该ppt是操作系统精髓与设计原理第5版的配套资源,适合有一定英文功底的人使用。

2016-08-16

机器人操作系统浅析

本书是ROS的经典入门书籍。

2016-08-16

空空如也

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

TA关注的人

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