自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 资源 (12)
  • 问答 (1)
  • 收藏
  • 关注

原创 OpenCV中Mat的type

OpenCV中几种不同深度的数据格式,其特性统计如下: 图像类型 数据类型 字节 取值范围 显示范围 IPL_DEPTH_8U unsigned char 1 0~255 0~255 IPL_DEPTH_8S char 1 -128~127 -128~128 IPL_DEPTH_16U unsigned short 2 0~6

2017-09-03 13:55:56 676

原创 caffe 图片格式

caffe进行目标检测,训练和识别时需要保持数据格式一致才可以保证识别时候的正确率,所以这里把caffe中使用的图片格式列出来:1、灰度图: 灰度值[0-255]1、三通图: BGR格式,若输入图片不是这个格式则需要转化过来。

2017-09-01 10:49:30 1297

原创 Easygui简单说明教程(python的GUI类库)

写弹窗程序需要用到Easygui, 就在这简单说明一下.Easygui是一个Python用于简单开发GUI的类库, 很适合新手写简单的图形界面EasyGui是基于TKinter的,所以可以跨平台使用。使用方法很简单,下载之后解压把easygui.py放到python安装目录下的lib/site-packages/下面即可下载链接:http://pan.baidu.com/share/link?sha

2017-05-10 13:31:26 8023

原创 python windows安装

1、首先访问http://www.python.org/download/去下载最新的python版本。2、安装下载包,一路next。 3、为计算机添加安装目录搭到环境变量,如图把python的安装目录添加到pth系统变量中即可。 4、测试python安装是否成功,cmd打开命令行输入 python 命令,如下图即成功了

2017-05-10 13:29:14 433

原创 图像 YUV与RGB格式转换

YUV格式具有亮度信息和色彩信息分离的特点,但大多数图像处理操作都是基于RGB格式。 因此当要对图像进行后期处理显示时,需要把YUV格式转换成RGB格式。 RGB与YUV的变换公式如下: YUV(256 级别) 可以从8位 RGB 直接计算:Y = 0.299 R + 0.587 G + 0.114 BU = - 0.1687 R - 0.3313 G + 0.5 B + 128V = 0

2017-05-09 00:31:05 1727

原创 感知哈希算法(Perceptual hash algorithm) 以图搜图

1.序 目前“以图搜图”的引擎越来越多,可参考博文: http://blog.csdn.net/forthcriminson/article/details/8698175 此篇博文中列出了很多“以图搜图”的引擎,之前很好奇他们是如何进行检索的,偶然间看到了一篇博客,上面说Google和Tineye主要利用的算法是感知哈希算法(Perceptua

2017-05-06 23:27:33 10904 1

原创 三种基于感知哈希算法的相似图像检索技术

大家都用google或baidu的识图功能,上面就是我搜索一幅图片的结果,该引擎实现相似图片搜素的关键技术叫做“感知哈希算法”(Perceptual hash algorithm),它的作用是对每张图片生成一个“指纹”(fingerprint)字符串,然后比较不同图片的指纹。结果越接近,就说明图片越相似。达到图片比较目的且利用信息指纹比较有三种算法,这些算法都很易懂,下面分别介绍一下:1、基于低频的

2017-05-06 23:18:16 7235 1

原创 c++ bind函数

头文件:#include <functional> 前言 函数绑定bind函数用于把某种形式的参数列表与已知的函数进行绑定,形成新的函数。这种更改已有函数调用模式的做法,就叫函数绑定。需要指出:bind就是函数适配器。先上实例:#include <iostream> #include <functional> using namespace std; using namespa

2017-05-03 21:01:11 14117

原创 ubuntu14.04安装caffe2

