JABenito

JABenito

Analizar imágenes con IA local y generar textos para redes

casos reales, herramientas, automatización y proyectos donde usamos inteligencia artificial para crear contenidos, optimizar procesos y desarrollar soluciones útiles.

Analizar imágenes con IA local y generar textos para redes

casos reales, herramientas, automatización y proyectos donde usamos inteligencia artificial para crear contenidos, optimizar procesos y desarrollar soluciones útiles.
Analizar imágenes con IA local y generar textos para redes

Parte 2: Python, Ollama, modelos de visión, modelos escritores y estilo editorial propio

Objetivo: analizar cada imagen preparada en la carpeta ia, extraer información visual, palabras clave y generar distintas versiónes de texto para web, Facebook, Instagram y publicaciónes.
 

1. Punto de partida

En la primera parte dejamos una carpeta `ia` con imágenes optimizadas para que los modelos de visión puedan trabajar de forma mas ligera y estable. Ahora usamos esas imágenes para obtener información visual y generar textos útiles.
La idea no es que la IA invente una historia a partir de una foto. La idea es que observe la imagen, describa lo que realmente se ve y, a partir de ahi, genere textos publicables con un estilo controlado.
  • Python automatiza el proceso.
  • Ollama ejecuta modelos de IA en local.
  • El archivo estilo_jabenito.txt controla el tono editorial.

2. Qué hace esta segunda fase

  1. Detecta imágenes pendientes.
  2. Extrae metadatos básicos del archivo.
  3. Intenta leer datos EXIF y coordenadas GPS si existen.
  4. Envia la imagen a un modelo de visión en Ollama.
  5. Obtiene una descripcion visual estructurada.
  6. Extrae elementos principales y palabras clave.
  7. Clasifica la imagen por tipo de escena, categoría y tono.
  8. Pasa ese análisis a un modelo de texto.
  9. Genera titulo, textos para Facebook e Instagram y hashtags.
  10. Guarda los resultados en SQLite.
  11. Exporta todo a Excel.
  12. Mueve las imágenes ya analizadas a una carpeta de procesadas.

3. Instalar Python

Para ejecutar el sistema necesitamos Python instalado en Windows. Conviene descargarlo desde la web oficial y marcar la opción para añadir Python al PATH durante la instalación.
Web oficial:
https://www.python.org/downloads/windows/
 
Comprobar instalacion:
python --version
python -m pip --version
 
 

4. Crear carpeta de trabajo y entorno virtual

mkdir D:/JABENITO/IA
cd D:/JABENITO/IA
 
py -m venv .venv
./.venv/Scripts/Activate.ps1
 
 
Si PowerShell bloquea la activacion del entorno virtual, se puede permitir temporalmente en esa sesion:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
./.venv/Scripts/Activate.ps1
 
 

5. Instalar requisitos de Python

El script necesita tres librerias principales:
pip install requests pillow openpyxl
 
 
Libreria Funcion
requests Comunicacion HTTP con Ollama.
pillow Apertura de imágenes y lectura de metadatos EXIF/GPS.
openpyxl Creacion del Excel final con los resultados.
 
 
También se puede crear un archivo `requirements.txt`:
requests
pillow
openpyxl
 
Instalacion:
pip install -r requirements.txt
 
 

6. Instalar Ollama

Ollama permite ejecutar modelos de inteligencia artificial en local. Esto evita tener que subir cientos o miles de imágenes a servicios externos.
Web oficial:
https://ollama.com/download/windows
 
Instalacion desde PowerShell:
irm https://ollama.com/install.ps1 | iex
 
Comprobacion:
ollama --version
ollama list
 
 
El script se comunica con Ollama usando el endpoint local:
http://localhost:11434/api/generate
 
 

7. Descargar modelos de IA

El sistema separa dos tareas: un modelo de visión analiza la imagen y un modelo escritor redacta los textos finales. Los modelos se descargan con `ollama pull`.
ollama pull gemma3:4b
ollama pull qwen2.5vl:7b
ollama pull qwen3:8b
ollama pull gemma4
 
