需要导入以下包,没有的通过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 图片 数组到二进制的互相转换相关推荐

  1. 彩色图片转为黑白灰阶图片

    彩色图片转为黑白灰阶图片, 使用算法如下. 贴上几张效果图: 附件为demo演示工具.

  2. python将图片转为字符_Python将图片转化为字符画

    简介 最近发现一个有趣的操作, 将一张图片转化为字符串的模式来显示! 如图 准备 首先需要安装一个CV模块用来导入图片的#pip install opencv-python 然后明确下程序的设计思路1 ...

  3. python图片转手绘_python图片转素描软件

    带来一款python图片转素描软件!顾名思义,它就是一款由python语音编写的小工具,可以很方便的将彩色图片转换成素描效果,特别适合那些不用PS滤镜的朋友们.欢迎有需要的前来西西下载体验! 工具简介 ...

  4. python将小数转为分数_Python分数

    python将小数转为分数 Python分数模块 (Python fractions module) As we know, a fraction is a number which represen ...

  5. python 识图点击_Python图片识别找坐标(appium通过识别图片点击坐标)

    ***如果只想了解图片相似度识别,直接看第一步即可 ***如果想了解appium根据图片识别点击坐标,需要看第一.二.三步 背景|在做UI测试时,发现iOS自定义的UI控件,appium识别不到.所以 ...

  6. python 识图点击_Python图片识别——人工智能篇

    一.安装pytesseract和PIL PIL全称:Python Imaging Library,python图像处理库,这个库支持多种文件格式,并提供了强大的图像处理和图形处理能力. 由于PIL仅支 ...

  7. python将四通道图片转为三通道图片

    问题: 在做实验的时候,使用的数据集是tif格式的图片(png图片格式也可以是四通道),由于是四通道的图片在使用 plt.imshow(img) 时发现无法绘制出图片,因此试着输出图片的shape,才 ...

  8. python报告水印怎么弄_python 图片处理-添加水印

    #-*- coding:utf-8 -*- importosfrom PIL importImage,ImageDraw,ImageFont#图片路径,水印,文件名 defwatermake_pict ...

  9. python生成中文字符画_Python 图片转字符画

    -- coding:utf-8 -- from PIL import Image import argparse 命令行输入参数处理 parser = argparse.ArgumentParser( ...

最新文章

  1. 实战:人脸识别的Arcface实现 | CSDN博文精选
  2. DeepMind提出强化学习新算法,教智能体从零学控制
  3. 事务和分布式事务解释
  4. jquery特效(1)—点击展示与隐藏全文
  5. 洛谷 P2919 [USACO08NOV]守护农场Guarding the Farm
  6. Oracle 使用DBMS_SCHEDULER创建定时任务
  7. SQL 审核:基于PG数据库插件hook的SQL规范审核工具
  8. 程序为什么非得装入内存再执行?
  9. 5年5亿美金,华为昇腾如何争夺AI开发者?
  10. Verilog实现交通灯(数电课设)----------旧
  11. 系统学习机器学习之增强学习(五)--马尔可夫决策过程策略TD求解(SARSA)
  12. 【PMP】项目整合管理
  13. Java中集合List,Map和Set的差别
  14. 使用触发器对学生表操作进行日志记录
  15. 福彩3D Matlab统计分析,基于ANSYS和遗传算法的3D打印桨叶结构优化设计的制作方法...
  16. Iptables+Tproxy+RedSocks2的udp转发相关
  17. 【毕业设计】深度学习指纹识别算法研究与实现 - python opencv
  18. jquery foreach循环
  19. Kubernetes详解(四十一)——Secret创建
  20. android基础夯实2

热门文章

  1. 单词世界 - 隐私政策
  2. 天之炼狱之超狼,双狼,超级蝙蝠变法
  3. Excel函数之datedif(计算两个日期之间的年或月或日)
  4. 合并采矿规范(Merged mining specification)
  5. QQ宠物养成秘籍经济实惠篇
  6. 计算机格式的语言设置,职称计算机考试WinowsXP辅导:语言和区域设置
  7. [Zookeeper-3.6.2源码解析系列]-13- 法定人对象QuorumPeer启动之加载磁盘快照与事务日志
  8. java学习2-javafx写GUI程序1
  9. 初中计算机网络和因特网教案,初中信息技术走进因特网教学设计
  10. 可重入锁-synchronized是可重入锁吗?