自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zeng_haoyu的博客

今天很残酷,明天更残酷,后天很美好

  • 博客(66)
  • 资源 (1)
  • 收藏
  • 关注

原创 OpenCv功能UI

用cvui写的一个界面,总结了自己学习opencv的过程,并把碰到的一些算法功能全部加到了这个上面,慢慢积累成一个库。大致的雏形已经有了,现在就慢慢往上加功能,包括了三个页面:图片页面,摄像头页面,还有一个工具页面。图片页面上面有一些基于图片操作的功能,还有一些滤镜操作,目前就放了几个简单的功能。我把有滑动条和普通操作的两个功能分开下面有一个按钮可以切换,底下还有两个切换图片的按钮,中间显示的...

2019-02-28 21:59:12 1359

原创 加速度计和陀螺仪指南

文章链接http://www.doc88.com/p-8572941872268.html

2019-09-10 13:36:11 269

原创 安装opencv时候遇到terminate called after throwing an instance of 'cv::Exception'解决方法

大概错就是这个样子,错误前面是你的文件路径:516: error: (-2) The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-conf...

2019-07-19 15:23:20 4318

转载 OpenCV中CV_RGB2GRAY和CV_BGR2GRAY的区别

原文链接:https://blog.csdn.net/weixin_42142612/article/details/80804039平时处理图像的时候,很少用到彩色信息,一般都是直接转换为灰度图。转换灰度图用的cvtColor的第三个参数中有两个参数,我一直没太注意区别,CV_RGB2GRAY与CV_BGR2GRAY。今天通过一个简单的测试区分一下。测试代码如下:#include ...

2019-07-16 14:22:22 10878

原创 opencv打开不了摄像头的问题

最近重编了一下opencv4.0.0,但是突然我程序里的读取摄像头的部分全都失败了,感觉莫名其妙,而且我把github上的代码来下来也不行,弄得我一直查是不是由于opencv4.0的原因,但是把opencv4.0的库去掉也不行,于是我干脆新建一个程序单独写一个只读摄像头,发现居然还不行,那么大概就知道可能是电脑本身摄像头的问题了,又找了一圈资料发现没有能解决这个问题的方法,无奈之下只能使出终极绝招...

2019-04-01 10:06:47 2416

原创 ubuntu安装terminator失败的问题

update-alternatives: using /usr/bin/terminator to provide /usr/bin/x-terminal-emulator (x-terminal-emulator) in auto mode安装完之后报这个错,反反复复卸载安装了好几次都是这个问题,于是按照提示去执行了一下/usr/bin/terminator的脚本文件,发现报了python的错...

2019-03-16 21:12:10 1627

原创 读取json文件

网上找了一圈都没有看到直接处理json文件的代码,只看到处理json数据的。所以就自己总结了一个json文件的读取处理代码。直接上代码#include <stdio.h>#include "cJSON.h"int main(){ const char* version = cJSON_Version(); printf("version:%s\n", v...

2019-03-15 22:08:53 986

原创 解析bmp图片

#include &lt;stdio.h&gt;#include &lt;string.h&gt;#include &lt;sys/types.h&gt;#include &lt;iostream&gt;#pragma pack(2)using namespace std;typedef struct BITMAPFILEHEADER { u_int16_t b...

2019-03-05 16:37:51 187

转载 C++中“非常量引用的初始值必须是左值”的处理方法

原文:https://blog.csdn.net/hou09tian/article/details/80565343 1 左值和右值在C++中,左值可以出现在赋值语句的左边和右边;右值只能出现在赋值语句的右边,不能出现在赋值语句的左边。变量是左值,常量是右值。2 引用引用(reference)为对象起了另外一个名字,引用类型引用(refers to)另外一种类型。通过在变量名前添加“...

2019-02-14 09:28:55 26041 5

转载 图像深度

图像深度是指存储每个像素所用的位数,他也是用来度量图像的色彩分辨率的。他确定了彩色图像的每个像素可能有的色彩数,或者确定灰度图像的每个像素可能有的灰度级数。他决定了色彩图像中可能出现的最多的色彩数,或者灰度图像中的最大灰度等级。  中文名 图像深度 特    点 量度图像的色彩分辨率 含    义 指存储每个像素所用...

2019-02-13 11:29:31 684

原创 opencv-批量修改文件夹中的图片名

批量修改文件夹中的图片的名字,找了一些程序都不太好用,就自己总结写了一个。#include&lt;opencv2\opencv.hpp&gt;#include&lt;iostream&gt;using namespace std;using namespace cv;vector&lt;Mat&gt; RenamePic(cv::String Path);int main()...

2019-01-28 15:12:13 1165

原创 cvui-读取图片或者打开摄像头

