Weekend Prosjekt: Extend GIMP med High-End Plugins

De fleste Linux-brukere er kjent med GIMP rastergrafikk editor, et allsidig verktøy for foto og grafikk arbeid. Hva er ofte oversett, er at en betydelig del av GIMP makt kommer ikke fra sine innebygde funksjoner, men fra sin utvidelsesmuligheter. GIMP støtter forbedrede funksjoner gjennom kompilerte plug-ins og skript, for alt fra automat vanskelige oppgaver å innføre helt ny funksjonalitet. En grunnleggende sett med plug-ins leveres med din distro versjon av GIMP, men hvis du bare stikker med det, du glipp av mange av de avanserte funksjonene. Denne helgen, la oss ta en titt på GIMP plug-in effekt, gjennom linsen av en av sine mest avanserte add-ons, Resynthesizer.

For å finne ut hva din plug-in situasjonen er i dag, fyre opp GIMP og deretter gå til Hjelp - > Plug-in Browser menyelement. Du vil sannsynligvis ønske å utvide vindusstørrelsen for lesbarhet på; en eller annen grunn bare den første kolonnen er synlig i venstre side ruten, men det er mye mer. Denne nettleseren viser alle de installerte plug-ins, og for hver av dem kan du se hvor i programmets menystrukturen den ekstra funksjon vises, når den sist ble oppdatert, hva bildetyper den opererer på, og eventuelle tilleggsopplysninger gitt av plug-in forfatter – for eksempel en URL.

Eksempelet plug-in vi skal se på i dette prosjektet kalles Resynthesizer, og det er en du vil definitivt ønsker å installere. Resynthesizer utfører " tekstur syntese, " som betyr healing og valg-fill-in funksjoner i et bilde basert på omkringliggende bildet selv. Det er i hovedsak de samme funksjonene som tilbys av Photoshop er " healing pensel " og " innhold oppmerksom fyll, " men Resynthesizer gjorde det et halvt tiår foran Photoshop. Den opprinnelige forfatteren Paul Harrison utviklet plug-in for sin PhD forskning, men nye vedlikehold Lloyd Konneker tok over i 2010 og produserer binærfiler og pakker for up-to-date GIMP utgivelser.

Hvor Plug-Ins Come Fra

offisielt sanksjonert hjem for GIMP plug-ins og script er GIMP Plugin Registry. Det tilbyr en rekke måter å få tilgang extensions, fra surfing etter popularitet eller oppdatering dato, for å sile etter kategori, for å abonnere på registeroppdatering RSS feed.

Hvis du er helt ny, prøve å ta en titt på popularity-sortert for å få et inntrykk av hva andre brukere finner nyttig. Der vil du se støtte for ekstra bildeformater, lag effekter, farge separasjon, og helt ny funksjonalitet som wavelet-baserte denoising, adaptive kant-deteksjon, væske oppskalering, og muligheten til å kjøre innfødte Photoshop plugins.

Til tross for sin offisielle status, gjør ikke alle plugin forfatter regelmessig bruk av registeret, så hvis du ser en plugin som ser interessant ut, men har en lang fortid " siste oppdatering " dato, sørg for å lese kommentarer, og for å klikke deg frem til plug-in hjemmeside. De fleste er aktivt vedlikeholdt, og kommentarer fra andre lesere vil ofte være en aktuell kilde til informasjon om status.

Du trenger faktisk ikke å finne plug-ins gjennom registeret i det hele tatt, selvfølgelig. Mange design blogger har " five stor GIMP plug-in " -stil innlegg på regelmessig basis, ofte med et øye mot en bestemt bruk-case (design, fotoredigering, etc.). Start med listene fra MakeTechEasier og LightStalking å få en følelse for opsjonen.

Installasjon

Gå videre og nær GIMP hvis du fortsatt har den åpen fra forrige trinn. Fra et terminalvindu, skriv cd ~ /.gimp-2,6 /og trykk enter for å flytte til GIMP konfigurasjon katalogen. En ls viser deg innholdet, som inkluderer kataloger for lagring av børster, kurver, graderinger og andre ressurser. Katalogene av interesse for plug-in shopper er plug-ins og skript.

Hva er forskjellen mellom de to? Av historiske grunner, skript (som du kanskje tenker på som ligner " bruker makroer " i andre programmer) går i sin egen katalog, er skrevet i en Scheme-lignende språk og bruke .scm filtypen. Plug-ins kan kompileres kjørbare eller Python-kode, og generelt implementere funksjoner som ikke kan oppnås via skript GIMP eksisterende innvendige.

På Resynthesizer registret siden, kan du laste ned en Tar.gz arkiv som inneholder alt du vil trenger å installere på en 32-bits Linux-system. Du kan også bla kilden på Github, der du finner en enkel README. Arkivet inneholder to kjørbare, resynthesizer og resynthesizer-gui, og åtte Python-skript (en hver for hver nye menyfunksjon følger med). Pakk dem alle til ~ /.gimp-2.6 /plug-ins /og skriv ls -l på kommandolinjen. Som vil vise deg filrettigheter

Den nylig hentet pakken vil ikke ha den kjørbar ". X bit " oppført i fjerde kolonne, så typen chmod + x * å sette den. I fremtiden andre plugins du har installert kan eller ikke kan kreve dette trinnet, avhengig av om du installerer dem gjennom din distro pakkebehandleren, laste dem ned manuelt, eller kanskje samle dem lokalt.

Resynthesizer bruker binær og Python plug -ins bare, men en annen pakke kan inneholde både plug-ins og skript. Hvis du installerer et skript, skjønt, er prosessen nøyaktig den samme, bortsett fra målet katalogen: trekke ut manuset til ~ /.gimp-2,6 /scripts /og bruk chmod for å sette den kjør bit

