通过读取文件之后,生成的图像数据一般是二维或三维数组,每个数组元素是8位字节大小。有时候从网络里接收到一串数据,它是字节顺序的,比如有30000个字节,想要把它转换为300X100的图像大小,这个怎么样操作呢?又或者想转换三维数组的彩色图像呢?又或者想从二维或三维数组转换为单个字节顺序从网络发送出去?

通过下面的代码来构造一个bytearray数组,bytearray是可变的bytes数据类型,可以通过bytearray创建和定义。用下面代码来构造3万个随机字节:

randBytes = bytearray(os.urandom(30000))

os.urandom函数随即产生n个字节的字符串,可以作为随机加密key使用,在这里把这些数据当作图像使用。接着需要把bytearray的一维数组转换为np.array的一维数组,如下:

flat = np.array(randBytes)

这时就可以得到np.array数组的形式,就可以对数组进行变换了,比如变换为二维的灰度图像数组,或三维彩色图像数组,当然要数组的元素个数符合H*W或者H*W*3的格式才能转换,如下:

grayImage = flat.reshape(100, 300)

colorImage = flat.reshape(100, 100, 3)

还可以进行逆转换,下面是把灰度图像数组转换为一维的数组:

flatGray = grayImage.flatten()

上面所有内容可以使用下面的例子来演示:

#python 3.7.4,opencv4.1

#蔡军生 https://blog.csdn.net/caimouse/art

python 读取图片成为一维数组_在OpenCV里图像数据与一维数组转换相关推荐

  1. 在OpenCV里图像数据与一维数组转换

    通过读取文件之后,生成的图像数据一般是二维或三维数组,每个数组元素是8位字节大小.有时候从网络里接收到一串数据,它是字节顺序的,比如有30000个字节,想要把它转换为300X100的图像大小,这个怎么 ...

  2. python读取图片文字为表格_利用python将图片转换成excel文档格式

    前言 本文主要介绍了关于利用python将图片转换成excel文档的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 实现步骤 读取图像,获取图像每个像素点的RGB值: 根据 ...

  3. python读取视频流做人脸识别_基于OpenCV和Keras实现人脸识别系列——二、使用OpenCV通过摄像头捕获实时视频并探测人脸、准备人脸数据...

    基于OpenCV和Keras实现人脸识别系列手记: 项目完整代码参见Github仓库. 本篇是上面这一系列手记的第二篇. 在Opencv初接触,图片的基本操作这篇手记中,我介绍了一些图片的基本操作,而 ...

  4. python读取图片、保存图片的方法

    转自:https://jingyan.baidu.com/article/1876c852572d2f890b137609.html 分步阅读 本文介绍一下,python读取图片.保存图片的方法. 工 ...

  5. python读取图片的格式_python读取图片并修改格式与大小的方法

    本文实例为大家分享了python读取图片并修改文件大小的具体代码,供大家参考,具体内容如下 # Author:NDK # -*- coding:utf-8 -*- from PIL import Im ...

  6. [Python开发] 使用python读取图片的EXIF

    使用python读取图片的EXIF 方法 使用PIL.Image读取图片的EXIF. 使用https://pypi.python.org/pypi/ExifRead 读取图片的EXIF,得到EXIF标 ...

  7. python读取图片格式_Python读取图片尺寸、图片格式

    Python读取图片尺寸.图片格式 需要用到PIL模块,使用pip安装Pillow.Pillow是从PIL fork过来的Python 图片库. from PIL import Image im = ...

  8. Android Studio调用python读取图片(使用服务器paddlehub处理图片)

    Android Studio调用python读取图片 一.主要任务 二.环境配置 1.创建一个android studio项目 2.配置项目gradle 3.配置app下的gradle 三.demo测 ...

  9. vue 数组中嵌套数组_来,一起聊聊Excel中的数组

    有人说数组是Excel函数的精华,也有人说数组是Excel函数的糟粕,男说男有理女说女有爱,各有各的理由--所以王源说世间没有真正的感同身受.但不管怎么说吧,数组作为Excel函数进阶后的知识,是相当 ...

最新文章

  1. EasyUi 改变 selelct 的 下拉内容 div 的高度
  2. 给自己出的iOS面试题
  3. Facebook推出VR版远程办公应用,白板共享、手势/键盘追踪等技能解锁沉浸式开会体验...
  4. 在VS2010下使用 UNICODE 和 ANSI 的混合编程
  5. pycharm报错(Non-zero exit code (2))与手动安装报错
  6. 什么版本测试通过就能发布?
  7. linux 清空catalina.out日志 不需要重启tomcat(五种方法)【转】
  8. CH - 0802 占卜DIY(简单模拟,水题)
  9. chrome 70 android,Android版Chrome Beta 70 (70.0.3538.17) 已发布
  10. jQuery中append、appendTo、prepend、prependTo、before、insertBefore、after与insertAfter方法注意事项...
  11. 如何使用 Cisdem Video Converter 在 Mac 上将 MOV 转换为 MP3
  12. token令牌防止重复提交
  13. Java开发笔记(一百四十二)JavaFX的对话框
  14. 多头注意力比单头好在哪?
  15. 计算机课件网站,课件-优秀课件大全-瑞文网课件频道
  16. P5304旅行者(比bk201还要流氓的解法)
  17. Grasshopper脚本电池处理全站仪数据,生成建筑、线状地物和地形
  18. 如何判断用户是否关注微信订阅号,亲测实战步骤
  19. Linux 知:coredump
  20. python界面实现点餐系统_基于PythonFlask的网上点餐系统管理员后台开发

热门文章

  1. MFC 在其他的类中引用Dlg类方法
  2. 新手做网站优化要思考三个本质问题!
  3. 【论文阅读】SML:标准最大logits
  4. Google I/O 2021 发布 Flutter 2.2
  5. 基于PHP+小程序(MINA框架)+Mysql数据库的校园二手书交易小程序系统设计与实现
  6. cmath库里的常用函数
  7. 耳机不分主从是什么意思_【“沃”新品】TWS真无线蓝牙耳机 彰显品质生活!...
  8. IQD文件模板以及cs7g.ini信息
  9. 如何更改母版的公司名称及logo
  10. 华为云桌面Workspace,让你的办公更加舒适惬意