无法让Johnsnow OCR笔记本在databricks上运行

时间:2018-12-20 04:41:53

标签: apache-spark databricks johnsnowlabs-spark-nlp

因此,我正在尝试关注此笔记本,并使其在databricks笔记本上工作:https://github.com/JohnSnowLabs/spark-nlp-workshop/blob/master/jupyter/ocr-spell/OcrSpellChecking.ipynb;但是,安装完所有软件包后,到

时,我仍然被卡住了
{ // for displaying
val regions = data.select("region").collect().map(_.get(0))
regions.foreach{chunk =>
    println("---------------")
    println(chunk)}
}

错误消息是:

  

org.apache.spark.SparkException:由于阶段失败而导致作业中止:阶段3.0中的任务0失败4次,最近一次失败:阶段3.0中的任务0.3丢失(TID 51、10.195.249.145,执行器4):java .lang.NoClassDefFoundError:无法初始化类net.sourceforge.tess4j.TessAPI

有人知道为什么吗?非常感谢!

1 个答案:

答案 0 :(得分:0)

要使用Spark NLP OCR,您需要按照文档说明安装Tesseract 4.x +。在群集中,您必须在所有节点上都具有此功能。但是,如果您只是处理PDF而没有扫描图像,则可以跳过Tesseract 4.x +安装:

import com.johnsnowlabs.nlp.util.io.OcrHelper
val ocrHelper = new OcrHelper()

val df = ocrHelper.createDataset(spark, "/tmp/Test.pdf")