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

网站建设 总结黄骅港旅游景点大全海边

网站建设 总结,黄骅港旅游景点大全海边,网络,赣州网站seo前言#xff1a; Hello大家好#xff0c;我是Dream。 今天来学习一下如何使用Opencv实现人像迁移#xff0c;欢迎大家一起参与探讨交流~ 本文目录#xff1a; 一、实验要求二、实验环境三、实验原理及操作1.照片准备2.图像增强3.实现美颜功能4.背景虚化5.图像二值化处理6.人… 前言 Hello大家好我是Dream。 今天来学习一下如何使用Opencv实现人像迁移欢迎大家一起参与探讨交流~ 本文目录 一、实验要求二、实验环境三、实验原理及操作1.照片准备2.图像增强3.实现美颜功能4.背景虚化5.图像二值化处理6.人像迁移 四、实验结果1.原图、空间直方图均衡化后图像2.美颜后的人物图像与更改后的风景图像3.人像二值图4.人像迁移图 五、结果分析六、附录代码七、实验报告 一、实验要求 利用Python和Opencv算法实现下述功能 从网上下载一张纯色背景前的老人面部照片并且要求背景颜色与皮肤、衣服的颜色区别较大。准备一张风景图片。利用图像增强算法处理人像照片以提升照片的品质。利用图像处理算法去除老人面部的皱纹或色斑实现美颜功能。利用图像处理算法处理风景图片使风景图片变得模糊实现背景虚化。利用图像处理算法将步骤4得到的人像图像进行二值化处理人像部分为0背景部分为1。利用步骤6得到的二值图像将步骤5得到的风景图像中用于合成人像区域的像素置为黑色后与步骤4得到的人像图像进行合成实现人像迁移。 撰写实验报告将上述处理的原理与处理流程进行介绍保存上述每一步的结果图像并附加在实验报告中最终对处理结果进行分析并附加程序。 二、实验环境 解释器Python3.9、开发环境PyCharm 三、实验原理及操作 1.照片准备 老人照片(上)、风景照片下 2.图像增强 图像增强使用自适应直方图均衡化操作。 因为原始图像为RGB彩色图像直接使用直方图均衡化操作后会使颜色失真故先将原始图像转化到HSI空间对其中I通道亮度进行直方图均衡化再转回RGB空间这就实现了彩色图像的直方图均衡化图像的亮度直方图会分布的更加均衡。如果在 RGB 彩色空间内完成直方图均衡化的虽然的确有将原图中的阴暗部分变得明亮起来但是颜色的失真也是比较严重的。在均衡化过程中不仅改变了亮度也改变了彩色产生了不正确的彩色。 在 HSI 彩色空间均衡化方法得到的结果图像效果是比较好的整个图像都有效的加亮了而彩色本身色调是不变的。这里使用的是自适应直方图均衡化能够降低图像的全局依赖性更多的保留图像的局部特征。 3.实现美颜功能 磨皮算法的功能就是消除脸部的斑点、瑕疵或者杂色使得人物脸部更加细腻轮廓更加清晰。 在实际的人脸磨皮中一般还包含不同程度的预处理。我们使用传统的方法先对人脸中的脸部皮肤区域进行提取。基于皮肤的颜色特性我们将图像转换到HSV色域然后对逐像素点阈值判断分离出了人脸面部皮肤像素点集合。在代码运行中我们先对整张图片进行了双边滤波然后将双边滤波结果和原图片输入原函数使用皮肤像素点判断的方法将原图中皮肤的像素替换成了对应的双边滤波后的像素。使用双边滤波能够使滤波算法在处理人脸皮肤时不对其它器官如嘴唇眼睛眉毛等造成影响同时不会干扰到背景。 注意滑动窗口的大小和双边方差的参数不宜设置的过大否则会造成磨皮效果模糊或者过于磨皮。 同时设置过小磨皮效果不明显我们使用的是参数是15*3这样可以很好的实现我们想要的效果。 4.背景虚化 利用图像处理算法中的均值滤波处理风景图片使风景图片变得模糊实现背景虚化。然后再利用cv2.resize方法将风景图片尺寸调整为与人像图片一致便于之后进行人像迁移。 5.图像二值化处理 获取纯色背景的RGB值遍历整张图片颜色接近背景颜色的像素点置为1其余部分置为0。 同时我也想到了第二种方法就是额外准备一张没有人像的纯色背景的图片将原始图片与背景图片做减法并取绝对值背景部分两张图片RGB值相似相减后趋近于0其余部分不为0。这里注意的是由于设备原因使用手机拍摄的背景图会因人像的离开而自动补光改变亮度故在这里额外使用了亮度增强算法将转化为HSI空间的背景图I通道乘系数1.25再转回RGB空间实现亮度补足。相减后将近似于0的像素点置为1其余部分置为0实现图片二值化操作。 6.人像迁移 首先将上述二值化图片进行中值滤波处理去除一些可能存在的噪声点黑色区域中的白色点或白色区域中的黑色点然后进行腐蚀操作去毛刺儿腐蚀边界一定的腐蚀膨胀操作使人像更加贴合。将二值化图片中人像部分置为1其余部分置为0与原始图片相乘后即可得到背景为黑色人像部分正常的图片。 将虚化后的风景图片与人像部分为0、背景部分为1的二值图相乘即可得到人像区域置为黑色的风景图。再将该图与上一步得到的背景为黑、人像不变的图片相加即可得到人像迁移后的图片。 四、实验结果 1.原图、空间直方图均衡化后图像 图1 原图(左)、I空间直方图均衡化后图像(右)对比图 2.美颜后的人物图像与更改后的风景图像 图2、图3美颜后的人物图像左与更改尺寸并虚化后的风景图像右 3.人像二值图 图4、图5 经过图像处理的人像二值图 4.人像迁移图 图6、图7 人像部分为黑风景图(左)与人像迁移图(右) 五、结果分析 对亮度空间进行直方图均衡化操作后人脸部分亮度明显增强一些特征更加清晰可辨说明图像增强效果良好。人像图片的二值化处理但相较于法二法一只能够对单一纯色背景进行操作若背景中有噪声点(如白墙上的黑色污渍等)效果就会变差。但对于本次实验而言我们采用的是方法一因为我们的背景完全是白色我们便可以十分准确地得到我们想要的效果。人像迁移的过程中可能存在白边这时使用腐蚀膨胀操作将人像收缩可实现消除白边的操作。最后人像迁移效果良好。 六、附录代码 # Time : 2022/10/31 16:18 # Author : 是Dream呀 # File : 图像增强与合成.py import cv2 import numpy as np# 图片展示函数 def show(name, img):cv2.imshow(name, img)cv2.waitKey(0)cv2.destroyAllWindows()# 1.自适应直方图均衡化进行图像增强 def hist(image):img image.copy()# 先转换到 HSI 色彩空间再将处理后的结果转换到 RGB 色彩空间。img cv2.cvtColor(img, cv2.COLOR_BGR2HLS)I img[:, :, 1]clahe cv2.createCLAHE(clipLimit1) # 自适应直方图均衡化img[:, :, 1] clahe.apply(img[:, :, 1]) # 将cv2.createCLAHE应用到每个通道上。show(Equalization, np.hstack((I, img[:, :, 1])))img cv2.cvtColor(img, cv2.COLOR_HLS2BGR)return imgIMG cv2.imread(1.png) IMG cv2.resize(IMG, (422,496)) show(Original image, IMG) IMG_new hist(IMG) # 自适应直方图均衡化进行图像增强 show(Contrast, np.hstack((IMG, IMG_new))) cv2.imwrite(img1.jpg, np.hstack((IMG, IMG_new)))# 2.图像美化 # 双边滤波 dst cv2.bilateralFilter(IMG_new, 15, 35, 35) show(Beauty, dst) cv2.imwrite(img2.jpg, dst)# 3.利用图像处理算法处理风景图片使风景图片变得模糊实现背景虚化 test cv2.imread(2.png) test cv2.blur(test, (9, 9)) # 使用均值滤波处理 test cv2.resize(test, (422,496)) # 将风景图片尺寸调整为与人像图片一致 show(Falsification, test) cv2.imwrite(img3.jpg, test)# 4.对图像进行二值化处理 img IMG.copy() print(len(img)) print(len(img[0])) print(len(img[1])) for i in range(len(img)): # 获取纯色背景的RGB值遍历整张图片for j in range(len(img[1])):if 255 IMG[i][j][0] and 255 IMG[i][j][1] and 255 IMG[i][j][2]: # 颜色接近背景颜色的像素点置为1其余部分置为0img[i][j] 255else:img[i][j] 0# 5.人像迁移 # 中值滤波处理 img cv2.medianBlur(img, 3) # 先进行腐蚀操作再做膨胀操作 kernel np.ones((3, 3), np.uint8) # 腐蚀操作去毛刺儿腐蚀边界 img cv2.dilate(img, kernel, iterations1) show(Handle, img) cv2.imwrite(img4.jpg, img)img_t np.where(img 0, 1, 0) # 人像部分置为1其余部分置为0 img np.uint8(img_t * IMG_new) # 与原始图片相乘 show(Opposite Handle, img) cv2.imwrite(img5.jpg, img) # 背景为黑、人像不变的图片# 像素值0和1交换 等价于img_t np.where(img_t 0, 1, 0) img_t np.where(img_t 1, 2, img_t) img_t np.where(img_t 0, 1, img_t) img_t np.where(img_t 2, 0, img_t) test np.uint8(test * img_t) # 得到人像区域置为黑色的风景图 show(Processed landscape map,test) cv2.imwrite(img6.jpg,test)# 相加得到迁移后的图像 test test img show(Transfer, test) cv2.imwrite(img7.jpg, test)七、实验报告 这里是完整的实验报告–图像处理实战–Opencv实现人像迁移完整实验报告需要的同学自行取走~ 好啦这就是今天要分享给大家的全部内容了我们下期再见 ❤️❤️❤️如果你喜欢的话就不要吝惜你的一键三连了~
http://www.pierceye.com/news/520258/

