【问题标题】:OpenCV - Saturated pixelsOpenCV - 饱和像素
【发布时间】:2014-05-10 13:54:35
【问题描述】:

就像本主题的标题一样,我如何在 OpenCV 中确定图像的特定像素(灰度或颜色)是否饱和(例如,过亮)?

提前谢谢你。

【问题讨论】:

    标签: opencv colors pixel grayscale


    【解决方案1】:

    根据定义,饱和像素是与强度(即灰度值或颜色分量之一)等于 255 相关联的像素。如果您愿意,也可以使用小于 255 的阈值,例如 240 或任何其他值。

    不幸的是,仅使用图像,您无法轻松区分太亮的像素和有点太亮的像素。

    【讨论】:

    • 感谢您的回答。这就是我正在做的事情:我创建了一个人工饱和图像(例如,通过 Photoshop)并将它传递给我正在处理的程序。通过使用 OpenCV 的 minMaxLoc,返回图像中的最高强度值。比如说,它是 230。如果图像中的任何其他像素的强度值等于或略小于 230(例如,255),它将被认为是饱和的。这可能不是最好的方法,但我想知道您对此有何看法。
    • @user3438376 这取决于你想做什么。小于 255 的值(例如 230)通常被认为是不饱和,因为它包含“有用的”信息,而 255 可能是一个钳位或饱和值。但是,如果您只想检测白色区域,那么您的方法很好。
    • 我的程序处理一种新的去模糊技术。去模糊部分工作正常,我正在处理饱和像素处理。引用该论文:“在执行正则化项时忽略这些区域的数据项会导致该方法执行一种简单的修复形式,以提高对有效测量的拟合”。我的程序检测到饱和像素(即强度值为 255),并且应该如上所述“在执行正则化项时忽略数据项”。我不确定程序是否应该修复饱和像素(替换它们的强度值......
    • ...与相邻像素的像素),或者如果它们将保持原样不动,并且在所有计算过程中不会使用它们的强度值来创建未模糊的图像。
    • @user3438376 我会选择第二个选项:不会使用它们的强度值。
    猜你喜欢
    • 2014-03-27
    • 1970-01-01
    • 2022-11-30
    • 2011-12-31
    • 1970-01-01
    • 1970-01-01
    • 2018-09-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多