![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
opencv
太聪明火星同学
小李重大研二在读
展开
-
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 · 192 阅读 · 0 评论 -
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 · 152 阅读 · 1 评论 -
opencv学习记录【2】(霍夫变换
7.29-8.5:霍夫变换霍夫变换主要思想是空间转换,在笛卡尔坐标系下不好解决的问题转换到极坐标系。【一】 霍夫线变换 基本原理:用极坐标系来表示通过某一点的一簇直线,在极坐标对极径极角平面绘出所有通过它的直线, 将得到一条正弦曲线。对图像中所有点进行这个操作,如果两曲线相交则意味着它们通过同一条直线,同理,如果有超过阈值条曲线相交于一点则意味着它们通过同一条直线,我们则提取出该直线。这就...原创 2019-08-19 15:50:01 · 132 阅读 · 0 评论 -
opencv学习记录【3】(canny边缘检测
8.5-8.12:canny边缘检测【一】 基本原理边缘检测的一般步骤:1)滤波:边缘检测的算法主要是基于图像强度的一阶和二阶导数,但导数通常对噪声很敏感,因此必须采用滤波器来改善与噪声有关的边缘检测器的性能。常见的滤波方法主要有高斯滤波,即采用离散化的高斯函数产生一组归一化的高斯核(具体见“高斯滤波原理及其编程离散化实现方法”一文),然后基于高斯核函数对图像灰度矩阵的每一点进行加权求和(具...原创 2019-08-19 15:55:33 · 306 阅读 · 0 评论 -
opencv学习记录【4】(自适应阈值
8.12-8.19:自适应阈值【一】 基本原理图像阈值化的一般目的是从灰度图像中分离目标区域和背景区域,然而仅仅通过设定固定阈值很难达到理想的分割效果。在实际应用中,我们可以通过某个像素的邻域以某种方法确定这个像素应该具有的阈值,进而保证图像中各个像素的阈值会随着周期围邻域块的变化而变化。在灰度图像中,灰度值变化明显的区域往往是物体的轮廓,所以将图像分成一小块一小块的去计算阈值往往会得出图像的...原创 2019-08-19 16:43:37 · 222 阅读 · 0 评论 -
opencv学习记录【5】(背景差分算法
8.26-9.2:背景差分算法【一】 帧间差分最简单的背景提取方法,一帧减去另一帧。函数实现:Void cv::absdiff( frameTime1, frameTime2, frameForeground);为了去除噪音波动等,常常忽略帧间微小的不同,只标出较大的不同,并且进行二值化。cv::threshold( frameForeground, frameForeground,t...原创 2019-09-17 13:52:02 · 612 阅读 · 2 评论 -
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 · 524 阅读 · 1 评论