Golang Go语言中gocv库用法,求哥哥们指点
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
OpenCV 好像是 C++ 的呢
更多关于Golang Go语言中gocv库用法,求哥哥们指点的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
按照 opencv 文档 https://docs.opencv.org/3.4/d2/de8/group__core__array.html#ga303cfb72acf8cbb36d884650c09a3a97 compare 的第二个参数应该是 inputArray 呢
感谢,可能因为版本不一致。放弃 go 去实现,改用 Python 什么毛病都治好了
在Go语言中,gocv库是一个非常流行的计算机视觉库,它基于OpenCV,提供了丰富的图像处理和分析功能。以下是关于gocv库的一些基本用法和步骤,希望能帮到你:
-
安装gocv: 首先,你需要确保你的Go环境已经安装好。然后,使用以下命令安装gocv:
go get -u -d gocv.io/x/gocv cd $GOPATH/src/gocv.io/x/gocv make install
-
导入gocv: 在你的Go代码中,通过
import
语句导入gocv包:import ( "gocv.io/x/gocv" )
-
读取和显示图像: 使用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)
-
更多功能: gocv还支持视频捕捉、图像处理、特征检测等多种功能。你可以查阅gocv的官方文档获取更多详细信息和示例代码。
希望这些信息能帮到你,祝你使用gocv愉快!如果还有其他问题,欢迎随时提问。