Python 读取指定文件夹下的所有图像方法

yipeiwu_com7年前Python基础

(1)数据准备

数据集介绍:

数据集中存放的是1223幅图像,其中756个负样本(图像名称为0.1~0.756),458个正样本(图像名称为1.1~1.458),其中:"."前的标号为样本标签,"."后的标号为样本序号

(2)利用python读取文件夹中所有图像

'''
Load the image files form the folder
input:
  imgDir: the direction of the folder
  imgName:the name of the folder
output:
  data:the data of the dataset
  label:the label of the datset
'''
def load_Img(imgDir,imgFoldName):
  imgs = os.listdir(imgDir+imgFoldName)
  imgNum = len(imgs)
  data = np.empty((imgNum,1,12,12),dtype="float32")
  label = np.empty((imgNum,),dtype="uint8")
  for i in range (imgNum):
    img = Image.open(imgDir+imgFoldName+"/"+imgs[i])
    arr = np.asarray(img,dtype="float32")
    data[i,:,:,:] = arr
    label[i] = int(imgs[i].split('.')[0])
  return data,label

这里得到的data和label都是ndarray数据

data: (1223,1,12,12)

label:(1223,)

注:nddary数据类型是numpy提供的一个数据类型,即N-dimensional array,它弥补了python中array不支持多维的缺陷

(3)调用方式

craterDir = "./data/CraterImg/Adjust/"
foldName = "East_CraterAdjust12"
data, label = load_Img(craterDir,foldName)

以上这篇Python 读取指定文件夹下的所有图像方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python计算牛顿迭代多项式实例分析

本文实例讲述了python计算牛顿迭代多项式的方法。分享给大家供大家参考。具体实现方法如下: ''' p = evalPoly(a,xData,x). Evaluates New...

win10下python2和python3共存问题解决方法

win10下python2和python3共存问题解决方法

1.依次安装python2和python3,并添加到系统环境变量中 2.找到python3的安装目录,一般在C:\Users\Administrator\AppData\Local\Pr...

详解python中的线程

Python中创建线程有两种方式:函数或者用类来创建线程对象。 函数式:调用 _thread 模块中的start_new_thread()函数来产生新线程。 类:创建threading...

Python运算符重载用法实例分析

本文实例讲述了Python运算符重载用法。分享给大家供大家参考。具体如下: 在Python语言中提供了类似于C++的运算符重在功能: 一下为Python运算符重在调用的方法如下: Met...

python使用threading获取线程函数返回值的实现方法

threading用于提供线程相关的操作,线程是应用程序中工作的最小单元。python当前版本的多线程库没有实现优先级、线程组,线程也不能被停止、暂停、恢复、中断。 threading模...