ArtBooster.jl turns images into abstract figures by predicting their features with a gradient booster. The package renders the booster's depiction of the image in real-time, using whatever model hyperparameters the user provides. Fitting is done using the XGBoost package, which supports Linux and Mac OS X.
Add the package to Julia with:
Pkg.clone("https://github.com/Allardvm/ArtBooster.jl.git")
To test the package, use Julia's native package testing functions:
Pkg.test("ArtBooster")
using Images
using ArtBooster
img = load(Pkg.dir("ArtBooster") * "/test/julia-logo.jpg")
param = Dict("max_depth" => 2,
"eta" => .5,
"objective" => "reg:linear")
boostimage(img, param, iterations = 150, res_x = 1260, res_y = 852)
Resulting in:
Turns an image into an abstract figure by predicting its features with a gradient booster.
img::Matrix{T<:AbstractRGB}
: the image to boost.param::Dict
: a dictionary with the XGBoost parameters to use in the prediction.iterations::Int
: keyword argument that sets the number of boosting iterations. Defaults to1
.res_x::Int
: keyword argument that sets the horizontal resolution of the rendered abstract figure. Defaults to500
.res_y::Int
: keyword argument that sets the vertical resolution of the rendered abstract figure. Defaults to500
.