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

国外游戏代码网站中山网站建设解决方案

国外游戏代码网站,中山网站建设解决方案,怎么查询搜索关键词,做下载网站用什么程序好【1】引言 前序学习过程中#xff0c;掌握了灰度图像和彩色图像的掩模操作#xff1a; python学opencv|读取图像#xff08;九#xff09;用numpy创建黑白相间灰度图_numpy生成全黑图片-CSDN博客 python学opencv|读取图像#xff08;四十#xff09;掩模#xff1a;三…【1】引言 前序学习过程中掌握了灰度图像和彩色图像的掩模操作 python学opencv|读取图像九用numpy创建黑白相间灰度图_numpy生成全黑图片-CSDN博客 python学opencv|读取图像四十掩模三通道图像的局部覆盖-CSDN博客 也受此启发尝试直接使用cv2.add()函数让两张图片进行叠加 python学opencv|读取图像四十一 使用cv2.add()函数实现各个像素点BGR叠加-CSDN博客 在此基础上我们如果进一步尝试就可以对3张图片进行叠加。 比如我们已经知晓彩色三通道图像的每一个通道都可以单独设置对应BGR值它们叠加的效果是新的彩色图像。实际上这种叠加效果我们早期在没有使用cv2.add()函数的时候已经悄然获得了 python学opencv|读取图像十用numpy创建彩色图像_cv2 通过numpy创建图像-CSDN博客 此时在已经、学习了cv2.add()函数的基础上我们可以进一步验证。 【2】可行性分析 【2.1】未使用cv.add()函数 在python学opencv|读取图像十用numpy创建彩色图像_cv2 通过numpy创建图像-CSDN博客文章中使用的代码为 import numpy as np # 引入numpy模块 import cv2 as cv # 引入cv2模块 from imageio.v2 import imwrite# 定义图像 t np.arange(300, 600, 20) # 定义变量在[300,600)区间每隔20取一个值 t_max np.max(t) # 取变量最大值作为像素大小 print(t_max, t_max) # 输出最大值 image np.zeros([t_max, t_max, 3], np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 image[:, :, 0] 155 # 第一个通道值 image[:, :, 1] 200 # 第二个通道值 image[:, :, 2] 255 # 第三个通道值# 显示和保存定义的图像 cv.imshow(display-pho, image) # 显示图像 cv.imwrite(gray-pho-3.png, image) # 保存图像 cv.waitKey() # 图像不关闭 cv.destroyAllWindows() # 释放所有窗口 这其中的核心代码段有一个逐层覆盖和叠加的效果 image[:, :, 0] 155 # 第一个通道值 image[:, :, 1] 200 # 第二个通道值 image[:, :, 2] 255 # 第三个通道值 【2.2】使用cv.add()函数 为验证使用add()函数的叠加效果在上述代码后面补充一段代码 image1 np.zeros([t_max, t_max, 3], np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 image1[:, :, 0] 155 # 第一个图像 image2 np.zeros([t_max, t_max, 3], np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 image2[:, :, 1] 200 # 第二个图像 image3 np.zeros([t_max, t_max, 3], np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 image3[:, :, 2] 255 # 第三个图像 imgcv.add(image1,image2) # 第一和第二图像叠加 cv.imshow(display-12, img) # 显示图像 cv.imwrite(gray-pho-12.png, img) # 保存图像 imgcv.add(img,image3) # 第一、第二和第三图像叠加 cv.imshow(display-123, img) # 显示图像 cv.imwrite(gray-pho-123.png, img) # 保存图像 运行代码后获得的图像为 图1 gray-pho-3.png-未使用add()函数 图2 gray-pho-123.png-使用add()函数  由图1和图2可见无论是否使用add()函数图像叠加的本质都是各个通道的BGR值对应相加获得的图像效果是一样的。 此外中间的过渡图像也就是image1[:, :, 0] 155和image1[:, :,1] 200叠加后的图像为 图3 gray-pho-12.png-使用add()函数 【2.3】使用cv.add()函数掩模效果 在前述的两个测试中使用的图像叠加都没有尝试掩模效果。 但add()函数本身允许添加一个mask参数来做掩模效果为验证掩模效果继续增加下述代码 #验证掩模效果 masknp.zeros((t_max, t_max,1),np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 mask[20:300, 200:500, ] 200 # 第二个图像 cv.imshow(display-mask, mask) # 显示图像 cv.imwrite(gray-pho-mask.png,mask) # 保存图像 imgcv.add(image1,image2,maskmask) # 第一和第二图像叠加 cv.imshow(display-12-mask, img) # 显示图像 cv.imwrite(gray-pho-12-mask.png, img) # 保存图像 这里应用掩模效果的核心代码为 imgcv.add(image1,image2,maskmask) # 第一和第二图像叠加 代码运行后的掩模效果为 图4 gray-pho-12-mask.png-使用add()函数 由图4可见图像只在使用掩模的区域进行了效果叠加其他区域仍然保留了全0矩阵对应的纯黑色画布特点。 因为刚好掩模的矩阵赋值也是200和image2的通道赋值一样为进一步测试把这个掩模的矩阵赋值改到255增加下述代码 mask1np.zeros((t_max, t_max,1),np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 mask1[20:300, 200:500, ] 255 # 第二个图像 cv.imshow(display-mask, mask1) # 显示图像 cv.imwrite(gray-pho-mask.png,mask1) # 保存图像 imgcv.add(image1,image2,maskmask1) # 第一和第二图像叠加 cv.imshow(display-123-mask, img) # 显示图像 cv.imwrite(gray-pho-123-mask.png, img) # 保存图像 此时获得的图像为 图5 gray-pho-mask.png-掩模 图6 gray-pho-123-mask.png-使用add()函数掩模 可见使用掩模效果后图像依然是image1image2的效果且只在掩模控制的区域显示这个叠加效果。 此时的完整代码为 import numpy as np # 引入numpy模块 import cv2 as cv # 引入cv2模块 from imageio.v2 import imwrite# 定义图像 t np.arange(300, 600, 20) # 定义变量在[300,600)区间每隔20取一个值 t_max np.max(t) # 取变量最大值作为像素大小 print(t_max, t_max) # 输出最大值 image np.zeros([t_max, t_max, 3], np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 image[:, :, 0] 155 # 第一个通道值 image[:, :, 1] 200 # 第二个通道值 image[:, :, 2] 255 # 第三个通道值# 显示和保存定义的图像 cv.imshow(display-pho, image) # 显示图像 cv.imwrite(gray-pho-3.png, image) # 保存图像image1 np.zeros([t_max, t_max, 3], np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 image1[:, :, 0] 155 # 第一个图像 image2 np.zeros([t_max, t_max, 3], np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 image2[:, :, 1] 200 # 第二个图像 image3 np.zeros([t_max, t_max, 3], np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 image3[:, :, 2] 255 # 第三个图像 imgcv.add(image1,image2) # 第一和第二图像叠加 cv.imshow(display-12, img) # 显示图像 cv.imwrite(gray-pho-12.png, img) # 保存图像 imgcv.add(img,image3) # 第一、第二和第三图像叠加 cv.imshow(display-123, img) # 显示图像 cv.imwrite(gray-pho-123.png, img) # 保存图像#验证掩模效果 masknp.zeros((t_max, t_max,1),np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 mask[20:300, 200:500, ] 200 # 第二个图像 cv.imshow(display-mask, mask) # 显示图像 cv.imwrite(gray-pho-mask.png,mask) # 保存图像 imgcv.add(image1,image2,maskmask) # 第一和第二图像叠加 cv.imshow(display-12-mask, img) # 显示图像 cv.imwrite(gray-pho-12-mask.png, img) # 保存图像mask1np.zeros((t_max, t_max,1),np.uint8) # 定义一个竖直和水平像素均为t_max的全0矩阵 mask1[20:300, 200:500, ] 255 # 第二个图像 cv.imshow(display-mask, mask1) # 显示图像 cv.imwrite(gray-pho-mask.png,mask1) # 保存图像 imgcv.add(image1,image2,maskmask1) # 第一和第二图像叠加 cv.imshow(display-123-mask, img) # 显示图像 cv.imwrite(gray-pho-123-mask.png, img) # 保存图像cv.waitKey() # 图像不关闭 cv.destroyAllWindows() # 释放所有窗口 【3】总结 掌握了使用pythonopencv实现使用cv2.add()函数进行多图像叠加的技巧并探索了掩模的影响。
http://www.hkea.cn/news/14486015/

