Python OpenCV去除字母后面的杂线操作


Posted in Python onJuly 05, 2020

原图

Python OpenCV去除字母后面的杂线操作

代码

src = cv2.imread("28.png")
  gray_src = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)
  #cv2.imshow("input image", src)
  #cv2.imshow("gray image", gray_src)
  #cv2.waitKey(0)
  gray_src = cv2.bitwise_not(gray_src)
  #二值化
  binary_src = cv2.adaptiveThreshold(gray_src, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, 15, -2)
  cv2.namedWindow("result image", cv2.WINDOW_AUTOSIZE)
  cv2.imshow("result image", binary_src)
  #cv2.waitKey(0)
  # 提取水平线  src.shape[1]得到src列数
  #hline = cv2.getStructuringElement(cv2.MORPH_RECT, (1, 1), (-1, -1))
  hline = cv2.getStructuringElement(cv2.MORPH_RECT, (1, 4), (-1, -1)) #定义结构元素,卷积核
  # 提取垂直线  src.shape[0]得到src行数
  vline = cv2.getStructuringElement(cv2.MORPH_RECT, (4, 1), (-1, -1))
  #vline = cv2.getStructuringElement(cv2.MORPH_RECT, (3, 3))
  # 这两步就是形态学的开操作——先腐蚀再膨胀
  #temp = cv2.erode(binary_src, hline)   #腐蚀
  #dst = cv2.dilate(temp, hline)      #膨胀
  # 开运算
  dst = cv2.morphologyEx(binary_src, cv2.MORPH_OPEN, hline)  #水平方向
  dst = cv2.morphologyEx(dst, cv2.MORPH_OPEN, vline)  #垂直方向
  #将二指图片的效果反转既黑色变白色,白色变黑色。 非操作
  dst = cv2.bitwise_not(dst)
  cv2.imshow("Final image", dst)
  cv2.waitKey(0)

结果图,还有一些点需要进一步处理

Python OpenCV去除字母后面的杂线操作

补充知识:Opencv 提取水平 垂直线,去除杂线,提取对象

Python OpenCV去除字母后面的杂线操作

我就废话不多说了,大家还是直接看代码吧~

#include<opencv2\opencv.hpp>
#include<iostream>
 
using namespace std;
using namespace cv;
 
int main(int argc, char* argv[])
{
	Mat src = imread("截图3.jpg");
	if (src.empty())
	{
		return -1;
	}
	String strInput = "input image";
	namedWindow(strInput, CV_WINDOW_AUTOSIZE);
	imshow(strInput, src);
	Mat dst;
	cvtColor(src, dst, CV_BGR2GRAY);//转灰度
	imshow("output grap image", dst);
	Mat binimg;
	adaptiveThreshold(~dst, binimg, 255, ADAPTIVE_THRESH_MEAN_C, ADAPTIVE_THRESH_MEAN_C, 15, -2);//转二值
	imshow("binary image", binimg);
	Mat hLine = getStructuringElement(MORPH_RECT, Size(src.cols/16, 1), Point(-1, -1));//水平结构
	Mat vLine = getStructuringElement(MORPH_RECT, Size(1, src.rows / 16), Point(-1, -1));//垂直结构
 
	Mat kernel = getStructuringElement(MORPH_RECT, Size(3, 3), Point(-1, -1));//去除杂线 提取对象
	Mat tmp;
	//erode(binimg, tmp, vLine);
	//dilate(tmp, dst, vLine);
	morphologyEx(binimg, dst, CV_MOP_OPEN,hLine);
	bitwise_not(dst, dst);//取反
	blur(dst, dst, Size(3, 3), Point(-1, -1));
	imshow("Final image", dst);
 
	waitKey(0);
	return 0;
}

