gocv | Go package for computer vision using OpenCV | Computer Vision library

 by   hybridgroup Go Version: v0.33.0 License: Non-SPDX

kandi X-RAY | gocv Summary

kandi X-RAY | gocv Summary

gocv is a Go library typically used in Artificial Intelligence, Computer Vision, OpenCV applications. gocv has no bugs, it has no vulnerabilities and it has medium support. However gocv has a Non-SPDX License. You can download it from GitHub.

The GoCV package provides Go language bindings for the OpenCV 4 computer vision library. The GoCV package supports the latest releases of Go and OpenCV (v4.5.4) 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 for hardware acceleration using Nvidia GPUs. Check out the CUDA README for more info on how to use GoCV with OpenCV/CUDA. GoCV also supports Intel OpenVINO. Check out the OpenVINO README for more info on how to use GoCV with the Intel OpenVINO toolkit.

            kandi-support Support

              gocv has a medium active ecosystem.
              It has 5549 star(s) with 793 fork(s). There are 147 watchers for this library.
              There were 1 major release(s) in the last 12 months.
              There are 251 open issues and 418 have been closed. On average issues are closed in 130 days. There are 19 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of gocv is v0.33.0

            kandi-Quality Quality

              gocv has 0 bugs and 0 code smells.

            kandi-Security Security

              gocv has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              gocv code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              gocv has a Non-SPDX License.
              Non-SPDX licenses can be open source with a non SPDX compliant license, or non open source licenses, and you need to review them closely before use.

            kandi-Reuse Reuse

              gocv releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.
              It has 51416 lines of code, 1422 functions and 121 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of gocv
            Get all kandi verified functions for this library.

            gocv Key Features

            No Key Features are available at this moment for gocv.

            gocv Examples and Code Snippets

            No Code Snippets are available at this moment for gocv.

            Community Discussions


            Yellow Small Circle Detection Using GoCV
            Asked 2022-Apr-02 at 01:41

            I'm trying to detect circle with checkmark with variety of colours. What I want to detect is yellow with white checkmark, and in the future red circle with x mark.

            What I've been trying so far are these codes below. This one using Hough Circles method.



            Answered 2022-Apr-02 at 01:41

            So what I did was I installing another library that's called gcv by vcaesar. There was a method called FindAllImg and what I need just provide two image, one is the source image, in my case a screenshot, and the other is a template image that needed to be searched in the screenshot.

            Source https://stackoverflow.com/questions/71631287


            memory consumption at encoding base64
            Asked 2022-Jan-27 at 11:55

            I have problems with memory consumption at my software using golangs lib encoding/base64

            My software is splitting a videofile to separate images, (gocv mat) converting them to base64 string and saving it to file in json format.

            During testing I found that the memory usage is piling up until the oom-reaper is killing the process.

            Investigation with pprof showed that the encoding/base64 memory seems to pile up.

            I did pprof snapshots after each image frame, and allocated mem of encoding/base64 is raising from 976.89kB(flat) to 4633.54kB(flat) shortly before oom-reaper was killing the process.



            Answered 2022-Jan-26 at 13:47

            To answer your questions:

            How can I release the memory of "encodedString" in this case that it does not pile up?

            You cannot and you need not. Unused memory is "freed".

            Or is it maybe not my wrong coding, and the mem-leak is at the lib base64 ?

            No, package encoding/base64 has no memory leak. (Chances are 0 that you detect a memory leak in a trivial function in the standard library of a garbage collected language.)

            To guide you towards a solution:

            Your application uses absurd amount of memory but that's because a) processing video and images is memory hungry and b) you seem to do nothing to keep memory low: E.g. you encode the whole image into a bytes.Buffer, then encode the whole bytes.Buffer to a string then work on that string and so on. You probably should encode the image into a stream, encode this stream to base64 and stream this output further to where it deposited. This is totally painless in Go as all these encoders work on io.Writers which can be chained very easily.

            Source https://stackoverflow.com/questions/70863870


            How to stream video capture to web
            Asked 2020-Aug-22 at 13:02

            I've the below code that read the cam and display it in GUI window, I want to push the same thing to my server at url localhost:8080/cam, how can I do this?



            Answered 2020-Aug-22 at 13:02

            I found the solution with this package, a fork of this

            Source https://stackoverflow.com/questions/63535380


            Installing MinGW-W64
            Asked 2020-Mar-07 at 09:36

            In the installation instructions for Windows at GoCV we've the below line:



            Answered 2020-Mar-07 at 09:36

            The installation of MinGW-w64 is simple. Either download the installer from


            or the appropriate package (as a 7-zip archive) directly:


            Some people (including me) experienced random connection problems with the installer at some point, so the second options might be more straightforward.

            Source https://stackoverflow.com/questions/60572548

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network


            No vulnerabilities reported

            Install gocv

            To install GoCV, you must first have the matching version of OpenCV installed on your system. The current release of GoCV requires OpenCV 4.5.4. Here are instructions for Ubuntu, Raspian, macOS, and Windows.
            You can use make to install OpenCV 4.5.4 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.
            To verify your installation you can run one of the included examples.
            We have a special installation for the Raspberry Pi that includes some hardware optimizations. You use make to install OpenCV 4.5.4 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 install OpenCV 4.5.4 using Homebrew.
            pkg-config is used to determine the correct flags for compiling and linking OpenCV. You can install it by using Homebrew:.
            To verify your installation you can run one of the included examples.
            The following assumes that you are running a 64-bit version of Windows 10. In order to build and install OpenCV 4.5.4 on Windows, you must first download and install MinGW-W64 and CMake, as follows. Download and run the MinGW-W64 compiler installer from https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/7.3.0/. The latest version of the MinGW-W64 toolchain is 7.3.0, but any version from 7.X on should work. Choose the options for "posix" threads, and for "seh" exceptions handling, then install to the default location c:\Program Files\mingw-w64\x86_64-7.3.0-posix-seh-rt_v5-rev2. Add the C:\Program Files\mingw-w64\x86_64-7.3.0-posix-seh-rt_v5-rev2\mingw64\bin path to your System Path. Download and install CMake https://cmake.org/download/ to the default location. CMake installer will add CMake to your system path.
            Change the current directory to the location of the GoCV repo:.


            Please take a look at our CONTRIBUTING.md document to understand our contribution guidelines. Then check out our ROADMAP.md document to know what to work on next.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
          • HTTPS


          • CLI

            gh repo clone hybridgroup/gocv

          • sshUrl


          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Consider Popular Computer Vision Libraries


            by opencv


            by tesseract-ocr


            by ageitgey


            by naptha


            by facebookresearch

            Try Top Libraries by hybridgroup


            by hybridgroupGo


            by hybridgroupJavaScript


            by hybridgroupRuby


            by hybridgroupRuby


            by hybridgroupGo