Domanda:
Qual è il modo più veloce per ottenere migliaia di foto dalla fotocamera ridimensionate e caricate sul Web?
Imre
2013-02-14 16:05:07 UTC
view on stackexchange narkive permalink

Attualmente, per le riprese di eventi sportivi, il mio flusso di lavoro contiene i seguenti passaggi sequenziali:

  • scatta in posizione (JPEG per file più piccoli e post-elaborazione minima);
  • batch ridimensionare tutte le foto in una dimensione che si adatta meglio al Web e alle risorse di hosting limitate;
  • carica le foto ridimensionate.

Con centinaia o migliaia di foto da un evento (e Non sto usando lo scatto continuo), tutto questo richiede ore per finire, soprattutto perché durante il primo passaggio le foto sono semplicemente lì. Dai log del server, posso vedere che le persone si aspettano che le foto arrivino prima.

Immagino che il flusso di lavoro verrebbe completato più velocemente se i passaggi potessero essere parallelizzati, in modo che il ridimensionamento e il caricamento delle prime foto inizierebbero immediatamente invece di molte ore dopo averle scattate.

So che esistono schede Eye-Fi per ottenere foto su un dispositivo Wi-Fi locale, ma cosa succederà dopo? Esiste un software in grado di ridimensionare le foto in arrivo e inviarle tramite banda larga mobile (tramite FTP o HTTP)? Penso che il ridimensionamento debba avvenire localmente, poiché la banda larga non è così ampia.

Avendo un Raspberry Pi in giro, sarei interessato a una soluzione basata su Linux, ma anche un'app mobile andrebbe bene. Un laptop sarebbe troppo pesante e assetato di energia per essere portato in giro tutto il giorno.

Il mio primo pensiero quando ho visto le "migliaia di foto" è stato "per favore, non farlo!". Per quanto riguarda una soluzione Linux, non dovrebbe essere troppo difficile mettere insieme "imagemagick" per ridimensionare le foto e quindi utilizzare forse "curl" o un client FTP per eseguire il caricamento.
Anche se il suo trasferimento in stile push è più adatto al tuo obiettivo, non consiglierei un Eye-Fi per l'uso con Linux a causa della sua compatibilità assimilabile, di terze parti solo con ingegneria inversa. È possibile accedere facilmente a un Toshiba FlashAir tramite HTTP.
Cinque risposte:
TroyR
2013-02-15 01:37:21 UTC
view on stackexchange narkive permalink

Se puoi configurare il tuo Raspberry Pi per l'ascolto su WiFi, il mio suggerimento è il seguente:

  1. Installa imagemagick sul Pi per ottenere l'utility convert .
  2. Configura il Pi con un SSID e NFS / SMB / qualunque cartella condivisa per ricevere le immagini.
  3. Scrivi qualcosa in bash come per x in * .jpg; converti -resize 50% $ x; fatto . Puoi anche eseguire il polling della cartella sul Pi per le modifiche, quindi puoi eseguirlo in tempi relativamente brevi - vedi: questo thread SE. Nota che convert ridimensionerà l'immagine sul posto, quindi nessun fastidioso file duplicato da gestire.
  4. Esegui il comando che preferisci per inviare le immagini al tuo server sshd / ftpd / httpd subito dopo che il comando resize termina nello script.

nb. Questa è la mia prima risposta SE (anche se leggo photo.se da molto tempo, spero che sia utile.)

Questo è più o meno quello che avevo in mente quando ho scritto il mio commento, ma è una risposta corretta quindi +1.
Il WiFi sul pi non è un compito facile poiché non sempre mette abbastanza energia dalla porta USB, se puoi fare il tethering sarebbe più efficiente per uno.
Anche l'uso di RAW + jpeg potrebbe essere più veloce e l'elaborazione delle immagini nella fotocamera sarebbe di gran lunga superiore alla conversione su pi a meno che Convert non possa utilizzare la GPU?
James, buon punto sull'USB del pi, ma il mio sembra essere molto affidabile su una sorgente ~ 1A 5V. Uno di quei dispositivi di ricarica per telefoni cellulari portatili collegati tramite la porta micro USB dovrebbe funzionare bene per l'alimentazione. Per quanto riguarda il raw / jpg, penso che sia meglio, per l'efficienza complessiva, scattare la risoluzione più bassa possibile comunque. Il pi non deve essere ridimensionato, potrebbe semplicemente essere caricato se i jpg della fotocamera sono sufficientemente piccoli.
MikeW
2013-02-14 16:46:39 UTC
view on stackexchange narkive permalink

