jueves, 31 de octubre de 2024

Tomar una imagen de una URL, analizarla para generar una descripción en texto, y luego mostrar tanto la imagen como el texto generado

Programa para Google Colab que realice este proceso:
tomar una imagen de una URL, analizarla para generar una descripción en texto, y luego mostrar tanto la imagen como el texto generado. Para esto, usaremos la biblioteca transformers de Hugging Face y PIL para cargar y visualizar la imagen.
Este programa usará el modelo BLIP (Bootstrapping Language-Image Pretraining), que es muy efectivo para tareas de generación de descripciones de imágenes.


# Instalar Hugging Face Transformers y TorchVision si aún no están instalados
!pip install -q transformers torch torchvision

# Importar las bibliotecas necesarias
import torch
from transformers import BlipProcessor, BlipForConditionalGeneration
from PIL import Image
import requests
from io import BytesIO
import matplotlib.pyplot as plt

# Función para cargar la imagen desde una URL y convertirla en el formato necesario
def cargar_imagen(url):
    response = requests.get(url)
    image = Image.open(BytesIO(response.content)).convert("RGB")
    return image

# Configuración del modelo y procesador BLIP
processor = BlipProcessor.from_pretrained("Salesforce/blip-image-captioning-base")
model = BlipForConditionalGeneration.from_pretrained("Salesforce/blip-image-captioning-base")

# URL de la imagen
url_imagen = "https://img.freepik.com/foto-gratis/mujer-tiro-completo-bicicleta-al-aire-libre_23-2149413735.jpg"

# Cargar y procesar la imagen
imagen = cargar_imagen(url_imagen)
inputs = processor(images=imagen, return_tensors="pt")

# Generar la descripción de la imagen
salida = model.generate(**inputs)
descripcion = processor.decode(salida[0], skip_special_tokens=True)

# Mostrar la imagen y su descripción
plt.figure(figsize=(8, 8))
plt.imshow(imagen)
plt.axis("off")
plt.title("Descripción generada: " + descripcion)
plt.show()

# Imprimir la descripción en texto
print("Descripción de la imagen:", descripcion)


¡Por supuesto! Te proporcionaré un programa para Google Colab que realice un proceso similar al que describes: tomar una imagen de una URL, analizarla para generar una descripción en texto, y luego mostrar tanto la imagen como el texto generado. Para esto, usaremos la biblioteca **transformers** de Hugging Face y **PIL** para cargar y visualizar la imagen.

Este programa usará el modelo **BLIP** (Bootstrapping Language-Image Pretraining), que es muy efectivo para tareas de generación de descripciones de imágenes.

### Código para Google Colab

```python
# Instalar Hugging Face Transformers y TorchVision si aún no están instalados
!pip install -q transformers torch torchvision

# Importar las bibliotecas necesarias
import torch
from transformers import BlipProcessor, BlipForConditionalGeneration
from PIL import Image
import requests
from io import BytesIO
import matplotlib.pyplot as plt

# Función para cargar la imagen desde una URL y convertirla en el formato necesario
def cargar_imagen(url):
    response = requests.get(url)
    image = Image.open(BytesIO(response.content)).convert("RGB")
    return image

# Configuración del modelo y procesador BLIP
processor = BlipProcessor.from_pretrained("Salesforce/blip-image-captioning-base")
model = BlipForConditionalGeneration.from_pretrained("Salesforce/blip-image-captioning-base")

# URL de la imagen
url_imagen = "https://img.freepik.com/foto-gratis/mujer-tiro-completo-bicicleta-al-aire-libre_23-2149413735.jpg"

# Cargar y procesar la imagen
imagen = cargar_imagen(url_imagen)
inputs = processor(images=imagen, return_tensors="pt")

# Generar la descripción de la imagen
salida = model.generate(**inputs)
descripcion = processor.decode(salida[0], skip_special_tokens=True)

# Mostrar la imagen y su descripción
plt.figure(figsize=(8, 8))
plt.imshow(imagen)
plt.axis("off")
plt.title("Descripción generada: " + descripcion)
plt.show()

# Imprimir la descripción en texto
print("Descripción de la imagen:", descripcion)
```

