opencv基础知识
little_0605
一只奋进的小青年(*^▽^*)
展开
-
opencv基础操作(二)
(1)线性混合操作(两幅图像按权重相加)g(x)=(1-a)*f(x)+h(x) 相关API:addweighted()。a的取值范围为0到1之间,f(x)和h(x)为参与混合的两幅图像,g(x)表示输出图像,通过对两幅图像的每个像素值做线性加权得到最终的输出图像,两幅图像的大小和类型必须完全一致,(如果把图像当成一个矩阵),则两个矩阵相加的前提是维度必须一致,否则没有相加的意义。using na...原创 2018-03-07 08:48:08 · 612 阅读 · 0 评论 -
opencv基础操作(三)
一.膨胀与腐蚀常用的API:createTrackbar是Opencv中的API,其可在显示图像的窗口中快速创建一个滑动控件,用于手动调节阈值,具有非常直观的效果。具体定义如下:[cpp]view plaincopyCV_EXPORTSintcreateTrackbar(conststring&trackbarname,conststring&...原创 2018-03-08 08:33:05 · 519 阅读 · 0 评论 -
opencv基本操作(四)
(一)自己定义线性滤波器卷积和卷积如何工作,这个是知道的,卷积的作用就是模糊图像,提取边缘,锐化图像。常见的卷积核(算子)有robert算子,sobel算子,拉普拉斯算子,前两个算子是分x方向和y方向的,而拉普拉斯算子是提取整体图像的边缘。提取边缘时,sobel比robert算子效果好,自定义线性滤波器用的API是filter2D(src,dst,图像深度8或32,卷积核模板,锚点)。int ma...原创 2018-03-08 21:27:50 · 314 阅读 · 0 评论 -
opencv基本操作(五)
以下这一节不会再像之前那样详细介绍,主要是以理解概念为主,关于API介绍或者程序在视频中都有,以后用到知道去哪里找即可。(一)拉普拉斯算子作为一个卷积核,这是一个二阶的算子,是用来提取边缘的,主要是利用一阶导数最大的地方二阶导数为0这个特征来进行边缘提取,但是这个算子的噪声很明显。处理的流程:先高斯模糊去掉噪声,在转换为灰度图像,在拉普拉斯二阶导数计算,取绝对值,显示结果。(二)c...原创 2018-03-09 21:12:58 · 296 阅读 · 0 评论 -
opencv基础操作(一)
opencv基本的图像处理操作:(1)加载图像:imread(a,b);Mat src = imread("1.jpg");imread(某路径(绝对路径)下的文件名称,读取方式)读取图片文件,保存在Mat类型中IMREAD_UNCHANGED:以原图的形式读进来IMREAD_GRAYSCALE:以灰度图的形式读进来IMREAD_COLOR:以RGB彩色图的形式读进来(默认的形...原创 2018-03-06 09:30:44 · 3129 阅读 · 0 评论