以上这篇Python OpenCV去除字母后面的杂线操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用Berkeley DB数据库实例
Sep 26 Python
python从网络读取图片并直接进行处理的方法
May 22 Python
Python中的命令行参数解析工具之docopt详解
Mar 27 Python
对python多线程中Lock()与RLock()锁详解
Jan 11 Python
Python2与Python3的区别实例分析
Apr 11 Python
Python中的引用知识点总结
May 20 Python
Python3 实现减少可调用对象的参数个数
Dec 20 Python
python 实现按对象传值
Dec 26 Python
Python+PyQt5+MySQL实现天气管理系统
Jun 16 Python
Python爬取12306车次信息代码详解
Aug 12 Python
Python 整行读取文本方法并去掉readlines换行\n操作
Sep 03 Python
Python3使用tesserocr识别字母数字验证码的实现
Jan 29 Python
使用OpenCV去除面积较小的连通域
Jul 05 #Python
学python最电脑配置有要求么
Jul 05 #Python
浅谈OpenCV中的新函数connectedComponentsWithStats用法
Jul 05 #Python
python怎么对数字进行过滤
Jul 05 #Python
python主要用于哪些方向
Jul 05 #Python
python右对齐的实例方法
Jul 05 #Python
使用Python-OpenCV消除图像中孤立的小区域操作
Jul 05 #Python
You might like
PHP 创建标签云函数代码
2010/05/26 PHP
PHP 命名空间实例说明
2011/01/27 PHP
php学习笔记 面向对象中[接口]与[多态性]的应用
2011/06/16 PHP
php post大量数据时发现数据丢失问题解决方法
2015/06/20 PHP
PHP判断FORM表单或URL参数来的数据是否为整数的方法
2016/03/25 PHP
详谈phpAdmin修改密码后拒绝访问的问题
2017/04/03 PHP
javascript之ESC(第二类混淆)
2007/05/06 Javascript
[HTML/CSS/Javascript]WWTJS
2007/09/25 Javascript
jQuery实现美观的多级动画效果菜单代码
2015/09/06 Javascript
轻松掌握JavaScript单例模式
2016/08/25 Javascript
微信小程序 使用picker封装省市区三级联动实例代码
2016/10/28 Javascript
jQuery 移动端拖拽(模块化开发,触摸事件,webpack)
2016/10/28 Javascript
JavaScript中数组Array方法详解
2017/02/27 Javascript
jQuery实现页码跳转式动态数据分页
2017/12/31 jQuery
layui实现form表单同时提交数据和文件的代码
2019/10/25 Javascript
vue项目,代码提交至码云,iconfont的用法说明
2020/07/30 Javascript
Python线程中对join方法的运用的教程
2015/04/09 Python
在Python中使用SQLite的简单教程
2015/04/29 Python
pyQt4实现俄罗斯方块游戏
2018/06/26 Python
深入浅析Python获取对象信息的函数type()、isinstance()、dir()
2018/09/17 Python
python3使用pandas获取股票数据的方法
2018/12/22 Python
Python实现九宫格式的朋友圈功能内附“马云”朋友圈
2019/05/07 Python
总结Python图形用户界面和游戏开发知识点
2019/05/22 Python
python绘制多个子图的实例
2019/07/07 Python
python 安装教程之Pycharm安装及配置字体主题,换行,自动更新
2020/03/13 Python
耐克巴西官方网站:Nike巴西
2016/08/14 全球购物
美国办公用品购物网站:Quill.com
2016/09/01 全球购物
东方电视购物:东方CJ
2016/10/12 全球购物
英国休闲奢华的缩影:Crew Clothing
2019/05/05 全球购物
德国的各种媒体在线商店:Thalia.de(书籍、电子书、玩具等)
2020/10/08 全球购物
毕业生就业推荐信范文
2013/12/01 职场文书
入党思想汇报怎么写
2014/04/03 职场文书
社会实践活动报告
2015/02/05 职场文书
详解Nginx启动失败的几种错误处理
2021/04/01 Servers
Python中tkinter的用户登录管理的实现
2021/04/22 Python
mysql优化之query_cache_limit参数说明
2021/07/01 MySQL