• 大小: 979B
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-24
  • 语言: 其他
  • 标签: opencv  hough变换  

资源简介

cvHoughCircle用于检测单个圆的效果较好,当检测到同心圆时,效果欠佳。本程序做了一些改进,使得同心圆检测效果较好

资源截图

代码片段和文件信息

#include   
#include   
#include 
using namespace cv;  
using namespace std;//注意!!
int main( )  
{  
    Mat srcImage = imread(“part.png“);  
imshow(“【原始图】“ srcImage);
int rows=srcImage.rowscols=srcImage.cols;

Mat grayImagebinaryImage;
cvtColor(srcImagegrayImage CV_BGR2GRAY);
threshold(grayImagebinaryImage200255THRESH_BINARY);

Mat tempoutImage;
binaryImage.copyTo(temp);
binaryImage.copyTo(outImage);

//Temp是一张全白的图像
for(int i=0;i for(int j=0;j temp.at(ij)=0;

temp.copyTo(outImage);

    cvtColor(srcImagegrayImage CV_BGR2GRAY);
threshold(grayImagebinaryImage200255THRESH_BINARY);
imshow(“【二值图像】“binaryImage);
Canny(binaryImagebinaryImage1002003);
imshow(“【边缘图像】“binaryImage);

    //【4】进行霍夫圆变换  
    vector circles0;
vector circles1;
HoughCircles(binaryImage circles0 CV_HOUGH_GRADIENT3 10 200 250 10 200 ); 
HoughCircles(binaryImage circles1 CV_HOUGH_GRADIENT2.9 300 200 120 10 100 ); 
  
    //【5】依次在图中绘制出圆  
    for( size_t i = 0; i < circles1.size(); i++ )  
    {  
        Point center(cvRound(circles1[i][0]) cvRound(circles1[i][1]));  
        int radius = cvRound(circles1[i][2]);   
        circle( temp center radius Scalar(255255255) 0.5 8 0 );  
    }  
for( size_t i = 0; i < circles0.size(); i++ )  
{  
Point center(cvRound(circles0[i][0]) cvRound(circles0[i][1]));  
int radius = cvRound(circles0[i][2]);   
circle( temp center radius Scalar(255255255) 0.5 8 0 );  
}  
threshold(temptemp200255THRESH_BINARY);
imshow(“【初次检测图】“ temp);

//将得到的二值图像和原图产生的二值图像相与,取出相应的圆
for(int i=0;i for(int j=0;j {
if((binaryImage.at(ij)==255) && (temp.at(ij)==255))
outImage.at(ij)=255;
else 
outImage.at(ij)=0;
}
imshow(“【二次检测图】“outImage);
    waitKey(0);  
    return 0;    
}  

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2155  2015-03-31 21:21  hough_circle.cpp

----------- ---------  ---------- -----  ----

                 2155                    1


评论

共有 条评论