gocv,OpenCV 在windows的安装教程

gocv,OpenCV 在windows的安装教程

本文大部分是参考 go 安装opencv(gocv,windows)(根据gocv官方教程)
一小部分参照 官方安装说明地址

1.安装go

安装go语言步骤在此按下不表

2.安装OpenCV

2.1 安装gocv

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

如果无法下载或者下载速度太慢,把go下载仓库的代理更换为国内即可

2.2 安装MinGW-W64

下载地址:https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/7.3.0/
官方指定下载的软件包需要带有"posix"和"seh" x86_64-posix-seh
下载完之后,解压,然后将xxx\mingw64\bin路径加入环境变量

2.3 安装CMake

下载地址:https://cmake.org/download/
根据自己的系统下载对应的版本安装即可,我的是下载Windows x64 Installer的cmake-3.30.0-rc3-windows-x86_64.msi版本.
安装的时候,记得把添加环境变量选项,如果没有的话,手动将安装目录的bin目录即:安装目录\bin 加入环境变量即可

2.4 build_opencv

按照官方文档所写,接下来只需要执行以下两行代码即可.

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

但在这之前,还需要做些准备工作.

2.4.1 确认本地gocv地址

首先到 %GOPATH%\pkg\mod\gocv.io\x\目录下确认gocv的正确地址.
例如我的是: C:\Users\Admin\go\pkg\mod\gocv.io\x\gocv@v0.37.0
将这地址替换上面 chdir 后面的地址,即:

chdir C:\Users\Admin\go\pkg\mod\gocv.io\x\gocv@v0.37.0

2.4.2 修改win_build_opencv.cmd

首先,以编辑的方式打开win_build_opencv.cmd.
确认代码 set PATH=%PATH%;后面的地址是否与自己本地的mingw64和CMake的环境变量是否一致,如果不一样就改为一样,两个环境变量用;隔开(记得取消cmd文件的文件只读属性).

接下来的步骤,如果你的网络环境可以科学上网,那么在执行chdir语句之后,执行以下语句即可

.\win_build_opencv.cmd

2.4.3 下载opencv-x.x.x.zip和opencv_contrib-x.x.x.zip

(如果你可以科学上网,可以直接跳过这一步)
如果网络环境无法科学上网,那么需要提前下载opencv-x.x.x.zip和opencv_contrib-x.x.x.zip文件,并修改win_build_opencv.cmd.
opencv-x.x.x.zip和opencv_contrib-x.x.x.zip文件的下载地址可以看win_build_opencv.cmd.
以编辑的方式打开win_build_opencv.cmd.,找到以下代码,例如我自己的:

echo Downloading: opencv-4.10.0.zip [91MB]
powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -Uri https://github.com/opencv/opencv/archive/4.10.0.zip -OutFile c:\opencv\opencv-4.10.0.zip"
echo Extracting...
powershell -command "$ProgressPreference = 'SilentlyContinue'; Expand-Archive -Path c:\opencv\opencv-4.10.0.zip -DestinationPath c:\opencv"
del c:\opencv\opencv-4.10.0.zip /q
echo.

echo Downloading: opencv_contrib-4.10.0.zip [58MB]
powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -Uri https://github.com/opencv/opencv_contrib/archive/4.10.0.zip -OutFile c:\opencv\opencv_contrib-4.10.0.zip"
echo Extracting...
powershell -command "$ProgressPreference = 'SilentlyContinue'; Expand-Archive -Path c:\opencv\opencv_contrib-4.10.0.zip -DestinationPath c:\opencv"
del c:\opencv\opencv_contrib-4.10.0.zip /q
echo.

https://github.com/opencv/opencv/archive/4.10.0.ziphttps://github.com/opencv/opencv_contrib/archive/4.10.0.zip 就是两个文件的下载地址
手动下载这两个文件,并将这两个文件复制到c:\opencv目录下(没有该目录就手动创建).
接着将win_build_opencv.cmd中下载文件的命令注释,即在语句前面加 REM 接一个空格
修改后的代码如下:

