04-图像的形状绘制

一、线段绘制

cv2.line(dst,(100,100),(400,400),(0,0,255),2,cv2.LINE_AA)
参数一:目标图片数据
参数二:当前线段绘制的起始位置(也就是两点确定一条直线)
参数三:当前线段绘制的终止位置(也就是两点确定一条直线)
参数四:当前线段颜色(B,G,R)
参数五:当前线段的宽度
参数六:设置当前线段的类型

import cv2
import numpy as np
newImageInfo = (500,500,3)#目标图片的大小
dst = np.zeros(newImageInfo,np.uint8)#创建一个目标图片#绘制线段
cv2.line(dst,(100,100),(400,400),(0,0,255))
cv2.line(dst,(100,200),(400,200),(0,255,0),5)
cv2.line(dst,(100,300),(400,300),(255,0,0),20,cv2.LINE_AA)
#当然,也可以实现三角形、矩形等形状的绘制,也无非多几条线段而已
cv2.imshow('dst',dst)
cv2.waitKey(0)

效果图如下:
在这里插入图片描述

二、矩形、圆形以及任意多边形的绘制

cv2.rectangle(dst,(50,100),(200,300),(255,0,0),-1)
参数一:当前的目标图片
参数二:矩形左上角的起始点
参数三:矩形右下角位置
参数四:矩形颜色
参数五:是否填充;-1需要填充;其他正值为矩形边缘宽度

cv2.circle(dst,(250,250),(50),(0,255,0),2)
参数一:当前的目标图片
参数二:圆心的位置
参数三:圆的半径
参数四:绘制圆的线条颜色
参数五:是否填充;若为-1表示填充;若为其他正值表面线条宽度

cv2.ellipse(dst,(256,256),(150,100),0,0,180,(255,255,0),-1)
参数一:当前的目标图片
参数二:椭圆形的圆形
参数三:轴的长度,因为椭圆有俩轴,所以有两个值
参数四:偏转角度
参数五:圆弧的起始角度
参数六:圆弧的终止角度
参数七:线条颜色
参数八:是否填充;若为-1表示填充;若为其他正值表面线条宽度

import cv2
import numpy as np
newImageInfo = (500,500,3)
dst = np.zeros(newImageInfo,np.uint8)#绘制矩形
cv2.rectangle(dst,(50,100),(200,300),(255,0,0),-1)#绘制圆形
cv2.circle(dst,(250,250),(50),(0,255,0),2)#椭圆形、扇形、圆弧
cv2.ellipse(dst,(256,256),(150,100),0,0,180,(255,255,0),-1)#任意多边形
points = np.array([[150,50],[140,140],[200,170],[250,250],[150,50]],np.int32)
#print(points.shape)
points = points.reshape((-1,1,2))
#print(points.shape)
cv2.polylines(dst,[points],True,(0,255,255))cv2.imshow('dst',dst)
cv2.waitKey(0)

效果图如下:
在这里插入图片描述

三、文字图片绘制

cv2.rectangle(img,(20,20),(250,250),(0,255,0),3)
参数一:原图像
参数二:方框的起始位置
参数三:方框的终止位置
参数四:方框颜色
参数五:是否填充;若为-1表示填充;若为其他正值表面线条宽度

cv2.putText(img,'this is a cat',(45,45),font,1,(0,0,255),2,cv2.LINE_AA)
参数一:目标图片
参数二:文字的内容
参数三:写入的坐标
参数四:字体类型
参数五:字体大小
参数六:字体颜色
参数七:字体粗细
参数八:字体线条类型

import cv2 
import numpy as np
img = cv2.imread('E:\Jupyter_workspace\study\data/cat.png',1)
font = cv2.FONT_HERSHEY_SIMPLEX#选择字体
cv2.rectangle(img,(20,20),(250,250),(0,255,0),3)#画一个小方框
cv2.putText(img,'this is a cat',(45,45),font,1,(0,0,255),2,cv2.LINE_AA)
cv2.imshow('src',img)
cv2.waitKey(0)

