Add use_transparent_png option
This commit is contained in:
parent
db68eb208e
commit
145b47dbf5
|
@ -32,28 +32,41 @@ local function load_images(list)
|
||||||
local MARGIN = 32
|
local MARGIN = 32
|
||||||
local lines = utils.split(file.read(list), "\n")
|
local lines = utils.split(file.read(list), "\n")
|
||||||
local x = {}
|
local x = {}
|
||||||
|
local skip_notice = false
|
||||||
for i = 1, #lines do
|
for i = 1, #lines do
|
||||||
local line = lines[i]
|
local line = lines[i]
|
||||||
local im, meta = image_loader.load_byte(line)
|
local im, meta = image_loader.load_byte(line)
|
||||||
|
local skip = false
|
||||||
if meta and meta.alpha then
|
if meta and meta.alpha then
|
||||||
im = alpha_util.fill(im, meta.alpha, torch.random(0, 1))
|
if settings.use_transparent_png then
|
||||||
end
|
im = alpha_util.fill(im, meta.alpha, torch.random(0, 1))
|
||||||
if settings.max_training_image_size > 0 then
|
|
||||||
im = crop_if_large(im, settings.max_training_image_size)
|
|
||||||
end
|
|
||||||
im = iproc.crop_mod4(im)
|
|
||||||
local scale = 1.0
|
|
||||||
if settings.random_half_rate > 0.0 then
|
|
||||||
scale = 2.0
|
|
||||||
end
|
|
||||||
if im then
|
|
||||||
if im:size(2) > (settings.crop_size * scale + MARGIN) and im:size(3) > (settings.crop_size * scale + MARGIN) then
|
|
||||||
table.insert(x, compression.compress(im))
|
|
||||||
else
|
else
|
||||||
io.stderr:write(string.format("\n%s: skip: image is too small (%d > size).\n", line, settings.crop_size * scale + MARGIN))
|
skip = true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if skip then
|
||||||
|
if not skip_notice then
|
||||||
|
io.stderr:write("skip transparent png (settings.use_transparent_png=0)\n")
|
||||||
|
skip_notice = true
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
io.stderr:write(string.format("\n%s: skip: load error.\n", line))
|
if settings.max_training_image_size > 0 then
|
||||||
|
im = crop_if_large(im, settings.max_training_image_size)
|
||||||
|
end
|
||||||
|
im = iproc.crop_mod4(im)
|
||||||
|
local scale = 1.0
|
||||||
|
if settings.random_half_rate > 0.0 then
|
||||||
|
scale = 2.0
|
||||||
|
end
|
||||||
|
if im then
|
||||||
|
if im:size(2) > (settings.crop_size * scale + MARGIN) and im:size(3) > (settings.crop_size * scale + MARGIN) then
|
||||||
|
table.insert(x, compression.compress(im))
|
||||||
|
else
|
||||||
|
io.stderr:write(string.format("\n%s: skip: image is too small (%d > size).\n", line, settings.crop_size * scale + MARGIN))
|
||||||
|
end
|
||||||
|
else
|
||||||
|
io.stderr:write(string.format("\n%s: skip: load error.\n", line))
|
||||||
|
end
|
||||||
end
|
end
|
||||||
xlua.progress(i, #lines)
|
xlua.progress(i, #lines)
|
||||||
if i % 10 == 0 then
|
if i % 10 == 0 then
|
||||||
|
|
|
@ -53,6 +53,7 @@ cmd:option("-downsampling_filters", "Box,Lanczos,Sinc", '(comma separated)downsa
|
||||||
cmd:option("-gamma_correction", 0, 'Resizing with colorspace correction(sRGB:gamma 2.2) in scale training (0|1)')
|
cmd:option("-gamma_correction", 0, 'Resizing with colorspace correction(sRGB:gamma 2.2) in scale training (0|1)')
|
||||||
cmd:option("-upsampling_filter", "Box", 'upsampling filter for 2x scale training (dev)')
|
cmd:option("-upsampling_filter", "Box", 'upsampling filter for 2x scale training (dev)')
|
||||||
cmd:option("-max_training_image_size", -1, 'if training image is larger than N, image will be crop randomly when data converting')
|
cmd:option("-max_training_image_size", -1, 'if training image is larger than N, image will be crop randomly when data converting')
|
||||||
|
cmd:option("-use_transparent_png", 0, 'use transparent png (0|1)')
|
||||||
|
|
||||||
local function to_bool(settings, name)
|
local function to_bool(settings, name)
|
||||||
if settings[name] == 1 then
|
if settings[name] == 1 then
|
||||||
|
@ -69,6 +70,7 @@ end
|
||||||
to_bool(settings, "plot")
|
to_bool(settings, "plot")
|
||||||
to_bool(settings, "save_history")
|
to_bool(settings, "save_history")
|
||||||
to_bool(settings, "gamma_correction")
|
to_bool(settings, "gamma_correction")
|
||||||
|
to_bool(settings, "use_transparent_png")
|
||||||
|
|
||||||
if settings.plot then
|
if settings.plot then
|
||||||
require 'gnuplot'
|
require 'gnuplot'
|
||||||
|
|
Loading…
Reference in a new issue