I'd like to answer this old question, because the issue seems to be resolve in later versions of Wolfram Language.
$Version
14.0.0 for Mac OS X x86 (64-bit)
I get the following target image:
image = Import["https://wolfr.am/1iHhr31lO"]
image // ImageDimensions
and the following style:
style=Import["https://wolfr.am/1iHht2RBV"]
style//ImageDimensions
And the following result and timing on purely standard MacBook Pro 6 CPU cores:
ImageRestyle[image, style] // AbsoluteTiming
These 2 options are probably best tried always together:
PerformanceGoal -> "Quality",
TargetDevice -> "GPU"
You can also try using this neural net, especially see section "Adapt to any size":
https://resources.wolframcloud.com/NeuralNetRepository/resources/AdaIN-Style-Trained-on-MS-COCO-and-Painter-by-Numbers-Data
Automatic image resizing can be avoided by replacing the net encoders. First get the net:
net = NetModel[
"AdaIN-Style Trained on MS-COCO and Painter by Numbers Data"]
Extract the original mean channel values:
meanRGB = NetExtract[net, "Content"][["MeanImage"]]
{0.48502, 0.457957, 0.407604}
Create the new net encoders with the desired dimensions:
netEncC=NetEncoder[{"Image",ImageDimensions[image],"MeanImage"->meanRGB}];
netEncS=NetEncoder[{"Image",ImageDimensions[style],"MeanImage"->meanRGB}];
Attach the new net encoders:
resizedNet =
NetReplacePart[net, {"Content" -> netEncC, "Style" -> netEncS,
"Output" -> NetDecoder["Image"]}]
Restyle an image using the new resized network:
resizedNet@<|"Content"->image,"Style"->style|>
32G
memory machine,I think it is possible.. :) $\endgroup$Inpaint
on the partition edges to smooth them. It's reasonably effective. $\endgroup$ImageResize
in downscaling as well as in upscaling, with a proper resampling, could help to minimize the effect of reducing details. $\endgroup$