// ConsoleApplication1.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include<opencv2\opencv.hpp>
#include<opencv2\highgui\highgui.hpp>
using namespace cv;
using namespace std;
int main()
{
Mat img2= imread("C:\\Users\\精锐视觉\\Desktop\\图片07\\11.bmp");
Rect r1;
r1.x = 3784;
r1.y = 2465;
r1.width = 90;
r1.height = 90;
Mat d1 = Mat(img2, r1);
Mat d2;
cvtColor(d1, d2, COLOR_BGR2GRAY);
//threshold(d1, d1, 80, 255, CV_THRESH_BINARY);
vector<Vec3f> circles;
HoughCircles(d2, circles, HOUGH_GRADIENT, 1.5,10,200,100,0,0);
for (size_t i = 0; i < circles.size(); i++)
{
Point center(cvRound(circles[i][0]), cvRound(circles[i][1]));
int radius = cvRound(circles[i][2]);
//绘制圆心
circle(d1, center, 3, Scalar(0, 0, 255), -1, 8, 0);
//绘制圆的轮廓
circle(d1, center, radius, Scalar(0, 0, 255), 3, 8, 0);
}
imshow("匹配后的图片", d1);
cvWaitKey(0);
return 0;
}
opencv霍夫找圆
最新推荐文章于 2024-07-14 20:55:07 发布