没有合适的资源?快使用搜索试试~ 我知道了~
opencv实现轮廓高斯滤波平滑
25 下载量 197 浏览量
2020-08-18
18:45:33
上传
评论
收藏 62KB PDF 举报
温馨提示


试读
3页
主要为大家详细介绍了opencv实现轮廓高斯滤波平滑,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
资源推荐
资源详情
资源评论













opencv实现轮廓高斯滤波平滑实现轮廓高斯滤波平滑
主要为大家详细介绍了opencv实现轮廓高斯滤波平滑,文中示例代码介绍的非常详细,具有一定的参考价值,
感兴趣的小伙伴们可以参考一下
本文实例为大家分享了opencv实现轮廓高斯滤波平滑的具体代码,供大家参考,具体内容如下
一个小测试的题目:
在图像上点选,找到与点选处相邻的颜色相近的点集合,对该点集合提取轮廓,对该点集合轮廓平滑处理,显示处理结果。
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;
//************************************
// Method: findRegion 漫水填充
// FullName: findRegion
// Access: public
// Returns: vector<Point>
// Qualifier:
// Parameter: Mat img
// Parameter: Point pos
// Parameter: int LowDifference
// Parameter: int UpDifference
//************************************
vector<Point> findRegion(Mat img, Point pos, int LowDifference, int UpDifference)
{
Mat image = img.clone();
Mat imgBack = img.clone();
Rect ccomp;
Scalar pixel = image.at<Vec3b>(pos);
Scalar pixel2 = Scalar(255 - pixel[0], 255 - pixel[1], 255 - pixel[2], pixel[3]);
floodFill(image, pos, pixel2, &ccomp, Scalar(LowDifference, LowDifference, LowDifference),
Scalar(UpDifference, UpDifference, UpDifference));
Mat diff;
absdiff(image, imgBack, diff);
//统计所有非零像素
vector<Point> pt;
for (int i = 0; i < diff.rows; i++)
{
for (int j = 0; j < diff.cols; j++)
{
Point newPos(j, i);
Scalar pixel3 = diff.at<Vec3b>(newPos);
if (pixel3[0] != 0 || pixel3[1] != 0 || pixel3[2] != 0)
{
pt.push_back(newPos);
}
}
}
return pt;
}
//************************************
// Method: findPerimeter 从点集合中寻找轮廓点
// FullName: findPerimeter
// Access: public
// Returns: vector<Point>
// Qualifier:
// Parameter: vector<Point> pt
// Parameter: Size size
//************************************
vector<Point> findPerimeter(vector<Point> pt, Size size)
{
Mat imgGray(size, CV_8UC1, Scalar(0));
for (int i = 0; i < pt.size(); i++)
{
imgGray.at<uchar>(pt[i]) = 255;
}
std::vector<std::vector<cv::Point>> contours;
资源评论


weixin_38697940
- 粉丝: 7
- 资源: 920
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


安全验证
文档复制为VIP权益,开通VIP直接复制
