python - 通过数字图像处理再现拍摄屏幕造成的莫尔条纹
问题描述
我在一篇科学论文上阅读了一些关于如何通过数字图像处理方法再现拍摄屏幕引起的莫尔条纹的说明。但这些说法相当模棱两可。此外,由于我对 LCD 和拜耳 CFA 不熟悉,所以我很难做到。我将详细说明我的步骤并展示一些实验结果。我希望你能帮助我完成这项任务。非常感谢。
首先,我将列出我上面提到的论文( https://arxiv.org/pdf/1804.03809.pdf )中的说明。
将输入图像重新采样为 RGB 子像素的马赛克,如图 1a 所示,以模拟 LCD 上显示的图像;
对图像应用具有一定随机性的投影变换,模拟显示器和摄像头的不同相对位置和方向;
使用径向畸变函数模拟镜头畸变;
应用平顶高斯滤波器来模拟抗混叠滤波器;5. 使用拜耳 CFA 对图像进行重新采样,如图 1b 所示,以模拟相机传感器的原始读数;
添加高斯噪声以模拟传感器噪声;
适用于去马赛克;
应用去噪滤波器;
使用JPEG压缩图像以添加压缩噪声;
将解压后的图像输出为具有波纹图案的合成图像。
不幸的是,我的声誉不足以发布图像。我将描述我对上述每个步骤的操作。
对于步骤 1,给定具有 3 个通道的 RGB 数字图像,我首先将其重新采样为具有 RGB 值并排的单通道图像,以模拟 LCD 屏幕上的显示如下: RGBRGBRGBRGBRGBRGB RGBRGBRGBRGBRGBRGB RGBRGBRGBRGBRGBRGB RGBRGBRGBRGBRGBRGR
第二步,我只是对上面得到的 LCD 图像应用随机透视变换。但是,这种透视变换会显着改变 LCD 图像中 RGB 像素的相对位置,这将使后续的拜耳 CFA 采样步骤难以应用。
我的实验中是否有任何步骤错误?我认为科学论文的指导是合理的,但在实践中还有很多细节需要澄清。但是,我对LCD和Bayer CFA不熟悉,所以向您寻求帮助。谢谢。
解决方案
推荐阅读
- android - Android Studio - CPU profiler .trace = "CPU 使用详情不可用"
- cdap - 如何通过 CDAP 管道的文件提供运行时参数/参数值
- sql - SQL Select语句如何返回表情符号
- javascript - 尝试构建自己的 Angular 表格组件但错误的 HTML 结构
- elasticsearch - 向弹性搜索服务器发送 curl 请求时不支持错误 application/x-www-form-urlencoded
- swift - 如何使用主页快速操作打开特定视图
- reactjs - 状态钩子中的 setState 第二个参数回调函数替代
- jpa - EclipseLink 在构造函数表达式中使用 SELECT ... AS 时抛出 JPQLException
- azure - Azure Application Insights 控制台日志格式
- javascript - 如果两个或多个键值相同,如何对字典列表中的元素求和