前段时间贾清扬大牛在Facebook推出了caffe2版本,相比caffe来说感觉更加轻量级和高效。Caffe2的安装相比于caffe在安装的时候更加简便,略去了Makefile.config的各种配置,对于有无GPU以及各种可选库例如OpenCV,anaconda的支持也更简单。(其实你直接装好库以后make就好,以GPU为例,在make的时候,自动检测你是否安装了CUDA,若没有,就自动CPU

2017-05-02 19:45:37 2221 1

原创 opencv 常用数据格式

一般的图像文件格式使用的是 Unsigned 8bits,CvMat矩阵对应的参数类型就是 CV_8UC1,CV_8UC2,CV_8UC3。 (最后的1、2、3表示通道数,譬如RGB3通道就用CV_8UC3)而float 是32位的,对应CvMat数据结构参数就是:CV_32FC1,CV_32FC2,CV_32FC3… double是64bits,对应CvMat数据结构参数:CV_64FC1,

2017-04-30 21:31:40 1638

原创 ONVIF协议 简介

一、简单介绍 1形成 2008年5月,由安讯士(AXIS)联合博世(BOSCH)及索尼(SONY)公司三方宣布携手共同成立一个国际开放型网络视频产品标准网络接口开发论坛,取名为ONVIF(Open Network Video Interface Forum,开放型网络视频接口论坛),并以公开、开放的原则共同制定开放性行业标准。ONVIF标准将为网络视频设备之间的信息交换定义通用协议,包括装置搜寻

2017-04-25 23:30:05 16374

原创 caffe2 树莓派使用

下载路径: https://github.com/caffe2/caffe21 安装cmake sudo apt-get install cmake2 运行caffe2/scripts/build_raspbian.sh若有问题则: 修改build_raspbian.sh文件: 添加-DUSE_GLOO=OFF 即:将cmake .. \ -DCMAKE_VERBOSE_MAK

2017-04-25 17:00:47 1423

原创 图像处理 去模糊 去马赛克 软件

1、恢复模糊的图像 SmartDeblur SmartDeblur 是一个开源去模糊工具,专用于修复拍摄照片过程中由于不正确的对焦(虚焦)和移动所造成的模糊图像,具体包括因虚焦引起的模糊(Out of Focus blur)、因运动引起的模糊(Motion blur)、高斯模糊(Gaussian blur)。拍摄过程中产生的模糊,并非不可逆过程,其实只是所有的信息根据一些规则而进行了重新分配,通过

2017-04-23 22:14:00 8935

原创 visual studio 好用的插件

1.Whole Tomato(番茄助手) Visual AssistX是一款非常好的MicrosoftVisual Studio插件,可以支持Microsoft Visual Studio 2003,Microsoft Visual Studio 2005,Visual Studio 2008,Microsoft Visual Studio 2010,Microsoft Visual Studio

2017-04-23 20:53:55 1125

原创 LBP特征 旋转不变 标准型 圆型 及其在人脸识别中的应用含代码

LBP(Local Binary Patterns,局部二值模式)是一种能够有效地度量和提取图像局部纹理信息的算子,具有旋转不变性和灰度不变性等显著的优点。它是人脸识别中一种提取特征的重要方法,具有对光照不敏感的特性,但是对姿态和表情的鲁棒性不强。 1、背景及理论基础 人脸识别是指将一个需要识别的人脸和人脸库中的某个人脸对应起来(类似于指纹识别),目的是完成识别功能,该术语需要和人脸检测进行区分

2017-04-23 13:43:25 9166

原创 c++ 虚函数

在类的编程中,要能进行抽象编程,不随类的改动而改动。类机制必须解决这个问题。在c++中就是虚函数机制。基类与派生类的同名操作,只要标记上virtual,该操作便具有多态性。一旦标记基类的函数为虚函数,便有连锁反应,后面继承的类中一切同类型同名成员函数都变成了虚函数。仅仅对于对象的指针和引用的间接访问,才会发生多态现象。对于传值操作,引发了复制动作,已经将对象的性质做了肯定的转变,则不会多态了(多态是

2017-04-16 15:28:45 453

原创 c++ 多态、覆盖、重载的综述

在基类中定义了一个虚拟函数,然后在派生类中又定义一个同名,同参数表的函数,这就是多态。多态是这3种情况中唯一采用动态绑定技术的一种情况。也就是说,通过一个基类指针来操作对象,如果对象是基类对象,就会调用基类中的那个函数,如果对象实际是派生类对象,就会调用派声类中的那个函数,调用哪个函数并不由函数的参数表决定,而是由函数的实际类型决定。

2017-04-15 16:01:20 3494 1

原创 c++ 继承

继承面临许多技术问题,包括父类与子类的访问权限规定,子类对象既然包含了父类对象,那么初始化和构造函数的顺序规定,子类对象与父类对象的关系,当然我们也要考虑与比较类的组合与类的继承的差异,来深刻学习继承的方法。继承可以使已经存在的类无需修改就可适应新应用,继承是比重用规模更广的重

2017-04-14 14:32:33 409

原创 c++ 面向对象 总结

作为对象的构造函数,其根本的使用就是创建对象实体,如果创建失败,比如:内存空间短缺,将会引起系统异常,这时候真要论及处理,就该让程序捕捉该异常。

2017-04-13 19:50:04 626

原创 安装gsl 科学计算库 亲测可用

安装gsl 科学计算库 亲测可用

2017-04-10 21:15:03 769

原创 opencv 鼠标选取图像感兴趣区域

我们在做工程应用时,经常少不了鼠标的交互,这篇博客就是关于在图像上使用鼠标选取感兴趣区域

2017-04-10 19:39:39 4290

原创 目标跟踪 浅谈

相信很多来到这里的人和我一样,都是想找一种比较好的目标跟踪算法,或者想对目标跟踪这个领域有个比较深入的了解,经典目标跟踪算法,可能我们并不需要那些曾经辉煌但已被拍在沙滩上的tracker,而是那些即将成为经典的,或者就目前来说最好用、速度和性能都看的过去tracker。我比较关注的是目标跟踪中的相关滤波方向,这里尽可能全面的谈谈相关滤波,给大家分享一些我认为比较好的算法,顺便谈谈我的看法,有可能会写

2017-04-08 23:49:11 13859 4

原创 运动目标检测 混合高斯模型

原理 : 高斯模型就是用高斯概率密度函数( 正态分布 曲线)精确地量化事物,将一个事物分解为若干的基于高斯概率密度函数(正态分布曲线)形成的模型。对图像背景建立高斯模型的原理及过程:图像灰度 直方图 反映的是图像中某个 灰度值 出现的频次,也可以认为是图像灰度概率密度的估计。如果图像所包含的目标区域和背景区域相比比较大,且背景区域和目标区域在灰度上有一定的差异,那么该图像的灰度直方图呈现双峰-谷形状

2017-04-07 19:58:21 6763

原创 运动目标检测 帧差法

帧差法是在连续的图像序列中两个或三个相邻帧间采用基于像素的时间差分并且二值化来提取图像中的运动区域。#include <opencv2/opencv.hpp>using namespace std;using namespace cv;//计算二值化图中白色像素点个数double bSums(Mat src){ int counter = 0; //迭代器访问像素点

2017-04-07 19:55:33 3553

原创 浅谈模式识别

吴福朝老师《模式识别》的原话(大意):模式识别是指,利用已知数据,对具有一定空间时间分布信息的数据与类别标号之间的映射做一个较好的估计。模式识别主要是对已知数据样本的特征发现和提取,比如人脸识别、雷达信号识别等,强调从原始信息中提取有价值的特征,在机器学习里面,好的特征所带来的贡献有时候远远大于算法本身的贡献。模式识别又常称作模式分类,从处理问题的性质和解决问题的方法等角度,模式识别分为有监督的分类

2017-04-07 15:37:29 9753

原创 非极大值抑制 NMS

概念: 非极大值抑制算法(Non-maximum suppression, NMS)的本质是搜索局部极大值,抑制非极大值元素。非极大值抑制(NMS)主要在图像处理中的应用主要是是为了更精确的定位某种特征。举一个简单的例子:用梯度变化表征边缘时,梯度变化较大的区域通常比较宽,所以利用x和y方向的梯度确定一个法向arctan(y/x),然后在法向上判断当前梯度测量是否是一个峰值(或局部极大值),如果是

2017-04-06 10:22:14 1348

原创 c++ 友元函数 友元类

1、友元函数 为什么会有友元函数?结合着类的特性和类中一般成员函数,我们可以这样理解:类具有封装和信息隐藏的特性。只有类的成员函数才能访问类的私有成员,程序中的其他函数是无法访问私有成员的。非成员函数可以访问类中的公有成员,但是如果将数据成员都定义为公有的,这又破坏了隐藏的特性。另外,应该看到在某些情况下,特别是在对某些成员函数多次调用时,由于参数传递,类型检查和安全性检查等都需要时间开销,而影响

2017-04-04 22:50:56 540

原创 c++ 静态成员函数

静态成员函数可以不以捆绑的方式调用,静态成员函数被调用时,没有当前对象的信息,所以静态成员函数不能访问数据成员,只能访问静态数据成员。但可以通过传递对象参数进去从而访问成员。// class_test.cpp : 定义控制台应用程序的入口点。//#include <iostream>using namespace std;class Student{private: string n

2017-04-04 20:31:45 338

原创 c++ 访问控制之protect、private、public

protected 和privated都是针对函数定义来说的在外部程序中都不可被调用。 public表示可以被外部调用(对象.方法)public: 数据成员和函数成员可在成员函数,友元,继承类中直接使用。亦可以作为接口,供类的用户使用(即 A a,a.change())。private: 数据成员和函数成员,只能在 类成员和友元 中访问。不能被继承类访问(无论何种继承),虽然作为继承类的私

2017-04-04 20:14:46 989

原创 c++ 类静态数据成员理解

静态数据成员: 直接上例程分析:#include <iostream>using namespace std;class Student{private: string name; int n=0;public: void set(string str){ static int number = 0; name = str;

2017-04-04 19:43:51 341

原创 mongodb 大结构文件系统 Gridfs c操作实例

GridFS是一种在MongoDB中存储大二进制文件的机制。使用GridFS存文件有如下几个原因:1、利用Grid可以简化需求。要是已经用了MongoDB,GridFS就可以不需要使用独立文件存储架构。2、GridFS会直接利用业已建立的复制或分片机制,所以对于文件存储来说故障恢复和扩展都很容易。3、GridFS可以避免用于存储用户上传内容的文件系统出现的某些问题。例如,GridFS在同一个目录

2017-04-01 08:47:28 2155 2

原创 mongodb GridFS 大结构文件系统

GridFS是一种在MongoDB中存储大二进制文件的机制。使用GridFS存文件有如下几个原因:1、利用Grid可以简化需求。要是已经用了MongoDB,GridFS就可以不需要使用独立文件存储架构。2、GridFS会直接利用业已建立的复制或分片机制,所以对于文件存储来说故障恢复和扩展都很容易。3、GridFS可以避免用于存储用户上传内容的文件系统出现的某些问题。例如,GridFS在同一个目

2017-03-31 23:21:18 1296

原创 c++操作mongodb Windows 下 mongo-c-driver vs2013编译 附使用实例

1、下载mongo-c-driver源码文件: https://github.com/mongodb/mongo-c-driver.git2、下载`libbson的源码 https://github.com/mongodb/libbson.git如果不想编译直接使用可以下载我编译好的文件: mongo-c-driver-win32-bin.7z mongo-c-driver-win64-bi

2017-03-31 12:09:27 6870 13

原创 mongodb 访问控制

官方手册中启动 MongoDB 服务时没有任何参数,一旦客户端连接后可以对数据库任意操作,而且可以远程访问数据库,所以推荐开发阶段可以不设置任何参数,但对于生产环境还 是要仔细考虑一下安全方面的因素,而提高 MongoDB 数据库安全有几个方面: 1、绑定 IP 内网地址访问 MongoDB 服务 2、设置监听端口 3、使用用户名和口令登录 1、绑定 IP 内网地址访问MongoDB 服务

2017-03-30 19:05:47 696

原创 mongodb数据导入导出

使用数据库,经常会碰到导入导出数据的需求,下面就介绍实用工具 mongoexport 和 mongoimport 的使用方法: 参数说明:-d 指明使用的库, 本例中为” my_mongodb” -c 指明要导出的表, 本例中为”user” -o 指明要导出的文件名, 本例中为”user.dat” 从上面可以看到导出的方式使用的是 JSON 的样式 。导出 CSV 格式的文件: 参数说明:-

2017-03-30 18:01:10 607

原创 mongodb GridFs

为什么要使用GridFs呢? 由于 MongoDB 中 BSON 对象大小是有限制的,所以 GridFS 规范提供了一种透明的机制,可 以将一个大文件分割成为多个较小的文档,这样的机制允许我们有效的保存大文件对象,特对于那些巨大的文件,比如视频、高清图片等。简单介绍 GridFS 使用两个表来存储数据1、files 包元数据对象  2、chunks 包其他一些相关信息的二进制块为了使多个 G

2017-03-30 17:19:12 462

原创 mongodb Capped Collection介绍

简单介绍: capped collections 是性能出色的有着固定大小的集合,以 LRU(Least Recently Used 最近最少 使用)规则和插入顺序进行 age-out(老化移出)处理,自动维护集合中对象的插入顺序,在创 建时要预先指定大小。如果空间用完,新添加的对象将会取代集合中最旧的对象。 功能特点 可以插入及更新,但更新不能超出 collection 的大小,否则更新失败。

2017-03-30 16:16:11 787

原创 mongodb 高级查询 高级操作 非常全

面向文档的 NoSQL 数据库主要解决的问题不是高性能的并发读写,而是保证海量数据存储 的同时,具有良好的查询性能。MongoDB 最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语 言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。由于 MongoDB 可以支持复杂的数据结构,而且带有强大的数据查询功能,因此非常受到欢迎,很多项目都考虑用 Mong

2017-03-30 15:31:11 7098

原创 c++操作mongodb Windows 上

1、下载mongodb: http://www.mongodb.org/downloads 双击即可快速安装。2、添加环境变量 3、cmd管理员运行开启mongodb服务mongod.exe --dbpath "E:\Program Files\MongoDB\data" --logpath "E:\Program Files\MongoDB\log\mongodb.log" -install

2017-03-29 19:37:33 5297 3

原创 c++ Linux 使用mysql

1、安装mysqlsudo apt-get install mysql-serversudo apt-get install apache2sudo apt-get install libmysqlclient-dev安装后,usr/include/mysql目录下就会出现mysql.h文件,可用于c++的数据库开发中。 使用时头文件#include <mysql.h>编译选项:g++ -o

2017-03-29 13:08:47 1177 1

UDP视频传出 客户端服务端

UDP视频传出 客户端服务端

2019-06-08

mongo-c-driver-win64编译后文件

mongo-c-driver-win64编译后文件,可直接使用

2017-03-31

基于ARM和云计算的人脸图像语义表征解析系统的研究和设计

基于ARM和云计算的人脸图像语义表征解析系统的研究和设计

2016-09-25

数字通信技术

数字通信技术

2016-09-25

UDP 视频传输

UDP 视频传输

2016-09-25

Android应用开发

Android应用开发详解,googleandroid,比较详细,容易上手

2015-03-17

vs+opencv人脸识别

基于opencv的c++/c的人脸识别程序,含源程序,简单易学

2015-03-17

学习openCV.pptx

比较详细的介绍了opencv,适合入门及深入研究

2014-08-01

Learning OpenCV中文

Learning OpenCV中文版,适合入门及深入学习

2014-08-01

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

TA关注的人

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