自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 《Open CV3编程入门》学习笔记14

霍夫圆变化:对于直线由r,θ表示,而对于圆来说,由圆心坐标和半径表示。具体由“霍夫梯度法”的方法来实现:1.转化为单通道图像(如灰度图像)后,进行边缘检测,通常使用canny边缘检测;2.对边缘图像中的每个非零点,计算其局部梯度,即用Sobel()函数计算x和y方向的Sobel一阶导数得到梯度;3.利用梯度方向和该点坐标得一线段(梯度方向为圆弧的法线方向,即半径方向),线段的起点与长度由半径长度决...

2018-02-11 21:18:13 202

原创 《Open CV3编程入门》学习笔记13

累计概率霍夫变换累计概率霍夫变换算法是标准霍夫变换算法的一个改进,它在一定的范围内进行霍夫变换,计算单独线段的方向以及范围,从而减少计算量,缩小计算时间。之所以称概率,是因为并不将累加器平面内的所有点累加,而只是累加其中的一部分,该想法是如果峰值如果足够高,只用一小部分时间去寻找它就足够了。该方法只要检测的直线上的点达到阈值,剩余点可不必进行霍夫变换从而减少了计算。标准霍夫变换本质上是把图像映射到...

2018-02-09 21:44:36 213

原创 《Open CV3编程入门》学习笔记12

标准霍夫变换:针对图像中非零像素点,通过在极坐标下对极径极角平面绘出所有通过该点的直线,将得到一条正弦曲线。然后对图像中所有非零点进行上述操作,得到所有正弦曲线并绘制在同一平面内,越多曲线交于一点,说明该点(ρ,θ)所代表的直线交于图像中的更多的非零点,当这些曲线数超过设定的阈值时,即认为检测到了一条直线。多尺度霍夫变换为标准霍夫变换在多尺度下的一个变种,主要针对精度。#include <o...

2018-02-08 21:13:46 207

原创 《Open CV3编程入门》学习笔记11

边缘检测: 在实际情况中理想的灰度阶跃及其线条边缘图像是很少见到的,同时大多数的传感器件具有低频滤波特性,这样会使得阶跃边缘变为斜坡性边缘,看起来其中的强度变化不是瞬间的,而是跨越了一定的距离。这就使得在边缘检测中首先要进行的工作是滤波(指增强部分)。1滤波:边缘检测的算法主要是基于图像强度的一阶和二阶导数,但导数通常对噪声很敏感,因此必须采用滤波器来改善与噪声有关的边缘检测器的性能。常见的滤波方...

2018-02-07 22:33:41 243

原创 《Open CV3编程入门》学习笔记10

图像金字塔与尺寸缩放:#include #include #include using namespace std;using namespace cv;#define WINDOW_NAME "【程序窗口】" //为窗口标题定义的宏Mat g_srcImage, g_dstImage, g_tmpImage;static void ShowHelpText();int m

2018-02-06 22:06:31 249

原创 《Open CV3编程入门》学习笔记9

漫水填充:所谓漫水填充,简单来说,就是自动选中了和种子点相连的区域,接着将该区域替换成指定的颜色,这是个非常有用的功能,经常用来标记或者分离图像的一部分进行处理或分析。漫水填充也可以用来从输入图像获取掩码区域,掩码会加速处理过程,或者只处理掩码指定的像素点(为0即黑色的区域)。漫水操作的结果总是是某个连续的区域,当邻近像素点位于给定的范围(从loDiff到upDiff)内或者在原始seedPo

2018-02-02 01:08:20 175

原创 《Open CV3编程入门》学习笔记8

形态学滤波(2):开运算、闭运算、形态学梯度、顶帽、黑帽开运算:先腐蚀后膨胀,可以消除小物体,在纤细点处分离物体,并且在平滑较大物体的边界的同时不明显改变其面积;闭运算:先膨胀后腐蚀,可以排除小型黑洞(黑色区域),起到填充的效果;形态学梯度:膨胀图与腐蚀图之差,对于二值图进行这一操作可以将团块的边缘突出出来,可以用形态学梯度来保留物体的边缘轮廓;顶帽:也称礼帽运算,是原图像与开运算

2018-01-31 21:51:43 240

原创 《Open CV3编程入门》学习笔记7

最基本形态学操作:腐蚀与膨胀实现功能:消除噪声;分割出独立的图像元素,在图像中连接相邻的元素;寻找图像中的明显的极大值区域或极小值区域;求出图像的梯度;腐蚀膨胀针对高亮部分;膨胀就是利用一形状的核与图像卷积,即计算出核内覆盖的图像区域的像素点中的最大值,并将其赋给锚点,结果就会使图像中高亮的部分延伸扩大,腐蚀正好相反。#include #include #include #inc

2018-01-30 22:49:17 210

原创 《Open CV3编程入门》学习笔记6

非线性滤波:中值、双边滤波#include #include #include #include //-----------------------------------【命名空间声明部分】---------------------------------------// 描述:包含程序所使用的命名空间//-----------------------------------

2018-01-29 21:23:26 385

原创 《Open CV3编程入门》学习笔记5

线性滤波:方框滤波、均值滤波、高斯滤波#include #include #include #include using namespace std;using namespace cv;//-----------------------------------【全局变量声明部分】--------------------------------------// 描述:全局变

2018-01-28 23:34:41 164

原创 《Open CV3编程入门》学习笔记4

离散傅里叶变换#include "opencv2/core/core.hpp"#include "opencv2/imgproc/imgproc.hpp"#include "opencv2/highgui/highgui.hpp"#include using namespace cv;void ShowHelpText(){ //输出欢迎信息和OpenCV版本 printf("

2018-01-26 20:41:41 277

原创 《Open CV3编程入门》学习笔记3

6访问像素的三种方法以及运行时间计算#include#include#includeusing namespace std;using namespace cv;//函数说明void colorReduce(Mat& inputImage,Mat&outputImage,int div);int main(){ Mat srcImage=imread("1.jpg");

2018-01-26 20:39:27 321

原创 《Open CV3编程入门》学习笔记2

3滑动条与图像融合#include#include#includeusing namespace cv;using namespace std;#define WINDOW_NAME "【线性混合示例】"//为窗口标题定义的宏//全局变量声明const int g_nMaxAlphaValue=100;//Alpha最大值int g_nAlphaValueSlider;//滑动

2018-01-26 20:32:00 378

原创 《Open CV3编程入门》学习笔记1

1.输入显示#include#includeusing namespace cv;int main( ){ Mat srcImage=imread("pic.jpg",2|4);//第二个参数>0返回一个3通道的彩色图像;=0返回灰度图像(可自行转化);<0返回包含Alpha通道的加载图像;2|4载入无损的源图像 //若以彩色模式载入图像,解码后会以BGR的通道顺序进行存储,而不

2018-01-26 14:38:13 468

空空如也

空空如也

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

TA关注的人

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