ollama list
 
 
El nombre exacto del modelo debe coincidir con el disponible en la instalación local. Si un modelo no existe con ese nombre, se revisa la biblioteca de modelos de Ollama y se adapta el comando.

8. El archivo de estilo

Una parte importante del sistema es `estilo_jabenito.txt`. No basta con pedir a la IA que escriba. Hay que decirle como debe escribir y que no debe hacer.
El estilo define un tono en español de España, profesional, cercano, visual y humano. También evita frases vacías de marketing, exageraciones, emojis, llamadas forzadas y datos inventados.
Con este archivo, los textos dejan de sonar como publicaciónes genericas y se acercan mas a una redacción útil para web y redes sociales.
Ejemplo de reglas del estilo:
- no inventar ubicaciones, fechas o situaciones
- evitar topicos turisticos
- priorizar observacion y claridad
- generar Facebook, Instagram y hashtags concretos
- si algo no esta claro, escribir con prudencia
 
 

9. Análisis visual generado

La primera llamada a la IA se hace con la imagen. El modelo de visión devuelve un JSON estructurado con campos útiles para clasificar y redactar.
scene_type
summary
key_elements
visible_text
mood
category
confidence
notes
 
 
Esto convierte una imagen en datos aprovechables. Por ejemplo, una fotografia de senderismo puede transformarse en elementos como personas, sendero, rocas, montanas, cielo despejado, categoría senderismo y tono natural.

10. Textos generados para publicaciónes

Después del análisis visual, el script pasa esa información al modelo escritor. El resultado incluye varias opciónes por imagen.
title
facebook_direct
facebook_emotional
instagram_direct
instagram_emotional
hashtags
tone
recommended_variant
editorial_notes
 
 
Esto permite elegir entre una versión directa, una versión mas emocional, textos mas cortos para Instagram, texto mas contextual para Facebook y hashtags concretos relacionados con lo que se ve.

11. Comando de ejecución recomendado

cd D:/JABENITO/IA
 
