计算机视觉开源库OpenCV之利用开操作(Opening Operation)修复受损照片方法
计算机视觉开源库OpenCV之利用开操作(Opening Operation)修复受损照片,开运算即为:先腐蚀再膨胀。
原图片,俄罗斯少女,挺漂亮的,但是照片上有白线。我们的任务就是去掉这些白线。。。
修复图片示例代码如下:
#!/usr/bin/env python3import cv2image = cv2.imread("俄罗斯少女.jpg")
cv2.imshow("Src Image", image)rgb = cv2.split(image)kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (3, 3))
b = cv2.morphologyEx(rgb[0], cv2.MORPH_OPEN, kernel)
g = cv2.morphologyEx(rgb[1], cv2.MORPH_OPEN, kernel)
r = cv2.morphologyEx(rgb[2], cv2.MORPH_OPEN, kernel)dst = cv2.merge((b, g, r))
cv2.imshow("Dst Image", dst)cv2.waitKey(0)
cv2.destroyAllWindows()
修复效果图如下:
至此,修复完成。。总体来说,修复效果还是不错的啊~~~
计算机视觉开源库OpenCV之利用开操作(Opening Operation)修复受损照片方法相关推荐
- 计算机视觉开源库OpenCV之绘制轮廓函数cv2.drawContours()介绍
计算机视觉开源库OpenCV之绘制轮廓函数cv2.drawContours(),用于轮廓的绘制或填充. cv2.drawContours(image, contours, contourIdx, co ...
- 计算机视觉开源库OpenCV绘制轮廓,并将轮廓排序~
计算机视觉开源库OpenCV绘制轮廓,并将轮廓排序~示例效果如下: 原图: 示例代码如下: #!/usr/bin/env python3import cv2def sort_contours(cnts ...
- 计算机视觉开源库OpenCV之查找轮廓函数cv2.findContours()介绍
计算机视觉开源库OpenCV之查找轮廓函数cv2.findContours说明如下: 示例代码: #!/usr/bin/env python3import cv2image = cv2.imread( ...
- 计算机视觉开源库OpenCV之图像翻转
计算机视觉开源库OpenCV之图像翻转,包括水平翻转.上下翻转.水平翻转后上下翻转等,函数为为cv2.flip(). 效果如下: 示例代码如下: #!/usr/bin/env python3 impo ...
- 计算机视觉开源库OpenCV形态学morphologyEx函数之开运算和闭运算
数学形态学操作可以分为二值形态学和灰度形态学,灰度形态学由二值形态学扩展而来.数学形态学有2个基本的运算,即腐蚀和膨胀,而腐蚀和膨胀通过结合又形成了开运算和闭运算. 开运算就是先腐蚀再膨胀 kerne ...
- 计算机视觉开源库OpenCV梯度之Sobel算子
Sobel算子是像素图像边缘检测中最重要的算子之一,在机器学习.数字媒体.计算机视觉等信息科技领域起着举足轻重的作用.在技术上,它是一个离散的一阶差分算子,用来计算图像亮度函数的一阶梯度之近似值.在图 ...
- 计算机视觉开源库OpenCV之平滑、模糊和滤波
平均模糊:过度模糊图像并忽略重要的边缘 blurred = cv2.blur(image, (kX, kY)) 参数1:模糊对象 参数2:矩阵大小 高斯模糊:保留更多的图像边缘 blurred = c ...
- 计算机视觉-计算机视觉开源库OpenCV基础
1.加载.显示.保存图像 import argparse import cv2ap = argparse.ArgumentParser() ap.add_argument("-i" ...
- 计算机视觉开源库OpenCV之CommandLineParser使用方法
今天看看OpenCV官网教程,发现有CommandLineParser这个类,使用起来还是挺方便的. 示例代码如下: #include <iostream> #include <op ...
最新文章
- Visual Studio 15.7预览版4改进Git、C++支持
- RetinaFace 人脸关键点
- 何为消息队列,为何使用消息队列,有什么消息队列插件
- c语言现代方法16章 基础、课后习题、基础等
- 支付宝的架构到底有多牛逼?还没看完我就跪了!
- 比dropout更好的方法_比较自己的更好方法
- NoSQL数据库的分布式算法
- Windows Server 2008设置远程桌面连接数
- 实验9 面向对象程序设计方法
- Mac 开机慢、反应慢,可清理缓存
- 写给安卓软件工程师的3条建议,全套教学资料
- Web在线报表设计器使用指南
- 前端javascript常见问题总结
- Spark开发环境搭建
- win10找不到你的相机,错误代码0xA00F4244解决办法
- 分布式理论 C++11 Kafka
- 史上最全的各类奖学金、各种称号、各种职位中英文对照
- Gradle教程 Spring源码编译
- Vue3+TS+Vite无法使用require导入图片的解决方法
- matlab定义多维数组长度,matlab如何定义三维数组