1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- FROM ubuntu:16.04
- # Install system packages
- RUN apt-get -qq update && apt-get -qq install --no-install-recommends -y python3 \
- python3-dev \
- python-pil \
- python-lxml \
- python-tk \
- build-essential \
- cmake \
- git \
- libgtk2.0-dev \
- pkg-config \
- libavcodec-dev \
- libavformat-dev \
- libswscale-dev \
- libtbb2 \
- libtbb-dev \
- libjpeg-dev \
- libpng-dev \
- libtiff-dev \
- libjasper-dev \
- libdc1394-22-dev \
- x11-apps \
- wget \
- vim \
- ffmpeg \
- unzip \
- && rm -rf /var/lib/apt/lists/*
- # Install core packages
- RUN wget -q -O /tmp/get-pip.py --no-check-certificate https://bootstrap.pypa.io/get-pip.py && python3 /tmp/get-pip.py
- RUN pip install -U pip \
- numpy \
- matplotlib \
- notebook \
- jupyter \
- pandas \
- moviepy \
- tensorflow \
- keras \
- autovizwidget \
- Flask
- # Install tensorflow models object detection
- RUN GIT_SSL_NO_VERIFY=true git clone -q https://github.com/tensorflow/models /usr/local/lib/python3.5/dist-packages/tensorflow/models
- RUN wget -q -P /usr/local/src/ --no-check-certificate https://github.com/google/protobuf/releases/download/v3.5.1/protobuf-python-3.5.1.tar.gz
- # Download & build protobuf-python
- RUN cd /usr/local/src/ \
- && tar xf protobuf-python-3.5.1.tar.gz \
- && rm protobuf-python-3.5.1.tar.gz \
- && cd /usr/local/src/protobuf-3.5.1/ \
- && ./configure \
- && make \
- && make install \
- && ldconfig \
- && rm -rf /usr/local/src/protobuf-3.5.1/
- # Add dataframe display widget
- RUN jupyter nbextension enable --py --sys-prefix widgetsnbextension
- # Download & build OpenCV
- RUN wget -q -P /usr/local/src/ --no-check-certificate https://github.com/opencv/opencv/archive/3.4.1.zip
- RUN cd /usr/local/src/ \
- && unzip 3.4.1.zip \
- && rm 3.4.1.zip \
- && cd /usr/local/src/opencv-3.4.1/ \
- && mkdir build \
- && cd /usr/local/src/opencv-3.4.1/build \
- && cmake -D CMAKE_INSTALL_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local/ .. \
- && make -j4 \
- && make install \
- && rm -rf /usr/local/src/opencv-3.4.1
- # Minimize image size
- RUN (apt-get autoremove -y; \
- apt-get autoclean -y)
- # Set TF object detection available
- ENV PYTHONPATH "$PYTHONPATH:/usr/local/lib/python3.5/dist-packages/tensorflow/models/research:/usr/local/lib/python3.5/dist-packages/tensorflow/models/research/slim"
- RUN cd /usr/local/lib/python3.5/dist-packages/tensorflow/models/research && protoc object_detection/protos/*.proto --python_out=.
- COPY detect_objects.py .
- CMD ["python3", "-u", "detect_objects.py"]
|