
opencv
文章平均质量分 70
steph_curry
这个作者很懒,什么都没留下…
展开
-
opencv:图像读取、保存、尺度变换、二值化、腐蚀和膨胀
#include#includeusing namespace std;using namespace cv;int main(){ const char* imagename = "C://Users//huashuo111//Desktop//路飞.jpg"; //从文件中读入图像 Mat img = imread(imagename); //如原创 2017-12-12 19:00:39 · 2099 阅读 · 0 评论 -
opencv之霍夫变换
设已知一黑白图像上画了一条直线,要求出这条直线所在的位置。我们知道,直线的方程可以用y=k*x+b 来表示,其中k和b是参数,分别是斜率和截距。也就是说,我们将原始图像需要检测的直线,表示成y = k*x + b, 只要找出唯一的k,b即可检测出该直线。该直线在原始图中是一系列离散点的集合,过该直线上某一点(x0,y0)的所有直线的参数都会满足方程y0=kx0+b。即点(x0,y0)确定了一族直线转载 2017-12-20 09:20:42 · 395 阅读 · 0 评论 -
OpenCV边缘检测:Canny算子,Sobel算子,Laplace算子,Scharr滤波器
Canny算法检测边缘步骤:1.消除噪声。 一般情况下,使用高斯平滑滤波器卷积降噪。 如下显示了一个 size = 5 的高斯内核示例: 2.计算梯度幅值和方向。 此处,按照Sobel滤波器的步骤。 Ⅰ.运用一对卷积阵列 (分别作用于 x 和 y 方向):转载 2017-12-19 21:05:30 · 370 阅读 · 0 评论 -
opencv之图像形态学处理:开运算、闭运算及形态学梯度
开运算:先腐蚀后膨胀,作用是移除场景中较小的物体,因为它们无法完全包含结构元素。闭运算:先膨胀后腐蚀,作用是填充较亮物体中小洞,同时连接多个相邻物体,基本上,无法完全包含结构元素的洞或缝隙将被移除。形态学梯度:闭运算减去开运算,得到物体轮廓#include#include#includeusing namespace std;using namespace cv;int转载 2017-12-18 22:12:05 · 2207 阅读 · 0 评论 -
opencv——轨迹条控制图像对比度与亮度
#include#include#include#include using namespace cv;using namespace std;Mat img1;Mat img2;int a;int b;void ContrastAndBright(int,void*){ namedWindow("原始图像",1); for(int i=0;i<img1.rows;i+转载 2017-12-16 21:54:36 · 269 阅读 · 0 评论 -
opencv——轮廓检测与画轨迹条
int createTrackbar(conststring& trackbarname, conststring& winname, int* value, int count, TrackbarCallback onChange=0,void* userdata=0);函数解释:第一个参数,const string&类型的trackbarname,表示轨迹条的名转载 2017-12-16 20:53:15 · 2766 阅读 · 0 评论 -
opencv——轮廓检测
findContours( InputOutputArray image, OutputArrayOfArrays contours, OutputArray hierarchy, int mode, int method, Point offset=Point());转载 2017-12-16 19:43:35 · 411 阅读 · 0 评论 -
opencv 图像融合裁剪
//mat::copyTo用法:const char* filename="C://Users//huashuo111//Desktop//路飞.jpg"; Mat img=imread(filename,1); //resize(img,img,Size(),0.5,0.5); Mat img1=imread("C://Users//huashuo111//Desktop//log原创 2017-12-15 20:57:27 · 631 阅读 · 0 评论 -
opencv之图像锐化
#include#include#includeusing namespace std;using namespace cv;int main(){ const char* imagename = "C://Users//huashuo111//Desktop//test2.bmp"; //从文件中读入图像 Mat img = imread(imagename原创 2017-12-13 18:27:05 · 2829 阅读 · 0 评论 -
opencv图像滤波——高斯滤波与中值滤波
#include#include#includeusing namespace std;using namespace cv;int main(){ const char* imagename = "C://Users//huashuo111//Desktop//路飞.jpg"; //从文件中读入图像 Mat img = imread(imagename);原创 2017-12-13 17:22:04 · 608 阅读 · 0 评论 -
opencv之图像均衡化
#include#include#includeusing namespace std;using namespace cv;int main(){ const char* imagename = "C://Users//huashuo111//Desktop//test2.bmp"; //从文件中读入图像 Mat img = imread(imagenam原创 2017-12-12 22:14:18 · 835 阅读 · 0 评论 -
opencv之图像直方图
#include#include#includeusing namespace std;using namespace cv;int main(){ const char* imagename = "C://Users//huashuo111//Desktop//test2.bmp"; //从文件中读入图像 Mat img = imread(imagenam原创 2017-12-12 21:44:50 · 297 阅读 · 0 评论 -
opencv算术运算:bitwise_and()
用bitwise_and裁剪一幅图的一部分:#include#includeusing namespace std;using namespace cv;int main(){ const char* imagename = "C://Users//huashuo111//Desktop//test2.bmp"; //从文件中读入图像 Mat img =原创 2017-12-12 20:02:23 · 9921 阅读 · 0 评论 -
《openCV算法精解》学习——18.04.10
不积跬步,无以至千里。不要担心走的太慢,每一步走扎实。1、opencv解压后有两个文件夹,"source"和"build",前者存放编译好的文件,也是在配置opencv中重要的工具。子文件doc中包含学习文档。 后者存放源码,其中modules里有core、highgui和imgproc。分别实现了数据结构、图像读取(UI)和图像处理基本方法。2、构造矩阵(3行2列):Mat m=Mat(3,2,...原创 2018-04-10 21:35:11 · 3728 阅读 · 1 评论