OpenCV计算摄影学(20)非真实感渲染之增强图像的细节函数detailEnhance()

embedded/2025/3/18 15:54:32/
  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

此滤波器增强特定图像的细节。
cv::detailEnhance用于增强图像的细节,通过结合空间域和频率域的处理,提升图像中特定细节的清晰度和对比度。其核心原理基于多尺度Retinex算法(Multi-Scale Retinex),通过多尺度高斯滤波和加权平均,突出图像的细节信息。

函数原型

void cv::detailEnhance
( 	InputArray  	src,OutputArray  	dst,float  	sigma_s = 10,float  	sigma_r = 0.15f 
) 		

参数

  • 参数src 输入8位三通道图像。

  • 参数dst 与src具有相同尺寸和类型的输出图像。

  • 参数sigma_s 范围在0到200之间。

  • 参数sigma_r 范围在0到1之间。

代码示例

#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;int main()
{// 读取输入图像Mat src = imread( "/media/dingxin/data/study/OpenCV/sources/images/jiangnan.jpg" );if ( src.empty() ){cout << "无法读取图像!" << endl;return -1;}Mat dst;// 正确调用方式:按顺序传递数值detailEnhance(src, dst, 20, 0.3);  // sigma_s=20, sigma_r=0.3imshow("Original", src);imshow("Enhanced", dst);waitKey(0);return 0;
}

运行结果

在这里插入图片描述


http://www.ppmy.cn/embedded/173629.html

相关文章

使用DeepSeek完成一个简单嵌入式开发

开启DeepSeek对话 请帮我使用Altium Designer设计原理图、PCB&#xff0c;使用keil完成代码编写&#xff1b;要求&#xff1a;使用stm32F103RCT6为主控芯片&#xff0c;控制3个流水灯的原理图 这里需要注意&#xff0c;每次DeepSeek的回答都不太一样。 DeepSeek回答 以下是使…

鸿蒙 @ohos.arkui.drawableDescriptor (DrawableDescriptor)

鸿蒙 ohos.arkui.drawableDescriptor (DrawableDescriptor) 在鸿蒙开发中&#xff0c;ohos.arkui.drawableDescriptor 模块提供了一种强大的方式来处理图片资源&#xff0c;包括普通图片和分层图片&#xff08;LayeredDrawableDescriptor&#xff09;。通过这个模块&#xff0…

Anthropic 的模型

Anthropic 的模型&#xff08;特别是 Claude 系列&#xff09;之所以在性能和推理能力上表现强劲&#xff0c;可以从技术设计、研究理念、训练方法以及应用优化等多个方面进行详细分析。以下是基于当前信息&#xff08;截至 2025 年 3 月 13 日&#xff09;和行业趋势的深入剖析…

网络安全防护架构有哪些 网络安全防护措施包括

网络安全预防措施 网安措施 计算机网络安全措施主要包括保护网络安全、保护应用服务安全和保护系统安全三个方面&#xff0c;各个方面都要结合考虑安全防护的物理安全、防火墙、信息安全、Web安全、媒体安全等等。 (一)保护网络安全。 网络安全是为保护商务各方网络端系统之…

图论——广度优先搜索实现

99. 岛屿数量 题目描述 给定一个由 1(陆地)和 0(水)组成的矩阵,你需要计算岛屿的数量。岛屿由水平方向或垂直方向上相邻的陆地连接而成,并且四周都是水域。你可以假设矩阵外均被水包围。 输入描述 第一行包含两个整数 N, M,表示矩阵的行数和列数。 后续 N 行,每行…

golang中的结构体

1.简介 go也支持面向对象编程(OOP)&#xff0c;但是和传统的面向对象编程有区别&#xff0c;并不是纯粹的面向对象语言。所以说go支持面向对象编程特性是比较准确的。go没有类(class)&#xff0c;go语言的结构体(struct)和其它编程语言的类(class)有同等的地位&#xff0c;你可…

正则表达式小结

正则表达式是一种用于描述文本模式的特殊字符串&#xff0c;它由一系列字符和特殊字符组成&#xff0c;用于匹配和操作文本数据。下面是正则表达式的一些常见规则&#xff1a; 字符匹配&#xff1a; 普通字符&#xff1a;正则表达式中的普通字符&#xff08;字母、数字、符号&a…

嵌入式项目代码架构与分层

代码架构与分层 BSP:板级支持驱动程 BSP: Board Support Package MCU和板上外设器件(比如MPU6050)的通信与交互过程。 有时候分两种: 1.在裸机(有限状态机)情况下,写的驱动程序; 2.在操作系统下,写驱动程序。 Core:MCU驱动程序 面向MCU进行编程,初始化MCU内部的外设(时…