feat: 切换后端至PaddleOCR-NCNN,切换工程为CMake
1.项目后端整体迁移至PaddleOCR-NCNN算法,已通过基本的兼容性测试 2.工程改为使用CMake组织,后续为了更好地兼容第三方库,不再提供QMake工程 3.重整权利声明文件,重整代码工程,确保最小化侵权风险 Log: 切换后端至PaddleOCR-NCNN,切换工程为CMake Change-Id: I4d5d2c5d37505a4a24b389b1a4c5d12f17bfa38c
This commit is contained in:
		
							
								
								
									
										18
									
								
								3rdparty/opencv-4.5.4/modules/videoio/misc/plugin_ffmpeg/CMakeLists.txt
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								3rdparty/opencv-4.5.4/modules/videoio/misc/plugin_ffmpeg/CMakeLists.txt
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,18 @@
 | 
			
		||||
cmake_minimum_required(VERSION 3.5)
 | 
			
		||||
 | 
			
		||||
get_filename_component(OpenCV_SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/../../../.." ABSOLUTE)
 | 
			
		||||
include("${OpenCV_SOURCE_DIR}/cmake/OpenCVPluginStandalone.cmake")
 | 
			
		||||
 | 
			
		||||
# scan dependencies
 | 
			
		||||
set(WITH_FFMPEG ON)
 | 
			
		||||
set(OPENCV_FFMPEG_SKIP_BUILD_CHECK ON)
 | 
			
		||||
include("${OpenCV_SOURCE_DIR}/modules/videoio/cmake/init.cmake")
 | 
			
		||||
 | 
			
		||||
set(OPENCV_PLUGIN_DEPS core imgproc imgcodecs)
 | 
			
		||||
ocv_create_plugin(videoio "opencv_videoio_ffmpeg" "ocv.3rdparty.ffmpeg" "FFmpeg" "src/cap_ffmpeg.cpp")
 | 
			
		||||
 | 
			
		||||
message(STATUS "FFMPEG_libavcodec_VERSION=${FFMPEG_libavcodec_VERSION}")
 | 
			
		||||
message(STATUS "FFMPEG_libavformat_VERSION=${FFMPEG_libavformat_VERSION}")
 | 
			
		||||
message(STATUS "FFMPEG_libavutil_VERSION=${FFMPEG_libavutil_VERSION}")
 | 
			
		||||
message(STATUS "FFMPEG_libswscale_VERSION=${FFMPEG_libswscale_VERSION}")
 | 
			
		||||
message(STATUS "FFMPEG_libavresample_VERSION=${FFMPEG_libavresample_VERSION}")
 | 
			
		||||
							
								
								
									
										45
									
								
								3rdparty/opencv-4.5.4/modules/videoio/misc/plugin_ffmpeg/Dockerfile-ffmpeg
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								3rdparty/opencv-4.5.4/modules/videoio/misc/plugin_ffmpeg/Dockerfile-ffmpeg
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,45 @@
 | 
			
		||||
FROM ubuntu:18.04
 | 
			
		||||
 | 
			
		||||
RUN apt-get update && apt-get --no-install-recommends install -y \
 | 
			
		||||
        pkg-config \
 | 
			
		||||
        cmake \
 | 
			
		||||
        g++ \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
        make \
 | 
			
		||||
        nasm \
 | 
			
		||||
    && \
 | 
			
		||||
    rm -rf /var/lib/apt/lists/*
 | 
			
		||||
 | 
			
		||||
ARG VER
 | 
			
		||||
 | 
			
		||||
ADD ffmpeg-${VER}.tar.xz /ffmpeg/
 | 
			
		||||
 | 
			
		||||
WORKDIR /ffmpeg/ffmpeg-${VER}
 | 
			
		||||
RUN ./configure \
 | 
			
		||||
    --enable-avresample \
 | 
			
		||||
    --prefix=/ffmpeg-shared \
 | 
			
		||||
    --enable-shared \
 | 
			
		||||
    --disable-static \
 | 
			
		||||
    --disable-programs \
 | 
			
		||||
    --disable-doc \
 | 
			
		||||
    --disable-avdevice \
 | 
			
		||||
    --disable-postproc \
 | 
			
		||||
    && make -j8 install \
 | 
			
		||||
    && make clean \
 | 
			
		||||
    && make distclean
 | 
			
		||||
 | 
			
		||||
RUN ./configure \
 | 
			
		||||
    --enable-avresample \
 | 
			
		||||
    --prefix=/ffmpeg-static \
 | 
			
		||||
    --disable-shared \
 | 
			
		||||
    --enable-static \
 | 
			
		||||
    --enable-pic \
 | 
			
		||||
    --disable-programs \
 | 
			
		||||
    --disable-doc \
 | 
			
		||||
    --disable-avdevice \
 | 
			
		||||
    --disable-postproc \
 | 
			
		||||
    && make -j8 install \
 | 
			
		||||
    && make clean \
 | 
			
		||||
    && make distclean
 | 
			
		||||
 | 
			
		||||
WORKDIR /tmp
 | 
			
		||||
							
								
								
									
										17
									
								
								3rdparty/opencv-4.5.4/modules/videoio/misc/plugin_ffmpeg/Dockerfile-ubuntu
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								3rdparty/opencv-4.5.4/modules/videoio/misc/plugin_ffmpeg/Dockerfile-ubuntu
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,17 @@
 | 
			
		||||
ARG VER
 | 
			
		||||
FROM ubuntu:$VER
 | 
			
		||||
 | 
			
		||||
RUN apt-get update && apt-get --no-install-recommends install -y \
 | 
			
		||||
        libavcodec-dev \
 | 
			
		||||
        libavfilter-dev \
 | 
			
		||||
        libavformat-dev \
 | 
			
		||||
        libavresample-dev \
 | 
			
		||||
        libavutil-dev \
 | 
			
		||||
        pkg-config \
 | 
			
		||||
        cmake \
 | 
			
		||||
        g++ \
 | 
			
		||||
        ninja-build \
 | 
			
		||||
    && \
 | 
			
		||||
    rm -rf /var/lib/apt/lists/*
 | 
			
		||||
 | 
			
		||||
WORKDIR /tmp
 | 
			
		||||
							
								
								
									
										24
									
								
								3rdparty/opencv-4.5.4/modules/videoio/misc/plugin_ffmpeg/build-standalone.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										24
									
								
								3rdparty/opencv-4.5.4/modules/videoio/misc/plugin_ffmpeg/build-standalone.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							@ -0,0 +1,24 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
mkdir -p build_shared && pushd build_shared
 | 
			
		||||
PKG_CONFIG_PATH=/ffmpeg-shared/lib/pkgconfig \
 | 
			
		||||
cmake -GNinja \
 | 
			
		||||
    -DOPENCV_PLUGIN_NAME=opencv_videoio_ffmpeg_shared_$2 \
 | 
			
		||||
    -DOPENCV_PLUGIN_DESTINATION=$1 \
 | 
			
		||||
    -DCMAKE_BUILD_TYPE=$3 \
 | 
			
		||||
    /opencv/modules/videoio/misc/plugin_ffmpeg
 | 
			
		||||
ninja
 | 
			
		||||
popd
 | 
			
		||||
 | 
			
		||||
mkdir -p build_static && pushd build_static
 | 
			
		||||
PKG_CONFIG_PATH=/ffmpeg-static/lib/pkgconfig \
 | 
			
		||||
cmake -GNinja \
 | 
			
		||||
    -DOPENCV_PLUGIN_NAME=opencv_videoio_ffmpeg_static_$2 \
 | 
			
		||||
    -DOPENCV_PLUGIN_DESTINATION=$1 \
 | 
			
		||||
    -DCMAKE_MODULE_LINKER_FLAGS=-Wl,-Bsymbolic \
 | 
			
		||||
    -DCMAKE_BUILD_TYPE=$3 \
 | 
			
		||||
    /opencv/modules/videoio/misc/plugin_ffmpeg
 | 
			
		||||
ninja
 | 
			
		||||
popd
 | 
			
		||||
							
								
								
									
										10
									
								
								3rdparty/opencv-4.5.4/modules/videoio/misc/plugin_ffmpeg/build-ubuntu.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										10
									
								
								3rdparty/opencv-4.5.4/modules/videoio/misc/plugin_ffmpeg/build-ubuntu.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							@ -0,0 +1,10 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
cmake -GNinja \
 | 
			
		||||
    -DOPENCV_PLUGIN_NAME=opencv_videoio_ffmpeg_ubuntu_$2 \
 | 
			
		||||
    -DOPENCV_PLUGIN_DESTINATION=$1 \
 | 
			
		||||
    -DCMAKE_BUILD_TYPE=$3 \
 | 
			
		||||
    /opencv/modules/videoio/misc/plugin_ffmpeg
 | 
			
		||||
ninja
 | 
			
		||||
		Reference in New Issue
	
	Block a user