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

超酷个人网站宁德网站开发公司

超酷个人网站,宁德网站开发公司,网页设计作业怎么保存,聊城广告设计公司opencv 之 外接多边形#xff08;矩形、圆、三角形、椭圆、多边形#xff09;使用详解 本文主要讲述opencv中的外接多边形的使用#xff1a; 多边形近似外接矩形、最小外接矩形最小外接圆外接三角形椭圆拟合凸包 将重点讲述最小外接矩形的使用 1. API介绍 #多边形近似 v…opencv 之 外接多边形矩形、圆、三角形、椭圆、多边形使用详解 本文主要讲述opencv中的外接多边形的使用 多边形近似外接矩形、最小外接矩形最小外接圆外接三角形椭圆拟合凸包 将重点讲述最小外接矩形的使用 1. API介绍 #多边形近似 void cv::approxPolyDP(InputArray curve,OutputArray approxCurve,double epsilon,bool closed ) Python: cv.approxPolyDP(curve, epsilon, closed[, approxCurve] ) - approxCurve#计算点到多边形的距离或者判断是否在多边形内部 double cv::pointPolygonTest (InputArray contour,Point2f pt,bool measureDist ) Python: cv.pointPolygonTest(contour, pt, measureDist) - retval#外接矩形 Rect cv::boundingRect(InputArray array) Python: cv.boundingRect(array) - retval#最小外接矩形 RotatedRect cv::minAreaRect (InputArray points) Python: cv.minAreaRect( points) - retval#求矩形交集 int cv::rotatedRectangleIntersection(const RotatedRect rect1,const RotatedRect rect2,OutputArray intersectingRegion ) Python: cv.rotatedRectangleIntersection(rect1, rect2[, intersectingRegion] ) - retval, intersectingRegion#最小外接圆 void cv::minEnclosingCircle (InputArray points,Point2f center,float radius ) Python: cv.minEnclosingCircle(points) - center, radius#最小外接三角形 double cv::minEnclosingTriangle (InputArray points,OutputArray triangle) Python: cv.minEnclosingTriangle(points[, triangle] ) - retval, triangle#椭圆拟合 void cv::ellipse(InputOutputArray img,Point center,Size axes,double angle,double startAngle,double endAngle,const Scalar color,int thickness 1,int lineType LINE_8,int shift 0 ) Python: cv.ellipse( img, center, axes, angle, startAngle, endAngle, color[, thickness[, lineType[, shift]]] ) - img cv.ellipse( img, box, color[, thickness[, lineType]] ) - img2. 例程 给一个opencv官方的例程 #include opencv2/highgui.hpp #include opencv2/imgproc.hpp #include iostream using namespace cv; using namespace std; static void help() {cout This program demonstrates finding the minimum enclosing box, triangle or circle of a set\n of points using functions: minAreaRect() minEnclosingTriangle() minEnclosingCircle().\n Random points are generated and then enclosed.\n\n Press ESC, q or Q to exit and any other key to regenerate the set of points.\n\n; } int main(int /*argc*/, char** /*argv*/) {help();Mat img(500, 500, CV_8UC3, Scalar::all(0));RNG rng theRNG();for (;;){int i, count rng.uniform(1, 101);vectorPoint points;// Generate a random set of pointsfor (i 0; i count; i){Point pt;pt.x rng.uniform(img.cols / 4, img.cols * 3 / 4);pt.y rng.uniform(img.rows / 4, img.rows * 3 / 4);points.push_back(pt);}// Find the minimum area enclosing bounding boxPoint2f vtx[4];RotatedRect box minAreaRect(points);box.points(vtx);// Find the minimum area enclosing trianglevectorPoint2f triangle;minEnclosingTriangle(points, triangle);// Find the minimum area enclosing circlePoint2f center;float radius 0;minEnclosingCircle(points, center, radius);img Scalar::all(0);// Draw the pointsfor (i 0; i count; i)circle(img, points[i], 3, Scalar(0, 0, 255), FILLED, LINE_AA);// Draw the bounding boxfor (i 0; i 4; i)line(img, vtx[i], vtx[(i 1) % 4], Scalar(0, 255, 0), 1, LINE_AA);//绘制外接矩形rectangle(img, box.boundingRect(), cv::Scalar(10, 100, 20), 2);//也可以/*cv::Rect _rect boundingRect(points);rectangle(img, _rect, cv::Scalar(10, 100, 20), 2);*/// Draw the trianglefor (i 0; i 3; i)line(img, triangle[i], triangle[(i 1) % 3], Scalar(255, 255, 0), 1, LINE_AA);// Draw the circlecircle(img, center, cvRound(radius), Scalar(0, 255, 255), 1, LINE_AA);imshow(Rectangle, triangle circle, img);char key (char)waitKey();if (key 27 || key q || key Q) // ESCbreak;}return 0; }过程图像如下 椭圆拟合一般用于轮廓提取之后 //获取拟合椭圆的外包围矩形 cv::RotatedRect rotate_rect cv::fitEllipse(points); //绘制拟合椭圆 cv::ellipse(image, rotate_rect, cv::Scalar(0, 255, 255), 2, 8); 凸包绘制 vectorPoint hull;convexHull(points, hull, true);img Scalar::all(0);for( i 0; i count; i )circle(img, points[i], 3, Scalar(0, 0, 255), FILLED, LINE_AA);polylines(img, hull, true, Scalar(0, 255, 0), 1, LINE_AA);imshow(hull, img);#多边形填充绘制polylines(img, hull, true, Scalar(0, 255, 0), -1, LINE_AA);计算两个旋转矩形交集 vectorPoint2f intersectingRegion; rotatedRectangleIntersection(rect1, rect2, intersectingRegion);3. 关于最小外接矩形 C版的最小外接矩形使用 RotatedRect rect minAreaRect(points); float angle rect. box.points(vtx);其接口返回值可读取如下其中其角度指的是width与物理坐标系y轴正方向逆时针所成的夹角 赋值时也可以读出如下数据中心、角度、尺寸大小、外接矩形 画图详解一下吧 想要看真实的效果图的话可以参考biubiubiu~ 它也可以用于 python版本的最小外接矩形 _rect cv2.minAreaRect(conts_new[i])(x, y), (w, h), ang _rectbox cv2.boxPoints(_rect)# 标准化坐标到整数box np.int32(box)cv2.drawContours(mask_c3, [box], 0, (int(bgr[0]), int(bgr[1]), int(bgr[2])),2)还有一些想法后边再补充吧
http://wiki.neutronadmin.com/news/246769/

