自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (2)
  • 收藏
  • 关注

转载 openCV—霍夫变换原理(直白易懂)

霍夫变换(Hough Transform) 霍夫变换是图像处理中从图像中识别几何形状的基本方法之一,应用很广泛,也有很多改进算法。最基本的霍夫变换是从黑白图像中检测直线(线段)。我们先看这样一个问题:设已知一黑白图像上画了一条直线,要求出这条直线所在的位置。我们知道,直线的方程可以用y=k*x+b 来表示,其中k和b是参数,分别是斜率和截距。过某一点(x0,y0)的所有直线的参数都会满足方程y0=

2016-11-23 17:27:03 1294

转载 openCV-直方图以及均衡化理解

直方图的均衡化 下面是对单通道灰度图的均衡化过程。对于彩色的图片来说,直方图均衡化一般不能直接对R、G、B三个分量分别进行上述的操作,而要将RGB转换成HSV来对V分量进行直方图均衡化的操作。 直方图均衡化算法分为三个步骤,第一步是统计直方图每个灰度级出现的次数,第二步是累计归一化的直方图,第三步是计算新的像素值。 第一步: for(i=0;i<height;i++) {

2016-11-22 17:13:09 1134

原创 openCV(3)-随机数产生用法

看代码就差不多会了#include "opencv2/core/core.hpp"#include "opencv2/features2d/features2d.hpp"#include "opencv2/highgui/highgui.hpp"#include <opencv2/nonfree/nonfree.hpp>#include<opencv2/legacy/legacy.hpp>

2016-11-17 17:09:13 697

原创 openCV(2)-creatTrackbar()函数及回调函数

在openCV 中没有按钮,所以我们会经常用到滑动条的功能,用到滑动条,就会遇到这两个东西。creatTrackbar()函数和回调函数的概念。creatTrackbar()int createTrackerbar(const string& trackerbarname, //创建滑动条的名字const string winname, //所在窗口的名字int* value, //一个指

2016-11-17 16:31:37 4369

转载 openCV-迭代器iterator使用注意

在使用迭代器的时候,会遇到const和vector,iterator的结合。vector前面加constvector<int> a(10,9);const vector<int>::iterator iter=a.begin();//这种情况下,表示iter是一个常量++iter//这句话就是错的,其原因是iter是一个常量,因此是不能改变的。换句话说,iter只能指向vv的地一个元素,不

2016-11-16 20:18:04 4159 1

转载 openCV—converTo()用法

convertTo的用法 src.convertTo(dst, type, scale, shift)img参数为图像数据来源,其类型为Mat。 注意也不是所有格式的Mat型数据都能被使用保存为图片,目前OpenCV主要只支持单通道和3通道的图像,并且此时要求其深度为8bit和16bit无符号(即CV_16U),所以其他一些数据类型是不支持的,比如说float型等。 如果Mat类型数据的深度和

2016-11-16 16:20:59 4695

原创 openCV(1)-Mat初始化

这次来记一下自己对Mat类的理解,供交流首先,使用Mat就不需要为其手动分配内存大小,最后也不需要手动释放它。但是我们在使用openCV函数的时候,还是要手动分配其输入数据。第二点,Mat本质是由两部分数据组成的类,矩阵头(header)和指针Pointer,矩阵头主要是包含矩阵的大小,存储方式,存储地址等信息,指针中存储了指向存储图像像素值矩阵的指针。一个常用的Mat类的构造函数,但是要知道

2016-11-15 20:50:59 24213

原创 C++的函数模板和类模板理解

函数模板#include <iostream>#include<stdlib.h>using namespace std;//d=定义一个函数模板template <typename T>void display(T a){ cout << a << endl;}template<typename T,typename S>void display(T t, S s){

2016-11-14 22:07:34 568

原创 openCV-相关概念理解和应用

图像掩模 在OPENCV中,掩模可以用于图像处理的叠加,比如将一个logo标志图标放置在一副图片上,可以用addweight()函数,也可以用mask掩模的方式; 下面分析一段添加掩模来处理图像的代码:#include "opencv2/features2d/features2d.hpp"#include "opencv2/highgui/highgui.hpp"#include <ope

2016-11-13 15:03:08 884

原创 C++中的回调函数,函数指针理解

小知识:C和C++中struct 的区别就是C中的struct不能有成员函数,C++中可以有。 C++中可以通过类实例化对象来调用成员函数,在C语言中,就可以用函数指针来调用回调函数。 函数指针:函数指针就是指向一个函数,存储的是那个函数的地址 回调函数:就是通过函数指针来调用函数指针指向的函数。#include <iostream>#include <stdlib.h>using nam

2016-11-12 22:00:10 449

原创 图像处理-图像的三要素

对于一副图像,用3个要素去描述它,就是图像的大小(size),图像的深度(depth),图像的通道数(channels)。图像的size就是图像的height和width,对应图像的rows和cols。图像的通道数就是每个像素点对应的描述数据种类,举个例子: 灰度图的通道数为1,彩色图的通道为3。基本上,描述一个像素点,如果是灰度,那么只需要一个数值来描述它,就是单通道。如果一个像素点,有RG

2016-11-10 21:09:26 9960

转载 C++和C中的static讲解

全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式。这两者在存储方式上并无不同。这两者的区别虽在于非静态全局变量的作用域是整个源程序, 当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。 而静态全局变量则限制了其作用域, 即只在定义该变量的源文件内有效, 在同一源程序的其它源文件中不能使

2016-11-09 20:22:06 451

原创 C++(static使用注意,和非static区别)

C++类中的static 在C++中有静态成员变量和静态成员函数,要注意,在C++类和对象的概念中,先有类,才有对象。因为static型的成员函数和成员变量是在类产生的时候分配的内存,产生于对象之前,故不能再static型函数中调用普通的成员变量和成员函数。而且在static型函数后面不能加const(原因注释里有) 下面通过代码说明:#ifndef Tank_h_#define Tank_

2016-11-09 20:07:53 3699

非线性分类器代码_报告

本资源是模式识别中的非线性分类器代码,是本人觉得模式识别,机器学习中比较有意义的代码.

2018-04-29

空空如也

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

TA关注的人

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