mirror of
https://github.com/hybridgroup/gocv
synced 2025-08-25 08:41:04 +08:00
chore: update to OpenCV 4.12.0
Signed-off-by: deadprogram <ron@hybridgroup.com>
This commit is contained in:
8
.github/workflows/docker-static-opencv.yml
vendored
8
.github/workflows/docker-static-opencv.yml
vendored
@@ -29,8 +29,8 @@ jobs:
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: |
|
||||
gocv/opencv:4.11.0-alpine-ffmpeg-gstreamer
|
||||
ghcr.io/${{ github.repository_owner }}/opencv:4.11.0-alpine-ffmpeg-gstreamer
|
||||
gocv/opencv:4.12.0-alpine-ffmpeg-gstreamer
|
||||
ghcr.io/${{ github.repository_owner }}/opencv:4.12.0-alpine-ffmpeg-gstreamer
|
||||
tags: |
|
||||
type=sha,format=long
|
||||
type=raw,value=latest
|
||||
@@ -53,8 +53,8 @@ jobs:
|
||||
context: .
|
||||
push: true
|
||||
tags: |
|
||||
gocv/opencv:4.11.0-alpine-ffmpeg-gstreamer
|
||||
ghcr.io/${{ github.repository_owner }}/opencv:4.11.0-alpine-ffmpeg-gstreamer
|
||||
gocv/opencv:4.12.0-alpine-ffmpeg-gstreamer
|
||||
ghcr.io/${{ github.repository_owner }}/opencv:4.12.0-alpine-ffmpeg-gstreamer
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
cache-from: type=gha
|
||||
cache-to: type=gha,mode=max
|
||||
|
2
.github/workflows/linux.yml
vendored
2
.github/workflows/linux.yml
vendored
@@ -9,7 +9,7 @@ on:
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
container: ghcr.io/hybridgroup/opencv:4.11.0
|
||||
container: ghcr.io/hybridgroup/opencv:4.12.0
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
|
2
.github/workflows/macos.yml
vendored
2
.github/workflows/macos.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: '1.23'
|
||||
go-version: '1.24'
|
||||
cache: true
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
32
.github/workflows/windows.yml
vendored
32
.github/workflows/windows.yml
vendored
@@ -20,45 +20,45 @@ jobs:
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@v5
|
||||
with:
|
||||
go-version: '1.22'
|
||||
go-version: '1.24'
|
||||
cache: true
|
||||
- name: Restore cached OpenCV source
|
||||
uses: actions/cache/restore@v4
|
||||
id: cache-opencv-source
|
||||
with:
|
||||
key: opencv-source-4110-windows-v1a
|
||||
key: opencv-source-4120-windows-v1a
|
||||
path: |
|
||||
./opencv/opencv-4.11.0
|
||||
./opencv/opencv_contrib-4.11.0
|
||||
./opencv/opencv-4.12.0
|
||||
./opencv/opencv_contrib-4.12.0
|
||||
- name: Download OpenCV source
|
||||
if: steps.cache-opencv-source.outputs.cache-hit != 'true'
|
||||
shell: bash
|
||||
run: |
|
||||
mkdir -p ./opencv
|
||||
curl -Lo ./opencv/opencv-4.11.0.zip https://github.com/opencv/opencv/archive/4.11.0.zip
|
||||
curl -Lo ./opencv/opencv_contrib-4.11.0.zip https://github.com/opencv/opencv_contrib/archive/4.11.0.zip
|
||||
curl -Lo ./opencv/opencv-4.12.0.zip https://github.com/opencv/opencv/archive/4.12.0.zip
|
||||
curl -Lo ./opencv/opencv_contrib-4.12.0.zip https://github.com/opencv/opencv_contrib/archive/4.12.0.zip
|
||||
- name: Extract OpenCV source
|
||||
if: steps.cache-opencv-source.outputs.cache-hit != 'true'
|
||||
shell: bash
|
||||
run: |
|
||||
cd ./opencv
|
||||
mkdir -p opencv-4.11.0
|
||||
mkdir -p opencv_contrib-4.11.0
|
||||
7z x opencv-4.11.0.zip
|
||||
7z x opencv_contrib-4.11.0.zip
|
||||
mkdir -p opencv-4.12.0
|
||||
mkdir -p opencv_contrib-4.12.0
|
||||
7z x opencv-4.12.0.zip
|
||||
7z x opencv_contrib-4.12.0.zip
|
||||
- name: Save cached OpenCV source
|
||||
uses: actions/cache/save@v4
|
||||
if: steps.cache-opencv-source.outputs.cache-hit != 'true'
|
||||
with:
|
||||
key: ${{ steps.cache-opencv-source.outputs.cache-primary-key }}
|
||||
path: |
|
||||
./opencv/opencv-4.11.0
|
||||
./opencv/opencv_contrib-4.11.0
|
||||
./opencv/opencv-4.12.0
|
||||
./opencv/opencv_contrib-4.12.0
|
||||
- name: Restore cached OpenCV build
|
||||
uses: actions/cache/restore@v4
|
||||
id: cache-opencv-build
|
||||
with:
|
||||
key: opencv-build-4110-windows-v1d
|
||||
key: opencv-build-4120-windows-v1d
|
||||
path: |
|
||||
./opencv/build
|
||||
- name: Build OpenCV
|
||||
@@ -66,7 +66,7 @@ jobs:
|
||||
run: |
|
||||
mkdir -p ./opencv/build
|
||||
cd ./opencv/build
|
||||
cmake -G "MinGW Makefiles" -DENABLE_CXX11=ON -DOPENCV_EXTRA_MODULES_PATH="../opencv_contrib-4.11.0/modules" -DBUILD_SHARED_LIBS=ON -DWITH_IPP=OFF -DWITH_MSMF=OFF -DBUILD_EXAMPLES=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=ON -DBUILD_opencv_java=OFF -DBUILD_opencv_python=OFF -DBUILD_opencv_python2=OFF -DBUILD_opencv_python3=OFF -DBUILD_DOCS=OFF -DENABLE_PRECOMPILED_HEADERS=OFF -DBUILD_opencv_saliency=OFF -DBUILD_opencv_wechat_qrcode=ON -DCPU_DISPATCH= -DOPENCV_GENERATE_PKGCONFIG=ON -DWITH_OPENCL_D3D11_NV=OFF -DOPENCV_ALLOCATOR_STATS_COUNTER_TYPE=int64_t -DOPENCV_ENABLE_NONFREE=ON -Wno-dev ../opencv-4.11.0
|
||||
cmake -G "MinGW Makefiles" -DENABLE_CXX11=ON -DOPENCV_EXTRA_MODULES_PATH="../opencv_contrib-4.12.0/modules" -DBUILD_SHARED_LIBS=ON -DWITH_IPP=OFF -DWITH_MSMF=OFF -DBUILD_EXAMPLES=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=ON -DBUILD_opencv_java=OFF -DBUILD_opencv_python=OFF -DBUILD_opencv_python2=OFF -DBUILD_opencv_python3=OFF -DBUILD_DOCS=OFF -DENABLE_PRECOMPILED_HEADERS=OFF -DBUILD_opencv_saliency=OFF -DBUILD_opencv_wechat_qrcode=ON -DCPU_DISPATCH= -DOPENCV_GENERATE_PKGCONFIG=ON -DWITH_OPENCL_D3D11_NV=OFF -DOPENCV_ALLOCATOR_STATS_COUNTER_TYPE=int64_t -DOPENCV_ENABLE_NONFREE=ON -Wno-dev ../opencv-4.12.0
|
||||
cmake --build . --target install
|
||||
- name: Save cached OpenCV build
|
||||
uses: actions/cache/save@v4
|
||||
@@ -78,9 +78,9 @@ jobs:
|
||||
- name: Set GoCV env
|
||||
run: |
|
||||
go env
|
||||
echo "CGO_CXXFLAGS=--std=c++11" >> $env:GITHUB_ENV
|
||||
echo "CGO_CXXFLAGS=--std=c++11 -DNDEBUG" >> $env:GITHUB_ENV
|
||||
echo "CGO_CPPFLAGS=-I${env:GITHUB_WORKSPACE}\opencv\build\install\include" >> $env:GITHUB_ENV
|
||||
echo "CGO_LDFLAGS=-L${env:GITHUB_WORKSPACE}\opencv\build\install\x64\mingw\lib -lopencv_core4110 -lopencv_face4110 -lopencv_videoio4110 -lopencv_imgproc4110 -lopencv_highgui4110 -lopencv_imgcodecs4110 -lopencv_objdetect4110 -lopencv_features2d4110 -lopencv_video4110 -lopencv_dnn4110 -lopencv_xfeatures2d4110 -lopencv_plot4110 -lopencv_tracking4110 -lopencv_img_hash4110 -lopencv_calib3d4110 -lopencv_bgsegm4110 -lopencv_photo4110 -lopencv_aruco4110 -lopencv_wechat_qrcode4110 -lopencv_ximgproc4110 -lopencv_xphoto4110 -lopencv_xobjdetect4110" >> $env:GITHUB_ENV
|
||||
echo "CGO_LDFLAGS=-L${env:GITHUB_WORKSPACE}\opencv\build\install\x64\mingw\lib -lopencv_core4120 -lopencv_face4120 -lopencv_videoio4120 -lopencv_imgproc4120 -lopencv_highgui4120 -lopencv_imgcodecs4120 -lopencv_objdetect4120 -lopencv_features2d4120 -lopencv_video4120 -lopencv_dnn4120 -lopencv_xfeatures2d4120 -lopencv_plot4120 -lopencv_tracking4120 -lopencv_img_hash4120 -lopencv_calib3d4120 -lopencv_bgsegm4120 -lopencv_photo4120 -lopencv_aruco4120 -lopencv_wechat_qrcode4120 -lopencv_ximgproc4120 -lopencv_xphoto4120 -lopencv_xobjdetect4120" >> $env:GITHUB_ENV
|
||||
echo "${env:GITHUB_WORKSPACE}/opencv/build/install/x64/mingw/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
||||
- name: Install Tensorflow test model
|
||||
run: |
|
||||
|
@@ -1,6 +1,6 @@
|
||||
# to build this docker image:
|
||||
# docker build .
|
||||
FROM ghcr.io/hybridgroup/opencv:4.11.0
|
||||
FROM ghcr.io/hybridgroup/opencv:4.12.0
|
||||
|
||||
ENV GOPATH /go
|
||||
|
||||
|
@@ -1,7 +1,7 @@
|
||||
# to build this docker image:
|
||||
# docker buildx build -f Dockerfile-static -t gocv-static --platform=linux/amd64,linux/arm64 .
|
||||
#
|
||||
FROM --platform=$BUILDPLATFORM ghcr.io/hybridgroup/opencv:4.11.0-static AS gocv-build
|
||||
FROM --platform=$BUILDPLATFORM ghcr.io/hybridgroup/opencv:4.12.0-static AS gocv-build
|
||||
|
||||
ENV GOPATH /go
|
||||
|
||||
|
@@ -9,7 +9,7 @@
|
||||
#
|
||||
# NOTE that you cannot use highgui from the static build!
|
||||
#
|
||||
FROM --platform=$BUILDPLATFORM ghcr.io/hybridgroup/opencv:4.11.0-static AS gocv-static-builder
|
||||
FROM --platform=$BUILDPLATFORM ghcr.io/hybridgroup/opencv:4.12.0-static AS gocv-static-builder
|
||||
|
||||
WORKDIR /src
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# docker run -it --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix gocv-test-4.x
|
||||
# xhost -
|
||||
#
|
||||
FROM ghcr.io/hybridgroup/opencv:4.11.0 AS gocv-test-4.11
|
||||
FROM ghcr.io/hybridgroup/opencv:4.12.0 AS gocv-test-4.11
|
||||
|
||||
ENV GOPATH /go
|
||||
|
||||
|
@@ -4,7 +4,7 @@
|
||||
# To run tests:
|
||||
# docker run -it --rm --gpus all gocv-test-gpu-cuda-10
|
||||
#
|
||||
FROM ghcr.io/hybridgroup/opencv:4.11.0-gpu-cuda-10 AS gocv-gpu-test-cuda-10
|
||||
FROM ghcr.io/hybridgroup/opencv:4.12.0-gpu-cuda-10 AS gocv-gpu-test-cuda-10
|
||||
|
||||
ENV GOPATH /go
|
||||
ENV PATH="${PATH}:/go/bin"
|
||||
|
@@ -4,7 +4,7 @@
|
||||
# To run tests:
|
||||
# docker run -it --rm --gpus all gocv-test-gpu-cuda-11
|
||||
#
|
||||
FROM ghcr.io/hybridgroup/opencv:4.11.0-gpu-cuda-11 AS gocv-gpu-test-cuda-11
|
||||
FROM ghcr.io/hybridgroup/opencv:4.12.0-gpu-cuda-11 AS gocv-gpu-test-cuda-11
|
||||
|
||||
ENV GOPATH /go
|
||||
ENV PATH="${PATH}:/go/bin"
|
||||
|
@@ -4,7 +4,7 @@
|
||||
# To run tests:
|
||||
# docker run -it --rm --gpus all gocv-test-gpu-cuda-11.2.2
|
||||
#
|
||||
FROM ghcr.io/hybridgroup/opencv:4.11.0-gpu-cuda-11.2.2 AS gocv-gpu-test-cuda-11
|
||||
FROM ghcr.io/hybridgroup/opencv:4.12.0-gpu-cuda-11.2.2 AS gocv-gpu-test-cuda-11
|
||||
|
||||
ENV GOPATH /go
|
||||
ENV PATH="${PATH}:/go/bin"
|
||||
|
@@ -4,7 +4,7 @@
|
||||
# To run tests:
|
||||
# docker run -it --rm --gpus all gocv-test-gpu-cuda-12
|
||||
#
|
||||
FROM ghcr.io/hybridgroup/opencv:4.11.0-gpu-cuda-12 AS gocv-gpu-test-cuda-12
|
||||
FROM ghcr.io/hybridgroup/opencv:4.12.0-gpu-cuda-12 AS gocv-gpu-test-cuda-12
|
||||
|
||||
ENV GOPATH /go
|
||||
ENV PATH="${PATH}:/go/bin"
|
||||
|
@@ -1,6 +1,6 @@
|
||||
# to build this docker image:
|
||||
# docker build -f Dockerfile.gpu .
|
||||
FROM ghcr.io/hybridgroup/opencv:4.11.0-gpu-cuda-11 AS gocv-gpu
|
||||
FROM ghcr.io/hybridgroup/opencv:4.12.0-gpu-cuda-11 AS gocv-gpu
|
||||
|
||||
ENV GOPATH /go
|
||||
|
||||
|
46
README.md
46
README.md
@@ -11,7 +11,7 @@
|
||||
|
||||
The GoCV package provides Go language bindings for the [OpenCV 4](http://opencv.org/) computer vision library.
|
||||
|
||||
The GoCV package supports the latest releases of Go and OpenCV (v4.11.0) on Linux, macOS, and Windows. We intend to make the Go language a "first-class" client compatible with the latest developments in the OpenCV ecosystem.
|
||||
The GoCV package supports the latest releases of Go and OpenCV (v4.12.0) on Linux, macOS, and Windows. We intend to make the Go language a "first-class" client compatible with the latest developments in the OpenCV ecosystem.
|
||||
|
||||
GoCV supports [CUDA](https://en.wikipedia.org/wiki/CUDA) for hardware acceleration using Nvidia GPUs. Check out the [CUDA README](./cuda/README.md) for more info on how to use GoCV with OpenCV/CUDA.
|
||||
|
||||
@@ -123,7 +123,7 @@ There are examples in the [cmd directory](./cmd) of this repo in the form of var
|
||||
|
||||
## How to install
|
||||
|
||||
To install GoCV, you must first have the matching version of OpenCV installed on your system. The current release of GoCV requires OpenCV 4.11.0.
|
||||
To install GoCV, you must first have the matching version of OpenCV installed on your system. The current release of GoCV requires OpenCV 4.12.0.
|
||||
|
||||
Here are instructions for Ubuntu, Raspian, macOS, and Windows.
|
||||
|
||||
@@ -131,7 +131,7 @@ Here are instructions for Ubuntu, Raspian, macOS, and Windows.
|
||||
|
||||
### Installation
|
||||
|
||||
You can use `make` to install OpenCV 4.11.0 with the handy `Makefile` included with this repo. If you already have installed OpenCV, you do not need to do so again. The installation performed by the `Makefile` is minimal, so it may remove OpenCV options such as Python or Java wrappers if you have already installed OpenCV some other way.
|
||||
You can use `make` to install OpenCV 4.12.0 with the handy `Makefile` included with this repo. If you already have installed OpenCV, you do not need to do so again. The installation performed by the `Makefile` is minimal, so it may remove OpenCV options such as Python or Java wrappers if you have already installed OpenCV some other way.
|
||||
|
||||
#### Quick Install
|
||||
|
||||
@@ -142,7 +142,7 @@ First, change directories to where you want to install GoCV, and then use git to
|
||||
|
||||
Make sure to change `$HOME/folder/with/your/src/` to where you actually want to save the code.
|
||||
|
||||
Once you have cloned the repo, the following commands should do everything to download and install OpenCV 4.11.0 on Linux:
|
||||
Once you have cloned the repo, the following commands should do everything to download and install OpenCV 4.12.0 on Linux:
|
||||
|
||||
cd gocv
|
||||
make install
|
||||
@@ -154,7 +154,7 @@ If you need static opencv libraries
|
||||
If it works correctly, at the end of the entire process, the following message should be displayed:
|
||||
|
||||
gocv version: 0.41.0
|
||||
opencv lib version: 4.11.0
|
||||
opencv lib version: 4.12.0
|
||||
|
||||
That's it, now you are ready to use GoCV.
|
||||
|
||||
@@ -168,7 +168,7 @@ See the [openvino directory](./openvino) for information.
|
||||
|
||||
#### Make Install for OpenVINO and Cuda
|
||||
|
||||
The following commands should do everything to download and install OpenCV 4.11.0 with CUDA and OpenVINO on Linux. Make sure to change `$HOME/folder/with/your/src/` to the directory you used to clone GoCV:
|
||||
The following commands should do everything to download and install OpenCV 4.12.0 with CUDA and OpenVINO on Linux. Make sure to change `$HOME/folder/with/your/src/` to the directory you used to clone GoCV:
|
||||
|
||||
cd $HOME/folder/with/gocv/
|
||||
make install_all
|
||||
@@ -180,7 +180,7 @@ If you need static opencv libraries
|
||||
If it works correctly, at the end of the entire process, the following message should be displayed:
|
||||
|
||||
gocv version: 0.41.0
|
||||
opencv lib version: 4.11.0-openvino
|
||||
opencv lib version: 4.12.0-openvino
|
||||
cuda information:
|
||||
Device 0: "GeForce MX150" 2003Mb, sm_61, Driver/Runtime ver.10.0/10.0
|
||||
|
||||
@@ -207,7 +207,7 @@ Next, you need to update the system, and install any required packages:
|
||||
|
||||
#### Download source
|
||||
|
||||
Now, download the OpenCV 4.11.0 and OpenCV Contrib source code:
|
||||
Now, download the OpenCV 4.12.0 and OpenCV Contrib source code:
|
||||
|
||||
make download
|
||||
|
||||
@@ -242,7 +242,7 @@ Now you should be able to build or run any of the examples:
|
||||
The version program should output the following:
|
||||
|
||||
gocv version: 0.41.0
|
||||
opencv lib version: 4.11.0
|
||||
opencv lib version: 4.12.0
|
||||
|
||||
#### Cleanup extra files
|
||||
|
||||
@@ -324,7 +324,7 @@ There is a Docker image with Alpine 3.7 that has been created by project contrib
|
||||
|
||||
### Installation
|
||||
|
||||
We have a special installation for the Raspberry Pi that includes some hardware optimizations. You use `make` to install OpenCV 4.11.0 with the handy `Makefile` included with this repo. If you already have installed OpenCV, you do not need to do so again. The installation performed by the `Makefile` is minimal, so it may remove OpenCV options such as Python or Java wrappers if you have already installed OpenCV some other way.
|
||||
We have a special installation for the Raspberry Pi that includes some hardware optimizations. You use `make` to install OpenCV 4.12.0 with the handy `Makefile` included with this repo. If you already have installed OpenCV, you do not need to do so again. The installation performed by the `Makefile` is minimal, so it may remove OpenCV options such as Python or Java wrappers if you have already installed OpenCV some other way.
|
||||
|
||||
#### Quick Install
|
||||
|
||||
@@ -335,7 +335,7 @@ First, change directories to where you want to install GoCV, and then use git to
|
||||
|
||||
Make sure to change `$HOME/folder/with/your/src/` to where you actually want to save the code.
|
||||
|
||||
The following make command should do everything to download and install OpenCV 4.11.0 on Raspbian:
|
||||
The following make command should do everything to download and install OpenCV 4.12.0 on Raspbian:
|
||||
|
||||
cd $HOME/folder/with/your/src/gocv
|
||||
make install_raspi
|
||||
@@ -343,7 +343,7 @@ The following make command should do everything to download and install OpenCV 4
|
||||
If it works correctly, at the end of the entire process, the following message should be displayed:
|
||||
|
||||
gocv version: 0.41.0
|
||||
opencv lib version: 4.11.0
|
||||
opencv lib version: 4.12.0
|
||||
|
||||
That's it, now you are ready to use GoCV.
|
||||
|
||||
@@ -351,13 +351,13 @@ That's it, now you are ready to use GoCV.
|
||||
|
||||
### Installation
|
||||
|
||||
You can install OpenCV 4.11.0 using Homebrew.
|
||||
You can install OpenCV 4.12.0 using Homebrew.
|
||||
|
||||
If you already have an earlier version of OpenCV (3.4.x) installed, you should probably remove it before installing the new version:
|
||||
|
||||
brew uninstall opencv
|
||||
|
||||
You can then install OpenCV 4.11.0:
|
||||
You can then install OpenCV 4.12.0:
|
||||
|
||||
brew install opencv
|
||||
|
||||
@@ -383,7 +383,7 @@ Now you should be able to build or run any of the examples:
|
||||
The version program should output the following:
|
||||
|
||||
gocv version: 0.41.0
|
||||
opencv lib version: 4.11.0
|
||||
opencv lib version: 4.12.0
|
||||
|
||||
### Custom Environment
|
||||
|
||||
@@ -392,8 +392,8 @@ By default, pkg-config is used to determine the correct flags for compiling and
|
||||
For example:
|
||||
|
||||
export CGO_CXXFLAGS="--std=c++11"
|
||||
export CGO_CPPFLAGS="-I/usr/local/Cellar/opencv/4.11.0/include"
|
||||
export CGO_LDFLAGS="-L/usr/local/Cellar/opencv/4.11.0/lib -lopencv_stitching -lopencv_superres -lopencv_videostab -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dpm -lopencv_face -lopencv_photo -lopencv_fuzzy -lopencv_hfs -lopencv_img_hash -lopencv_line_descriptor -lopencv_optflow -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_dnn -lopencv_plot -lopencv_xfeatures2d -lopencv_shape -lopencv_video -lopencv_ml -lopencv_ximgproc -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_flann -lopencv_xobjdetect -lopencv_imgcodecs -lopencv_objdetect -lopencv_xphoto -lopencv_imgproc -lopencv_core"
|
||||
export CGO_CPPFLAGS="-I/usr/local/Cellar/opencv/4.12.0/include"
|
||||
export CGO_LDFLAGS="-L/usr/local/Cellar/opencv/4.12.0/lib -lopencv_stitching -lopencv_superres -lopencv_videostab -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dpm -lopencv_face -lopencv_photo -lopencv_fuzzy -lopencv_hfs -lopencv_img_hash -lopencv_line_descriptor -lopencv_optflow -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_dnn -lopencv_plot -lopencv_xfeatures2d -lopencv_shape -lopencv_video -lopencv_ml -lopencv_ximgproc -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_flann -lopencv_xobjdetect -lopencv_imgcodecs -lopencv_objdetect -lopencv_xphoto -lopencv_imgproc -lopencv_core"
|
||||
|
||||
Please note that you will need to run these 3 lines of code one time in your current session in order to build or run the code, in order to setup the needed ENV variables. Once you have done so, you can execute code that uses GoCV with your custom environment like this:
|
||||
|
||||
@@ -405,7 +405,7 @@ Please note that you will need to run these 3 lines of code one time in your cur
|
||||
|
||||
The following assumes that you are running a 64-bit version of Windows 10.
|
||||
|
||||
In order to build and install OpenCV 4.11.0 on Windows, you must first download and install MinGW-W64 and CMake, as follows.
|
||||
In order to build and install OpenCV 4.12.0 on Windows, you must first download and install MinGW-W64 and CMake, as follows.
|
||||
|
||||
#### MinGW-W64
|
||||
|
||||
@@ -421,9 +421,9 @@ Add the `C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bi
|
||||
|
||||
Download and install CMake [https://cmake.org/download/](https://cmake.org/download/) to the default location. CMake installer will add CMake to your system path.
|
||||
|
||||
#### OpenCV 4.11.0 and OpenCV Contrib Modules
|
||||
#### OpenCV 4.12.0 and OpenCV Contrib Modules
|
||||
|
||||
The following commands should do everything to download and install OpenCV 4.11.0 on Windows:
|
||||
The following commands should do everything to download and install OpenCV 4.12.0 on Windows:
|
||||
|
||||
chdir %GOPATH%\src\gocv.io\x\gocv
|
||||
win_build_opencv.cmd
|
||||
@@ -445,7 +445,7 @@ Now you should be able to build or run any of the command examples:
|
||||
The version program should output the following:
|
||||
|
||||
gocv version: 0.41.0
|
||||
opencv lib version: 4.11.0
|
||||
opencv lib version: 4.12.0
|
||||
|
||||
That's it, now you are ready to use GoCV.
|
||||
|
||||
@@ -459,7 +459,7 @@ For example:
|
||||
|
||||
set CGO_CXXFLAGS="--std=c++11"
|
||||
set CGO_CPPFLAGS=-IC:\opencv\build\install\include
|
||||
set CGO_LDFLAGS=-LC:\opencv\build\install\x64\mingw\lib -lopencv_core4110 -lopencv_face4110 -lopencv_videoio4110 -lopencv_imgproc4110 -lopencv_highgui4110 -lopencv_imgcodecs4110 -lopencv_objdetect4110 -lopencv_features2d4110 -lopencv_video4110 -lopencv_dnn4110 -lopencv_xfeatures2d4110 -lopencv_plot4110 -lopencv_tracking4110 -lopencv_img_hash4110
|
||||
set CGO_LDFLAGS=-LC:\opencv\build\install\x64\mingw\lib -lopencv_core4120 -lopencv_face4120 -lopencv_videoio4120 -lopencv_imgproc4120 -lopencv_highgui4120 -lopencv_imgcodecs4120 -lopencv_objdetect4120 -lopencv_features2d4120 -lopencv_video4120 -lopencv_dnn4120 -lopencv_xfeatures2d4120 -lopencv_plot4120 -lopencv_tracking4120 -lopencv_img_hash4120
|
||||
|
||||
Please note that you will need to run these 3 lines of code one time in your current session in order to build or run the code, in order to setup the needed ENV variables. Once you have done so, you can execute code that uses GoCV with your custom environment like this:
|
||||
|
||||
@@ -468,7 +468,7 @@ Please note that you will need to run these 3 lines of code one time in your cur
|
||||
## Android
|
||||
|
||||
There is some work in progress for running GoCV on Android using Gomobile. For information on how to install OpenCV/GoCV for Android, please see:
|
||||
https://gist.github.com/ogero/c19458cf64bd3e91faae85c3ac8874110
|
||||
https://gist.github.com/ogero/c19458cf64bd3e91faae85c3ac8874120
|
||||
|
||||
See original discussion here:
|
||||
https://github.com/hybridgroup/gocv/issues/235
|
||||
|
4
cgo.go
4
cgo.go
@@ -6,8 +6,8 @@ package gocv
|
||||
|
||||
/*
|
||||
#cgo !windows pkg-config: opencv4
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo windows CPPFLAGS: -IC:/opencv/build/install/include
|
||||
#cgo windows LDFLAGS: -LC:/opencv/build/install/x64/mingw/lib -lopencv_core4110 -lopencv_face4110 -lopencv_videoio4110 -lopencv_imgproc4110 -lopencv_highgui4110 -lopencv_imgcodecs4110 -lopencv_objdetect4110 -lopencv_features2d4110 -lopencv_video4110 -lopencv_dnn4110 -lopencv_xfeatures2d4110 -lopencv_plot4110 -lopencv_tracking4110 -lopencv_img_hash4110 -lopencv_calib3d4110 -lopencv_bgsegm4110 -lopencv_photo4110 -lopencv_aruco4110 -lopencv_wechat_qrcode4110 -lopencv_ximgproc4110
|
||||
#cgo windows LDFLAGS: -LC:/opencv/build/install/x64/mingw/lib -lopencv_core4120 -lopencv_face4120 -lopencv_videoio4120 -lopencv_imgproc4120 -lopencv_highgui4120 -lopencv_imgcodecs4120 -lopencv_objdetect4120 -lopencv_features2d4120 -lopencv_video4120 -lopencv_dnn4120 -lopencv_xfeatures2d4120 -lopencv_plot4120 -lopencv_tracking4120 -lopencv_img_hash4120 -lopencv_calib3d4120 -lopencv_bgsegm4120 -lopencv_photo4120 -lopencv_aruco4120 -lopencv_wechat_qrcode4120 -lopencv_ximgproc4120
|
||||
*/
|
||||
import "C"
|
||||
|
@@ -5,7 +5,7 @@ package gocv
|
||||
// Changes here should be mirrored in contrib/cgo_static.go and cuda/cgo_static.go.
|
||||
|
||||
/*
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo CPPFLAGS: -I/usr/local/include -I/usr/local/include/opencv4
|
||||
#cgo amd64 LDFLAGS: -O2 -g -static -L/usr/local/lib -L/usr/local/lib/opencv4/3rdparty -lopencv_gapi -lopencv_stitching -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dnn_superres -lopencv_dpm -lopencv_face -lopencv_freetype -lopencv_fuzzy -lopencv_hfs -lopencv_img_hash -lopencv_intensity_transform -lopencv_line_descriptor -lopencv_mcc -lopencv_quality -lopencv_rapid -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_signal -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_highgui -lopencv_datasets -lopencv_text -lopencv_plot -lopencv_videostab -lopencv_videoio -lopencv_wechat_qrcode -lopencv_xfeatures2d -lopencv_shape -lopencv_ml -lopencv_ximgproc -lopencv_video -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_imgcodecs -lopencv_features2d -lopencv_dnn -lopencv_flann -lopencv_xphoto -lopencv_photo -lopencv_imgproc -lopencv_core -llibprotobuf -lade -ltbb -littnotify -llibjpeg-turbo -llibwebp -llibtiff -llibopenjp2 -lIlmImf -lquirc -lippiw -lippicv -lpng -lz -lgcc -lstdc++ -lfreetype -lharfbuzz -ldl -lm -lpthread -lrt -lavdevice -lm -latomic -lavfilter -pthread -lm -latomic -lswscale -lm -latomic -lpostproc -lm -latomic -lavformat -lm -latomic -lz -lavcodec -lvpx -lm -lvpx -lm -lvpx -lm -lvpx -lm -pthread -lm -latomic -lz -lx264 -lswresample -lm -latomic -lavutil -pthread -lm -latomic
|
||||
#cgo arm64 LDFLAGS: -O2 -g -static -L/usr/local/lib -L/usr/local/lib/opencv4/3rdparty -lopencv_gapi -lopencv_stitching -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dnn_superres -lopencv_dpm -lopencv_face -lopencv_freetype -lopencv_fuzzy -lopencv_hfs -lopencv_img_hash -lopencv_intensity_transform -lopencv_line_descriptor -lopencv_mcc -lopencv_quality -lopencv_rapid -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_signal -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_highgui -lopencv_datasets -lopencv_text -lopencv_plot -lopencv_videostab -lopencv_videoio -lopencv_wechat_qrcode -lopencv_xfeatures2d -lopencv_shape -lopencv_ml -lopencv_ximgproc -lopencv_video -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_imgcodecs -lopencv_features2d -lopencv_dnn -lopencv_flann -lopencv_xphoto -lopencv_photo -lopencv_imgproc -lopencv_core -llibprotobuf -lade -ltbb -littnotify -llibjpeg-turbo -llibwebp -llibtiff -llibopenjp2 -lIlmImf -lquirc -ltegra_hal -lpng -lz -lgcc -lstdc++ -lfreetype -lharfbuzz -ldl -lm -lpthread -lrt -lavdevice -lm -latomic -lavfilter -pthread -lm -latomic -lswscale -lm -latomic -lpostproc -lm -latomic -lavformat -lm -latomic -lz -lavcodec -lvpx -lm -lvpx -lm -lvpx -lm -lvpx -lm -pthread -lm -latomic -lz -lx264 -lswresample -lm -latomic -lavutil -pthread -lm -latomic
|
||||
|
@@ -5,7 +5,7 @@ package gocv
|
||||
// Changes here should be mirrored in contrib/cgo_static_darwin.go and cuda/cgo_static_darwin.go.
|
||||
|
||||
/*
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo pkg-config: --static opencv4
|
||||
*/
|
||||
import "C"
|
||||
|
@@ -5,8 +5,8 @@ package gocv
|
||||
// Changes here should be mirrored in contrib/cgo_static_windows.go and cuda/cgo_static_windows.go.
|
||||
|
||||
/*
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo CPPFLAGS: -IC:/opencv/build/install/include
|
||||
#cgo LDFLAGS: -LC:/opencv/build/install/x64/mingw/staticlib -lopencv_stereo4110 -lopencv_tracking4110 -lopencv_superres4110 -lopencv_stitching4110 -lopencv_optflow4110 -lopencv_gapi4110 -lopencv_face4110 -lopencv_dpm4110 -lopencv_dnn_objdetect4110 -lopencv_ccalib4110 -lopencv_bioinspired4110 -lopencv_bgsegm4110 -lopencv_aruco4110 -lopencv_xobjdetect4110 -lopencv_ximgproc4110 -lopencv_xfeatures2d4110 -lopencv_videostab4110 -lopencv_video4110 -lopencv_structured_light4110 -lopencv_shape4110 -lopencv_rgbd4110 -lopencv_rapid4110 -lopencv_objdetect4110 -lopencv_mcc4110 -lopencv_highgui4110 -lopencv_datasets4110 -lopencv_calib3d4110 -lopencv_videoio4110 -lopencv_text4110 -lopencv_line_descriptor4110 -lopencv_imgcodecs4110 -lopencv_img_hash4110 -lopencv_hfs4110 -lopencv_fuzzy4110 -lopencv_features2d4110 -lopencv_dnn_superres4110 -lopencv_dnn4110 -lopencv_xphoto4110 -lopencv_wechat_qrcode4110 -lopencv_surface_matching4110 -lopencv_reg4110 -lopencv_quality4110 -lopencv_plot4110 -lopencv_photo4110 -lopencv_phase_unwrapping4110 -lopencv_ml4110 -lopencv_intensity_transform4110 -lopencv_imgproc4110 -lopencv_flann4110 -lopencv_core4110 -lade -lquirc -llibprotobuf -lIlmImf -llibpng -llibopenjp2 -llibwebp -llibtiff -llibjpeg-turbo -lzlib -lkernel32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -luser32
|
||||
#cgo LDFLAGS: -LC:/opencv/build/install/x64/mingw/staticlib -lopencv_stereo4120 -lopencv_tracking4120 -lopencv_superres4120 -lopencv_stitching4120 -lopencv_optflow4120 -lopencv_gapi4120 -lopencv_face4120 -lopencv_dpm4120 -lopencv_dnn_objdetect4120 -lopencv_ccalib4120 -lopencv_bioinspired4120 -lopencv_bgsegm4120 -lopencv_aruco4120 -lopencv_xobjdetect4120 -lopencv_ximgproc4120 -lopencv_xfeatures2d4120 -lopencv_videostab4120 -lopencv_video4120 -lopencv_structured_light4120 -lopencv_shape4120 -lopencv_rgbd4120 -lopencv_rapid4120 -lopencv_objdetect4120 -lopencv_mcc4120 -lopencv_highgui4120 -lopencv_datasets4120 -lopencv_calib3d4120 -lopencv_videoio4120 -lopencv_text4120 -lopencv_line_descriptor4120 -lopencv_imgcodecs4120 -lopencv_img_hash4120 -lopencv_hfs4120 -lopencv_fuzzy4120 -lopencv_features2d4120 -lopencv_dnn_superres4120 -lopencv_dnn4120 -lopencv_xphoto4120 -lopencv_wechat_qrcode4120 -lopencv_surface_matching4120 -lopencv_reg4120 -lopencv_quality4120 -lopencv_plot4120 -lopencv_photo4120 -lopencv_phase_unwrapping4120 -lopencv_ml4120 -lopencv_intensity_transform4120 -lopencv_imgproc4120 -lopencv_flann4120 -lopencv_core4120 -lade -lquirc -llibprotobuf -lIlmImf -llibpng -llibopenjp2 -llibwebp -llibtiff -llibjpeg-turbo -lzlib -lkernel32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -luser32
|
||||
*/
|
||||
import "C"
|
||||
|
@@ -6,8 +6,8 @@ package contrib
|
||||
|
||||
/*
|
||||
#cgo !windows pkg-config: opencv4
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo windows CPPFLAGS: -IC:/opencv/build/install/include
|
||||
#cgo windows LDFLAGS: -LC:/opencv/build/install/x64/mingw/lib -lopencv_core4110 -lopencv_face4110 -lopencv_videoio4110 -lopencv_imgproc4110 -lopencv_highgui4110 -lopencv_imgcodecs4110 -lopencv_objdetect4110 -lopencv_features2d4110 -lopencv_video4110 -lopencv_dnn4110 -lopencv_xfeatures2d4110 -lopencv_plot4110 -lopencv_tracking4110 -lopencv_img_hash4110 -lopencv_calib3d4110 -lopencv_bgsegm4110 -lopencv_xphoto4110 -lopencv_aruco4110 -lopencv_wechat_qrcode4110 -lopencv_ximgproc4110 -lopencv_xobjdetect4110
|
||||
#cgo windows LDFLAGS: -LC:/opencv/build/install/x64/mingw/lib -lopencv_core4120 -lopencv_face4120 -lopencv_videoio4120 -lopencv_imgproc4120 -lopencv_highgui4120 -lopencv_imgcodecs4120 -lopencv_objdetect4120 -lopencv_features2d4120 -lopencv_video4120 -lopencv_dnn4120 -lopencv_xfeatures2d4120 -lopencv_plot4120 -lopencv_tracking4120 -lopencv_img_hash4120 -lopencv_calib3d4120 -lopencv_bgsegm4120 -lopencv_xphoto4120 -lopencv_aruco4120 -lopencv_wechat_qrcode4120 -lopencv_ximgproc4120 -lopencv_xobjdetect4120
|
||||
*/
|
||||
import "C"
|
||||
|
@@ -5,7 +5,7 @@ package contrib
|
||||
// Changes here should be mirrored in contrib/cgo_static.go and cuda/cgo_static.go.
|
||||
|
||||
/*
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo CPPFLAGS: -I/usr/local/include -I/usr/local/include/opencv4
|
||||
#cgo amd64 LDFLAGS: -O2 -g -static -L/usr/local/lib -L/usr/local/lib/opencv4/3rdparty -lopencv_gapi -lopencv_stitching -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dnn_superres -lopencv_dpm -lopencv_face -lopencv_freetype -lopencv_fuzzy -lopencv_hfs -lopencv_img_hash -lopencv_intensity_transform -lopencv_line_descriptor -lopencv_mcc -lopencv_quality -lopencv_rapid -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_signal -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_highgui -lopencv_datasets -lopencv_text -lopencv_plot -lopencv_videostab -lopencv_videoio -lopencv_wechat_qrcode -lopencv_xfeatures2d -lopencv_shape -lopencv_ml -lopencv_ximgproc -lopencv_video -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_imgcodecs -lopencv_features2d -lopencv_dnn -lopencv_flann -lopencv_xphoto -lopencv_photo -lopencv_imgproc -lopencv_core -llibprotobuf -lade -ltbb -littnotify -llibjpeg-turbo -llibwebp -llibtiff -llibopenjp2 -lIlmImf -lquirc -lippiw -lippicv -lpng -lz -lgcc -lstdc++ -lfreetype -lharfbuzz -ldl -lm -lpthread -lrt -lavdevice -lm -latomic -lavfilter -pthread -lm -latomic -lswscale -lm -latomic -lpostproc -lm -latomic -lavformat -lm -latomic -lz -lavcodec -lvpx -lm -lvpx -lm -lvpx -lm -lvpx -lm -pthread -lm -latomic -lz -lx264 -lswresample -lm -latomic -lavutil -pthread -lm -latomic
|
||||
#cgo arm64 LDFLAGS: -O2 -g -static -L/usr/local/lib -L/usr/local/lib/opencv4/3rdparty -lopencv_gapi -lopencv_stitching -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dnn_superres -lopencv_dpm -lopencv_face -lopencv_freetype -lopencv_fuzzy -lopencv_hfs -lopencv_img_hash -lopencv_intensity_transform -lopencv_line_descriptor -lopencv_mcc -lopencv_quality -lopencv_rapid -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_signal -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_highgui -lopencv_datasets -lopencv_text -lopencv_plot -lopencv_videostab -lopencv_videoio -lopencv_wechat_qrcode -lopencv_xfeatures2d -lopencv_shape -lopencv_ml -lopencv_ximgproc -lopencv_video -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_imgcodecs -lopencv_features2d -lopencv_dnn -lopencv_flann -lopencv_xphoto -lopencv_photo -lopencv_imgproc -lopencv_core -llibprotobuf -lade -ltbb -littnotify -llibjpeg-turbo -llibwebp -llibtiff -llibopenjp2 -lIlmImf -lquirc -ltegra_hal -lpng -lz -lgcc -lstdc++ -lfreetype -lharfbuzz -ldl -lm -lpthread -lrt -lavdevice -lm -latomic -lavfilter -pthread -lm -latomic -lswscale -lm -latomic -lpostproc -lm -latomic -lavformat -lm -latomic -lz -lavcodec -lvpx -lm -lvpx -lm -lvpx -lm -lvpx -lm -pthread -lm -latomic -lz -lx264 -lswresample -lm -latomic -lavutil -pthread -lm -latomic
|
||||
|
@@ -5,7 +5,7 @@ package contrib
|
||||
// Changes here should be mirrored in contrib/cgo_static_darwin.go and cuda/cgo_static_darwin.go.
|
||||
|
||||
/*
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo pkg-config: --static opencv4
|
||||
*/
|
||||
import "C"
|
||||
|
@@ -5,8 +5,8 @@ package contrib
|
||||
// Changes here should be mirrored in contrib/cgo_static_windows.go and cuda/cgo_static_windows.go.
|
||||
|
||||
/*
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo CPPFLAGS: -IC:/opencv/build/install/include
|
||||
#cgo LDFLAGS: -LC:/opencv/build/install/x64/mingw/staticlib -lopencv_stereo4110 -lopencv_tracking4110 -lopencv_superres4110 -lopencv_stitching4110 -lopencv_optflow4110 -lopencv_gapi4110 -lopencv_face4110 -lopencv_dpm4110 -lopencv_dnn_objdetect4110 -lopencv_ccalib4110 -lopencv_bioinspired4110 -lopencv_bgsegm4110 -lopencv_aruco4110 -lopencv_xobjdetect4110 -lopencv_ximgproc4110 -lopencv_xfeatures2d4110 -lopencv_videostab4110 -lopencv_video4110 -lopencv_structured_light4110 -lopencv_shape4110 -lopencv_rgbd4110 -lopencv_rapid4110 -lopencv_objdetect4110 -lopencv_mcc4110 -lopencv_highgui4110 -lopencv_datasets4110 -lopencv_calib3d4110 -lopencv_videoio4110 -lopencv_text4110 -lopencv_line_descriptor4110 -lopencv_imgcodecs4110 -lopencv_img_hash4110 -lopencv_hfs4110 -lopencv_fuzzy4110 -lopencv_features2d4110 -lopencv_dnn_superres4110 -lopencv_dnn4110 -lopencv_xphoto4110 -lopencv_wechat_qrcode4110 -lopencv_surface_matching4110 -lopencv_reg4110 -lopencv_quality4110 -lopencv_plot4110 -lopencv_photo4110 -lopencv_phase_unwrapping4110 -lopencv_ml4110 -lopencv_intensity_transform4110 -lopencv_imgproc4110 -lopencv_flann4110 -lopencv_core4110 -lade -lquirc -llibprotobuf -lIlmImf -llibpng -llibopenjp2 -llibwebp -llibtiff -llibjpeg-turbo -lzlib -lkernel32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -luser32
|
||||
#cgo LDFLAGS: -LC:/opencv/build/install/x64/mingw/staticlib -lopencv_stereo4120 -lopencv_tracking4120 -lopencv_superres4120 -lopencv_stitching4120 -lopencv_optflow4120 -lopencv_gapi4120 -lopencv_face4120 -lopencv_dpm4120 -lopencv_dnn_objdetect4120 -lopencv_ccalib4120 -lopencv_bioinspired4120 -lopencv_bgsegm4120 -lopencv_aruco4120 -lopencv_xobjdetect4120 -lopencv_ximgproc4120 -lopencv_xfeatures2d4120 -lopencv_videostab4120 -lopencv_video4120 -lopencv_structured_light4120 -lopencv_shape4120 -lopencv_rgbd4120 -lopencv_rapid4120 -lopencv_objdetect4120 -lopencv_mcc4120 -lopencv_highgui4120 -lopencv_datasets4120 -lopencv_calib3d4120 -lopencv_videoio4120 -lopencv_text4120 -lopencv_line_descriptor4120 -lopencv_imgcodecs4120 -lopencv_img_hash4120 -lopencv_hfs4120 -lopencv_fuzzy4120 -lopencv_features2d4120 -lopencv_dnn_superres4120 -lopencv_dnn4120 -lopencv_xphoto4120 -lopencv_wechat_qrcode4120 -lopencv_surface_matching4120 -lopencv_reg4120 -lopencv_quality4120 -lopencv_plot4120 -lopencv_photo4120 -lopencv_phase_unwrapping4120 -lopencv_ml4120 -lopencv_intensity_transform4120 -lopencv_imgproc4120 -lopencv_flann4120 -lopencv_core4120 -lade -lquirc -llibprotobuf -lIlmImf -llibpng -llibopenjp2 -llibwebp -llibtiff -llibjpeg-turbo -lzlib -lkernel32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -luser32
|
||||
*/
|
||||
import "C"
|
||||
|
@@ -6,8 +6,8 @@ package cuda
|
||||
|
||||
/*
|
||||
#cgo !windows pkg-config: opencv4
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo windows CPPFLAGS: -IC:/opencv/build/install/include
|
||||
#cgo windows LDFLAGS: -LC:/opencv/build/install/x64/mingw/lib -lopencv_core4110 -lopencv_face4110 -lopencv_videoio4110 -lopencv_imgproc4110 -lopencv_highgui4110 -lopencv_imgcodecs4110 -lopencv_objdetect4110 -lopencv_features2d4110 -lopencv_video4110 -lopencv_dnn4110 -lopencv_xfeatures2d4110 -lopencv_plot4110 -lopencv_tracking4110 -lopencv_img_hash4110 -lopencv_calib3d4110 -lopencv_bgsegm4110 -lopencv_aruco4110 -lopencv_wechat_qrcode4110 -lopencv_ximgproc4110 -lopencv_xobjdetect4110
|
||||
#cgo windows LDFLAGS: -LC:/opencv/build/install/x64/mingw/lib -lopencv_core4120 -lopencv_face4120 -lopencv_videoio4120 -lopencv_imgproc4120 -lopencv_highgui4120 -lopencv_imgcodecs4120 -lopencv_objdetect4120 -lopencv_features2d4120 -lopencv_video4120 -lopencv_dnn4120 -lopencv_xfeatures2d4120 -lopencv_plot4120 -lopencv_tracking4120 -lopencv_img_hash4120 -lopencv_calib3d4120 -lopencv_bgsegm4120 -lopencv_aruco4120 -lopencv_wechat_qrcode4120 -lopencv_ximgproc4120 -lopencv_xobjdetect4120
|
||||
*/
|
||||
import "C"
|
||||
|
@@ -5,7 +5,7 @@ package gocv
|
||||
// Changes here should be mirrored in contrib/cgo_static.go and cuda/cgo_static.go.
|
||||
|
||||
/*
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo CPPFLAGS: -I/usr/local/include -I/usr/local/include/opencv4
|
||||
#cgo amd64 LDFLAGS: -O2 -g -static -L/usr/local/lib -L/usr/local/lib/opencv4/3rdparty -lopencv_gapi -lopencv_stitching -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dnn_superres -lopencv_dpm -lopencv_face -lopencv_freetype -lopencv_fuzzy -lopencv_hfs -lopencv_img_hash -lopencv_intensity_transform -lopencv_line_descriptor -lopencv_mcc -lopencv_quality -lopencv_rapid -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_signal -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_highgui -lopencv_datasets -lopencv_text -lopencv_plot -lopencv_videostab -lopencv_videoio -lopencv_wechat_qrcode -lopencv_xfeatures2d -lopencv_shape -lopencv_ml -lopencv_ximgproc -lopencv_video -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_imgcodecs -lopencv_features2d -lopencv_dnn -lopencv_flann -lopencv_xphoto -lopencv_photo -lopencv_imgproc -lopencv_core -llibprotobuf -lade -ltbb -littnotify -llibjpeg-turbo -llibwebp -llibtiff -llibopenjp2 -lIlmImf -lquirc -lippiw -lippicv -lpng -lz -lgcc -lstdc++ -lfreetype -lharfbuzz -ldl -lm -lpthread -lrt -lavdevice -lm -latomic -lavfilter -pthread -lm -latomic -lswscale -lm -latomic -lpostproc -lm -latomic -lavformat -lm -latomic -lz -lavcodec -lvpx -lm -lvpx -lm -lvpx -lm -lvpx -lm -pthread -lm -latomic -lz -lx264 -lswresample -lm -latomic -lavutil -pthread -lm -latomic
|
||||
#cgo arm64 LDFLAGS: -O2 -g -static -L/usr/local/lib -L/usr/local/lib/opencv4/3rdparty -lopencv_gapi -lopencv_stitching -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dnn_superres -lopencv_dpm -lopencv_face -lopencv_freetype -lopencv_fuzzy -lopencv_hfs -lopencv_img_hash -lopencv_intensity_transform -lopencv_line_descriptor -lopencv_mcc -lopencv_quality -lopencv_rapid -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_signal -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_highgui -lopencv_datasets -lopencv_text -lopencv_plot -lopencv_videostab -lopencv_videoio -lopencv_wechat_qrcode -lopencv_xfeatures2d -lopencv_shape -lopencv_ml -lopencv_ximgproc -lopencv_video -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_imgcodecs -lopencv_features2d -lopencv_dnn -lopencv_flann -lopencv_xphoto -lopencv_photo -lopencv_imgproc -lopencv_core -llibprotobuf -lade -ltbb -littnotify -llibjpeg-turbo -llibwebp -llibtiff -llibopenjp2 -lIlmImf -lquirc -ltegra_hal -lpng -lz -lgcc -lstdc++ -lfreetype -lharfbuzz -ldl -lm -lpthread -lrt -lavdevice -lm -latomic -lavfilter -pthread -lm -latomic -lswscale -lm -latomic -lpostproc -lm -latomic -lavformat -lm -latomic -lz -lavcodec -lvpx -lm -lvpx -lm -lvpx -lm -lvpx -lm -pthread -lm -latomic -lz -lx264 -lswresample -lm -latomic -lavutil -pthread -lm -latomic
|
||||
|
@@ -5,7 +5,7 @@ package gocv
|
||||
// Changes here should be mirrored in contrib/cgo_static_darwin.go and cuda/cgo_static_darwin.go.
|
||||
|
||||
/*
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo pkg-config: --static opencv4
|
||||
*/
|
||||
import "C"
|
||||
|
@@ -5,8 +5,8 @@ package gocv
|
||||
// Changes here should be mirrored in contrib/cgo_static_windows.go and cuda/cgo_static_windows.go.
|
||||
|
||||
/*
|
||||
#cgo CXXFLAGS: --std=c++11
|
||||
#cgo CXXFLAGS: --std=c++11 -DNDEBUG
|
||||
#cgo CPPFLAGS: -IC:/opencv/build/install/include
|
||||
#cgo LDFLAGS: -LC:/opencv/build/install/x64/mingw/staticlib -lopencv_stereo4110 -lopencv_tracking4110 -lopencv_superres4110 -lopencv_stitching4110 -lopencv_optflow4110 -lopencv_gapi4110 -lopencv_face4110 -lopencv_dpm4110 -lopencv_dnn_objdetect4110 -lopencv_ccalib4110 -lopencv_bioinspired4110 -lopencv_bgsegm4110 -lopencv_aruco4110 -lopencv_xobjdetect4110 -lopencv_ximgproc4110 -lopencv_xfeatures2d4110 -lopencv_videostab4110 -lopencv_video4110 -lopencv_structured_light4110 -lopencv_shape4110 -lopencv_rgbd4110 -lopencv_rapid4110 -lopencv_objdetect4110 -lopencv_mcc4110 -lopencv_highgui4110 -lopencv_datasets4110 -lopencv_calib3d4110 -lopencv_videoio4110 -lopencv_text4110 -lopencv_line_descriptor4110 -lopencv_imgcodecs4110 -lopencv_img_hash4110 -lopencv_hfs4110 -lopencv_fuzzy4110 -lopencv_features2d4110 -lopencv_dnn_superres4110 -lopencv_dnn4110 -lopencv_xphoto4110 -lopencv_wechat_qrcode4110 -lopencv_surface_matching4110 -lopencv_reg4110 -lopencv_quality4110 -lopencv_plot4110 -lopencv_photo4110 -lopencv_phase_unwrapping4110 -lopencv_ml4110 -lopencv_intensity_transform4110 -lopencv_imgproc4110 -lopencv_flann4110 -lopencv_core4110 -lade -lquirc -llibprotobuf -lIlmImf -llibpng -llibopenjp2 -llibwebp -llibtiff -llibjpeg-turbo -lzlib -lkernel32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -luser32
|
||||
#cgo LDFLAGS: -LC:/opencv/build/install/x64/mingw/staticlib -lopencv_stereo4120 -lopencv_tracking4120 -lopencv_superres4120 -lopencv_stitching4120 -lopencv_optflow4120 -lopencv_gapi4120 -lopencv_face4120 -lopencv_dpm4120 -lopencv_dnn_objdetect4120 -lopencv_ccalib4120 -lopencv_bioinspired4120 -lopencv_bgsegm4120 -lopencv_aruco4120 -lopencv_xobjdetect4120 -lopencv_ximgproc4120 -lopencv_xfeatures2d4120 -lopencv_videostab4120 -lopencv_video4120 -lopencv_structured_light4120 -lopencv_shape4120 -lopencv_rgbd4120 -lopencv_rapid4120 -lopencv_objdetect4120 -lopencv_mcc4120 -lopencv_highgui4120 -lopencv_datasets4120 -lopencv_calib3d4120 -lopencv_videoio4120 -lopencv_text4120 -lopencv_line_descriptor4120 -lopencv_imgcodecs4120 -lopencv_img_hash4120 -lopencv_hfs4120 -lopencv_fuzzy4120 -lopencv_features2d4120 -lopencv_dnn_superres4120 -lopencv_dnn4120 -lopencv_xphoto4120 -lopencv_wechat_qrcode4120 -lopencv_surface_matching4120 -lopencv_reg4120 -lopencv_quality4120 -lopencv_plot4120 -lopencv_photo4120 -lopencv_phase_unwrapping4120 -lopencv_ml4120 -lopencv_intensity_transform4120 -lopencv_imgproc4120 -lopencv_flann4120 -lopencv_core4120 -lade -lquirc -llibprotobuf -lIlmImf -llibpng -llibopenjp2 -llibwebp -llibtiff -llibjpeg-turbo -lzlib -lkernel32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -luser32
|
||||
*/
|
||||
import "C"
|
||||
|
@@ -8,7 +8,7 @@ import (
|
||||
func TestVersions(t *testing.T) {
|
||||
ocvv := OpenCVVersion()
|
||||
|
||||
if !strings.Contains(ocvv, "4.11") {
|
||||
if !(strings.Contains(ocvv, "4.11") || strings.Contains(ocvv, "4.12")) {
|
||||
t.Error("Wrong version of OpenCV:", ocvv)
|
||||
}
|
||||
|
||||
|
@@ -11,18 +11,18 @@ echo.
|
||||
REM This is why there is no progress bar:
|
||||
REM https://github.com/PowerShell/PowerShell/issues/2138
|
||||
|
||||
echo Downloading: opencv-4.11.0.zip [91MB]
|
||||
powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -Uri https://github.com/opencv/opencv/archive/4.11.0.zip -OutFile c:\opencv\opencv-4.11.0.zip"
|
||||
echo Downloading: opencv-4.12.0.zip [91MB]
|
||||
powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -Uri https://github.com/opencv/opencv/archive/4.12.0.zip -OutFile c:\opencv\opencv-4.12.0.zip"
|
||||
echo Extracting...
|
||||
powershell -command "$ProgressPreference = 'SilentlyContinue'; Expand-Archive -Path c:\opencv\opencv-4.11.0.zip -DestinationPath c:\opencv"
|
||||
del c:\opencv\opencv-4.11.0.zip /q
|
||||
powershell -command "$ProgressPreference = 'SilentlyContinue'; Expand-Archive -Path c:\opencv\opencv-4.12.0.zip -DestinationPath c:\opencv"
|
||||
del c:\opencv\opencv-4.12.0.zip /q
|
||||
echo.
|
||||
|
||||
echo Downloading: opencv_contrib-4.11.0.zip [58MB]
|
||||
powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -Uri https://github.com/opencv/opencv_contrib/archive/4.11.0.zip -OutFile c:\opencv\opencv_contrib-4.11.0.zip"
|
||||
echo Downloading: opencv_contrib-4.12.0.zip [58MB]
|
||||
powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -Uri https://github.com/opencv/opencv_contrib/archive/4.12.0.zip -OutFile c:\opencv\opencv_contrib-4.12.0.zip"
|
||||
echo Extracting...
|
||||
powershell -command "$ProgressPreference = 'SilentlyContinue'; Expand-Archive -Path c:\opencv\opencv_contrib-4.11.0.zip -DestinationPath c:\opencv"
|
||||
del c:\opencv\opencv_contrib-4.11.0.zip /q
|
||||
powershell -command "$ProgressPreference = 'SilentlyContinue'; Expand-Archive -Path c:\opencv\opencv_contrib-4.12.0.zip -DestinationPath c:\opencv"
|
||||
del c:\opencv\opencv_contrib-4.12.0.zip /q
|
||||
echo.
|
||||
|
||||
echo Done with downloading and extracting sources.
|
||||
@@ -38,9 +38,9 @@ if [%1]==[static] (
|
||||
) else (
|
||||
set enable_shared=ON
|
||||
)
|
||||
cmake C:\opencv\opencv-4.11.0 -G "MinGW Makefiles" -BC:\opencv\build -DENABLE_CXX11=ON -DOPENCV_EXTRA_MODULES_PATH=C:\opencv\opencv_contrib-4.11.0\modules -DBUILD_SHARED_LIBS=%enable_shared% -DWITH_IPP=OFF -DWITH_MSMF=OFF -DBUILD_EXAMPLES=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=ON -DBUILD_opencv_java=OFF -DBUILD_opencv_python=OFF -DBUILD_opencv_python2=OFF -DBUILD_opencv_python3=OFF -DBUILD_DOCS=OFF -DENABLE_PRECOMPILED_HEADERS=OFF -DBUILD_opencv_saliency=OFF -DBUILD_opencv_wechat_qrcode=ON -DCPU_DISPATCH= -DOPENCV_GENERATE_PKGCONFIG=ON -DWITH_OPENCL_D3D11_NV=OFF -DOPENCV_ALLOCATOR_STATS_COUNTER_TYPE=int64_t -Wno-dev
|
||||
cmake C:\opencv\opencv-4.12.0 -G "MinGW Makefiles" -BC:\opencv\build -DENABLE_CXX11=ON -DOPENCV_EXTRA_MODULES_PATH=C:\opencv\opencv_contrib-4.12.0\modules -DBUILD_SHARED_LIBS=%enable_shared% -DWITH_IPP=OFF -DWITH_MSMF=OFF -DBUILD_EXAMPLES=OFF -DBUILD_TESTS=OFF -DBUILD_PERF_TESTS=ON -DBUILD_opencv_java=OFF -DBUILD_opencv_python=OFF -DBUILD_opencv_python2=OFF -DBUILD_opencv_python3=OFF -DBUILD_DOCS=OFF -DENABLE_PRECOMPILED_HEADERS=OFF -DBUILD_opencv_saliency=OFF -DBUILD_opencv_wechat_qrcode=ON -DCPU_DISPATCH= -DOPENCV_GENERATE_PKGCONFIG=ON -DWITH_OPENCL_D3D11_NV=OFF -DOPENCV_ALLOCATOR_STATS_COUNTER_TYPE=int64_t -Wno-dev
|
||||
mingw32-make -j%NUMBER_OF_PROCESSORS%
|
||||
mingw32-make install
|
||||
rmdir c:\opencv\opencv-4.11.0 /s /q
|
||||
rmdir c:\opencv\opencv_contrib-4.11.0 /s /q
|
||||
rmdir c:\opencv\opencv-4.12.0 /s /q
|
||||
rmdir c:\opencv\opencv_contrib-4.12.0 /s /q
|
||||
chdir /D %GOPATH%\src\gocv.io\x\gocv
|
||||
|
Reference in New Issue
Block a user