相关文章:

  • 东莞做网站软件嘉兴网站制作价格
  • 学网站建设 去那里合肥专业网站优化
  • 个人网站 备案 广告建设国际网站
  • 苏州建站推广公司做网站费用怎么记分录
  • 做的比较好的家具网站首页在win10下建设网站
  • 住房和城乡建设部网站 绿地网站备案有时间吗
  • 新开传奇手游新服网谷歌seo运营
  • 新河网站建设网站空间 jsp
  • 网站视频如何下载中国建盏
  • 做网站的叫什么软件细谈电商网站外链建设的策略
  • 免费网站制作视频教程广东东莞营销
  • 女生做网站运营累不累贵州省铁路建设办公室网站
  • 全球外贸网站排名go生物网站做蛋白定位
  • 网站的规划和建设方案中教在线3d建模培训
  • 禾天姿网站开发设计上海官网
  • 个人备案后可以做电影网站吗做网站要注意哪些问题
  • 为什么我的网站在百度搜不到登封郑州网站建设
  • 中国建设部网站能查叉车证wordpress预览
  • 域名申请网页制作网站建设和外国人做古玩生意的网站
  • win7用自己ip做网站邯郸营销型网站建设
  • 织梦免费网站模块下载地址加强网站建设技术培训
  • 网站源码商城建设成都建站优化
  • 网站销售如何做业绩狗狗和人做网站
  • dede 手机站 怎么获取跳转网站安卓软件开发环境
  • 个人网站做什么类型好中国网络安全官网
  • 怎样优化网站排名上传到服务器的网站打开是空白
  • 我的世界做皮肤网站企业网站风格
  • 京东网站建设的基本情况做哪类网站赚钱
  • 淘宝上网站建设续费个人网站做什么类型的
  • 牙克石网站建设wordpress 跳过ftp