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

带flash的网站梧州网站建设费用

带flash的网站,梧州网站建设费用,深圳网络营销公司,wordpress上传图片路径修改【1】引言 前序已经掌握了使用cv2.circle()绘制圆形的基本操作#xff0c;相关链接为#xff1a; python学opencv|读取图像#xff08;二十#xff09;使用cv2.circle()绘制圆形-CSDN博客 由于圆形本身绘制起来比较简单#xff0c;因此可以自由操作的空间也就大#x…【1】引言 前序已经掌握了使用cv2.circle()绘制圆形的基本操作相关链接为 python学opencv|读取图像二十使用cv2.circle()绘制圆形-CSDN博客 由于圆形本身绘制起来比较简单因此可以自由操作的空间也就大我们今天就尝试多一些花样做一次进阶探索。 【2】代码探索 【2.1】同心圆 绘制同心圆的基本思路是确认好圆心以后逐个修改半径然后输出图像即可。 还是以之前的代码为基础增加for循环逐个输出圆即可。此处先给出完整代码 import numpy as np # 引入numpy模块 import cv2 as cv # 引入cv模块canvas np.ones((580, 580, 3), np.uint8) * 225 # 绘制一个580*580大小的画布3代表有3个通道unit8为图像存储格式 # 第一个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 0] 0.2 * (i j) # 第一个通道值# 第二个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 1] 50 * np.cos(i ^ j) 55 * np.sin(j ^ i) 150 * np.sin(j - i) # 第二个通道值# 第三个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 2] 100 * np.tanh(i j) 100 * np.tanh(i - j) 50 * np.cos(j - i) # 第三个通道值 x0285 #圆心横坐标 y0285 #圆心纵坐标 for i in range(1,6,1):canvas cv.circle(canvas, (x0, y0), 50*i, (int(255*np.cos((np.sqrt(np.square(15-i))))), int(255*np.sin(i)), int(np.abs(i-3))^5), i) #输出同心圆#canvas cv.circle(canvas, (285, 285), 80, (0, 0, 255), 3) # 第一个圆形 #canvas cv.circle(canvas, (100, 285), 80, (0, 255, 255), -1) # 第二个圆形 #canvas cv.circle(canvas, (470, 285), 80, (255, 0, 0), -1) # 第三个圆形 # canvas cv.rectangle(canvas, (50, 30), (530, 550), (155, 120, 60), 5) # 矩形 # canvas cv.rectangle(canvas, (80, 80), (500, 500), (55, 160, 230), 10) # 矩形 # canvas cv.rectangle(canvas, (150, 150), (430, 430), (50, 120, 90), -1) # 矩形 # canvas cv.line(canvas, (50, 550), (550, 550), (58, 50, 150), 15) # 线段 # canvas cv.line(canvas, (300, 50), (300, 550), (120, 150, 25), 20) # 线段cv.imshow(rectangle, canvas) # 在屏幕展示绘制圆形的效果 cv.imwrite(circle50.png, canvas) # 保存图像 cv.waitKey() # 图像不会自动关闭 cv.destroyAllWindows() # 释放所有窗口 程序运行后的输出图像为 图1 同心圆 创造同心圆的核心代码段落为 x0285 #圆心横坐标 y0285 #圆心横坐标 for i in range(1,5,1):canvas cv.circle(canvas, (x0, y0), 50*i, (int(255*np.cos((np.sqrt(np.square(15-i))))), int(255*np.sin(i)), int(np.abs(i-3))^5), i) #输出同心圆首先用x0和y0确认了愿新的坐标点然后用for循环输出5个圆形即可。 这五个圆的半径计算式为r50*ii就是圆形的出现顺序圆的颜色采用了函数的形式不是此处重点圆的线宽就是圆出现的顺序。 总体上圆出现的顺序越晚半径越大线条越宽。 【2.2】疏密同心圆 绘制疏密同心圆的基本思路是利用三角函数的斜率也是三角函数的原理如果半径通过三角函数来取值那同样的增量下邻近半径值的差会周期性的时大时小这样就会画出疏密同心圆。 以2π为周期增量从0到7就可以覆盖一个周期内的所有圆。 在这个分析基础上我们把核心代码换成 x0285 #圆心横坐标 y0285 #圆心横坐标 for i in range(0,7,1):canvas cv.circle(canvas, (x0, y0), np.abs(int(260*np.cos(i))), (200,180,55), 2) #输出同心圆半径取值为np.abs(int(260*np.cos(i)))这里的np.abs()是取绝对值的意思因为半径必须为正数。 此时获得的图形为 图2 疏密同心圆 对应的完整代码为 import numpy as np # 引入numpy模块 import cv2 as cv # 引入cv模块canvas np.ones((580, 580, 3), np.uint8) * 225 # 绘制一个580*580大小的画布3代表有3个通道unit8为图像存储格式 # 第一个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 0] 0.2 * (i j) # 第一个通道值# 第二个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 1] 50 * np.cos(i ^ j) 55 * np.sin(j ^ i) 150 * np.sin(j - i) # 第二个通道值# 第三个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 2] 100 * np.tanh(i j) 100 * np.tanh(i - j) 50 * np.cos(j - i) # 第三个通道值 x0285 #圆心横坐标 y0285 #圆心横坐标 for i in range(0,7,1):canvas cv.circle(canvas, (x0, y0), np.abs(int(260*np.cos(i))), (200,180,55), 2) #输出同心圆#canvas cv.circle(canvas, (285, 285), 80, (0, 0, 255), 3) # 第一个圆形 #canvas cv.circle(canvas, (100, 285), 80, (0, 255, 255), -1) # 第二个圆形 #canvas cv.circle(canvas, (470, 285), 80, (255, 0, 0), -1) # 第三个圆形 # canvas cv.rectangle(canvas, (50, 30), (530, 550), (155, 120, 60), 5) # 矩形 # canvas cv.rectangle(canvas, (80, 80), (500, 500), (55, 160, 230), 10) # 矩形 # canvas cv.rectangle(canvas, (150, 150), (430, 430), (50, 120, 90), -1) # 矩形 # canvas cv.line(canvas, (50, 550), (550, 550), (58, 50, 150), 15) # 线段 # canvas cv.line(canvas, (300, 50), (300, 550), (120, 150, 25), 20) # 线段cv.imshow(rectangle, canvas) # 在屏幕展示绘制圆形的效果 cv.imwrite(circle50.png, canvas) # 保存图像 cv.waitKey() # 图像不会自动关闭 cv.destroyAllWindows() # 释放所有窗口 【2.3】变化圆心 既然圆的半径可以变化圆形自然也可以变化继续修改核心代码 r160 #半径 for i in range(0,10,1):canvas cv.circle(canvas, ((i-5)*10280, (i-5)*20280), r, (200,180,55), 2) #输出同心圆在这里圆心坐标被更换为((i-5)*10280, (i-5)*20280)这几一个动态值只有半径是恒定的160。代码运行获得的图像为 图3 圆心变化 此时的完整代码为 import numpy as np # 引入numpy模块 import cv2 as cv # 引入cv模块canvas np.ones((580, 580, 3), np.uint8) * 225 # 绘制一个580*580大小的画布3代表有3个通道unit8为图像存储格式 # 第一个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 0] 0.2 * (i j) # 第一个通道值# 第二个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 1] 50 * np.cos(i ^ j) 55 * np.sin(j ^ i) 150 * np.sin(j - i) # 第二个通道值# 第三个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 2] 100 * np.tanh(i j) 100 * np.tanh(i - j) 50 * np.cos(j - i) # 第三个通道值 #x0285 #圆心横坐标 #y0285 #圆心横坐标 r160 #半径 for i in range(0,10,1):canvas cv.circle(canvas, ((i-5)*10280, (i-5)*20280), r, (200,180,55), 2) #输出同心圆#canvas cv.circle(canvas, (285, 285), 80, (0, 0, 255), 3) # 第一个圆形 #canvas cv.circle(canvas, (100, 285), 80, (0, 255, 255), -1) # 第二个圆形 #canvas cv.circle(canvas, (470, 285), 80, (255, 0, 0), -1) # 第三个圆形 # canvas cv.rectangle(canvas, (50, 30), (530, 550), (155, 120, 60), 5) # 矩形 # canvas cv.rectangle(canvas, (80, 80), (500, 500), (55, 160, 230), 10) # 矩形 # canvas cv.rectangle(canvas, (150, 150), (430, 430), (50, 120, 90), -1) # 矩形 # canvas cv.line(canvas, (50, 550), (550, 550), (58, 50, 150), 15) # 线段 # canvas cv.line(canvas, (300, 50), (300, 550), (120, 150, 25), 20) # 线段cv.imshow(rectangle, canvas) # 在屏幕展示绘制圆形的效果 cv.imwrite(circle50.png, canvas) # 保存图像 cv.waitKey() # 图像不会自动关闭 cv.destroyAllWindows() # 释放所有窗口 【2.4】变化圆半径 在圆心变化的基础上圆的半径可以变化这样就会出现变化圆。 继续增添代码 for i in range(0,10,1):canvas cv.circle(canvas, ((i-5)*10280, (i-5)*20280), int(200*np.abs(np.sin(i))), (200,180,55), 2) #输出同心圆在这里半径值被修改为int(200*np.abs(np.sin(i)))这是一个动态值。 运行后的图像为 图4 变化圆 此时的完整代码为 import numpy as np # 引入numpy模块 import cv2 as cv # 引入cv模块canvas np.ones((580, 580, 3), np.uint8) * 225 # 绘制一个580*580大小的画布3代表有3个通道unit8为图像存储格式 # 第一个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 0] 0.2 * (i j) # 第一个通道值# 第二个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 1] 50 * np.cos(i ^ j) 55 * np.sin(j ^ i) 150 * np.sin(j - i) # 第二个通道值# 第三个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 2] 100 * np.tanh(i j) 100 * np.tanh(i - j) 50 * np.cos(j - i) # 第三个通道值 #x0285 #圆心横坐标 #y0285 #圆心横坐标 #r160 #半径 for i in range(0,10,1):canvas cv.circle(canvas, ((i-5)*10280, (i-5)*20280), int(200*np.abs(np.sin(i))), (200,180,55), 2) #输出同心圆#canvas cv.circle(canvas, (285, 285), 80, (0, 0, 255), 3) # 第一个圆形 #canvas cv.circle(canvas, (100, 285), 80, (0, 255, 255), -1) # 第二个圆形 #canvas cv.circle(canvas, (470, 285), 80, (255, 0, 0), -1) # 第三个圆形 # canvas cv.rectangle(canvas, (50, 30), (530, 550), (155, 120, 60), 5) # 矩形 # canvas cv.rectangle(canvas, (80, 80), (500, 500), (55, 160, 230), 10) # 矩形 # canvas cv.rectangle(canvas, (150, 150), (430, 430), (50, 120, 90), -1) # 矩形 # canvas cv.line(canvas, (50, 550), (550, 550), (58, 50, 150), 15) # 线段 # canvas cv.line(canvas, (300, 50), (300, 550), (120, 150, 25), 20) # 线段cv.imshow(rectangle, canvas) # 在屏幕展示绘制圆形的效果 cv.imwrite(circle50.png, canvas) # 保存图像 cv.waitKey() # 图像不会自动关闭 cv.destroyAllWindows() # 释放所有窗口 【2.5】变化圆半径和颜色 在获得变化圆半径的基础上继续修改代码让圆的颜色变化 for i in range(0,10,1):canvas cv.circle(canvas, ((i-5)*10280, (i-5)*20280), int(200*np.abs(np.sin(i))), (int(abs(255*np.sin(i))),int(abs(255*np.cos(i))),int(255*np.tanh(i))), 2) #输出圆 在这里颜色值被修改为(int(abs(255*np.sin(i))),int(abs(255*np.cos(i))),int(255*np.tanh(i)))这是一个动态值。 运行后的图像为 图5 变化圆半径和颜色 此时的完整代码为 import numpy as np # 引入numpy模块 import cv2 as cv # 引入cv模块canvas np.ones((580, 580, 3), np.uint8) * 225 # 绘制一个580*580大小的画布3代表有3个通道unit8为图像存储格式 # 第一个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 0] 0.2 * (i j) # 第一个通道值# 第二个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 1] 50 * np.cos(i ^ j) 55 * np.sin(j ^ i) 150 * np.sin(j - i) # 第二个通道值# 第三个通道值 #for i in range(0, 580, 1):#for j in range(0, 580, 1):#canvas[i, j, 2] 100 * np.tanh(i j) 100 * np.tanh(i - j) 50 * np.cos(j - i) # 第三个通道值 #x0285 #圆心横坐标 #y0285 #圆心横坐标 #r160 #半径 for i in range(0,10,1):canvas cv.circle(canvas, ((i-5)*10280, (i-5)*20280), int(200*np.abs(np.sin(i))), (int(abs(255*np.sin(i))),int(abs(255*np.cos(i))),int(255*np.tanh(i))), 2) #输出同心圆#canvas cv.circle(canvas, (285, 285), 80, (0, 0, 255), 3) # 第一个圆形 #canvas cv.circle(canvas, (100, 285), 80, (0, 255, 255), -1) # 第二个圆形 #canvas cv.circle(canvas, (470, 285), 80, (255, 0, 0), -1) # 第三个圆形 # canvas cv.rectangle(canvas, (50, 30), (530, 550), (155, 120, 60), 5) # 矩形 # canvas cv.rectangle(canvas, (80, 80), (500, 500), (55, 160, 230), 10) # 矩形 # canvas cv.rectangle(canvas, (150, 150), (430, 430), (50, 120, 90), -1) # 矩形 # canvas cv.line(canvas, (50, 550), (550, 550), (58, 50, 150), 15) # 线段 # canvas cv.line(canvas, (300, 50), (300, 550), (120, 150, 25), 20) # 线段cv.imshow(rectangle, canvas) # 在屏幕展示绘制圆形的效果 cv.imwrite(circle50.png, canvas) # 保存图像 cv.waitKey() # 图像不会自动关闭 cv.destroyAllWindows() # 释放所有窗口 【2.6】变化背景 然后我们修改背景BGR值获得颜色变化的背景画布 # 第一个通道值 for i in range(0, 580, 1):for j in range(0, 580, 1):canvas[i, j, 0] 0.2 * (i j) # 第一个通道值# 第二个通道值 for i in range(0, 580, 1):for j in range(0, 580, 1):canvas[i, j, 1] 150 * np.cos(i ^ j) 55 * np.sin(j ^ i) 50 * np.sin(j - i) # 第二个通道值# 第三个通道值 for i in range(0, 580, 1):for j in range(0, 580, 1):canvas[i, j, 2] 50 * np.tanh(i j) 80 * np.tanh(i - j) 120 * np.cos(j - i) # 第三个通道值此时获得的图像为 图6  变化圆和画布 此时的完整代码为 import numpy as np # 引入numpy模块 import cv2 as cv # 引入cv模块canvas np.ones((580, 580, 3), np.uint8) * 125 # 绘制一个580*580大小的画布3代表有3个通道unit8为图像存储格式 # 第一个通道值 for i in range(0, 580, 1):for j in range(0, 580, 1):canvas[i, j, 0] 0.2 * (i j) # 第一个通道值# 第二个通道值 for i in range(0, 580, 1):for j in range(0, 580, 1):canvas[i, j, 1] 150 * np.cos(i ^ j) 55 * np.sin(j ^ i) 50 * np.sin(j - i) # 第二个通道值# 第三个通道值 for i in range(0, 580, 1):for j in range(0, 580, 1):canvas[i, j, 2] 50 * np.tanh(i j) 80 * np.tanh(i - j) 120 * np.cos(j - i) # 第三个通道值 #x0285 #圆心横坐标 #y0285 #圆心横坐标 #r160 #半径 for i in range(0,10,1):canvas cv.circle(canvas, ((i-5)*10280, (i-5)*20280), int(200*np.abs(np.sin(i))), (int(abs(255*np.sin(i))),int(abs(255*np.cos(i))),int(255*np.tanh(i))), 2) #输出同心圆#canvas cv.circle(canvas, (285, 285), 80, (0, 0, 255), 3) # 第一个圆形 #canvas cv.circle(canvas, (100, 285), 80, (0, 255, 255), -1) # 第二个圆形 #canvas cv.circle(canvas, (470, 285), 80, (255, 0, 0), -1) # 第三个圆形 # canvas cv.rectangle(canvas, (50, 30), (530, 550), (155, 120, 60), 5) # 矩形 # canvas cv.rectangle(canvas, (80, 80), (500, 500), (55, 160, 230), 10) # 矩形 # canvas cv.rectangle(canvas, (150, 150), (430, 430), (50, 120, 90), -1) # 矩形 # canvas cv.line(canvas, (50, 550), (550, 550), (58, 50, 150), 15) # 线段 # canvas cv.line(canvas, (300, 50), (300, 550), (120, 150, 25), 20) # 线段cv.imshow(rectangle, canvas) # 在屏幕展示绘制圆形的效果 cv.imwrite(circle50.png, canvas) # 保存图像 cv.waitKey() # 图像不会自动关闭 cv.destroyAllWindows() # 释放所有窗口 【3】总结 掌握了pythonopencv灵活绘制圆形的技巧。
http://www.eeditor.cn/news/119822/

