Comprender la visión computarizada

1

¿Por qué aprender computer vision?

2

¿Qué es la visión computarizada?

3

Tipos de visión computarizada

4

Introducción a object detection: clasificación + localización

5

Aprende a identificar problemas

Dimensionamiento de proyecto de visión computarizada

6

Cómo definir los tiempos de tu proyecto

7

Cómo costear tu proyecto

8

Cómo identificar los roles necesarios en el proyecto

9

Producto mínimo viable en computer vision

Obtención y procesamiento de los datos

10

Obtención de datos para tu proyecto

11

Limpieza de la base de datos

12

Distribución de datos en entrenamiento y testeo

13

Etiquetado de los datos de test

14

Etiquetado de los datos de train

15

Transforma tu base de datos a TFRecord

16

Transformar CSV a TFRecord

Entrena, testea y optimiza tus modelos

17

Librerías a importar durante fase de entrenamiento

18

Fase de entrenamiento del modelo

19

Balanceo de imágenes y data augmentation

20

Entrena, evalua y optimiza con TensorBoard

21

Validación de modelo en un entorno de ejecución

22

Re-entrenamiento del modelo para obtener mejores resultados

23

Seguimiento de centroides con OpenCV

24

Configuración de los centroides con OpenCV

25

Algoritmo de dirección y conteo con OpenCV

26

Crea un ciclo de entrenamiento de tu modelo: MLOps

Producto con visión computarizada en producción

27

Prepara tu entorno en Google Cloud Platform

28

Carga y preprocesamiento de modelos

29

Postprocesamiento de modelos

30

Despliega y consume tu modelo en producción

31

Bonus: aprende a apagar las máquinas de GCP para evitar sobrecostos

Siguientes pasos en inteligencia artificial

32

Siguientes pasos en inteligencia artificial

33

Comparte tu proyecto de detección de vehículos en carretera y certifícate

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

15 Días
20 Hrs
35 Min
8 Seg

Obtención de datos para tu proyecto

10/33
Recursos

Aportes 6

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

No sé como va a terminar este curso, pero hasta el momento es el TOP de todos los cursos que eh llevado.
Por cierto gracias por el módulo de negocios y recomendaciones MUY BUENO

Cada ves se pone mas emocionante este curso, no esperaba el modulo del negocio como tal, muy bueno que lo hayan incluido.

y Adonai excelente profesor.

