自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (3)
  • 收藏
  • 关注

转载 opencv之8.3检测FAST特征

代码:#include <iostream>#include <opencv2\opencv.hpp>using namespace std;using namespace cv;int main(){ Mat image = imread("D:/house.jpg", 0); vector<KeyPoint> keypoints; //cv::FastFeatur

2017-10-23 23:01:39 221

原创 opencv之8.2检测Harrris角点

Harris角点检测: void cornerHarris(InputArray src, OutputArray dst, int blockSize, int ksize, double k, int borderType=BORDER_DEFAULT) 参数详解: src image输入图像。 dst harris_responce 存储哈里斯(Harris)检测responces的图

2017-10-23 23:00:44 284

原创 opencv之7.6计算联通区域的形状描述

包围盒:水平放置的最小包围矩形。 Rect boundingRect( InputArray points ) 最小包围圈: void minEnclosingCircle( InputArray points, CV_OUT Point2f& center, CV_OUT float& radius ); 多边形

2017-10-23 22:58:52 677

原创 opencv之7.5提取联通区域的轮廓

提取白色区域的轮廓void findContours( InputOutputArray image, OutputArrayOfArrays contours, int mode, int method, Point offset = Point());第一个参数:image但更常用的是二值图像,一般是经过Canny、拉普拉斯等边缘检测

2017-10-23 22:57:19 1903

原创 opencv之7.4用直线拟合一组点

获取直线的位置和方向的精确估计,解决直线拟合的问题。 思想: 用HoughlinesP检测直线,将直线保存在lines中,获取Canny图像并获取lines与canny图相交的点集,再用点集拟合直线。 代码:#include <opencv2/core/core.hpp>#include <opencv2/imgproc/imgproc.hpp>#include <open

2017-10-23 22:55:06 939

原创 opencv之7.3霍夫变换

霍夫变换可以实现任何由参数方程描述的几何体的检测。 1.检测直线 原理:霍夫变换基于二值图像,寻找经过每个单独像素点的所有直线,当直线经过足够多的像素点,则这个直线的存在足够明显。 void HoughLines( InputArray image, OutputArray lines, double rho, double theta, int threshold, dou

2017-10-23 22:51:03 247

原创 opencv学习之Canny算子

Canny算子(基于sobel) 1.消除噪声。 普通情况下,使用高斯平滑滤波器卷积降噪。 2.计算梯度幅值和方向。 此处,依照Sobel滤波器的步骤。 3.非极大值抑制。 这一步排除非边缘像素, 仅仅保留了一些细线条(候选边缘)。 4.滞后阈值。最后一步,Canny 使用了滞后阈值,滞后阈值须要两个阈值(高阈值和低阈值): Ⅰ.假设某一像素位置的幅值超过 高 阈值, 该像素被保

2017-10-23 22:47:39 433

原创 c++学习之类的继承与派生

8.3 类的继承与派生C++语法:定义派生类class 派生类名 : 继承方式1 基类1, 继承方式2 基类2, ...... // 派生类声明部分{public :新增公有成员protected :新增保护成员private :新增私有成员} ;各新增函数成员的完整定义 // 派生类实现部分 语法说明:  定义派生类时,在派生类名的后面添加继承列表,在声明部分的大括号里声明

2017-10-20 16:24:42 283

原创 c++学习之类的组合、聚合

8.2类的组合使用组合类定义对象,即组合类对象,其成员中也将包含对象成员和非对象成员2.访问组合类对象中的非对象成员 组合类对象名 . 非对象成员名 •组合类对象中的对象成员还包含自己的下级成员,也就是说组合类对象包含多级成员。可以访问组合类对象中对象成员的下级成员,这是一种多级访问。多级访问的语法形式是: 组合类对象名 . 对象成员名 . 对象成员的下级成员名 •多级访问将受到多级权限

2017-10-20 16:24:00 597

原创 c++学习之类的友元

1.友元函数 C++语法:在类中声明友元函数 class 类名 // 类声明部分{......friend 友元函数的原型声明 ;} ;语法说明:  在类声明部分声明友元函数的原型,声明时使用“friend”关键字。声明语句可以放在大括号内的任意位置,该位置的访问权限与友元函数无关;  友元函数是类外的其它函数,不是类的成员;  友元函数可以在其函数体内访问该类对象

2017-10-19 16:16:52 210

原创 c++学习之 类中的常成员与静态成员

1.类中的所有成员都不能在定义时初始化,只能在构造函数时初始化 2.#include <iostream>using namespace std;class CirclePool // 定义1个圆形水池类CirclePool{private:const double price; // 修改1:声明时使用“const”关键字double r; // 半径(m)public:// 修改

2017-10-19 16:13:40 844

原创 c++学习之对象的应用

1.对象数组-定义Square obj[3] = { Square(1), Square(2),Square(3)}构造:有多少个数组元素,则调用多少次构造函数-访问 对象数组名【下标】.公有成员名cout << obj[n] <<endl;析构:有多少个数组元素,则调用多少次析构函数2.对象的动态分配对象作为函数的形参 -值传递与常对象常对象定义时必须赋初值double InnerCircle

2017-10-19 16:10:17 269

原创 第五章 使用形态学滤波对图像进行边缘及角点检测

知识点: 直线检测:原图膨胀-原图腐蚀 角点检测:result1 = 膨胀(十字)+腐蚀(菱形)(对原图进行的连续形态学滤波) result2 = 膨胀(x 型 )+腐蚀(方形)(对原图进行的连续形态学运算) result = abs(result1 - result2) 具体语言叙述: 1.直线检测:计算膨胀后的图像与腐蚀后图像的差值。由于这两个变换的图像不同的地方主要在边缘处,图

2017-10-18 22:07:19 1320

转载 vs2015常用快捷键总结

1.回到上一个光标位置/前进到下一个光标位置1)回到上一个光标位置:使用组合键“Ctrl + -”;2)前进到下一个光标位置:“Ctrl + Shift + - ”。2.复制/剪切/删除整行代码1)如果你想复制一整行代码,只需将光标移至该行,再使用组合键“Ctrl+C”来完成复制操作,而无需选择整行。2)如果你想剪切一整行代码,只需将光标移至该行,再使用组合键“Ctrl+X”来完成剪切操作

