【图像处理】——正装照换底色Python
import cv2
import numpy as np
# 读取照片
img=cv2.imread("personalPic.jpg")# 图像缩放
img = cv2.resize(img,None,fx=0.3,fy=0.3)
rows,cols,channels = img.shape
print(rows,cols,channels)# img_medianBlur=cv2.medianBlur(img,3) # 中值滤波,必须是大于1的奇数,如3、5、7…
# cv2.namedWindow('median', cv2.WINDOW_NORMAL) #此配置名称为median窗口可手动改变大小
# cv2.namedWindow('median', cv2.WINDOW_AUTOSIZE)
# cv2.imshow("median",img_medianBlur)# 显示原始图像
cv2.imshow('img',img)# 图片转换为灰度图
hsv = cv2.cvtColor(img,cv2.COLOR_BGR2HSV)# 显示灰度图像
cv2.imshow('hsv',hsv)# 图片的二值化处理,可能会出现噪声(白点),有的图片显示的很明显,这就需要我们进行腐蚀或膨胀。
lower_blue = np.array([70,70,70])
upper_blue = np.array([110,255,255])
mask = cv2.inRange(hsv, lower_blue, upper_blue) #蓝色范围内变白,其余之外全部变黑# 显示二值化处理图像
cv2.imshow('mask',mask)#腐蚀膨胀,主要用于去处噪声
erode=cv2.erode(mask,None,iterations=1) #进行腐蚀操作#显示腐蚀后的图片
cv2.imshow('erode',erode)dilate=cv2.dilate(erode,None,iterations=1) #进行膨胀操作#显示膨胀后的图片
cv2.imshow('dilate',dilate)#遍历每个像素点,进行颜色的替换
for i in range(rows):for j in range(cols):if erode[i,j]==255: # 像素点为255表示的是白色,此处将白色处的像素点替换为红色(将if dilate[i,j]==255中的dilate换成erode对比试试)img[i,j]=(0,0,255) # 此行将蓝底替换成红底,即(0,0,255)代表红色,由于历史原因,为BGR(蓝绿红)通道,不是RGB(红绿蓝)通道,所以255放第三个位置
#img = cv2.flip(img, 1) #图像反转 1水平翻转 0垂直翻转 -1水平垂直翻转
cv2.imshow('red',img)# 窗口等待的命令,0表示无限等待
k = cv2.waitKey(0) #监听键盘事件
if k == ord('s'): #英文状态下键盘按s键,会将图片保存至桌面font = cv2.FONT_HERSHEY_DUPLEX#参数依次为:涂鸦的图片、涂鸦的文字、位置、字体、字体大小、字体颜色、字体画笔粗细# img = cv2.putText(img,"girl",(10,30),font,0.5,(0,0,0),2)cv2.imwrite("Blue2Red2.jpg",img, [int(cv2.IMWRITE_JPEG_QUALITY),100])cv2.destroyWindow('red') #保存完后销毁名称为red的窗口
else:cv2.destroyAllWindows()
【图像处理】——正装照换底色Python相关推荐
- java-正装照换底色小demo-技术分享
文章目录 前言 java-正装照换底色小demo-技术分享 01 实现思路 02 效果 02::01 原图: 02::02 执行单元测试: 02::03 效果: 03 编码实现 前言 如果您觉得有 ...
- 【项目实战】——Python打包正装换底色代码为exe文件(可在其他无Python环境下运行)
目录 1.安装pyinstaller 2.生成.exe文件 方法1: 方法2: 方法3: (1)使用命令行窗口进入项目的根目录 (2)在改目录下执行pyi-makespec main.py(main. ...
- OpenCV实现照片换底色处理
目录 1.导言 2.引言 3.代码分析 4.优化改进 5.总结 1.导言 在图像处理领域,OpenCV是一款强大而广泛应用的开源库,能够提供丰富的图像处理和计算机视觉功能.本篇博客将介绍如何利用Qt ...
- python换照片底色_Python 利用OpenCV给照片换底色的示例代码
OpenCV的全称是:Open Source Computer Vision Library.OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux.Windows和M ...
- Python 教你用OpenCV实现给照片换底色
文章目录 1. 读入并显示图片 2. 缩放图片 3. 彩色图像转换为灰度图像 4. 图片二值化处理 5. 图像的腐蚀和膨胀 6. 遍历像素点进行颜色替换 7. 其他说明 OpenCV的全称是:Open ...
- 使用Python制作一个照片换底色的exe程序文件(详细教程)
文章目录 前言 一.安装相对应的库 二.关于图片处理 1.关于RemoveBg 2.图片处理代码编写 3.窗口图片选择以及提示函数 4.可视化窗口 5.打包成exe程序 写在最后 前言 在校大学生,突 ...
- 基于python的证件照_20行代码教你用python给证件照换底色的方法示例
1.图片来源 该图片来源于百度图片,如果侵权,请联系我删除!图片仅用于知识交流. 2.读取图片并显示 imread():读取图片: imshow():展示图片: waitkey():设置窗口等待,如果 ...
- python如何使用图片做背景_用Python批量给照片换底色,基于opencv模块
现在网上出现了很多在线换底色的网页版工具是这么做的呢?其实用Python就可以实现. 环境要求 Python3 numpy函数库 opencv库 安装 下载适应版本的numpy函数库,我电脑是WIN1 ...
- python换照片底色_详解Python给照片换底色(蓝底换红底)
现在网上出现了很多在线换底色的网页版工具是这么做的呢?其实用Python就可以实现. 环境要求 Python3 numpy函数库 opencv库 安装 下载适应版本的numpy函数库,我电脑是WIN1 ...
最新文章
- python使用numpy的np.fmod函数计算numpy数组除以某一特定数值剩余的余数(remainder)、np.mod函数和np.fmod函数对负值的处理方式有差异
- iBATIS第一部分基础
- java socket 推送机制_Java中websocket消息推送的实现代码
- google i/o_Google I / O 2017最有希望的突破
- Python——使用matplotlib绘制柱状图
- SpringBoot入门篇--整合mybatis+generator自动生成代码+druid连接池+PageHelper分页插件
- linux-03-Vim使用+账号用户管理
- SPARK全栈 全流程 大数据实战 之 技术选型篇
- python简短语法_python 简单语法入门
- 爱奇艺、优酷、腾讯独播内容均超70%,如果只能三选一,哪家会员最值得买?
- Codeforces Round #441 (Div. 2, by Moscow Team Olympiad)
- linux之我常用的系统重要文件备份命令
- socket编程:简单TCP服务器/客户端编程
- 思科GNS3和华为eNSP完美结合
- 关于quartus ii 破解失败的问题
- SecureCRT资源下载安装
- CRMEB多商户版跨域问题解决
- Zabbix Database error
- 虎牙直播怎么换html5,虎牙直播助手怎么改名字 昵称更换方法
- 我的科四刷题笔记,记完就能过