Golang 安装OpenCV 库gocv(golang安装包)

今天看到一个opencv 在golang上的绑定包gocv,有了它,就可以愉快地使用golang来做图像处理了。


众所周知,golang可以生成单独的二进制文件,打包起来相当方便,体积也不大,那我们就先来看看这个包吧。

首先找到它的官网:

https://gocv.io

github: https://github.com/hybridgroup/gocv

按照官网介绍

安装gocv

在windows终端下输入

go get -u -d gocv.io/x/gocv

会安装到%GOPATH%\src下。


编译opencv

要使用gocv,需要安装编译opencv到电脑中,需要提前准备两个工具。

安装MinGW-W64

当然,如果你的电脑是32位的,无需多言,装对应的版本就好。

下载地址可以使用这个:

https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/7.3.0/.



下载完成后,记得将mingw64\bin 加入电脑的path系统变量,并重开控制台.

安装CMake

可以使用以下链接下载cmake工具,并安装到默认的目录

https://cmake.org/download/

当然安装完毕后,也需要确认cmake路径加入系统的path变量(虽然工具会自动添加)。


编译opencv

cd %GOPATH%\src\gocv.io\x\gocv
win_build_opencv.cmd

可以看看路径下的MakeFile了解下编译过程,

大概就是 下载 opencv.zip ->解压 -> 下载opencv-contrib.zip->解压->make->make install

可能出现cmake找不到编译器,自行更改即可。

编译好后,添加C:\opencv\build\install\x64\mingw\bin到环境变量。


验证opencv的版本

cd %GOPATH%\src\gocv.io\x\gocv
go run cmd\version\main.go

如果输出

gocv version: 0.26.0
opencv lib version: 4.5.1

就安装成功了。


在此过程中,我遇到了以下问题。


1.报错 libzlib.a: error adding symbols: Archive has no index; run ranlib to add one

---生成的静态库,符号不对,删掉opencv文件夹,使用正确的编译器,重新编译

2.在验证gocv版本时,输出 exit status 3221225781

---这是因为没有将opencv生成的目录加入系统变量,将C:\opencv\build\bin(你安装opencv的位置)加入path变量。再重新验证gocv版本,就ok啦。

原文链接:,转发请注明来源!