小案例
文章平均质量分 92
HandsomeJing
这个作者很懒,什么都没留下…
展开
-
【opencv小案例-切边】仿射变换与切边
仿射变换仿射变换可以通过一系列的原子变换的复合来实现包括:平移(Translation)、缩放(Scale)、翻转(Flip)、旋转(Rotation)和错切(Shear).可以看做原矩阵和一个变换矩阵(3*3且最后一行是(0,0,1))的乘法平移(刚体变化,即不会产生形变),将每一点移到到(x+t , y+t),这是变换矩阵为:缩放变换 将每一点的横坐标放大或缩小sx倍,纵坐...原创 2019-08-18 22:00:13 · 512 阅读 · 0 评论 -
【opencv小案例-直线检测】形态学+HuoghLinesp
当我们提取图像中的直线时,可以使用HoughLinesP函数,但单纯的使用此函数时往往得不到理想的效果,这是我们可以先通过形态学操作处理图像后再通过霍夫直线变换提取图像中的直线直接通过HoughLinesP()原图处理后:可见效果并不是很明显形态学+HuoghLinesp先通过二值变换-形态学开操作(定义kernel数组size(20,1)可以查找出图像中的横向直线)-霍夫直线变换...原创 2019-08-19 12:01:36 · 593 阅读 · 0 评论 -
【opencv小案例-对象提取】阈值分割+形态学处理+面积横纵比过滤
在图像处理中我们常常需要提取目标图像中的ROI区域或这是某个形状,这样我们就需要观察对象的特征,根据它的特征去提取。这次我们在下图中提取其中的圆基本思路1、二值化处理2、形态学操作(开与闭)去除干扰3、提取轮廓,通过轮廓的面积大小与横纵比过滤4、获取目标图像数据并标记代码# include<opencv2\opencv.hpp># include <iostr...原创 2019-08-19 16:46:01 · 1348 阅读 · 0 评论 -
【opencv小案例-对象计数】关于粘连对象的计数
处理方法1、二值分割(整体threshold只有一个阈值)2、形态学处理3、距离变换4、阈值化二值分割(局部AdaptiveThreshold每个区域都有一个阈值)5、连通区域计数原图代码# include<opencv2\opencv.hpp># include <iostream># include <math.h>using na...原创 2019-08-20 22:49:16 · 1501 阅读 · 5 评论 -
【opencv小案例-透视校正】过二值分割 + 形态学方法 + Hough直线 +透视变换
在日常生活我们经常会看见这样的图片,它不是正对我们的,通过透视校正我们可以得到较好的图片。处理流程:1、二值处理2、形态学操作3、轮廓检测(通过横纵比去除干扰轮廓)4、hough直线5、计算交点坐标6、透视变换函数getPerspectiveTransform()根据输入和输出点获得图像透视变换的矩阵Mat GetPerspectiveTransform(const Poi...原创 2019-08-21 22:27:11 · 583 阅读 · 0 评论 -
【opencv-小案例-对象提取与测量】
有这么一幅图像我们要对它进行面积与周长的测量步骤:1、模糊处理2、二值化3、形态学处理3、最大轮廓检测4、计算面积与周长代码# include<opencv2\opencv.hpp># include <iostream>using namespace std;using namespace cv;int main(int argc, char*...原创 2019-08-22 10:43:19 · 352 阅读 · 0 评论