The 100 best digital picture frames on amazon
The 100 best digital picture frames on amazon
The 100 best digital picture frames on amazon
The 100 best digital picture frames on amazon

So lässt du dei­ne Fotos auto­ma­tisch auf die Grö­ße dei­nes Bil­der­rah­mens zuschnei­den

-

Ich neh­me mal an, dass die Fotos auf dei­nem Bil­der­rah­men von meh­re­ren Per­so­nen mit unter­schied­li­chen Kame­ras auf­ge­nom­men wur­den. Und das bedeu­tet meis­tens, dass die Bil­der unter­schied­li­che Sei­ten­ver­hält­nis­se auf­wei­sen. Spie­gel­re­flex­ka­me­ras haben 3:2, Four-Thirds-Kame­ras 4:3 und Smart­pho­nes haben was auch immer man ein­stellt.

Dein digi­ta­ler Bil­der­rah­men hat nur ein For­mat, nor­ma­ler­wei­se 16:10 oder 16:9. Und wenn Bil­der mit einem ande­ren Sei­ten­ver­hält­nis auf dem Rah­men auf­tau­chen, dann haben sie einen schwar­zen Bal­ken links/rechts oder oben/unten.

Der schwei­zer Online Ser­vice Crop­po­la kann den Bild­auf­bau dei­ner Fotos ana­ly­sie­ren und den bes­ten Aus­schnitt für die Abmes­sun­gen dei­nes Bil­der­rah­mens auto­ma­tisch berech­nen.

Ich habe mit dem Crop­po­la Team gespro­chen und zei­ge euch in die­sem Arti­kel ein Python Skript, was den Pro­zess voll auto­ma­ti­siert.

Auch ein digi­ta­ler Bil­der­rah­men braucht etwas Lie­be

Auch wenn der War­tungs­auf­wand für einen digi­ta­len Bil­der­rah­men sehr klein ist, ist es doch wich­tig, eine Sache zu beach­ten: Die Bil­der müs­sen im rich­ti­gen Sei­ten­ver­hält­nis (und idea­ler­wei­se der rich­ti­gen Auf­lö­sung) hoch­ge­la­den wer­den.

Das jedoch manu­ell bei jedem Bild zu kon­trol­lie­ren redu­ziert den Spaß­fak­tor ein wenig, weil es viel Zeit kos­tet.

Da es aber mög­lichst idio­ten­si­cher funk­tio­nie­ren soll, auch wenn meh­re­re Leu­te Bil­der auf den Rah­men hoch­la­den dür­fen, ist hier eine Auto­ma­ti­sie­rung ange­bracht. Das erhöht natür­lich auch die Zufrie­den­heit der Ehe­frau, und die ent­schei­det schließ­lich, ob der digi­ta­le Bil­der­rah­men ins Wohn­zim­mer darf oder nicht. Eben so wie bei den Laut­spre­cher­bo­xen.

Des­we­gen habe ich mich auf die Suche nach geeig­ne­ten Online Crop­ping (to crop = zuschnei­den) Tools gemacht und eine Rei­he davon getes­tet.

Bei Crop­po­la bin ich hän­gen geblie­ben, weil mich die Lösung rund­weg über­zeugt hat.

Fran­cis Ford C(r)oppola

Crop­po­la wur­de ursprüng­lich von Rad­ha­krish­na Ach­an­ta ent­wi­ckelt, ein Dok­to­rand im Bereich Com­pu­ter Visi­on an der Eid­ge­nös­si­schen Tech­ni­schen Hoch­schu­le Lau­sanne in der schö­nen Schweiz. Ach­an­ta war Fan des Regis­seurs Fran­cis Ford Cop­po­la, und so ergab sich der Name für sei­ne Soft­ware.

Als Mit­ar­bei­ter der Image and Visu­al Rep­re­sen­ta­ti­on Group (IVRG) unter der Füh­rung von Pro­fes­so­rin Sabi­ne Süss­trunk pro­gram­mier­te er einen intel­li­gen­ten Bil­der­ken­nungs­me­cha­nis­mus, der auto­ma­tisch Gesich­ter, Far­ben und ande­re Objek­te in Vide­os selb­stän­dig erken­nen konn­te.

