|
|
|
FROM ubuntu:18.04
|
|
|
|
|
|
|
|
ENV LC_ALL=C.UTF-8 LANG=C.UTF-8
|
|
|
|
|
|
|
|
ENV LEPTONICA_VERSION 1.78.0
|
|
|
|
ENV TESSERACT_VERSION 4.1.0
|
|
|
|
ENV TESSDATA_BEST_VERSION 4.0.0
|
|
|
|
ENV TESSDATA_PREFIX /usr/local/share/tessdata
|
|
|
|
|
|
|
|
|
|
|
|
RUN apt-get update && \
|
|
|
|
apt-get install -y \
|
|
|
|
curl xz-utils \
|
|
|
|
python3-pip \
|
|
|
|
git \
|
|
|
|
# For leptonica/tesseract:
|
|
|
|
cmake libgif-dev libjpeg-dev libpng-dev libtiff-dev zlib1g-dev \
|
|
|
|
# For clstm on Ubuntu 19.04:
|
|
|
|
swig libeigen3-dev libpng-dev libprotobuf-dev \
|
|
|
|
# XML utils
|
|
|
|
libxml2-utils \
|
|
|
|
xmlstarlet \
|
|
|
|
&& \
|
|
|
|
apt-get clean
|
|
|
|
|
|
|
|
|
|
|
|
# Build Leptonica and Tesseract.
|
|
|
|
# XXX Use a multi stage build for this.
|
|
|
|
RUN curl -sSL -O https://github.com/DanBloomberg/leptonica/releases/download/$LEPTONICA_VERSION/leptonica-$LEPTONICA_VERSION.tar.gz && \
|
|
|
|
tar xvzf leptonica-$LEPTONICA_VERSION.tar.gz && \
|
|
|
|
cd leptonica-$LEPTONICA_VERSION && \
|
|
|
|
mkdir build && cd build && cmake .. && make install && ldconfig && \
|
|
|
|
cd ../.. && rm -rf leptonica-$LEPTONICA_VERSION leptonica-$LEPTONICA_VERSION.tar.gz
|
|
|
|
|
|
|
|
RUN curl -sSL -O https://github.com/tesseract-ocr/tesseract/archive/$TESSERACT_VERSION.tar.gz && \
|
|
|
|
tar xvzf $TESSERACT_VERSION.tar.gz && \
|
|
|
|
cd tesseract-$TESSERACT_VERSION && \
|
|
|
|
mkdir build && cd build && cmake .. && make install && ldconfig && \
|
|
|
|
cd ../.. && rm -rf tesseract-$TESSERACT_VERSION $TESSERACT_VERSION.tar.gz
|
|
|
|
|
|
|
|
RUN curl -sSL -O https://github.com/tesseract-ocr/tessdata_best/archive/$TESSDATA_BEST_VERSION.tar.gz && \
|
|
|
|
tar xvzf $TESSDATA_BEST_VERSION.tar.gz && \
|
|
|
|
mv tessdata_best-$TESSDATA_BEST_VERSION $TESSDATA_PREFIX && \
|
|
|
|
rm -rf $TESSDATA_BEST_VERSION.tar.gz
|
|
|
|
|
|
|
|
|
|
|
|
# Copy OCR models
|
|
|
|
RUN mkdir /var/lib/calamari-models
|
|
|
|
COPY data/calamari-models/GT4HistOCR /var/lib/calamari-models/GT4HistOCR
|
|
|
|
RUN mkdir $TESSDATA_PREFIX
|
|
|
|
COPY data/tesseract-models/GT4HistOCR/GT4HistOCR_2000000.traineddata $TESSDATA_PREFIX
|
|
|
|
|
|
|
|
RUN tesseract --list-langs
|
|
|
|
|
|
|
|
|
|
|
|
COPY requirements.txt /tmp
|
|
|
|
RUN pip3 install --no-cache-dir -r /tmp/requirements.txt
|
|
|
|
|
|
|
|
COPY my_ocrd_workflow /usr/bin
|
|
|
|
COPY xsd/* /usr/share/xml/
|
|
|
|
|
|
|
|
WORKDIR /data
|
|
|
|
CMD ["/usr/bin/my_ocrd_workflow"]
|