自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Shirlim

笔记,争取让每一个看到的人有所收获!

  • 博客(27)
  • 资源 (3)
  • 收藏
  • 关注

原创 ROS节点,消息,话题,服务的介绍

整理结合机器人操作系统(ros)浅析和网址http://wiki.ros.org/cnNODEnode几乎是无处不在,这个东西相当于可执行文件,目前我更愿意把它当做cpp文件,通过catkin_make之后生成可执行文件。Message不用说了,没有message就是哑巴了。还是这是血液吧,不然传递机制是无法建立起来的TOPIC就像是QQ群一样,当有人发了一条消息后,QQ群告诉任何一个加群的人,有没

2017-06-07 16:57:08 13356 3

原创 亚像素级角点检测 Shi Tomasi & cornerSubPix

和调用Shi Tomasi检测相同,只不过在检测出角点以后对其进行cornerSubPix处理,cornerSubPix函数中有一个迭代类,TermCriteria还比较陌生。还有zeroZone参数,一般默认是Size(-1,-1)。运行截图: 官方给的例子如下:#include "opencv2/imgcodecs.hpp"#include "opencv2/highgui.hpp"#in

2017-07-22 21:28:18 993 1

原创 Shi-Tomasi 角点检测

比Harris角点检测更为精确的一种检测角点的方式 效果图: #include <opencv2/opencv.hpp>using namespace cv;using namespace std;//自定义角点最大值int maxcorner = 50;//滑动条最大值int maxTrackBar = 150;const char* src_window = "Image";//输

2017-07-22 15:53:59 654

原创 相机标定部分官方代码

两个地方注意。 1.点击:项目->xxx属性->调试->命令参数:加上xx.xml。这里的xx.xml具体名字看自己怎么起了。然后更改xml里面的三点:<BoardSize_Width> 8</BoardSize_Width><BoardSize_Height>7</BoardSize_Height><Input>"VID5.xml"</Input>2.编辑VID5.xml,添加自己的照片<?

2017-07-21 21:51:27 1149

原创 相机标定 calib3d 学习笔记

opencv给的官方代码利用xml读取文件,不如简单的读取txt文本的格式,便于编辑。这份代码有三个要注意的地方。1.txt文件要标好照片 2.Size board_size = Size(7, 8);我用的是7*8(内角点)的标定板 3.Size square_size = Size(10, 10);一般情况下应该是这个10*10。#include <opencv2/opencv.hpp>#

2017-07-21 21:40:02 2564 2

原创 Harris角点检测

官方代码:#include <opencv2/opencv.hpp>using namespace cv;Mat src, src_gray;//设置阈值变量int thresh = 150;int thresh_max = 255;//回调函数void on_cornerHarris_demo(int,void*);//窗口名const char* src_window = "src";

2017-07-21 21:31:30 322

原创 背景差分法 Background Subtraction Methods

核心内容:#include <opencv2/opencv.hpp>using namespace cv;Mat frame; //当前图像Mat fgMaskMOG2; //前景掩码,方式MOG2Ptr<BackgroundSubtractor> pMOG2;//初始化int main(){ VideoCapture capture(0); pMOG2 = create

2017-07-15 16:33:31 1685

原创 Ubuntu下使用USB3.2接口

主要是ubuntu下不支持exfat格式优盘。 为什么U盘使用exfat格式呢?主要有以下两种原因:  1、三大主流操作系统(Linux、Mac、Windows)都支持exfat格式。  2、exfat支持大于4G的文件。  在ubuntu下,由于版权的原因(据说),默认不支持exfat格式的u盘,不过可以很方便就能添加对exfat的支持:  1、对于ubuntu 14.04版本,直接运行下面的命

2017-07-03 21:11:51 1259

原创 ROS编程示例---输出消息

//一个简短的初学程序#include <ros/ros.h>int main(int argc,char** argv){ ros::init(argc,argv,"hello_ros"); ros::NodeHandle n; ROS_INFO_STREAM("Hello ROS");//ROS_INFO_STREAM将会生成一条消息,并且会发送到控制台}

2017-06-11 22:33:23 5769

原创 ROS编程示例---加法服务端