python ./procesar_fotos_ollama_v4_12_1_mover_analizadas.py `
  --input "D:/JABENITO/Fotos/ia" `
  --output-dir "D:/JABENITO/IA/salida" `
  --vision-model "gemma4" `
  --writer-model "qwen3:8b" `
  --batch-size 5 `
  --recursive `
  --folder-context `
  --style-file "D:/JABENITO/IA/estilo_jabenito.txt" `
  --move-processed `
  --processed-dir "D:/JABENITO/Fotos/analizadas" `
  --force
 
 
Parametro Uso
--input Carpeta con las imágenes que se van a analizar.
--output-dir Carpeta donde se guardan SQLite, Excel y salidas.
--visión-model Modelo múltimodal que analiza la imagen.
--writer-model Modelo que redacta los textos.
--style-file Archivo TXT con el estilo editorial.
--folder-context Usa el nombre de la carpeta como contexto adicional.
--move-processed Mueve las imágenes correctas a la carpeta de analizadas.
--force Reprocesa aúnque ya existan resultados anteriores.
 
 

12. Salidas generadas

Al terminar, el sistema genera una base de datos SQLite y un Excel.
publicaciones.db
publicaciones.xlsx
 
 
El Excel permite revisar, filtrar, comparar y seleccionar textos. Algunas columnas útiles son:
file_name
scene_type
summary
key_elements
mood
category
confidence
title
facebook_direct
facebook_emotional
instagram_direct
instagram_emotional
hashtags
recommended_variant
editorial_notes
status
error
processed_at
 
 

13. Combinaciones de modelos probadas

Versión Modelo de visión Modelo escritor Resultado práctico
v1 gemma3:4b qwen3:8b Opción ligera y bastante estable. La visión es mas simple.
v2 qwen2.5vl:7b qwen3:8b Interesante, pero menos fiable en estas pruebas.
v3 qwen2.5vl:7b qwen2.5vl:7b Menos recomendable para este flujo.
v4 gemma4 qwen3:8b Mejor equilibrio general.
v5 gemma4 gemma4 Buena opción editorial alternativa, mas narrativa.
 
 
La mejor combinacion en nuestras pruebas ha sido v4: `gemma4` para visión y `qwen3:8b` para escritura.
`gemma4` ha dado mejor resultado leyendo imágenes, detectando detalles y evitando errores visuales. `qwen3:8b` ha funcionado mejor como redactor, con textos mas controlados, directos y fáciles de usar en redes o publicaciónes.
La combinacion `gemma4 + gemma4` puede servir como modo mas emocional o editorial, pero no la usaria como salida principal para producción masiva porque puede volverse mas narrativa y repetitiva.

14. Por qué es útil

Este sistema transforma una carpeta de imágenes en una base de contenidos. No sustituye el criterio humano, pero elimina una parte enorme del trabajo repetitivo.
  • Webs con muchas galerias.
  • Publicaciónes de redes sociales.
  • Fichas de patrimonio.
  • Imágenes de rutas y naturaleza.
  • Gastronomia y turismo rural.
  • Museos y exposiciones.
  • Documentacion de proyectos.
  • Organizacion interna de archivos visuales.

15. Flujo completo hasta este punto

1. Copiamos originales a una carpeta.
2. Ejecutamos el script de ImageMagick.
3. Se generan JPG y WebP para web.
4. Se crea una version ligera para IA.
5. Ejecutamos el script de Python con Ollama.
6. La IA analiza cada imagen.
7. Se generan textos y hashtags.
8. Se exporta todo a Excel.
9. Revisamos y usamos los textos en web, redes o publicaciones.
 
 

16. Siguiente paso

El siguiente paso natural es usar el Excel generado como base editorial. A partir de ahi se pueden revisar textos, elegir la mejor variante, preparar calendarios de publicación, generar HTML para galerias, alimentar una base de datos o automatizar publicaciónes.
La IA no hace magia. Pero cuando se integra en un proceso bien diseñado, permite trabajar con una cantidad de material que seria muy difícil gestionar manualmente.
 

17. Enlaces y notas para publicar

  • Python para Windows: https://www.python.org/downloads/windows/
  • Ollama para Windows: https://ollama.com/download/windows
  • Instalación de modelos: ollama pull nombre-del-modelo
  • Requisitos Python: requests, pillow, openpyxl

18. Checklist final de instalación

  • ImageMagick instalado y `magick -version` responde correctamente.
  • Python instalado y disponible desde PowerShell.
  • Entorno virtual creado y activado en la carpeta de trabajo.
  • Librerías `requests`, `pillow` y `openpyxl` instaladas.
  • Ollama instalado y funcionando en local.
  • Modelos descargados y visibles con `ollama list`.
  • `estilo_jabenito.txt` colocado en la ruta indicada.
  • Carpeta `ia` preparada con imágenes ya redimensionadas.
  • Carpeta de salida creada para guardar SQLite y Excel.
  • Primera prueba realizada con pocas imágenes antes de lanzar un lote grande.
Recomendación práctica: antes de procesar cientos o miles de fotografías, conviene probar el flujo con 4 o 5 imágenes representativas. Así se valida que los modelos responden bien, que el estilo se aplica correctamente y que el Excel final contiene los campos esperados.
Prueba mínima recomendada:
 
python ./procesar_fotos_ollama_v4_12_1_mover_analizadas.py `
  --input "D:/JABENITO/Fotos/ia" `
  --output-dir "D:/JABENITO/IA/salida" `
  --vision-model "gemma4" `
  --writer-model "qwen3:8b" `
  --batch-size 2 `
  --style-file "D:/JABENITO/IA/estilo_jabenito.txt"
 

Parte 1


GitHub

Para más Información rellena el siguiente formulario.


Ley de Protección de Datos

Responsable: José Alfonso Benito Guerras
Finalidad: Informarle sobre los productos / servicios solicitados por el usuario.
Legitimación: Legitimación por ejecución de un contrato.
Destinatarios: No se cederán datos a terceros, salvo obligación legal.
Derechos: Tiene derecho a acceder, rectificar y suprimir los datos, así como otros derechos, como se explica en la información adicional.
Ubicación: Puede consultar la información adicional y detallada sobre Protección de Datos en el apartado AVISO LEGAL, situado en esta misma web.