OpenCV实现直线检测并消除
作者:Leonwenbin 时间:2023-07-12 20:44:36
本文实例为大家分享了OpenCV实现直线检测并消除的具体代码,供大家参考,具体内容如下
很简单,代码如下
#include<iostream>
#include<opencv.hpp>
using namespace cv;
using namespace std;
int main()
{
Mat img, dst, img_gary, img_bin, temp, r_line, c_line, kernel;
char INPUT[] = "input";
char OUTPUT[] = "output";
char GRAY_IMG[] = "gary image";
char BIN_IMG[] = "binary image";
char DST_IMG[] = "final image";
img = imread("D:\\OpenCV\\images\\demo_test_2.jpg");
if (img.empty())
{
cout << "image loading failed..." << endl;
return -1;
}
namedWindow(INPUT, WINDOW_AUTOSIZE);
imshow(INPUT, img);
cvtColor(img, img_gary, COLOR_BGR2GRAY);
imshow(GRAY_IMG, img_gary);
adaptiveThreshold(~img_gary, img_bin, 255, ADAPTIVE_THRESH_MEAN_C, THRESH_BINARY, 15, -2);
imshow(BIN_IMG, img_bin);
//水平结构元素
r_line = getStructuringElement(MORPH_RECT, Size(img.cols / 16, 1), Point(-1, -1));
//垂直结构元素
c_line = getStructuringElement(MORPH_RECT, Size(1, img.rows / 16), Point(-1, -1));
kernel = getStructuringElement(MORPH_RECT, Size(4, 4), Point(-1, -1));
erode(img_bin, temp, kernel);
dilate(temp, dst, kernel);
//erode(img_bin, temp, r_line);
//dilate(temp, dst, r_line);
//morphologyEx(img_bin, dst, MORPH_OPEN, c_line);
bitwise_not(dst, dst);
//blur(dst, dst, Size(3, 3), Point(-1, -1));
imshow(DST_IMG, dst);
waitKey(0);
return 0;
}
放几张效果图
原图
处理结果
来源:https://blog.csdn.net/weixin_43788499/article/details/84981528
标签:OpenCV,检测,消除
0
投稿
猜你喜欢
C#使用System.Environment获取电脑的相关属性
2023-11-08 21:26:39
Java中IO流文件读取、写入和复制的实例
2023-08-12 03:23:29
Mybatis-plus自定义SQL注入器查询@TableLogic逻辑删除后的数据详解
2023-04-09 22:36:45
Feign调用可重试的最佳方案分享
2021-06-09 12:19:23
Android中ListActivity用法实例分析
2022-08-14 21:52:34
Android四大组件之BroadcastReceiver详解
2023-03-17 02:55:08
Android入门教程之ListView的具体使用详解
2022-02-12 06:35:59
MyBatis-Plus多表联查的实现方法(动态查询和静态查询)
2023-11-23 22:26:45
Java File类的概述及常用方法使用详解
2023-11-28 13:06:28
详解Android应用main函数的调用
2021-09-30 12:01:19
java直接插入排序示例
2021-09-27 15:53:35
Android仿qq分组管理的第三方库
2023-08-27 05:31:21
Java使用Preference类保存上一次记录的方法
2023-05-08 01:49:14
Android studio 3.0安装配置方法图文教程
2021-05-26 14:48:42
android开发去除标题栏的方法
2021-06-30 19:11:29
浅析SpringCloud Alibaba-Nacos 作为注册中心示例代码
2022-12-04 14:24:00
基于Android平台实现拼图小游戏
2021-07-27 16:48:12
java实现PDF转图片的方法
2021-05-24 04:29:59
C#简单获取时间差的小例子
2022-02-20 10:12:34
java基础之数组常用操作总结(必看篇)
2022-12-09 03:32:17