Applicazioni di elaborazione digitale delle immagini | Elaborazione delle immagini in Python

Contenuti

Questo articolo è stato pubblicato nell'ambito del Blogathon sulla scienza dei dati

introduzione

L'elaborazione digitale delle immagini consiste nelle varie tecniche e metodi coinvolti nella manipolazione delle immagini su un computer.. Diversi tipi di operazioni vengono eseguite sulle immagini, che costituiscono l'elaborazione digitale delle immagini.

Capire cos'è effettivamente un'immagine?

L'immagine è fondamentalmente un segnale bidimensionale. La funzione del segnale è f (X, e), dove il valore di xey in un punto genera il pixel nel punto. L'immagine è fondamentalmente una matrice bidimensionale composta da numeri tra 0 e 255.

Diversi fattori sono coinvolti nell'elaborazione delle immagini. L'elaborazione delle immagini ha alcuni motivi principali.

Guida all'elaborazione delle immagini all'indirizzo:

1. Migliorare le informazioni digitali da noi memorizzate.

2. Automatizzare il lavoro con le immagini.

3. Migliore ottimizzazione delle immagini che porta a un'archiviazione e una trasmissione efficienti.

Negli anni, L'elaborazione delle immagini è notevolmente migliorata e ci sono molte moderne applicazioni commerciali per l'elaborazione delle immagini.

Usi dell'elaborazione delle immagini:

1. Correzione dell'immagine, Correzione della nitidezza e della risoluzione

Spesso, Vorremmo poter migliorare le vecchie immagini. E questo è possibile oggi.. Zoom, acutezza, Il rilevamento dei bordi e le modifiche ad alta gamma dinamica rientrano in questa categoria. Tutti questi passaggi aiutano a migliorare l'immagine. La maggior parte dei programmi di editing e del codice di correzione delle immagini possono eseguire facilmente queste cose.

2. Filtri nell'edizione di applicazioni e social network

La maggior parte delle app di editing e delle app di social media offrono filtri al giorno d'oggi.

53395IP1-6522631

Sopra è un esempio dell'immagine originale e dell'immagine filtrata. I filtri rendono l'immagine visivamente più accattivante. I filtri sono in genere un insieme di funzioni che cambiano i colori e altri aspetti di un'immagine che rendono l'immagine diversa.. I filtri sono un'interessante applicazione dell'elaborazione delle immagini.

3. Tecnologia medica:

nel campo della medicina, L'elaborazione delle immagini viene utilizzata per varie attività, come tomografia ad emissione di positroni, Imaging a raggi X, TAC medica, Immagini UV, Imaging delle cellule tumorali e altro ancora. L'introduzione dell'elaborazione delle immagini nel campo della tecnologia medica ha notevolmente migliorato il processo diagnostico..

60463IP2-2232351

