maandag, augustus 03, 2009

Afbeeldingen herschalen zonder vervorming via Seam carving

Inleiding
De meeste onder ons, hebben geen standaard fotobewerkingsprogramma op de computer staan. Met het programma "Paint" is het niet mogelijk afbeeldingen te verkleinen of te vergroten zonder in kwaliteit te moeten inleveren. Ook het schalen met standaard software, gaat vaak gepaard met vervormingen waardoor de verhoudigen van de afbeeldingen niet meer juist zijn. Er bestaan zowel online programma's als programma's die u kan downloaden waardoor het makkelijk wordt, afbeeldingen correct te bewerken.

Vervormingen van afbeeldingen
De standaardprocedure van herschalen is als volgt. Wanneer u een afbeelding met één pixel kleiner maakt, zal er een rij beeldpunten worden verwijderd. Hierdoor wordt uw afbeelding grondig vervormd wanneer u uw afbeelding met meerdere pixels verkleint.

Seam carving
Seam carving wordt ook wel eens "Content Aware Image Resizing" of "CAIR" genoemd. Het is een algoritme voor image resizing (voornamelijk verkleinen) die ontwikkeld is door Shai Avidan en Ariel Shamir. De software verhindert dat er delen van een afbeelding worden weggesneden om de grootte van de afbeelding te kunnen verkleinen (zowel in de horizontale als in de verticale richting met éénzelfde factor). Het beeld wordt eerst geïnterpreteerd en na analyse weet het programma wat het hoofdonderwerp van de afbeelding is, bijvoorbeeld een persoon. Het belang van een pixel wordt meestal gemeten door haar contrast in vergelijking met zijn buurman pixels, maar ook andere eigenschappen kunnen worden gebruikt. Het verwijderen van beeldpunten vindt plaats rond het hoofdobject waardoor de verhoudingen intact blijven. Om u een beter beeld te geven hoe Seam carving juist werkt, kan u een korte video bekijken op www.seamcarving.com.

Online herschalingsprogramma, Rsizr
Wilt u geen extra software installeren, dan kan u gebruik maken van Rsizr. Deze vindt u terug op http://swieskowski.net/carve. Op deze site vindt u een demo waarmee u met afbeeldingen kunt experimenteren. Op http://rsizr.com/ vindt u het online programma dat u kan gebruiken om uw afbeeldingen te herschalen (rescale), bijsnijden (crop) of u kunt de functie retarget gebruiken. Bij retarget wordt Seam carving gebruikt om afbeeldingen groter of kleiner te maken. RsiZr toont een aantal lijnen waar de aanpassingen zullen plaatsvinden. Met Rsizr is het ook mogelijk om zelf aan te geven welke onderwerpen van de foto van belang zijn en moeten behouden blijven en welke mogen verwijderd worden om ruimte te maken om te verkleinen.

Freeware, SEAMonster en Seam carving Gui
Wilt u toch liever een programma op uw computer downloaden zodanig u ook offline kan werken, dan zijn er twee pakketten die u kan gebruiken met name SEAMonster(www.codeplex.com/seamonster) en Seam carving Gui (http://code.google.com/p/seam-carving-gui). Klik op downloaden. De programma's worden geleverd in zip formaat. Pak de zipfile uit en installeer het programma op uw computer. Er is verder geen specifieke configuratie nodig.


SEAMonster (63 kb)
Op http://www.codeplex.com/seamonster vindt u een 8 minuten durende video waarin u in detail wordt uitgelegd, hoe u SEAMonster dient te gebruiken. SEAMonster vereist een Microsoft besturingsprogramma (Microsoft .net Framework 2.0.)



Seam carving Gui (4,5 MB)
De GUI is geschreven in Qt 4 en werkt op Mac, Linux en Windows. CAIR is geschreven in C + + en is grotendeels ongewijzigd vanuit de bron. Onder Linux, runt u eerst qmake seam-carving-gui.pro en vervolgens make. U dient de code van Seam carving Gui te downloaden van de Google-code pagina en open een afbeelding. Delen van de afbeelding die u wilt bewaren, verft u in het groen. Delen die niet belangrijk zijn, verft u in het rood. Herschaal u afbeelding volgens het gewenste formaat. De foto laat zien hoe extreem seam (naad) carving tools kunnen zijn.

Wie absoluut meer wil weten hoe Seam carving werkt, moet zeker eens naar de website gaan van http://www.seamcarving.com/arik/imret.pdf.

Geen opmerkingen:

Een reactie posten