0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Python将二维数组输出为图片

jf_96884364 来源:jf_96884364 作者:jf_96884364 2023-01-11 16:18 次阅读

原文链接

使用Python读取二维数组,将二维数组输出为图片,并保存在本地。

代码如下:

# coding=utf8
from PIL import Image
import numpy as np
import imageio
import matplotlib.pyplot as pyplot

a = 300
b = 500
x = 20
y = 20
w = 40
h = 80

# 生成图片矩阵
def Gener_mat(a, b, x, y, w, h):
    img_mat = np.zeros((a, b), dtype=np.int_)
    for i in range(0, a):
        for j in range(0, b):
            img_mat[i][j] = 0
    for i in range(x, x + w):
        for j in range(y, y + h):
            img_mat[i][j] = 1
    return img_mat


# 输出图片
def out_img(data):
    data = (data * 255.0).astype('uint8')  # 转换数据类型
    new_im = Image.fromarray(data)  # 调用Image库,数组归一化

    # 显示新图片
    pyplot.imshow(data)
    pyplot.show()

    # 保存图片到本地
    imageio.imsave('new_img.jpg', new_im)


img_mat = Gener_mat(a, b, x, y, w, h)
out_img(img_mat)

其中 Gener_mat 函数用于生成一个300*500的矩阵,矩阵大部分值为0,在坐标(20, 20)处有一个40*80的区域,值为1。

矩阵转为的图片保存在与代码同级的目录下,图片为:

如果不能正常显示图片,出现报错:

MatplotlibDeprecationWarning: Support for FigureCanvases without a required_interactive_framework attribute was deprecated in Matplotlib 3.6 and will be removed two minor releases later.

是Pycharm设置的问题。点击菜单栏 File——Setting——Tools——Python Scientific,取消勾选“Show plots in tool window”,然后点击右下角的“OK”,即可完成配置。再次启动,就能正常显示了。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 代码
    +关注

    关注

    30

    文章

    4556

    浏览量

    66814
  • python
    +关注

    关注

    51

    文章

    4678

    浏览量

    83476
  • 数组
    +关注

    关注

    1

    文章

    409

    浏览量

    25595
收藏 人收藏

    评论

    相关推荐

    飞凌嵌入式ElfBoard ELF 1板卡-在线二维码生成器

    在线二维码生成器允许用户文本、网址、图片或其他数据转换为二维码形式。二维码是一种特殊类型的条形码,它可以通过扫描来快速识别和读取信息。在线
    发表于 04-24 17:00

    怎么在Framewin里显示二维码?

    各位前辈好,刚刚开始使用STemWin。现在一个Framewin里显示二维码,在Framewin初始化里调用二维码函数没有反应。请问需要怎么调用?
    发表于 04-16 08:27

    Labview调用Halcon识别二维

    Labview调用Halcon识别二维码 可一次识别多个二维码 使用Labview 2020编辑,halcon的版本是 19.11,32位
    发表于 02-21 16:31

    二维图片框 在 鼠标处 滚轮 缩放 图片,像 CAD 一样,,

    大家好,如何实现,二维图片框 在 鼠标处 滚轮 缩放 图片,像 CAD 一样,,*附件:图片在鼠标处缩放.rar
    发表于 01-07 21:02

    将一维数组转为二维python

    将一维数组转为二维数组是一个常见的问题,特别是在处理数据时。一维数组是由一个连续的数据块组成,而二维数组
    的头像 发表于 11-23 14:54 2265次阅读

    python如何定义二维数组

    Python中,可以通过使用列表嵌套的方式来定义二维数组。具体步骤如下: Step 1: 创建一个空的二维列表 要创建一个空的二维
    的头像 发表于 11-21 15:12 685次阅读

    python怎么创建二维数组

    如何创建二维数组Python中是一个常见的问题。在Python中,我们可以使用嵌套的列表(list of lists)或者使用NumPy库来创建
    的头像 发表于 11-21 15:10 1389次阅读

    用Labview将二维数组保存至Excel

    #Labview用Labview将二维数组保存至Excel
    发表于 09-21 14:57 12次下载

    C语言—二维数组介绍

    定义一个两行三列的二维数组,总共有6个元素
    的头像 发表于 09-11 14:51 555次阅读
    C语言—<b class='flag-5'>二维</b><b class='flag-5'>数组</b>介绍

    二维图片控制,鼠标 滚轮 缩放 图片 ,如何 像 CAD 一样 ,,位置 不变,

    各位老师,大家好,二维图片控制,鼠标 滚轮 缩放 图片,如何 像 CAD一样 ,,位置 不变,*附件:缩放.rar
    发表于 08-29 19:51

    OpenHarmony应用实现二维码扫码识别

    文件:​​QRCodeParser.ets​​,支持拍照识别二维码,还支持从相册选择二维图片进行识别。 我们首先看下如何解析从相机获取的二维
    发表于 08-23 17:00

    【verilog每日一练】reg型存储器声明(二维数组

    声明一个位宽8,深度32的二维数组变量ram
    发表于 08-22 09:45

    labview如何多次执行的二维数组拼接起来?

    想把循环分别为1、2、3执行后的结果拼接成1个2数组,纵向排列,最后的结果就是第1列是1-24,宽度是8的数组红框里的数据纵向拼接起来。 产生
    发表于 06-09 10:01

    荣小菜补钙记第59期_LabVIEW之二维图片拖拽与缩放 Demo

    荣小菜补钙记第59期_LabVIEW之二维图片拖拽与缩放同步更新于 WeChat:荣小菜在补钙大家好,我是荣小菜,本期用一个小Demo讲解在二维图片控件中实现
    发表于 05-19 18:59

    荣小菜补钙记第59期_LabVIEW之二维图片拖拽与缩放

    荣小菜补钙记第59期_LabVIEW之二维图片拖拽与缩放同步更新于 WeChat:荣小菜在补钙大家好,我是荣小菜,本期用一个小Demo讲解在二维图片控件中实现
    发表于 05-19 18:44