不知不觉中秋天悄悄的来了,天气开始转凉,每天匆匆忙忙的在路上,顾不得身边的变化,一抬眼,竟因秋叶久久驻足,今天我用Python把秋日里最美的景色做成了这种效果:NumPy做图像处理不香吗?先上图↓

一片落叶渲染了秋色;

一季落花沧桑了流年。

图像灰度处理

处理成三个通道的图像

在Python中进行图像处理,有三个工具:OpenCV、SciKit-Image和Pillow。

但是,这里我们将使用最简单的方法NumPy来进行图像处理。在对图像进行深度学习的时候,我们经常需要对图片进行处理,包括图像灰度、变色、翻转、压缩、截取等,此时就可以使用Numpy来处理。这也是学习NumPy的大好机会。

NumPy更像是一个魔方,它是Python数组计算、矩阵运算和科学计算的核心库,NumPy这个词来源于Numerical和Python两个单词。NumPy提供了一个高性能的数组对象,让我们轻松创建一维数组、二维数组和多维数组,以及大量的函数和方法,帮助我们轻松地进行数组计算,从而广泛地应用于数据分析、机器学习、图像处理和计算机图形学、数学任务等领域当中。

完整代码如下:

import numpy as npimport matplotlib.pyplot as plt
img=plt.imread("tree1.jpg")   #读取图片plt.imshow(img)   #传入数组显示对应颜色
# 图像灰度处理
# img为三维的数组,最高维是图像的高,次高维是图像的宽,最低维[R,G,B]是颜色值grayimg=np.array([0.299,0.587,0.114])   #灰度公式的固定值x=np.dot(img,grayimg) #将数组img(RGB颜色值)和数组n2(灰度公式的固定值)中的每个元素进行点乘运算plt.imshow(x,cmap="gray")   #传入数组显示灰度plt.show()  #显示图像
# 三个通道的图像R_img = img.copy()
R_img[:,:, [0,2]]=0
G_img = img.copy()
G_img[:,:, [2,1]]=0
B_img = img.copy()
B_img[:,:, [0,1]]=0# 创建子图fig,ax = plt.subplots(1,4)# 显示图像ax[0].imshow(img)
ax[1].imshow(R_img)
ax[2].imshow(G_img)
ax[3].imshow(B_img)# 设置画布大小fig.set_size_inches(7, 4)# 自动调整子图参数,使之填充整个图像区域plt.tight_layout()
plt.show()

推荐图书:

全彩版《Python数据分析从入门到实践》这本书对Numpy模块进行了详细的介绍,并配备了各种示意图,使读者轻松了解NumPy、学习NumPy。现在购买还享满100减50哦~

点击购买《Python数据分析从入门到实践》

End

目前100000+人已关注加入我们

       

       

点击阅读原文

进入明日科技京东自营店↓↓↓