相关文章:

  • 建设银行网站怎么短信转账江苏建设集团公司官网
  • 网站更换空间教程7网站建设1
  • 郑州代理记账网站建设山东住房城乡建设厅网站
  • 自主建设网站的意义中国建设网站
  • 个人网站模板h5湖北建站
  • 网站手册永久免费自助建站源代码
  • 携程做旅游的网站可以免费发广告的网站有哪些
  • 做药材有什么好的网站自己做的网站加载不出验证码
  • wordpress 数据库字段seo官网
  • seo优化网站网站点击换图片的效果怎么做
  • 网站开发持续更新沈阳做网站的公司排名
  • 手机做任务网站有哪些内容企业网站个人可以备案吗
  • 东莞网站制作功能临沂企业建站效果好
  • 有关网站建设的公众号推广联盟
  • 做网站图片怎么做完整网站模板
  • vs和dw做网站的区别做网站绍兴
  • 汕头免费建站英雄联盟网站设计
  • 吉林新农村建设网站做电影网站哪个系统好
  • 做音频后期的素材网站wordpress漏洞利用2016
  • 江西省城乡建设陪训网官方网站管理咨询公司的运作模式
  • 口碑好网站建设费用joomla与wordpress哪个好
  • 怎样制作网站教程思创医惠网站建设
  • 做网站有没有用手机app应用软件开发
  • 网站建设 深圳宝安温州建设集团有限公司网站
  • 山东省建设执业资格注册中心网站七牛图床wordpress
  • 内丘附近网站建设价格wordpress时区
  • 中国建设工程网官方网站培 网站建设方案 doc
  • 如何建立企业网站怎么在中国移动做网站备案
  • 简洁大气的网站首页芜湖网站推广
  • 郑州怎样建设公司网站wordpress签到打卡插件