Fotomosaiker ger omtänksamma presenter och kan lysa upp enkla väggar med vackra bilder av semester, barndomsminnen eller till och med popkultur. Det är lätt att göra en fotomosaik från kommandoraden i Linux. Här är hur.
Vad är en fotomosaik och varför skulle du vilja ha en?
En fotomosaik är en bild som består av andra, mycket mindre bilder, på samma sätt som pixlar utgör en bild på en TV- eller datorskärm, individuella, färgade prickar utgör bilder i tidningar, eller små stenar utgör bilden i en verklig mosaik.
Varje bild du tar kommer att ha en dominerande färg, och fotomosaikgeneratorer kommer att använda den dominerande färgen för att bidra till en mycket större bild. Ju fler bilder du har tillgängliga, desto finare blir detaljerna i den färdiga fotomosaiken.
Ett foto på din vägg eller som bakgrundsbild på ditt skrivbord är bra, men att kunna fokusera på ett litet område och se de enskilda bilderna som utgör det är ännu bättre.
Fotomosaik fungerar bra om bilderna som utgör den är tematiskt kopplade till huvudbilden. En fotomosaik från din senaste utlandssemester är till exempel fantastiskt om den består av bilder från den semestern.
Polyfoto låter dig skapa fantastiska fotomosaiker i din Linux-terminal
Om du har en mapp full med foton som du vill använda för din fotomosaik, tillsammans med bilden du vill använda dem för att skapa, skapa ett foto mosaik med Polyfoto är lika enkelt som att köra ett enda kommando i din terminal – även om du kan lägga till parametrar för att anpassa din utdatabild. du vill.
Du kommer att klona Polyfoto GitHub-förvaret, så om du inte har Git på ditt system, installera det nu:
På Debian-baserade system:
sudo apt Installera git
För Red Hat-relaterade distros:
dnf Installera git
På Arch Linux och dess derivat:
sudo pacman -S git
Klona nu Polyfoto-förvaret:
git klona https://github.com/shanedrabing/polyfoto.git
Flytta till Polyfoto-katalogen:
CD polyfoto
...och installera det med Python:
python3uppstart.pyInstallera
När du har installerat Polyfoto kan du köra det med:
python3polyfoto.py-finmatning.png-dkällor-oproduktion.png-n 16
...var input.png är bilden du vill att din fotomosaik ska likna, källor är katalogen som innehåller fotona som kommer att utgöra mosaiken, och output.png är filnamnet på bilden som kommer att skapas. De -n argument är antalet bildrader som kommer att utgöra den slutliga bilden.
Som ett exempel har vi lagt 100 bilder i mappen "hols" och vi vill använda bilden "my_head.jpg" som basbild, och vi är nöjda med de andra standardinställningarna:
python3 polyfoto.py -f ~/hols/my_head.jpg -d hols -o output.png -n 16
Observera att kommandot måste köras från Polyfoto-katalogen, så se till att antingen flytta din fotomapp till den katalogen eller använda absoluta sökvägar i kommandot.
Processen är inte snabb, och bilden nedan tog ungefär en minut att producera på en 16GB i5-maskin med ett GTX 1050-kort. Polyfoto anger inte hur mycket minne du behöver, men det är alltid värt det kollar hur mycket RAM du har.
Det ser inte ut som något mycket. Att öka antalet rader till 128 gav bättre resultat, även om skapandet ökade till nästan 25 minuter. Orsakerna till detta är oklara, eftersom CPU och RAM-minne förblev relativt obeskattade.
Naturligtvis fungerar det bättre att skapa en fotomosaik med enkla bilder än med komplexa med mycket som händer. Mer komplexa mosaiker kräver att fler individuella bilder fungerar som "pixlar" för att göra dem tydliga. Välj noga så får du bra resultat.
Utöver grunderna erbjuder Polyfoto ett antal valfria argument, vilket låter dig bl.a. ställ in konstruktionens proportionella centrum, välj en omskalningsfaktor och ange en pixelhöjd på miniatyrer. För fullständig dokumentation, besök projektets GitHub sida.
Fotomosaiker är fantastiska presenter till dina släktingar och vänner
Det är alltid svårt att välja en gåva att ge till sina närmaste, men man kan inte gå fel med en present baserad på gemensamma minnen och upplevelser.
Även om fotomosaiker kan vara bra att ge dina föräldrar, syskon, barn eller nära vänner, för människor som du inte är speciellt nära, eller som du vet inte kommer att uppskatta en sådan personlig sak, använd en presentguide eller rekommendationsmotor istället.