python - HDFS的图像数据帧用于图像分类

标签 python hadoop apache-spark pyspark hdfs

我正在尝试使用Python和Spark编写图像分类算法,我正在关注this教程,该教程取材于官方数据砖documentation,在本地运行时效果很好。

我现在的问题是,在群集上转移算法时,我必须以.jpg格式从HDFS上的两个文件夹中加载图像,而在示例中找不到以本地方式创建数据框的方法。

我正在寻找此代码的替代品:

from sparkdl import readImages
jobs_df = readImages(img_dir + "/jobs").withColumn("label", lit(1))

最佳答案

它应该与从本地读取文件几乎相同。

下面是该库的实现。它在内部使用binaryFiles api加载二进制文件。 API文档(binaryFiles)表示它也支持Hadoop文件系统。

 rdd = sc.binaryFiles(path, minPartitions=numPartitions).repartition(numPartitions) 

希望这可以帮助。

关于python - HDFS的图像数据帧用于图像分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47874622/

相关文章:

python - 任务队列执行

java - Hadoop 作业调度以及 0.20.203 中映射器较慢的作业

apache-spark - Spark结构化流在公共(public) View 上具有不同触发间隔中继的多个查询

Python - 每次运行时 pandas 都有不同大小的笛卡尔积

python - 类型错误 : argument of type 'instance' is not iterable

python - 如何在不删除 QListWidget 项进行编辑和添加的情况下编辑它?

hadoop - HDP 2.5 : Spark History Server UI won't show incomplete applications

hadoop - 什么是serde在HIVE中的用途

hadoop - 当spark master设置为LOCAL时,SparkSession对象不存在HDFS路径

apache-spark - 将 Tensorflow 模型的预测输出保存到 hdfs 文件中