opencv绘制矩形和圆的实现

目录
  • 绘制图形
  • 绘制矩形
  • 绘制圆

绘制图形

利用opencv提供的绘制图形api可以轻松在图像上绘制各种图形,比如直线,矩形,圆,椭圆等图形。

line(img,pt1,pt2,color,thickness,lineType,shift)画直线

  • img:在那个图像上画线
  • pt1,pt2:开始点,结束点,指定先的开始与结束的位置
  • color:颜色
  • thickness:线宽
  • lineType:线型,线型为-1,4,8,16,默认为8
  • shift:坐标缩放比例

rectangle()参数同上,画矩形

circle(img,center,radius,color[,thickness[,lineType[,shift]]])中括号内参数表示可选参数,画圆

ellipse(img,中心点,长宽的一半,角度,从哪个角度开始,从哪个角度结束,... )

绘制矩形

cv2.rectangle(img,(80,100),(380,380),(0,255,0),5)

完整学习代码

import cv2
import numpy as np

img = np.zeros((480,640,3),np.uint8)
cv2.rectangle(img,(80,100),(380,380),(0,255,0),5)

cv2.imshow('draw',img)

cv2.waitKey(0)
cv2.destroyAllWindows()

效果展示

绘制圆

cv2.circle(img,(320,240),50,(0,0,255))

完整学习代码

import cv2
import numpy as np

img = np.zeros((480,640,3),np.uint8)

cv2.circle(img,(320,240),50,(0,0,255))
cv2.imshow('draw',img)

cv2.waitKey(0)
cv2.destroyAllWindows()

效果展示