Ein paar Jah­re spä­ter, 2012, wur­de sein Know-how für Foto­gra­fi­en adap­tiert und Ach­an­tas Stu­di­en­kol­le­ge Tho­mas Loch­mat­ter erstell­te eine Web­sei­te mit einer direk­ten Schnitt­stel­len­an­bin­dung, um Crop­po­la der Öffent­lich­keit zugäng­lich zu machen.

Ich tele­fo­nier­te mit Tho­mas Loch­mat­ter, der heu­te als IT Bera­ter für Dis­tri­bu­t­ed Data Sys­tems tätig ist, aber wei­ter­hin die War­tung der Soft­ware für das Crop­po­la Pro­jekt sicher­stellt.

It's a kind of magic

Crop­po­la bear­bei­tet im Monat rund 100 000 Bil­der. Die Fotos kön­nen dabei ent­we­der manu­ell oder über eine Schnitt­stel­le hoch­ge­la­den wer­den.

Auch wenn es zah­len­de Kund­schaft für grö­ße­re Men­gen gibt, ist Crop­po­la ein For­schungs­pro­jekt geblie­ben, bei dem das Geld­ma­chen eher im Hin­ter­grund steht. Daher ist der Dienst auch wei­ter­hin kos­ten­los, sofern nicht mehr als 500 Bil­der pro Monat hoch­ge­la­den wer­den.

Crop­po­la ist sehr flott unter­wegs und die Tref­fer­quo­te für einen gelun­ge­nen Zuschnitt ist erstaun­lich hoch. Die hohe Kunst der Foto­gra­fie bleibt natür­lich Geschmack­sa­che und bei drei Per­so­nen mag es drei Mei­nun­gen über den bes­ten Zuschnitt geben, aber wenn es dar­um geht, das Gan­ze im Hin­ter­grund auto­ma­tisch für einen digi­ta­len Bil­der­rah­men im Wohn­zim­mer durch­füh­ren zu las­sen, dann ist es ziem­lich geni­al.

Manch einer von euch mag die Art der Tech­nik von der Gesichts­er­ken­nung bei Ado­be Ligh­troom or Apple Fotos schon ken­nen, wobei es bei Crop­po­la um mehr als nur Gesich­ter geht.

Tho­mas erwähn­te im Gespräch Kun­den­pro­jek­te, bei denen Crop­po­la voll in Arbeits­ab­läu­fe ein­ge­bun­den ist und dem Kun­den durch Auto­ma­ti­sie­rung viel Zeit und Geld spart.

Wenn ich zwei Wün­sche für eine zukünf­ti­ge Wei­ter­ent­wick­lung frei hät­te, dann wäre es Fol­gen­des: Zum einen ist die maxi­ma­le JPG Qua­li­tät heu­te auf 95% limi­tiert, das hät­te ich ger­ne auf 100% gesetzt. Zum ande­ren wer­den lei­der die EXIF Daten beim Zuschnei­den ent­fernt. Das macht ein spä­te­res Fil­terset­zen bei der Sli­de Show unmög­lich. Ein kon­kre­ter Anwen­dungs­fall wäre das Fil­tern von Bil­dern von einem Ort oder sol­chen, die in einem bestimm­ten Zeit­raum gemacht wur­den.

Tho­mas hat bei­de Punk­te notiert und woll­te prü­fen, wie es sich umset­zen las­sen könn­te.

Ein Rie­sen­zeit­spa­rer: Das Python Skript für die Sta­pel­ver­ar­bei­tung

Crop­po­la hat eine Schnitt­stel­le, über die man Bil­der hoch­la­den kann, und die dann nach vor­ge­ge­be­nen Para­me­tern die Fotos ana­ly­siert, auf das rich­ti­ge Sei­ten­ver­hält­nis zuschnei­det und noch grö­ßen­mä­ßig anpasst.

Das heißt, man kann einen Ablauf defi­nie­ren, bei der neu hin­zu­ge­füg­te Bil­der auto­ma­tisch bear­bei­tet und in den pas­sen­den Ord­ner ver­scho­ben wer­den.

Zur auto­ma­ti­schen Ord­ner­über­wa­chung wer­de ich sicher noch einen Arti­kel schrei­ben. Das nach­fol­gen­de Skript von Tho­mas ist aber schon ziem­lich geni­al: Es prüft, ob es neue Bil­der in einem Datei­ord­ner gibt, lädt sie hoch zu Crop­po­la und spei­chert das neue, zuge­schnit­te­ne Bild in einem neu­en Ord­ner ab. Alles was man jetzt noch machen muss, ist das manu­el­le Ver­schie­ben in den rich­ti­gen Ord­ner.