相关文章:

  • 浙江创都建设有限公司网站建筑企业办公系统公司
  • 连云港网站建设优化绵阳银行网站建设
  • 怎么做网站的seoWordpress去掉左上角标志
  • 网页模版比较出名的网站网站seo诊断报告例子
  • 张掖网站建设推广网站建设翻译插件
  • 兴国县城乡规划建设局网站wordpress foreign trade
  • 重庆网站制作设计银川商城网站建设
  • 没有工信部备案的网站是骗子吗做国外贸易哪个网站好
  • 网站用哪些系统做的比较好建设企业网站官网下载
  • 用mvc做网站的框架公司局域网怎么建立
  • 广州市建设厅官方网站网页设计属于ui范围吗
  • 网站友情链接形式漳浦建设银行网站
  • 广州网站建设 骏域网站建设怎么用网站做地标
  • 做兼职的设计网站旅游网站建设系统
  • 学习软件的网站做旅游网站用什么颜色
  • 手机端网站自动弹出营销qq企业宣传册文案范文
  • 网站 设计理念营销型网站标准网页源码
  • 淘宝客做自己网站怎样申请免费网站域名
  • 中山网站改版做设计兼职网站
  • 苏州老字号企业官方的网站策划书苏州做网站要多少钱
  • 做专题页的网站子域名网址大全
  • 化妆品网站建设流程图天津品牌网站建设好处
  • 网站愉建设酷站素材
  • 毕业设计心理评测网站开发建设企业网站步骤
  • 信息发布网站开发渭南网站建设风尚网络
  • 城乡建设举报网站什么是网络营销服务?网络营销服务有哪些特点?
  • 企业网站是否可以做淘宝客百度公司总部地址
  • wordpress添加网站图标wordpress主题使用
  • 灵山招聘网灵山英才网做灵山专业的招聘网站新媒体营销和网络营销
  • 公司网站建设制度网站备案拍照点