(Fonte immagine: https://axisimagingnews.com/radiology-products/imaging-equipment/x-ray/image-processing-software-mimics-grid-use-improve-image-quality)

L'immagine a sinistra è l'immagine originale. L'immagine a destra è l'immagine elaborata. Possiamo vedere che l'immagine elaborata è molto migliore e può essere utilizzata per una diagnosi migliore..

4. Visione artificiale / macchina:

Una delle applicazioni più interessanti e utili dell'elaborazione delle immagini è la visione artificiale.. La visione artificiale viene utilizzata per far vedere al computer, identificare le cose ed elaborare l'intero ambiente nel suo insieme. Un uso importante della visione artificiale è guidare le automobili, droni, eccetera. CV aiuta a rilevare gli ostacoli, riconoscere i percorsi e comprendere l'ambiente.

27096ip3-3538997

(Fonte: strade di Parigi agli occhi del pilota automatico Tesla https://youtube.be/_1MHGUC_BzQ)

Ecco come funziona la tipica visione artificiale per i piloti automatici delle auto. Il computer acquisisce immagini dal vivo e analizza altre auto, la strada e altri ostacoli.

5. Riconoscimento del modello:

Il riconoscimento dei modelli fa parte dell'elaborazione delle immagini che coinvolge l'intelligenza artificiale e l'apprendimento automatico. L'elaborazione delle immagini viene utilizzata per scoprire vari modelli e aspetti nelle immagini. Il riconoscimento dei pattern viene utilizzato per l'analisi della grafia, Riconoscimento delle immagini, Diagnosi medica assistita da computer e altro ancora.

6. Elaborazione video:

Il video è fondamentalmente un movimento veloce di immagini. Nell'elaborazione video vengono utilizzate varie tecniche di elaborazione delle immagini. Alcuni metodi di elaborazione video sono la rimozione del rumore, Stabilizzazione, Conversione del frame rate, Dettagli migliorati e altro ancora.

Introduzione all'elaborazione delle immagini in Python:

Iniziamo con alcune attività di base relative alle immagini in Python. Faremo uso di PIL.

PIL

La libreria di immagini Python viene utilizzata per varie attività di elaborazione delle immagini.

Installazione:

Cuscino di installazione pip

Con PIL installato, Ora possiamo passare al codice.

Primo, Lavoriamo con alcune funzioni di Matplotlib.

import matplotlib.image as img
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline

Verrà letta la seguente immagine. Si chiama image1.jpg.

42886immagine1-7291166
# reading jpg image 
img = img.imread('image1.jpg')
plt.imshow(img)
98055IP4-5854312

L'immagine viene letta.

# modifying the shape of the image
lum1 = img[:, :, 0] 
plt.imshow(lum1)

La forma dell'immagine è stata modificata.

51525IP5-5387815

Ora lo cambieremo nella mappa dei colori “piccante”. Per saperne di più sulla mappa dei colori, visite è Collegamento.

plt.imshow(lum1, cmap ='caldo') 
plt.colorbar()

Viene visualizzato l'output dell'immagine:

48136IP6-6598254

Ora abbiamo provato una mappa a colori diversa.

imgplot = plt.imshow(lum1)
imgplot.set_cmap('nipy_spectral')

Output immagine:

87772IP7-9911686

Il motivo per utilizzare le mappe a colori è che, spesso in varie applicazioni e usi, È utile avere una mappa a colori uniforme. Leggi tutto su Colourmaps: Scegliere le mappe a colori in Matplotlib.

Ora diamo un'occhiata al motivo per cui chiamiamo un'immagine una matrice 2D..

#data type of lum1

print(genere(lum1))

Partenza:

Stampa(lum1)

[[ 92 91 89 … 169 168 169]
[110 110 110 … 168 166 167]
[100 103 108 … 164 163 164]

[ 97 96 95 … 144 147 147]
[ 99 99 98 … 145 139 138]
[102 102 103 … 149 137 137]]

I punti sono lì per mostrare che ci sono molti altri punti dati in mezzo.. Ma una cosa è certa, è che sono tutti dati numerici.

Scopriamo la dimensione della matrice.

len(lum1)

Partenza: 320

Partenza: 658

Questo ci dà il numero di pixel e le dimensioni dell'immagine: 320 * 658.

Lo controlleremo anche più tardi.

Ora lavoriamo con PIL.

da PIL import Immagine

Useremo questo file immagine, chiamato: persone.jpg.

72542persone-3071034
img2 = Immagine.open('Persone.jpg')
plt.imshow(IMG2)
49030IP8-8376315

L'immagine viene letta.

Ora, Ridimensionamo l'immagine.

img2.thumbnail((50, 50), Immagine.ANTIALIAS)  # resizes image in-place
imgplot = plt.imshow(IMG2)
60029IP9-1215722
imgplot1 = plt.imshow(IMG2, interpolazione="Più vicina")
94054IP10-6779429
imgplot2 = plt.imshow(IMG2, interpolazione="Bicubico")
59943IP11-3882488

Ma, Perché sfocamo deliberatamente le immagini nell'elaborazione delle immagini? Bene, spesso per il riconoscimento di pattern e algoritmi di visione artificiale, Diventa difficile elaborare le immagini se sono molto nitide. Perciò, La sfocatura viene eseguita per uniformare le immagini. La sfocatura causa anche la transizione di colore in un'immagine, Da una parte all'altra, Sii molto più fluido.

Ora, Controlliamo le dimensioni dell'immagine dell'auto, Su cosa abbiamo lavorato prima.

#some more interesting stuff
file="immagine1.jpg"
con Image.open(file) come immagine: 
    larghezza, height = image.size 
#Image width, l'altezza è ottenuta
57607IP12-8743302

Queste sono anche le dimensioni che abbiamo ottenuto.. Quindi possiamo concludere che l'immagine è 320 * 658.

Proviamo anche a ruotare e trasporre l'immagine.

#Relative Path 
img3 = Image.open("immagine1.jpg")  
#Angle given 
img_rot= img3.rotate(180)  
#Saved in the same relative location 
img_rot.save("rotated_picture.jpg")
13558IP13-9088558

Questa è l'immagine ruotata.

#transposing image  
transposed_img = img3.transpose(Image.FLIP_LEFT_RIGHT)
#Saved in the same relative location 
transposed_img.save("transposed_img.jpg")
37431IP14-7324078

Questa è l'immagine trasposta.

Ultime parole:

L'elaborazione delle immagini ha diverse applicazioni importanti e, Nel tempo, Anche i metodi e i processi miglioreranno.

A proposito di me:

Prateek Majumder

Scienza dei dati e analisi | Specialista in marketing digitale | SEO | Creazione di contenuti

Connettiti con me su Linkedin.

Grazie.

I supporti mostrati in questo articolo sull'elaborazione delle immagini digitali non sono di proprietà di DataPeaker e vengono utilizzati a discrezione dell'autore.

Iscriviti alla nostra Newsletter

Non ti invieremo posta SPAM. Lo odiamo quanto te.