当前位置: 首页 > 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/14587576/

相关文章:

  • 四川省建设监理协会官方网站企企管理系统平台
  • 各大网站发布信息html做网站经验技巧
  • 个人网站可以做资讯小说类wordpress注册带密码
  • 做一个公司网站一般多少钱施工员证查询官方网站
  • 图书馆网站建设网站的目的北京便宜网站建设
  • 公司网站主页怎么做如何做公司宣传网站
  • 学做效果图网站有哪些软件有哪些兰州关键词排名公司
  • 宁国市网站关键词优化外包建设房地产公司网站的费用
  • 上海高端网站定制怎么注册公司企业微信
  • 找衣服款式的网站怎么在家开网店挣钱呢
  • 网站开发外包公司坑奥远科技网站建设流程
  • 外国域名注册很多网站电影片头在线制作网站
  • 网站优化知识杭州餐饮 网站建设
  • 国外设计作品网站磁力蜘蛛搜索引擎
  • 一张图片切块做网站背景网站开发薪酬
  • 网站排名工具wordpress 主题和插件下载
  • 成品网站w灬源码999交友企业招聘
  • 龙岗网站建设_公司推广哈尔滨最新通告
  • 莱芜高端网站建设价格大朗网站建设公司
  • 满城建设局官方网站烟台网站建设工资
  • 网站建设采用thinkphp框架的优势东莞标志设计公司
  • 光谷做网站推广公司制作相册视频
  • wordpress修改网站菜单位置wordpress页脚计时
  • 沙田网站仿做荷城网站设计
  • 网站icp备案是什么晋江论坛怎么发图
  • 如何做优秀的视频网站建设一个网站的方法
  • 青岛市网站建设培训学校程序员给别人做的网站违法了
  • 购物网站有哪些平台做网站的是干嘛的
  • 郑州网站建设公司qq西安工商注册平台官网
  • vps做网站教程网站制作关键技术