首页 > 其他分享 >图像修复

图像修复

时间:2024-10-24 16:45:16浏览次数:7  
标签:compression image imshow 图像 output cv 修复

测试opencv 图像修复函数inpaint

#include <opencv2/opencv.hpp>
#include <iostream>

int main()
{
    //// 加载图像
    // cv::Mat image = cv::imread("D:/material0000.png", cv::IMREAD_UNCHANGED); // 替换为你的图像路径
    // if (image.empty())
    //{//std::cerr << "无法加载图像!" << std::endl;
    //     return -1;
    // }

    //// 创建一个掩码(假定白色为需要填充的空白区域)
    // cv::Mat mask;
    // cv::inRange(image, cv::Scalar(0, 0, 0, 0), cv::Scalar(255, 255, 255, 0), mask); // 检测白色区域

    //// 创建一个新的图像来存储高斯模糊结果
    // cv::Mat blurred;
    //// 应用高斯模糊
    // cv::GaussianBlur(image, blurred, cv::Size(999,999), 0); // 高斯模糊参数可调

    //// 将模糊区域与原图结合
    // cv::Mat output;
    // image.copyTo(output);         // 初始化输出图像为原图
    // blurred.copyTo(output, mask); // 将模糊覆盖到掩码区域

    ///////////////////////////////////////////////////////////////////////////////
    // 加载图像
    cv::Mat image = cv::imread("D:/material0000.png"); // 请替换为你的图像路径 IMREAD_UNCHANGED
    if (image.empty())
    {
        return -1;
    }

    // 创建一个掩码,假设白色区域是需要填充的区域
    cv::Mat mask;
    // 这里假设是填充附近的白色区域,定义你需要的颜色范围
    cv::inRange(image, cv::Scalar(0, 0, 0), cv::Scalar(10, 10, 10), mask); // 检测区域

    // 使用修补算法填充空白区域
    cv::Mat output;
    cv::inpaint(image, mask, output, 3, cv::INPAINT_TELEA); // 使用 Telea 算法

    std::vector<int> compression_params;
    compression_params.push_back(cv::IMWRITE_PNG_COMPRESSION);
    compression_params.push_back(9);
    cv::imwrite("D:/output.png", output);
    // cv::imwrite("D:/output.jpg", output);

    // 显示结果
    // cv::imshow("Original", image);
    // cv::imshow("Blurred Area", blurred);
    // cv::imshow("Output", output);
    // cv::waitKey(0);
    return 0;
}

 

标签:compression,image,imshow,图像,output,cv,修复
From: https://www.cnblogs.com/lovebay/p/18499878

相关文章

  • DirectX Repair(DirectX修复工具)V4.3增强版
    DirectX修复工具(DirectXRepair)是一款系统级工具软件,简便易用。本程序的主要功能是检测当前系统的DirectX状态,如果发现异常则进行修复。程序主要针对0xc000007b问题设计,可以完美修复该问题。本程序中包含了最新版的DirectXredist(Jun2010),并且全部DX文件都有Microsoft的数字......
  • 《苍翼混沌效应》游戏启动提示bdlogmgr.dll文件丢失?简单几步轻松修复
    当您在启动《苍翼混沌效应》(BlazBlue:ChaosEffect)或任何其他游戏时遇到提示丢失bdlogmgr.dll文件的问题,通常这意味着您的游戏缺少了某个重要的动态链接库(DLL)文件。以下是一些可能的解决方法:重新安装游戏尝试卸载游戏,然后从官方渠道重新下载并安装最新版本的游戏。这可以确......
  • 「ComfyUI」增强图像细节只需要一个节点,SD1.5、SDXL、FLUX.1 全支持,简单好用!
    功能很简单,就是增加或者减少图像的细节,节点也很简单,就一个节点,只需要嵌入我们的ComfyUI的基础工作流中就可以了,随插随用。而且该插件不仅支持SD1.5和SDXL,甚至最新出的FLUX.1模型也是支持的哦!好了,话不多说,我们直接开整。我们先来看效果,这里使用的是FLUX.1的模型,......
  • 基于springboot+vue的Hadoop的环境质量数据修复系统设计与实现(源码+lw+部署文档+讲解
    课题摘要基于SpringBoot+Vue的Hadoop环境质量数据修复系统是一个用于处理和修复环境质量数据的强大工具。以下是该系统的设计与实现方案,包括源码、LW(LiveWire)、部署文档和讲解等内容。一、系统概述环境质量数据对于环境保护和决策制定至关重要。然而,由于各种原因......
  • [C++]在windows基于C++编程署yolov11-cls的openvino图像分类模型cmake项目部署演示源
    【算法介绍】在Windows系统上,基于C++编程部署YOLOv11-CLS的OpenVINO图像分类模型,可以通过CMake项目来实现。以下是简要介绍:首先,需要准备开发环境,包括安装OpenVINOToolkit、CMake、OpenCV和C++编译器(如GCC或MSVC)。OpenVINO是英特尔开发的一款用于优化和部署深度学习模型的工具套件,......
  • Halcon图像拼接
    read_image(Image13,'E:/vs//13.png')get_image_size(Image13,Width,Height)gen_rectangle1(Rectangle,0,0,Height,Width/2)reduce_domain(Image13,Rectangle,ImageReduced)crop_domain(ImageReduced,Image1)gen_rectangle1(Rectangle,0,W......
  • python_matlab图像去雾_去雨综述
    图像去雾和去雨是计算机视觉领域的两个重要任务,旨在提高图像质量和可视化效果。本文将综述图像去雾和去雨的算法、理论以及相关项目代码示例。一、图像去雾算法基于暗通道先验的方法:这是广泛应用于图像去雾的经典算法之一。该方法基于一个观察:自然场景中的大多数像素在......
  • Windows Image Acquisition (WIA) 是 Microsoft Windows 操作系统中的一项服务,用于支
    WindowsImageAcquisition(WIA)是MicrosoftWindows操作系统中的一项服务,用于支持与图像设备(如扫描仪、数码相机和其他图像捕捉设备)的交互。WIA提供了一种标准化的接口,使应用程序能够从这些设备获取图像,并进行处理或存储。以下是关于WIA服务的详细信息:主要功能图像设......
  • 从梦想到现实:十年见证AI自动化漏洞修复的演变
    #1024程序员节|征文#2014年的梦想与构想回到2014年,那时的我还在不断学习、探索和思考,如何利用科技力量去创造一个更加安全和高效的数字世界。作为一名初出茅庐的技术爱好者,我深知互联网的发展离不开安全防护,而网站漏洞修复是其中至关重要的一环。于是,我萌生了一个大胆的想法......
  • Photoshop图像算法(四)(代码在每个原理后面)
    色彩均衡化色彩均衡化(或称为直方图均衡化)是一种图像处理技术,目的是改善图像的对比度,使图像中的细节更加明显。它通过重新分配颜色通道的像素值,使得图像的直方图分布更均匀。以下是其基本原理:原理直方图计算:首先计算图像的颜色直方图,即统计每个像素值出现的频率。对于每个......