00转换字符


在2020年秋季学期人工神经网络课程中,需要将如下扫描的三幅字符转换成点阵信息。后面给出了使用Python程序进行转换后的结果。



#============================================================
# TEXTEXTRACT.PY               -- by Dr. ZhuoQing 2019-10-10
#
#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================from head import *
from PIL import Image#------------------------------------------------------------boxID = [308, 309, 310, 313, 312, 311, 314, 315, 316, 317, 320, 319, 318, 321, 322, 323, 324, 327, 326, 325, 328]imageDir = r'd:\temp'#------------------------------------------------------------
IMAGE_ROW = 9
IMAGE_COL = 7IMAGE_MATRIXHEIGHT = 0.8def image2Density(size, imagePixels):imageSize = sizeimageWidth = imageSize[0]imageHeight = imageSize[1]listDensity = []for i in range(IMAGE_ROW):startRow = int(i * imageHeight / IMAGE_ROW * IMAGE_MATRIXHEIGHT)endRow = int((i + 1) * imageHeight / IMAGE_ROW * IMAGE_MATRIXHEIGHT)for j in range(IMAGE_COL):startCol = int(j * imageWidth / IMAGE_COL)endCol = int((j + 1) * imageWidth / IMAGE_COL)pixelNum = (endRow - startRow - 1) * (endCol - startCol - 1)pixelSigma = 0for ii in range(startRow, endRow):for jj in range(startCol, endCol):try:pixelSigma += sum(imagePixels[jj, ii])except:printf('ii:%d,jj:%d'%(ii, jj))breakpixelSigma = int(pixelSigma / (pixelNum * 3))if pixelSigma > 200:pixelSigma = 0else:pixelSigma = 1listDensity.append(pixelSigma)oneHot = []for j in range(IMAGE_COL):startRow = int(imageHeight * IMAGE_MATRIXHEIGHT)endRow = int(imageHeight)startCol = int(j * imageWidth / IMAGE_COL)endCol = int((j + 1) * imageWidth / IMAGE_COL)pixelNum = (endRow - startRow - 1) * (endCol - startCol - 1)pixelSigma = 0for ii in range(startRow, endRow):for jj in range(startCol, endCol):try:pixelSigma += sum(imagePixels[jj, ii])except:printf('ii:%d,jj:%d'%(ii, jj))breakpixelSigma = int(pixelSigma / (pixelNum * 3))if pixelSigma > 250:pixelSigma = 0else:pixelSigma = 1oneHot.append(pixelSigma)return listDensity, oneHot#------------------------------------------------------------
cc = ord('A')
for id in boxID:imageFileName = 'char%d.BMP'%idsaveFile = os.path.join(imageDir, imageFileName)#    printf(saveFile)tspsaveimagebox(id, saveFile, -1)img = Image.open(saveFile)pixels = img.load()#    printf(img.size)
#    printf(pixels[0, 0])imageden, oneHot = image2Density(img.size, pixels)imageArray = array(imageden)imageArray = imageArray.reshape((-1, 7))#    printf('%c = %s'%(cc, str(imageden)))
#    cc = cc + 1printf(imageden)#    for a in imageArray:
#        printf(a)printf(oneHot)#    breaktspbeep(1200, 200)#------------------------------------------------------------
#        END OF FILE : TEXTEXTRACT.PY
#============================================================

01转换结果


[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0]
[1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0]
[0, 1, 0, 0, 0, 0, 0]
[0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0]
[0, 0, 1, 0, 0, 0, 0]
[1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 1, 1]
[0, 0, 0, 0, 0, 0, 1]
[0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0]
[0, 0, 0, 0, 0, 1, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0]
[1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0]
[0, 1, 0, 0, 0, 0, 0]
[0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0]
[0, 0, 1, 0, 0, 0, 0]
[1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0]
[0, 0, 0, 0, 0, 0, 1]
[0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0]
[0, 0, 0, 0, 0, 1, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1]
[1, 0, 0, 0, 0, 0, 0]
[1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0]
[0, 1, 0, 0, 0, 0, 0]
[0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0]
[0, 0, 1, 0, 0, 0, 0]
[1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 1, 1]
[0, 0, 0, 0, 0, 0, 1]
[0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0]
[0, 0, 0, 0, 0, 1, 0]
[1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1]
[0, 0, 0, 0, 1, 0, 0]
[1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0]
[0, 0, 0, 1, 0, 0, 0]

