Przeglądaj źródła

Fix NaN bug in iproc.white_noise

nagadomi 9 lat temu
rodzic
commit
28cc864c0c
1 zmienionych plików z 4 dodań i 1 usunięć
  1. 4 1
      lib/iproc.lua

+ 4 - 1
lib/iproc.lua

@@ -99,7 +99,10 @@ function iproc.white_noise(src, std, rgb_weights, gamma)
 
 
    local dest
    local dest
    if gamma ~= 0 then
    if gamma ~= 0 then
-      dest = src:clone():pow(gamma):add(noise):pow(1.0 / gamma)
+      dest = src:clone():pow(gamma):add(noise)
+      dest[torch.lt(dest, 0.0)] = 0.0
+      dest[torch.gt(dest, 1.0)] = 1.0
+      dest:pow(1.0 / gamma)
    else
    else
       dest = src + noise
       dest = src + noise
    end
    end