python 三维数组_NumPy处理图像不香吗?我用Python把秋日里最美的景色做成了这种效果~...相关推荐

  1. python图像切面numpy_NumPy做图像处理不香吗?我用Python把秋日里最美的景色做成了这种效果~...

    一片落叶渲染了秋色:一季落花沧桑了流年. 不知不觉中秋天悄悄的来了,天气开始转凉,每天匆匆忙忙的在路上,顾不得身边的变化,一抬眼,竟因秋叶久久驻足! 我用Python把秋日里最美的景色做成了这种效果~ ...

  2. python三维数组知识点

    python三维数组知识点 三维数组中每一个元素表示 代码块 结果图: 示意图: 第一个平面中的数字表示: 第二个平面中的数字表示: 第三个(维度 )平面中的数字表示: 三维切片: 结果图 三维数组中 ...

  3. python 三维数组,numpy中np.shape的理解

    python 三维数组,numpy中np.shape的应用 直接贴图对于shape函数一般表示输出数组的形状,对于二维数组就是输出行与列,对于三维数组,shape[0]表示三维数组中包含多少个二维数组 ...

  4. python三维数组转置_numpy.transpose对三维数组的转置方法

    如下所示: import numpy as np 三维数组 arr1 = np.arange(16).reshape((2, 2, 4)) #[[[ 0 1 2 3] # [ 4 5 6 7]] # ...

  5. python三维数组可视化_【学习笔记】Python科学计算三维可视化(黄天羽、嵩天)(学习中。。)...

    0 导学 目的:掌握利用三维效果表达科学和工程数据的能力 传播一种思想:可视化技术是数据之眼 内容组织: 流体数据的标量可视化.矢量可视化实例 三维扫描数据(模型/地形)可视化实例 三维地球场景可视化 ...

  6. Python 三维数组转化为二维数组 和MATLAB的reshape函数结果一致

    最近在把Matlab的toolbox转到Python语言,涉及到了很多矩阵运算,经常会用到Matlab中的reshape函数,但是Python和它reshape的结果总不一致,导致我最后Python画 ...

  7. Python三维数组

    Python自带的好像没有三维数组,但是我最近有用到过,下面讲讲如何使用.numpy库提供了大量数学函数,可以直接调用即可. import numpy as npdata_array = np.zer ...

  8. python三维数组切片_【NumPy学习指南】day4 多维数组的切片和索引

    ndarray支持在多维数组上的切片操作.为了方便起见,我们可以用一个省略号(...)来 表示遍历剩下的维度. (1)举例来说,我们先用arange函数创建一个数组并改变其维度,使之变成一个三维数组: ...

  9. python 三维数组找最小值

    #声明三维数组 num=[[[33,45,67],[23,71,66],[55,38,66]], \[[21,9,15],[38,69,18],[90,101,89]]] value=num[0][0 ...

最新文章

  1. [转]cocos2d-x
  2. 微服务为什么一定要选spring cloud?
  3. python输出姓名年龄_Python格式化输出--%s,%d,%f的代码解析
  4. 通过Mybatis建表问题
  5. 两个变量相乘_自动控制原理-信号流图与系统状态变量传递函数之间联系如此紧密...
  6. Linux 解决文件删除,但并没有改变磁盘可用性
  7. UVA13017 LA7274 Canvas Painting【哈夫曼编码】
  8. Navicat用法入门
  9. pythonturtle是标准库_Python常用标准库1-Turtle,Random,Time和Datetime
  10. c语言行列坐标是先行后j,C语言课后习题参考答案
  11. MPQ5031GRE-0013-AEC1-Z USB 3.0 充电协议 汽车应用
  12. 数字图像处理 冈萨雷斯(第四版)图像配准
  13. MTK MT2503 11B讲义-01编译
  14. 搜索网络所有计算机快捷键,实用电脑快捷键使用大全(图文)
  15. 旧苹果电脑安装win10 双系统
  16. 判断任一给定整数N是否满足条件: 它是完全平方数,又至少有两位数字相同,如144、676等。
  17. java判定成绩等级_Java编程判断一组学生成绩等级
  18. 计算机专业烧钱妈,“最烧钱”的3类大学专业排行:妈妈,我在学校真的什么都没干...
  19. 输入一批整数,以0为结束标志,找出最大数和最小数所在的位置,并把二者对调
  20. 用html制作编写静态日志,[译] 编写一个小型静态网站生成器

热门文章

  1. 传递情感贺卡海报,你知道怎么设计么?让设计更简单,从临摹PSD模板开始
  2. 极简主义APP界面UI设计实例模板,不简单!
  3. java bytebuffer 读写_java nio bytebuffer文件读写问题
  4. Linux使用cpuset设置CPU独占
  5. JDK,JRE和JVM之间的区别
  6. 为什么系统调用会消耗较多资源?系统调用的三种方法:软件中断(分析过程)、SYSCALL指令、vDSO(虚拟动态链接对象linux-vdso.so.1)
  7. 使用DPDK打开Open vSwitch(OvS) *概述
  8. cmake编译动态库和静态库
  9. __builtin_expect提高运行效率
  10. Linux指令:lspci显示PCI总线设备信息