flyingwolfz / CCNN-CGH

code for Real-Time High-Quality Computer-Generated Hologram Using Complex-Valued Convolutional Neural Network
Apache License 2.0
24 stars 1 forks source link

衍射距离要求问题 #4

Open HannahZhang1926 opened 3 months ago

HannahZhang1926 commented 3 months ago

作者你好, 我在调试代码的时候将衍射距离设置为10cm,光波长为530nm,其余条件与您1920未加padding的保持一直后,运行您的网络,发现loss基本不下降,重建的平均PSNR只有5左右。我更改衍射距离,发现10-13cm的PSNR都只有5左右,14cm能提高到26左右。理论上在衍射距离设置为10cm是满足ASM要求的,也不存在衍射角度过小的问题,请问为什么会出现这样的问题呢?

image dc22604b132dae39c0581812cfa8fcf

flyingwolfz commented 3 months ago

你好,这个问题也可以在sgd算法中测试,与传递函数中加的带限有关。asm中保留较多高频会影响收敛效果,原因不明, 距离越近保留高频越多,甚至没有带限,所以收敛差。如果需要近距离衍射,可以手动加入以下带限,实验时4f滤波:

H_filter = (torch.abs(FX2 + FY2) <= (F_aperture*2) torch.abs(FX2 + FY2).max()).type(torch.FloatTensor)

用法参考:line 121,124 https://github.com/computational-imaging/neural-3d-holography/blob/main/prop_ideal.py