使用OpenCV-Python 的画图函数画图。

本次的图形函数有: cv2.line(), cv2.circle(), cv2.rectangle(), cv2.ellipse(), cv2.putText().

以上函数都包含以下参数:

img: 你需要画图形的图片

color: 图形的颜色, 对于BGR, 使用tuple, 如蓝色是(255,0,0)。对于灰度图,只需要传入数值。

thinkness: 线或者圆的厚度。默认为1。-1一般使用在封闭的图形中。

lineType: 线的类型。

Code:

import numpy as np
import cv2 # create a black image
img = np.zeros((512, 512, 3), np.uint8) #uint8表示无符号整数类型(0到255),一般会将图片转换成该格式的数组 # Draw a diagonal blue line with thickness of 5 px
img = cv2.line(img, (0, 0), (511, 511), (255, 0, 0), 5) # Draw a green rectangle with thickness of 3
img = cv2.rectangle(img, (384, 0), (510, 128), (0, 255, 0), 3) # Draw a red circle
img = cv2.circle(img, (477, 63), 63, (0, 0, 255), -1) # Draw a blue ellipse
img = cv2.ellipse(img, (256, 256), (100, 50), 0, 0, 360, 360, -1) # Draw polygon
pts = np.array([[10, 5], [20, 30], [70, 20], [50, 10]], np.int32)
pts = pts.reshape((-1, 1, 2))
img = cv2.polylines(img, [pts], True, (0, 255, 255)) # Add white text to img
font = cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(img, 'OpenCV', (10, 500), font, 4, (255, 255, 255), 2, cv2.LINE_AA) cv2.imshow('img', img)
cv2.waitKey(0)
cv2.destroyAllWindows() Code运行结果展示:

 

初识OpenCV-Python - 002: Drawing functions的更多相关文章

  1. Think Python - Chapter 03 - Functions

    3.1 Function callsIn the context of programming, a function is a named sequence of statements that p ...

  2. OpenCV Python教程(3、直方图的计算与显示)

    转载请详细注明原作者及出处,谢谢! 本篇文章介绍如何用OpenCV Python来计算直方图,并简略介绍用NumPy和Matplotlib计算和绘制直方图 直方图的背景知识.用途什么的就直接略过去了. ...

  3. OpenCV + python 实现人脸检测(基于照片和视频进行检测)

    OpenCV + python 实现人脸检测(基于照片和视频进行检测) Haar-like 通俗的来讲,就是作为人脸特征即可. Haar特征值反映了图像的灰度变化情况.例如:脸部的一些特征能由矩形特征 ...

  4. opencv+python视频实时质心显示

    利用opencv+python实现以下功能: 1)获取实时视频,分解帧频: 2)将视频做二值化处理: 3) 将视频做滤波处理(去除噪点,获取准确轮廓个数): 4)识别图像轮廓: 5)计算质心: 6)描 ...

  5. Erlang/Elixir: 使用 OpenCV, Python 搭建图片缩略图服务器

    这篇文章是在OSX上测试和运行的的, Ubuntu下的安装和配置请移步到这里 应用程序进程树, 默认 Poolboy 中初始化10个用于处理图片的 Python 工作进程(Worker) 首先安装Op ...

  6. opencv python实用操作

    画多边形 fillConvexPloy与fillConvexPloy的区别 fillConvexPloy 用来画单个凸多边形: 如果点集的连线不是凹多边形,则会找一个最小的凸多边形把该凹多边形包住画出 ...

  7. 初识Django —Python API接口编程入门

    初识Django —Python API接口编程入门 一.WEB架构的简单介绍 Django是什么? Django是一个开放源代码的Web应用框架,由Python写成.我们的目标是用Python语言, ...

  8. Win7 64bit+Anaconda(3-5.0.1,Python3.6)+Pycharm(community-2017.3.3)+OpenCV(python‑3.4.0‑cp36‑cp36m)(转载)

    Anaconda(3-5.0.1,Python3.6)下载链接:https://pan.baidu.com/s/1bqFwLMB 密码:37ih Pycharm(community-2017.3.3) ...

  9. 解决Windows Server 2012 R2 Datacenter云服务器无法运行opencv python程序的问题

    写了个基于opencv的python程序,pyinstaller 32位机打包后在win7/win10 32/64正常运行,在Windows Server 2012 R2 Datacenter云服务器 ...

随机推荐

  1. 回文树上dfs——牛客多校第六场C

    /* set里的一定是本质不同的回文串,所以先建立回文树 当a可以通过nxt指针到达b,或者b可以通过fail指针到达a时,a就是b的子串 对于回文树里的每个结点u,我们可以将和其有关的结点为两部分: ...

  2. NX二次开发-UFUN由工程图视图tag获取图纸页tag UF_DRAW_ask_drawing_of_view

    #include <uf.h> #include <uf_draw.h> #include <uf_drf.h> #include <uf_obj.h> ...

  3. NX二次开发-UFUN设置视图边界线显示隐藏UF_DRAW_set_border_display

    #include <uf.h> #include <uf_draw.h> #include <uf_drf.h> #include <uf_obj.h> ...

  4. LeetCode 182. Duplicate Emails (查找重复的电子邮箱)

    题目标签: 题目给了我们一个 email 的table,让我们找到重复的 email. 可以建立 Person a, Person b, 找到两个表格中,emai 相等 但是 id 不同的 email ...

  5. LeetCode 175. Combine Two Tables (组合两个表)

    题目标签: 题目给了我们两个table,让我们合并,根据Person为主. 因为题目说了 提供person 信息,不管这个人有没有地址.所以这里用Left Join. Java Solution: R ...

  6. Altium Designer 精心总结(转)

    https://blog.csdn.net/qq_29350001/article/details/52199356 设置铺铜间距规则,Electrical-Clearence_Poly设置如下,是铺 ...

  7. 【集合框架】JDK1.8源码分析之HashMap

    一.前言 在分析jdk1.8后的HashMap源码时,发现网上好多分析都是基于之前的jdk,而Java8的HashMap对之前做了较大的优化,其中最重要的一个优化就是桶中的元素不再唯一按照链表组合,也 ...

  8. ActiveMQ任意文件写入漏洞(CVE-2016-3088)

    上传webshell 容器用vulhub的 PUT一个jsp文件 MOVE到api目录 默认的ActiveMQ账号密码均为admin,首先访问http://your-ip:8161/admin/tes ...

  9. 如果一个文件块有130M,请问有多少个mapper

    如果一个文件块有130M,请问有多少个mapper 130M的文件将被分成2个mapper. 原因:根据FileInputFormat类 有一个成员变量 private static final do ...

  10. 12-MySQL-Ubuntu-数据表的查询-数据准备和基本查询(一)

    一,数据准备 创建数据库.数据表 -- 创建数据库 create database python_test_1 charset=utf8; -- 使用数据库 use python_test_1; -- ...