1
0
Fork 0
mirror of synced 2024-06-26 18:20:26 +12:00
waifu2x/lib/compression.lua

21 lines
546 B
Lua
Raw Normal View History

2015-10-28 19:30:47 +13:00
-- snapply compression for ByteTensor
local snappy = require 'snappy'
2015-10-28 19:30:47 +13:00
local compression = {}
compression.compress = function (bt)
local enc = snappy.compress(bt:storage():string())
return {bt:size(), torch.ByteStorage():string(enc)}
end
compression.decompress = function(data)
local size = data[1]
local dec = snappy.decompress(data[2]:string())
local bt = torch.ByteTensor(table.unpack(torch.totable(size)))
2015-10-28 19:30:47 +13:00
bt:storage():string(dec)
return bt
end
2016-05-13 12:35:53 +12:00
compression.size = function(data)
return data[1]
end
2015-10-28 19:30:47 +13:00
return compression