高斯模糊GaussianBlur灰度转换cvtColor计算梯度Sobel/Scharr非最大信号抑制高低阈值输出二值图像APIcv::Canny(InputArray src,//8-bit的输入图像OutputArray edges,//输出边缘图像,一般都是二值图像,背景是黑色double threshold1,//低阈值,常取高阈值的1/2或者1/3double threshold2,//高阈值int aptertureSize.//Soble算子的size,通常3*3,
霍夫变换-直线Hough Line Transform用来做直线检测前提条件:边缘检测已经完成平面空间到极坐标空间转换相关API:cv::HoughLinesP(InputArray src.//输入图像,必须8-bit的灰度图像OutputArray lines,//输出的极坐标来表示直线double rho,//生成极坐标时候的像素扫描步长double theta,//生成极坐标时候的角度步长,一般取值PI/180int threshold,//阈值,只有获得足够交点的极坐标点才被看
OpenCV3霍夫圆检测原理图(来自于51CTO教学视频)相关API
功能在父图像中寻找幅图像中的子图像相关APICV::matchTemplate(InputMat,//原图像InputMat,//模板图像OutputArray result,//输出结果,必须是单通道32位浮点数,假设原图像widthheight,模板图像WIDTHHEIGHT,则结果必须为width-WIDTH+1,height-HEIGHT+1的大小input method,//使用的匹配方法InputArray mask=noArray()//(optional))...
轮廓发现轮廓发现是基于图像边缘提取的基础寻找对象轮廓的方法。所以边缘提取的阈值选定会影响最终轮廓发现结果相关APIfindContours发现轮廓drawContours绘制轮廓函数使用以及参数详情在二值图像上发现轮廓使用APIcv::findContours(InputOutputArray,//输入图像,非0的像素被看成1,0的像素值保持不变,8-bitOutputArray,//全部发现的轮廓对象OutputArray,该图的拓扑结构,可选,该轮廓发现算法正是基于图像拓扑结构实
凸包凸包概念:在一个多边形边缘或者内部任意两个点的连线都包含在多边形边界或者内部定义:包含点集合s中所有点的最小凸多边形称为凸包相关API:convexHull(InputArray point,//输入候选点,来自findcontoursOutputArray hull,//凸包bool clockwise,//default true顺时针方向bool returnPoint//true表示返回点的个数,如果第二个参数是vector则自动忽略)相关步骤首先把图像转为灰度然后再
轮廓周围绘制矩形框和圆形框相关APIapproxPolyDP(InputArray curve,OutputArray approxCurve,double epsilon,bool colsed)//基于RDP算法实现,目的是减少多边形轮廓点数轮廓周围绘制矩形APIcv::boundingRect(InputArray points)得到轮廓周围最小的矩形左上点坐标和右下角点坐标,绘制一个矩形cv::minAreaRect(InputArray points)得到一个旋转的矩形,返回旋转矩形
OpenCV3视频加载Videocapture视频对象Videocapture.open(video_file_name)//打开视频文件Videocapture>>Mat//加载帧到Mat对象视频加载结束后再加载Mat,则Mat为空#include<iostream>#include<opencv2/opencv.hpp>#include<opencv2/highgui.hpp>using namespace std;using nam
putText(img, “1234567890”, Point(200, 200), FONT_HERSHEY_SIMPLEX,1,Scalar(255, 0, 0));#include<iostream>#include<opencv2/opencv.hpp>#include<opencv2/highgui.hpp>using namespace std;using namespace cv;int main(int argc, char** argv)
OpenCV3图形距相关APImoments(IntputArray array,//输入数据bool binaryImage=false//是否为二值图像)contourArea(InputArray contour,//输入轮廓数据bool oriented//默认false,返回绝对值)arcLength(InputArray curve,//输入曲线数据bool closed//是否是封闭曲线)...
#include<iostream>#include<vector>using namespace std;struct Point{ int x; int y;};bool judgePointInRect(vector<Point>&Points,int ROWS,int COLS){//将四个点定位找出最大y,与最小y bool rectIsLevel=false; if(Points.size()!=5){//必须为5个点 retu
线性模型Scikit-Learn中的线性回归from sklearn.linear_model import LinearRegressionimport numpy as npimport matplotlib as mplimport matplotlib.pyplot as plt#创建数据集X=2*np.random.rand(10,1)#100行1列的随机初始化向量y=4+3*X+np.random.randn(10,1)#创建模型实例lin_reg=LinearRegress
学习曲线如果模型在训练数据上表现良好,但根据交叉验证的指标泛化较差,则你的模型过拟合。如果两者的表现均不理想,则说明欠拟合均方误差 mean squared error训练测试分 train_test_splitfrom sklearn.metrics import mean_squared_errorfrom sklearn.model_selection import train_test_splitimport numpy as np import matplotlib.pyplot
逻辑回归使用-sigmoid函数-进行对数几率回归(通常解决二分类问题)单特征from sklearn import datasetsimport numpy as npimport matplotlib.pyplot as pltiris = datasets.load_iris()list(iris.keys())X=iris["data"][:,3:] #petal width 花瓣宽度,选择每行的第四个(每行共四个)print(iris["target"])y=(iris["t
支持向量机SVM(Support Vector Machine),适合用于中小型复杂数据集的分类。支持向量机有三宝间隔对偶核技巧大间隔分类(Large margin classification)from sklearn.svm import SVCfrom sklearn import datasetsimport numpy as npimport matplotlib as mplimport matplotlib.pyplot as pltiris=datasets.lo
Vue.js基础(All In One HTML Page)小胡子模板v-html v-textv-bind绑定class绑定style计算属性methods与computedv-on条件渲染v-showv-for遍历数组v-for
Document
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document<...
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号