El proyecto inicia con la captura de una neurona a travez de un microscopio electrónico, esta es almacenada como imagen con terminación " *.tif " que es un archivo escala a grises como en la siguiente imagen:
neurona.tif ( 8.3 MB ) |
Para este proyecto utilizaremos Python3 ya que se ejecuta en la mayoría de los sistemas operativos, recomiendo Linux, Mac OS, Windows, ademas cuentas con una gran cantidad de Librerías muy útiles para el procesamiento de imágenes como lo es la librería cv2 la cual usaremos y la podemos descargar con el comando:
- Para módulos principales se debe ejecutar
- pip install opencv-python
- Para módulos principales como complementos (contrib) se debe ejecutar
- pip install opencv-contrib-python
Nota: Recuerda que para Linux y Mac lo puedes hacer desde la terminal.
Si llegaras a tener dudas con la instalación de esta librería, es recomendable visitar la pagina oficial:
https://pypi.org/project/opencv-python/
Documentacion de OpenCV
https://docs.opencv.org/3.0-beta/index.html
El análisis inicia ejecutando nuestro código con python desde la terminal
Código uno.py , se ejecuta de la siguiente manera python uno.py
MacBook-Pro-Robotxyz:$ python uno.py
https://github.com/iarobotixyz/Python/blob/main/Análisis%20Neuronal/uno.py
Ya que hemos hecho nuestro primer ejemplo de abrir la imagen con python 2 como en el ejemplo uno.py optamos por usar python 3 para el procesamiento de la imagen, esto cambia la forma de abrir el archivo.
Abrir un archivo con python 3 , se ejecuta desde la terminal python3 uno_dos.py
MacBook-Pro-Robotxyz:$ python3 uno_dos.py
https://github.com/iarobotixyz/Python/blob/main/Análisis%20Neuronal/uno_dos.py
Ya que logramos abrir el archivo original neurona.tif lo guardaremos como un archivo Original.tif para que posteriormente usemos para un doble procesamiento y hacer un análisis mas rápido de la imagen ya que se reduce el tamaño de la imagen.
Original.tif ( 3.9 MB ) |
Binario.tif ( 235 KB ) |
Tambien existe la posibilidad de crear un archivo binario invertido para mejorar el análisis del recorrido de los nodos o dendritas.
- TRES
https://github.com/iarobotixyz/Python/blob/main/Análisis%20Neuronal/tres.py
Binario_Invertido.tif ( 234 KB ) |
Un metodo de análisis de diferencia de pixel es el THRESH_TRUNC
- CUATRO
https://github.com/iarobotixyz/Python/blob/main/Análisis%20Neuronal/cuatro.py
Binario_DPixel.tif ( 322 KB ) |
- CINCO
https://github.com/iarobotixyz/Python/blob/main/Análisis%20Neuronal/cinco.py
Binario_Cero.tif ( 3.8 MB ) |
- SEIS
https://github.com/iarobotixyz/Python/blob/main/Análisis%20Neuronal/seis.py
Binario_CeroInvertido.tif ( 321 KB ) |
- SIETE
https://github.com/iarobotixyz/Python/blob/main/Análisis%20Neuronal/siete.py
Binario_Optimo.tif ( 563 KB ) |
En conclusión la tabla de operaciones queda de la siguiente manera:
Recorrido Lineal de la Neurona
El siguiente paso es tratar de hacer el recorrido para poder asi encontrar la dendrita , basicamente se debe encontrar entre dos rectas aun cuando sean rectas pequeñas por lo que lo primero es marcar lineas y después tratar de marcar un recorrido con esas lineas, en el caso de una curva es encontrar la linea recta mas pequeña hasta incluso llegar al par de pixel para poder determinar la dendrita mas pequeña.
Ejemplo de Linea
https://github.com/iarobotixyz/Python/blob/main/Análisis%20Neuronal/linea2.py
MacBook-Pro-:NEURONA$ python3 linea2.py
Binario_Linea2.tif ( 538 KB ) Utilizando el mismo código pero ahora utilizamos la imagen de Binario_Invertido.tif generada del código del punto tres. https://github.com/iarobotixyz/Python/blob/main/Análisis%20Neuronal/linea2_1.py
|
Tomando el ejemplo de Binario_CeroInvertido.tif del punto seis, queda de la siguiente manera:
https://github.com/iarobotixyz/Python/blob/main/Análisis%20Neuronal/linea2_3.py
Binario_Linea2_CEROinv_1.tif ( 1.7 MB ) |
Por ultimo el análisis es para la imagen Binario_Optimo.tif del punto siete:
https://github.com/iarobotixyz/Python/blob/main/Análisis%20Neuronal/linea2_4.py
Binario_Linea2_Optimo_1.tif ( 1.1 MB ) |
LineaNeuronaOriginal.tif ( 6.4 MB ) |
- C
LineaNeuronaBin_INV.tif ( 532 KB ) |
- D
LineaNeuronaDPixel.tif ( 581 KB ) |
- E
LineaNeuronaCero.tif ( 6.4 MB ) |
- F
LineaNeuronaCeroINV.tif ( 527 KB ) |
Procesamiento Neuronal Natural |
Comentarios
Publicar un comentario