Scrivere l'articolo di oggi è stata un'esperienza affascinante per me e lo sarebbe stata anche per i lettori di questo blog. Cosa c'è di così diverso? Due cose: primo, l'articolo parla di qualcosa che ho sempre voluto fare fin da quando avevo 5 anni; al secondo posto, questo argomento / utensili / gli algoritmi sono nuovi anche per me. In nessun caso sono un maestro nell'elaborazione delle immagini, ma l'utilità di questo campo mi ha semplicemente stupito.

Immaginare, se puoi creare un'app per etichettare automaticamente una fotografia come su Facebook, o creare la tua password di riconoscimento facciale per il tuo portatile. In questo articolo, presenterò un'applicazione molto semplice ma interessante dell'elaborazione delle immagini. Useremo Python per fare l'elaborazione delle immagini. Nei prossimi articoli, Affronterò esempi più complessi di elaborazione delle immagini. Questo è il problema su cui lavorerò in questo articolo:
Dichiarazione problema
Indovina cos'è questa immagine?

Hai ragione, è un'immagine tipica di un cielo aperto. Ho scattato questa foto dalla scorsa notte fino a ieri sera a Bangalore dalla mia terrazza. Al momento, Non avevo idea che questo potesse essere un esercizio così emozionante e gratificante. Quando ero bambino, ero solito passare ore a contare queste stelle, ma quasi sempre fallivo nell'andare oltre 50-60. Volevo completare questo esercizio con l'aiuto del mio computer. Non avevo idea che fosse possibile fino a domenica scorsa, e oggi ho completato questo lungo compito in sospeso usando Python.
Cominciamo
passo 1: importare la libreria necessaria
El paquete Skimage nos permite procesar imágenes usando Python. El lenguaje es extremadamente simple de entender pero realiza algunas de las tareas más complicadas. Aquí hay algunas libraries que necesita importar para comenzar,

passo 2: Importa la imagen
Una vez que tengamos todas las libraries en su lugar, necesitamos importar nuestro archivo de imagen a Python. A continuación se muestra el codice che puede utilizzare para importar el archivo de imagen. Tenga en cuenta que la imagen se importa en escala de grises, lo que básicamente significa que cada píxel tiene un tono de gris. Y cada píxel se convierte esencialmente en una celda en una matriz. In questo caso, la imagen es una matriz de 480 * 581 Cellule (o una imagen de 480 * 581 pixel).

passo 3: Encuentra el número de estrellas
Ahora viene la parte crítica en la que nuestro trabajo principal se realiza mediante unos pocos comandos. Estos pocos comandos salen para buscar objetos continuos en la imagen. Blobs_log da tres salidas para cada objeto encontrado. Los dos primeros son las coordenadas y el tercero es el área del objeto. El radio de cada blob / objeto se puede estimar usando esta columna (area del objeto).

Come possiamo vedere, el algoritmo ha estimado 308 estrellas visibles. Veamos ahora qué tan precisas son estas lectures.
passo 4: Validado si capturamos todas las estrellas
El número 308 todavía está saliendo de una caja. Veamos si hemos detectado correttamente todas las estrellas. Per questo, estoy rodeando cada posición estimada de las estrellas. Y la mirada a la immagine si nos falta alguna estrella.

Aquí está el código completo:
from matplotlib import pyplot as plt from skimage import data from skimage.feature import blob_dog, blob_log, blob_doh from math import sqrt from skimage.color import rgb2gray import glob from skimage.io import imread
example_file = glob.glob(R"C:UsersTavishDesktopwint_sky.gif")[0] im = imread(example_file, as_grey=True) plt.imshow(im, cmap=cm.gray) plt.mostra()
blobs_log = blob_log(im, max_sigma=30, num_sigma=10, soglia=0,1)
# Calcolo i raggi nella 3ª colonna.
blobs_log[:, 2] = blobs_log[:, 2] * sqrt(2)
numrows = len(blobs_log)
Stampa("Numero di stelle contate : " ,numeri)
Fig, ax = plt.sottotrame(1, 1)
plt.imshow(im, cmap=cm.gray)
per blob in blobs_log:
e, X, r = blob
c = plt.Circle((X, e), r+5, colore="lime", linewidth=2, fill=False)
ax.add_patch(C)
Note finali
El procesamiento de imágenes es fascinante! Comencé mi viaje con el procesamiento de imágenes de Python no más de 5 giorni. Para el beneficio de la comunidad, animaré a compartir cualquier sugerencia o mejor práctica en este foro. Es posible que este ejercicio no tenga ninguna aplicación práctica, pero se pueden realizar analisi simili para las estimaciones de pureza. Ad esempio, en la industria del vidrio necesitamos la cantidad de partículas de sílice en el vidrio a un livello microscópico. Al capturar los fotogramas en un video, puede usar este codice simple para hacer muchas cosas. Ad esempio, estimación del tráfico a través de imágenes de CCTV. Este código se puede adaptar facilmente para lograr lo mismo.
L'articolo ti è stato utile?? Si ha realizado trabajos similares en el procesamiento de imágenes de Python, compártalos con nosotros. Fateci sapere i vostri pensieri su questo articolo nella casella sottostante..
Se ti piace quello che hai appena letto e vuoi continuare a imparare l'analisi, iscriviti alle nostre email, Seguici su Twitter o come il nostro pagina Facebook.
Imparentato
Articoli correlati:
- Applicazioni di elaborazione digitale delle immagini | Elaborazione delle immagini in Python
- Elaborazione delle immagini con la CNN | Guida per principianti all'elaborazione delle immagini
- Nozioni di base su SQL | Comandi SQL e usi
- Elaborazione delle immagini OpenCV | Elaborazione delle immagini con OpenCV



