参考文章1:python判断图片模糊

参考文章2:3行代码Python搞定图片清晰度识别,原来我们看到的不一定是这样的

示例代码

# -*- encoding: utf-8 -*-
"""
@File    : judge_the_picture_blur.py
@Time    : 2019/10/25 8:52
@Author  : Dontla
@Email   : sxana@qq.com
@Software: PyCharm
"""
import cv2
import os# 返回指定路径图像的拉普拉斯算子边缘模糊程度值
def getImageVar(img_path):image = cv2.imread(img_path)img2gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)imageVar = cv2.Laplacian(img2gray, cv2.CV_64F).var()return imageVar# 返回给定文件夹下所有图片的路径列表
def listFolderImgPath(folder_img_path):img_path_list = []for filename in os.listdir(folder_img_path):filepath = os.path.join(folder_img_path, filename)img_path_list.append(filepath)return img_path_list# 给单张图片添加文字(图片路径,文字)
def writeText(img_path, text):# 加载背景图片# img的类型是np.ndarray数组img = cv2.imread(img_path)# 在图片上添加文字信息# 颜色参数值可用颜色拾取器获取((255,255,255)为纯白色)# 最后一个参数bottomLeftOrigin如果设置为True,那么添加的文字是上下颠倒的composite_img = cv2.putText(img, text, (100, 680), cv2.FONT_HERSHEY_SIMPLEX,2.0, (255, 255, 255), 5, cv2.LINE_AA, False)cv2.imwrite(img_path, composite_img)# 文件夹路径
folder_img_path = '../../imgs/'# 图片路径
img_path = '../../imgs/f_cotton-g_top (813).jpg'# print(getImageVar(img_path))# print(listFolderImgPath(folder_img_path))# 获取图片路径列表
img_path_list = listFolderImgPath(folder_img_path)# 循环处理每张图片
for img_path in img_path_list:# 获取该张图片模糊值imageVar = getImageVar(img_path)# 创建需写入文字信息text = 'The fuzzy is: {:.2f}'.format(imageVar)# 将文字写入图片writeText(img_path, text)# img = cv2.imread(img_path)# cv2.namedWindow('image', cv2.WINDOW_AUTOSIZE)# cv2.imshow('image', img)# cv2.waitKey(1)

功能

将上上级imgs文件夹中的2000图片判断其模糊程度,将结果直接写入到图片上

运行结果



在采集图像时加入此检测代码,能大大提高我们的采集效率与图片的质量。