#include <ros/ros.h>#include <zhang/Bigint_Sum.h>//使用了自己创建的Bigint_Sum.srv#include <iostream>//使用string/* *本来是想实现真正的大数加法运算的,然后发现如果我把Bigsum定义成string类型,按照c++的逻辑, *应该是可以直接转换的,但是在这里string a=argv[1]好像是不

2017-06-11 22:27:13 500

原创 ROS编程示例---加法客户端

#include <ros/ros.h>#include <zhang/Bigint_Sum.h>//自己创建的srv文件#include <cstdlib>int main(int argc,char** argv){ //初始化节点 ros::init(argc,argv,"add_two_bigint_client"); //传入的参数必须是两个,加上程序位置本身也是一个参数,

2017-06-11 22:26:04 389

原创 ROS编程示例---完整输出乌龟位姿

运行roscore,乌龟//订阅turtle位姿并输出到屏幕#include <ros/ros.h>#include <iomanip>#include <turtlesim/Pose.h>//使用了turtlesim下的话题pose#include <ros/console.h>//使用判断输出语句_COND//回调函数void poseMessageReceived(const tur

2017-06-11 22:24:45 4065

原创 ROS编程示例---随机移动

运行roscore,turtlesim设置速度rosparam set /publish_velocity/max_vel 1//发布者程序,改进最大速度版,教程的老是撞墙,重新调整了角度//先手动设置rosparam set /publish_velocity/max_vel 1 速度为一避免有那种撞墙的反应#include <ros/ros.h>#include <geometry_msg

2017-06-11 22:22:53 1686

原创 ROS编程示例---设置乌龟背景随机颜色

先运行roscore和turtlesim你将会看到很鲜艳的颜色//这是根据ros浅谈第八章更改乌龟颜色的一个例子,改编过来的,符合我狂乱的风格#include <ros/ros.h>#include <std_srvs/Empty.h>//empty是turtlesim_node提供的服务clear的消息类型#include <cstdlib>int main(int argc,char**

2017-06-11 22:19:01 4471 4

原创 c++---不使用“+”实现加法操作

震惊!c++原来是这样的c++—使用汇编摘自知乎#include <iostream>using namespace std;int add(int a, int b){ _asm { MOV EAX, a; MOV ECX, b; ADD EAX, ECX; }}int main(){ cout << add

2017-06-11 22:01:57 534

原创 数组中的冷知识

可能这是一道经典的编程题?#include <iostream>using namespace std;int main(){ int a[3] = { 1,2,3 }; int *p = (int*)(&a + 1); cout << *(p - 1) << endl; return 0;}输出结果是3。 解释 &a+1不是首地址+1,系统会认为加了一个

2017-06-08 17:39:09 232

原创 vs2017 配置 OpenCV3.2.0

官网下载opencv3.2.0解压可以解压到任意一个盘符,我是放在了D盘。opencv的解压使用了自带的解压软件,效果一样的,选好位置就行。有人可能会先在盘符创建好目录然后选择解压进去,其实不用,可以在选择解压路径的时候填上你想要创建的目录。一般命名是opencv。配置系统变量打开系统变量:点击左上角高级系统设置,在新弹出的窗口中点击环境变量,如图:配置系统变量:这两个可选区域是不同的,一个是用户变

2017-06-07 19:58:20 3363

原创 OpenCV鼠标画图例程,鼠标绘制矩形

效果图 #include <opencv2/opencv.hpp>using namespace cv;#define WINDOW_NAME "程序窗口"Rect g_rectangle;bool g_DrawingBox;RNG g_rng(12345);//矩形绘制函数void DrawRectangle(Mat& img, Rect box){ rectangle(im

2017-06-07 16:19:06 1901

原创 OpenCV入门,线性混合 使用addWeight函数将两幅图像叠加

效果: #include <opencv2/core/core.hpp>#include <opencv2/highgui/highgui.hpp>using namespace cv;#define WINDOW_NAME "线性混合"const int g_nMaxAlphaValue = 100;//alpha 最大值int g_nAlphaValueSlider;dou

2017-06-07 16:14:54 2339

原创 Ubuntu 换中科大源

以中科大源为例,针对教育网用户换源对于教育网用户还有有很大好处的,一是提高了速度,二是免费获取资源一、打开source.listsudo gedit /etc/apt/sources.list输入管理员密码,即可编辑。 如果你相信这篇文章,直接将里面的内容全部删除,将下面的网址复制过去就行。整个过程就3秒。一般情况下可以备份,针对于新手,就是把里面的内容全部复制到另一个文件,命名为txt也行,然后