2017-10-18 20:51:20 919

原创 第五章 使用形态学滤波对图像进行开闭运算

知识点: 1.闭运算:对图像先膨胀,再腐蚀 2.开运算:对图像先腐蚀,再膨胀

2017-10-18 20:46:23 2410

原创 使用形态学滤波对图像进行腐蚀、膨胀运算

知识点: 1. 形态学理论定义了一系列运算,应用预定义的形状元素来变换一张图像。形状元素与像素相领点相交的方式确定了运算的结果。 2. 结构元素定义为像素的结构(形状),以及一个原点(锚点)。使用形态学滤波设计对图像的每个元素应用这个结构元素。当结构元素的原点与给定的像素对齐时,它与图像的相交部分定义了一组进行形态学运算的像素。 3. 腐蚀:每个像素与结构相交的集合替换成最小的像

2017-10-18 19:47:39 2154

原创 Opncv学习之使用方向滤波器检测边缘

Sobel滤波器 void Sobel( InputArray src, OutputArray dst, int ddepth, int dx, int dy, int ksize = 3, double scale = 1, double delta = 0, int borderType = BORDER_DEFAULT ); 用索贝尔算子进行边缘检测: 计算X和Y方向上的导数并进行

2017-10-17 11:15:08 1131

原创 中值滤波器

知识点: 1.中值滤波器对于去除椒盐噪点很有用cv::medianBlur(image,result,5);中值滤波器是非线性的,无法表示为一个核矩阵。该像素及它的相邻区域组成一组数组,仅仅计算这组数的中值,并用中值替代当前的像素值。缺点:噪点像素使得相邻像素的平均值发生变化,结果中的噪点依然是可见的。还同时保留边缘锐利度的优点,也会去除相同区域中的纹理(如背景中的树木)。#include <io

2017-10-17 11:01:16 1497

原创 opencv学习 图像低通滤波

知识点: 1.滤波选择性的提取图像中呗认为传达重要信息的部分。滤波除去图像中的噪声,提取感兴趣的视觉特征,允许图像重采样等。 2.观察图像中变化的频率描述图像的方式成为频域,通过观察灰度分布来描述一幅图像呗成为空间域。 在频域分析的框架下,滤波操作的作用是增强部分频段,同时限制其他频段。 3.当滤波器的作用将一个像素替代为相邻像素的加权总和时,为线性的。 箱式滤波器将一个像素替换为相邻矩形