效果图如下:
在这里插入图片描述
cv2.resize(img,(width,height))
参数一:所选取的照片
参数二:将该照片的宽高

import cv2 
img = cv2.imread('E:\Jupyter_workspace\study\data/cat.png',1)
height = int(img.shape[0]*0.2)
width = int(img.shape[1]*0.2)
imgResize = cv2.resize(img,(width,height))
for i in range(0,height):for j in range(0,width):img[i+10,j+20] = imgResize[i,j]
cv2.imshow('src',img)
cv2.waitKey(0)

效果图如下:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/378560.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(1-e^(-j5w))/(1-e^(-jw))=e^(-j2w)*sin(5w/2)/sin(w/2)的证明过程

问题出现:《数字信号处理第三版》第90页刘顺兰版 最后一步怎么得到的? 思路:观察答案,有一个自然对数项。关键就是如何提取出这一项。 我的证明过程如下: 参考链接: 【和差化积】

php 移植 arm 精简,php5.4.5移植到arm-linux摘要,lighttpd配置

php5.4.5移植到arm-linux摘要.因为有嵌入WEB服务的需求,再常识了N多的开源的嵌入服务后最终选择了lighttpd.Apache太大支了,而且在arm上对swf的支持不好.其他的都不怎么理想.lighttpd的移植过程就省略了。这里只摘要了PHP移植,采用fastcgi与lighttpd 协作…

05-图像的美化

一、彩色图片直方图 cv2.calcHist([image],[0],None,[256],[0.0,255.0]) 该方法的所有参数都必须用中括号括起来!!! 参数一:传入的图片数据 参数二:用于计算直方图的通道,这里使用的是灰度直方图&#xff…

java 检查目录是否存在_如何检查Java目录是否存在?

java 检查目录是否存在We are using the File class that is an abstract representation of file and directory path. To check if a directory exists we have to follow a few steps: 我们正在使用File类 ,它是文件和目录路径的抽象表示。 要检查目录是否存在&a…

Eclipse for android 中设置java和xml代码提示功能(转)

1、设置 java 文件的代码提示功能 打开 Eclipse 依次选择 Window > Preferences > Java > Editor - Content Assist > Auto activation triggers for Java ,设置框中默认是一个点, 现在将它改为: 以下为引用内容: .a…

MySQL 定时器EVENT学习

