OpenCV  4.10.0
开源计算机视觉
正在加载...
正在搜索...
未找到匹配项
| 枚举 | 函数
HDR 成像

详细信息描述

此部分描述高动态范围成像算法,包括色调映射、曝光对齐、多曝光相机标定以及曝光融合。

类  cv::AlignExposures
 算法基类,用于对齐曝光不同的同一场景图像。更多信息...
 
类  cv::AlignMTB
 此算法将图像转换为中值阈值位图(亮度值高于平均亮度则为 1,否则为 0),然后使用位运算对生成的位图进行对齐。更多信息...
 
类  cv::CalibrateCRF
 相机响应标定算法基类。 更多信息...
 
类  cv::CalibrateDebevec
 通过将目标函数最小化为线性系统,为每个亮度值提取逆相机响应函数。目标函数使用所有图像中相同位置的像素值构建,添加额外的项以使得结果更加平滑。更多信息...
 
类  cv::CalibrateRobertson
 通过将目标函数最小化为线性系统,为每个亮度值提取逆相机响应函数。此算法使用所有图像像素。更多信息...
 
类  cv::MergeDebevec
 将最终的 HDR 图像计算为基于曝光值和相机响应的对曝光进行加权平均。更多信息...
 
类  cv::MergeExposures
 基类算法,用于将曝光序列合并为一张图像。更多信息...
 
类  cv::MergeMertens
 使用对比度、饱和度和曝光良好的指标对像素进行加权,然后使用拉普拉斯金子塔对图像进行组合。更多信息...
 
类  cv::MergeRobertson
 将最终的 HDR 图像计算为基于曝光值和相机响应的对曝光进行加权平均。更多信息...
 
类  cv::Tonemap
 色调映射算法基类 - 用于将 HDR 图像映射到 8 位范围内的工具。更多信息...
 
类  cv::TonemapDrago
 自适应对数映射是一种快速全局色调映射算法,用于在对数域中缩放图像。更多信息...
 
类  cv::TonemapMantiuk
 该算法使用高斯金字塔所有层次上的梯度对图像进行对比度转换,将对比度值转换为 HVS 响应并缩放响应。然后,根据新的对比度值重建图像。 更多...
 
类  cv::TonemapReinhard
 该全局色调映射算子模拟人眼视觉系统。 更多...
 

枚举

枚举  { cv::LDR_SIZE = 256 }
 

函数

Ptr< AlignMTBcv::createAlignMTB (int max_bits=6, int exclude_range=4, bool cut=true)
 创建 AlignMTB 对象。
 
Ptr< CalibrateDebeveccv::createCalibrateDebevec (int samples=70, float lambda=10.0f, bool random=false)
 通过最小化目标函数为每个亮度值提取逆相机响应函数 CalibrateDebevec 对象。
 
Ptr< CalibrateRobertsoncv::createCalibrateRobertson (int max_iter=30, float threshold=0.01f)
 通过最小化目标函数为每个亮度值提取逆相机响应函数 CalibrateRobertson 对象。
 
Ptr< MergeDebeveccv::createMergeDebevec ()
 创建 MergeDebevec 对象。
 
Ptr< MergeMertenscv::createMergeMertens (float contrast_weight=1.0f, float saturation_weight=1.0f, float exposure_weight=0.0f)
 创建 MergeMertens 对象。
 
Ptr< MergeRobertsoncv::createMergeRobertson ()
 创建 MergeRobertson 对象。
 
Ptr< Tonemapcv::createTonemap (float gamma=1.0f)
 创建带有 gamma 校正的简单线性映射器。
 
Ptr< TonemapDragocv::createTonemapDrago (float gamma=1.0f, float saturation=1.0f, float bias=0.85f)
 创建 TonemapDrago 对象。
 
Ptr< TonemapMantiukcv::createTonemapMantiuk (float gamma=1.0f, float scale=0.7f, float saturation=1.0f)
 创建 TonemapMantiuk 对象。
 
Ptr< TonemapReinhardcv::createTonemapReinhard (float gamma=1.0f, float intensity=0.0f, float light_adapt=1.0f, float color_adapt=0.0f)
 创建 TonemapReinhard 对象。
 

枚举类型文档

◆ 匿名枚举

匿名枚举

#include <opencv2/photo.hpp>

枚举器
LDR_SIZE 
Python:cv.LDR_SIZE

函数文档

◆ createAlignMTB()

Ptr< AlignMTB > cv::createAlignMTB ( int  max_bits = 6,
int  exclude_range = 4,
bool  cut = true 
)
Python
cv.createAlignMTB([, max_bits[, exclude_range[, cut]]]) -> retval

#include <opencv2/photo.hpp>

创建 AlignMTB 对象。

参数
max_bits每个维度上最大偏移量的 2 的对数。通常 5 和 6 的值已经足够好了(分别为 31 和 63 像素偏移)。
exclude_range用于构造排除位图的范围,该排除位图用于抑制中值周围的噪声。
cut如果为 true,则裁剪图像,否则使用零填充新区域。

◆ createCalibrateDebevec()