丰富了前面的读取图片功能,将读取摄像头也加上去了.ui.h#pragma once#include &lt;string&gt;#include &lt;iostream&gt;#include &lt;opencv2/opencv.hpp&gt;#include "Utils.h"#define CVUI_IMPLEMENTATION#include "cvui/cvu...

2019-01-26 17:16:35 1374

原创 cvui使用-从文件夹中读取图片

#include&lt;opencv2/opencv.hpp&gt;#include&lt;iostream&gt;#define CVUI_IMPLEMENTATION#include "cvui/cvui.h"using namespace cv;using namespace std;#define WINDOW_NAME "img"int main(){ con...

2019-01-18 20:39:28 1254 1

原创 opencv-cvui

介绍一个opencv界面库——cvui,看作者github上说是只要把头文件加到你的工程目录下就可以了,没想到自己动手试了一下遇到了一个问题看报的错误一般是lib库没有添加,可是自己找了一会也没有发现lib库在哪里,所以 问题应该不在这里,把宏定义加上之后也还是报错,真的也不知道问题出在哪里了。后面不知道怎么试的把头文件的放在宏定义下面居然就可以了,我也不清楚这个是什么原因了,所以记录一下,后...

2019-01-14 16:09:48 990 2

原创 ORB_SLAM2源码解析-Tracking.cc

理论推导参考:https://blog.csdn.net/qq_30356613/article/details/80587649代码来源:https://me.csdn.net/qq_30356613/*** This file is part of ORB-SLAM2.** Copyright (C) 2014-2016 Raúl Mur-Artal &lt;raulmur a...

2018-11-12 16:51:09 2007 2

原创 ORB_SLAM2基础知识-ORB特征

前面转载过一篇ORB特征的原理解读,我感觉讲的是很详细的,但是特征点在SLAM中的运用,还不是很清楚,我们知道特征点是由关键点和描述子组成的。常见的特征有SIFT特征,SURF特征等。那么为什么ORB-SLAM2选择ORB特征呢?这是因为虽然SIFT考虑了图像变换过程中出现的光照、尺寸、旋转等变化,但需要较大计算量,在没有GPU加速的情况下,很难在SLAM这种系统中进行实时计算,另一方面,SIFT...

2018-11-08 16:43:51 789

原创 ORB_SLAM2源码解析-system.cc

在mono_kitti.cc中通过SLAM.TrackMonocular(im,tframe),进入SLAM系统也就来到了system.cc,#include "System.h"#include "Converter.h"#include &lt;thread&gt;#include &lt;pangolin/pangolin.h&gt;#include &lt;iomanip&g...

2018-11-06 11:06:41 983 2

原创 ORB_SLAM2源码解析-框架

看了很多SLAM的源码阅读和解析了,有的人已经写了很好了,但是对于一个刚入门的菜鸟来说还是看不太懂,没办法具体到每一个函数的功能,虽然大体的框架知道是怎么回事,但是细细想又搞不明白,所以决定自己写一个博客来详细记录学习的过程,重要的是做笔记,要不然总是忘记。首先从框架说起,下面的代码来自ORB_SLAM2中的mono_kitti.cc#include&lt;iostream&gt;...

2018-11-06 10:33:50 1592 1

转载 ORB_SLAM2基础知识-ORB算法原理解读

绪论假如我有2张美女图片,我想确认这2张图片中美女是否是同一个人。这太简单了,以我专研岛国动作片锤炼出来的火眼金睛只需轻轻扫过2张图片就可以得出结论。但是,如果我想让计算机来完成这个功能就困难重重了:再性感的美女在计算机眼中也只是0-1组成的数据而已。一种可行的方法是找出2张图片中的特征点,描述这些特征点的属性,然后比较这2副图片的特征点的属性。如果有足够多的特征点具有相同的属性,那么就可以认为...

2018-11-06 09:59:56 5548 3

原创 C++数值比较时遇到的问题

平时我写程序的时候遇到要放在一个区间的数值的时候总是习惯的用i&lt;j&lt;k这种形式,说实话程序没有报错是真的没有注意到这个错误,直到前面一段时间写opencv程序的时候发现没办法这样比较,当时还没有想到这里去,只觉得是自己的那个地方写错了,最近看c++ primer的时候才发现这种写法是错的。下面举一个例子来说明。#include &lt;iostream&gt;using nam...

2018-10-28 11:09:48 1077

原创 运行SLAM遇到的问题

运行的代码来自与高翔的博客1.绝对路径将程序中的相对路径改成绝对路径,否则找不到图片2.pcl问题在CMakeLists中要加上一行代码list(REMOVE_ITEM PCL_LIBRARIES "vtkproj4") # use this in Ubuntu 16.043.No rule to make target '/usr/lib/x86_64-linux-gnu...

2018-10-24 14:04:33 2573

原创 UBuntu下运行ORB-SLAM2

