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中内置的日志模块logging用法详解
Jul 12 Python
Python运维之获取系统CPU信息的实现方法
Jun 11 Python
BP神经网络原理及Python实现代码
Dec 18 Python
Python学习笔记之集合的概念和简单使用示例
Aug 22 Python
Python 切分数组实例解析
Nov 07 Python
python 经典数字滤波实例
Dec 16 Python
python中的 zip函数详解及用法举例
Feb 16 Python
Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)
Apr 08 Python
python中如何进行连乘计算
May 28 Python
python 利用opencv实现图像网络传输
Nov 12 Python
Manjaro、pip、conda更换国内源的方法
Nov 17 Python
python基础之匿名函数详解
Apr 21 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
Ajax+PHP 边学边练之四 表单
2009/11/27 PHP
PHP的cURL库功能简介 抓取网页、POST数据及其他
2011/04/07 PHP
免费手机号码归属地API查询接口和PHP使用实例分享
2014/04/10 PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
2015/12/01 PHP
thinkPHP多域名情况下使用memcache方式共享session数据的实现方法
2016/07/21 PHP
laravel框架之数据库查出来的对象实现转化为数组
2019/10/23 PHP
发布BlueShow v1.0 图片浏览器(类似lightbox)blueshow.js 打包下载
2007/07/21 Javascript
jquery form表单提交插件asp.net后台中文解码
2010/06/12 Javascript
初窥JQuery(一)jquery选择符 必备知识点
2010/11/25 Javascript
详解JavaScript ES6中的Generator
2015/07/28 Javascript
javascript学习笔记整理(概述、变量、数据类型简介)
2015/10/25 Javascript
鼠标悬停小图标显示大图标
2016/01/22 Javascript
详解JavaScript模块化开发
2016/12/04 Javascript
Mobile Web开发基础之四--处理手机设备的横竖屏问题
2017/08/11 Javascript
jQuery实现DIV响应鼠标滑过由下向上展开效果示例【测试可用】
2018/04/26 jQuery
element-ui中select组件绑定值改变,触发change事件方法
2018/08/24 Javascript
Nodejs中的require函数的具体使用方法
2019/04/02 NodeJs
详解可以用在VS Code中的正则表达式小技巧
2019/05/14 Javascript
详解express使用vue-router的history踩坑
2019/06/05 Javascript
layui数据表格跨行自动合并的例子
2019/09/02 Javascript
element el-tree组件的动态加载、新增、更新节点的实现
2020/02/27 Javascript
JS数组方法reduce的用法实例分析
2020/03/03 Javascript
SpringBoot在yml配置文件中配置druid的操作
2020/11/16 Javascript
Python正则简单实例分析
2017/03/21 Python
Python 脚本拉取 Docker 镜像问题
2019/11/10 Python
使用Tensorboard工具查看Loss损失率
2020/02/15 Python
详解Selenium-webdriver绕开反爬虫机制的4种方法
2020/10/28 Python
阿里旅行:飞猪
2017/01/05 全球购物
阿迪达斯俄罗斯官方商城:adidas俄罗斯
2017/03/08 全球购物
俄罗斯优惠券网站:BIGLION
2017/05/21 全球购物
Agoda西班牙:全球特价酒店预订
2017/06/03 全球购物
雷蛇美国官网:Razer
2020/04/03 全球购物
大专生自我评价
2014/01/28 职场文书
小学开学典礼主持词
2014/03/19 职场文书
小学大队干部竞选稿
2015/11/20 职场文书
JS class语法糖的深入剖析
2022/07/07 Javascript