### Explicación del Código
1. **Carga de librerías**: Se instalan e importan las librerías necesarias, como `transformers` para el modelo de Hugging Face, y `PIL` y `requests` para cargar y procesar la imagen.
2. **Cargar Imagen desde URL**: Se descarga la imagen desde la URL especificada y se convierte en un formato adecuado para el modelo.
3. **Configurar y Cargar el Modelo BLIP**: Usamos el modelo `BLIP` para la generación de descripciones. Este modelo toma una imagen como entrada y genera un texto descriptivo.
4. **Generación de la Descripción**: Se genera la descripción de la imagen en texto y se muestra junto con la imagen en un gráfico.
Este código debería funcionar en Google Colab y dar una descripción precisa de la imagen. Puedes cambiar la URL de `url_imagen` a cualquier imagen de tu elección para obtener descripciones personalizadas.

BLOQUE 3. FUNDAMENTOS DA IA SENSORIZACIÓN E ACTUACIÓN_4ºESO

BLOQUE 3. FUNDAMENTOS DA IA SENSORIZACIÓN E ACTUACIÓN_4ºESO

(_pagina 75 _Sesion1_Cefo_Inteligencia Artificial para la sociedad_2024)


Vídeo sinxelo para os estudantes cos conceptos básicos da visión artificial:  

Recurso: code.org

https://www.youtube.com/watch?v=2hXG8v8p0KM&t=327s


Google Cloud Vídeo sinxelo para os estudantes sobre a visión humana e a visión artificial

Recurso: Google Cloud

(Poner subtítulos traducción automática Español)


https://www.youtube.com/watch?v=OcycT1Jwsns



........


BLOQUE 3. FUNDAMENTOS DA IA
REPRESENTACIÓN E RAZONAMENTO
Representación e razoamento
Tabla de código ASCII

https://elcodigoascii.com.ar/codigos-ascii-extendidos/signo-centavo-centimo-centesimo-codigo-ascii-189.html


TABLA DE IBM
tabla para pasar de ASCII a binario, palabras

https://www.ibm.com/docs/es/aix/7.1?topic=adapters-ascii-decimal-hexadecimal-octal-binary-conversion-table


Link directo de CyberChef
Pasar a las recetas(al medio) TO binary(lo escribes y lo arrastras), escribir en input y lo cambia abajo a la derecha, en output

Aquí lo eliges a la derecha, el CyberChef, mejor emplea el link de arriba, va directamente


Codigo UNICODE (contiene el ASCII, que es hasta 128+tecla alt). El ASCII extendido es a partir del ALT+128)
Unicode no podemos representarlo como el código ASCII (con bloque numérico activado  y tecla ALT). Con 1 byte representas el ASCII. Hasta 2^8=256
En UNICODE están las letras árabes, latín, armenio,mandarín
- ucraniano y ruso(cirílico).Necesitas 2 BYTES.
Comprarías un teclado específico.



31_10 correos


Ejemplo 1  ( chatGPT)
Por favor convierte este binario en ASCII :
01101000 01101111 01101100 01100001 00100000 01100001 01101101 01101001 01100111 01101111 01110011

hola amigos
Ejer 2:
Convierte de Unicode a texto:
U+0048 U+006F U+006C U+0061
U+0050 U+0061 U+007A U+0020 U+0061 U+006D U+0069 U+0067 U+006F U+0073

Soluciones esperadas:

  1. "Hola"
  2. "Paz amigos"
Ejercicio 3:
Por favor convierte estas palabras a Unicode:
 - Vacaciones    U+0056 U+0061 U+0063 U+0061 U+0063 U+0069 U+006F U+006E U+0065 U+0073
      
- Tomate U+0054 U+006F U+006D U+0061 U+0074 U+0065

- Bien    U+0042 U+0069 U+0065 U+006E

 - Mal   U+004D U+0061 U+006C

 - Queso     U+0051 U+0075 U+0065 U+0073 U+006F










Recursos para IA y openshot: videos .mp4: Pixabay y pexels.com para GoogleColab. Imágenes: freepik.es Con IA


Recursos para IA

Videos .mp4 para googlecolab ejercicio 6

Lo usa en seguimiento de objetos_ object traccking de Fran Puentes

googleColab solo admite videos .mp4

https://www.pexels.com/es-es/

pixabay, también hay música gratis para openshot, .mp3

También unsplash descargas fotos, wal, uso gratuito bajo licencia unsplash

Imagenes Con IA


https://www.freepik.es/

