11FROM python:3.9
2+
23LABEL mantainer="Josip Janzic <josip@jjanzic.com>"
34
4- RUN apt-get update \
5- && apt-get install -y \
5+ WORKDIR /opt/build
6+
7+ ENV OPENCV_VERSION="4.5.1"
8+
9+ RUN apt-get -qq update \
10+ && apt-get -qq install -y --no-install-recommends \
611 build-essential \
712 cmake \
813 git \
@@ -16,38 +21,35 @@ RUN apt-get update \
1621 libjpeg-dev \
1722 libpng-dev \
1823 libtiff-dev \
24+ libopenjp2-7-dev \
1925 libavformat-dev \
2026 libpq-dev \
21- && rm -rf /var/lib/apt/lists/*
22-
23- RUN pip install numpy
24-
25- WORKDIR /
26- ENV OPENCV_VERSION="4.5.0"
27- RUN wget https://github.com/opencv/opencv/archive/${OPENCV_VERSION}.zip \
28- && unzip ${OPENCV_VERSION}.zip \
29- && mkdir /opencv-${OPENCV_VERSION}/cmake_binary \
30- && cd /opencv-${OPENCV_VERSION}/cmake_binary \
31- && cmake -DBUILD_TIFF=ON \
32- -DBUILD_opencv_java=OFF \
33- -DWITH_CUDA=OFF \
34- -DWITH_OPENGL=ON \
35- -DWITH_OPENCL=ON \
36- -DWITH_IPP=ON \
37- -DWITH_TBB=ON \
38- -DWITH_EIGEN=ON \
39- -DWITH_V4L=ON \
40- -DBUILD_TESTS=OFF \
41- -DBUILD_PERF_TESTS=OFF \
42- -DCMAKE_BUILD_TYPE=RELEASE \
43- -DCMAKE_INSTALL_PREFIX=$(python3.9 -c "import sys; print(sys.prefix)" ) \
44- -DPYTHON_EXECUTABLE=$(which python3.9) \
45- -DPYTHON_INCLUDE_DIR=$(python3.9 -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())" ) \
46- -DPYTHON_PACKAGES_PATH=$(python3.9 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())" ) \
47- .. \
48- && make install \
49- && rm /${OPENCV_VERSION}.zip \
50- && rm -r /opencv-${OPENCV_VERSION}
51- RUN ln -s \
52- /usr/local/python/cv2/python-3.9/cv2.cpython-37m-x86_64-linux-gnu.so \
53- /usr/local/lib/python3.9/site-packages/cv2.so
27+ && pip install numpy \
28+ && wget -q https://github.com/opencv/opencv/archive/${OPENCV_VERSION}.zip -O opencv.zip \
29+ && unzip -qq opencv.zip -d /opt \
30+ && rm -rf opencv.zip \
31+ && cmake \
32+ -D BUILD_TIFF=ON \
33+ -D BUILD_opencv_java=OFF \
34+ -D WITH_CUDA=OFF \
35+ -D WITH_OPENGL=ON \
36+ -D WITH_OPENCL=ON \
37+ -D WITH_IPP=ON \
38+ -D WITH_TBB=ON \
39+ -D WITH_EIGEN=ON \
40+ -D WITH_V4L=ON \
41+ -D BUILD_TESTS=OFF \
42+ -D BUILD_PERF_TESTS=OFF \
43+ -D CMAKE_BUILD_TYPE=RELEASE \
44+ -D CMAKE_INSTALL_PREFIX=$(python3.9 -c "import sys; print(sys.prefix)" ) \
45+ -D PYTHON_EXECUTABLE=$(which python3.9) \
46+ -D PYTHON_INCLUDE_DIR=$(python3.9 -c "from distutils.sysconfig import get_python_inc; print(get_python_inc())" ) \
47+ -D PYTHON_PACKAGES_PATH=$(python3.9 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())" ) \
48+ /opt/opencv-${OPENCV_VERSION} \
49+ && make -j$(nproc) \
50+ && make install \
51+ && rm -rf /opt/build/* \
52+ && rm -rf /opt/opencv-${OPENCV_VERSION} \
53+ && rm -rf /var/lib/apt/lists/* \
54+ && apt-get -qq autoremove \
55+ && apt-get -qq clean
0 commit comments