This Docker image has been made to encapsulate primitive, a command-line application designed to reproduce images with geometric primitives.
To build the Docker image, navigate to the directory containing the Dockerfile and execute the following command:
docker build -t primitive-docker .
This command builds a Docker image using the Dockerfile in the current directory and tags it as primitive-docker
.
You can interact with the primitive
application as you would normally. Refer to the primitive
GitHub page for details on how to use the application.
For example, to view help:
➜ docker run docker-primitive:latest --help
Usage of primitive:
-a int
alpha value (default 128)
-bg string
background color (hex)
-i string
input image path
-j int
number of parallel workers (default uses all cores)
-m int
0=combo 1=triangle 2=rect 3=ellipse 4=circle 5=rotatedrect 6=beziers 7=rotatedellipse 8=polygon (default 1)
-n value
number of primitives
-nth int
save every Nth frame (put "%d" in path) (default 1)
-o value
output image path
-r int
resize large input images to this size (default 256)
-rep int
add N extra shapes per iteration with reduced search
-s int
output image size (default 1024)
-v verbose
-vv
very verbose
To process an image with 1000 triangles with a verbsose output:
docker run -v $(pwd)/primitive:/primitive docker-primitive:latest -i app/input/lemur.jpg -o app/output/lemur.jpg -n 1000 -m 1 -v
Please note that this Docker image is a containerised version of the primitive application. For issues related to the application itself, please refer to the primitive GitHub page.
- Primitive created by @fogleman.
- Lemur photo by Edgar.infocus on Unsplash.