本工具主要是将彩色图片转换成黑白素描样式图片,给大家好玩下
源码参考了https://www.52pojie.cn/thread-1149417-1-1.html,在此基础上对中文输入路径和输出中文乱码问题进行了改进。
先上效果图(当然是我可爱的书记):
图像转换原理:图片灰度化+反色+高斯模糊+亮化混合
乱码问题解决:中文乱码,取消imread()和imwrite()方法,换用imdecode()和imencode()方法
cv2.imdecode()函数:从指定的内存缓存中读取数据,并把数据转换(解码)成图像格式;主要用于从网络传输数据中恢复出图像。
cv2.imencode()函数:是将图片格式转换(编码)成流数据,赋值到内存缓存中;主要用于图像数据格式的压缩,方便网络传输。
环境:在PyCharm中编译运行,使用Python+OpenCV模块
直接上代码:
# -*- coding:utf-8 -*-
import cv2
import numpy as np
from tkinter import filedialog, Tk
from os import getcwd
from re import findall
def open_path():
# 图片路径
root = Tk()
root.withdraw()
file_path = (filedialog.askopenfilename(title='选择图片文件', filetypes=[('All Files', '*')])