到此这篇关于opencv绘制矩形和圆的实现的文章就介绍到这了,更多相关opencv绘制矩形和圆内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 使用c++实现OpenCV绘制圆端矩形

    功能函数 // 绘制圆端矩形(药丸状,pill) void DrawPill(cv::Mat mask, const cv::RotatedRect &rotatedrect, const cv::Scalar &color, int thickness, int lineType) { cv::Mat canvas = cv::Mat::zeros(mask.size(), CV_8UC1); // 确定短边,短边绘制圆形 cv::RotatedRect rect = rotatedre

  • Opencv实现最小外接矩形和圆

    本文实例为大家分享了Opencv实现最小外接矩形和圆的具体代码,供大家参考,具体内容如下 步骤:将一幅图像先转灰度,再canny边缘检测得到二值化边缘图像,再寻找轮廓,轮廓是由一系列点构成的,要想获得轮廓的最小外接矩形,首先需要得到轮廓的近似多边形,用道格拉斯-普克抽稀(DP)算法,道格拉斯-普克抽稀算法,是将曲线近似表示为一系列点,并减少点的数量的一种算法. 该算法实现抽稀的过程是: 1)对曲线的首末点虚连一条直线,求曲线上所有点与直线的距离,并找出最大距离值dmax,用dmax与事先给定的阈

  • Opencv绘制最小外接矩形、最小外接圆

    Opencv中求点集的最小外结矩使用方法minAreaRect,求点集的最小外接圆使用方法minEnclosingCircle. minAreaRect方法原型: RotatedRect minAreaRect( InputArray points ); 输入参数points是所要求最小外结矩的点集数组或向量: minEnclosingCircle方法原型: void minEnclosingCircle( InputArray points, CV_OUT Point2f& center, C

  • OpenCV 圆与矩形识别的方法

    最近一个项目用到了图像识别,之前从未接触过OpenCV,经过各种找教程,终于是搞懂了一些. 整个具体流程大概是获取图像-->图像二值化,灰度图(cvtColor)-->图像降噪(GaussianBlur)->轮廓识别(cvFindContours)-->形状判断. 大多数教程很专业,各种参数分析看不懂,经过各种搜索终于是搞懂了. 识别圆 在识别圆方面,OpenCV有内置的方法:霍夫圆变化: HoughCircles(edges, circles, CV_HOUGH_GRADIENT

  • OpenCV绘制圆角矩形的方法实例

    功能函数 // 绘制圆角矩形 void DrawRotatedRectChamfer(cv::Mat mask,const cv::RotatedRect rotatedrect, float radius,const cv::Scalar &color, int thickness, int lineType) { // 创建画布 cv::Mat canvas = cv::Mat::zeros(mask.size(), CV_8UC1); cv::RotatedRect newrotatedr

  • python opencv常用图形绘制方法(线段、矩形、圆形、椭圆、文本)

    最近学了下 python opencv,分享下使用 opencv 在图片上绘制常用图形的方法. 案例中实现了在图片中添加线段.圆形.矩形.椭圆形以及添加文字的方法,使用 opencv2 实现的. 实现方法 1)画线段 cv.line 在图片中绘制一段直线 # 绘制线段 # 参数1:图片 # 参数2:起点 # 参数3:终点 # 参数4:BGR颜色 # 参数5:宽度 cv2.line(img, (60, 40), (90, 90), (255, 255, 255), 2); 参数说明 参数 值 说明

  • OpenCV 轮廓周围绘制矩形框和圆形框的方法

    轮廓周围绘制介绍 没什么概念,就是给得出来的轮廓绘制周围图形,例如下图给左侧得出的轮廓去绘图得到右侧图像: 相关API 减少多边形轮廓点数:approxPolyDP 函数作用:基于RDP算法实现,目的是减少多边形轮廓点数 函数原型: //减少多边形轮廓点数 approxPolyDP( InputArray curve, // 一般是由图像的轮廓点组成的点集 Mat(vector) OutputArray approxCurve, // 表示输出的多边形点集 double epsilon, //

  • opencv绘制矩形和圆的实现

    目录 绘制图形 绘制矩形 绘制圆 绘制图形 利用opencv提供的绘制图形api可以轻松在图像上绘制各种图形,比如直线,矩形,圆,椭圆等图形. line(img,pt1,pt2,color,thickness,lineType,shift)画直线 img:在那个图像上画线 pt1,pt2:开始点,结束点,指定先的开始与结束的位置 color:颜色 thickness:线宽 lineType:线型,线型为-1,4,8,16,默认为8 shift:坐标缩放比例 rectangle()参数同上,画矩形

  • OpenCV绘制圆端矩形的示例代码

    目录 功能函数 测试代码 测试效果 本文主要介绍了OpenCV绘制圆端矩形的示例代码,分享给大家,具体如下: 功能函数 // 绘制圆端矩形(药丸状,pill) void DrawPill(cv::Mat mask, const cv::RotatedRect &rotatedrect, const cv::Scalar &color, int thickness, int lineType) { cv::Mat canvas = cv::Mat::zeros(mask.size(), CV

  • OpenCV鼠标绘制矩形和截取矩形区域图像

    本文实例为大家分享了OpenCV鼠标绘制截取矩形区域图像的具体代码,供大家参考,具体内容如下 在opencv中利用鼠标绘制矩形,代码如下: #include <cv.h> #include <highgui.h> #include <stdio.h> #pragma comment( lib, "cv.lib" ) #pragma comment( lib, "cxcore.lib" ) #pragma comment( lib,

  • 使用c++实现OpenCV绘制图形旋转矩形

    目录 功能函数 // 绘制旋转矩形 void DrawRotatedRect(cv::Mat mask,const cv::RotatedRect &rotatedrect,const cv::Scalar &color,int thickness, int lineType) { // 提取旋转矩形的四个角点 cv::Point2f ps[4]; rotatedrect.points(ps); // 构建轮廓线 std::vector<std::vector<cv::Poin

  • OpenCV轮廓检测之boundingRect绘制矩形边框

    目录 函数原型 参数说明 测试代码 测试效果 补充 函数原型 cv::Rect boundingRect( InputArray array ); 参数说明 输入:InputArray类型的array,输入灰度图像或二维点集. 输出:Rect类型的矩形信息,包括矩形尺寸和位置. 测试代码 #include <iostream> #include <time.h> #include <opencv2/opencv.hpp> using namespace std; usi

随机推荐