Как читать изображения Apache Spark, используя класс JavaS языка ImageSchema - PullRequest
0 голосов
/ 02 мая 2018

У меня проблема при чтении файла изображения из HDFS и использовании класса ImageSchema https://spark.apache.org/docs/2.3.0/api/java/org/apache/spark/ml/image/ImageSchema.html Я не знаю, как получить данные изображения и встроенную библиотеку OpenCV.

Спасибо всем

1 Ответ

0 голосов
/ 17 августа 2018

Вы можете попробовать приведенный ниже пример для чтения файлов изображений, используя метод ImageSchema.readImages.

import static org.apache.spark.sql.functions.col;
import org.apache.spark.ml.image.ImageSchema;
import org.apache.spark.sql.Dataset;
import org.apache.spark.sql.Row;
import org.apache.spark.sql.SparkSession;
import org.opencv.core.Core;

public class ReadImageExample {
    public static void main(String[] args) {
        SparkSession spark = SparkSession.builder().appName("ReadImageExample").master("local").getOrCreate();
        Dataset<Row> ds = ImageSchema.readImages("C:\\temp", spark, false, 0, true, 1.0, 1);
        ds.printSchema();
        ds.select(col("image.width"), col("image.height"), col("image.mode")).show();
    }
}

Вам понадобятся следующие зависимости.

<dependencies>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-core_2.11</artifactId>
            <version>2.3.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-sql_2.11</artifactId>
            <version>2.3.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-mllib_2.11</artifactId>
            <version>2.3.1</version>
        </dependency>
</dependencies>
...