In die­sem Bei­spiel habe ich das Sei­ten­ver­hält­nis auf 16:10 fest­ge­legt und 1920 x 1200 px spe­zi­fi­ziert. Das ent­spricht exakt den Daten mei­nes Bild­schir­mes. Soll­te eurer eine davon abwei­chen­de Grö­ße haben, modi­fi­ziert ihr ein­fach die Ein­stel­lun­gen.

Öff­net einen Edi­tor, kopiert den nach­fol­gen­den Code hin­ein und spei­chert die Datei als croppola.py ab.

  1. #!/usr/bin/env python3
  2. import os, requests, time
  3.  
  4. # Prepare the folders
  5. originalFolder = 'new-images-inbox'
  6. croppedFolder = 'new-images-cropped'
  7.  
  8. if not os.path.exists(croppedFolder):
  9.     os.makedirs(croppedFolder)
  10.  
  11. # This is the URL
  12. url = 'http://croppola.com/croppola/image.jpg?aspectRatio=16:10&maximumWidth=100%&scaledWidth=1920&scaledHeight=1200&algorithm=croppola'
  13.  
  14. # Process all pictures
  15. for pictureFile in os.listdir(originalFolder):
  16.     print(pictureFile)
  17.     data = open(originalFolder + '/' + pictureFile, 'rb')
  18.     res = requests.post(url, headers={'User-Agent' : 'py'})
  19.     data.close();
  20.     if res.status_code == 200:
  21.         f = open(croppedFolder + '/' + pictureFile, 'wb')
  22.         f.write(res.content)
  23.         time.sleep(5)	# let other people crop
  24.     else:
  25.         print('Error ' + res.status_code)
  26.         break

Hier spe­zi­fi­zierst du die Bil­der­grö­ße für dein Dis­play:

# This is the URL
url = 'http://croppola.com/croppola/image.jpg?aspectRatio=16:10&maximumWidth=100%&scaledWidth=1920&scaledHeight=1200&algorithm=croppola'

Wenn dein Bild­schirm also ein Sei­ten­ver­hält­nis von "16:9" hat und eine Auf­lö­sung von 1920 x 1080, dann kannst du es hier ein­stel­len.

Dane­ben gibt es vie­le wei­te­re Ein­stel­lun­gen, die du mit Crop­po­la vor­neh­men kannst. Die fin­dest du auf der Home­page. Für unse­re Zwe­cke reicht das aller­dings völ­lig aus.

Schie­be jetzt die Python Datei in den "Pic­tures" Ord­ner auf dei­nem Rasp­berry Pi.

Ich neh­me an, dass du die SMB Datei­frei­ga­be instal­liert hast. Falls nicht, kannst du es in mei­nem Arti­kel "So spielst du in weni­ger als 60 Minu­ten die Soft­ware für dei­nen digi­ta­len Bil­der­rah­men auf" nach­le­sen und ergän­zen.

Um es jetzt zu tes­ten, füge eini­ge neue und unbe­ar­bei­te­te Bil­der dem "new-images-inbox" Ord­ner hin­zu.

Öff­ne Ter­mi­nal und ver­bin­de dich mit dei­nem Rasp­berry Pi.

ssh pi@IP-of-your-RaspberryPi

Wechs­le zum Pic­tures Ver­zeich­nis

cd Pictures

Dann gib ein

python3 croppola.py

Crop­po­la soll­te jetzt dei­ne Bil­der bear­bei­ten und sie im Ver­zeich­nis "new-images-crop­ped" abspei­chern.

Über­prü­fe die Bil­der­grö­ße.

Stimmt alles? Bra­vo! Ab jetzt wirst du kei­ne schwar­zen Bal­ken mehr sehen. Den Zuschnitt macht jetzt Crop­po­la für dich.

Ein gro­ßes "Mer­ci vil­mal" an das Ent­wick­ler Team hin­ter Crop­po­la und ganz beson­ders an Tho­mas Loch­mat­ter, der das Python Skript geschrie­ben hat und mir eini­ge inter­es­san­te Hin­ter­grün­de zu Crop­po­la erzählt hat. You guys rock!