将python图片转为二进制文本的实例
写在最前面:
我在研究机器学习的过程中,给的数据集是手写数字图片被处理后的由0,1表达的txt文件,今天写一写关于图片转化为二进制txt文件的python实践
在这里,我们使用python中的Pillow库,Pillow库中有一个很重要的类是Image,可以对图片进行很多处理。
首先,导入Image类
from PIL import Image
打开图片
im=Image.open('1.jpg')
获取图片宽和高
width=im.size[0] height=im.size[1]
也可以这样
width,height=image_file.size
打开文件
fh=open('1.txt','w')
然后我们对图像的像素进行处理
获取每个像素点的像素值,这是一个三元元组
<class 'tuple'>
大家都知道,像素是由红、绿、蓝三色构成,每个的值0-255,当三色灰度都为0的时候,颜色为黑色,都为255是白色。利用这个特性,我们将三个值相加,如果是黑色,全部写1,其余颜色一律为0。
for i in range(height): for j in range(width): #获取像素点颜色 color=im.getpixel((j,i)) colorsum=color[0]+color[1]+color[2] if(colorsum == 0): fh.write('1') else: fh.write('0') fh.write('\n') fh.close()
看下效果图:
网上找的图片的处理效果都不好,这个是文本编辑打出来的,效果明显一点,反正就一个很简单的处理过程。
以上这篇将python图片转为二进制文本的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
python处理二进制数据的方法
本文实例讲述了python处理二进制数据的方法.分享给大家供大家参考.具体如下: #!/usr/env/env python #-*- coding: cp936 -*- ''''' add Head Infomation for pcm file ''' import sys import struct import os __author__ = 'bob_hu, hewitt924@gmail.com' __date__ = 'Dec 19,2011' __update__ = 'Dec
-
Python二进制串转换为通用字符串的方法
一个小问题 今天在做一个实验时,需要对一个包含中英文词汇的TXT文件进行读入和整理. Python代码的编码规则为UTF-8.在读入时,文件的每行是二进制串,形如: b'heroes\xff..... 在对每行进一步进行处理时,要求处理对象必须为通用字符串,所以: lineVec = str(line).strip().split('\t') 此时的lineVec的元素类型为string,但输出是仍然是 "b'heros\xff-.." ,仍然无法摆脱二进制标志的影响.然而,尴尬的是,
-
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
使用Python内置函数:bin().oct().int().hex()可实现进制转换. 先看Python官方文档中对这几个内置函数的描述: bin(x) Convert an integer number to a binary string. The result is a valid Python expression. If x is not a Python int object, it has to define an __index__() method that returns
-
Python实现的十进制小数与二进制小数相互转换功能
本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能.分享给大家供大家参考,具体如下: 十进制小数 ⇒ 二进制小数 乘2取整 对十进制小数乘2得到的整数部分和小数部分, 整数部分即是相应的二进制数码, 再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分. 如此不断重复,直到小数部分为0或达到精度要求为止. 第一次所得到为最高位,最后一次得到为最低位 如: 0.25的二进制 0.25*2=0.5 取整是0 0.5*2=1.0 取整是1 即0.25的二进制为
-
使用Python进行二进制文件读写的简单方法(推荐)
总的感觉,python本身并没有对二进制进行支持,不过提供了一个模块来弥补,就是struct模块. python没有二进制类型,但可以存储二进制类型的数据,就是用string字符串类型来存储二进制数据,这也没关系,因为string是以1个字节为单位的. import struct a=12.34 #将a变为二进制 bytes=struct.pack('i',a) 此时bytes就是一个string字符串,字符串按字节同a的二进制存储内容相同. 再进行反操作 现有二进制数据bytes,(其实就是字
-
python二进制读写及特殊码同步实现详解
python对二进制文件的操作需要使用bytes类,直接写入整数是不行的,如果试图使用f.write(123)向文件中以二进制写入123,结果提示参数不是bytes类型. import os import struct a = 0x1A2B3C4D b = 0x239875ad3d5ffaaa filepath = 'D:\\wygDocument\\python\\code\\abc.dat' f_in = open(filepath,'wb+') for value in range(1,5
-
Python 字符串与二进制串的相互转换示例
一个问题,在Python中,如何将一个字符串转换为相应的二进制串(01形式表示),并且能够将这个二进制串再转换回原来的字符串. 一个简单版本 def encode(s): return ' '.join([bin(ord(c)).replace('0b', '') for c in s]) def decode(s): return ''.join([chr(i) for i in [int(b, 2) for b in s.split(' ')]]) >>>encode('hello'
-
将python图片转为二进制文本的实例
写在最前面: 我在研究机器学习的过程中,给的数据集是手写数字图片被处理后的由0,1表达的txt文件,今天写一写关于图片转化为二进制txt文件的python实践 在这里,我们使用python中的Pillow库,Pillow库中有一个很重要的类是Image,可以对图片进行很多处理. 首先,导入Image类 from PIL import Image 打开图片 im=Image.open('1.jpg') 获取图片宽和高 width=im.size[0] height=im.size[1] 也可以这样
-
Python编译为二进制so可执行文件实例
通过cpython把python的文件转换为二进制文件,达到代码保护的目的 1.下载Cython-0.28.2.tar.gz python setup.py install安装 2.创建你需要打包成二进制的python文件 test.py def hello(s): print(s) 3.创建一个setup.py文件,内如如下: from distutils.core import setup from Cython.Build import cythonize setup( name = "t
-
python将图片转为矢量图的方法步骤
本文主要介绍了python图片转为矢量图,分享给大家,具体如下: import numpy as np import matplotlib.pyplot as plt import cv2 fig, ax = plt.subplots() plt.figure(1) image=cv2.imread("2.jpg") # you can specify the marker size two ways directly: # 这样一个一个像素太慢了故而要将同样颜色的坐标进行分类处理 c
-
Python读入mnist二进制图像文件并显示实例
图像文件是自己仿照mnist格式制作,每张图像大小为128*128 import struct import matplotlib.pyplot as plt import numpy as np #读入整个训练数据集图像 filename = 'train-images-idx3-ubyte' binfile = open(filename, 'rb') buf = binfile.read() #读取头四个32bit的interger index = 0 magic, numImages,
-
Python简单实现图片转字符画的实例项目
1. 原理 利用 PIL 库来获取图片并修改大小, 利用灰度值转换公式把每一个像素的 RGB 值转为灰度值 gray = int(0.2126*r+0.7152*g+0.0722*b) 再从字符集里获取对应的字符 asciis = list('M%$@#&WNBRwm8S5A4E3KXFPH69nsxeazgpqbdoctfhkyvuGZYVTUCI2QOD0L7Jjl1ri!^{}[]()/|;:*<>_~-,. ') 最后将字符连接起来并保存就完成了 2. 开始制作 2.1 导入所
-
Python使用get_text()方法从大段html中提取文本的实例
如下所示: <textarea rows="" cols="" name="id"><DIV style="TEXT-INDENT: 18pt; mso-char-indent-count: 2.0000" class=MsoNormal><SPAN style="FONT-FAMILY: 宋体; FONT-SIZE: 9pt; mso-spacerun: 'yes'; mso-font
-
Python 图片转数组,二进制互转操作
前言 需要导入以下包,没有的通过pip安装 import matplotlib.pyplot as plt import cv2 from PIL import Image from io import BytesIO import numpy as np 1.图片和数组互转 # 图片转numpy数组 img_path = "images/1.jpg" img_data = cv2.imread(img_path) # numpy数组转图片 img_data = np.linspace
-
Python调用百度AI实现图片上文字识别功能实例
目录 简介 步骤 安装百度AI库 注册百度AI开放平台 调用glob库 调用AipOcr库识别文字 可能会遇到的问题 批量操作 总结 简介 Python免费调用百度AI实现图片上面的文字识别 步骤 安装百度AI库 !pip install baidu-aip 注册百度AI开放平台 先注册百度AI,获得ID和密钥.注册方法可参考:注册方法 只需走到 "1.6 获取密钥" 即可.然后记录下自己的APP_ID.API_KEY.SECRET_KEY,就可以开始了. 调用glob库 glob库用
-
python实现的简单文本类游戏实例
本文实例讲述了python实现的简单文本类游戏实现方法.分享给大家供大家参考.具体实现方法如下: ############################################################ # - My version on the game "Dragon Realm". # - taken from the book "invent with python" by Al Sweigart. # - thanks for a grea
-
Python实现简单网页图片抓取完整代码实例
利用python抓取网络图片的步骤是: 1.根据给定的网址获取网页源代码 2.利用正则表达式把源代码中的图片地址过滤出来 3.根据过滤出来的图片地址下载网络图片 以下是比较简单的一个抓取某一个百度贴吧网页的图片的实现: # -*- coding: utf-8 -*- # feimengjuan import re import urllib import urllib2 #抓取网页图片 #根据给定的网址来获取网页详细信息,得到的html就是网页的源代码 def getHtml(url): pag
随机推荐
- 支付宝 接口开发帮助(asp,php,asp.net,jsp)
- 备份文件并上传至FTP服务器的bat代码
- ACCESS中关于SQL语句的转义字符
- 详解angular2封装material2对话框组件
- PHP开发框架kohana3.3.1在nginx下的伪静态设置例子
- 浅谈Tomcat三种运行模式
- js中javascript:void(0) 真正含义
- php无限遍历目录示例
- oracle资料库函式库
- 使用Python求解最大公约数的实现方法
- Android中在WebView里实现Javascript调用Java类的方法
- 举例讲解如何判断JavaScript中对象的类型
- php多重接口的实现方法
- mongodb添加arbiter节点的方法示例
- JQuery操作三大控件(下拉,单选,复选)的方法
- js 单引号替换成双引号,双引号替换成单引号的实现方法
- C#实现获取文本文件的编码的一个类(区分GB2312和UTF8)
- Android分页中显示出下面翻页的导航栏的布局实例代码
- 轻松掌握python设计模式之访问者模式
- 基于c# 接口的实例详解