首页 > 编程知识 正文

如何用python批量读取图片,python批量导入图片

时间:2023-12-28 21:11:02 阅读:329103 作者:EDFM

本文目录一览:

如何使用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)

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。