import cv2 # 导入OpenCV-Python模块
import os # 导入文件与系统模块
import numpy as np # 导入数值计算库
'''
* 功能:为图片应用卡通动漫滤镜,并且保存图片到指定路径
* filein:要应用滤镜的图片的路径
* picture_name:要应用滤镜的图片的文件名
'''
def filter(filein,picture_name):
imgI_filename = os.path.join(filein,picture_name) # 源文件路径
imgO_filename = os.path.join(r'out', picture_name) # 目标文件路径
img_rgb = cv2.imread(imgI_filename) # 读取图片
# 转换为灰度并且使其产生中等的模糊
img_gray = cv2.cvtColor(img_rgb, cv2.COLOR_RGB2GRAY)
img_blur = cv2.medianBlur(img_gray, 5) # 值越大越模糊(取奇数)
#检测到边缘并且增强其效果
img_edge = cv2.adaptiveThreshold(img_blur,128,
cv2.ADAPTIVE_THRESH_MEAN_C,
cv2.THRESH_BINARY,
blockSize=9,
C=8)
img_edge = cv2.cvtColor(img_edge, cv2.COLOR_GRAY2RGB) #彩色图像转为灰度图像
img_cartoon = cv2.bitwise_and(img_rgb, img_edge) # 灰度图像转为彩色图像
# 调整亮度和对比度
res = np.uint8(np.clip((2.0 * img_cartoon + 16), 0, 255))
# 保存转换后的图片
cv2.imwrite(imgO_filename, res)
if __name__ == '__main__':
imagelist = [] # 创建空列表
#循环读取指定路径下的文件名
for filename in os.listdir(r'in/'):
imagelist.append(filename) #将文件名添加到imagelist
print(filename)
filter(r'in',filename) # 为图片应用卡通动漫滤镜
douluo998
- 粉丝: 2138
- 资源: 5357
最新资源
- Navicat.zip
- 麻雀搜索算法(SSA)文章复现:《基于混沌麻雀搜索算法的无人机航迹规划方法-汤安迪》 策略为:立方混沌+反向学习初始化种群+反向精英策略改进发现者策略+正余弦算法改进加入者策略+动态调整警觉者
- “田园风光在线”:打造村旅游信息平台
- Ollama.zip大模型
- 土地利用/土地覆盖数据(蚌埠市)对应代码表
- 基于Unity 3D的旅游景点漫游设计
- 基于混沌-高斯变异-麻雀搜索算法(CGSSA)优化BP神经网络(CGSSA-BP)的回归预测(含优化前后对比)MATLAB代码 代码注释清楚 main为主程序,可以读取EXCEL数据 很方便
- xyy_localhost-2024_12_24_14_32_06-dump.sql
- C++模板与泛型编程入门教程:代码重用与类型安全
- 面向对象编程语言Objective-C基础语法详解及应用
- MATLAB在ThingSpeak中应用信号处理与数据可视化的技术实现
- VMware.zip虚拟机
- CFA知识点梳理系列:CFA Level II, Reading 6 Economic Growth
- goland 2024直接使用到2099年
- SecureCRT-9.6.0-mac
- Python 自动办公- Python分类汇总278张Excel表中的数据 Python源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