使用 Go (Golang) 使用 OpenCV 绘制对象 GoCV

本文详细介绍了如何使用Go语言和GoCV库进行OpenCV编程,涵盖了从安装OpenCV到创建画布、定义颜色、画线、绘制正方形、圆形和椭圆形的步骤。GoCV使得在Go中利用OpenCV的功能变得简单,适用于图像处理和计算机视觉应用。
摘要由CSDN通过智能技术生成

本文将向你展示如何使用 OpenCV 使用 Go 编程语言 (Golang) 和 GoCV 包绘制直线、正方形、圆形和椭圆形对象。

58060c21713860f4221a86b0948293ec.png

OpenCV是一个主要用于实时计算机视觉的编程函数库。最初由 Intel 开发,然后由 Willow Garage 和 Itseez 提供支持。这个库是跨平台的,可以在开源 Apache 2 许可下免费使用。

除了绘制物体,OpenCV还可以用于人脸检测、运动跟踪等。

GoCV 是Golang语言的一个包,支持 Linux、macOS 和 Windows 上最新版本的 Go 和 OpenCV v4.5.4。GoCV 使 Go 语言成为兼容 OpenCV 生态系统最新发展的“一流”客户端。

GoCV 让 golang 程序员可以访问 OpenCV4 计算机视觉库。

要求

  1. 安装 Golang(确保目标操作系统与你的计算机匹配)

  2. 安装 OpenCV

安装 OpenCV

有关安装 OpenCV 的指南,你可以打开 GoCV 网站上的文档,网址为:https://gocv.io/

  1. macOS 安装:https://gocv.io/getting-started/macos/

  2. 在 Linux 上安装:https://gocv.io/getting-started/linux/

  3. Windows 安装程序:https://gocv.io/getting-started/windows/

或者你可以在此处(https://opencv.org/)访问官方网站。我们使用 MacOs 操作系统。

创建项目

首先,让我们使用以下命令创建一个新项目:

mkdir belajar-gocv
cd belajar-gocv

然后使用以下命令创建一个模块:

go mod init belajar-gocv

使用另一个 IDE 或编辑器打开项目,例如 VSCode。在根目录中创建一个名为main.go的文件,接下来我们将创建一个绘制对象的函数。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
GoCV是一个支持Linux、macOS和Windows上最新版本的Go和OpenCVGolang包。它使得Go语言能够与最新的OpenCV生态系统兼容,并成为一个一流的客户端。你可以使用GoCV来进行图像处理和计算机视觉的开发,例如显示图片和视频。你可以使用gocv.IMRead函数来读取图片,并使用gocv.IMShow在窗口中显示图片。相应的代码示例如下: ``` package main import ( "fmt" "gocv.io/x/gocv" ) func main() { fmt.Printf("gocv version: %s\n", gocv.Version()) fmt.Printf("opencv lib version: %s\n", gocv.OpenCVVersion()) window := gocv.NewWindow("Hello") img := gocv.IMRead("lena.jpg", gocv.IMReadColor) if img.Empty() { fmt.Printf("Error reading image from: %v\n", "lena.jpg") return } for { window.IMShow(img) if window.WaitKey(1) >= 0 { break } } } ``` 对于显示视频,你可以使用gocv.VideoCaptureDevice函数来打开视频捕获设备,然后使用gocv.VideoCapture的Read方法读取每一帧图像并显示。相应的代码示例如下: ``` package main import ( "fmt" "gocv.io/x/gocv" ) func main() { fmt.Printf("gocv version: %s\n", gocv.Version()) fmt.Printf("opencv lib version: %s\n", gocv.OpenCVVersion()) webcam, err := gocv.VideoCaptureDevice(0) if err != nil { fmt.Printf("Error opening video capture device: %v\n", 0) return } defer webcam.Close() window := gocv.NewWindow("Capture Window") defer window.Close() img := gocv.NewMat() defer img.Close() for { if ok := webcam.Read(&img); !ok { fmt.Printf("Device closed: %v\n", 0) return } if img.Empty() { continue } window.IMShow(img) if window.WaitKey(1) == 27 { break } } } ``` 以上代码示例可以帮助你在Golang使用OpenCV进行图像和视频的处理。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [gocv-go语言调用opencv入门](https://blog.csdn.net/xinlinhack/article/details/119713374)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [使用 Go (Golang) 使用 OpenCV 绘制对象 GoCV](https://blog.csdn.net/woshicver/article/details/128783734)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值