使用python+numpy+scipy进行图像处理实战
以前照相没有像现在这样那么容易的,而在现在你只需要一部手机,就可以免费拍照,而在上一代人之前,业余艺术家和真正的艺术家拍照的费用非常昂贵,并且每张照片的成本也不是免费的。
我们拍照是为了及时地保存美好的瞬间,被保存的记忆可以随时在未来被"打开"。这个过程就像腌制东西一样,所以我们要注意正确的防腐剂。虽然现在手机为我们提供了一系列的图像处理软件,但是如果我们需要处理大量的照片时,我们就需要其他的工具了,此时编程和Python就派上用场了。Python及其模块如Numpy、Scipy、Matplotlib和其他特殊模块提供了各种各样的函数,能够处理大量图片。为了向你介绍必要的知识,本文Python教程将教你如何进行基本的图像处理和操作,为此我们使用模块NumPy、Matplotlib和SciPy。我们从scipy包的misc工具开始。# 以下行仅在Python notebook中需要加上:
%matplotlib inline
from scipy import misc
ascent = misc.ascent()
import matplotlib.pyplot as plt
plt.gray()
plt.imshow(ascent)
plt.show()
除了显示图像之外,我们还可以看到带有刻度的轴。如果你需要一些关于大小和像素位置的方向时,这是很有用的,但在大多数情况下,你并不需要这些信息,则我们可以通过添加命令plt.axis("off")来去掉刻度和轴:from scipy import misc
ascent = misc.ascent()
import matplotlib.pyplot as plt
plt.axis("off") # 删除轴和刻度
plt.gray()
plt.imshow(ascent)
plt.show()
我们可以看到这个图像的类型是一个整数数组:ascent.dtype
输出:dtype('int64')我们也可以检查图像的大小:ascent.shape
输出:(512,512)misc包里还有一张浣熊的图片:import scipy.misc
face = scipy.misc.face()
print(face.shape)
print(face.max)
print(face.dtype)
plt.axis("off")
plt.gray()
plt.imshow(face)
plt.show()
(768, 1024, 3)
最新活动更多
-
1月8日火热报名中>> Allegro助力汽车电气化和底盘解决方案优化在线研讨会
-
即日-1.16立即报名>>> 【在线会议】ImSym 开启全流程成像仿真时代
-
即日-1.24立即参与>>> 【限时免费】安森美:Treo 平台带来出色的精密模拟
-
2月28日火热报名中>> 【免费试用】东集技术年终福利——免费试用活动
-
4日10日立即报名>> OFweek 2025(第十四届)中国机器人产业大会
-
7.30-8.1火热报名中>> 全数会2025(第六届)机器人及智能工厂展
推荐专题
发表评论
请输入评论内容...
请输入评论/评论长度6~500个字
暂无评论
暂无评论