python将图片转为二进制_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(0,255,100*100*3).reshape(100,100,-1).astype(np.uint8)
cv2.imwrite("img.jpg",img_data) # 在当前目录下会生成一张img.jpg的图片
2.图片和二进制格式互转
# 以 二进制方式 进行图片读取
with open("img.jpg","rb") as f:
img_bin = f.read() # 内容读取
# 将 图片的二进制内容 转成 真实图片
with open("img.jpg","wb") as f:
f.write(img_bin) # img_bin里面保存着 以二进制方式读取的图片内容,当前目录会生成一张img.jpg的图片
3.数组 和 图片二进制数据互转
"""
以上两种方式"合作"也可以实现,但是中间会有对外存的读写
一般这些到磁盘的IO操作还是很耗时间的
所以在内存直接处理会较好
"""
# 将数组转成 图片的二进制数据
img_data = np.linspace(0,255,100*100*3).reshape(100,100,-1).astype(np.uint8)
ret,buf = cv2.imencode(".jpg",img_data)
img_bin = Image.fromarray(np.uint8(buf)).tobytes()
# 将图片二进制数据 转为数组
img_data = plt.imread(BytesIO(img_bin),"jpg")
print(type(img_data))
print(img_data.shape)
"""
out:
(100, 100, 3)
"""
python将图片转为二进制_python 图片 数组到二进制的互相转换相关推荐
- 彩色图片转为黑白灰阶图片
彩色图片转为黑白灰阶图片, 使用算法如下. 贴上几张效果图: 附件为demo演示工具.
- python将图片转为字符_Python将图片转化为字符画
简介 最近发现一个有趣的操作, 将一张图片转化为字符串的模式来显示! 如图 准备 首先需要安装一个CV模块用来导入图片的#pip install opencv-python 然后明确下程序的设计思路1 ...
- python图片转手绘_python图片转素描软件
带来一款python图片转素描软件!顾名思义,它就是一款由python语音编写的小工具,可以很方便的将彩色图片转换成素描效果,特别适合那些不用PS滤镜的朋友们.欢迎有需要的前来西西下载体验! 工具简介 ...
- python将小数转为分数_Python分数
python将小数转为分数 Python分数模块 (Python fractions module) As we know, a fraction is a number which represen ...
- python 识图点击_Python图片识别找坐标(appium通过识别图片点击坐标)
***如果只想了解图片相似度识别,直接看第一步即可 ***如果想了解appium根据图片识别点击坐标,需要看第一.二.三步 背景|在做UI测试时,发现iOS自定义的UI控件,appium识别不到.所以 ...
- python 识图点击_Python图片识别——人工智能篇
一.安装pytesseract和PIL PIL全称:Python Imaging Library,python图像处理库,这个库支持多种文件格式,并提供了强大的图像处理和图形处理能力. 由于PIL仅支 ...
- python将四通道图片转为三通道图片
问题: 在做实验的时候,使用的数据集是tif格式的图片(png图片格式也可以是四通道),由于是四通道的图片在使用 plt.imshow(img) 时发现无法绘制出图片,因此试着输出图片的shape,才 ...
- python报告水印怎么弄_python 图片处理-添加水印
#-*- coding:utf-8 -*- importosfrom PIL importImage,ImageDraw,ImageFont#图片路径,水印,文件名 defwatermake_pict ...
- python生成中文字符画_Python 图片转字符画
-- coding:utf-8 -- from PIL import Image import argparse 命令行输入参数处理 parser = argparse.ArgumentParser( ...
最新文章
- 实战:人脸识别的Arcface实现 | CSDN博文精选
- DeepMind提出强化学习新算法,教智能体从零学控制
- 事务和分布式事务解释
- jquery特效(1)—点击展示与隐藏全文
- 洛谷 P2919 [USACO08NOV]守护农场Guarding the Farm
- Oracle 使用DBMS_SCHEDULER创建定时任务
- SQL 审核:基于PG数据库插件hook的SQL规范审核工具
- 程序为什么非得装入内存再执行?
- 5年5亿美金,华为昇腾如何争夺AI开发者?
- Verilog实现交通灯(数电课设)----------旧
- 系统学习机器学习之增强学习(五)--马尔可夫决策过程策略TD求解(SARSA)
- 【PMP】项目整合管理
- Java中集合List,Map和Set的差别
- 使用触发器对学生表操作进行日志记录
- 福彩3D Matlab统计分析,基于ANSYS和遗传算法的3D打印桨叶结构优化设计的制作方法...
- Iptables+Tproxy+RedSocks2的udp转发相关
- 【毕业设计】深度学习指纹识别算法研究与实现 - python opencv
- jquery foreach循环
- Kubernetes详解(四十一)——Secret创建
- android基础夯实2
热门文章
- 单词世界 - 隐私政策
- 天之炼狱之超狼,双狼,超级蝙蝠变法
- Excel函数之datedif(计算两个日期之间的年或月或日)
- 合并采矿规范(Merged mining specification)
- QQ宠物养成秘籍经济实惠篇
- 计算机格式的语言设置,职称计算机考试WinowsXP辅导:语言和区域设置
- [Zookeeper-3.6.2源码解析系列]-13- 法定人对象QuorumPeer启动之加载磁盘快照与事务日志
- java学习2-javafx写GUI程序1
- 初中计算机网络和因特网教案,初中信息技术走进因特网教学设计
- 可重入锁-synchronized是可重入锁吗?