Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/145.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在opencv中使用Houghlinep函数后如何查找坐标_C++_Opencv_Houghlinesp - Fatal编程技术网

C++ 在opencv中使用Houghlinep函数后如何查找坐标

C++ 在opencv中使用Houghlinep函数后如何查找坐标,c++,opencv,houghlinesp,C++,Opencv,Houghlinesp,大家好,我是OpenCV的新手。 我正在使用opencv删除线条,并从图像中删除坐标。 我是这样用HoughlineP的 Mat src = imread("F:/003-00.jpg", IMREAD_GRAYSCALE); Mat bw; blur(src, bw, Size(3, 3)); pyrDown(bw, bw); //threshold(bw, bw, 170, 255, THRESH_BINARY_INV); Canny(bw, bw, 100, 200, 3); Ma

大家好,我是OpenCV的新手。 我正在使用opencv删除线条,并从图像中删除坐标。 我是这样用HoughlineP的

Mat src = imread("F:/003-00.jpg", IMREAD_GRAYSCALE);

Mat bw;
blur(src, bw, Size(3, 3));
pyrDown(bw, bw);

//threshold(bw, bw, 170, 255, THRESH_BINARY_INV);
Canny(bw, bw, 100, 200, 3);


Mat color_dst = Mat::zeros(bw.size(), CV_8UC1);
vector<Vec4i> lines;

HoughLinesP(bw, lines, 1, CV_PI / 180, 400, 300, 20);
for (size_t i = 0; i < lines.size(); i++)
{

    line(color_dst, Point(lines[i][0], lines[i][1]),
        Point(lines[i][2], lines[i][3]), Scalar(255, 255, 255), 3);

}


imwrite("F:/result.jpg", color_dst);
Mat src=imread(“F:/003-00.jpg”,imread\u灰度);
Mat bw;
模糊(src,bw,大小(3,3));
吡咯烷酮(bw,bw);
//阈值(bw,bw,170,255,阈值二进制INV);
坎尼(体重,体重,100,200,3);
Mat color_dst=Mat::zeros(bw.size(),CV_8UC1);
矢量线;
HoughLinesP(体重、线条、1、CV_PI/180400300、20);
对于(size_t i=0;i
我得到了这样的结果图像

但一行实际上包含许多子行,并将其分组为一个粗体行 现在我想腐蚀,分组,通常是一条线,每一条线有两个点开始,结束

这是输入图像

U只想从实际图像中删除这些线条。你能进一步澄清一下吗?给我一个真实的图像,我会在这里解决它的。阿努巴夫·罗哈吉非常感谢你!那么,您是希望仅从图像中删除线条,还是希望线条向量?如果您在图像顶部将线条绘制为白色,而不是新的黑色图像,它将在黑色线条上绘制白色。但是带线条的黑色图像可以告诉你像素从何处移除——只需检查黑白线条图像中每个白色像素的索引即可。