首页 > 解决方案 > 如何制作图像的闪光效果?

问题描述

在 tensorflow 中,有一个 adjust_brightness API 可以很方便地通过改变亮度来增加训练数据。我的问题是调整到更高的亮度与真正的闪光灯有何不同?我读了一篇论文,其中介绍了这种增强方法,该方法通过转换为 LUV 颜色空间并将强度增加 70% 来为帧添加人工闪光效果。我不确定这与调整亮度功能有什么关系?

谢谢!

标签: pythonimagetensorflowvideocomputer-vision

解决方案


我读了一篇论文,其中包含这种增强方法,通过转换为 LUV 颜色空间并将强度增加 70% 来为帧添加人工闪光效果

尽管您没有在问题中引用该论文,但我认为您可以通过使用rgb_to_yuv将 RGB 图像转换为 YUV 颜色空间并仅在 Y 通道上执行adjust_brightness来做到这一点。Y 通道与亮度或亮度相关。有关详细信息,请参阅CIELUV 颜色空间。所以,根据 YUV 模型,只修改 YUV 空间中的 Y 分量,就可以在不影响色度的情况下调整亮度。

所以现在你有了带有修改过的 Y 通道的 YUV 图像,它创建了人造闪光效果。确保剪裁超出 Y 可接受范围的值。现在使用yuv_to_rgb将此 YUV 图像转换回 RGB 。

adjust_brightness对输入图像的所有通道进行操作。如果将其应用于像RGB这样的颜色空间,它将影响亮度和色度,因为它们与所有通道都有某种关联。您可以将 YUV 视为消除这种相关性的一种方式。


推荐阅读