首页 > 编程 > Python > 正文

python模糊图片过滤的方法

2020-01-04 13:49:46
字体:
来源:转载
供稿:网友

最近在做人脸识别清洗样本的工作,发现经过人脸对齐后存在部分图片十分模糊,所以用opencv滤了一下。

原理就是使用了cv2.Laplacian()这个方法,代码如下。图片越模糊,imageVar的值越小,图像越模糊。

#-*-coding:utf-8-*-import sysreload(sys)sys.setdefaultencoding('utf-8')import osimport cv2import shutilTHRESHOLD = 30.0dst_root = r'/media/unionpay/0009FFAB000A9861/CASIA&KFZX_CLEAR'for fpath, dirs, fs in os.walk('/media/unionpay/0009FFAB000A9861/CASIA&KFZX'): i = 0 for dir in dirs:  i += 1  if i%100 == 0:   print (str(i)+'folders processed current:'+dir)  abs_dir = os.path.join(fpath, dir)  for _, __, fs in os.walk(abs_dir):   clear_img_list = []   for f in fs:    item = os.path.join(_, f)    image = cv2.imread(os.path.join("/media/unionpay/0009FFAB000A9861/CASIA&KFZX/0000447", item))    gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)    imageVar = cv2.Laplacian(gray, cv2.CV_64F).var()    if not imageVar < THRESHOLD:     clear_img_list.append(item)   dst_folder = os.path.join(dst_root, dir)   if len(clear_img_list) >= 15:    if not os.path.exists(dst_folder):     os.mkdir(dst_folder)    for item in clear_img_list:     dst_path = os.path.join(dst_folder, item.split('/')[-1])     shutil.copy(item, dst_path)

以上这篇python模糊图片过滤的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持VEVB武林网。


注:相关教程知识阅读请移步到python教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表