echo Downloading: opencv-4.10.0.zip [91MB]
REM powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -Uri https://github.com/opencv/opencv/archive/4.10.0.zip -OutFile c:\opencv\opencv-4.10.0.zip"
echo Extracting...
powershell -command "$ProgressPreference = 'SilentlyContinue'; Expand-Archive -Path c:\opencv\opencv-4.10.0.zip -DestinationPath c:\opencv"
del c:\opencv\opencv-4.10.0.zip /q
echo.

echo Downloading: opencv_contrib-4.10.0.zip [58MB]
REM powershell -command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -Uri https://github.com/opencv/opencv_contrib/archive/4.10.0.zip -OutFile c:\opencv\opencv_contrib-4.10.0.zip"
echo Extracting...
powershell -command "$ProgressPreference = 'SilentlyContinue'; Expand-Archive -Path c:\opencv\opencv_contrib-4.10.0.zip -DestinationPath c:\opencv"
del c:\opencv\opencv_contrib-4.10.0.zip /q
echo.

之后切换目录,执行cmd命令即可

chdir C:\Users\Admin\go\pkg\mod\gocv.io\x\gocv@v0.37.0
.\win_build_opencv.cmd

PS:因为网络原因,无法科学上网需要等待比较长的实际,40-60分钟左右,由于编译过程中,还需要下载许多文件,所以大部分的时间是浪费在下载过程中.
可以科学上网的话,执行cmd编译过程的话,大概20-30分钟左右,大家耐心等待即可

2.4.4 添加opencv环境变量

编译完成后,将 C:\opencv\build\install\x64\mingw\bin 路径加入环境变量

3.测试

最后,新一个cmd终端,cd到 C:\Users\Admin\go\pkg\mod\gocv.io\x\gocv@v0.37.0\cmd\version
执行

go run main.go

如果看到输出为gocv和opencv的版本就表示安装成功了

C:\Users\Admin\go\pkg\mod\gocv.io\x\gocv@v0.37.0\cmd\version>go run main.go
gocv version: 0.37.0
opencv lib version: 4.10.0
1. 下载安装OpenCV 首先需要下载安装OpenCV,可以直接从官网下载最新版本的OpenCV。 下载地址:https://opencv.org/releases/ 选择合适的版本,下载后进行安装。 2. 安装gocv 安装gocv需要先安装Go语言环境,可以到官网下载最新版本的Go语言。 下载地址:https://golang.org/dl/ 安装完成后,打开命令行,输入以下命令安装gocv: ``` go get -u -d gocv.io/x/gocv cd $GOPATH/src/gocv.io/x/gocv make install ``` 3. 配置环境变量 安装完成后,需要配置环境变量,将OpenCV的路径和gocv库的路径添加到环境变量中。 打开“我的电脑”-“属性”-“高级系统设置”-“环境变量”,在“系统变量”中找到“Path”变量,在其中添加OpenCVgocv库的路径。 例如,如果OpenCV安装在“C:\opencv”目录下,gocv安装在“C:\Users\user\go\src\gocv.io\x\gocv”目录下,则需要将以下两个路径添加到环境变量中: ``` C:\opencv\build\x64\vc15\bin C:\Users\user\go\src\gocv.io\x\gocv\bin ``` 4. 测试gocv 安装完成后,可以通过编写一个简单的测试程序来测试gocv是否安装成功。 在Go语言的代码编辑器中,创建一个新的Go文件,将以下代码复制进去: ``` package main import ( "fmt" "gocv.io/x/gocv" ) func main() { fmt.Println("Starting camera...") webcam, _ := gocv.VideoCaptureDevice(0) window := gocv.NewWindow("Hello") img := gocv.NewMat() defer webcam.Close() defer window.Close() for { webcam.Read(&img) if img.Empty() { continue } window.IMShow(img) if window.WaitKey(1) >= 0 { break } } } ``` 保存后,使用命令行进入文件所在文件夹,输入以下命令运行程序: ``` go run 文件名.go ``` 如果程序能够正常运行,并且能够打开摄像头并显示图像,则说明gocv安装成功。 至此,gocv库的windows安装教程结束。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值