you can easily create a wallpaper from any image you like with imagemagick's convert command:
convert <the image you like> -gravity center -resize <value in pixels> -background <color> -extent <your screen resolution> <name of the wallpaper file>
the bash script created by moviuro does the job for you. it detects main color of the image, creates a canvas with specified resolution and detected color, scales the selected image and puts it in the middle of the canvas.
let's take the hi-res of this image (sudo-red.png)
./makemywall.sh -s 1920 1080 will create a fullhd wallpaper for desktop
./makemywall.sh -s 1080 1920 will create a fullhd wallpaper for your handy
for bulk convertion use
find . -type f -name '*.png' | ./makemywall.sh 1080 1920