MySQL 定时器EVENT学习 MySQL从5.1开始支持event功能,类似oracle的job功能。有了这个功能之后我们就可以让MySQL自动的执行数据汇总等功能,不用像以前需要操作的支持了。如linux crontab功能 。 创建测试表CREATE TABLE t( v VARCHAR(100) NOT NULL…

如何利用FFT(基2时间以及基2频率)信号流图求序列的DFT

直接用两个例子作为模板说明: 利用基2时间抽取的FFT流图计算序列的DFT 1、按照序列x[k]序号的偶奇分解为x[k]和x2[k],即x1[k]{1,1,2,1}, x2[k]{-1,-1,1,2} 2、画出信号流图并同时进行计算 计算的时候需要参考基本蝶形单元: 关键在于 (WN) k…

matlab4.0,matlab 4.0

4.1fort-9:0.5:9if(t>0)y-(3*t^2)5;fprintf(y%.2ft%.2f\n,y,t);elsey(3*t^2)5;fprintf(y%.2ft%.2f\n,y,t);endend编译结果:y248.00t-9.00y221.75t-8.50y197.00t-8.00y173.75t-7.50y152.00t-7.00y131.75t-6.50y113.00t-6.00y95.75t-5.50y80.00t-5.00y65.75t-4.50y…

图形学 射线相交算法_计算机图形学中的阴极射线管

图形学 射线相交算法阴极射线管 (Cathode Ray Tube) Ferdinand Barun of Strasbourg developed the cathode ray tube in the year 1897. It used as an oscilloscope to view and measure some electrical signals. But several other technologies exist and solid state mov…

Constructor总结

一个类如果没有构造那么系统为我们在背后创建一个0参数的构造,但是一旦我们创建了但参数的构造,那么默认的构造就没了。 View Code 1 using System;2 using System.Collections.Generic;3 using System.Linq;4 using System.Text;5 6 namespace Console…

Python连接MySQL及一系列相关操作

一、首先需要安装包pymysql(python3所对应) 我使用的是Anaconda全家桶,打开cmd,进入Anaconda下的Scripts文件夹下输入命令:pip install pymysql进行下载安装 二、我使用的编译器为Anaconda所带的Jupyter Notebook 1,在mysql中…

微机原理—可编程计数器/定时器8253概念详解

目录前言【1】定时处理方法1、定时的方法:2、定时和计数器【2】8253计数/定时器1、特点:2、芯片引脚以及电路:3、连接方式:4、工作原理:5、寄存器配置a、初始化操作(三个通道单独初始化)b、读出…

php静态分析工具window,window_SpeedPHP框架核心调试工具,在日常的编程开发当中,开发 - phpStudy...

SpeedPHP框架核心调试工具在日常的编程开发当中,开发者经常会使用到对变量的调试,而sp框架提供的变量调试输出函数——dump正好满足了变量调试的需求。下面来介绍一下dump函数的使用方法。dump —— 变量格式化输出函数用法:dump($vars, $out…

python 温度转换程序_Python程序将米转换为码

python 温度转换程序There are many problems where we have to calculate the distance in yards at the end but initially, the measurements are given in meters. So for such type of problems, the solution is converting the initial parameters into yards and then …

Oracle转Sqlserver 记录

使用了微软的SSMA帮忙,但是目前只有表能帮忙转,其他的还是要手动改,- - oracle 可以这样查询AppServiceInfoaspdb ,调用其他库的表。SQL是: aspdb.dob.AppServiceInfo si数据库需要和 aspdb ASPDB_Capacity 在siinf…

形参与实参在函数中的传递

#include <iostream> #include <cstring> using namespace std; void myFun(int a[]); int main() {int a[10];cout<<"aaa"<<sizeof(a)<<endl;//40 int为4&#xff0c;a为10个int&#xff0c;故为40cout<<"yy"<<…

带你走进缓存世界

我们搞程序的多多少少都了解点算法。总体来讲&#xff0c;算法是什么&#xff1f;算法就是“时间”和“空间”的互换策略。我们常常考究一个算法的时间复杂度或空间复杂度&#xff0c;如果我们有绝对足够的时间或空间&#xff0c;那么算法就不需要了&#xff0c;可惜这种条件是…

霍夫码编码(一种不等长,非前缀编码方式)

霍夫曼编码是一种不等长非前缀编码方式&#xff0c;于1951年由MIT的霍夫曼提出。 用于对一串数字/符号编码获取最短的结果&#xff0c;获取最大的压缩效率。 特点&#xff1a;不等长、非前缀 等长式编码 等长编码&#xff0c;意思是对出现的元素采用相同位数的序号进行标定&a…

php调用shell脚本安全,从PHP调用的shell脚本问题

TLDR;我有一个shell脚本,从命令行运行时工作正常,但如果从PHP脚本中调用(通过Web访问)则不行.在这两种情况下,主叫用户都是www-data.线路失败是这样的&#xff1a;openssl genrsa -des3 -out certs/$PCODE.key -passout env:PASSPHRASE 2048为什么会这样&#xff1f;我该怎么调…

linux 运维基础问题_Linux基础能力问题和解答

linux 运维基础问题This section contains Aptitude Questions and Answers on Linux Basics. 本节包含有关Linux基础知识的 Aptitude问答。 1) There are the following statements that are given below, which of them are correct about Linux? Linux is system software…