本文目录一览:
- 1、如何使用python批量下载图片
- 2、python plt.imshow 怎么用
- 3、python批量读取图片,结果显示为0
- 4、python处理图片数据?
- 5、Python如何读入一个文件夹下的多幅图片
- 6、python想批量处理一个文件夹里的图片,第二行为什么显示读取不成功,该怎么修改呀
如何使用python批量下载图片
1、python有socket、httplib等模块能进行与网站间通信,如果有图片url集合,就直接使用这些库下载
2、如果是一些网页中的url,可以先把网页取下来,在用HTMLParser,sgmllib,htmllib等模块进行页面解析,提取出url集合
python plt.imshow 怎么用
用法以既步骤:
1、给出一张图片。
2、用python读取图片:img = mpimg.imread('a.gif')注意:这里的gif就是上图,虽然是gif格式,但却只有一帧图片,因此是可以读取的;img实际上是一个多维列表。把数组在转化为图片:plt.imshow(img):
3、img[:,:,1]是一个单通道图像,应该是灰度图,但是matplotlib显示出来的,是一个伪彩色图像。plt.imshow(img[:,:,1])。
4、还可以使用别的伪彩色方案,比如热力图:plt.imshow(img[:,:,1],cmap="hot"),而上面图中的伪彩色,可以称为翠绿色(viridis),是matplotlib默认的着色方案。
5、用Nipy谱着色:plt.imshow(img[:,:,1],cmap="nipy_spectral")。
6、在图片边上加上色彩标签:plt.imshow(img[:,:,1],cmap="nipy_spectral"),plt.colorbar()。
python批量读取图片,结果显示为0
路径前面不要加 data_dir
import skimage.io as io
from skimage import data_dir
str='f:/zhaopian/*.jpg'
coll = io.ImageCollection(str)
print(len(coll))
python处理图片数据?
生成一张纯色的图片
先设置图片的颜色,接着利用Image模块的new方法新生成一张图片,png格式的图片需要设置成rgba,类似的还有rgb,L(灰度图等),尺寸设定为640,480,这个可以根据自己的情况设定,颜色同样如此。
批量生成图片
上面生成了一张图片,那要生成十张图片呢,这种步骤一样,只是颜色改变的,利用循环就可以解决。首先创建一个颜色列表,把要生成的图片颜色放进去。接着循环获取不同的颜色,保存的时候利用字符串拼接的方法改变图片的名字。
本地生成的图片
封装成函数
前面的方法已经可以批量生成图片了,为了通用性强一点,我们可以封装成函数,把哪些可以改变的参数单独抽离出来。尺寸也同样,使用的时候,可以根据自己的需要定义颜色列表和尺寸。当然还有加一些提示用语和报错兼容性,这里就不讲了。
本地生成的图片
Python如何读入一个文件夹下的多幅图片
搬过来的,可以看下代码,在自己写一个。
import os
allFileNum = 0
def printPath(level, path):
global allFileNum
'''
打印一个目录下的所有文件夹和文件
'''
# 所有文件夹,第一个字段是次目录的级别
dirList = []
# 所有文件
fileList = []
# 返回一个列表,其中包含在目录条目的名称(google翻译)
files = os.listdir(path)
# 先添加目录级别
dirList.append(str(level))
for f in files:
if(os.path.isdir(path + '/' + f)):
# 排除隐藏文件夹。因为隐藏文件夹过多
if(f[0] == '.'):
pass
else:
# 添加非隐藏文件夹
dirList.append(f)
if(os.path.isfile(path + '/' + f)):
# 添加文件
fileList.append(f)
# 当一个标志使用,文件夹列表第一个级别不打印
i_dl = 0
for dl in dirList:
if(i_dl == 0):
i_dl = i_dl + 1
else:
# 打印至控制台,不是第一个的目录
print '-' * (int(dirList[0])), dl
# 打印目录下的所有文件夹和文件,目录级别+1
printPath((int(dirList[0]) + 1), path + '/' + dl)
for fl in fileList:
# 打印文件
print '-' * (int(dirList[0])), fl
# 随便计算一下有多少个文件
allFileNum = allFileNum + 1
if __name__ == '__main__':
printPath(1, '/home/test/')
print '总文件数 =', allFileNum
python想批量处理一个文件夹里的图片,第二行为什么显示读取不成功,该怎么修改呀
没用过python,但大致来看你应该需要读入一个完整的文件名吧,也就大概是
image=cv2.imread(os.path.join("c:/pc",filename),0)