diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 43cde2f..2c1f71f 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -158,7 +158,7 @@ jobs: zip -9 -r opencv-mobile-${{ env.opencv-version }}.zip opencv-mobile-${{ env.opencv-version }} - name: opencv4-source env: - opencv-version: 4.10.0 + opencv-version: 4.11.0 run: | wget -q https://github.com/opencv/opencv/archive/${{ env.opencv-version }}.zip -O opencv-${{ env.opencv-version }}.zip unzip -q opencv-${{ env.opencv-version }}.zip @@ -217,7 +217,10 @@ jobs: patch -p1 -i ../patches/opencv-${{ env.opencv-version }}-drawing-mono-font.patch rm -rf modules/highgui cp -r ../highgui modules/ - rm -rf 3rdparty apps data doc samples platforms + mv 3rdparty/kleidicv . + rm -rf 3rdparty/* + mv kleidicv 3rdparty/ + rm -rf apps data doc samples platforms rm -rf modules/java rm -rf modules/js rm -rf modules/python @@ -241,15 +244,15 @@ jobs: - name: upload-opencv4-source uses: actions/upload-artifact@v4 with: - name: opencv-mobile-4.10.0-source - path: opencv-mobile-4.10.0.zip + name: opencv-mobile-4.11.0-source + path: opencv-mobile-4.11.0.zip android: needs: [setup] runs-on: ubuntu-latest strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_POLICY_DEFAULT_CMP0057=NEW \ @@ -351,7 +354,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: OHOS_NDK_CMAKE: $GITHUB_WORKSPACE/ohos-sdk/linux/native/build-tools/cmake/bin/cmake COMMON_CMAKE_OPTIONS: | @@ -412,7 +415,7 @@ jobs: if: matrix.opencv-version == '2.4.13.7' || matrix.opencv-version == '3.4.20' run: echo "OPENCV_SUBDIR=share/OpenCV" >> $GITHUB_ENV - name: set-opencv-dir - if: matrix.opencv-version == '4.10.0' + if: matrix.opencv-version == '4.11.0' run: echo "OPENCV_SUBDIR=lib/cmake/opencv4" >> $GITHUB_ENV - name: test-armeabi-v7a run: | @@ -446,7 +449,7 @@ jobs: runs-on: macos-13 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \ @@ -518,7 +521,7 @@ jobs: runs-on: macos-13 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \ @@ -600,7 +603,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_C_FLAGS="-fno-rtti -fno-exceptions" \ @@ -660,7 +663,7 @@ jobs: if: matrix.opencv-version == '2.4.13.7' || matrix.opencv-version == '3.4.20' run: echo "OPENCV_SUBDIR=share/OpenCV" >> $GITHUB_ENV - name: set-opencv-dir - if: matrix.opencv-version == '4.10.0' + if: matrix.opencv-version == '4.11.0' run: echo "OPENCV_SUBDIR=lib/cmake/opencv4" >> $GITHUB_ENV - name: test-arm-linux-gnueabi run: | @@ -694,7 +697,7 @@ jobs: runs-on: macos-13 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \ @@ -780,7 +783,7 @@ jobs: runs-on: macos-13 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \ @@ -862,7 +865,7 @@ jobs: runs-on: macos-13 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \ @@ -944,7 +947,7 @@ jobs: runs-on: macos-13 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \ @@ -1026,7 +1029,7 @@ jobs: runs-on: macos-13 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \ @@ -1108,7 +1111,7 @@ jobs: runs-on: macos-13 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \ @@ -1190,7 +1193,7 @@ jobs: runs-on: macos-13 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \ @@ -1262,7 +1265,7 @@ jobs: runs-on: macos-13 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_TOOLCHAIN_FILE=../../toolchains/ios.toolchain.cmake \ @@ -1343,7 +1346,7 @@ jobs: needs: [setup] strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] os-compiler: - { msvc-version: vs2015, windows-version: 2019, toolset-version: v140 } - { msvc-version: vs2017, windows-version: 2019, toolset-version: v141 } @@ -1355,6 +1358,11 @@ jobs: COMMON_CMAKE_OPTIONS: -T ${{ matrix.os-compiler.toolset-version }},host=x64 -DCMAKE_INSTALL_PREFIX=install steps: - uses: actions/checkout@v4 + - name: patch-windows-sdk + if: matrix.os-compiler.msvc-version == 'vs2022' + run: | + cd "C:\Program Files (x86)" + & "C:\Program Files\Git\usr\bin\patch.exe" -p0 -i $env:GITHUB_WORKSPACE\fix-windows-sdk-26100-arm64-wchar.patch - uses: actions/download-artifact@v4 with: name: opencv-mobile-${{ matrix.opencv-version }}-source @@ -1434,10 +1442,11 @@ jobs: needs: [setup] strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] os-ubuntu: - { ubuntu-id: 2004, ubuntu-version: 20.04 } - { ubuntu-id: 2204, ubuntu-version: 22.04 } + - { ubuntu-id: 2404, ubuntu-version: 24.04 } runs-on: ubuntu-${{ matrix.os-ubuntu.ubuntu-version }} env: COMMON_CMAKE_OPTIONS: -DCMAKE_INSTALL_PREFIX=install -DCMAKE_BUILD_TYPE=Release @@ -1469,7 +1478,7 @@ jobs: if: matrix.opencv-version == '2.4.13.7' || matrix.opencv-version == '3.4.20' run: echo "OPENCV_SUBDIR=share/OpenCV" >> $GITHUB_ENV - name: set-opencv-dir - if: matrix.opencv-version == '4.10.0' + if: matrix.opencv-version == '4.11.0' run: echo "OPENCV_SUBDIR=lib/cmake/opencv4" >> $GITHUB_ENV - name: test run: | @@ -1488,7 +1497,7 @@ jobs: runs-on: ubuntu-20.04 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] env: COMMON_CMAKE_OPTIONS: | -DCMAKE_TOOLCHAIN_FILE=../emsdk/upstream/emscripten/cmake/Modules/Platform/Emscripten.cmake \ @@ -1574,7 +1583,7 @@ jobs: if: matrix.opencv-version == '2.4.13.7' || matrix.opencv-version == '3.4.20' run: echo "OPENCV_SUBDIR=share/OpenCV" >> $GITHUB_ENV - name: set-opencv-dir - if: matrix.opencv-version == '4.10.0' + if: matrix.opencv-version == '4.11.0' run: echo "OPENCV_SUBDIR=lib/cmake/opencv4" >> $GITHUB_ENV - name: test run: | @@ -1623,7 +1632,7 @@ jobs: runs-on: macos-13 strategy: matrix: - opencv-version: [2.4.13.7, 3.4.20, 4.10.0] + opencv-version: [2.4.13.7, 3.4.20, 4.11.0] steps: - run: sudo xcode-select --switch /Applications/Xcode_15.2.app - uses: actions/checkout@v4 @@ -1732,21 +1741,29 @@ jobs: single-core: true cmake-toolchain: riscv64-unknown-linux-musl.toolchain.cmake setup-toolchain-cmd: | + wget -q https://occ-oss-prod.oss-cn-hangzhou.aliyuncs.com/resource//1705396382457/Xuantie-900-gcc-linux-5.10.4-musl64-x86_64-V2.8.1-20240115.tar.gz + tar -xf Xuantie-900-gcc-linux-5.10.4-musl64-x86_64-V2.8.1-20240115.tar.gz wget -q https://sophon-file.sophon.cn/sophon-prod-s3/drive/23/03/07/16/host-tools.tar.gz tar -xf host-tools.tar.gz setup-env-cmd: | + export RISCV_ROOT_PATH=$GITHUB_WORKSPACE/Xuantie-900-gcc-linux-5.10.4-musl64-x86_64-V2.8.1 + setup-test-env-cmd: | export RISCV_ROOT_PATH=$GITHUB_WORKSPACE/host-tools/gcc/riscv64-linux-musl-x86_64 - cmake-options: -DWITH_CVI=ON + cmake-options: -DWITH_CVI=ON -DWITH_HAL_RVV=OFF -DOPENCV_EXTRA_FLAGS="-D__riscv_vector_071 -mrvv-vector-bits=128" - name: licheerv-nano single-core: true cmake-toolchain: riscv64-unknown-linux-musl.toolchain.cmake setup-toolchain-cmd: | + wget -q https://occ-oss-prod.oss-cn-hangzhou.aliyuncs.com/resource//1705396382457/Xuantie-900-gcc-linux-5.10.4-musl64-x86_64-V2.8.1-20240115.tar.gz + tar -xf Xuantie-900-gcc-linux-5.10.4-musl64-x86_64-V2.8.1-20240115.tar.gz wget -q https://sophon-file.sophon.cn/sophon-prod-s3/drive/23/03/07/16/host-tools.tar.gz tar -xf host-tools.tar.gz setup-env-cmd: | + export RISCV_ROOT_PATH=$GITHUB_WORKSPACE/Xuantie-900-gcc-linux-5.10.4-musl64-x86_64-V2.8.1 + setup-test-env-cmd: | export RISCV_ROOT_PATH=$GITHUB_WORKSPACE/host-tools/gcc/riscv64-linux-musl-x86_64 - cmake-options: -DWITH_CVI=ON + cmake-options: -DWITH_CVI=ON -DWITH_HAL_RVV=OFF -DOPENCV_EXTRA_FLAGS="-D__riscv_vector_071 -mrvv-vector-bits=128" - name: luckfox-pico single-core: true @@ -1755,6 +1772,8 @@ jobs: git clone --depth 1 https://github.com/LuckfoxTECH/luckfox-pico.git luckfox-pico setup-env-cmd: | export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/luckfox-pico/tools/linux/toolchain/arm-rockchip830-linux-uclibcgnueabihf + setup-test-env-cmd: | + export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/luckfox-pico/tools/linux/toolchain/arm-rockchip830-linux-uclibcgnueabihf cmake-options: -DWITH_RK=ON - name: yuzuki-lizard @@ -1766,6 +1785,9 @@ jobs: setup-env-cmd: | export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain export STAGING_DIR=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain + setup-test-env-cmd: | + export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain + export STAGING_DIR=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain cmake-options: -DWITH_AW=ON - name: tinyvision @@ -1777,6 +1799,9 @@ jobs: setup-env-cmd: | export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain export STAGING_DIR=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain + setup-test-env-cmd: | + export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain + export STAGING_DIR=$GITHUB_WORKSPACE/toolchain-sunxi-musl-gcc-830/toolchain cmake-options: -DWITH_AW=ON - name: yuzuki-chameleon @@ -1788,6 +1813,9 @@ jobs: setup-env-cmd: | export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/toolchain export STAGING_DIR=$GITHUB_WORKSPACE/toolchain + setup-test-env-cmd: | + export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/toolchain + export STAGING_DIR=$GITHUB_WORKSPACE/toolchain cmake-options: -DWITH_AW=ON - name: purple-pi @@ -1799,6 +1827,8 @@ jobs: sh install_toolchain.sh setup-env-cmd: | export PATH=$PATH:$GITHUB_WORKSPACE/PurPle-Pi-R1/toolchain/gcc-arm-8.2-2018.08-x86_64-arm-linux-gnueabihf/bin + setup-test-env-cmd: | + export PATH=$PATH:$GITHUB_WORKSPACE/PurPle-Pi-R1/toolchain/gcc-arm-8.2-2018.08-x86_64-arm-linux-gnueabihf/bin cmake-options: - name: myir-t113i @@ -1808,6 +1838,8 @@ jobs: git clone --depth 1 https://github.com/MYIR-ALLWINNER/toolchain.git setup-env-cmd: | export PATH=$PATH:$GITHUB_WORKSPACE/toolchain/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi/bin + setup-test-env-cmd: | + export PATH=$PATH:$GITHUB_WORKSPACE/toolchain/gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi/bin cmake-options: -DWITH_AW=ON - name: 2k0300-fengniao @@ -1818,8 +1850,10 @@ jobs: tar -xf loongson-gnu-toolchain-8.3-x86_64-loongarch64-linux-gnu-rc1.5.tar.xz setup-env-cmd: | export LOONGARCH64_ROOT_PATH=$GITHUB_WORKSPACE/loongson-gnu-toolchain-8.3-x86_64-loongarch64-linux-gnu-rc1.5 + setup-test-env-cmd: | + export LOONGARCH64_ROOT_PATH=$GITHUB_WORKSPACE/loongson-gnu-toolchain-8.3-x86_64-loongarch64-linux-gnu-rc1.5 cmake-options: -DCPU_BASELINE='' -DCPU_DISPATCH='' - + - name: lockzhiner-vision-module single-core: true cmake-toolchain: arm-rockchip830-linux-uclibcgnueabihf.toolchain.cmake @@ -1827,6 +1861,8 @@ jobs: git clone --depth 1 https://gitee.com/LockzhinerAI/arm-rockchip830-linux-uclibcgnueabihf.git arm-rockchip830-linux-uclibcgnueabihf setup-env-cmd: | export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/arm-rockchip830-linux-uclibcgnueabihf + setup-test-env-cmd: | + export TOOLCHAIN_ROOT_PATH=$GITHUB_WORKSPACE/arm-rockchip830-linux-uclibcgnueabihf cmake-options: -DWITH_RK=ON env: @@ -1841,12 +1877,12 @@ jobs: - uses: actions/checkout@v4 - uses: actions/download-artifact@v4 with: - name: opencv-mobile-4.10.0-source + name: opencv-mobile-4.11.0-source - name: setup-opencv-source run: | - unzip -q opencv-mobile-4.10.0.zip - echo "SOURCE_DIR=opencv-mobile-4.10.0" >> $GITHUB_ENV - echo "PACKAGE_NAME=opencv-mobile-4.10.0-${{ matrix.name }}" >> $GITHUB_ENV + unzip -q opencv-mobile-4.11.0.zip + echo "SOURCE_DIR=opencv-mobile-4.11.0" >> $GITHUB_ENV + echo "PACKAGE_NAME=opencv-mobile-4.11.0-${{ matrix.name }}" >> $GITHUB_ENV - name: setup-toolchain run: ${{ matrix.setup-toolchain-cmd }} @@ -1854,7 +1890,7 @@ jobs: if: ${{ matrix.single-core }} run: | cd ${{ env.SOURCE_DIR }} - patch -p1 -i ../patches/opencv-4.10.0-no-atomic.patch + patch -p1 -i ../patches/opencv-4.11.0-no-atomic.patch mkdir build && cd build ${{ matrix.setup-env-cmd }} cmake ${{ env.COMMON_CMAKE_OPTIONS }} ${{ matrix.cmake-options }} \ @@ -1884,7 +1920,7 @@ jobs: run: | cd test mkdir build && cd build - ${{ matrix.setup-env-cmd }} + ${{ matrix.setup-test-env-cmd }} cmake ${{ env.COMMON_CMAKE_OPTIONS }} -DOpenCV_DIR=$GITHUB_WORKSPACE/${{ env.PACKAGE_NAME }}/lib/cmake/opencv4 .. cmake --build . -j $(nproc) diff --git a/README.md b/README.md index fba16c8..66d1cb9 100644 --- a/README.md +++ b/README.md @@ -14,11 +14,11 @@ ![Firefox](https://img.shields.io/badge/Firefox-FF7139?style=for-the-badge&logo=Firefox-Browser&logoColor=white) ![Chrome](https://img.shields.io/badge/Chrome-4285F4?style=for-the-badge&logo=Google-chrome&logoColor=white) -:heavy_check_mark: This project provides the minimal build of opencv library for the **Android**, **iOS** and **ARM Linux** platforms. +:heavy_check_mark: This project provides the minimal build of [opencv](https://github.com/opencv/opencv) library for the **Android**, **iOS** and **ARM Linux** platforms. :heavy_check_mark: Packages for **Windows**, **Linux**, **MacOS**, **HarmonyOS** and **WebAssembly** are available now. -:heavy_check_mark: We provide prebuild binary packages for opencv **2.4.13.7**, **3.4.20** and **4.10.0**. +:heavy_check_mark: We provide prebuild binary packages for opencv **2.4.13.7**, **3.4.20** and **4.11.0**. :heavy_check_mark: We also provide prebuild package for **Mac-Catalyst**, **watchOS**, **tvOS**, **visionOS** and **Apple xcframework**. @@ -30,11 +30,11 @@ :heavy_check_mark: ***NEW FEATURE*** [`cv::VideoWriter` supports jpg streaming over http](#cvvideowriter-supports-jpg-streaming-over-http) -|opencv 4.10.0 package size|The official opencv|opencv-mobile| +|opencv 4.11.0 package size|The official opencv|opencv-mobile| |:-:|:-:|:-:| -|source zip|95.2 MB|8.25 MB| -|android|292 MB|17.7 MB| -|ios|207 MB|3.97 MB| +|source zip|95.3 MB|8.25 MB| +|android|301 MB|17.7 MB| +|ios|209 MB|3.97 MB| @@ -61,7 +61,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0.zip) @@ -75,7 +75,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-android.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-android.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-android.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-android.zip) @@ -89,7 +89,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-harmonyos.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-harmonyos.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-harmonyos.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-harmonyos.zip) @@ -103,7 +103,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-ios.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-ios.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-ios.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-ios.zip) @@ -113,7 +113,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-ios-simulator.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-ios-simulator.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-ios-simulator.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-ios-simulator.zip) @@ -127,7 +127,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-macos.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-macos.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-macos.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-macos.zip) @@ -137,7 +137,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-mac-catalyst.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-mac-catalyst.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-mac-catalyst.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-mac-catalyst.zip) @@ -147,7 +147,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-watchos.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-watchos.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-watchos.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-watchos.zip) @@ -157,7 +157,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-watchos-simulator.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-watchos-simulator.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-watchos-simulator.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-watchos-simulator.zip) @@ -167,7 +167,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-tvos.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-tvos.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-tvos.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-tvos.zip) @@ -177,7 +177,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-tvos-simulator.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-tvos-simulator.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-tvos-simulator.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-tvos-simulator.zip) @@ -187,7 +187,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-visionos.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-visionos.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-visionos.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-visionos.zip) @@ -197,7 +197,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-visionos-simulator.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-visionos-simulator.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-visionos-simulator.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-visionos-simulator.zip) @@ -207,13 +207,13 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-apple.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-apple.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-apple.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-apple.zip) - @@ -221,7 +221,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-ubuntu-2004.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-ubuntu-2004.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-ubuntu-2004.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-ubuntu-2004.zip) @@ -231,7 +231,17 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-ubuntu-2204.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-ubuntu-2204.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-ubuntu-2204.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-ubuntu-2204.zip) + + + + + + @@ -245,7 +255,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-windows-vs2015.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-windows-vs2015.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-windows-vs2015.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-windows-vs2015.zip) @@ -255,7 +265,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-windows-vs2017.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-windows-vs2017.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-windows-vs2017.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-windows-vs2017.zip) @@ -265,7 +275,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-windows-vs2019.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-windows-vs2019.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-windows-vs2019.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-windows-vs2019.zip) @@ -275,7 +285,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-windows-vs2022.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-windows-vs2022.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-windows-vs2022.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-windows-vs2022.zip) @@ -289,7 +299,7 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-webassembly.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-webassembly.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-webassembly.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-webassembly.zip) @@ -303,15 +313,15 @@ https://github.com/nihui/opencv-mobile/releases/latest [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-armlinux.zip) [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-armlinux.zip) - [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0-armlinux.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-armlinux.zip)
+ Ubuntu-20.04
Ubuntu-24.04 + + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-2.4.13.7-ubuntu-2404.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-3.4.20-ubuntu-2404.zip) + [](https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0-ubuntu-2404.zip)
-* Android package build with ndk r26c and android api 21 +* Android package build with ndk r28 and android api 21, [KleidiCV](https://gitlab.arm.com/kleidi/kleidicv) HAL enabled for arm64-v8a * iOS / MacOS / Mac-Catalyst / watchOS / tvOS / visionOS package build with Xcode 15.2 -* ARM Linux package build with cross-compiler on Ubuntu-22.04 +* ARM Linux package build with cross-compiler on Ubuntu-24.04 * WebAssembly package build with Emscripten 3.1.28 ### opencv-mobile package for development boards @@ -326,8 +336,8 @@ https://github.com/nihui/opencv-mobile/releases/latest
riscv64-linux-musl
✅ HW JPG decoder
✅ MIPI CSI camera
- - opencv4-milkv-duo + + opencv4-milkv-duo @@ -338,8 +348,8 @@ https://github.com/nihui/opencv-mobile/releases/latest
riscv64-linux-musl
✅ HW JPG decoder
✅ MIPI CSI camera
- - opencv4-licheerv-nano + + opencv4-licheerv-nano @@ -351,8 +361,8 @@ https://github.com/nihui/opencv-mobile/releases/latest ✅ HW JPG encoder
✅ MIPI CSI camera
✅ DPI LCD screen
- - opencv4-luckfox-pico + + opencv4-luckfox-pico @@ -363,8 +373,8 @@ https://github.com/nihui/opencv-mobile/releases/latest
yuzuki-lizard
arm-linux-uclibcgnueabihf
- - opencv4-yuzuki-lizard + + opencv4-yuzuki-lizard @@ -377,8 +387,8 @@ https://github.com/nihui/opencv-mobile/releases/latest ✅ HW JPG encoder
✅ MIPI CSI camera
✅ SPI LCD screen
- - opencv4-tinyvision + + opencv4-tinyvision @@ -389,8 +399,8 @@ https://github.com/nihui/opencv-mobile/releases/latest
arm-openwrt-linux-gnueabi
✅ HW JPG decoder
✅ HW JPG encoder
- - opencv4-yuzuki-chameleon + + opencv4-yuzuki-chameleon @@ -401,8 +411,8 @@ https://github.com/nihui/opencv-mobile/releases/latest
purple-pi
arm-linux-uclibcgnueabihf
- - opencv4-purple-pi + + opencv4-purple-pi @@ -413,8 +423,8 @@ https://github.com/nihui/opencv-mobile/releases/latest
arm-linux-gnueabi
✅ HW JPG decoder
✅ HW JPG encoder
- - opencv4-myir-t113i + + opencv4-myir-t113i @@ -423,8 +433,8 @@ https://github.com/nihui/opencv-mobile/releases/latest
2k0300-fengniao
loongarch64-linux-gnu
- - opencv4-2k0300-fengniao + + opencv4-2k0300-fengniao @@ -437,8 +447,8 @@ https://github.com/nihui/opencv-mobile/releases/latest ✅ HW JPG encoder
✅ MIPI CSI camera
✅ DPI LCD screen
- - opencv4-lockzhiner-vision-module + + opencv4-lockzhiner-vision-module @@ -449,7 +459,7 @@ https://github.com/nihui/opencv-mobile/releases/latest 2. Modify ```/app/src/main/jni/CMakeLists.txt``` to find and link opencv ```cmake -set(OpenCV_DIR ${CMAKE_SOURCE_DIR}/opencv-mobile-4.10.0-android/sdk/native/jni) +set(OpenCV_DIR ${CMAKE_SOURCE_DIR}/opencv-mobile-4.11.0-android/sdk/native/jni) find_package(OpenCV REQUIRED) target_link_libraries(your_jni_target ${OpenCV_LIBS}) @@ -466,7 +476,7 @@ target_link_libraries(your_jni_target ${OpenCV_LIBS}) 3. Pass ```-DOpenCV_STATIC=ON``` to cmake option for windows build ```cmake -set(OpenCV_DIR ${CMAKE_SOURCE_DIR}/opencv-mobile-4.10.0-armlinux/arm-linux-gnueabihf/lib/cmake/opencv4) +set(OpenCV_DIR ${CMAKE_SOURCE_DIR}/opencv-mobile-4.11.0-armlinux/arm-linux-gnueabihf/lib/cmake/opencv4) find_package(OpenCV REQUIRED) target_link_libraries(your_target ${OpenCV_LIBS}) @@ -485,9 +495,9 @@ The opencv-mobile source code package is the result of steps 1 and 2. Based on i **step 1. download opencv-mobile source** ```shell -wget -q https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.10.0.zip -unzip -q opencv-mobile-4.10.0.zip -cd opencv-mobile-4.10.0 +wget -q https://github.com/nihui/opencv-mobile/releases/latest/download/opencv-mobile-4.11.0.zip +unzip -q opencv-mobile-4.11.0.zip +cd opencv-mobile-4.11.0 ``` **step 2. apply your opencv option changes to options.txt** @@ -509,7 +519,7 @@ make install **step 4. make a package** ```shell -zip -r -9 opencv-mobile-4.10.0-mypackage.zip install +zip -r -9 opencv-mobile-4.11.0-mypackage.zip install ``` # Some notes diff --git a/fix-windows-sdk-26100-arm64-wchar.patch b/fix-windows-sdk-26100-arm64-wchar.patch new file mode 100644 index 0000000..f16cc74 --- /dev/null +++ b/fix-windows-sdk-26100-arm64-wchar.patch @@ -0,0 +1,20 @@ +--- "Windows Kits/10/Include/10.0.26100.0/ucrt/wchar.h" 2025-03-21 11:30:49.000000000 +0000 ++++ "Windows Kits/10/Include/10.0.26100.0/ucrt/wchar.h" 2025-03-21 11:40:35.766780259 +0000 +@@ -228,7 +228,7 @@ typedef wchar_t _Wint_t; + unsigned long Index = 0; + wchar_t const* S = _S; + +- #if defined(_M_ARM64) || defined(_M_ARM64EC) || defined(_M_HYBRID_X86_ARM64) ++ #if 0//defined(_M_ARM64) || defined(_M_ARM64EC) || defined(_M_HYBRID_X86_ARM64) + if (_N >= 4) + { + uint16x8_t V2 = vdupq_n_u16(_C); +@@ -352,7 +352,7 @@ typedef wchar_t _Wint_t; + wchar_t const* S1 = _S1; + wchar_t const* S2 = _S2; + +- #if defined(_M_ARM64) || defined(_M_ARM64EC) || defined(_M_HYBRID_X86_ARM64) ++ #if 0//defined(_M_ARM64) || defined(_M_ARM64EC) || defined(_M_HYBRID_X86_ARM64) + + while (Count + 8 <= _N) + { diff --git a/patches/opencv-4.10.0-no-zlib.patch b/patches/opencv-4.10.0-no-zlib.patch deleted file mode 100644 index 4105b80..0000000 --- a/patches/opencv-4.10.0-no-zlib.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nuarp opencv-4.10.0.orig/modules/core/src/persistence.hpp opencv-4.10.0/modules/core/src/persistence.hpp ---- opencv-4.10.0.orig/modules/core/src/persistence.hpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/persistence.hpp 2024-06-04 20:54:02.933180491 +0800 -@@ -12,7 +12,7 @@ - #include - #include - --#define USE_ZLIB 1 -+#define USE_ZLIB 0 - #if USE_ZLIB - # ifndef _LFS64_LARGEFILE - # define _LFS64_LARGEFILE 0 diff --git a/patches/opencv-4.10.0-drawing-mono-font.patch b/patches/opencv-4.11.0-drawing-mono-font.patch similarity index 83% rename from patches/opencv-4.10.0-drawing-mono-font.patch rename to patches/opencv-4.11.0-drawing-mono-font.patch index 2f91d7e..9f2b403 100644 --- a/patches/opencv-4.10.0-drawing-mono-font.patch +++ b/patches/opencv-4.11.0-drawing-mono-font.patch @@ -1,7 +1,7 @@ -diff -Nuarp opencv-4.10.0.orig/modules/imgproc/include/opencv2/imgproc.hpp opencv-4.10.0/modules/imgproc/include/opencv2/imgproc.hpp ---- opencv-4.10.0.orig/modules/imgproc/include/opencv2/imgproc.hpp 2024-08-03 13:16:17.646944880 +0800 -+++ opencv-4.10.0/modules/imgproc/include/opencv2/imgproc.hpp 2024-08-01 23:08:51.014584430 +0800 -@@ -4898,6 +4898,37 @@ CV_EXPORTS_W double getFontScaleFromHeig +diff -Nuarp opencv-4.11.0.orig/modules/imgproc/include/opencv2/imgproc.hpp opencv-4.11.0/modules/imgproc/include/opencv2/imgproc.hpp +--- opencv-4.11.0.orig/modules/imgproc/include/opencv2/imgproc.hpp 2025-01-19 00:07:25.706895750 +0800 ++++ opencv-4.11.0/modules/imgproc/include/opencv2/imgproc.hpp 2025-01-19 00:19:27.955301521 +0800 +@@ -4929,6 +4929,37 @@ CV_EXPORTS_W double getFontScaleFromHeig const int pixelHeight, const int thickness = 1); @@ -39,9 +39,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/include/opencv2/imgproc.hpp openc /** @brief Class for iterating over all pixels on a raster line segment. The class LineIterator is used to get each pixel of a raster line connecting -diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/drawing.cpp opencv-4.10.0/modules/imgproc/src/drawing.cpp ---- opencv-4.10.0.orig/modules/imgproc/src/drawing.cpp 2024-08-03 13:16:17.650944867 +0800 -+++ opencv-4.10.0/modules/imgproc/src/drawing.cpp 2024-08-01 23:09:27.473433279 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/imgproc/src/drawing.cpp opencv-4.11.0/modules/imgproc/src/drawing.cpp +--- opencv-4.11.0.orig/modules/imgproc/src/drawing.cpp 2025-01-19 00:07:25.768896509 +0800 ++++ opencv-4.11.0/modules/imgproc/src/drawing.cpp 2025-01-19 00:24:39.379680129 +0800 @@ -43,6 +43,25 @@ using namespace cv; namespace cv @@ -65,10 +65,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/drawing.cpp opencv-4.10.0/mod + +namespace cv +{ - enum { XY_SHIFT = 16, XY_ONE = 1 << XY_SHIFT, DRAWING_STORAGE_BLOCK = (1<<12) - 256 }; -@@ -2076,6 +2095,7 @@ void polylines( InputOutputArray _img, c + static const int MAX_THICKNESS = 32767; +@@ -2069,6 +2088,7 @@ void polylines( InputOutputArray _img, c } @@ -76,7 +76,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/drawing.cpp opencv-4.10.0/mod enum { FONT_SIZE_SHIFT=8, FONT_ITALIC_ALPHA=(1 << 8), FONT_ITALIC_DIGIT=(2 << 8), FONT_ITALIC_PUNCT=(4 << 8), FONT_ITALIC_BRACES=(8 << 8), FONT_HAVE_GREEK=(16 << 8), -@@ -2290,6 +2310,7 @@ inline void readCheck(int &c, int &i, co +@@ -2283,6 +2303,7 @@ inline void readCheck(int &c, int &i, co } extern const char* g_HersheyGlyphs[]; @@ -84,7 +84,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/drawing.cpp opencv-4.10.0/mod void putText( InputOutputArray _img, const String& text, Point org, int fontFace, double fontScale, Scalar color, -@@ -2303,6 +2324,35 @@ void putText( InputOutputArray _img, con +@@ -2296,6 +2317,35 @@ void putText( InputOutputArray _img, con return; } Mat img = _img.getMat(); @@ -120,7 +120,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/drawing.cpp opencv-4.10.0/mod const int* ascii = getFontData(fontFace); double buf[4]; -@@ -2357,10 +2407,21 @@ void putText( InputOutputArray _img, con +@@ -2350,10 +2400,21 @@ void putText( InputOutputArray _img, con } view_x += dx; } @@ -142,7 +142,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/drawing.cpp opencv-4.10.0/mod Size size; double view_x = 0; const char **faces = cv::g_HersheyGlyphs; -@@ -2387,10 +2448,13 @@ Size getTextSize( const String& text, in +@@ -2380,10 +2441,13 @@ Size getTextSize( const String& text, in if( _base_line ) *_base_line = cvRound(base_line*fontScale + thickness*0.5); return size; @@ -156,7 +156,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/drawing.cpp opencv-4.10.0/mod // By https://stackoverflow.com/a/27898487/1531708 const int* ascii = getFontData(fontFace); -@@ -2398,6 +2462,96 @@ double getFontScaleFromHeight(const int +@@ -2391,6 +2455,96 @@ double getFontScaleFromHeight(const int int cap_line = (ascii[0] >> 4) & 15; return static_cast(pixelHeight - static_cast((thickness + 1)) / 2.0) / static_cast(cap_line + base_line); @@ -253,7 +253,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/drawing.cpp opencv-4.10.0/mod } } -@@ -2883,7 +3037,7 @@ cvInitFont( CvFont *font, int font_face, +@@ -2870,7 +3024,7 @@ cvInitFont( CvFont *font, int font_face, { CV_Assert( font != 0 && hscale > 0 && vscale > 0 && thickness >= 0 ); @@ -262,9 +262,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/drawing.cpp opencv-4.10.0/mod font->font_face = font_face; font->hscale = (float)hscale; font->vscale = (float)vscale; -diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/hershey_fonts.cpp opencv-4.10.0/modules/imgproc/src/hershey_fonts.cpp ---- opencv-4.10.0.orig/modules/imgproc/src/hershey_fonts.cpp 2024-08-03 13:16:17.651944863 +0800 -+++ opencv-4.10.0/modules/imgproc/src/hershey_fonts.cpp 2024-08-03 13:16:57.200812630 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/imgproc/src/hershey_fonts.cpp opencv-4.11.0/modules/imgproc/src/hershey_fonts.cpp +--- opencv-4.11.0.orig/modules/imgproc/src/hershey_fonts.cpp 2025-01-19 00:07:25.781896668 +0800 ++++ opencv-4.11.0/modules/imgproc/src/hershey_fonts.cpp 2025-01-19 00:19:27.956301532 +0800 @@ -51,6 +51,7 @@ namespace cv { diff --git a/patches/opencv-4.10.0-fix-windows-arm-arch.patch b/patches/opencv-4.11.0-fix-windows-arm-arch.patch similarity index 60% rename from patches/opencv-4.10.0-fix-windows-arm-arch.patch rename to patches/opencv-4.11.0-fix-windows-arm-arch.patch index c377761..62eb3d7 100644 --- a/patches/opencv-4.10.0-fix-windows-arm-arch.patch +++ b/patches/opencv-4.11.0-fix-windows-arm-arch.patch @@ -1,7 +1,7 @@ -diff -Nuarp opencv-4.10.0.orig/cmake/OpenCVDetectCXXCompiler.cmake opencv-4.10.0/cmake/OpenCVDetectCXXCompiler.cmake ---- opencv-4.10.0.orig/cmake/OpenCVDetectCXXCompiler.cmake 2024-06-02 19:41:07.000000000 +0800 -+++ opencv-4.10.0/cmake/OpenCVDetectCXXCompiler.cmake 2024-06-10 14:58:22.061466618 +0800 -@@ -150,9 +150,9 @@ elseif(MSVC) +diff -Nuarp opencv-4.11.0.orig/cmake/OpenCVDetectCXXCompiler.cmake opencv-4.11.0/cmake/OpenCVDetectCXXCompiler.cmake +--- opencv-4.11.0.orig/cmake/OpenCVDetectCXXCompiler.cmake 2025-01-18 23:31:52.784608127 +0800 ++++ opencv-4.11.0/cmake/OpenCVDetectCXXCompiler.cmake 2025-01-18 23:48:03.298849297 +0800 +@@ -154,9 +154,9 @@ elseif(MSVC) # see Modules/CMakeGenericSystem.cmake if("${CMAKE_GENERATOR}" MATCHES "(Win64|IA64)") set(OpenCV_ARCH "x64") @@ -13,9 +13,9 @@ diff -Nuarp opencv-4.10.0.orig/cmake/OpenCVDetectCXXCompiler.cmake opencv-4.10.0 set(OpenCV_ARCH "ARM") elseif("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8") set(OpenCV_ARCH "x64") -diff -Nuarp opencv-4.10.0.orig/cmake/templates/OpenCVConfig.root-WIN32.cmake.in opencv-4.10.0/cmake/templates/OpenCVConfig.root-WIN32.cmake.in ---- opencv-4.10.0.orig/cmake/templates/OpenCVConfig.root-WIN32.cmake.in 2024-06-02 19:41:07.000000000 +0800 -+++ opencv-4.10.0/cmake/templates/OpenCVConfig.root-WIN32.cmake.in 2024-06-10 14:58:43.470327117 +0800 +diff -Nuarp opencv-4.11.0.orig/cmake/templates/OpenCVConfig.root-WIN32.cmake.in opencv-4.11.0/cmake/templates/OpenCVConfig.root-WIN32.cmake.in +--- opencv-4.11.0.orig/cmake/templates/OpenCVConfig.root-WIN32.cmake.in 2025-01-18 23:31:52.785608139 +0800 ++++ opencv-4.11.0/cmake/templates/OpenCVConfig.root-WIN32.cmake.in 2025-01-18 23:48:03.298849297 +0800 @@ -99,9 +99,9 @@ elseif(MSVC) # see Modules/CMakeGenericSystem.cmake if("${CMAKE_GENERATOR}" MATCHES "(Win64|IA64)") diff --git a/patches/opencv-4.10.0-link-openmp.patch b/patches/opencv-4.11.0-link-openmp.patch similarity index 50% rename from patches/opencv-4.10.0-link-openmp.patch rename to patches/opencv-4.11.0-link-openmp.patch index 0c96465..9c2f1ee 100644 --- a/patches/opencv-4.10.0-link-openmp.patch +++ b/patches/opencv-4.11.0-link-openmp.patch @@ -1,6 +1,6 @@ -diff -Nuarp opencv-4.10.0.orig/cmake/OpenCVGenConfig.cmake opencv-4.10.0/cmake/OpenCVGenConfig.cmake ---- opencv-4.10.0.orig/cmake/OpenCVGenConfig.cmake 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/cmake/OpenCVGenConfig.cmake 2024-06-04 21:00:46.778862221 +0800 +diff -Nuarp opencv-4.11.0.orig/cmake/OpenCVGenConfig.cmake opencv-4.11.0/cmake/OpenCVGenConfig.cmake +--- opencv-4.11.0.orig/cmake/OpenCVGenConfig.cmake 2025-01-18 23:31:52.784608127 +0800 ++++ opencv-4.11.0/cmake/OpenCVGenConfig.cmake 2025-01-18 23:46:35.410724844 +0800 @@ -19,6 +19,10 @@ if(HAVE_CUDA) endif() endif() @@ -12,9 +12,9 @@ diff -Nuarp opencv-4.10.0.orig/cmake/OpenCVGenConfig.cmake opencv-4.10.0/cmake/O if(ANDROID) if(NOT ANDROID_NATIVE_API_LEVEL) set(OpenCV_ANDROID_NATIVE_API_LEVEL_CONFIGCMAKE 0) -diff -Nuarp opencv-4.10.0.orig/cmake/templates/OpenCVConfig.cmake.in opencv-4.10.0/cmake/templates/OpenCVConfig.cmake.in ---- opencv-4.10.0.orig/cmake/templates/OpenCVConfig.cmake.in 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/cmake/templates/OpenCVConfig.cmake.in 2024-06-04 21:01:05.274804136 +0800 +diff -Nuarp opencv-4.11.0.orig/cmake/templates/OpenCVConfig.cmake.in opencv-4.11.0/cmake/templates/OpenCVConfig.cmake.in +--- opencv-4.11.0.orig/cmake/templates/OpenCVConfig.cmake.in 2025-01-18 23:31:52.785608139 +0800 ++++ opencv-4.11.0/cmake/templates/OpenCVConfig.cmake.in 2025-01-18 23:46:35.410724844 +0800 @@ -94,6 +94,7 @@ endif() @@ -23,19 +23,19 @@ diff -Nuarp opencv-4.10.0.orig/cmake/templates/OpenCVConfig.cmake.in opencv-4.10 @ANDROID_CONFIGCMAKE@ @IPPICV_CONFIGCMAKE@ -diff -Nuarp opencv-4.10.0.orig/cmake/templates/OpenCVConfig-OPENMP.cmake.in opencv-4.10.0/cmake/templates/OpenCVConfig-OPENMP.cmake.in ---- opencv-4.10.0.orig/cmake/templates/OpenCVConfig-OPENMP.cmake.in 1970-01-01 08:00:00.000000000 +0800 -+++ opencv-4.10.0/cmake/templates/OpenCVConfig-OPENMP.cmake.in 2024-06-04 21:01:34.441712541 +0800 +diff -Nuarp opencv-4.11.0.orig/cmake/templates/OpenCVConfig-OPENMP.cmake.in opencv-4.11.0/cmake/templates/OpenCVConfig-OPENMP.cmake.in +--- opencv-4.11.0.orig/cmake/templates/OpenCVConfig-OPENMP.cmake.in 1970-01-01 08:00:00.000000000 +0800 ++++ opencv-4.11.0/cmake/templates/OpenCVConfig-OPENMP.cmake.in 2025-01-18 23:46:35.410724844 +0800 @@ -0,0 +1,5 @@ +set(OpenCV_USE_OPENMP "@HAVE_OPENMP@") + +if(OpenCV_USE_OPENMP) + find_package(OpenMP) +endif() -diff -Nuarp opencv-4.10.0.orig/modules/core/CMakeLists.txt opencv-4.10.0/modules/core/CMakeLists.txt ---- opencv-4.10.0.orig/modules/core/CMakeLists.txt 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/CMakeLists.txt 2024-06-04 20:59:13.030307438 +0800 -@@ -190,8 +190,14 @@ if(HAVE_HPX) +diff -Nuarp opencv-4.11.0.orig/modules/core/CMakeLists.txt opencv-4.11.0/modules/core/CMakeLists.txt +--- opencv-4.11.0.orig/modules/core/CMakeLists.txt 2025-01-18 23:31:52.823608595 +0800 ++++ opencv-4.11.0/modules/core/CMakeLists.txt 2025-01-18 23:46:35.410724844 +0800 +@@ -198,8 +198,14 @@ if(HAVE_HPX) ocv_target_link_libraries(${the_module} LINK_PRIVATE "${HPX_LIBRARIES}") endif() @@ -52,9 +52,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/CMakeLists.txt opencv-4.10.0/modules endif() ocv_add_accuracy_tests() -diff -Nuarp opencv-4.10.0.orig/modules/video/CMakeLists.txt opencv-4.10.0/modules/video/CMakeLists.txt ---- opencv-4.10.0.orig/modules/video/CMakeLists.txt 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/video/CMakeLists.txt 2024-06-04 20:59:36.412174358 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/video/CMakeLists.txt opencv-4.11.0/modules/video/CMakeLists.txt +--- opencv-4.11.0.orig/modules/video/CMakeLists.txt 2025-01-18 23:31:52.852608943 +0800 ++++ opencv-4.11.0/modules/video/CMakeLists.txt 2025-01-18 23:46:35.410724844 +0800 @@ -10,7 +10,3 @@ ocv_define_module(video python js diff --git a/patches/opencv-4.10.0-minimal-install.patch b/patches/opencv-4.11.0-minimal-install.patch similarity index 72% rename from patches/opencv-4.10.0-minimal-install.patch rename to patches/opencv-4.11.0-minimal-install.patch index 06562cb..689408e 100644 --- a/patches/opencv-4.10.0-minimal-install.patch +++ b/patches/opencv-4.11.0-minimal-install.patch @@ -1,6 +1,6 @@ -diff -Nuarp opencv-4.10.0.orig/cmake/OpenCVGenAndroidMK.cmake opencv-4.10.0/cmake/OpenCVGenAndroidMK.cmake ---- opencv-4.10.0.orig/cmake/OpenCVGenAndroidMK.cmake 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/cmake/OpenCVGenAndroidMK.cmake 2024-06-04 21:02:30.323531599 +0800 +diff -Nuarp opencv-4.11.0.orig/cmake/OpenCVGenAndroidMK.cmake opencv-4.11.0/cmake/OpenCVGenAndroidMK.cmake +--- opencv-4.11.0.orig/cmake/OpenCVGenAndroidMK.cmake 2025-01-18 23:31:52.784608127 +0800 ++++ opencv-4.11.0/cmake/OpenCVGenAndroidMK.cmake 2025-01-18 23:49:42.727186205 +0800 @@ -76,6 +76,4 @@ if(ANDROID) configure_file("${OpenCV_SOURCE_DIR}/cmake/templates/OpenCV.mk.in" "${CMAKE_BINARY_DIR}/unix-install/OpenCV.mk" @ONLY) @@ -8,10 +8,10 @@ diff -Nuarp opencv-4.10.0.orig/cmake/OpenCVGenAndroidMK.cmake opencv-4.10.0/cmak - install(FILES ${CMAKE_BINARY_DIR}/unix-install/OpenCV.mk DESTINATION ${OPENCV_CONFIG_INSTALL_PATH} COMPONENT dev) - install(FILES ${CMAKE_BINARY_DIR}/unix-install/OpenCV-${ANDROID_NDK_ABI_NAME}.mk DESTINATION ${OPENCV_CONFIG_INSTALL_PATH} COMPONENT dev) endif(ANDROID) -diff -Nuarp opencv-4.10.0.orig/cmake/OpenCVUtils.cmake opencv-4.10.0/cmake/OpenCVUtils.cmake ---- opencv-4.10.0.orig/cmake/OpenCVUtils.cmake 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/cmake/OpenCVUtils.cmake 2024-06-04 21:02:50.020458607 +0800 -@@ -976,11 +976,6 @@ macro(ocv_finalize_status) +diff -Nuarp opencv-4.11.0.orig/cmake/OpenCVUtils.cmake opencv-4.11.0/cmake/OpenCVUtils.cmake +--- opencv-4.11.0.orig/cmake/OpenCVUtils.cmake 2025-01-18 23:31:52.785608139 +0800 ++++ opencv-4.11.0/cmake/OpenCVUtils.cmake 2025-01-18 23:49:42.727186205 +0800 +@@ -980,11 +980,6 @@ macro(ocv_finalize_status) endif() endif() @@ -23,10 +23,10 @@ diff -Nuarp opencv-4.10.0.orig/cmake/OpenCVUtils.cmake opencv-4.10.0/cmake/OpenC endmacro() -diff -Nuarp opencv-4.10.0.orig/CMakeLists.txt opencv-4.10.0/CMakeLists.txt ---- opencv-4.10.0.orig/CMakeLists.txt 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/CMakeLists.txt 2024-06-04 21:03:59.252202053 +0800 -@@ -1076,20 +1076,12 @@ ocv_add_modules_compiler_options() +diff -Nuarp opencv-4.11.0.orig/CMakeLists.txt opencv-4.11.0/CMakeLists.txt +--- opencv-4.11.0.orig/CMakeLists.txt 2025-01-18 23:31:52.783608115 +0800 ++++ opencv-4.11.0/CMakeLists.txt 2025-01-18 23:49:42.727186205 +0800 +@@ -1068,20 +1068,12 @@ ocv_add_modules_compiler_options() ocv_register_modules() # Generate targets for documentation @@ -47,7 +47,7 @@ diff -Nuarp opencv-4.10.0.orig/CMakeLists.txt opencv-4.10.0/CMakeLists.txt # ---------------------------------------------------------------------------- # Finalization: generate configuration-based files -@@ -1101,20 +1093,13 @@ ocv_cmake_hook(PRE_FINALIZE) +@@ -1093,20 +1085,13 @@ ocv_cmake_hook(PRE_FINALIZE) include(cmake/OpenCVGenHeaders.cmake) # Generate opencv.pc for pkg-config command @@ -68,7 +68,7 @@ diff -Nuarp opencv-4.10.0.orig/CMakeLists.txt opencv-4.10.0/CMakeLists.txt # Generate ABI descriptor include(cmake/OpenCVGenABI.cmake) -@@ -1140,12 +1125,6 @@ if(INSTALL_TESTS AND OPENCV_TEST_DATA_PA +@@ -1132,12 +1117,6 @@ if(INSTALL_TESTS AND OPENCV_TEST_DATA_PA endif() endif() @@ -81,7 +81,7 @@ diff -Nuarp opencv-4.10.0.orig/CMakeLists.txt opencv-4.10.0/CMakeLists.txt if(NOT OPENCV_LICENSE_FILE) set(OPENCV_LICENSE_FILE ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE) endif() -@@ -1155,11 +1134,6 @@ if(ANDROID OR NOT UNIX) +@@ -1147,11 +1126,6 @@ if(ANDROID OR NOT UNIX) install(FILES ${OPENCV_LICENSE_FILE} PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ DESTINATION ./ COMPONENT libs) @@ -93,9 +93,9 @@ diff -Nuarp opencv-4.10.0.orig/CMakeLists.txt opencv-4.10.0/CMakeLists.txt endif() if(COMMAND ocv_pylint_finalize) -diff -Nuarp opencv-4.10.0.orig/data/CMakeLists.txt opencv-4.10.0/data/CMakeLists.txt ---- opencv-4.10.0.orig/data/CMakeLists.txt 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/data/CMakeLists.txt 2024-06-04 21:04:10.806159236 +0800 +diff -Nuarp opencv-4.11.0.orig/data/CMakeLists.txt opencv-4.11.0/data/CMakeLists.txt +--- opencv-4.11.0.orig/data/CMakeLists.txt 2025-01-18 23:31:52.786608151 +0800 ++++ opencv-4.11.0/data/CMakeLists.txt 2025-01-18 23:49:42.727186205 +0800 @@ -1,9 +1,6 @@ file(GLOB HAAR_CASCADES haarcascades/*.xml) file(GLOB LBP_CASCADES lbpcascades/*.xml) diff --git a/patches/opencv-4.10.0-no-atomic.patch b/patches/opencv-4.11.0-no-atomic.patch similarity index 52% rename from patches/opencv-4.10.0-no-atomic.patch rename to patches/opencv-4.11.0-no-atomic.patch index 9f7ac41..23f5b78 100644 --- a/patches/opencv-4.10.0-no-atomic.patch +++ b/patches/opencv-4.11.0-no-atomic.patch @@ -1,7 +1,7 @@ -diff -Nuarp opencv-4.10.0.orig/modules/core/src/mathfuncs.cpp opencv-4.10.0/modules/core/src/mathfuncs.cpp ---- opencv-4.10.0.orig/modules/core/src/mathfuncs.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/mathfuncs.cpp 2024-06-04 20:57:06.217205470 +0800 -@@ -2187,8 +2187,13 @@ const double* getExpTab64f() +diff -Nuarp opencv-4.11.0.orig/modules/core/src/mathfuncs.cpp opencv-4.11.0/modules/core/src/mathfuncs.cpp +--- opencv-4.11.0.orig/modules/core/src/mathfuncs.cpp 2025-01-18 23:31:52.827608643 +0800 ++++ opencv-4.11.0/modules/core/src/mathfuncs.cpp 2025-01-18 23:55:21.143734178 +0800 +@@ -2170,8 +2170,13 @@ const double* getExpTab64f() const float* getExpTab32f() { static float CV_DECL_ALIGNED(64) expTab_f[EXPTAB_MASK+1]; @@ -15,10 +15,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/mathfuncs.cpp opencv-4.10.0/modu { for( int j = 0; j <= EXPTAB_MASK; j++ ) expTab_f[j] = (float)expTab[j]; -diff -Nuarp opencv-4.10.0.orig/modules/core/src/parallel.cpp opencv-4.10.0/modules/core/src/parallel.cpp ---- opencv-4.10.0.orig/modules/core/src/parallel.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/parallel.cpp 2024-06-04 20:57:58.179745974 +0800 -@@ -513,6 +513,7 @@ void parallel_for_(const cv::Range& rang +diff -Nuarp opencv-4.11.0.orig/modules/core/src/parallel.cpp opencv-4.11.0/modules/core/src/parallel.cpp +--- opencv-4.11.0.orig/modules/core/src/parallel.cpp 2025-01-18 23:43:48.356574419 +0800 ++++ opencv-4.11.0/modules/core/src/parallel.cpp 2025-01-18 23:55:21.143734178 +0800 +@@ -497,6 +497,7 @@ void parallel_for_(const cv::Range& rang if (range.empty()) return; @@ -26,7 +26,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/parallel.cpp opencv-4.10.0/modul static std::atomic flagNestedParallelFor(false); bool isNotNestedRegion = !flagNestedParallelFor.load(); if (isNotNestedRegion) -@@ -531,6 +532,7 @@ void parallel_for_(const cv::Range& rang +@@ -509,6 +510,7 @@ void parallel_for_(const cv::Range& rang } } else // nested parallel_for_() calls are not parallelized diff --git a/patches/opencv-4.10.0-no-gpu.patch b/patches/opencv-4.11.0-no-gpu.patch similarity index 86% rename from patches/opencv-4.10.0-no-gpu.patch rename to patches/opencv-4.11.0-no-gpu.patch index 2c69193..4991147 100644 --- a/patches/opencv-4.10.0-no-gpu.patch +++ b/patches/opencv-4.11.0-no-gpu.patch @@ -1,7 +1,7 @@ -diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/base.hpp opencv-4.10.0/modules/core/include/opencv2/core/base.hpp ---- opencv-4.10.0.orig/modules/core/include/opencv2/core/base.hpp 2024-06-04 21:20:08.187199029 +0800 -+++ opencv-4.10.0/modules/core/include/opencv2/core/base.hpp 2024-06-04 21:25:27.153977700 +0800 -@@ -590,8 +590,6 @@ class CV_EXPORTS RNG; +diff -Nuarp opencv-4.11.0.orig/modules/core/include/opencv2/core/base.hpp opencv-4.11.0/modules/core/include/opencv2/core/base.hpp +--- opencv-4.11.0.orig/modules/core/include/opencv2/core/base.hpp 2025-01-19 00:07:25.164889119 +0800 ++++ opencv-4.11.0/modules/core/include/opencv2/core/base.hpp 2025-01-19 00:07:45.979143770 +0800 +@@ -608,8 +608,6 @@ class CV_EXPORTS RNG; class CV_EXPORTS Mat; class CV_EXPORTS MatExpr; @@ -10,7 +10,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/base.hpp opencv class CV_EXPORTS SparseMat; typedef Mat MatND; -@@ -606,26 +604,6 @@ template class MatConstIte +@@ -624,26 +622,6 @@ template class MatConstIte template class SparseMatIterator_; template class SparseMatConstIterator_; @@ -37,10 +37,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/base.hpp opencv namespace ipp { CV_EXPORTS unsigned long long getIppFeatures(); -diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/cvdef.h opencv-4.10.0/modules/core/include/opencv2/core/cvdef.h ---- opencv-4.10.0.orig/modules/core/include/opencv2/core/cvdef.h 2024-06-04 21:20:08.253198792 +0800 -+++ opencv-4.10.0/modules/core/include/opencv2/core/cvdef.h 2024-06-04 21:25:27.153977700 +0800 -@@ -929,4 +929,9 @@ typedef hfloat float16_t; +diff -Nuarp opencv-4.11.0.orig/modules/core/include/opencv2/core/cvdef.h opencv-4.11.0/modules/core/include/opencv2/core/cvdef.h +--- opencv-4.11.0.orig/modules/core/include/opencv2/core/cvdef.h 2025-01-19 00:07:25.192889461 +0800 ++++ opencv-4.11.0/modules/core/include/opencv2/core/cvdef.h 2025-01-19 00:07:45.979143770 +0800 +@@ -945,4 +945,9 @@ CV_INLINE int CV_FOURCC(char c1, char c2 #include "opencv2/core/fast_math.hpp" // define cvRound(double) #endif @@ -50,9 +50,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/cvdef.h opencv- +#define CV_OVX_RUN(condition, func, ...) + #endif // OPENCV_CORE_CVDEF_H -diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/cvstd.inl.hpp opencv-4.10.0/modules/core/include/opencv2/core/cvstd.inl.hpp ---- opencv-4.10.0.orig/modules/core/include/opencv2/core/cvstd.inl.hpp 2024-06-04 21:20:08.167199101 +0800 -+++ opencv-4.10.0/modules/core/include/opencv2/core/cvstd.inl.hpp 2024-06-04 21:25:27.153977700 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/include/opencv2/core/cvstd.inl.hpp opencv-4.11.0/modules/core/include/opencv2/core/cvstd.inl.hpp +--- opencv-4.11.0.orig/modules/core/include/opencv2/core/cvstd.inl.hpp 2025-01-19 00:07:25.154888997 +0800 ++++ opencv-4.11.0/modules/core/include/opencv2/core/cvstd.inl.hpp 2025-01-19 00:07:45.979143770 +0800 @@ -89,12 +89,6 @@ std::ostream& operator << (std::ostream& return out << Formatter::get()->format(mtx); } @@ -66,10 +66,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/cvstd.inl.hpp o template static inline std::ostream& operator << (std::ostream& out, const Complex<_Tp>& c) { -diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv-4.10.0/modules/core/include/opencv2/core/mat.hpp ---- opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp 2024-06-04 21:20:08.228198882 +0800 -+++ opencv-4.10.0/modules/core/include/opencv2/core/mat.hpp 2024-06-04 21:25:27.154977696 +0800 -@@ -174,13 +174,7 @@ public: +diff -Nuarp opencv-4.11.0.orig/modules/core/include/opencv2/core/mat.hpp opencv-4.11.0/modules/core/include/opencv2/core/mat.hpp +--- opencv-4.11.0.orig/modules/core/include/opencv2/core/mat.hpp 2025-01-19 00:07:25.181889327 +0800 ++++ opencv-4.11.0/modules/core/include/opencv2/core/mat.hpp 2025-01-19 00:07:45.980143782 +0800 +@@ -175,13 +175,7 @@ public: #if OPENCV_ABI_COMPATIBILITY < 500 EXPR = 6 << KIND_SHIFT, //!< removed: https://github.com/opencv/opencv/pull/17046 #endif @@ -83,7 +83,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- #if OPENCV_ABI_COMPATIBILITY < 500 STD_ARRAY =14 << KIND_SHIFT, //!< removed: https://github.com/opencv/opencv/issues/18897 #endif -@@ -201,13 +195,6 @@ public: +@@ -202,13 +196,6 @@ public: template _InputArray(const _Tp* vec, int n); template _InputArray(const Matx<_Tp, m, n>& matx); _InputArray(const double& val); @@ -97,7 +97,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- template _InputArray(const std::array<_Tp, _Nm>& arr); template _InputArray(const std::array& arr); -@@ -217,12 +204,7 @@ public: +@@ -218,12 +205,7 @@ public: Mat getMat(int idx=-1) const; Mat getMat_(int idx=-1) const; @@ -110,7 +110,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- int getFlags() const; void* getObj() const; -@@ -247,13 +229,9 @@ public: +@@ -248,13 +230,9 @@ public: size_t offset(int i=-1) const; size_t step(int i=-1) const; bool isMat() const; @@ -124,7 +124,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- ~_InputArray(); protected: -@@ -315,11 +293,6 @@ public: +@@ -316,11 +294,6 @@ public: _OutputArray(int _flags, void* _obj); _OutputArray(Mat& m); _OutputArray(std::vector& vec); @@ -136,7 +136,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- template _OutputArray(std::vector<_Tp>& vec); _OutputArray(std::vector& vec) = delete; // not supported template _OutputArray(std::vector >& vec); -@@ -328,24 +301,15 @@ public: +@@ -329,24 +302,15 @@ public: template _OutputArray(Mat_<_Tp>& m); template _OutputArray(_Tp* vec, int n); template _OutputArray(Matx<_Tp, m, n>& matx); @@ -161,7 +161,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- template _OutputArray(std::array<_Tp, _Nm>& arr); template _OutputArray(const std::array<_Tp, _Nm>& arr); -@@ -359,11 +323,6 @@ public: +@@ -360,11 +324,6 @@ public: bool fixedType() const; bool needed() const; Mat& getMatRef(int i=-1) const; @@ -173,7 +173,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- void create(Size sz, int type, int i=-1, bool allowTransposed=false, _OutputArray::DepthMask fixedDepthMask=static_cast<_OutputArray::DepthMask>(0)) const; void create(int rows, int cols, int type, int i=-1, bool allowTransposed=false, _OutputArray::DepthMask fixedDepthMask=static_cast<_OutputArray::DepthMask>(0)) const; void create(int dims, const int* size, int type, int i=-1, bool allowTransposed=false, _OutputArray::DepthMask fixedDepthMask=static_cast<_OutputArray::DepthMask>(0)) const; -@@ -372,13 +331,10 @@ public: +@@ -373,13 +332,10 @@ public: void clear() const; void setTo(const _InputArray& value, const _InputArray & mask = _InputArray()) const; @@ -187,7 +187,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- void move(Mat& m) const; }; -@@ -390,10 +346,6 @@ public: +@@ -391,10 +347,6 @@ public: _InputOutputArray(int _flags, void* _obj); _InputOutputArray(Mat& m); _InputOutputArray(std::vector& vec); @@ -198,7 +198,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- template _InputOutputArray(std::vector<_Tp>& vec); _InputOutputArray(std::vector& vec) = delete; // not supported template _InputOutputArray(std::vector >& vec); -@@ -401,24 +353,15 @@ public: +@@ -402,24 +354,15 @@ public: template _InputOutputArray(Mat_<_Tp>& m); template _InputOutputArray(_Tp* vec, int n); template _InputOutputArray(Matx<_Tp, m, n>& matx); @@ -223,7 +223,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- template _InputOutputArray(std::array<_Tp, _Nm>& arr); template _InputOutputArray(const std::array<_Tp, _Nm>& arr); -@@ -1057,9 +1000,6 @@ public: +@@ -1074,9 +1017,6 @@ public: */ template explicit Mat(const MatCommaInitializer_<_Tp>& commaInitializer); @@ -233,7 +233,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- //! destructor - calls release() ~Mat(); -@@ -1082,9 +1022,6 @@ public: +@@ -1099,9 +1039,6 @@ public: */ Mat& operator = (const MatExpr& expr); @@ -243,7 +243,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- /** @brief Creates a matrix header for the specified matrix row. The method makes a new header for the specified matrix row and returns it. This is an O(1) -@@ -2428,227 +2365,6 @@ typedef Mat_ Mat2d; +@@ -2445,227 +2382,6 @@ typedef Mat_ Mat2d; typedef Mat_ Mat3d; typedef Mat_ Mat4d; @@ -471,15 +471,15 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.hpp opencv- /////////////////////////// multi-dimensional sparse matrix ////////////////////////// -diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.inl.hpp opencv-4.10.0/modules/core/include/opencv2/core/mat.inl.hpp ---- opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.inl.hpp 2024-06-04 21:20:08.165199108 +0800 -+++ opencv-4.10.0/modules/core/include/opencv2/core/mat.inl.hpp 2024-06-04 21:25:27.155977692 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/include/opencv2/core/mat.inl.hpp opencv-4.11.0/modules/core/include/opencv2/core/mat.inl.hpp +--- opencv-4.11.0.orig/modules/core/include/opencv2/core/mat.inl.hpp 2025-01-19 00:07:25.152888972 +0800 ++++ opencv-4.11.0/modules/core/include/opencv2/core/mat.inl.hpp 2025-01-19 00:08:39.406797435 +0800 @@ -102,8 +102,6 @@ inline _InputArray::_InputArray() { init inline _InputArray::_InputArray(int _flags, void* _obj) { init(_flags, _obj); } - inline _InputArray::_InputArray(const Mat& m) { init(MAT+ACCESS_READ, &m); } - inline _InputArray::_InputArray(const std::vector& vec) { init(STD_VECTOR_MAT+ACCESS_READ, &vec); } --inline _InputArray::_InputArray(const UMat& m) { init(UMAT+ACCESS_READ, &m); } --inline _InputArray::_InputArray(const std::vector& vec) { init(STD_VECTOR_UMAT+ACCESS_READ, &vec); } + inline _InputArray::_InputArray(const Mat& m) { init(+MAT+ACCESS_READ, &m); } + inline _InputArray::_InputArray(const std::vector& vec) { init(+STD_VECTOR_MAT+ACCESS_READ, &vec); } +-inline _InputArray::_InputArray(const UMat& m) { init(+UMAT+ACCESS_READ, &m); } +-inline _InputArray::_InputArray(const std::vector& vec) { init(+STD_VECTOR_UMAT+ACCESS_READ, &vec); } template inline _InputArray::_InputArray(const std::vector<_Tp>& vec) @@ -488,16 +488,16 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.inl.hpp ope { init(FIXED_TYPE + FIXED_SIZE + MATX + CV_64F + ACCESS_READ, &val, Size(1,1)); } -inline _InputArray::_InputArray(const cuda::GpuMat& d_mat) --{ init(CUDA_GPU_MAT + ACCESS_READ, &d_mat); } +-{ init(+CUDA_GPU_MAT + ACCESS_READ, &d_mat); } - -inline _InputArray::_InputArray(const std::vector& d_mat) --{ init(STD_VECTOR_CUDA_GPU_MAT + ACCESS_READ, &d_mat);} +-{ init(+STD_VECTOR_CUDA_GPU_MAT + ACCESS_READ, &d_mat);} - -inline _InputArray::_InputArray(const ogl::Buffer& buf) --{ init(OPENGL_BUFFER + ACCESS_READ, &buf); } +-{ init(+OPENGL_BUFFER + ACCESS_READ, &buf); } - -inline _InputArray::_InputArray(const cuda::HostMem& cuda_mem) --{ init(CUDA_HOST_MEM + ACCESS_READ, &cuda_mem); } +-{ init(+CUDA_HOST_MEM + ACCESS_READ, &cuda_mem); } - template inline _InputArray _InputArray::rawIn(const std::vector<_Tp>& vec) @@ -520,10 +520,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.inl.hpp ope @@ -201,8 +183,6 @@ inline _OutputArray::_OutputArray() { in inline _OutputArray::_OutputArray(int _flags, void* _obj) { init(_flags + ACCESS_WRITE, _obj); } - inline _OutputArray::_OutputArray(Mat& m) { init(MAT+ACCESS_WRITE, &m); } - inline _OutputArray::_OutputArray(std::vector& vec) { init(STD_VECTOR_MAT + ACCESS_WRITE, &vec); } --inline _OutputArray::_OutputArray(UMat& m) { init(UMAT + ACCESS_WRITE, &m); } --inline _OutputArray::_OutputArray(std::vector& vec) { init(STD_VECTOR_UMAT + ACCESS_WRITE, &vec); } + inline _OutputArray::_OutputArray(Mat& m) { init(+MAT+ACCESS_WRITE, &m); } + inline _OutputArray::_OutputArray(std::vector& vec) { init(+STD_VECTOR_MAT + ACCESS_WRITE, &vec); } +-inline _OutputArray::_OutputArray(UMat& m) { init(+UMAT + ACCESS_WRITE, &m); } +-inline _OutputArray::_OutputArray(std::vector& vec) { init(+STD_VECTOR_UMAT + ACCESS_WRITE, &vec); } template inline _OutputArray::_OutputArray(std::vector<_Tp>& vec) @@ -532,16 +532,16 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.inl.hpp ope { init(FIXED_TYPE + FIXED_SIZE + MATX + traits::Type<_Tp>::value + ACCESS_WRITE, vec, Size(n, 1)); } -inline _OutputArray::_OutputArray(cuda::GpuMat& d_mat) --{ init(CUDA_GPU_MAT + ACCESS_WRITE, &d_mat); } +-{ init(+CUDA_GPU_MAT + ACCESS_WRITE, &d_mat); } - -inline _OutputArray::_OutputArray(std::vector& d_mat) --{ init(STD_VECTOR_CUDA_GPU_MAT + ACCESS_WRITE, &d_mat);} +-{ init(+STD_VECTOR_CUDA_GPU_MAT + ACCESS_WRITE, &d_mat);} - -inline _OutputArray::_OutputArray(ogl::Buffer& buf) --{ init(OPENGL_BUFFER + ACCESS_WRITE, &buf); } +-{ init(+OPENGL_BUFFER + ACCESS_WRITE, &buf); } - -inline _OutputArray::_OutputArray(cuda::HostMem& cuda_mem) --{ init(CUDA_HOST_MEM + ACCESS_WRITE, &cuda_mem); } +-{ init(+CUDA_HOST_MEM + ACCESS_WRITE, &cuda_mem); } - inline _OutputArray::_OutputArray(const Mat& m) { init(FIXED_TYPE + FIXED_SIZE + MAT + ACCESS_WRITE, &m); } @@ -570,10 +570,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.inl.hpp ope { @@ -327,8 +279,6 @@ inline _InputOutputArray::_InputOutputAr inline _InputOutputArray::_InputOutputArray(int _flags, void* _obj) { init(_flags+ACCESS_RW, _obj); } - inline _InputOutputArray::_InputOutputArray(Mat& m) { init(MAT+ACCESS_RW, &m); } - inline _InputOutputArray::_InputOutputArray(std::vector& vec) { init(STD_VECTOR_MAT+ACCESS_RW, &vec); } --inline _InputOutputArray::_InputOutputArray(UMat& m) { init(UMAT+ACCESS_RW, &m); } --inline _InputOutputArray::_InputOutputArray(std::vector& vec) { init(STD_VECTOR_UMAT+ACCESS_RW, &vec); } + inline _InputOutputArray::_InputOutputArray(Mat& m) { init(+MAT+ACCESS_RW, &m); } + inline _InputOutputArray::_InputOutputArray(std::vector& vec) { init(+STD_VECTOR_MAT+ACCESS_RW, &vec); } +-inline _InputOutputArray::_InputOutputArray(UMat& m) { init(+UMAT+ACCESS_RW, &m); } +-inline _InputOutputArray::_InputOutputArray(std::vector& vec) { init(+STD_VECTOR_UMAT+ACCESS_RW, &vec); } template inline _InputOutputArray::_InputOutputArray(std::vector<_Tp>& vec) @@ -582,13 +582,13 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.inl.hpp ope { init(FIXED_TYPE + FIXED_SIZE + MATX + traits::Type<_Tp>::value + ACCESS_RW, vec, Size(n, 1)); } -inline _InputOutputArray::_InputOutputArray(cuda::GpuMat& d_mat) --{ init(CUDA_GPU_MAT + ACCESS_RW, &d_mat); } +-{ init(+CUDA_GPU_MAT + ACCESS_RW, &d_mat); } - -inline _InputOutputArray::_InputOutputArray(ogl::Buffer& buf) --{ init(OPENGL_BUFFER + ACCESS_RW, &buf); } +-{ init(+OPENGL_BUFFER + ACCESS_RW, &buf); } - -inline _InputOutputArray::_InputOutputArray(cuda::HostMem& cuda_mem) --{ init(CUDA_HOST_MEM + ACCESS_RW, &cuda_mem); } +-{ init(+CUDA_HOST_MEM + ACCESS_RW, &cuda_mem); } - inline _InputOutputArray::_InputOutputArray(const Mat& m) { init(FIXED_TYPE + FIXED_SIZE + MAT + ACCESS_RW, &m); } @@ -626,7 +626,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.inl.hpp ope -template inline -UMat::UMat(const std::vector<_Tp>& vec, bool copyData) --: flags(MAGIC_VAL + traits::Type<_Tp>::value + CV_MAT_CONT_FLAG), dims(2), rows((int)vec.size()), +-: flags(+MAGIC_VAL + traits::Type<_Tp>::value + CV_MAT_CONT_FLAG), dims(2), rows((int)vec.size()), -cols(1), allocator(0), usageFlags(USAGE_DEFAULT), u(0), offset(0), size(&rows) -{ - if(vec.empty()) @@ -753,9 +753,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/mat.inl.hpp ope inline bool UMatData::hostCopyObsolete() const { return (flags & HOST_COPY_OBSOLETE) != 0; } inline bool UMatData::deviceCopyObsolete() const { return (flags & DEVICE_COPY_OBSOLETE) != 0; } -diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/operations.hpp opencv-4.10.0/modules/core/include/opencv2/core/operations.hpp ---- opencv-4.10.0.orig/modules/core/include/opencv2/core/operations.hpp 2024-06-04 21:20:08.177199065 +0800 -+++ opencv-4.10.0/modules/core/include/opencv2/core/operations.hpp 2024-06-04 21:25:27.155977692 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/include/opencv2/core/operations.hpp opencv-4.11.0/modules/core/include/opencv2/core/operations.hpp +--- opencv-4.11.0.orig/modules/core/include/opencv2/core/operations.hpp 2025-01-19 00:07:25.159889058 +0800 ++++ opencv-4.11.0/modules/core/include/opencv2/core/operations.hpp 2025-01-19 00:07:45.980143782 +0800 @@ -450,12 +450,6 @@ int print(const Mat& mtx, FILE* stream = return print(Formatter::get()->format(mtx), stream); } @@ -769,19 +769,19 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/operations.hpp template static inline int print(const std::vector >& vec, FILE* stream = stdout) { -diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core.hpp opencv-4.10.0/modules/core/include/opencv2/core.hpp ---- opencv-4.10.0.orig/modules/core/include/opencv2/core.hpp 2024-06-04 21:20:08.261198764 +0800 -+++ opencv-4.10.0/modules/core/include/opencv2/core.hpp 2024-06-04 21:25:27.155977692 +0800 -@@ -235,8 +235,6 @@ enum ReduceTypes { REDUCE_SUM = 0, //!< +diff -Nuarp opencv-4.11.0.orig/modules/core/include/opencv2/core.hpp opencv-4.11.0/modules/core/include/opencv2/core.hpp +--- opencv-4.11.0.orig/modules/core/include/opencv2/core.hpp 2025-01-19 00:07:25.197889523 +0800 ++++ opencv-4.11.0/modules/core/include/opencv2/core.hpp 2025-01-19 00:07:45.980143782 +0800 +@@ -217,8 +217,6 @@ enum ReduceTypes { REDUCE_SUM = 0, //!< /** @brief Swaps two matrices */ CV_EXPORTS void swap(Mat& a, Mat& b); -/** @overload */ -CV_EXPORTS void swap( UMat& a, UMat& b ); - //! @} core + /** @brief Computes the source location of an extrapolated pixel. -@@ -1536,10 +1534,6 @@ CV_EXPORTS_W void min(InputArray src1, I +@@ -1521,10 +1519,6 @@ CV_EXPORTS_W void min(InputArray src1, I needed to avoid conflicts with const _Tp& std::min(const _Tp&, const _Tp&, _Compare) */ CV_EXPORTS void min(const Mat& src1, const Mat& src2, Mat& dst); @@ -792,7 +792,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core.hpp opencv-4.10 /** @brief Calculates per-element maximum of two arrays or an array and a scalar. -@@ -1557,10 +1551,6 @@ CV_EXPORTS_W void max(InputArray src1, I +@@ -1542,10 +1536,6 @@ CV_EXPORTS_W void max(InputArray src1, I needed to avoid conflicts with const _Tp& std::min(const _Tp&, const _Tp&, _Compare) */ CV_EXPORTS void max(const Mat& src1, const Mat& src2, Mat& dst); @@ -803,9 +803,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core.hpp opencv-4.10 /** @brief Calculates a square root of array elements. -diff -Nuarp opencv-4.10.0.orig/modules/core/src/arithm.cpp opencv-4.10.0/modules/core/src/arithm.cpp ---- opencv-4.10.0.orig/modules/core/src/arithm.cpp 2024-06-04 21:20:08.536197778 +0800 -+++ opencv-4.10.0/modules/core/src/arithm.cpp 2024-06-04 21:25:27.155977692 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/arithm.cpp opencv-4.11.0/modules/core/src/arithm.cpp +--- opencv-4.11.0.orig/modules/core/src/arithm.cpp 2025-01-19 00:07:25.325891089 +0800 ++++ opencv-4.11.0/modules/core/src/arithm.cpp 2025-01-19 00:07:45.980143782 +0800 @@ -418,22 +418,6 @@ void cv::min(const Mat& src1, const Mat& binary_op(src1, src2, _dst, noArray(), getMinTab(), false, OCL_OP_MIN ); } @@ -829,7 +829,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/arithm.cpp opencv-4.10.0/modules /****************************************************************************************\ * add/subtract * -@@ -1141,13 +1125,6 @@ void divide(double scale, InputArray src +@@ -1310,13 +1294,6 @@ void divide(double scale, InputArray src arithm_op(src2, src2, dst, noArray(), dtype, getRecipTab(), true, &scale, OCL_OP_RECIP_SCALE); } @@ -843,9 +843,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/arithm.cpp opencv-4.10.0/modules /****************************************************************************************\ * addWeighted * \****************************************************************************************/ -diff -Nuarp opencv-4.10.0.orig/modules/core/src/async.cpp opencv-4.10.0/modules/core/src/async.cpp ---- opencv-4.10.0.orig/modules/core/src/async.cpp 2024-06-04 21:20:08.467198025 +0800 -+++ opencv-4.10.0/modules/core/src/async.cpp 2024-06-04 21:25:27.156977688 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/async.cpp opencv-4.11.0/modules/core/src/async.cpp +--- opencv-4.11.0.orig/modules/core/src/async.cpp 2025-01-19 00:07:25.292890685 +0800 ++++ opencv-4.11.0/modules/core/src/async.cpp 2025-01-19 00:07:45.980143782 +0800 @@ -40,7 +40,6 @@ struct AsyncArray::Impl mutable bool has_result; // Mat, UMat or exception @@ -918,9 +918,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/async.cpp opencv-4.10.0/modules/ { result_mat = makePtr(); value.copyTo(*result_mat.get()); -diff -Nuarp opencv-4.10.0.orig/modules/core/src/channels.cpp opencv-4.10.0/modules/core/src/channels.cpp ---- opencv-4.10.0.orig/modules/core/src/channels.cpp 2024-06-04 21:20:08.564197677 +0800 -+++ opencv-4.10.0/modules/core/src/channels.cpp 2024-06-04 21:25:27.156977688 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/channels.cpp opencv-4.11.0/modules/core/src/channels.cpp +--- opencv-4.11.0.orig/modules/core/src/channels.cpp 2025-01-19 00:07:25.338891248 +0800 ++++ opencv-4.11.0/modules/core/src/channels.cpp 2025-01-19 00:07:45.981143795 +0800 @@ -282,12 +282,10 @@ void cv::mixChannels(InputArrayOfArrays bool src_is_mat = src.kind() != _InputArray::STD_VECTOR_MAT && @@ -951,9 +951,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/channels.cpp opencv-4.10.0/modul int i; int nsrc = src_is_mat ? 1 : (int)src.total(); int ndst = dst_is_mat ? 1 : (int)dst.total(); -diff -Nuarp opencv-4.10.0.orig/modules/core/src/convert.dispatch.cpp opencv-4.10.0/modules/core/src/convert.dispatch.cpp ---- opencv-4.10.0.orig/modules/core/src/convert.dispatch.cpp 2024-06-04 21:20:08.526197814 +0800 -+++ opencv-4.10.0/modules/core/src/convert.dispatch.cpp 2024-06-04 21:28:07.524362704 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/convert.dispatch.cpp opencv-4.11.0/modules/core/src/convert.dispatch.cpp +--- opencv-4.11.0.orig/modules/core/src/convert.dispatch.cpp 2025-01-19 00:07:25.320891028 +0800 ++++ opencv-4.11.0/modules/core/src/convert.dispatch.cpp 2025-01-19 00:07:45.981143795 +0800 @@ -301,44 +301,6 @@ void Mat::convertTo(OutputArray dst, int } } @@ -999,9 +999,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/convert.dispatch.cpp opencv-4.10 //================================================================================================== void convertFp16(InputArray _src, OutputArray _dst) -diff -Nuarp opencv-4.10.0.orig/modules/core/src/copy.cpp opencv-4.10.0/modules/core/src/copy.cpp ---- opencv-4.10.0.orig/modules/core/src/copy.cpp 2024-06-04 21:20:08.560197692 +0800 -+++ opencv-4.10.0/modules/core/src/copy.cpp 2024-06-04 21:25:27.156977688 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/copy.cpp opencv-4.11.0/modules/core/src/copy.cpp +--- opencv-4.11.0.orig/modules/core/src/copy.cpp 2025-01-19 00:07:25.336891223 +0800 ++++ opencv-4.11.0/modules/core/src/copy.cpp 2025-01-19 00:07:45.981143795 +0800 @@ -327,22 +327,6 @@ void Mat::copyTo( OutputArray _dst ) con return; } @@ -1025,9 +1025,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/copy.cpp opencv-4.10.0/modules/c if( dims <= 2 ) { _dst.create( rows, cols, type() ); -diff -Nuarp opencv-4.10.0.orig/modules/core/src/dxt.cpp opencv-4.10.0/modules/core/src/dxt.cpp ---- opencv-4.10.0.orig/modules/core/src/dxt.cpp 2024-06-04 21:20:08.567197667 +0800 -+++ opencv-4.10.0/modules/core/src/dxt.cpp 2024-06-04 21:25:27.156977688 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/dxt.cpp opencv-4.11.0/modules/core/src/dxt.cpp +--- opencv-4.11.0.orig/modules/core/src/dxt.cpp 2025-01-19 00:07:25.339891260 +0800 ++++ opencv-4.11.0/modules/core/src/dxt.cpp 2025-01-19 00:07:45.981143795 +0800 @@ -40,8 +40,6 @@ //M*/ @@ -1037,9 +1037,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/dxt.cpp opencv-4.10.0/modules/co #include namespace cv -diff -Nuarp opencv-4.10.0.orig/modules/core/src/lapack.cpp opencv-4.10.0/modules/core/src/lapack.cpp ---- opencv-4.10.0.orig/modules/core/src/lapack.cpp 2024-06-04 21:20:08.529197803 +0800 -+++ opencv-4.10.0/modules/core/src/lapack.cpp 2024-06-04 21:25:27.156977688 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/lapack.cpp opencv-4.11.0/modules/core/src/lapack.cpp +--- opencv-4.11.0.orig/modules/core/src/lapack.cpp 2025-01-19 00:07:25.321891040 +0800 ++++ opencv-4.11.0/modules/core/src/lapack.cpp 2025-01-19 00:07:45.981143795 +0800 @@ -1017,13 +1017,6 @@ double invert( InputArray _src, OutputAr return result; } @@ -1054,9 +1054,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/lapack.cpp opencv-4.10.0/modules /****************************************************************************************\ * Solving a linear system * -diff -Nuarp opencv-4.10.0.orig/modules/core/src/matmul.dispatch.cpp opencv-4.10.0/modules/core/src/matmul.dispatch.cpp ---- opencv-4.10.0.orig/modules/core/src/matmul.dispatch.cpp 2024-06-04 21:20:08.495197925 +0800 -+++ opencv-4.10.0/modules/core/src/matmul.dispatch.cpp 2024-06-04 21:25:27.157977684 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/matmul.dispatch.cpp opencv-4.11.0/modules/core/src/matmul.dispatch.cpp +--- opencv-4.11.0.orig/modules/core/src/matmul.dispatch.cpp 2025-01-19 00:07:25.305890844 +0800 ++++ opencv-4.11.0/modules/core/src/matmul.dispatch.cpp 2025-01-19 00:07:45.981143795 +0800 @@ -44,10 +44,6 @@ #include "precomp.hpp" #include @@ -1068,7 +1068,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/matmul.dispatch.cpp opencv-4.10. #include "matmul.simd.hpp" #include "matmul.simd_declarations.hpp" // defines CV_CPU_DISPATCH_MODES_ALL=AVX2,...,BASELINE based on CMakeLists.txt content -@@ -1072,20 +1068,6 @@ static bool ocl_dot( InputArray _src1, I +@@ -1081,20 +1077,6 @@ static bool ocl_dot( InputArray _src1, I #endif @@ -1089,9 +1089,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/matmul.dispatch.cpp opencv-4.10. } // namespace cv:: -diff -Nuarp opencv-4.10.0.orig/modules/core/src/matrix_operations.cpp opencv-4.10.0/modules/core/src/matrix_operations.cpp ---- opencv-4.10.0.orig/modules/core/src/matrix_operations.cpp 2024-06-04 21:20:08.547197738 +0800 -+++ opencv-4.10.0/modules/core/src/matrix_operations.cpp 2024-06-04 21:25:27.157977684 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/matrix_operations.cpp opencv-4.11.0/modules/core/src/matrix_operations.cpp +--- opencv-4.11.0.orig/modules/core/src/matrix_operations.cpp 2025-01-19 00:07:25.331891162 +0800 ++++ opencv-4.11.0/modules/core/src/matrix_operations.cpp 2025-01-19 00:07:45.981143795 +0800 @@ -226,22 +226,6 @@ void cv::setIdentity( InputOutputArray _ } @@ -1127,9 +1127,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/matrix_operations.cpp opencv-4.1 Mat src = _src.getMat(); _dst.create(dim == 0 ? 1 : src.rows, dim == 0 ? src.cols : 1, dtype); Mat dst = _dst.getMat(), temp = dst; -diff -Nuarp opencv-4.10.0.orig/modules/core/src/matrix_transform.cpp opencv-4.10.0/modules/core/src/matrix_transform.cpp ---- opencv-4.10.0.orig/modules/core/src/matrix_transform.cpp 2024-06-04 21:20:08.546197742 +0800 -+++ opencv-4.10.0/modules/core/src/matrix_transform.cpp 2024-06-04 21:25:27.157977684 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/matrix_transform.cpp opencv-4.11.0/modules/core/src/matrix_transform.cpp +--- opencv-4.11.0.orig/modules/core/src/matrix_transform.cpp 2025-01-19 00:07:25.330891150 +0800 ++++ opencv-4.11.0/modules/core/src/matrix_transform.cpp 2025-01-19 00:07:45.981143795 +0800 @@ -1105,12 +1105,6 @@ void rotate(InputArray _src, OutputArray CV_Assert(_src.dims() <= 2); int angle; @@ -1143,9 +1143,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/matrix_transform.cpp opencv-4.10 Mat src = _src.getMat(); int type = src.type(); if( src.empty() ) -diff -Nuarp opencv-4.10.0.orig/modules/core/src/matrix_wrap.cpp opencv-4.10.0/modules/core/src/matrix_wrap.cpp ---- opencv-4.10.0.orig/modules/core/src/matrix_wrap.cpp 2024-06-04 21:20:08.457198061 +0800 -+++ opencv-4.10.0/modules/core/src/matrix_wrap.cpp 2024-06-04 21:25:27.157977684 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/matrix_wrap.cpp opencv-4.11.0/modules/core/src/matrix_wrap.cpp +--- opencv-4.11.0.orig/modules/core/src/matrix_wrap.cpp 2025-01-19 00:07:25.287890624 +0800 ++++ opencv-4.11.0/modules/core/src/matrix_wrap.cpp 2025-01-19 00:07:45.982143807 +0800 @@ -24,14 +24,6 @@ Mat _InputArray::getMat_(int i) const return m->row(i); } @@ -2300,9 +2300,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/matrix_wrap.cpp opencv-4.10.0/mo { std::vector& this_v = *(std::vector*)obj; CV_Assert(this_v.size() == v.size()); -diff -Nuarp opencv-4.10.0.orig/modules/core/src/precomp.hpp opencv-4.10.0/modules/core/src/precomp.hpp ---- opencv-4.10.0.orig/modules/core/src/precomp.hpp 2024-06-04 21:20:08.561197688 +0800 -+++ opencv-4.10.0/modules/core/src/precomp.hpp 2024-06-04 21:25:27.158977680 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/precomp.hpp opencv-4.11.0/modules/core/src/precomp.hpp +--- opencv-4.11.0.orig/modules/core/src/precomp.hpp 2025-01-19 00:07:25.337891236 +0800 ++++ opencv-4.11.0/modules/core/src/precomp.hpp 2025-01-19 00:07:45.982143807 +0800 @@ -343,9 +343,6 @@ struct ImplCollector struct CoreTLSData { @@ -2325,9 +2325,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/precomp.hpp opencv-4.10.0/module int useIPP; // 1 - use, 0 - do not use, -1 - auto/not initialized int useIPP_NE; // 1 - use, 0 - do not use, -1 - auto/not initialized #ifdef HAVE_OPENVX -diff -Nuarp opencv-4.10.0.orig/modules/core/src/umatrix.cpp opencv-4.10.0/modules/core/src/umatrix.cpp ---- opencv-4.10.0.orig/modules/core/src/umatrix.cpp 2024-06-04 21:20:08.525197817 +0800 -+++ opencv-4.10.0/modules/core/src/umatrix.cpp 2024-06-04 21:25:27.158977680 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/umatrix.cpp opencv-4.11.0/modules/core/src/umatrix.cpp +--- opencv-4.11.0.orig/modules/core/src/umatrix.cpp 2025-01-19 00:07:25.320891028 +0800 ++++ opencv-4.11.0/modules/core/src/umatrix.cpp 2025-01-19 00:07:45.982143807 +0800 @@ -40,7 +40,6 @@ //M*/ @@ -2366,9 +2366,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/umatrix.cpp opencv-4.10.0/module } -diff -Nuarp opencv-4.10.0.orig/modules/features2d/include/opencv2/features2d.hpp opencv-4.10.0/modules/features2d/include/opencv2/features2d.hpp ---- opencv-4.10.0.orig/modules/features2d/include/opencv2/features2d.hpp 2024-06-04 21:20:08.686197240 +0800 -+++ opencv-4.10.0/modules/features2d/include/opencv2/features2d.hpp 2024-06-04 21:25:27.158977680 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/features2d/include/opencv2/features2d.hpp opencv-4.11.0/modules/features2d/include/opencv2/features2d.hpp +--- opencv-4.11.0.orig/modules/features2d/include/opencv2/features2d.hpp 2025-01-19 00:07:25.397891969 +0800 ++++ opencv-4.11.0/modules/features2d/include/opencv2/features2d.hpp 2025-01-19 00:07:45.982143807 +0800 @@ -1234,7 +1234,6 @@ protected: //! Collection of descriptors from train images. @@ -2377,9 +2377,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/features2d/include/opencv2/features2d.hpp }; /** @brief Brute-force descriptor matcher. -diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/agast.cpp opencv-4.10.0/modules/features2d/src/agast.cpp ---- opencv-4.10.0.orig/modules/features2d/src/agast.cpp 2024-06-04 21:20:08.734197068 +0800 -+++ opencv-4.10.0/modules/features2d/src/agast.cpp 2024-06-04 21:25:27.159977676 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/features2d/src/agast.cpp opencv-4.11.0/modules/features2d/src/agast.cpp +--- opencv-4.11.0.orig/modules/features2d/src/agast.cpp 2025-01-19 00:07:25.421892263 +0800 ++++ opencv-4.11.0/modules/features2d/src/agast.cpp 2025-01-19 00:07:45.982143807 +0800 @@ -7980,11 +7980,10 @@ public: } @@ -2393,9 +2393,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/agast.cpp opencv-4.10.0/mo cvtColor( _image, ogray, COLOR_BGR2GRAY ); gray = ogray; } -diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/fast.cpp opencv-4.10.0/modules/features2d/src/fast.cpp ---- opencv-4.10.0.orig/modules/features2d/src/fast.cpp 2024-06-04 21:20:08.730197083 +0800 -+++ opencv-4.10.0/modules/features2d/src/fast.cpp 2024-06-04 21:25:27.159977676 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/features2d/src/fast.cpp opencv-4.11.0/modules/features2d/src/fast.cpp +--- opencv-4.11.0.orig/modules/features2d/src/fast.cpp 2025-01-19 00:07:25.419892239 +0800 ++++ opencv-4.11.0/modules/features2d/src/fast.cpp 2025-01-19 00:07:45.982143807 +0800 @@ -569,11 +569,10 @@ public: } @@ -2409,9 +2409,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/fast.cpp opencv-4.10.0/mod cvtColor( _image, ogray, COLOR_BGR2GRAY ); gray = ogray; } -diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/feature2d.cpp opencv-4.10.0/modules/features2d/src/feature2d.cpp ---- opencv-4.10.0.orig/modules/features2d/src/feature2d.cpp 2024-06-04 21:20:08.750197011 +0800 -+++ opencv-4.10.0/modules/features2d/src/feature2d.cpp 2024-06-04 21:25:27.159977676 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/features2d/src/feature2d.cpp opencv-4.11.0/modules/features2d/src/feature2d.cpp +--- opencv-4.11.0.orig/modules/features2d/src/feature2d.cpp 2025-01-19 00:07:25.429892361 +0800 ++++ opencv-4.11.0/modules/features2d/src/feature2d.cpp 2025-01-19 00:07:45.983143819 +0800 @@ -93,16 +93,6 @@ void Feature2D::detect( InputArrayOfArra detect(images.getMat(i), keypoints[i], masks.empty() ? noArray() : masks.getMat(i)); } @@ -2445,9 +2445,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/feature2d.cpp opencv-4.10. else { CV_Error(Error::StsBadArg, "descriptors must be vector or vector"); -diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/gftt.cpp opencv-4.10.0/modules/features2d/src/gftt.cpp ---- opencv-4.10.0.orig/modules/features2d/src/gftt.cpp 2024-06-04 21:20:08.762196967 +0800 -+++ opencv-4.10.0/modules/features2d/src/gftt.cpp 2024-06-04 21:25:27.159977676 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/features2d/src/gftt.cpp opencv-4.11.0/modules/features2d/src/gftt.cpp +--- opencv-4.11.0.orig/modules/features2d/src/gftt.cpp 2025-01-19 00:07:25.435892434 +0800 ++++ opencv-4.11.0/modules/features2d/src/gftt.cpp 2025-01-19 00:07:45.983143819 +0800 @@ -122,18 +122,6 @@ public: std::vector corners; std::vector cornersQuality; @@ -2467,9 +2467,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/gftt.cpp opencv-4.10.0/mod { Mat image = _image.getMat(), grayImage = image; if( image.type() != CV_8U ) -diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/kaze/AKAZEFeatures.cpp opencv-4.10.0/modules/features2d/src/kaze/AKAZEFeatures.cpp ---- opencv-4.10.0.orig/modules/features2d/src/kaze/AKAZEFeatures.cpp 2024-06-04 21:20:08.738197054 +0800 -+++ opencv-4.10.0/modules/features2d/src/kaze/AKAZEFeatures.cpp 2024-06-04 21:25:27.160977672 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/features2d/src/kaze/AKAZEFeatures.cpp opencv-4.11.0/modules/features2d/src/kaze/AKAZEFeatures.cpp +--- opencv-4.11.0.orig/modules/features2d/src/kaze/AKAZEFeatures.cpp 2025-01-19 00:07:25.423892288 +0800 ++++ opencv-4.11.0/modules/features2d/src/kaze/AKAZEFeatures.cpp 2025-01-19 00:07:45.983143819 +0800 @@ -519,15 +519,7 @@ convertScalePyramid(const std::vector descriptors; +- _descriptors.getUMatVector( descriptors ); +- +- for( size_t i = 0; i < descriptors.size(); i++ ) +- { +- addedDescCount += descriptors[i].rows; +- } +- } +- else if( _descriptors.isUMat() ) +- { +- addedDescCount += _descriptors.getUMat().rows; +- } +- else if( _descriptors.isMatVector() ) ++ if( _descriptors.isMatVector() ) + { + std::vector descriptors; + _descriptors.getMatVector(descriptors); +@@ -1142,7 +1073,7 @@ void FlannBasedMatcher::add( InputArrayO + } + else + { +- CV_Assert( _descriptors.isUMat() || _descriptors.isUMatVector() || _descriptors.isMat() || _descriptors.isMatVector() ); ++ CV_Assert( _descriptors.isMat() || _descriptors.isMatVector() ); + } + } + +@@ -1162,13 +1093,6 @@ void FlannBasedMatcher::train() if( !flannIndex || mergedDescriptors.size() < addedDescCount ) { @@ -2701,9 +2733,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/matchers.cpp opencv-4.10.0 mergedDescriptors.set( trainDescCollection ); flannIndex = makePtr( mergedDescriptors.getDescriptors(), *indexParams ); } -diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/orb.cpp opencv-4.10.0/modules/features2d/src/orb.cpp ---- opencv-4.10.0.orig/modules/features2d/src/orb.cpp 2024-06-04 21:20:08.728197090 +0800 -+++ opencv-4.10.0/modules/features2d/src/orb.cpp 2024-06-04 21:25:27.160977672 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/features2d/src/orb.cpp opencv-4.11.0/modules/features2d/src/orb.cpp +--- opencv-4.11.0.orig/modules/features2d/src/orb.cpp 2025-01-19 00:07:25.418892226 +0800 ++++ opencv-4.11.0/modules/features2d/src/orb.cpp 2025-01-19 00:07:45.983143819 +0800 @@ -823,10 +823,8 @@ static void uploadORBKeypoints(const std * @param keypoints the resulting keypoints, clustered per level */ @@ -2760,9 +2792,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/features2d/src/orb.cpp opencv-4.10.0/modu nfeatures, scaleFactor, edgeThreshold, patchSize, scoreType, useOCL, fastThreshold); } else -diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/contours.cpp opencv-4.10.0/modules/imgproc/src/contours.cpp ---- opencv-4.10.0.orig/modules/imgproc/src/contours.cpp 2024-06-04 21:20:09.409194648 +0800 -+++ opencv-4.10.0/modules/imgproc/src/contours.cpp 2024-06-04 21:25:27.160977672 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/imgproc/src/contours.cpp opencv-4.11.0/modules/imgproc/src/contours.cpp +--- opencv-4.11.0.orig/modules/imgproc/src/contours.cpp 2025-01-19 00:07:25.750896288 +0800 ++++ opencv-4.11.0/modules/imgproc/src/contours.cpp 2025-01-19 00:07:45.983143819 +0800 @@ -1820,8 +1820,7 @@ void cv::findContours_legacy( InputArray CV_INSTRUMENT_REGION(); @@ -2773,9 +2805,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/contours.cpp opencv-4.10.0/mo CV_Assert(_contours.empty() || (_contours.channels() == 2 && _contours.depth() == CV_32S)); -diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/contours_link.cpp opencv-4.10.0/modules/imgproc/src/contours_link.cpp ---- opencv-4.10.0.orig/modules/imgproc/src/contours_link.cpp 2024-06-04 21:20:09.455194484 +0800 -+++ opencv-4.10.0/modules/imgproc/src/contours_link.cpp 2024-06-04 21:30:21.196853922 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/imgproc/src/contours_link.cpp opencv-4.11.0/modules/imgproc/src/contours_link.cpp +--- opencv-4.11.0.orig/modules/imgproc/src/contours_link.cpp 2025-01-19 00:07:25.774896582 +0800 ++++ opencv-4.11.0/modules/imgproc/src/contours_link.cpp 2025-01-19 00:07:45.983143819 +0800 @@ -390,8 +390,7 @@ void cv::findContoursLinkRuns(InputArray // Sanity check: output must be of type vector> @@ -2786,10 +2818,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/contours_link.cpp opencv-4.10 if (!_contours.empty()) CV_CheckTypeEQ(_contours.type(), CV_32SC2, "Contours must have type CV_32SC2"); -diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/contours_new.cpp opencv-4.10.0/modules/imgproc/src/contours_new.cpp ---- opencv-4.10.0.orig/modules/imgproc/src/contours_new.cpp 2024-06-04 21:20:09.424194595 +0800 -+++ opencv-4.10.0/modules/imgproc/src/contours_new.cpp 2024-06-04 21:30:35.837798196 +0800 -@@ -657,8 +657,7 @@ void cv::findContours(InputArray _image, +diff -Nuarp opencv-4.11.0.orig/modules/imgproc/src/contours_new.cpp opencv-4.11.0/modules/imgproc/src/contours_new.cpp +--- opencv-4.11.0.orig/modules/imgproc/src/contours_new.cpp 2025-01-19 00:07:25.758896386 +0800 ++++ opencv-4.11.0/modules/imgproc/src/contours_new.cpp 2025-01-19 00:07:45.983143819 +0800 +@@ -653,8 +653,7 @@ void cv::findContours(InputArray _image, // Sanity check: output must be of type vector> CV_Assert((_contours.kind() == _InputArray::STD_VECTOR_VECTOR) || @@ -2799,10 +2831,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/contours_new.cpp opencv-4.10. const int res_type = (method == 0 /*CV_CHAIN_CODE*/) ? CV_8SC1 : CV_32SC2; if (!_contours.empty()) -diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/hough.cpp opencv-4.10.0/modules/imgproc/src/hough.cpp ---- opencv-4.10.0.orig/modules/imgproc/src/hough.cpp 2024-06-04 21:20:09.440194537 +0800 -+++ opencv-4.10.0/modules/imgproc/src/hough.cpp 2024-06-04 21:25:27.161977669 +0800 -@@ -2265,7 +2265,7 @@ static void HoughCircles( InputArray _im +diff -Nuarp opencv-4.11.0.orig/modules/imgproc/src/hough.cpp opencv-4.11.0/modules/imgproc/src/hough.cpp +--- opencv-4.11.0.orig/modules/imgproc/src/hough.cpp 2025-01-19 00:07:25.765896472 +0800 ++++ opencv-4.11.0/modules/imgproc/src/hough.cpp 2025-01-19 00:07:45.983143819 +0800 +@@ -2279,7 +2279,7 @@ static void HoughCircles( InputArray _im CV_CheckType(type, type == CV_32FC3 || type == CV_32FC4, "Wrong type of output circles"); } @@ -2811,10 +2843,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/hough.cpp opencv-4.10.0/modul if( dp <= 0 || minDist <= 0 || param1 <= 0) CV_Error( Error::StsOutOfRange, "dp, min_dist and canny_threshold must be all positive numbers" ); -diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/pyramids.cpp opencv-4.10.0/modules/imgproc/src/pyramids.cpp ---- opencv-4.10.0.orig/modules/imgproc/src/pyramids.cpp 2024-06-04 21:20:09.452194494 +0800 -+++ opencv-4.10.0/modules/imgproc/src/pyramids.cpp 2024-06-04 21:25:27.161977669 +0800 -@@ -1676,16 +1676,6 @@ void cv::buildPyramid( InputArray _src, +diff -Nuarp opencv-4.11.0.orig/modules/imgproc/src/pyramids.cpp opencv-4.11.0/modules/imgproc/src/pyramids.cpp +--- opencv-4.11.0.orig/modules/imgproc/src/pyramids.cpp 2025-01-19 00:07:25.772896558 +0800 ++++ opencv-4.11.0/modules/imgproc/src/pyramids.cpp 2025-01-19 00:07:45.984143831 +0800 +@@ -1617,16 +1617,6 @@ void cv::buildPyramid( InputArray _src, CV_Assert(borderType != BORDER_CONSTANT); @@ -2831,10 +2863,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/pyramids.cpp opencv-4.10.0/mo Mat src = _src.getMat(); _dst.create( maxlevel + 1, 1, 0 ); _dst.getMatRef(0) = src; -diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/resize.cpp opencv-4.10.0/modules/imgproc/src/resize.cpp ---- opencv-4.10.0.orig/modules/imgproc/src/resize.cpp 2024-06-04 21:20:09.486194372 +0800 -+++ opencv-4.10.0/modules/imgproc/src/resize.cpp 2024-06-04 21:25:27.161977669 +0800 -@@ -4168,11 +4168,6 @@ void cv::resize( InputArray _src, Output +diff -Nuarp opencv-4.11.0.orig/modules/imgproc/src/resize.cpp opencv-4.11.0/modules/imgproc/src/resize.cpp +--- opencv-4.11.0.orig/modules/imgproc/src/resize.cpp 2025-01-19 00:07:25.789896766 +0800 ++++ opencv-4.11.0/modules/imgproc/src/resize.cpp 2025-01-19 00:07:45.984143831 +0800 +@@ -4224,11 +4224,6 @@ void cv::resize( InputArray _src, Output CV_OCL_RUN(_src.dims() <= 2 && _dst.isUMat() && _src.cols() > 10 && _src.rows() > 10, ocl_resize(_src, _dst, dsize, inv_scale_x, inv_scale_y, interpolation)) @@ -2846,10 +2878,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/resize.cpp opencv-4.10.0/modu Mat src = _src.getMat(); _dst.create(dsize, src.type()); Mat dst = _dst.getMat(); -diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/smooth.dispatch.cpp opencv-4.10.0/modules/imgproc/src/smooth.dispatch.cpp ---- opencv-4.10.0.orig/modules/imgproc/src/smooth.dispatch.cpp 2024-06-04 21:20:09.483194383 +0800 -+++ opencv-4.10.0/modules/imgproc/src/smooth.dispatch.cpp 2024-06-04 21:25:27.161977669 +0800 -@@ -636,9 +636,7 @@ void GaussianBlur(InputArray _src, Outpu +diff -Nuarp opencv-4.11.0.orig/modules/imgproc/src/smooth.dispatch.cpp opencv-4.11.0/modules/imgproc/src/smooth.dispatch.cpp +--- opencv-4.11.0.orig/modules/imgproc/src/smooth.dispatch.cpp 2025-01-19 00:07:25.787896741 +0800 ++++ opencv-4.11.0/modules/imgproc/src/smooth.dispatch.cpp 2025-01-19 00:07:45.984143831 +0800 +@@ -637,9 +637,7 @@ void GaussianBlur(InputArray _src, Outpu if (sigma2 <= 0) sigma2 = sigma1; @@ -2860,9 +2892,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/smooth.dispatch.cpp opencv-4. CV_UNUSED(useOpenCL); int sdepth = CV_MAT_DEPTH(type), cn = CV_MAT_CN(type); -diff -Nuarp opencv-4.10.0.orig/modules/video/src/camshift.cpp opencv-4.10.0/modules/video/src/camshift.cpp ---- opencv-4.10.0.orig/modules/video/src/camshift.cpp 2024-06-04 21:20:10.243191659 +0800 -+++ opencv-4.10.0/modules/video/src/camshift.cpp 2024-06-04 21:25:27.162977665 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/video/src/camshift.cpp opencv-4.11.0/modules/video/src/camshift.cpp +--- opencv-4.11.0.orig/modules/video/src/camshift.cpp 2025-01-19 00:07:26.134900987 +0800 ++++ opencv-4.11.0/modules/video/src/camshift.cpp 2025-01-19 00:07:45.984143831 +0800 @@ -48,13 +48,8 @@ int cv::meanShift( InputArray _probImage Size size; int cn; diff --git a/patches/opencv-4.10.0-no-rtti.patch b/patches/opencv-4.11.0-no-rtti.patch similarity index 74% rename from patches/opencv-4.10.0-no-rtti.patch rename to patches/opencv-4.11.0-no-rtti.patch index b80bb02..2706d72 100644 --- a/patches/opencv-4.10.0-no-rtti.patch +++ b/patches/opencv-4.11.0-no-rtti.patch @@ -1,6 +1,6 @@ -diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/bindings_utils.hpp opencv-4.10.0/modules/core/include/opencv2/core/bindings_utils.hpp ---- opencv-4.10.0.orig/modules/core/include/opencv2/core/bindings_utils.hpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/include/opencv2/core/bindings_utils.hpp 2024-06-04 21:07:18.095333593 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/include/opencv2/core/bindings_utils.hpp opencv-4.11.0/modules/core/include/opencv2/core/bindings_utils.hpp +--- opencv-4.11.0.orig/modules/core/include/opencv2/core/bindings_utils.hpp 2025-01-18 23:31:52.822608583 +0800 ++++ opencv-4.11.0/modules/core/include/opencv2/core/bindings_utils.hpp 2025-01-18 23:41:39.374862716 +0800 @@ -202,12 +202,6 @@ void generateVectorOfMat(size_t len, int } @@ -29,10 +29,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/bindings_utils. return p.getArrayResult(); } -diff -Nuarp opencv-4.10.0.orig/modules/core/src/async.cpp opencv-4.10.0/modules/core/src/async.cpp ---- opencv-4.10.0.orig/modules/core/src/async.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/async.cpp 2024-06-04 21:07:18.096333587 +0800 -@@ -108,7 +108,6 @@ struct AsyncArray::Impl +diff -Nuarp opencv-4.11.0.orig/modules/core/src/async.cpp opencv-4.11.0/modules/core/src/async.cpp +--- opencv-4.11.0.orig/modules/core/src/async.cpp 2025-01-18 23:41:09.777469931 +0800 ++++ opencv-4.11.0/modules/core/src/async.cpp 2025-01-18 23:41:39.374862716 +0800 +@@ -100,7 +100,6 @@ struct AsyncArray::Impl if (has_exception) { result_is_fetched = true; @@ -40,9 +40,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/async.cpp opencv-4.10.0/modules/ } CV_Error(Error::StsInternal, "AsyncArray: invalid state of 'has_result = true'"); } -diff -Nuarp opencv-4.10.0.orig/modules/core/src/bindings_utils.cpp opencv-4.10.0/modules/core/src/bindings_utils.cpp ---- opencv-4.10.0.orig/modules/core/src/bindings_utils.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/bindings_utils.cpp 2024-06-04 21:07:18.096333587 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/bindings_utils.cpp opencv-4.11.0/modules/core/src/bindings_utils.cpp +--- opencv-4.11.0.orig/modules/core/src/bindings_utils.cpp 2025-01-18 23:31:52.827608643 +0800 ++++ opencv-4.11.0/modules/core/src/bindings_utils.cpp 2025-01-18 23:41:39.374862716 +0800 @@ -17,7 +17,7 @@ String dumpInputArray(InputArray argumen return "InputArray: noArray()"; std::ostringstream ss; @@ -123,9 +123,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/bindings_utils.cpp opencv-4.10.0 return ss.str(); } -diff -Nuarp opencv-4.10.0.orig/modules/core/src/command_line_parser.cpp opencv-4.10.0/modules/core/src/command_line_parser.cpp ---- opencv-4.10.0.orig/modules/core/src/command_line_parser.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/command_line_parser.cpp 2024-06-04 21:08:17.261040642 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/command_line_parser.cpp opencv-4.11.0/modules/core/src/command_line_parser.cpp +--- opencv-4.11.0.orig/modules/core/src/command_line_parser.cpp 2025-01-18 23:31:52.827608643 +0800 ++++ opencv-4.11.0/modules/core/src/command_line_parser.cpp 2025-01-18 23:41:39.374862716 +0800 @@ -119,7 +119,6 @@ static void from_str(const String& str, void CommandLineParser::getByName(const String& name, bool space_delete, Param type, void* dst) const @@ -222,9 +222,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/command_line_parser.cpp opencv-4 } return vec; -diff -Nuarp opencv-4.10.0.orig/modules/core/src/glob.cpp opencv-4.10.0/modules/core/src/glob.cpp ---- opencv-4.10.0.orig/modules/core/src/glob.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/glob.cpp 2024-06-04 21:07:18.096333587 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/glob.cpp opencv-4.11.0/modules/core/src/glob.cpp +--- opencv-4.11.0.orig/modules/core/src/glob.cpp 2025-01-18 23:31:52.826608631 +0800 ++++ opencv-4.11.0/modules/core/src/glob.cpp 2025-01-18 23:41:39.374862716 +0800 @@ -243,7 +243,6 @@ static void glob_rec(const cv::String& d if ((dir = opendir (directory.c_str())) != 0) { @@ -245,17 +245,18 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/glob.cpp opencv-4.10.0/modules/c closedir(dir); } else -diff -Nuarp opencv-4.10.0.orig/modules/core/src/matrix.cpp opencv-4.10.0/modules/core/src/matrix.cpp ---- opencv-4.10.0.orig/modules/core/src/matrix.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/matrix.cpp 2024-06-04 21:07:18.096333587 +0800 -@@ -698,18 +698,10 @@ void Mat::create(int d, const int* _size - #endif +diff -Nuarp opencv-4.11.0.orig/modules/core/src/matrix.cpp opencv-4.11.0/modules/core/src/matrix.cpp +--- opencv-4.11.0.orig/modules/core/src/matrix.cpp 2025-01-18 23:31:52.827608643 +0800 ++++ opencv-4.11.0/modules/core/src/matrix.cpp 2025-01-18 23:42:41.584688297 +0800 +@@ -694,20 +694,11 @@ void Mat::create(int d, const int* _size + MatAllocator *a = allocator, *a0 = getDefaultAllocator(); if(!a) a = a0; - try { u = a->allocate(dims, size, _type, 0, step.p, ACCESS_RW /* ignored */, USAGE_DEFAULT); CV_Assert(u != 0); + allocator = a; } - catch (...) - { @@ -263,11 +264,12 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/matrix.cpp opencv-4.10.0/modules - throw; - u = a0->allocate(dims, size, _type, 0, step.p, ACCESS_RW /* ignored */, USAGE_DEFAULT); - CV_Assert(u != 0); +- allocator = a0; - } CV_Assert( step[dims-1] == (size_t)CV_ELEM_SIZE(flags) ); } -@@ -759,7 +751,6 @@ Mat::Mat(const Mat& m, const Range& _row +@@ -757,7 +748,6 @@ Mat::Mat(const Mat& m, const Range& _row } *this = m; @@ -275,7 +277,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/matrix.cpp opencv-4.10.0/modules { if( _rowRange != Range::all() && _rowRange != Range(0,rows) ) { -@@ -779,11 +770,6 @@ Mat::Mat(const Mat& m, const Range& _row +@@ -777,11 +767,6 @@ Mat::Mat(const Mat& m, const Range& _row flags |= SUBMATRIX_FLAG; } } @@ -287,9 +289,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/matrix.cpp opencv-4.10.0/modules updateContinuityFlag(); -diff -Nuarp opencv-4.10.0.orig/modules/core/src/parallel/parallel.cpp opencv-4.10.0/modules/core/src/parallel/parallel.cpp ---- opencv-4.10.0.orig/modules/core/src/parallel/parallel.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/parallel/parallel.cpp 2024-06-04 21:07:18.097333583 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/parallel/parallel.cpp opencv-4.11.0/modules/core/src/parallel/parallel.cpp +--- opencv-4.11.0.orig/modules/core/src/parallel/parallel.cpp 2025-01-18 23:31:52.827608643 +0800 ++++ opencv-4.11.0/modules/core/src/parallel/parallel.cpp 2025-01-18 23:41:39.374862716 +0800 @@ -60,7 +60,6 @@ std::shared_ptr createPa } isKnown = true; @@ -313,9 +315,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/parallel/parallel.cpp opencv-4.1 } if (name.empty()) { -diff -Nuarp opencv-4.10.0.orig/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp opencv-4.10.0/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp ---- opencv-4.10.0.orig/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp 2024-06-04 21:07:18.097333583 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp opencv-4.11.0/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp +--- opencv-4.11.0.orig/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp 2025-01-18 23:31:52.827608643 +0800 ++++ opencv-4.11.0/modules/core/src/parallel/plugin_parallel_wrapper.impl.hpp 2025-01-18 23:41:39.374862716 +0800 @@ -155,15 +155,10 @@ protected: void initBackend() { @@ -351,10 +353,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/parallel/plugin_parallel_wrapper } } -diff -Nuarp opencv-4.10.0.orig/modules/core/src/parallel.cpp opencv-4.10.0/modules/core/src/parallel.cpp ---- opencv-4.10.0.orig/modules/core/src/parallel.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/parallel.cpp 2024-06-04 21:07:18.097333583 +0800 -@@ -351,29 +351,9 @@ namespace { +diff -Nuarp opencv-4.11.0.orig/modules/core/src/parallel.cpp opencv-4.11.0/modules/core/src/parallel.cpp +--- opencv-4.11.0.orig/modules/core/src/parallel.cpp 2025-01-18 23:31:52.827608643 +0800 ++++ opencv-4.11.0/modules/core/src/parallel.cpp 2025-01-18 23:41:39.375862729 +0800 +@@ -355,29 +355,9 @@ namespace { CV_TRACE_ARG_VALUE(range_end, "range.end", (int64)r.end); #endif @@ -384,7 +386,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/parallel.cpp opencv-4.10.0/modul if (!ctx.is_rng_used && !(cv::theRNG() == ctx.rng)) ctx.is_rng_used = true; -@@ -519,16 +499,10 @@ void parallel_for_(const cv::Range& rang +@@ -523,16 +503,10 @@ void parallel_for_(const cv::Range& rang isNotNestedRegion = !flagNestedParallelFor.exchange(true); if (isNotNestedRegion) { @@ -401,10 +403,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/parallel.cpp opencv-4.10.0/modul } else // nested parallel_for_() calls are not parallelized { -diff -Nuarp opencv-4.10.0.orig/modules/core/src/persistence.cpp opencv-4.10.0/modules/core/src/persistence.cpp ---- opencv-4.10.0.orig/modules/core/src/persistence.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/persistence.cpp 2024-06-04 21:07:18.097333583 +0800 -@@ -723,7 +723,7 @@ bool FileStorage::Impl::open(const char +diff -Nuarp opencv-4.11.0.orig/modules/core/src/persistence.cpp opencv-4.11.0/modules/core/src/persistence.cpp +--- opencv-4.11.0.orig/modules/core/src/persistence.cpp 2025-01-18 23:31:52.826608631 +0800 ++++ opencv-4.11.0/modules/core/src/persistence.cpp 2025-01-18 23:41:39.375862729 +0800 +@@ -758,7 +758,7 @@ bool FileStorage::Impl::open(const char strbufpos = bufOffset; bufofs = 0; @@ -413,7 +415,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/persistence.cpp opencv-4.10.0/mo char *ptr = bufferStart(); ptr[0] = ptr[1] = ptr[2] = '\0'; FileNode root_nodes(fs_ext, 0, 0); -@@ -764,13 +764,6 @@ bool FileStorage::Impl::open(const char +@@ -799,13 +799,6 @@ bool FileStorage::Impl::open(const char } } } @@ -427,7 +429,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/persistence.cpp opencv-4.10.0/mo // release resources that we do not need anymore closeFile(); -@@ -1903,18 +1896,12 @@ FileStorage::~FileStorage() +@@ -1943,18 +1936,12 @@ FileStorage::~FileStorage() bool FileStorage::open(const String& filename, int flags, const String& encoding) { @@ -446,10 +448,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/persistence.cpp opencv-4.10.0/mo } bool FileStorage::isOpened() const { return p->is_opened; } -diff -Nuarp opencv-4.10.0.orig/modules/core/src/system.cpp opencv-4.10.0/modules/core/src/system.cpp ---- opencv-4.10.0.orig/modules/core/src/system.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/system.cpp 2024-06-04 21:07:18.098333578 +0800 -@@ -1273,7 +1273,6 @@ void error( const Exception& exc ) +diff -Nuarp opencv-4.11.0.orig/modules/core/src/system.cpp opencv-4.11.0/modules/core/src/system.cpp +--- opencv-4.11.0.orig/modules/core/src/system.cpp 2025-01-18 23:31:52.827608643 +0800 ++++ opencv-4.11.0/modules/core/src/system.cpp 2025-01-18 23:41:39.375862729 +0800 +@@ -1272,7 +1272,6 @@ void error( const Exception& exc ) *p = 0; } @@ -457,7 +459,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/system.cpp opencv-4.10.0/modules #ifdef __GNUC__ # if !defined __clang__ && !defined __APPLE__ // this suppresses this warning: "noreturn" function does return [enabled by default] -@@ -2075,15 +2074,9 @@ void* TLSDataContainer::getData() const +@@ -2080,15 +2079,9 @@ void* TLSDataContainer::getData() const { // Create new data instance and save it to TLS storage pData = createDataInstance(); @@ -473,7 +475,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/system.cpp opencv-4.10.0/modules } return pData; } -@@ -2187,7 +2180,7 @@ inline bool parseOption(const std::strin +@@ -2192,7 +2185,7 @@ inline bool parseOption(const std::strin { return false; } @@ -482,7 +484,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/system.cpp opencv-4.10.0/modules } template<> -@@ -2208,7 +2201,7 @@ inline size_t parseOption(const std::str +@@ -2213,7 +2206,7 @@ inline size_t parseOption(const std::str return v * 1024 * 1024; else if (suffixStr == "KB" || suffixStr == "Kb" || suffixStr == "kb") return v * 1024; @@ -491,7 +493,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/system.cpp opencv-4.10.0/modules } template<> -@@ -2251,16 +2244,11 @@ static inline const char * envRead(const +@@ -2256,16 +2249,11 @@ static inline const char * envRead(const template inline T read(const std::string & k, const T & defaultValue) { @@ -508,10 +510,10 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/system.cpp opencv-4.10.0/modules return defaultValue; } -diff -Nuarp opencv-4.10.0.orig/modules/core/src/umatrix.cpp opencv-4.10.0/modules/core/src/umatrix.cpp ---- opencv-4.10.0.orig/modules/core/src/umatrix.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/umatrix.cpp 2024-06-04 21:07:18.098333578 +0800 -@@ -602,14 +602,9 @@ UMat Mat::getUMat(AccessFlag accessFlags +diff -Nuarp opencv-4.11.0.orig/modules/core/src/umatrix.cpp opencv-4.11.0/modules/core/src/umatrix.cpp +--- opencv-4.11.0.orig/modules/core/src/umatrix.cpp 2025-01-18 23:41:09.779469957 +0800 ++++ opencv-4.11.0/modules/core/src/umatrix.cpp 2025-01-18 23:41:39.376862742 +0800 +@@ -594,14 +594,9 @@ UMat Mat::getUMat(AccessFlag accessFlags new_u->originalUMatData = u; } bool allocated = false; @@ -526,7 +528,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/umatrix.cpp opencv-4.10.0/module if (!allocated) { allocated = getDefaultAllocator()->allocate(new_u, accessFlags, usageFlags); -@@ -626,7 +621,6 @@ UMat Mat::getUMat(AccessFlag accessFlags +@@ -618,7 +613,6 @@ UMat Mat::getUMat(AccessFlag accessFlags CV_XADD(&(u->refcount), 1); CV_XADD(&(u->urefcount), 1); } @@ -534,7 +536,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/umatrix.cpp opencv-4.10.0/module { hdr.flags = flags; hdr.usageFlags = usageFlags; -@@ -637,16 +631,6 @@ UMat Mat::getUMat(AccessFlag accessFlags +@@ -629,16 +623,6 @@ UMat Mat::getUMat(AccessFlag accessFlags hdr.addref(); return hdr; } @@ -551,7 +553,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/umatrix.cpp opencv-4.10.0/module } -@@ -698,17 +682,10 @@ void UMat::create(int d, const int* _siz +@@ -690,17 +674,10 @@ void UMat::create(int d, const int* _siz a = a0; a0 = Mat::getDefaultAllocator(); } @@ -569,7 +571,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/umatrix.cpp opencv-4.10.0/module CV_Assert( step[dims-1] == (size_t)CV_ELEM_SIZE(flags) ); } -@@ -1075,7 +1052,6 @@ Mat UMat::getMat(AccessFlag accessFlags) +@@ -1067,7 +1044,6 @@ Mat UMat::getMat(AccessFlag accessFlags) // TODO Support ACCESS_READ (ACCESS_WRITE) without unnecessary data transfers accessFlags |= ACCESS_RW; UMatDataAutoLock autolock(u); @@ -577,7 +579,7 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/umatrix.cpp opencv-4.10.0/module { if(CV_XADD(&u->refcount, 1) == 0) u->currAllocator->map(u, accessFlags); -@@ -1090,11 +1066,6 @@ Mat UMat::getMat(AccessFlag accessFlags) +@@ -1082,11 +1058,6 @@ Mat UMat::getMat(AccessFlag accessFlags) return hdr; } } @@ -589,9 +591,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/umatrix.cpp opencv-4.10.0/module CV_XADD(&u->refcount, -1); CV_Assert(u->data != 0 && "Error mapping of UMat to host memory."); return Mat(); -diff -Nuarp opencv-4.10.0.orig/modules/core/src/utils/filesystem.cpp opencv-4.10.0/modules/core/src/utils/filesystem.cpp ---- opencv-4.10.0.orig/modules/core/src/utils/filesystem.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/src/utils/filesystem.cpp 2024-06-04 21:07:18.098333578 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/core/src/utils/filesystem.cpp opencv-4.11.0/modules/core/src/utils/filesystem.cpp +--- opencv-4.11.0.orig/modules/core/src/utils/filesystem.cpp 2025-01-18 23:31:52.827608643 +0800 ++++ opencv-4.11.0/modules/core/src/utils/filesystem.cpp 2025-01-18 23:41:39.376862742 +0800 @@ -508,14 +508,9 @@ cv::String getCacheDirectory(const char* && !utils::fs::isDirectory(default_cache_path)) { @@ -607,9 +609,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/core/src/utils/filesystem.cpp opencv-4.10 if (!existedCacheDirs.empty()) { CV_LOG_WARNING(NULL, "Creating new OpenCV cache directory: " << default_cache_path); -diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/contours.cpp opencv-4.10.0/modules/imgproc/src/contours.cpp ---- opencv-4.10.0.orig/modules/imgproc/src/contours.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/imgproc/src/contours.cpp 2024-06-04 21:07:18.098333578 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/imgproc/src/contours.cpp opencv-4.11.0/modules/imgproc/src/contours.cpp +--- opencv-4.11.0.orig/modules/imgproc/src/contours.cpp 2025-01-18 23:41:09.780469971 +0800 ++++ opencv-4.11.0/modules/imgproc/src/contours.cpp 2025-01-18 23:41:39.376862742 +0800 @@ -1760,7 +1760,6 @@ cvFindContours_Impl( void* img, CvMemS } else @@ -631,9 +633,9 @@ diff -Nuarp opencv-4.10.0.orig/modules/imgproc/src/contours.cpp opencv-4.10.0/mo *firstContour = cvEndFindContours( &scanner ); } -diff -Nuarp opencv-4.10.0.orig/modules/video/src/tracking/detail/tracking_feature.cpp opencv-4.10.0/modules/video/src/tracking/detail/tracking_feature.cpp ---- opencv-4.10.0.orig/modules/video/src/tracking/detail/tracking_feature.cpp 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/video/src/tracking/detail/tracking_feature.cpp 2024-06-04 21:07:18.099333573 +0800 +diff -Nuarp opencv-4.11.0.orig/modules/video/src/tracking/detail/tracking_feature.cpp opencv-4.11.0/modules/video/src/tracking/detail/tracking_feature.cpp +--- opencv-4.11.0.orig/modules/video/src/tracking/detail/tracking_feature.cpp 2025-01-18 23:31:52.853608955 +0800 ++++ opencv-4.11.0/modules/video/src/tracking/detail/tracking_feature.cpp 2025-01-18 23:41:39.376862742 +0800 @@ -107,15 +107,9 @@ void CvHaarEvaluator::generateFeatures(i CvHaarEvaluator::FeatureHaar::FeatureHaar(Size patchSize) diff --git a/patches/opencv-4.11.0-no-zlib.patch b/patches/opencv-4.11.0-no-zlib.patch new file mode 100644 index 0000000..b86f2ea --- /dev/null +++ b/patches/opencv-4.11.0-no-zlib.patch @@ -0,0 +1,12 @@ +diff -Nuarp opencv-4.11.0.orig/modules/core/src/persistence.hpp opencv-4.11.0/modules/core/src/persistence.hpp +--- opencv-4.11.0.orig/modules/core/src/persistence.hpp 2025-01-18 23:31:52.826608631 +0800 ++++ opencv-4.11.0/modules/core/src/persistence.hpp 2025-01-18 23:46:02.204299996 +0800 +@@ -12,7 +12,7 @@ + #include + #include + +-#define USE_ZLIB 1 ++#define USE_ZLIB 0 + #if USE_ZLIB + # ifndef _LFS64_LARGEFILE + # define _LFS64_LARGEFILE 0 diff --git a/patches/opencv-4.10.0-unsafe-xadd.patch b/patches/opencv-4.11.0-unsafe-xadd.patch similarity index 81% rename from patches/opencv-4.10.0-unsafe-xadd.patch rename to patches/opencv-4.11.0-unsafe-xadd.patch index c99a84c..6f53fce 100644 --- a/patches/opencv-4.10.0-unsafe-xadd.patch +++ b/patches/opencv-4.11.0-unsafe-xadd.patch @@ -1,7 +1,7 @@ -diff -Nuarp opencv-4.10.0.orig/modules/core/include/opencv2/core/cvdef.h opencv-4.10.0/modules/core/include/opencv2/core/cvdef.h ---- opencv-4.10.0.orig/modules/core/include/opencv2/core/cvdef.h 2024-06-02 04:41:06.000000000 +0800 -+++ opencv-4.10.0/modules/core/include/opencv2/core/cvdef.h 2024-06-04 20:55:30.670342400 +0800 -@@ -693,33 +693,7 @@ __CV_ENUM_FLAGS_BITWISE_XOR_EQ (EnumTy +diff -Nuarp opencv-4.11.0.orig/modules/core/include/opencv2/core/cvdef.h opencv-4.11.0/modules/core/include/opencv2/core/cvdef.h +--- opencv-4.11.0.orig/modules/core/include/opencv2/core/cvdef.h 2025-01-18 23:41:09.776469917 +0800 ++++ opencv-4.11.0/modules/core/include/opencv2/core/cvdef.h 2025-01-18 23:56:07.110333645 +0800 +@@ -694,33 +694,7 @@ __CV_ENUM_FLAGS_BITWISE_XOR_EQ (EnumTy * exchange-add operation for atomic operations on reference counters * \****************************************************************************************/