Opencv+Python实现图像运动模糊和高斯模糊的示例


Posted in Python onApril 11, 2019

运动模糊:由于相机和物体之间的相对运动造成的模糊,又称为动态模糊

Opencv+Python实现运动模糊,主要用到的函数是cv2.filter2D()

# coding: utf-8
import numpy as np
import cv2
def motion_blur(image, degree=12, angle=45):
  image = np.array(image)
  # 这里生成任意角度的运动模糊kernel的矩阵, degree越大,模糊程度越高
  M = cv2.getRotationMatrix2D((degree / 2, degree / 2), angle, 1)
  motion_blur_kernel = np.diag(np.ones(degree))
  motion_blur_kernel = cv2.warpAffine(motion_blur_kernel, M, (degree, degree))
  motion_blur_kernel = motion_blur_kernel / degree
  blurred = cv2.filter2D(image, -1, motion_blur_kernel)
  # convert to uint8
  cv2.normalize(blurred, blurred, 0, 255, cv2.NORM_MINMAX)
  blurred = np.array(blurred, dtype=np.uint8)
  return blurred
img = cv2.imread('./9.jpg')
img_ = motion_blur(img)
cv2.imshow('Source image',img)
cv2.imshow('blur image',img_)
cv2.waitKey()

原图:

Opencv+Python实现图像运动模糊和高斯模糊的示例

运动模糊效果:

Opencv+Python实现图像运动模糊和高斯模糊的示例

高斯模糊:图像与二维高斯分布的概率密度函数做卷积,模糊图像细节

Opencv+Python实现高斯模糊,主要用到的函数是cv2.GaussianBlur():

# coding: utf-8
import numpy as np
import cv2
img = cv2.imread('./9.jpg')
img_ = cv2.GaussianBlur(img, ksize=(9, 9), sigmaX=0, sigmaY=0)
cv2.imshow('Source image',img)
cv2.imshow('blur image',img_)
cv2.waitKey()

高斯模糊效果:

Opencv+Python实现图像运动模糊和高斯模糊的示例

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
python发送邮件示例(支持中文邮件标题)
Feb 16 Python
python实现定制交互式命令行的方法
Jul 03 Python
对Python的Django框架中的项目进行单元测试的方法
Apr 11 Python
对python 各种删除文件失败的处理方式分享
Apr 24 Python
深入分析python中整型不会溢出问题
Jun 18 Python
基于数据归一化以及Python实现方式
Jul 11 Python
Linux下python3.6.1环境配置教程
Sep 26 Python
在python中pandas读文件,有中文字符的方法
Dec 12 Python
Python之NumPy(axis=0 与axis=1)区分详解
May 27 Python
TensorFlow tf.nn.softmax_cross_entropy_with_logits的用法
Apr 19 Python
Python实现将元组中的元素作为参数传入函数的操作
Jun 05 Python
如何在windows下安装配置python工具Ulipad
Oct 27 Python
详解python执行shell脚本创建用户及相关操作
Apr 11 #Python
python中aioysql(异步操作MySQL)的方法
Apr 11 #Python
很酷的python表白工具 你喜欢我吗
Apr 11 #Python
2019 Python最新面试题及答案16道题
Apr 11 #Python
【python】matplotlib动态显示详解
Apr 11 #Python
python爬虫之验证码篇3-滑动验证码识别技术
Apr 11 #Python
Pyqt5如何让QMessageBox按钮显示中文示例代码
Apr 11 #Python
You might like
php foreach 使用&(与运算符)引用赋值要注意的问题
2010/02/16 PHP
PHP error_log()将错误信息写入一个文件(定义和用法)
2013/10/25 PHP
PHP curl使用实例
2015/07/02 PHP
php版本CKEditor 4和CKFinder安装及配置方法图文教程
2019/06/05 PHP
javaScript对象和属性的创建方法
2007/01/15 Javascript
JS随即打乱数组实现代码
2012/12/03 Javascript
ScrollDown的基本操作示例
2013/06/09 Javascript
javascript表达式和运算符详解
2017/02/07 Javascript
VSCode搭建Vue项目的方法
2020/04/30 Javascript
Python实现提取文章摘要的方法
2015/04/21 Python
Python字符串详细介绍
2015/05/09 Python
详解python中的json的基本使用方法
2016/12/21 Python
python通过opencv实现批量剪切图片
2017/11/13 Python
详解Python 协程的详细用法使用和例子
2018/06/15 Python
eclipse创建python项目步骤详解
2019/05/10 Python
Python使用指定端口进行http请求的例子
2019/07/25 Python
利用python计算windows全盘文件md5值的脚本
2019/07/27 Python
DJANGO-URL反向解析REVERSE实例讲解
2019/10/25 Python
利用python实现AR教程
2019/11/20 Python
学习Python爬虫的几点建议
2020/08/05 Python
python实现邮件循环自动发件功能
2020/09/11 Python
美国最顶级的精品店之一:Hampden Clothing
2016/12/22 全球购物
法国亚马逊官方网站:Amazon.fr
2020/12/19 全球购物
关联、聚合(Aggregation)以及组合(Composition)的区别
2012/02/29 面试题
化工工艺专业求职信
2013/09/22 职场文书
护理专业个人求职简历的自我评价
2013/10/13 职场文书
会展策划与管理专业大学生职业生涯规划
2014/02/07 职场文书
大学生活动总结怎么写
2014/04/29 职场文书
管理提升方案
2014/06/04 职场文书
公司口号大全
2014/06/11 职场文书
美化环境标语
2014/06/20 职场文书
不遵守课堂纪律的检讨书
2014/09/24 职场文书
群众对十八届四中全会的期盼
2014/10/17 职场文书
湖南省召开党的群众路线教育实践活动总结大会报告
2014/10/21 职场文书
2014年教学管理工作总结
2014/12/02 职场文书
解析高可用Redis服务架构分析与搭建方案
2021/06/20 Redis