José Loureiro canal you tube: openShot, Gimp......

BLOQUE 5_Páginas de IA generativa de video (gratis y sin pagar) para 4º ESO IA artificial_Inteligencia artificial

 Aquí te dejo algunas plataformas que SÍ generan videos a partir de un prompt de texto (como: "Haz un video de un perro aprendiendo a leer") y que tienen versiones gratuitas:


🧠 Páginas de IA generativa de video (gratis y sin pagar):

1. Pika Labs (https://pika.art)

  • ⚡ IA generativa de video real, solo necesitas escribir un prompt.

  • 🎨 Puedes pedir cosas como: “Un gato volando en un globo en un cielo rosado”.

  • 👦 Ideal para creatividad con niños.

  • ✅ Gratis (necesitas crear cuenta, pero no tarjeta).

  • 📽️ Algunos videos duran solo unos segundos.

2. Runway ML (Gen-2) (https://runwayml.com)

  • 🔥 Muy popular para generar videos a partir de texto o imágenes.

  • ✏️ Puedes escribir un prompt como “Una mariposa mecánica volando sobre flores”.

  • ✅ Plan gratuito (hasta unos minutos de video por mes).

  • 🎓 Ideal para explorar en clases.

3. Kaiber (https://www.kaiber.ai)

  • 🎥 Transforma texto o imágenes en animaciones y clips.

  • 👾 Interfaz amigable, buena para usar con niños (supervisados).

  • ✅ Tiene prueba gratuita limitada (sin necesidad de pagar).

4. Synthesia ( no bueno_pr)(https://www.synthesia.io)

  • 🤖 Especializado en generar presentadores virtuales leyendo guiones.

  • 🧑‍🏫 Muy útil para crear explicaciones narradas (tipo maestro digital).

  • ✅ Gratis con registro, aunque muy limitado.


Extra: ¿Te gustaría algo más tipo dibujo animado?

También puedes explorar:

🖍️ StoryboardHero (https://storyboardhero.ai)

  • 🖼️ No es video 100% animado, pero genera ilustraciones por prompt y las convierte en una presentación.

  • 🎬 Sirve para contar historias visuales paso a paso.


RESPUESTA 2:

Si estás buscando herramientas que realmente generen videos automáticamente a partir de una descripción escrita (como “un zorro entrando al bosque”), aquí van algunas opciones gratuitas y más centradas en IA generativa:


🎬 1. Pika Labs (https://pika.art/)

  • ✅ IA generativa de video real: puedes escribir un prompt como “un dragón volando sobre una montaña” y lo convierte en un clip animado.

  • ✅ Gratis con registro (puedes usarlo desde Discord o la web oficial).

  • 🚸 Muy visual, perfecto para atraer la atención de niños.


🪄 2. Runway ML (https://runwayml.com/)

  • ✅ Puedes generar videos a partir de texto o transformar imágenes en animaciones.

  • ✅ Tiene un plan gratuito limitado que te da algunos créditos para probar.

  • 🎓 Es ideal para educación creativa.

  • ❗ Requiere una cuenta y puede ser un poco más técnico al principio.


🧠 3. Kaiber (https://www.kaiber.ai/)

  • ✅ Convierte imágenes o descripciones en videos con estilo artístico.

  • ✅ Tiene un modo de texto a video.

  • 🆓 Tiene prueba gratuita (luego requiere pago para más funciones).

  • 🎨 Ideal para crear animaciones tipo cuento.


🧸 4. Animai (https://www.animai.co/)

  • ✅ Está pensado para crear videos educativos e historias animadas con personajes generados por IA.

  • ✅ Puedes escribir lo que quieres enseñar y genera un video narrado con personajes.

  • 🆓 Tiene versión gratuita para empezar.


📚 ¿Cuál recomiendo para niños?

Pika Labs o Kaiber, si quieres algo que luzca impresionante con poco esfuerzo.
Animai, si el objetivo es enseñar algo y hacerlo tipo cuento o explicación con muñequitos.




martes, 29 de octubre de 2024

Tutoriales OPENSHOT_openshot Jose Loureiro

José Loureiro  tutorial Open Shot (TAMBIÉN TIENE TUTORIALES DE GIMP)

(Ver libreta )

En pixabay y freepik hay videos gratis para descargar 

SI GRABAN VIDEOS EN MÓVIL CON CONECTOR NUEVO,  q no puedes conectar con cable a la torre,  PARA PASAR los videos A LA TORRE rápidamente:

POR EJEMPLO DE DURACION DE 1.20 MINUTOS O MENOS CON WIFI YA TE LOS SUBE A DRIVE PARA DESCARGARLOS Y PASAR A OPENSHOT en segundos .

También puedes subir a openshot audios con tu voz  grabados en móvil Android extensión  . M4a

Grabas con móvil, los subes a drive con wifi y los descargas en el ordenador si no tienes conector para la torre desde l móvil nuevo. 

Tutorial Tutorial 1

 https://youtu.be/3Vh5XjYEl9A?si=Sf2pqZG8cE32Sabm

 

Tutorial 2

https://youtu.be/yRIUJEgkXuY?si=IZwxPSV66UQhhIUw


Tutorial 3 


https://youtu.be/mQMf7nbx4is?si=jZHUhuEMc9BaO_Sk


Hay tutorial 4



Tutoriales openshot  jose loureiro 

buenos.


Explicación en libreta verde

APUNTES: LIBRECAD_Buen tutorial Javier Mulet Pradera

 https://www.youtube.com/watch?v=oh0gqEFiCc0

https://www.youtube.com/watch?v=oh0gqEFiCc0

tutorial Javier Mulet Pradera libreCad

Si desaparece la linea de comandos:

arriba, en el menú superior:En Widgets--->Docs  Widgets----->linea de comandos.

DAR A ENTER cuando estás usando una herramienta CORTAR LINEA (U OTRA) COMO EN MINUTO 12,     para que la linea de comandos te pida la siguiente opción para    GIRAR, RECORTAR, PUNTO DE GIRO , PUNTO DE REFERENCIA..... para terminar la operación.

En Herramientas ( A LA IZQUIERDA, OCTAVA OPCIÓN):

recortar, 

mover y rotar

girar

SIMETRÍA


Utilizar las cinco primeras herramientas  y  RECORTAR (MINUTO 13 DEL VIDEO ) Y ESTIRAR.


EN LA PRIMERA HERRAMIENTA, LINEA, está la  OPCIÓN DE POLÍGONO, DIBUJAR ESTRELLA CON VARIAS PUNTAS.

MÁS clik en menú  EDITAR COPIAR Y EDITAR PEGAR, (COMO w_a) después de seleccionar la pieza.
Más menú EDITAR:     PUNTERO    SELECCIÓN   Y   pulsar tecla escape para salir modo selección del puntero (w_a)


MENÚ SUPERIOR: ARCHIVO    print    preview y ves la vista previa de impresión, SI CABEN los ejercicios al imprimir (ejer picuino1).

Luego lo desactivas para volver a la vista normal (click en ARCHIVO print preview de nuevo).


Mover plano con  rueda ratón pulsada y zoom girando rueda ratón hacia alante y atrás, como en otros programas de diseño.

Y menú superior ver : zoom in y zoom out (hacer más grande y más pequeño).

Editar (menú superior)------>puntero selccción   para seleccionar objetos



viernes, 25 de octubre de 2024

ILaAAprendePatrones_ejercicioEnGoogleColab_DeClaude(punto)aiBlogger2_11.ipynb

 


Te explico cómo usar estos ejemplos en clase:

  1. Primera Clase: "La IA Aprende Patrones"
    • Usa el primer ejemplo para mostrar cómo la IA puede aprender patrones numéricos
    • Pide a los estudiantes que adivinen qué patrón está aprendiendo la IA
    • Déjales modificar los números para crear sus propios patrones
  2. Segunda Clase: "Emociones y Máquinas"
    • Utiliza el clasificador de emociones para introducir el concepto de clasificación
    • Propón que añadan más emojis y emociones
    • Discutan sobre cómo las máquinas pueden "entender" emociones
  3. Tercera Clase: "IA Creativa"
    • Usa el generador de historias para mostrar cómo la IA puede ser creativa
    • Pide que modifiquen las plantillas para crear diferentes tipos de historias
    • Discutan los límites entre creatividad humana y artificial

# Sesión 1: Introducción a la IA con Números # ¡Adivina el número que estoy pensando!

#celda 1
import random
import numpy as np
from sklearn.linear_model import LinearRegression
import matplotlib.pyplot as plt


#celda 2

# Ejemplo 1: IA que aprende patrones numéricos
def crear_juego_adivinanza():
    # Generamos datos de entrenamiento (números pares)
    X_train = np.array([[2], [4], [6], [8], [10]])
    y_train = np.array([4, 8, 12, 16, 20])  # El patrón es multiplicar por 2
   
    # Entrenamos el modelo
    modelo = LinearRegression()
    modelo.fit(X_train, y_train)
   
    # Función para predecir
    def adivinar_siguiente(numero):
        prediccion = modelo.predict([[numero]])
        return prediccion[0]
   
    return adivinar_siguiente

#celda 3

def clasificador_emociones(emoji):
    emociones = {
        "😊": "feliz",
        "😢": "triste",
        "😡": "enojado",
        "😴": "cansado",
        "🤔": "pensativo"
    }
    return emociones.get(emoji, "No reconozco ese emoji")

#celda4
def generador_historias(personaje, lugar, accion):
    plantilla = f"""
    Había una vez un {personaje} que vivía en {lugar}.
    Un día decidió {accion} y descubrió algo increíble...
    La IA está aprendiendo a crear historias,
    ¿puedes ayudarla a mejorar esta?
    """
    return plantilla


#celda 5

if __name__ == "__main__":
    # Ejemplo 1
    juego = crear_juego_adivinanza()
    print("La IA predice que después del 12 viene:", juego(12))
   
    # Ejemplo 2
    print("La IA reconoce que 😊 significa:", clasificador_emociones("😊"))
   
    # Ejemplo 3
    historia = generador_historias("robot", "una biblioteca", "leer todos los libros")
    print(historia)


RESULTADO:
La IA predice que después del 12 viene: 24.0 La IA reconoce que 😊 significa: feliz Había una vez un robot que vivía en una biblioteca. Un día decidió leer todos los libros y descubrió algo increíble... La IA está aprendiendo a crear historias, ¿puedes ayudarla a mejorar esta?

miércoles, 23 de octubre de 2024

Ejercicio9De audio a texto y viceversaFranCuesta.ipynb. Herramientas que permiten convertir archivos .m4a a .wav sin instalar software adicional: Online Audio Converter

https://colab.research.google.com/ 

tener abierto el gmail


Opción 1: Convertir online
Puedes usar herramientas en línea que te permiten convertir archivos .m4a a .wav sin instalar software adicional:


Online Audio Converter: Es una herramienta sencilla para convertir archivos de audio entre diferentes formatos, incluido .m4a a .wav.
  • Sube tu archivo .m4a.
  • Selecciona el formato de salida como .wav.
  • Descarga el archivo convertido.
Convertio: Este sitio también permite convertir archivos .m4a a .wav de forma gratuita.
  • Arrastra o selecciona tu archivo .m4a.
  • Elige el formato de salida .wav.
  • Descarga el archivo convertido.


Primero grabé con el móvil, da .m4a y luego
usé el primer ejemplo (Online Audio Converter) para el ejercicio de Fran Cuesta Ejercicio 9 De audio a texto y viceversa.ipynb.

Solo funcionaba con .wav

Correos con archivo noruega.m4a   y noruega.wav

25 10 2024
Pasado ya  a noruega.wav


jueves, 17 de octubre de 2024

Visión de los vehículos autónomos_visión artificial_y radiofrecuencia y RADAR

https://www.iberdrola.com/innovacion/vision-artificial



 https://revistacentrozaragoza.com/lidar-o-camaras-la-vision-de-los-vehiculos-autonomos/


Radiofrecuencia: video emisor y receptor 

https://youtu.be/i1mpbQbcaeE?si=LDpIoVf-fIgPnO5J

Es un buen video de radiofrecuencia 

C)Radar y radiofrecuencia wikipedia 

https://es.m.wikipedia.org/wiki/Radiofrecuencia

miércoles, 16 de octubre de 2024

huggingface segmentación de imágenes huggingface

 https://huggingface.co/docs/transformers/main/tasks/semantic_segmentation

https://huggingface.co/docs/transformers/main/tasks/semantic_segmentation



segementación de imágenes

PERFECTAS EXPLICACIONES EN CASTELLANO TRADUCIDO DIRECTAMENTE 

huggingface
Hay más ejemplos

en carballalrosales@gmail.com
google colab perfecto

Estimacion de pose_ejer 6

 de juan francisco puentes:


# prompt: Dada una imagen referenciada mediante una url, muestra la imagen y lleva a cabo una estimación de pose usando yolo v8.

!pip -q install ultralytics

from ultralytics import YOLO
from PIL import Image
import requests
import cv2
from io import BytesIO

def estimate_pose(image_url):
  response = requests.get(image_url)
  image = Image.open(BytesIO(response.content))
  display(image)

  model = YOLO('yolov8x-pose.pt')
  results = model(image)
  return Image.fromarray(cv2.cvtColor(results[0].plot(boxes=False, labels=False, probs=False), cv2.COLOR_BGR2RGB))


# Ejemplo de uso
image_url = 'https://raw.github.com/FranPuentes/iTI2025/main/data/wheelchair-person.jpg'
img=estimate_pose(image_url)
img






06 detección de expresiones faciales_Juan Francisco Puentes

 # prompt: Dada una imagen referenciada mediante una url, muestra los landmarks de las caras que aparezcan en ellas.


import numpy as np
# Instalar las librerías necesarias
!pip install -q mediapipe opencv-python

# Importar las librerías
import cv2
import mediapipe as mp
import urllib.request

from google.colab.patches import cv2_imshow

# Inicializar el detector de caras
mp_face_mesh = mp.solutions.face_mesh
face_mesh = mp_face_mesh.FaceMesh(static_image_mode=True, max_num_faces=2)

# Definir la URL de la imagen
url = 'https://previews.123rf.com/images/warrengoldswain/warrengoldswain1610/warrengoldswain161000017/64945843-la-colecci%C3%B3n-completa-de-las-caras-reales-gente-divertida-que-hace-expresiones-tontas.jpg'

# Leer la imagen desde la URL
with urllib.request.urlopen(url) as response:
  image = response.read()

# Convertir la imagen a un array NumPy
image = cv2.imdecode(np.frombuffer(image, np.uint8), -1)

# Detectar los landmarks de las caras
results = face_mesh.process(image)

# Dibujar los landmarks en la imagen
if results.multi_face_landmarks:
  for face_landmarks in results.multi_face_landmarks:
    mp.solutions.drawing_utils.draw_landmarks(
        image=image,
        landmark_list=face_landmarks,
        connections=mp_face_mesh.FACEMESH_TESSELATION,
        landmark_drawing_spec=None,
        connection_drawing_spec=mp.solutions.drawing_styles.get_default_face_mesh_tesselation_style())

# Mostrar la imagen con los landmarks
cv2_imshow(image)


CAMBIA EL URL DE FRANCISCO PUENTES, DA ERROR




Estimación de la profundidad_EJER 8 y Bordes ejercicio 4 de Juan Francisco Puentes

Mira esto primero:

 https://huggingface.co/docs/transformers/main/tasks/monocular_depth_estimation

hay más ejemplos en esta página, te manda ir Fran Puentes Calvo

https://github.com/FranPuentes/iTI2025/blob/main/08%20depth%20estimation.ipynb

en el ejercicio 8 estimación de profundidad

pip install -q -U transformers

Funciona en Google Colab

Puedes poner otra url de otra fotografia








Detección de bordes, ejemplo 4 Fran Puentes, operaciones básicas con imágenes

Puedes cambiar la url del foto y vale










martes, 15 de octubre de 2024

# prompt: Dada una imagen referenciada mediante una url, muestra los landmarks de las caras que aparezcan en ellas.

Francisco Puentes, ejercicio de detección de emociones.

Puedes variar la url de la imagen.


# prompt: Dada una imagen referenciada mediante una url, muestra los landmarks de las caras que aparezcan en ellas.

import numpy as np
# Instalar las librerías necesarias
!pip install -q mediapipe opencv-python

# Importar las librerías
import cv2
import mediapipe as mp
import urllib.request

from google.colab.patches import cv2_imshow

# Inicializar el detector de caras
mp_face_mesh = mp.solutions.face_mesh
face_mesh = mp_face_mesh.FaceMesh(static_image_mode=True, max_num_faces=2)

# Definir la URL de la imagen
url = "https://img.europapress.es/fotoweb/fotonoticia_20150331134913-15031252349_600.jpg"

# Leer la imagen desde la URL
with urllib.request.urlopen(url) as response:
  image = response.read()

# Convertir la imagen a un array NumPy
image = cv2.imdecode(np.frombuffer(image, np.uint8), -1)

# Detectar los landmarks de las caras
results = face_mesh.process(image)

# Dibujar los landmarks en la imagen
if results.multi_face_landmarks:
  for face_landmarks in results.multi_face_landmarks:
    mp.solutions.drawing_utils.draw_landmarks(
        image=image,
        landmark_list=face_landmarks,
        connections=mp_face_mesh.FACEMESH_TESSELATION,
        landmark_drawing_spec=None,
        connection_drawing_spec=mp.solutions.drawing_styles.get_default_face_mesh_tesselation_style())

# Mostrar la imagen con los landmarks
cv2_imshow(image)





miércoles, 2 de octubre de 2024

IMPORTANTE_Ejemplos de Google Colab, tienes que tener cuenta en Google (valen las de gmail)


IMPORTANTE_Ejemplos de Google Colab, notebook, tienes que tener cuenta en Google.


Un uso común de los cuadernos es la visualización de datos mediante gráficos. Colaboratory facilita esta tarea con varias herramientas de creación de gráficos disponibles como importaciones de Python.

 https://colab.research.google.com/notebooks/charts.ipynb


 https://colab.research.google.com/notebooks/charts.ipynb



Entras en tu cuenta en Google Colab (valen las de gmail)

Están todos los ejemplos en EL APARTADO CIENCIA DE DATOS.





Puedes llevar estos ejemplos a Jupiter notebook

GrÁfico de lineas, google colab o jupyter ,GRÁFICO DE DISPERSIÓN Y DETECCIÓN DE PROFUNDIDAD, NOTEBOOK, PÍDELE A TU IA FAVORITA,

# Importar bibliotecas necesarias

import numpy as np

import matplotlib.pyplot as plt


# Datos de ejemplo

x = np.linspace(0, 10, 100)

y = np.sin(x)


# Crear gráfico de líneas

plt.figure(figsize=(10, 6))

plt.plot(x, y, label='Seno', color='blue')

plt.title('Gráfico de Líneas del Seno')

plt.xlabel('X')

plt.ylabel('Seno(X)')

plt.legend()

plt.grid()

plt.show()




GRÁFICO DE DISPERSIÓN

# Importar bibliotecas necesarias
import numpy as np
import matplotlib.pyplot as plt

# Datos de ejemplo
x = np.random.rand(100)
y = np.random.rand(100)

# Crear gráfico de dispersión
plt.figure(figsize=(10, 6))
plt.scatter(x, y, color='red')
plt.title('Gráfico de Dispersión')
plt.xlabel('Eje X')
plt.ylabel('Eje Y')
plt.grid()
plt.show()








Cómo Usar en Google Colab

  1. Abre Google Colab.
  2. Crea un nuevo notebook.
  3. Copia y pega cada uno de estos bloques de código en celdas diferentes y ejecútalos.(Le llama celda a donde pegas todo el programa)
Lo mismo en jupyter notebook



3. Detección de Profundidad usando OpenCV

Para este ejemplo, necesitarás instalar OpenCV en Google Colab. Aquí hay un ejemplo simple:

# Instalar OpenCV !pip install opencv-python import cv2 import numpy as np from matplotlib import pyplot as plt # Cargar imagen (puedes subir una imagen en Colab) from google.colab import files uploaded = files.upload() # Leer la imagen image_path = list(uploaded.keys())[0] image = cv2.imread(image_path, cv2.IMREAD_GRAYSCALE) # Aplicar un filtro de detección de bordes edges = cv2.Canny(image, 100, 200) # Mostrar la imagen original y la imagen de bordes plt.figure(figsize=(12, 6)) plt.subplot(1, 2, 1) plt.imshow(image, cmap='gray') plt.title('Imagen Original') plt.axis('off') plt.subplot(1, 2, 2) plt.imshow(edges, cmap='gray') plt.title('Detección de Bordes') plt.axis('off') plt.show()



TE PIDE LA IMAGEN EN GOOGLE COLAB, EN JUPYTER DA ERROR.


árboles de decisión_ BLOQUE 3 curso Cefo. Inteligencia_artificial para la sociedad

 https://app.diagrams.net/          --------->           Es draw.io, pones  draw.io en buscador, es bueno y fácil Tienes que tener cuenta...