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中的私有属性
Aug 21 Python
python动态网页批量爬取
Feb 14 Python
浅析Python中的多条件排序实现
Jun 07 Python
基于Python函数的作用域规则和闭包(详解)
Nov 29 Python
Python3.6日志Logging模块简单用法示例
Jun 14 Python
Python 中的range(),以及列表切片方法
Jul 02 Python
Flask框架Jinjia模板常用语法总结
Jul 19 Python
Python父目录、子目录的相互调用方法
Feb 16 Python
python之pyqt5通过按钮改变Label的背景颜色方法
Jun 13 Python
简单了解python的break、continue、pass
Jul 08 Python
python模块常用用法实例详解
Oct 17 Python
关于windows下Tensorflow和pytorch安装教程
Feb 04 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将gd生成的图片缓存到memcache的小例子
2013/06/05 PHP
浅析php中常量,变量的作用域和生存周期
2013/08/10 PHP
PHP实现基于PDO扩展连接PostgreSQL对象关系数据库示例
2018/03/31 PHP
PHP实现微信小程序人脸识别刷脸登录功能
2018/05/24 PHP
JavaScript Eval 函数使用
2010/03/23 Javascript
js抽奖实现随机抽奖代码效果
2013/12/02 Javascript
express的中间件basicAuth详解
2014/12/04 Javascript
js中flexible.js实现淘宝弹性布局方案
2020/06/23 Javascript
javascript实现label标签跳出循环操作
2016/03/06 Javascript
详解vue.js的devtools安装
2017/05/26 Javascript
JavaScript实现的斑马线表格效果【隔行变色】
2017/09/18 Javascript
使用vue开发移动端管理后台的注意事项
2019/03/07 Javascript
JS实现给数组对象排序的方法分析
2019/06/24 Javascript
Vue实现点击当前元素以外的地方隐藏当前元素(实现思路)
2019/12/04 Javascript
JS深入学习之数组对象排序操作示例
2020/05/01 Javascript
django简单的前后端分离的数据传输实例 axios
2020/05/18 Javascript
微信小程序实现多张图片上传功能
2020/11/18 Javascript
python pickle 和 shelve模块的用法
2013/09/16 Python
pip 错误unused-command-line-argument-hard-error-in-future解决办法
2014/06/01 Python
简介Python的collections模块中defaultdict类型的用法
2016/07/07 Python
儿童学习python的一些小技巧
2018/05/27 Python
Python数据集切分实例
2018/12/08 Python
python字符串和常用数据结构知识总结
2019/05/21 Python
Matplotlib自定义坐标轴刻度的实现示例
2020/06/18 Python
Python3.9最新版下载与安装图文教程详解(Windows系统为例)
2020/11/28 Python
css3制作动态进度条以及附加jQuery百分比数字显示
2012/12/13 HTML / CSS
瑜伽服装品牌:露露柠檬(lululemon athletica)
2017/06/04 全球购物
夜大毕业生自我评价分享
2013/11/10 职场文书
励志演讲稿范文
2014/04/29 职场文书
结对共建工作方案
2014/06/02 职场文书
运动会开幕式新闻稿
2015/07/17 职场文书
2016年10月份红领巾广播稿
2015/12/21 职场文书
《静夜思》教学反思
2016/02/17 职场文书
《好妈妈胜过好老师》:每个孩子的优秀都是有源头的
2020/01/03 职场文书
OpenCV-Python实现人脸磨皮算法
2021/06/07 Python
入门学习Go的基本语法
2021/07/07 Golang