图像修复技术原理:利用已被破坏的边缘,即边缘的颜色和结构,繁殖和混合到损坏的图像中,已达到图像修补的目的。

运用场合:在实际运用中,图像常常会被噪声腐蚀,这些噪声有可能是镜头上的灰尘、水滴,或者是旧图片的划痕,而解决这些问题的良方,就是“图像修复”

void inpaint( InputArray src, InputArray inpaintMask,OutputArray dst, double inpaintRadius, int flags );
  • 第一个参数src,输入的单通道或三通道图像;
  • 第二个参数inpaintMask,图像的掩码,单通道图像,大小跟原图像一致,inpaintMask图像上除了需要修复的部分之外其他部分的像素值全部为0;
  • 第三个参数dst,输出的经过修复的图像;
  • 第四个参数inpaintRadius,修复算法取的邻域半径,用于计算当前像素点的差值;
  • 第五个参数flags,修复算法,有两种:INPAINT_NS 和I NPAINT_TELEA;

注意:使用inpaint函数需要包括此头文件

#include <opencv2/photo/photo.hpp>

代码:

#include<opencv2/core.hpp>
#include<opencv2/highgui.hpp>
#include<opencv2/imgproc.hpp>
#include<iostream>
#include <opencv2/photo/photo.hpp>//使用inpaint函数需要包括的头文件
using namespace cv;
using namespace std;
int main()
{Mat src=imread("1.png");Mat src_gray,dst;imshow("原图",src);//图像预处理cvtColor(src,src_gray,COLOR_RGB2GRAY);GaussianBlur(src_gray,dst,Size(5,5),10,10);Mat mask = Mat(src.size(), CV_8UC1, Scalar::all(0));threshold(dst,mask,185,100,4);imshow("二值图",mask);//图像修补inpaint(src,mask,dst,3,INPAINT_TELEA);imshow("效果图",dst);waitKey(0);return 0;
}

opencv图像修补-inpaint函数相关推荐

  1. OpenCV3之——图像修补inpaint()函数

    #include <opencv2/opencv.hpp> #include <iostream> using namespace std; using namespace c ...

  2. OpenCV4.5.5学习笔记(十七):分水岭算法watershed(),图像修补inpaint()

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.分水岭算法watershed() 二.图像修补inpaint() 总结 前言 笔者本科时候有幸接触了OpenCV3 ...

  3. OpenCV图像修补

    OpenCV图像修补 图像修补 介绍 基本 例子 图像修补 介绍 在本教程中,我们将展示如何使用算法快速频率​​选择性重建(FSR)进行图像修复. 基本 图像修复是重建图像的损坏或缺失部分的过程.这是 ...

  4. 【Python+OpenCV 图像透视变换 warpPerspective函数】

    Python+OpenCV 图像透视变换 warpPerspective函数 1.函数介绍 2.代码实例 3.实现效果 1.函数介绍 warpPerspective():对图像进行透视变换.简单来说, ...

  5. cv2图像修补inpaint

    本篇博客主要介绍cv2模块中的图像修补inpaint. cv2中主要提供了两种进行图像修补的算法: 1.基于快速行进算法 cv2.INPAINT_TELEA. 2.基于流体动力学并使用了偏微分方程 c ...

  6. OpenCV3学习(5.2)——图像修复inpaint函数和图像去噪fastNlMeansDenoising系列函数

    inpaint图像修复 利用inpaint函数进行图像修复.函数原型: CV_EXPORTS_W void inpaint( InputArray src, InputArray inpaintMas ...

  7. OpenCV图像发现轮廓函数findContours()的使用

    OPenCV版本:4.4 IDE:VS2017 功能描述 简述:在一个二进制图像里发现轮廓. 函数在二进制图像中使用Suzuki85算法获取轮廓.轮廓对形状分析和目标检测与识别是一个有用的工具,用法见 ...

  8. opencv 图像修复 inpaint()

    #include "opencv2/highgui/highgui.hpp" #include "opencv2/imgproc/imgproc.hpp" #i ...

  9. opencv之分水岭算法分割及图像修补

    1)分水岭算法 原理: 任何一幅灰度图像都可以被看成是拓扑平面,灰度值高的区域可以被看成是山峰,灰度值低的区域可以被看成是山谷,我们向每一个山谷中灌不同颜色的水,随着水位的升高,不同山谷的水就会相遇汇 ...

最新文章

  1. 微信python天天学_刚学Python一礼拜!我就能模拟登录微信公众号!我是天才吧!...
  2. 全国大学生智能汽车竞赛浙江赛区选拔赛疫情防控工作预案
  3. python保留字的基本含义-python 33个保留字是什么意思
  4. 数据结构与算法(C++版)
  5. 谨慎全面地对待“滞销”
  6. 重要提醒!北京下周出行必看!十一假期出行高峰是哪天?
  7. LeetCode-234. 回文链表(C语言)
  8. CVPR 2020 论文大盘点—目标跟踪篇
  9. Linux 安装 nginx 服务教程
  10. 关于本博客的feed订阅
  11. WebSql用法(自我记录)
  12. 神经元人体分布大图,人体的神经元图片
  13. 数天下文章,唯韩愈的《马说》《师说》感触深
  14. 2022-2028全球全盘加密软件行业调研及趋势分析报告
  15. 这几款app疫情期间活跃度为何如此高?方法太可了吧
  16. Android图片添加水印图片并把图片保存到文件存储
  17. c语言遍历 json字符串,全面详解c语言使用cJSON解析JSON字符
  18. LeetCode刷题(37)~无重复字符的最长子串
  19. [Word]基于样式和多级符号编制章节标题
  20. Linux6安装bind错误,CentOS 7.6环境下Bind 9的安装与配置

热门文章

  1. usb_cam的ROS2甜点
  2. 单灯控制器如何实现路灯智能化管理?
  3. DP1.4协议学习(二)Link层功能概述
  4. JDK1.6中文版下载
  5. SC16IS750芯片SPI转串口
  6. ezdml设计数据库
  7. Centos7上Hadoop 3.3.1的高可用HA安装过程
  8. 通往WinDbg的捷径(一)
  9. mysql初始化密码问题
  10. 搅拌釜反应器全自动真空压力(正负压)控制解决方案