Ben tornato.
Com'è stata dura?
Spero che tu non mi odi per averlo reso un po' difficile, ma sarà una buona cosa.
E ricorda, se non l'hai capito subito, non è un grosso problema.
Questo è il modo in cui impariamo.
Quindi rendiamolo un po' più grande.
Ecco qua.
E inizia con il nostro primo passo, che è quello di afferrare questi due argomenti che dovremo usare.
Quindi come possiamo farlo?
Bene, la prima cosa che faremo è, diciamo, percorso, che è il primo percorso delle nostre immagini.
O chiamiamolo semplicemente.
Immagine Falder.
E questa cartella di immagini utilizzerà sis dot org v, che sono gli argomenti e ricorda, l'Arc V è questo è
il primo, che è il file Python.
Questo è il secondo e questo è il terzo.
Per come funziona la programmazione, iniziamo con zero, poi uno, poi due.
Quindi diremo che il nostro V è qui?
E poi per il secondo, che è l'output.
Cartella, dirà dot org v.
Per questo mi piace sempre testare ciò che abbiamo fatto perché vogliamo assicurarci che le nostre
ipotesi siano corrette, quindi stampiamo solo l'immagine.
Cartella e cartella di output.
Ed eseguiamo questo file.
Va bene, guarda qui, abbiamo Polk IDEX e New, sembra che funzioni alla grande.
Quindi abbiamo fatto la prima domanda, e la seconda?
Il secondo è controllare se questa nuova cartella esiste.
In caso contrario, dobbiamo crearlo in modo da poterlo utilizzare qui per inserire le immagini.
Quindi, di nuovo, suona come un'istruzione if.
Quindi dirò se.
E poi controlla se la cartella esiste.
Quindi il modo in cui possiamo farlo è usare il modulo del sistema operativo.
Ora c'è anche il modulo PATH lab che può usare.
Dipende completamente da te.
Ora con L'O. C. , quello che possiamo fare è dire, OK, Dot, il punto Pathe esiste.
E questo controllerà solo, ehi, esiste, quindi dirò cartella di output, esiste?
Quindi vediamo solo qual è l'output di questo.
Quindi, prima ancora di eseguire l'istruzione if, mi piace testare il mio codice.
Quindi sto per dire.
Se il percorso del sistema operativo esiste.
O scusa, invece di stampare, eseguiamo questo.
E diventiamo falsi.
Perché è falso?
Perché non esiste, quindi affinché la nostra istruzione IF funzioni, dobbiamo effettivamente farlo.
Dobbiamo dire.
Se.
Non perché vogliamo ottenere il contrario, giusto?
Quindi, se questo non esiste, vogliamo convertirlo in true in modo da poter fare qualcosa all'interno di questo
blocco, ovvero creare la cartella.
Quindi come possiamo farlo?
Ancora una volta, usiamo il modulo OS e usiamo il metodo make Durrs o make directory e gli diamo solo la
cartella di output della directory.
Quindi, ancora una volta, testiamo il nostro codice e se lo eseguo.
Guarda qui, abbiamo la nuova cartella.
Stupendo.
E in questo modo, se eseguo di nuovo questo codice, vediamo che non creiamo un'altra
cartella perché mentre stiamo solo controllando questo e poiché questa cartella esiste ora, non duplichiamo e creiamo un'altra cartella.
Stupendo.
Quindi, passo dopo passo, stiamo facendo progressi e, ancora una volta, potresti chiederti.
Aspetta, Andre, non ho mai saputo del make durras, come faccio?
E ancora, questo è qualcosa che devi solo esercitarti in cui cerchi cosa fa il modello e cerchi su Google
ed è così che capisci le cose.
Nessuno ha le cose memorizzate come un programma.
Non odiarmi.
Ti sto solo aiutando ad allenare quel muscolo.
Va bene, ultima parte.
L'ultima parte è scorrere i mazzi di poker che catturano ogni immagine, la convertono e la salvano nella
nuova cartella.
Quindi come possiamo farlo?
Bene, facciamo un ciclo for e diremo il nome del file in.
E poi di nuovo, useremo la directory dell'elenco dei punti del sistema operativo.
E questi saranno gli elementi nella directory, quindi con l'elenco lì, quello che possiamo fare è semplicemente dargli la cartella
delle immagini.
E poi qui ora abbiamo ciascuno di questi percorsi di file.
Ora, qui dentro, posso dire che l'immagine è uguale all'immagine punto aperto e cosa dovremmo fare qui?
Perché ricorda, lo apriremo ogni volta, giusto?
E questo file da JPEG a PNG è al di fuori di queste cartelle.
Quindi in qualche modo dobbiamo aprire.
Queste immagini ai mazzi di poker, ma ricorda, vogliamo usare qualunque sia l'input perché l'indice dei poke delle cartelle
potrebbe non essere sempre lo stesso.
Quindi, invece di afferrare la cartella tascabile, useremo semplicemente una stringa F.
E all'interno di questa stringa F, dirò che vogliamo il.
Immagine.
Cartella.
Il che ci darà la barra dell'indice tascabile e la barra qui, perché supponiamo che la U. S.
stanno per entrare nella barra.
Non dobbiamo includerlo qui e quindi fornire un'altra stringa, che sarà il file.
Nome, che prendiamo da qui.
Quindi ora apriamo queste immagini, ognuna di esse, e poi possiamo semplicemente convertirle, giusto?
Quindi convertiamoli dicendo image dot safe.
E ancora una volta, useremo una stringa F e faremo la stessa cosa, ma questa volta per la cartella di
output.
Quindi sto per dire.
Cartella di output.
Dagli il.
Nome del file.
E poi virgola e poi convertilo in PNG.
E solo per divertimento, diciamo solo print all done per farci sapere che ogni volta che un'immagine viene elaborata, stampiamo
tutto fatto.
Ora proveremo ad eseguire questo codice.
In realtà c'è un bug in questo codice che dovremo correggere, ma vediamo solo cosa succede.
Quindi ho intenzione di eseguire questo.
Ed eccoci, abbiamo fatto tutto, tutto fatto, tutto fatto, tutto fatto per le immagini, e sembra che abbia
funzionato bene.
Diamo un'occhiata se vado alla nuova cartella qui.
Hmmm, sembra che questi siano ancora nei jetpack.
È strano.
Perché dovrebbe essere?
Ho pensato che dovremmo convertirli, giusto?
Ebbene, e se qui dentro, il salvataggio, facessimo un punto?
Quindi, di nuovo, rendiamolo un po' più piccolo, quindi diremo salvaci punto org e formato file PNG se
lo eseguo.
Va bene, guarda, ora abbiamo le immagini, ma, oh, abbiamo JPAC, Dot, PMG, cosa sta succedendo
qui?
Bene, dobbiamo ripulire bene il nostro nome.
Quindi cosa dobbiamo fare.
È quando apriamo l'immagine, dobbiamo rimuovere il punto jpeg da quell'immagine in modo da poterla salvare come P
e G.
Quindi come possiamo farlo?
E questo è qualcosa che potresti aver dovuto fare con Google, perché in realtà c'è uno strumento utile che possiamo usare con
il modulo del sistema operativo che ci consente di farlo.
Quindi quello che possiamo fare è dire pulito.
Nome e diremo che deve al Dr. Rut.
Testo diviso ancorato.
E ciò che farà è dividere il testo per noi.
Quindi lascia che ti mostri che dirò il nome del file.
E qui dentro, non ho intenzione di salvare nulla, lo commenterò.
E voglio solo stampare un nome pulito.
Quindi vediamo cosa fa il testo diviso.
Ho intenzione di cancellare questo e correre.
Di nuovo, oh, e ho un adolescente in più qui, dovrebbe essere un testo diviso, quindi diciamolo di nuovo.
E guarda questo, mi dà una tupla che divide il testo tra il nome e l'estensione, è estremamente
utile.
Quindi dobbiamo solo mantenere questa prima parte e non ci interessa questa parte, quindi possiamo semplicemente
accedere al nome pulito dicendo zero.
Quindi il primo elemento nella tupla.
Quindi ora, se torno a questo e invece di usare finalmente il nome pulito per salvare l'immagine.
Questo dovrebbe funzionare.
Quindi permettetemi di rimuovere alcuni dei commenti qui, e un'altra cosa che voglio fare è rimuovere tutte
queste immagini perché non ne abbiamo più bisogno.
Idealmente abbiamo solo immagini PMG.
Quindi rimuoverò effettivamente questa nuova cartella.
Quindi diciamo cancellare.
OK, puoi eliminarlo.
Ecco qua.
vado a salvare.
E vediamo se ora funziona.
Eseguiamo il nostro comando.
Tutto fatto se torniamo indietro, ehi, dai un'occhiata.
Tutte le nostre immagini ora sono PMG e hai visto quanto è stato veloce.
Abbiamo appena creato la nostra prima conversione da JPEG a PNG.
Questo file ora può essere convertito finché gli dai una cartella con puoi dargli centinaia di
immagini, migliaia di immagini di JPEG e le convertirà in PNG.
Se vuoi, puoi anche ridimensionarli.
Puoi persino aggiungere filtri di immagine a loro.
E siamo in grado di fare tutto questo con poche righe di codice di Python e alcune utili librerie.
Molto, molto cool.
Ora stiamo solo grattando la superficie qui, ma stai iniziando a vedere la potenza di Python.
Abbiamo un problema e questo problema può essere risolto con Python e le sue librerie.
E semplicemente facendo un po' di Google, un po' di tentativi ed errori e il debug del nostro codice, abbiamo appena
creato qualcosa che potrebbe potenzialmente farci risparmiare un sacco di tempo invece di farlo manualmente.
Ottimo lavoro se sei arrivato così lontano, questo è il nostro primo progetto di elaborazione delle immagini, spero che tu sia entusiasta.
C'è ancora molto da fare, ma datti una pacca sulla spalla e ci vediamo nel prossimo video.
Ciao ciao.