OpenCV GrabCut算法示例不起作用 我尝试用C++实现OpenCV中的GabCutt算法 我偶然发现了一个非常简单的方法。不幸的是,代码似乎不适合我 #include "opencv2/opencv.hpp" #include <iostr
OpenCV GrabCut算法示例不起作用OpenCV GrabCut算法示例不起作用 我尝试用C++实现OpenCV中的GabCutt算法 我偶然发现了一个非常简单的方法。不幸的是,代码似乎不适合我 #include "opencv2/opencv.hpp" #include <iostr,opencv,Opencv,OpenCV GrabCut算法示例不起作用 我尝试用C++实现OpenCV中的GabCutt算法 我偶然发现了一个非常简单的方法。不幸的是,代码似乎不适合我 #include "opencv2/opencv.hpp" #include <iostream> using namespace cv; using namespace std; int main( ) { // Open another image Mat image; image= cv::imre
我尝试用C++实现OpenCV中的GabCutt算法 我偶然发现了一个非常简单的方法。不幸的是,代码似乎不适合我
#include "opencv2/opencv.hpp"
#include <iostream>
using namespace cv;
using namespace std;
int main( )
{
// Open another image
Mat image;
image= cv::imread("images/mango11a.jpg");
// define bounding rectangle
cv::Rect rectangle(50,70,image.cols-150,image.rows-180);
cv::Mat result; // segmentation result (4 possible values)
cv::Mat bgModel,fgModel; // the models (internally used)
// GrabCut segmentation
cv::grabCut(image, // input image
result, // segmentation result
rectangle,// rectangle containing foreground
bgModel,fgModel, // models
1, // number of iterations
cv::GC_INIT_WITH_RECT); // use rectangle
cout << "oks pa dito" <<endl;
// Get the pixels marked as likely foreground
cv::compare(result,cv::GC_PR_FGD,result,cv::CMP_EQ);
// Generate output image
cv::Mat foreground(image.size(),CV_8UC3,cv::Scalar(255,255,255));
image.copyTo(foreground,result); // bg pixels not copied
// draw rectangle on original image
cv::rectangle(image, rectangle, cv::Scalar(255,255,255),1);
cv::namedWindow("Image");
cv::imshow("Image",image);
// display result
cv::namedWindow("Segmented Image");
cv::imshow("Segmented Image",foreground);
waitKey();
return 0;
}
#包括“opencv2/opencv.hpp”
#包括
使用名称空间cv;
使用名称空间std;
int main()
{
//打开另一个图像
Mat图像;
image=cv::imread(“images/mango11a.jpg”);
//定义边框
矩形(50,70,image.cols-150,image.rows-180);
cv::Mat result;//分段结果(4个可能值)
cv::Mat bgModel,fgModel;//模型(内部使用)
//地堑分割
cv::grabCut(图像,//输入图像
result,//分割结果
矩形,//包含前景的矩形
bgModel,fgModel,//模型
1,//迭代次数
cv::GC_INIT_WITH_RECT);//使用矩形
无法再次检查您的设置。我刚刚执行了相同的教程,效果很好。我觉得您的代码很好。您确定您的图像位于正确的文件夹中吗?您的图像是否大于150x180像素?否则,您在图像区域外定义了一个矩形。是的,我的图像是930 X 700,图像位于ri中ght文件夹导致我已经使用同一个图像很长时间了。我尝试在命令提示符下打印,在grabcut函数调用后,cout似乎没有实现。