
open cv
一个码农要什么昵称
寻寻匿匿
展开
-
K-means
Kmeans又是一个以点到点距离为判断依据的算法,物理上的质心很好的形容了这个算法的目的。说的没有做的理解深,还是实践一下。#include "pch.h"#include <opencv2/core.hpp>#include <opencv2/imgproc.hpp>#include "opencv2/imgcodecs.hpp"#include <...原创 2018-12-27 23:49:09 · 100 阅读 · 0 评论 -
blur & filter
理解:模糊就是让图像变的平滑,平滑到极致图片就变成了一个色块。锐化就是增加色彩的对比度,对比到极致图片就变成了很多色块。实践:void example_blur(const cv::Mat &image) { cv::Mat out; cv::namedWindow("example_blur", cv::WINDOW_AUTOSIZE); cv::Gaussian...原创 2018-12-22 14:07:56 · 186 阅读 · 0 评论 -
人脸检测
人脸检测在生活中已经随处可见,今天使用opencv来实践一番。void example_face_dectect(cv::Mat &image, cv::CascadeClassifier faceCascade, cv::CascadeClassifier eyeCascade) { std::vector<cv::Rect> faces; std::vector...原创 2018-12-23 20:11:21 · 139 阅读 · 0 评论 -
Support Vector Machines (SVM) 支持向量机
理解1.分割:二维平面上存在两类点,有多条线可以分割两类点,哪条线最优?2.最优:所有点到直线的距离中找到最小值,使这个最小值最大化的那条线。(即所有点到线A的距离中找到最短距离AL,再有所有点到线B的距离中找到最短距离BL,AL和BL谁更长则更优。假设平面上只有两个点,是不是刚好就是两个点正中间且与两个点连线垂直的那条线呢?)3.线性分割:就是用一条直线或一个平面可以进行分割...原创 2018-12-20 00:56:21 · 171 阅读 · 0 评论 -
goodFeaturesToTrack & cornerHarris
好不容易元旦两天假,学习了一下goodFeaturesToTrack 和 cornerHarris的使用。#include "pch.h"#include "opencv2/highgui.hpp"#include "opencv2/imgproc.hpp"#include <iostream>using namespace cv;using namespace st...原创 2019-01-01 21:23:09 · 416 阅读 · 0 评论 -
opencv 基本绘图操作
实践一下opencv的基本绘图操作,点线圆走一套。虽然很基础,对于熟悉opencv的基本数据类型是很有帮助的。#include "opencv2/highgui.hpp"#include "opencv2/imgproc.hpp"#include <iostream>using namespace cv;using namespace std;void drawTe...原创 2019-01-03 00:35:24 · 3228 阅读 · 0 评论 -
Gaussian Blur
图像的平滑模糊是一种很常见的操作,实际上是一个计算权重均值的过程。比如a,b,c三人各有100元,20元,3元,设置权重为(1,2,3),对b计算权重均值后b的钱为(1*100 + 2*20+3*3)/ 6 = 24.83元对应图像中就是3*3或更多个点取权重均值。如果权重满足正态分布,那么这个计算过程就是高斯模糊,权重也叫核。参考https://www.jianshu.com/p/...原创 2019-03-31 22:44:21 · 683 阅读 · 0 评论