2017-10-16 22:12:17 1345

原创 c++学习之对象指针

对象指针: Rectangle obj2; // 定义1个类Rectangle的对象obj2 obj2.a、obj2.b、obj2.RArea( )、obj2.RLen( ) Rectangle *p; // 定义1个类Rectangle的对象指针p p = &obj2; // 将对象obj2的地址赋值给对象指针p 访问方法: cin >> (*p).a >> (*p).b; co

2017-10-13 23:27:56 219

原创 c++学习之特殊形式的函数

知识点:1.程序 = 数据 + 算法2.结构化程序设计方法的基本思想:  模块化设计  重用函数代码  分类管理数据-结构化程序设计所棉铃的问题:  开发大型软件系统  对大型软件的维护、升级-解决方法:数据类 数据类 = 数据 + 算法3.面向对象的初始化形式int x(10), y; //C++语言风格4.C++语言常变量: con

2017-10-12 21:57:23 370

原创 Opencv学习之图像的均衡化、二值化图像

知识点: 图像在视觉上的缺陷在多数情况下不是像素强度范围过窄,而是因为像素强度频率分布不均。我们认为一副高质量的图像应该平均所有的像素强度。这便是直方图均衡化背后的理念,即使得图像的直方图尽可能平坦Opencv提供了函数执行直方图均衡化void equalizeHist( InputArray src, OutputArray dst )#include <stdio.h> #include

2017-10-12 20:21:59 1160

原创 Opencv学习之 计算图像直方图

知识点: 知识点:在一个单通道的灰度图像中,每个像素的值介于0(黑色)~255(白色)之间 threshold 函数可以利用阈值来创建二值图像。两组像素基本对应的是图像的前景和背景,通过两组像素之间的过度出进行阈值化可以证实这一点 例: //cv:: Mat thresholded; //cv::threshold(image, thresholded, 60, 255, cv::THRE

2017-10-12 20:05:22 450

转载 关于C++ const 的全面总结

http://blog.csdn.net/Eric_Jo/article/details/4138548

2017-10-12 16:56:06 198

转载 OpenCV学习笔记(08):opencv3.2+cmake3.8+VS2013,编译opencv_contrib

http://blog.csdn.net/cv_jason/article/details/70037545

2017-10-10 22:53:43 354

原创 Opencv学习笔记之 视频

#include <opencv2\opencv.hpp>#include <iostream>using namespace std;int main(){ //打开视频文件 cv::VideoCapture Capture("D:\\1.avi"); //检查视频是否打开 if (!Capture.isOpened()) { retur

2017-10-10 17:58:11 336

原创 软件开发过程培训总结

软件开发过程培训主要从软件开发过程介绍、团队与角色、软件开发过程、面向对象建模与开发工具、构建神经网络实例等方面进行了学习。一、首先明确:软件=代码+文档,软件过程是开发、运行、维护和修复软件的系统方法 Software = Peopleware 团队成员角色:张超 组长兼开发经理;施浩琪 质量经理兼过程(管理)经理二、测试策略使用经过单元测试的部件作为原型创建提交版本通过集成测试,来判定

2017-10-09 16:37:19 2675

原创 opencv学习笔记 一 图像读取与操作

包括基本的图像读取,深拷贝和浅拷贝,salt,使用指针遍历图像,颜色缩减,图像锐化#include <iostream>#include <opencv2\opencv.hpp>#include <opencv2\highgui\highgui.hpp>#define _CRT_SECURE_NO_DEPRECATEvoid salt(cv::Mat &image, int n); //图

2017-10-08 16:41:28 346

大规模预训练通用视觉表征

大规模预训练通用视觉表征

2023-06-19

opencv c++ 用直线拟合一组点代码

opencv c++ 用直线拟合一组点,获取直线的位置和方向的精确估计,解决直线拟合的问题。思想:用HoughlinesP检测直线,将直线保存在lines中,获取Canny图像并获取lines与canny图相交的点集,再用点集拟合直线代码

2022-09-22

mac安装caffe.pdf

安装caffe

2019-02-18

PLOT 2

输出结果输出结果输出结果输出结果输出结果输出结果输出结果输出结果

2017-10-12

PLOT

输出结果输出结果输出结果输出结果输出结果输出结果输出结果输出结果输出结果

2017-10-12

空空如也

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

TA关注的人

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