Photo Mechanic è uno dei prodotti più utilizzati dai fotoreporter grazie alla velocità con cui puoi leggere le tue carte, scansionare miniature, aggiungere metatdati e caricare immagini. È un programma autonomo che funziona su Mac e Windows: non credo che esista una versione per Linux.

Se hai una scheda Eye-Fi, Photo Mechanic può monitorare le cartelle per i nuovi file mentre li riprendi (così come Eye-Fi carica le immagini, Photo Mechanic può importarle). Può aggiungere dati IPTC da un tempalte mentre li legge. Dovrebbe essere super veloce nel generare miniature e per cercare e taggare. Può ritagliare, ridimensionare e caricare su vari servizi e ha anche una funzione che consente di caricare su un catalogo remoto tramite HTTP.

Non l'ho usato personalmente, quindi non posso dire che soddisfi tutte le tue esigenze, ma è riconosciuto come il prodotto di punta per la catalogazione di immagini sul campo.

Non ho (ancora) l'Eye-Fi, ma se può ridimensionare e caricare, un hotspot portatile da WiFi a mobile è tutto ciò di cui avrei bisogno (e in realtà lo ho già).
Sembra che al momento [il ridimensionamento avvenga sul server Eye-Fi] (http://forums.eye.fi/viewtopic.php?f=23&t=7463), sprecando effettivamente molti dati (e tempo) sulla rete.
Mi spiace, modificherò, quando ho detto "se hai una scheda Eye-Fi, può monitorare" volevo dire che * Photo Mechanic * può monitorare la cartella in cui Eye-Fi sta scrivendo.
vectorialpx
2013-02-14 16:37:10 UTC
view on stackexchange narkive permalink

Photoshop ha un creatore di gallerie batch (da una cartella) e quindi otterrai anche miniature e immagini grandi

File -> Automatizza -> Web Photo Gallery => Seleziona la casella di selezione Opzioni

Aggiorna: ho usato e mi è piaciuto XnView - http://www.xnview.com/ Vedo che ha anche una versione per Linux. È molto più leggero di Photoshop

Lo svantaggio di questo è che avresti bisogno di un laptop per eseguire Photoshop (che l'OP ha già escluso come troppo pesante e assetato di potere); Non credo che Photoshop funzionerà su Raspberry Pi.
Mi spiace, non conoscevo le capacità di `Raspberry Pi` ma questa opzione di Photoshop è disponibile anche per le versioni precedenti - non posso dirlo, ma un registro delle versioni andrà bene.
L Zylberman
2013-12-31 08:03:57 UTC
view on stackexchange narkive permalink

Ho usato una Nikon D4 che incorpora IPTC in RAWS e jpg. Prima di un evento carico un batch di modelli nella fotocamera. D4 è collegato tramite USB al mio Pi ma puoi anche collegarlo tramite wifi per evitare fili. i RAW sono archiviati su un HD ei jpg inviati al mio database eseguendo script php per recuperare i metadati e farli lampeggiare accanto alle miniature sul mio sito web. Il Pi è connesso al mio server tramite ethernet, wifi o 3G. Fotocamera e pi funzionano a batterie. Il dongle Wifi su Pi funziona anche senza utilizzare un hub USB alimentato.Pi esegue cronjobs e attende anche nuovi file. Può anche ridimensionare i file usando gphoto2.Best. Laurent

Sembra un approccio accurato, ma penso che per il livello di computer smanettoni di _questo_ sito sia davvero necessario un livello di dettaglio più elevato per essere una spiegazione utile.
Peter pete
2013-02-16 10:39:55 UTC
view on stackexchange narkive permalink

Suggerirei di investire in un programmatore.

Un programmatore può facilmente creare uno script Python per ridimensionare un'immagine e copiarla in una directory che è sotto il controllo di Dropbox.

Quindi, Dropbox carica la tua immagine ridimensionata sul suo servizio cloud. E condividi la cartella della tua casella personale con i tuoi clienti.

Voilà.!

  1. Scatta tethered / eyefi / wifi per copiare in una directory.
  2. Avere Python script poll / ricevi una notifica quando viene visualizzato un nuovo file.
  3. Fai in modo che lo script Python apra il file, ridimensiona, forse persino lancia una filigrana per buona misura.
  4. Fai copiare lo script Python nella tua casella personale cartella.
  5. Avere Dropbox.exe in esecuzione sul tuo computer.

www.dropbox.com



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...