jasag / phytoliths-recognition-system Goto Github PK
View Code? Open in Web Editor NEWPhytoliths recognition system and labeling tool built in python
License: BSD 3-Clause "New" or "Revised" License
Phytoliths recognition system and labeling tool built in python
License: BSD 3-Clause "New" or "Revised" License
Deseamos añadir un selector de archivos a nuestro Jupyter Notebook principal. Con el mero objetivo de poder escoger imágenes que se encuentren en cualquier parte de nuestro sistema operativo.
Realizar un primer prototipo de interfaz de usuario que involucre al etiquetador de imágenes.
Se pretenden corregir ciertos bugs en los Widgets desarrollados el sprint anterior.
Comenzar a probar los propios ejemplos que proporciona Scikit-image. Tanto con las imágenes que se proporcionan en los ejemplos como con nuestras propias imágenes.
Añadir las distintas explicaciones e indicaciones adecuadas en el README del repositorio.
Se pretende añadir algunos parámetros más a nuestro Jupyter Notebook UI. Y ,así, poder escoger mejor los valores adecuados.
Documentar las técnicas y herramientas que se vayan utilizando durante esta semana.
Adjunto comentarios/correcciones sobre la memoria y los anexos.
anexosC.pdf
memoriaC.pdf
Una vez el usuario etiquete las imágenes, el etiquetador de imágenes (Widget) debe ser capaz de guardar esas etiquetas como imágenes de manera persistente. Y, además, las partes de la imagen que no han sido seleccionadas también deben de generar imágenes. Todo ello para generar un conjunto de entrenamiento para nuestro clasificador formado por los fitolitos y no-fitolitos.
Se desea crear un script para la lectura de las coordenadas almacenadas en JSON y su transformación para entrenar a YOLO.
Decidir el repositorio y gestor de tareas a usar
Se tratará de rentrenar a YOLO, el cual es un sistema de detección de objetos en tiempo real con muy buenos resultados.
Con un etiquetador de imágenes, o data labeler, lo que se pretende es obtener una aplicación que nos permita introducir nuevos positivos o negativos en nuestro conjunto de imágenes.
Añadir un texto a cada etiqueta, o rectángulo, de manera que podamos distinguirlas.
Documentar los conceptos, herramientas aprendidos durante la semana anterior.
Se pretende estudiar la técnica Bag of Words por si fuese interesante su aplicación a esta problemática.
Si el usuario realiza esta acción en este momento la aplicación fallará.
Se pretende mejorar la interfaz del etiquetador de imágenes todo lo posible.
Se quiere añadir un control de usuario, slider, para que podamos filtrar las ventanas de nuestros clasificadores, en función de las probabilidades de que las ventanas contengan el objeto que deseamos.
Probar la herramienta de composición de textos LaTeX.
Así como decidir el editor que se utilizará.
Lectura de 3 artículos, cuyos títulos son los siguientes:
Data Augmentation es una técnica para obtener un nuevo conjunto de entrenamiento más amplio y variado. A partir de la aplicación de distintas técnicas.
Partiendo de los Jupyter Notebooks de ejemplo que Scikit nos proporciona y la documentación que se proporciona, continuar con esta posible aproximación al problema.
Comenzar a probar algoritmos de clasificación como posible aproximación.
Se podría intentar añadir un widget que permitiese al usuario etiquetar las imágenes, marcando fitolítos o corrigiendo detecciones mal realizadas.
Un punto de partida es el tutorial de la página oficial http://ipywidgets.readthedocs.io/en/latest/examples/Widget%20Custom.html
En oficial hay IPython.display.Image para mostrar imágenes
En github he encontrado un proyecto https://github.com/Who8MyLunch/ipynb_widget_canvas
que es un canvas que tiene tambien eventos de ratón
Se pretende obtener una interfaz con un look & feel acorde a lo esperado por los usuarios.
Guardar las coordenadas de manera que se puedan utilizar para el tratamiento de las imágenes.
En concreto, vamos a añadir dos clasificadores durante este sprint:
Utilizar os.path.join()
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.