- 博客(8)
- 收藏
- 关注
原创 opencv学习记录【7】(自己写的KNN算法识别mnist
#include<opencv2/opencv.hpp> #include<iostream> #include <list> #include <string> #include <vector> #include<Windows.h> using namespace std; using namespace cv; #...
2019-10-28 16:48:51 190
原创 opencv学习记录【6】(codebook
9.2-9.16:codebook 【一】 基本原理 CodeBook算法的基本思想是为每一个像素点建立一个codebook,每个codebook包含一个或者多个码元code_elements,并且随着背景像素值波动情况的不同,不同像素点所包含的码元数目不一定相同。 CodeBook算法为当前图像的每一个像素建立一个码本CodeBook(CB)结构,每个CodeBook由多个码元code_elem...
2019-09-17 13:57:11 514 1
原创 opencv学习记录【5】(背景差分算法
8.26-9.2:背景差分算法 【一】 帧间差分 最简单的背景提取方法,一帧减去另一帧。 函数实现: Void cv::absdiff( frameTime1, frameTime2, frameForeground); 为了去除噪音波动等,常常忽略帧间微小的不同,只标出较大的不同,并且进行二值化。 cv::threshold( frameForeground, frameForeground,t...
2019-09-17 13:52:02 599 2
原创 openCASCADE版本更新(避坑
由于OCCT技术很少人用,在搭建7.3.0的过程中参考了一些较老的帖子。搭建成功后尝试了很多别人的例子,总是缺少一些头文件或者DLL。以为是搭建过程出了错。。。 后来发现是因为新版本做了很大改动。(orz 比较下最新的7.3.0与6.5.5的inc 730比655少了整整6340个头文件! 再看看lib 虽然数量没变化,但是也有不少变化。 老帖子是没法再看了。。。 附上使用7.3.0的MFC单文...
2019-08-23 17:07:12 857 1
原创 opencv学习记录【4】(自适应阈值
8.12-8.19:自适应阈值 【一】 基本原理 图像阈值化的一般目的是从灰度图像中分离目标区域和背景区域,然而仅仅通过设定固定阈值很难达到理想的分割效果。在实际应用中,我们可以通过某个像素的邻域以某种方法确定这个像素应该具有的阈值,进而保证图像中各个像素的阈值会随着周期围邻域块的变化而变化。在灰度图像中,灰度值变化明显的区域往往是物体的轮廓,所以将图像分成一小块一小块的去计算阈值往往会得出图像的...
2019-08-19 16:43:37 218
原创 opencv学习记录【3】(canny边缘检测
8.5-8.12:canny边缘检测 【一】 基本原理 边缘检测的一般步骤: 1)滤波:边缘检测的算法主要是基于图像强度的一阶和二阶导数,但导数通常对噪声很敏感,因此必须采用滤波器来改善与噪声有关的边缘检测器的性能。常见的滤波方法主要有高斯滤波,即采用离散化的高斯函数产生一组归一化的高斯核(具体见“高斯滤波原理及其编程离散化实现方法”一文),然后基于高斯核函数对图像灰度矩阵的每一点进行加权求和(具...
2019-08-19 15:55:33 301
原创 opencv学习记录【2】(霍夫变换
7.29-8.5:霍夫变换 霍夫变换主要思想是空间转换,在笛卡尔坐标系下不好解决的问题转换到极坐标系。 【一】 霍夫线变换 基本原理:用极坐标系来表示通过某一点的一簇直线,在极坐标对极径极角平面绘出所有通过它的直线, 将得到一条正弦曲线。对图像中所有点进行这个操作,如果两曲线相交则意味着它们通过同一条直线,同理,如果有超过阈值条曲线相交于一点则意味着它们通过同一条直线,我们则提取出该直线。这就...
2019-08-19 15:50:01 129
原创 opencv学习记录【1】(一些简单基本操作
7.22-7.26:图像预处理 【一】一些基本操作、函数 1)图像载入、显示、输出 imread( ), namedWindow( ),imshow( ) 2)ROI区域划分&图像叠加混合 Mat imageROI 方法一 imageROI=image(Rect(500,250,logo.cols,logo.rows)); 方法二 imageROI=srcImage3(Range(250,...
2019-08-19 15:48:37 146 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人