python实现图片中文字分割效果


Posted in Python onJuly 22, 2019

本文实例为大家分享了python实现图片中文字分割的具体代码,供大家参考,具体内容如下

1、原始图片(包含数字):

python实现图片中文字分割效果

结果图:

python实现图片中文字分割效果

2、原始图片(包含文字):

python实现图片中文字分割效果

结果图:

python实现图片中文字分割效果

3、代码如下:

import cv2
import numpy as np
 
path = 'test.jpg'
root = 'output\\'
# 图像resize
dsize = 36
img = cv2.imread(path)
data = np.array(img)
height = data.shape[0]
width = data.shape[1]
# 设置最小的文字像素高度
min_val = 10
 
start_i = -1
end_i = -1
# 存放每行的起止坐标
rowinfo = []
 
# 行分割
for i in range(height):
 
 # 行中有字相关信息
 if (not data[i].all()):
 end_i = i
 if(start_i < 0):
 start_i = i
 pass
 # 行中无字相关信息
 elif (data[i].all() and start_i >= 0):
 if(end_i - start_i >= min_val):
 rowinfo.append((start_i, end_i))
 pass
 start_i, end_i = -1, -1
print(rowinfo)
 
# 列分割
start_j = -1
end_j = -1
# 最小文字像素宽度
min_val_word = 5
# 分割后保存编号
number = 0
for start, end in rowinfo:
 for j in range(width):
 # 列中有字相关信息
 if(not data[start: end, j].all()):
 end_j = j
 if(start_j < 0):
  start_j = j
  pass
 # 列中无字信息
 elif(data[start: end, j].all() and start_j >= 0):
 if(end_j - start_j >= min_val_word):
 img = data[start:end, start_j: end_j]
 im2save = cv2.resize(img, (dsize, dsize)) #归一化处理
 cv2.imwrite(root + '%d.jpg' % number, im2save)
 number += 1
 pass
 start_j, end_j = -1, -1

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现简单多线程任务队列
Feb 27 Python
Python中MySQL数据迁移到MongoDB脚本的方法
Apr 28 Python
总结网络IO模型与select模型的Python实例讲解
Jun 27 Python
Python中__init__.py文件的作用详解
Sep 18 Python
详解Python3.6安装psutil模块和功能简介
May 30 Python
Python判断以什么结尾以什么开头的实例
Oct 27 Python
Python实现查找最小的k个数示例【两种解法】
Jan 08 Python
使用python实现kNN分类算法
Oct 16 Python
python字符串格式化方式解析
Oct 19 Python
Python 实现日志同时输出到屏幕和文件
Feb 19 Python
Django Xadmin多对多字段过滤实例
Apr 07 Python
详解Python直接赋值,深拷贝和浅拷贝
Jul 09 Python
django用户登录验证的完整示例代码
Jul 21 #Python
Python Threading 线程/互斥锁/死锁/GIL锁
Jul 21 #Python
详解Django模版中加载静态文件配置方法
Jul 21 #Python
django数据库自动重连的方法实例
Jul 21 #Python
django使用django-apscheduler 实现定时任务的例子
Jul 20 #Python
python 自定义装饰器实例详解
Jul 20 #Python
Python 列表去重去除空字符的例子
Jul 20 #Python
You might like
php while循环得到循环次数
2013/10/26 PHP
php获取一定范围内取N个不重复的随机数
2016/05/28 PHP
PHP Redis扩展无法加载的问题解决方法
2019/08/22 PHP
jquery获取input的value问题说明
2010/08/19 Javascript
JQuery控制Radio选中方法分析
2015/05/29 Javascript
jQuery中hover与mouseover和mouseout的区别分析
2015/12/24 Javascript
JavaScript实现输入框(密码框)出现提示语
2016/01/12 Javascript
JS控制层作圆周运动的方法
2016/06/20 Javascript
React+react-dropzone+node.js实现图片上传的示例代码
2017/08/23 Javascript
浅谈Angular 中何时取消订阅
2017/11/22 Javascript
koa大型web项目中使用路由装饰器的方法示例
2019/04/02 Javascript
vue实现点击追加选中样式效果
2019/11/01 Javascript
高效jQuery选择器的5个技巧实例分析
2019/11/26 jQuery
JS实现移动端双指缩放和旋转方法
2019/12/13 Javascript
vue计算属性+vue中class与style绑定(推荐)
2020/03/30 Javascript
[04:11]DOTA2亚洲邀请赛小组赛第一日 TOP10精彩集锦
2015/01/30 DOTA
[51:17]完美世界DOTA2联赛循环赛Inki vs DeMonsTer 第二场 10月30日
2020/10/31 DOTA
Python使用新浪微博API发送微博的例子
2014/04/10 Python
以Flask为例讲解Python的框架的使用方法
2015/04/29 Python
Python实现从SQL型数据库读写dataframe型数据的方法【基于pandas】
2019/03/18 Python
python 在某.py文件中调用其他.py内的函数的方法
2019/06/25 Python
Python库skimage绘制二值图像代码实例
2020/04/10 Python
利用pandas向一个csv文件追加写入数据的实现示例
2020/04/23 Python
Pythonic版二分查找实现过程原理解析
2020/08/11 Python
施华洛世奇意大利官网:SWAROVSKI意大利
2018/07/23 全球购物
Android interview questions
2016/12/25 面试题
服务承诺书怎么写
2014/05/24 职场文书
羽毛球社团活动总结
2014/06/27 职场文书
思想作风纪律整顿心得体会
2014/09/04 职场文书
2014年信访工作总结
2014/11/17 职场文书
瘦西湖导游词
2015/02/03 职场文书
公务员处分决定书
2015/06/25 职场文书
五年级数学教学反思
2016/02/16 职场文书
某药房的新员工入职告知书!
2019/07/15 职场文书
MySql数据库 查询时间序列间隔
2022/05/11 MySQL
Docker与K8s关系介绍不会Docker也可以使用K8s
2022/06/25 Servers