La obtención de datos es uno de los pasos fundamentales en cualquier proyecto de visión computarizada, ya que el rendimiento del modelo depende en gran medida de la calidad y cantidad de los datos disponibles. Aquí tienes una guía para obtener datos de manera efectiva: \### 1. \*\*Definir los requisitos del proyecto\*\* \- Establece qué tipo de datos necesitas: imágenes, videos o secuencias de imágenes, y qué categorías o etiquetas serán relevantes. Por ejemplo, si tu proyecto es de detección de objetos en imágenes de tráfico, necesitarás imágenes de vehículos, peatones y señales de tráfico. \- Define el formato y la resolución de los datos, así como el número aproximado de ejemplos que necesitarás para el entrenamiento, validación y pruebas del modelo. \### 2. \*\*Usar conjuntos de datos públicos\*\* \- Existen numerosos conjuntos de datos públicos específicos para visión computarizada que pueden ser un excelente punto de partida, como: \- \*\*COCO (Common Objects in Context)\*\*: Un conjunto de datos grande con imágenes etiquetadas para detección de objetos, segmentación y keypoints. \- \*\*ImageNet\*\*: Muy popular en clasificación de imágenes, contiene millones de imágenes etiquetadas en miles de categorías. \- \*\*Open Images Dataset\*\*: Un conjunto de datos extenso con anotaciones para detección de objetos, segmentación y más, mantenido por Google. \- \*\*KITTI\*\*: Ideal para proyectos de visión computarizada en automóviles autónomos, incluye imágenes de cámaras montadas en vehículos y etiquetas para objetos de tráfico. \- Investiga la licencia de cada conjunto de datos para asegurarte de que puedes usarlo para fines comerciales si es necesario. \### 3. \*\*Capturar tus propios datos\*\* \- Si los conjuntos de datos públicos no cumplen con los requisitos de tu proyecto, considera recolectar tus propios datos. Por ejemplo, puedes usar cámaras para capturar imágenes o videos en un entorno específico (como un almacén o en calles de una ciudad). \- Asegúrate de capturar los datos en diferentes condiciones (luz, clima, ángulos) para que el modelo sea más robusto. \- \*\*Consideraciones legales\*\*: Al recolectar datos en espacios públicos o que involucren a personas, asegúrate de respetar las normativas de privacidad y obtener los permisos necesarios. \### 4. \*\*Anotación de datos\*\* \- Para muchos proyectos de visión computarizada, es necesario etiquetar los datos manualmente. Puedes usar herramientas de anotación para realizar etiquetado, delimitación (bounding boxes) o segmentación de objetos en las imágenes. \- Herramientas populares para anotación incluyen: \- \*\*LabelImg\*\*: Para etiquetado de bounding boxes. \- \*\*CVAT (Computer Vision Annotation Tool)\*\*: Permite anotación de bounding boxes, segmentación y seguimiento de objetos. \- \*\*Labelbox\*\* y \*\*SuperAnnotate\*\*: Plataformas colaborativas para proyectos grandes de anotación. \- Si el volumen de datos es muy alto, considera usar servicios de etiquetado como Amazon SageMaker Ground Truth, o contratar a anotadores externos. \### 5. \*\*Generar datos sintéticos\*\* \- La creación de datos sintéticos es una estrategia útil cuando los datos reales son difíciles de obtener o costosos de anotar. Esto implica el uso de simulaciones o herramientas de generación de imágenes para crear imágenes de entrenamiento. \- Algunas técnicas para crear datos sintéticos incluyen: \- \*\*Uso de simuladores\*\*: Herramientas como Unity o Blender pueden generar escenas tridimensionales que luego se convierten en imágenes. \- \*\*Augmentación de datos\*\*: Permite ampliar el conjunto de datos aplicando transformaciones como rotación, cambio de escala, recortes y ajuste de brillo en imágenes existentes. \- Los datos sintéticos son especialmente útiles en áreas como la conducción autónoma, donde es difícil captar todos los posibles escenarios de conducción en la vida real. \### 6. \*\*Raspado de imágenes desde la web\*\* \- Puedes obtener imágenes específicas desde sitios web utilizando técnicas de raspado (web scraping). Por ejemplo, Google Images y Bing permiten buscar imágenes bajo ciertos términos. Sin embargo, ten en cuenta las políticas de derechos de autor y atribución. \- Herramientas como \*\*Selenium\*\*, \*\*BeautifulSoup\*\*, o librerías como \*\*Scrapy\*\* en Python pueden ayudarte a automatizar la descarga de imágenes. Asegúrate de filtrar las imágenes según el formato y tamaño que necesitas. \### 7. \*\*Uso de APIs y servicios de terceros\*\* \- Algunas plataformas ofrecen APIs para acceder a conjuntos de datos de imágenes, como Flickr, Unsplash, o las APIs de Google Images y Bing. A través de estas APIs puedes descargar imágenes bajo licencias específicas para usarlas en tu proyecto. \- Las APIs te permiten automatizar la búsqueda y descarga de imágenes relevantes, lo cual facilita la recopilación de grandes cantidades de datos en categorías específicas. \### 8. \*\*Realizar un preprocesamiento de los datos\*\* \- Una vez que tienes los datos, es probable que necesites procesarlos antes de usarlos en el modelo. Las tareas de preprocesamiento incluyen: \- \*\*Redimensionamiento\*\*: Cambiar la resolución de las imágenes para que todas tengan el mismo tamaño. \- \*\*Conversión de formato\*\*: Asegurarte de que todas las imágenes están en un formato compatible con el modelo, como JPEG o PNG. \- \*\*Normalización y escala de colores\*\*: Ajustar el valor de los píxeles para mejorar el rendimiento del modelo. \- También puedes realizar la \*\*división de los datos en subconjuntos\*\* de entrenamiento, validación y prueba. \### 9. \*\*Evaluar y balancear el conjunto de datos\*\* \- Asegúrate de que tu conjunto de datos esté equilibrado, es decir, que las categorías estén bien representadas. Si tienes un desequilibrio (por ejemplo, muchas más imágenes de un tipo que de otro), el modelo podría sesgarse hacia las clases con más ejemplos. \- Si tu conjunto de datos está desequilibrado, puedes recopilar más ejemplos de las clases minoritarias o aplicar técnicas de \*\*re-muestreo\*\* (subsampling o oversampling). \### 10. \*\*Automatizar el flujo de datos\*\* \- Para proyectos de visión computarizada que requieren un flujo constante de datos (por ejemplo, imágenes de cámaras en tiempo real), considera usar servicios de almacenamiento en la nube como AWS S3 o Google Cloud Storage. \- La automatización del flujo de datos permite que los nuevos datos se integren fácilmente y facilita el entrenamiento continuo o la mejora del modelo con datos actualizados. \### Ejemplo práctico: Flujo de obtención de datos para un proyecto de detección de objetos Si estás desarrollando un modelo de visión computarizada para detectar vehículos en cámaras de tráfico: 1\. \*\*Define el alcance\*\*: Necesitas detectar autos, camiones y motocicletas en distintas condiciones de tráfico. 2\. \*\*Conjunto de datos público\*\*: Utiliza COCO o Open Images Dataset para comenzar, ya que contienen etiquetas de vehículos. 3\. \*\*Captura tus propios datos\*\*: Si es necesario, instala cámaras en ubicaciones específicas y captura videos en diferentes momentos del día. 4\. \*\*Anotación\*\*: Usa herramientas como LabelImg para etiquetar manualmente los vehículos en las imágenes. 5\. \*\*Datos sintéticos\*\*: Genera imágenes de vehículos en un simulador 3D bajo diferentes ángulos y condiciones. 6\. \*\*Preprocesamiento\*\*: Redimensiona las imágenes y normaliza los colores. 7\. \*\*Balanceo\*\*: Revisa que cada categoría de vehículo esté bien representada. 8\. \*\*Automatización del flujo\*\*: Configura una base de datos en la nube donde las imágenes se actualicen automáticamente desde las cámaras. Este enfoque te permitirá obtener y procesar los datos necesarios para tu proyecto de visión computarizada de forma efectiva y escalable.
**API (Interfaz de Programación de Aplicaciones)** Las APIs permiten acceder a servicios y datos de terceros en formato estructurado como JSON o XML, y son muy útiles para obtener datos dinámicos. **¿Cuándo usar APIs?** Cuando necesitas datos externos, actualizados en tiempo real, como información del clima, tráfico en vivo o mapas de carreteras. Cuando deseas integrar datos de otras plataformas, como servicios de geolocalización o cámaras de tránsito en tiempo real. **Ejemplos de APIs**: **Google Maps API**: Puedes usarla para obtener información sobre la ubicación de las carreteras y tráfico en tiempo real. **OpenWeather API**: Para obtener datos meteorológicos en tiempo real, lo que puede ser útil si tu proyecto considera condiciones climáticas. **Twitter API**: Para extraer datos relacionados con menciones o informes de tráfico de los usuarios. **Cómo obtener datos con APIs**: Regístrate en el servicio API que desees utilizar y obtén una clave de acceso. Utiliza herramientas como **Postman** o bibliotecas en lenguajes de programación (por ejemplo, requests en Python) para hacer solicitudes HTTP a las APIs. Procesa los datos en formato JSON o XML para integrarlos en tu proyecto. Podrías usar la API de Google Maps para obtener datos de tráfico en tiempo real y combinarlos con tu sistema de detección de vehículos, para crear un sistema más completo que detecte vehículos y analice la densidad de tráfico.
que
blue label de jhonny Walker🗿🍷