要使用python进行各种开发,就必须安装对应的库。(推荐学习:Python视频教程)
这和matlab非常相似,只是matlab里面叫工具箱(toolbox),而python里面叫库或包。安装这些库,一般都是使用pip来安装。
使用python进行数字图片处理,还得安装Pillow包。虽然python里面自带一个PIL(python images library), 但这个库现在已经停止更新了,所以使用Pillow, 它是由PIL发展而来的。
图片的打开与显示
虽然使用的是Pillow,但它是由PIL fork而来,因此还是要从PIL中进行import. 使用open()函数来打开图片,使用show()函数来显示图片。
这种图片显示方式是调用操作系统自带的图片浏览器来打开图片,有些时候这种方式不太方便,因此我们也可以使用另上一种方式,让程序来绘制图片。
这种方法虽然复杂了些,但推荐使用这种方法,它使用一个matplotlib的库来绘制图片进行显示。matplotlib是一个专业绘图的库,相当于matlab中的plot,可以设置多个figure,设置figure的标题,甚至可以使用subplot在一个figure中显示多张图片。
python中保存图片的方法:
1、使用io模块的imsave(fname,arr)函数来保存生成的图片。
第一个参数表示保存的路径和名称,第二个参数表示需要保存的数组变量。
示例:
2、使用plt.savefig()方法保存
作者:小风寒呐链接:https://zhuanlan.zhihu.com/p/30212013
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
首先我们读取图库中所有图片的名称,保存在fileNames中。然后读取Data.csv中所有数据。
提取出Data.csv的最后一列(一共10002列,第10001列说明该数字是什么数字,第10002列是图片的名称),也就是数据库中存储的所有图片的名称,存储在item中。
将新加入图库的图片名称保存在newFileNames中。如果Data.csv为空,那么就直接令newFileNames
=
fileNames。也就是说如果数据库中什么也没有,那么图库中所有图片都是新加入的。
如果Data.csv不为空,那么就将item里面的内容与fileNames的内容比较,如果出现了fileNames里面有的名称item中没有,那么就将这些名称放进newFileNames中。如果item里有的名称fileNames中没有,那就不管。
也就是说,我令我们的数据库只进不出。
现在我们得到了新加入图库的图片的名称newFileNames。
将newFileNames中的名称的图片带入上一文中函数GetTrainPicture进行处理,得到了一个nx10001的矩阵,每一行代表一个新加入的图片,前10000列是图片向量,第10001列是该图片的数字,保存在pic中。
#python保存图片加上程序名称import os
fpath=(__file__)#获取当前文件完整路径
#print(fpath)
pname=(os.path.basename(fpath).rstrip(".py")+".jpg")#命名图片文件:同名当前文件名改后辍".py"为".jpg"
#print(pname)
ppath=os.path.join(os.path.dirname(fpath),pname)#设置图片文件的存储路径,与当前python文件在同一文件夹下
#print(ppath)