python opencv 如何检测模糊图像?自动判断模糊程度 cv2.Laplacian().var()相关推荐

  1. Python OpenCv 车牌检测识别(边缘检测、HSV色彩空间判断)

    Python OpenCv 车牌检测识别 背景 车牌识别在交通.停车等方面有着广泛应用,在网上也有很多种基于OpenCV方案进行识别,本文是综合了两种比较流行的方案,首先是提取出疑似车牌区域的轮廓,然 ...

  2. python Opencv和pyautogui实现自动识图点击

    python Opencv和pyautogui实现自动识图点击 1.导入python及其他模块 匹配类是上一章博客内容,pyautogui自带的图片匹配效果不是很理想.就使用Opencv的图片匹配来实 ...

  3. python+OpenCV视频检测+代码以及注解

    这部分是关于检测摄像头中的人脸,以及对mp4中的文件人脸检测,上代码: #导入cv模块 import cv2 as cv #检测函数 def face_detect_demo(img):gary = ...

  4. Python OpenCV -- 轮廓检测 (十四)

    轮廓检测 Canny 之类的边缘检测算法可以根据像素间的差异检测出轮廓边界,但是它并没有将轮廓作为一个整体 轮廓是构成任何一个形状的边界或外形线.直方图对比和模板匹配根据色彩的分布来进行匹配,以下包括 ...

  5. python opencv 如何给图片添加文字?cv2.putText() PIL

    参考文章1:python如何在图片上添加文字(中文和英文)Python在图片上添加文字的两种方法:OpenCV和PIL 参考文章2:python之------如何在图片上面添加文字(多种类型的文字)[ ...

  6. python opencv sobel_OpenCV实战(一): Sobel、Laplacian、Canny 边缘检测

    简述 OpenCV边缘检测的一般步骤为: 滤波 增强 检测 常用的边缘检测的算子和滤波器有: Sobel算子 Laplacian算子 Canny算子 Scharr滤波器 以下使用Sobel.Lapla ...

  7. python opencv 肤色检测

    附上我自己的实例代码 基于运动信息和肤色检测的手位置检测 基于深度学习的asl手语识别例程 1 椭圆肤色检测模型 原理:将RGB图像转换到YCRCB空间,肤色像素点会聚集到一个椭圆区域.先定义一个椭圆 ...

  8. python opencv轮廓检测_OpenCV 轮廓检测的实现方法

    轮廓概述 轮廓可以简单认为成将连续的点(连着边界)连在一起的曲线,具有相同的颜色或者灰度.轮廓在形状分析和物体的检测和识别中很有用. 为了更加准确,要使用二值化图像.在寻找轮廓之前,要进行阈值化处理或 ...

  9. Python OpenCV 交互式前景提取 自动抠图

    这是需要抠图的原图像,文件名为 "messi5.jpg" 使用矩形方式处理: # -*- coding: utf-8 -*-import numpy as np import cv ...

最新文章

  1. Unity 3D学习视觉脚本无需编码即可创建高级游戏
  2. 阻塞与非阻塞的IO网络读写
  3. Web 2.0技术对SEO的影响
  4. python __reduce__魔法方法_关于python魔术方法payload:.__class__.__mro__[2].__subclasses__()[40](/etc/passwd...
  5. Windows CE 6.0 安装顺序
  6. 开发者应如何看待iOS平台和Android平台
  7. Codeforces Beta Round #2--B题 (DP)
  8. js中的json ajax,js结合json实现ajax简单实例
  9. libsvm回归参数寻优cgp_【lightgbm/xgboost/nn代码整理二】xgboost做二分类,多分类以及回归任务...
  10. 机器学习中的特征建模(特征工程)和算法选型建模 - 以暴力破解识别为例
  11. 2017.7.30 玩具装箱 思考记录
  12. 属性子集选择的基本启发方法_2017.06.29数据挖掘基础概念第二.三章
  13. Java完全参考手册_Java完全参考手册(第8版) ((美)Herbert Schildt) pdf扫描版
  14. otdr测试波形修改软件,AQ7932(OTDR仿真分析软件)
  15. bose蓝牙音箱使用说明_坚果蓝牙耳机说明书 坚果蓝牙耳机使用说明
  16. bzoj-4816,P3704 [SDOI2017]数字表格
  17. 单GPU实现20Hz决策,最新基于序列生成模型的高效轨迹规划方法
  18. Vbox虚拟机无法启动错误Mark
  19. JVM和操作系统的关系是什么?
  20. 收藏的软件测试学习资源

热门文章

  1. android怎么关联geny,Android studio下添加genymotion神器
  2. Emscripten 单词_(第30期:英语教师备课资料) 英文标识记单词 有趣有用又高效...
  3. Excel中去掉单元格中间的空格
  4. 微信公众平台如何启用开发模式
  5. 下巴长痘痘是什么原因?要怎么解决?(实用教程)
  6. CONVERT_DATE_WITH_THRESHOLD
  7. 护航华油信通危化品运输,“共和国长子”背后的数字化力量
  8. 摩托罗拉能否追回逝去的那些年?
  9. 洽洽三只松鼠良品铺子,到底谁能笑傲“后坚果时代”?
  10. mysql将权限分为几个层级_MySQL多层级结构-区域表使用树详解