其实安装高翔的14讲跑一遍程序,大概基本上所有的库和包就已经安装好了,所以先用用上面的程序练手也好,如果还有问题就配合下面这篇博客了。http://www.liuxiao.org/2016/03/ros-orb-slam2-%E5%AE%89%E8%A3%85%E8%B0%83%E8%AF%95/。虽然代码跑起来了,但是我根本看不懂,就是想玩玩这种东西,顺便多看看复杂的c++程序,因为最近在搞...

2018-10-12 22:41:28 1072

转载 git的操作说明

一:Git是什么?  Git是目前世界上最先进的分布式版本控制系统。  二:SVN与Git的最主要的区别?  SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网...

2018-10-12 21:28:14 139

转载 c语言中main函数参数argc,argv说明,及命令行中如何传参数

方法1.C/C++语言中的main函数,经常带有参数argc,argv,如下:int main(int argc, char** argv)int main(int argc, char* argv[])这两个参数的作用是什么呢?argc 是指命令行输入参数的个数,argv存储了所有的命令行参数。假如你的程序是hello.exe,如果在命令行运行该程序,(首先应该在命令行下用 cd...

2018-10-12 17:22:56 940

转载 悟已往之不谏,知来者之可追

20多岁,你迷茫又着急。你想要房子你想要汽车,你想要旅行你想要享受生活。 你那么年轻却窥觑整个世界,你那么浮躁却想要看透生活。 你不断催促自己赶快成长,却沉不下心来安静的读一篇文章;你一次次吹响前进的号角,却总是倒在离出发不远的地方。 成长,真有你想象的那样迫切?——转自雅虎《另一种活法》一、别急,千万别急上周在南京出差,深夜拖着疲惫 去跟朋友见面,畅谈至凌晨两点。回到酒店已近三点...

2018-10-11 19:25:01 5392

转载 c++进程、线程、多进程

进程:进程是一个正在执行的程序,是向CPU申请资源的,进程之间数据相互独立,一个进程至少有一个线程。 线程:线程是进程中的单一的顺序控制流程也可以叫做最小控制单元,线程是进程中执行单元,开启一个线程比开启一个进程更加节省资源。  多线程:多线程是多任务处理的一种特殊形式,多任务处理允许让电脑同时运行两个或两个以上的程序。一般情况下,两种类型的多任务处理:基于进程和基于线...

2018-10-09 20:51:07 1832

原创 opencv去除印章痕迹

今天看到一个很有意思的程序,就是去除票据上的红色印章,觉得很有意思,就把它抄过来记录一下,同时自己也开了一下脑洞。原来的程序来自:https://www.cnblogs.com/skyfsm/p/7638301.html可以看到图像效果很不错,下面是源码实现:#include &lt;iostream&gt;#include &lt;opencv2/imgproc/imgpro...

2018-10-09 18:06:35 7208 2

原创 共享内存

共享内存是常用的进程之间的通信,两个进程可以直接共享访问同一块内存区域一:共享内存的实现步骤如下:(1)创建共享内存区进程1通过操作系统提供的API从内存中申请一块共享区域,Linux系统中可以通过shmget,函数实现,生成的共享内存块与某个特定的key进行绑定。(2)映射共享内存到进程1中在Linux环境中,可以通过shmat实现(3)映射共享内存到进程2中...

2018-10-09 17:34:43 6985

原创 Windows server 下搭建Git服务器与远程连接

具体的搭建流程参考下面两篇文章,过程很详细而且两篇文章一起享用基本不会出现问题。https://www.cnblogs.com/xifenglou/p/6952604.html#3962430https://www.cnblogs.com/sutao/p/8109051.html 我这里就补充一下搭建之后的配置操作,就是服务器与自己电脑的连接。第一步:打开电脑的防火墙功能 ...

2018-09-26 15:22:00 3213

原创 opencv相机标定(推导)

首先看看棋盘,就是那种国际象棋的棋盘,就是我们要使用的标定板,标定板也分了几种。· 普通棋盘· 圆点· 非对称圆点后面会写棋盘和圆点的区别,这里先讲棋盘。前面讲相机标定是将三维世界的场景映射为二维的图片,映射过程有很多步,也就是如何从世界坐标系转换到像素坐标系的过程。从世界坐标系到相机坐标系:R是旋转矩阵,t是平移矩阵,从世界坐标系到相机坐标系可以通过旋转平移得到,这个...

2018-09-21 16:37:38 1949

原创 opencv相机标定(初步了解)

这篇博客参考了很多人的文章,但是自己还是想总结一下,结合自己的理解,看看能不能完整的理顺相机标定,可能有一些地方有错误,所以还望大家指正,下面开始正文。第一:什么是相机标定我们先从什么是相机讲起,相机的原理是小孔成像,但是由于这种成像方式只有一个小孔能透过光线就会导致物体的成像亮度很低。为了解决亮度的问题,我们使用了透镜,虽然这样可以解决亮度的问题,但是由于透镜的制作工艺会使成像产生多种形...

2018-09-21 15:38:02 693

原创 opencv将视频切成图片

 直接code#include &lt;iostream&gt;#include "cv.h"#include "opencv2/opencv.hpp"using namespace std;using namespace cv;void main(){ string VideoPath; VideoCapture cap("../1.mp4"); doubl...

2018-09-20 22:46:27 998

原创 print与cout共用报错

1&gt;------ 已启动生成: 项目: Utils, 配置: Release Win32 ------1&gt; UManger.cpp1&gt;D:\workspace\Utils\include\opencv2/core/ptr.inl.hpp(122): error C2440: “初始化”: 无法从“const char *”转换为“cv::Formatted *”1&gt...

2018-09-19 14:47:41 778

原创 opencv将图片转换为视频

直接上代码,没什么特别的东西#include&lt;opencv2\opencv.hpp&gt;#include&lt;iostream&gt;using namespace std;using namespace cv;int main(){ VideoWriter video("test.mp4", CV_FOURCC('X', 'V', 'I', 'D'), 15....

2018-09-07 22:05:15 11486 1

原创 opencv从文件中读取图片

今天接到一个任务,是从一个文件中将图片读取出来,文件是.out结尾的从摄像头上读取的图片,决定使用opencv来实现,刚好前端时间把浅墨的opencv入门书从头到尾又看了一遍,所有的程序也亲手重新过了一遍,但是还是感觉什么都不会,以后要多增加这方面的编程,纸上得来终觉浅,绝知此事要躬行。下面直接看代码:#include &lt;stdio.h&gt;#include &lt;vecto...

2018-09-07 21:41:39 2134

原创 运行tensorflow的语音识别案例

配置好tensorflow之后,当然要试试效果了,正好最近实习会碰到语音识别的内容,就想跑跑tensorflow的自带的语音案例试试水,在网上找了一圈资料都没有找到好的,在自己成功之后决定自己写一篇记录一下,也帮助一下后来的人。 这些东西都是要建立在你已经配置好环境的情况下,具体的配置看看前面的文章。首先去github上下载tensorflow的代码下来,解压之后就会得到下面的文件:...

2018-08-03 15:10:41 6272 8

转载 cmake详细讲解

什么是 CMake 你或许听过好几种 Make 工具,例如 GNU Make ,QT 的 qmake ,微软的 MS nmake,BSD Make(pmake),Makepp,等等。这些 Make 工具遵循着不同的规范和标准,所执行的 Makefile 格式也千差万别。这样就带来了一个严峻的问题:如果软件想跨平台,必须要保证能够在不同平台编译。而如果使用上面的 Make 工具,就得为每一种...

2018-08-03 08:23:08 1072

转载 C使用FILE指针文件操作

文件的基本概念  所谓“文件”是指一组相关数据的有序集合。 这个数据集有一个名称,叫做文件名。实际上在前面的各章中我们已经多次使用了文件,例如源程序文件、目标文件、可执行文件、库文件 (头文件)等。文件通常是驻留在外部介质(如磁盘等)上的,在使用时才调入内存中来。从不同的角度可对文件作不同的分类。从用户的角度看,文件可分为普通文件和设备文件两种。  普通文件是指驻留在磁盘或其它外部介质上的一...

2018-08-01 20:34:36 4404 1

原创 win10下安装tensorflow-gpu-1.9.0

换新电脑了,所有以前的环境又需要再重新安装配置一次,于是就决定从头开始安装tensorflow-gpu,因为tensorflow前不久才更新,为了与时俱进,这一次演示的版本就是1.9啦。在写这篇博客的时候我还没开始安装,但是凭借以前的经验,对大致的流程还是比较熟悉的,不过,还是有可能会翻车。我会尽可能的一步一步的详细演示,闲话不多说,下面开始正文。首先介绍我的电脑:Dell precision...

2018-07-29 12:22:17 6367

原创 使用WinSCP以root账号登录Ubuntu系统

在使用虚拟机的时候,可以使用WinSCP来与外面的windows系统进行交互,让文件可以互传,用来处理文件比较方便,但是如果需要使用到root的时候就要做一定的修改,毕竟普通用户权限不够。具体的更改步骤如下: 1,首先设置root密码sudo passwd root 2,修改/etc/ssh/sshd_config文件 sudo su(获取权限)vi /etc/ss...

2018-07-22 22:13:17 1802

用到的资源合集

就是博客里提到的一些资源,我做了一个合集放在这里供大家下载,省的一个一个找,不过cuda太大了,这个需要自己下

2018-07-29

空空如也

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

TA关注的人

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