2017-06-07 16:02:23 24584

原创 斐波那契数列的c++实现,以及求和数列实现

一、迭代算法,复杂度是n按照题目要求,还必须要使用递归的思想,那么打表、迭代就不能用了,岂不是只剩下一种快速幂。脑子里存货不多,我就把以前想的一些东西写一下: 这里仍然要注意一个问题,有些人会简单的用数组存储斐波那契数列,而不是用三个数转换。估计是要占用不少内存空间的,空间复杂度虽然没有原来要求那么高,还是要注意一下的。 #include <iostream>using namespace s

2017-06-07 15:41:50 20786 1

原创 低级的模仿的图像卷积算法

图像处理的基本操作就是矩阵运算了吧,也算是稍微理解下那些算法是怎么操作的不过后来又看了一下,发现自己写的很幼稚。不管了,先摆出来,以后有时间再看。#include <iostream>#include <assert.h>using namespace std;#define MAX 100//矩阵最大阶double Kernel[MAX][MAX] = { 0 }; /

2017-06-07 15:34:29 349

原创 使用C++类实现大数加法,大数减法,大数乘法

注意,减法只能实现大数减小数,有人做题的话也许会遇到小数减大数,不能忽略 效果截图: #include <iostream>#include <string>#include <stdlib.h>#define N 1000//算法基本实现思想://一、大数加法:// 1.输入大数时应该用字符串,然后根据-'0'得出整数数组// 2.整数运算是先从低位运算,所以这里用数组逆存储

2017-06-07 15:27:27 10282

原创 Visual Studio 2017下使用OpenCV做的人脸识别

环境OpenCV3.2,Debug64效果图:#include <opencv2/opencv.hpp>#include <iostream>using namespace cv;using namespace std;CascadeClassifier face_cascader;CascadeClassifier eye_cascader;//记得是/而不是\//位置确定,在openc

2017-06-07 14:55:14 5965 3

原创 Visual Studio加载符号过慢问题解决

加载符号问题打开VS的【工具】-【选项】-【调试】-【符号】,如下图: 1、先取消勾选“Microsoft符号服务器”2、点击“清空符号缓存”3、重启Visual Studio

2017-06-07 14:45:35 24767 4

原创 error:尝试引用已删除的函数或已显式删除函数

很基础的操作在重载运算符的时候,尤其是<<和>>运算符重载,我们也许会遇到这个问题,一般情况下就是函数的声明没有写好,如这样的声明:friend std::ostream operator<<(std::ostream &out, <class Type> &G)这个错误就是operator前没有加取地址符号,加上就可以解决问题。friend std::ostream &operator<<(std

2017-06-06 23:06:29 9196 2

原创 error LNK1169 : 找到一个或多个重定义的符号

error LNK1169 : 找到一个或多个重定义的符号一般情况下在学习数据结构的时候会在程序中添加类,这个时候就有可能产生重定义的问题,解决的办法就是添加extern声明,上过c语言的都知道。例如:现有三个文件: a.h a.cpp main.cpp 其中a.h是所创建类的声明以及函数声明。里面有一个或者若干个变量,假设一个int类型的变量cnt,在a.cpp和m

2017-06-06 22:42:53 324

NWPU-SoftWareEngineering-Database-Designed-ex1

select distinct city from location, (select toareacode,count(status) from call table1 where table1.callstarttime > '1989-10-17 18:00:00' and table1.callstarttime < '1989-10-17 19:00:00' and table1.status='f' group by toareacode) as res1, (select toareacode,count(status) from call table2 where table2.callstarttime > '1989-10-17 18:00:00' and table2.callstarttime < '1989-10-17 19:00:00' group by toareacode) as res2 where res1.toareacode=res2.toareacode and (res1.count)/(res2.count) < 0.5 and res1.toareacode=location.areacode; "Los Angeles " "San Francisco "

2018-05-11

ippicv_linux_20151201.tgz

解决opencv安装失败的问题

2017-07-03

TC30图形库

支持c++下graphics库以及其他可用文件

2017-06-08

空空如也

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

TA关注的人

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