Ptr< CalibrateDebevec > cv::createCalibrateDebevec ( int  samples = 70,
float  lambda = 10.0f,
bool  random = false 
)
Python
cv.createCalibrateDebevec([, samples[, lambda_[, random]]]) -> retval

#include <opencv2/photo.hpp>

通过最小化目标函数为每个亮度值提取逆相机响应函数 CalibrateDebevec 对象。

参数
samples待使用的像素位置数量
lambda平滑项权重。较大的值会产生更平滑的结果,但可能会改变响应。
random如果为 true,则以随机方式选择像素位置的样本,否则它们将形成一个矩形网格。

◆ createCalibrateRobertson()

Ptr< CalibrateRobertson > cv::createCalibrateRobertson ( int  max_iter = 30,
float  threshold = 0.01f 
)
Python
cv.createCalibrateRobertson([, max_iter[, threshold]]) -> retval

#include <opencv2/photo.hpp>

通过最小化目标函数为每个亮度值提取逆相机响应函数 CalibrateRobertson 对象。

参数
max_iterGauss-Seidel 求解器迭代的最大次数。
threshold最小化过程中连续两个步骤的结果之间的目标差值。

◆ createMergeDebevec()

Ptr< MergeDebevec > cv::createMergeDebevec ( )
Python
cv.createMergeDebevec() -> retval

#include <opencv2/photo.hpp>

创建 MergeDebevec 对象。

◆ createMergeMertens()

Ptr< MergeMertens > cv::createMergeMertens ( float  contrast_weight = 1.0f,
float  saturation_weight = 1.0f,
float  exposure_weight = 0.0f 
)
Python
cv.createMergeMertens([, contrast_weight[, saturation_weight[, exposure_weight]]]) -> retval

#include <opencv2/photo.hpp>

创建 MergeMertens 对象。

参数
contrast_weight对比度度量权重。请参阅 MergeMertens
saturation_weight饱和度度量权重
exposure_weight曝光度度量权重

◆ createMergeRobertson()

Ptr< MergeRobertson > cv::createMergeRobertson ( )
Python
cv.createMergeRobertson() -> retval

#include <opencv2/photo.hpp>

创建 MergeRobertson 对象。

◆ createTonemap()

Ptr< Tonemap > cv::createTonemap ( float  gamma = 1.0f)
Python
cv.createTonemap([, gamma]) -> retval

#include <opencv2/photo.hpp>

创建带有 gamma 校正的简单线性映射器。

参数
gammagamma 校正的正值。1.0 的 gamma 值表示无校正,2.2f 的 gamma 值适合大多数显示器。通常,gamma > 1 使图像变亮,gamma < 1 使图像变暗。

◆ createTonemapDrago()

Ptr< 色调映射德拉戈 > cv::createTonemapDrago ( float  gamma = 1.0f,
float  saturation = 1.0f,
float  bias = 0.85f 
)
Python
cv.createTonemapDrago([, gamma[, 饱和度[, bias]]]) -> retval

#include <opencv2/photo.hpp>

创建 TonemapDrago 对象。

参数
gamma用于 gamma 校正的 gamma 值。请参阅 createTonemap
饱和度正饱和度增强值。1.0 保持饱和度,大于 1 的值增大饱和度,小于 1 的值减小饱和度。
bias[0, 1] 范围内的 bias 函数值。通常,0.7 到 0.9 之间的值会提供最佳结果,默认值是 0.85。

◆ createTonemapMantiuk()

Ptr< 色调映射曼蒂克 > cv::createTonemapMantiuk ( float  gamma = 1.0f,
float  scale = 0.7f,
float  saturation = 1.0f 
)
Python
cv.createTonemapMantiuk([, gamma[, scale[, 饱和度]]]) -> retval

#include <opencv2/photo.hpp>

创建 TonemapMantiuk 对象。

参数
gamma用于 gamma 校正的 gamma 值。请参阅 createTonemap
scale对比度比例因子。HVS 响应乘以此参数,从而压缩动态范围。0.6 到 0.9 之间的值会产生最佳结果。
饱和度饱和度增强值。请参阅 createTonemapDrago

◆ createTonemapReinhard()

Ptr< 色调映射赖因哈特 > cv::createTonemapReinhard ( float  gamma = 1.0f,
float  intensity = 0.0f,
float  light_adapt = 1.0f,
float  color_adapt = 0.0f 
)
Python
cv.createTonemapReinhard([, gamma[, intensity[, light_adapt[, color_adapt]]]]) -> retval

#include <opencv2/photo.hpp>

创建 TonemapReinhard 对象。

参数
gamma用于 gamma 校正的 gamma 值。请参阅 createTonemap
intensity[-8, 8] 范围内的结果强度。较高的强度会生成更明亮的结果。
light_adapt[0, 1] 范围内的光线适应。如果为 1,适应仅基于像素值;如果为 0,适应是全局性的;否则,它是这两个情况的加权平均。
color_adapt[0, 1] 范围内的色适应。如果为 1,则通道独立处理;如果为 0,则每个通道的适应水平相同。