当前位置: 首页 > news >正文

辽阳哪里做网站/全网优化推广

辽阳哪里做网站,全网优化推广,安徽教育云平台网站建设,类似猪八戒的网站建设我們用和霍夫直線偵測同樣的概念,進行霍夫圓形偵測,圓方程式為(x-a)2 (y-b)2 r2,其中(a,b)為圓心座標,r為圓的半徑,用這個三維數據組,讓(a,b)在影像座標內不斷改變位置&#xff0c…

我們用和霍夫直線偵測同樣的概念,進行霍夫圓形偵測,圓方程式為(x-a)2 + (y-b)2 = r2,其中(a,b)為圓心座標,r為圓的半徑,用這個三維數據組,讓(a,b)在影像座標內不斷改變位置,找出所有可能的半徑r,最後當這三維數據組的點數,超過我們定的閾值時就判斷為圓。


因為傳統的霍夫圓偵測是三維空間上的計數,基於效率上的考量,而且維度變多,精確定位局部峰值變得困難,OpenCV的霍夫圓偵測使用以下兩個步驟:

  1. 圓周上點的梯度指向圓心位置,對於每個點,只有沿著梯度方向才增加計數,而範圍為預定的半徑最大與最小值,超過閾值即判斷此點為圓心。
  2. 對圓心和點的距離進行計數,最大值就是此圓的半徑。

OpenCV 偵測圓

void HoughCircles(InputArray image, OutputArray circles, int method, double dp, double minDist, double param1=100, doubleparam2=100, int minRadius=0, int maxRadius=0)

  • image:輸入圖,8位元單通道圖。
  • circles:以vector< Vec3f >記錄所有圓的資訊,每個Vec3f紀錄一個圓的資訊,包含3個浮點數資料,分別表示x、y、radius。
  • method:偵測圓的方法,目前只能使用CV_HOUGH_GRADIENT。
  • dp:偵測解析度倒數比例,假設dp=1,偵測圖和輸入圖尺寸相同,假設dp=2,偵測圖長和寬皆為輸入圖的一半。
  • minDist:圓彼此間的最短距離,太小的話可能會把鄰近的幾個圓視為一個,太大的話可能會錯過某些圓。
  • param1:圓偵測內部會呼叫Canny()尋找邊界,param1就是Canny()的高閾值,低閾值自動設為此值的一半。
  • param2:計數閾值,超過此值的圓才會存入circles。
  • minRadius:最小的圓半徑。
  • maxRadius:最大的圓半徑。

以下我們示範如何HoughCircles()找影像中的圓,並用自行撰寫的drawCircle()將找到的圓畫出:

#include <cstdio>
#include <opencv2/opencv.hpp>
using namespace cv;void calcCircles(const Mat &input, vector<Vec3f> &circles);
void drawCircle(Mat &input, const vector<Vec3f> &circles);int main(){Mat img = imread("input.jpg",CV_LOAD_IMAGE_GRAYSCALE);Mat result = imread("input.jpg",CV_LOAD_IMAGE_COLOR);vector<Vec3f> circles;calcCircles(img, circles);drawCircle(result, circles);namedWindow("Display window1", WINDOW_AUTOSIZE);namedWindow("Display window2", WINDOW_AUTOSIZE);imshow("Display window1", img);  imshow("Display window2", result);waitKey(0);  return 0;
}void calcCircles(const Mat &input, vector<Vec3f> &circles){Mat contours;Canny(input,contours,50,150);HoughCircles(contours, circles, CV_HOUGH_GRADIENT, 2, 50, 200, 100);
}void drawCircle(Mat &input, const vector<Vec3f> &circles){for(int i=0; i<circles.size(); i++){Point center(cvRound(circles[i][0]), cvRound(circles[i][1]));int radius = cvRound(circles[i][2]);circle(input, center, radius, Scalar(255,0,0), 3, 8, 0 );}
}

HoughCircles

HoughCircles


转自:http://monkeycoding.com/?p=654


http://www.jmfq.cn/news/4782511.html

相关文章:

  • 自己怎么做返利网站吗/代写文章接单平台
  • wordpress post page/北京seo网站优化培训
  • 做网站的实验总结/南京百度提升优化
  • cms内容管理系统是什么/兰州seo关键词优化
  • 网站开发过滤器作用/上海百度推广排名
  • 平台网站建设制作/高级搜索百度
  • 百度问一问付费咨询/太原seo团队
  • 响应式手机网站怎么做/在百度上怎么发布信息
  • 网站添加漂浮二维码怎么做/搜索词
  • 怎么做室内设计公司网站/sem竞价培训班
  • 厦门网站关键词推广/小程序设计
  • 青岛的建筑公司/seo排名怎么样
  • 自己做网站需要学些什么/口碑营销的定义
  • 图片网站怎么做排名/站长工具网站排名
  • 网站制作难吗/百度点击快速排名
  • 可以做分销的淘客网站/成都百度推广账户优化
  • 大足网站设计/北京seo外包公司要靠谱的
  • 天津高端模板建站/免费的api接口网站
  • 福州专业做网站公司/sem优化托管
  • 西安网站制作西安搜推宝/抖音推广
  • c#网站开发技术/营销推广内容
  • c 做网站加载多个图片/seo搜索引擎优化是什么意思
  • 宝安响应式网站建设/电脑系统优化软件排行榜
  • 贸易网站开发/google关键词挖掘工具
  • 做宾馆网站/推广普通话手抄报内容资料
  • 网站建设服务报价/sem是什么电镜
  • 遂平县网站建设/青岛做网站的公司哪家好
  • 上市公司网站建设报价/app拉新项目
  • 网站建设费怎么写会计科目/百度站长平台账号购买
  • 做网站一个月赚多少/宁波seo外包优化公司