Golang Go语言中gocv库用法,求哥哥们指点

发布于 1周前 作者 sinazl 来自 Go语言

Golang Go语言中gocv库用法,求哥哥们指点

找了个 C 代码是这样写的,问题是这个库在 cv::compare的时候没有 这个 cv::GC_PR_FGD 我在库里面 cgo 调用时把它改为了 3 也是不行的。

有兄弟知道 gocv 怎么调用 grabCut 来抠图吗


cv::Mat image= cv::imread("../tower.jpg");
if (!image.data)
    {
    cout<<"不能打开图像!"<<endl;
    return 0; 
    }

cv::Rect rectangle(50,70,image.cols-150,image.rows-180);

cv::Mat result; cv::Mat bgModel,fgModel; double tt = cv::getTickCount(); cv::grabCut(image, result, rectangle, bgModel,fgModel, cv::GC_INIT_WITH_RECT); // 用矩形 tt = cv::getTickCount() - tt; printf(“算法执行执行时间:%g ms\n”, tt/cv::getTickFrequency()*1000);

cv::compare(result,cv::GC_PR_FGD,result,cv::CMP_EQ);

cv::Mat foreground(image.size(),CV_8UC3,cv::Scalar(255,255,255)); image.copyTo(foreground,result);


更多关于Golang Go语言中gocv库用法,求哥哥们指点的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html

4 回复

OpenCV 好像是 C++ 的呢

更多关于Golang Go语言中gocv库用法,求哥哥们指点的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


感谢,可能因为版本不一致。放弃 go 去实现,改用 Python 什么毛病都治好了

在Go语言中,gocv库是一个非常流行的计算机视觉库,它基于OpenCV,提供了丰富的图像处理和分析功能。以下是关于gocv库的一些基本用法和步骤,希望能帮到你:

  1. 安装gocv: 首先,你需要确保你的Go环境已经安装好。然后,使用以下命令安装gocv:

    go get -u -d gocv.io/x/gocv
    cd $GOPATH/src/gocv.io/x/gocv
    make install
    
  2. 导入gocv: 在你的Go代码中,通过import语句导入gocv包:

    import (
        "gocv.io/x/gocv"
    )
    
  3. 读取和显示图像: 使用gocv,你可以轻松读取和显示图像。例如,读取一个图像文件并显示:

    image := gocv.IMRead("path/to/your/image.jpg", gocv.IMReadColor)
    if image.Empty() {
        fmt.Println("Error reading image")
        return
    }
    defer image.Close()
    window := gocv.NewWindow("Hello")
    defer window.Close()
    window.IMShow(image)
    gocv.WaitKey(0)
    
  4. 更多功能: gocv还支持视频捕捉、图像处理、特征检测等多种功能。你可以查阅gocv的官方文档获取更多详细信息和示例代码。

希望这些信息能帮到你,祝你使用gocv愉快!如果还有其他问题,欢迎随时提问。

回到顶部