将扫描字符转换成点阵信息相关推荐

  1. 考研数据结构之串(4.4)——练习题之将串str中所有值为ch1的字符转换成ch2的字符(C表示)

    题目 将串str中所有值为ch1的字符转换成ch2的字符,如果str为空串,或者串中不含值为ch1的字符,则什么都不做. 分析 扫描整个串,发现值为ch1的字符用值为ch2的字符覆盖即可. 代码 核心 ...

  2. 扫描ppt转换成pdf软件

    扫描ppt转换成pdf软件 目前,许多信息资料需要转化成电子文档以便于各种应用及管理,但因信息数字化处理的方式落后,不但费时费力,而且资金耗费巨大,造成了大量文档资料的积压,因此急需一种快速高效的软件 ...

  3. mysql将字符转换成数字

    在操作mysql时,经常需要将字符转换成数字,这一步虽然简单,但不常用的话也很容易忘记,现将在网上找到的方法记录如下: 1.将字符的数字转成数字,比如'0'转成0可以直接用加法来实现 例如:将pony ...

  4. 带毫秒的字符转换成时间(DateTime)格式的通用方法

    C#自身有更好的方式,Net任意String格式转换为DateTime类型 ====================================================== 原文 ==== ...

  5. mysql怎么把字符变成数字_mysql将字符转换成数字

    在操作mysql时,经常需要将字符转换成数字,这一步虽然简单,但不常用的话也很容易忘记,现将在网上找到的方法记录如下: 1.将字符的数字转成数字,比如'0'转成0可以直接用加法来实现 例如:将pony ...

  6. js实现全角字符转换成半角字符

    在工作中用到将全角字符转换成半角的地方,就找了这个转换函数 //str:要转换的字符串 function DBC2SBC(str) {     var result="";     ...

  7. mysql 将 字符 转换成 数字

    在操作MySQL时,经常需要将字符转换成数字,这一步虽然简单,但不常用的话也很容易忘记,现将在网上找到的方法记录如下: 1.将字符的数字转成数字,比如'0'转成0可以直接用加法来实现 例如:将pony ...

  8. 将字符转换成带有圆圈的字符

    将字符转换成带有圆圈的字符 private string Convert(int m) { switch (m) { case 1: return "①"; case 2: ret ...

  9. c语言中ch1和ch2是什么意思,2020-05-26(C语言)1.将串str中所有值为ch1的字符转换成ch2的字符,如果str为空串,或者串中不含值为ch1的字符,则什么都不做.2.逆转函数...

    //1.将串str中所有值为ch1的字符转换成ch2的字符,如果str为空串,或者串中不含值为ch1的字符,则什么都不做.2.逆转函数 include include define MAXLEN 25 ...

最新文章

  1. 2022-2028年中国盲盒行业市场研究及前瞻分析报告
  2. 近期必读的6篇NeurIPS 2019零样本学习论文
  3. 2022-2028年中国医疗美容行业发展前景预测与投资战略分析报告
  4. Inconsistent behavior between text type in Webclient UI and backend customizing
  5. mysql周报内容范文_Mysql各种表格查询含实例,日报,周报,月报,时间差自动计算...
  6. [机器学习] XGB/LGB---自定义损失函数与评价函数
  7. 洛谷 P3367 【模板】并查集
  8. 一个数组分成两部分,让两部分的差最小
  9. java多态的简单例子_要JAVA的简单例子,继承\多态的,详细讲解运行的每一步
  10. Android OkHttp经验小结
  11. 【原创】搭建spark环境二
  12. mysql主主双机互备(三)
  13. R7000刷梅林固件一个小结(变砖解决)
  14. App推广渠道统计二维码扫码统计 - Xinstall
  15. Kylin使用Spark构建Cube
  16. 提高前端生产效率(PxCook工具推荐)
  17. Ubuntu18.04安装搜狗输入法使用时不能输入中文
  18. eclipse使用的常见问题
  19. 【Windows】快捷添加鼠标右键的菜单项
  20. 以一个应用为牵引走遍全栈体系——第一步先整体起个头

热门文章

  1. 各类商会协会单位类织梦模板(带手机端)
  2. 微软职位内部推荐-Senior Software Engineer II-Search
  3. 淘宝姐姐不要过滤掉js我们还是好朋友
  4. 整理Silverlight资源列表(四)——Silverlight案例补充
  5. 36晋级12第四场:评委弃权 无人晋级
  6. 用eclipse在windows下搭建cocos2d-x开发环境
  7. Python3快速入门(三)——Python3标准数据类型
  8. Analysis servlet
  9. java基础---JVM---java内存区域与内存溢出问题
  10. 实战篇:如何用Keras建立神经网络(附全部代码)