相关文章:

  • 上海定制网站建设如何做网站推广在找产品营销推广吗
  • 智联招聘网站怎么做微招聘信息东莞国药官网网上商城
  • 有哪些网站是可以做免费推广的页面布局标准格式
  • 有谁想做网站 优帮云做宠物商品的网站
  • 建设网站需要备案么小程序模板消息推送
  • 易语言跳到指定网站怎么做江西建设单位网站
  • 中英文网站开发费用最后的目的是什么
  • 网站生成静态重庆制片公司
  • 免费行情网站app下载大全层流病房建设单位网站
  • 网站排名优化外包微博个人网页设计模板
  • 微信商城和微网站建站哪家好 discuz
  • 广东网站备案进度查询成全视频在线看
  • 福田网站制作比较好的在网站图片源代码alt写入关键词后为什么不显示只显示title内容
  • 礼泉住房和城乡建设局网站科技公司网站首页
  • 专门做库存的网站广扬建设集团网站
  • wordpress表单提交的邮箱网站优化师负责干什么
  • 网站建设煊煊网安阳建设局网站
  • 网站怎么做才能赚钱微信公众帐号平台官网
  • 网站开发外包费用的会计分录阿里云网站域名证书
  • 网站功能需求说明做网页赚钱
  • 互联网app开发app优化建议
  • 做一网站要什么广州从化网站制作公司
  • 网站首页动画怎么做的没有域名怎么搭建网站
  • 相亲网站的女人 做直播的生活中实用的产品设计
  • 微网站怎么制作西安网站的设计说明
  • 唯尚广告联盟平台seo诊断报告怎么写
  • 做网站在哪里做比较好网站开发信息发布
  • 上海企业建站网站的意义做网站主页图片一般多少m
  • 网站开辟两学一做专栏做网站导航一般字号是多少
  • 中国建设培训网站查询系统青岛的seo服务公司