Plug. -Ins i praksis

Nå, når du åpner GIMP, vil programmet skanne plug-ins katalog, plukke opp de nye tilleggene, og integrere sine nye menyelement direkte inn i grensesnittet. Det er ingen egen " plug-in området " av menyene; som er en del av grunnen til at Plug-in Browser vi åpnet tidligere er viktig. Hvis du ikke kan finne ut hvorvidt en plug-in som blir plukket opp av GIMP, kan du søke etter den eller prøve og finne den ved navn, men de oppførte navnene tilsvarer de nye funksjoner implementert, ikke navnet på pakken som helhet

I Resynthesizer tilfelle, får du åtte funksjoner:. " Fors & skjerpe, " " Skjerp ved syntese, " " Heal utvalg, " " Heal gjennomsiktighet, " og " Uncrop " i Filter - > Forbedre meny, " Texture " i Filter - > Render meny, " Fyll med mønster sømløs " i Rediger-menyen, og " Stil " i Filter - > Kart menyen.

Hvis du har brukt GIMP i lang tid, kan det hende du trenger å bekymre deg plug-ins og scripts fra tidligere store utgivelser. Legg merke til at katalogen vi har brukt så langt er ~ /.gimp-2,6 /. Ressurser og utvidelser fra GIMP 2.4 serien (hvis du fortsatt har noen) ligger i ~ /.gimp-2,4 /. Men det er en veldig dårlig idé å bare kopiere og lime gjenstander mellom disse to kataloger. Endringer i API kan
gjøre dem funksjonsfeil på måter som du ikke kan forutse, selv om dette er først og fremst av interesse for kompilerte binær plug-ins. De fleste plug-in forfattere holde deg oppdatert på GIMP lange utgivelsessyklus – besøke registeret eller plug-in URL og se om det er en ny versjon tilgjengelig.

resyntetisering

Så hva om Resynthesizer seg selv? Nei, det er ikke en oppblomstring av 80-talls New Wave pop. Heldigvis. I stedet, de åtte nye funksjoner det gir implementere tekstur syntese i svært spesifikke bruksområder. Den kanoniske eksempel er beskjæring et distraherende element ut av et fotografi: du kan
manuelt fjerne objektet og male over det å bruke klone verktøyet, prøvetaking fra området rundt. Resynthesizer gjør dette automatisk, uten risiko for tilskitning opp resultatet gjennom å velge vanskelige prøvepunkter

Denne funksjonen er implementert i ". Heal utvalg " alternativ. Foreta et valg, så velger er fra Filter - > Forbedre menyen. Den nye versjonen av plug-in lar deg velge størrelsen på sampling området, om å smake på alle sider eller bare vertikalt /horisontalt, og om å fylle ut tilfeldig, arbeid fra innsiden ut, eller utsiden inn. Hva gir deg det beste resultatet avhenger av bilde.

Heal åpenhet gjør egentlig det samme, men for gjennomsiktige områder i et bilde. Den mystisk nevnte Uncrop tar prosessen til et nytt nivå, og legger en gjennomsiktig kant av bildet, deretter automatisk fylle det inn med tekstur generert fra naboregionen, inkludert riktig bevare horisontlinjer og andre funksjoner. Skjerpe ved syntese og Øke & skjerpe både arbeidet med å rekonstruere detalj i et uskarpt bilde ved å syntetisere piksler. Det er ikke så god som tech team produserer på TV, men det kan spare en ellers rufsete utseende bilde

Render Tekstur og ". Fyll med mønster sømløs " alternativene er helt annerledes. De avtale med Resynthesizer motorens evne til å oppdage kanter og sømløst koble til dem som det genererer piksler. Gjengi Texture bruker gjeldende bilde som kilde og genererer en gjenbrukbar, randomisert tekstur bevare synlige funksjoner (eventuelt gjør det flis-stand på samme tid), mens Fyll alternativet tar et eksternt bilde som en " kilden " og genererer et tilfeldig-but-naturlig utseende tekstur fra den for å fylle en del av bildet. Den første kan være av interesse for de som genererer teksturer for 3D-modellering eller video game grafikk, mens den andre er en ekte fotoredigeringsverktøy (forutsatt at du ikke plukke en lett gjenkjennelig kilde tekstur).
< p> Den siste nye funksjonen er original. Filter - > Kart - > Stil overfører " farge og tekstur " fra ett bilde til et annet, ved prøvetaking og tekstur syntese. Resultatet er at du kan ta en kilde bilde (for eksempel et bilde), og kartlegge " style " av et målbildet (som en akvarell maleri) på den. Resultatet bør være en akvarell-lignende gjengivelse av bilder.

For å være ærlig, har jeg ikke spilt rundt for mye med de nye funksjonene. Jeg er glad nok til å ha helbredende funksjonaliteten Resynthesizer retur til GIMP etter så lang fravær.

Når du har jobbet med Mozilla Firefox og Thunderbird for en stund, synes prosessen for håndtering av GIMP plugins sjarmerende by misligholde. Her håper en fremtidig versjon av redaktøren vil automatisere mer av installasjonsprosessen, eller kanskje til og med binde registeret direkte inn GIMP Plug-in Browser slik at du ikke trenger å bytte til en nettleser. Men ikke bli for ned på GIMP prosess – det ville være bedre hvis det var helt automatisk, men det er ganske enkel allerede. De fleste mennesker bare ikke har prøvd det. Faktisk har du sannsynligvis fått nok av helgen igjen at du kan sjekke ut noen ekstra plug-ins, også. Her er et hint: Hvis du liker Resynthesizer, prøv G'MIC for ekstra kreditt
.