Initial release

This commit is contained in:
civ
2026-08-16 18:24:52 +07:00
commit 876886a39a
13244 changed files with 2353959 additions and 0 deletions
+41
View File
@@ -0,0 +1,41 @@
-- sgm_uniform.lua: SGM Uniform (Karras) — uniform in σ^(1/ρ) space
scheduler = {
name = "sgm_uniform",
display = "SGM-Uniform (Karras)",
description = "Karras σ-ramp (ρ=7), front-loads structural steps",
}
function schedule(output, num_steps, shift)
local t_max = 0.999
local t_min = 0.001
local sigma_max = t_max / (1 - t_max)
local sigma_min = t_min / (1 - t_min)
local rho = 7.0
local inv_rho = 1.0 / rho
local s_max = sigma_max ^ inv_rho
local s_min = sigma_min ^ inv_rho
for i = 0, num_steps - 1 do
local frac = i / num_steps
local sigma = (s_max + frac * (s_min - s_max)) ^ rho
output[i] = sigma / (1 + sigma)
end
clamp(output, num_steps)
apply_shift(output, num_steps, shift)
end
function apply_shift(ts, n, shift)
if shift == 1.0 then return end
for i = 0, n - 1 do
local t = ts[i]; ts[i] = shift * t / (1.0 + (shift - 1.0) * t)
end
end
function clamp(ts, n)
for i = 0, n - 1 do
if ts[i] < 1e-6 then ts[i] = 1e-6 end
if ts[i] > 1.0 then ts[i] = 1.0 end
end
end