Transformación de Imágenes Usando IA Sin Salir de Tu Aplicación React

Rate this content
Bookmark

Las bibliotecas de optimización de imágenes abstraen las partes difíciles de trabajar con imágenes para que puedas concentrarte en la implementación. Pero estas herramientas no te permiten hacer transformaciones complejas a tus imágenes existentes. Agregar texto, eliminar fondos distractores, o escalar imágenes a una resolución superior requiere que descargues, transformes y vuelvas a subir tus imágenes. Esta charla explorará el uso de las APIs de imágenes de IA y unpic-image para manejar transformaciones de imágenes complejas dentro de nuestras aplicaciones React. Eliminaremos y reemplazaremos fondos de imágenes y usaremos el recorte facial consciente del contexto para crear diseños responsivos.

5 min
13 Nov, 2023

Comments

Sign in or register to post your comment.

AI Generated Video Summary

La charla de hoy discute la importancia de transformar imágenes con IA en aplicaciones React y los beneficios de usar CDNs de imágenes. El orador enfatiza la importancia de las imágenes como un componente crucial de los sitios web y la naturaleza que consume tiempo de adoptar las mejores prácticas de imágenes. Proponen la transformación de imágenes en el borde como una alternativa más rápida y fácil. La charla también destaca el uso de la IA en la transformación de imágenes, incluyendo la eliminación de fondos, el recorte de imágenes, y la mejora de imágenes pixeladas en una aplicación Contentful Next JS. La combinación de CDNs de imágenes y parámetros de IA asegura que las imágenes siempre se vean lo mejor posible sin salir de la aplicación React.

1. Introducción a la Transformación de Imágenes

Short description:

Hoy hablaremos sobre la transformación de imágenes con IA en tu aplicación React. Es importante no olvidar las imágenes, ya que son el tejido conectivo de tus sitios. Adoptar las mejores prácticas de imagen lleva tiempo, por lo que podemos explorar la transformación de imágenes en el borde como una alternativa más rápida y fácil.

Muy bien, mi nombre es Luis Paul. Soy un ingeniero de software senior en ImageX. Hoy vamos a hablar sobre la transformación de imágenes con IA sin salir de tu aplicación React. Pero voy a ir rápido porque hay mucho contenido, así que discúlpenme, intentaré ir más despacio.

Primero, un poco de historia. Como desarrolladores, nos encanta lanzar productos. Estamos enfocados en las características, la experiencia del cliente y la satisfacción, como deberíamos estar. Ese es nuestro trabajo. Pero eso hace que sea fácil olvidar las partes que no codificamos, cosas como las imágenes. Así que podrías encontrarte en esta situación en la que lanzaste un producto viral, a la gente le encanta, pero también te están enviando mensajes diciendo, oye, es fantástico pero estás enviando 100 megabytes de imágenes. No hagamos eso. Y tienes que correr y arreglarlo. Por eso es importante no olvidar las imágenes. Son el tejido conectivo de tus sitios. Las imágenes son la forma en que los clientes experimentan tu producto por primera vez y son más importantes de lo que tendemos a darnos cuenta.

Entonces, ¿qué deberíamos hacer al respecto? Deberíamos adoptar las best practices de imagen. Hay un montón de ellas, ¿verdad? Tienes tamaños de fuente, relación de aspecto, cambios de diseño, carga perezosa, etc. Y asegurarte de cumplir con todas ellas lleva tiempo. Por lo tanto, requiere que hagas cosas como generar variantes para todas tus imágenes. ¿Cómo podemos facilitar esto? Así que nos inclinamos a hacer cosas como la transformación de imágenes como un paso de construcción. Pero no es genial. Transformar en el momento de la construcción puede llevar una eternidad. El conjunto de características es más limitado en términos de transformaciones que puedes lograr y tienes que hacer un cuidadoso mantenimiento de tus tooling para hacerlo bien a largo plazo. En resumen, la DX simplemente no es genial.

Entonces, ¿qué más podemos hacer? Podemos hacer cosas como la transformación de imágenes en el borde. Esto es rápido, fácil de integrar en cualquier aplicación. Siempre está actualizado. Puedes crear un nuevo punto de replicación fácilmente y se mantiene actualizado para ti. Pero viene con algo de sobrecarga. Tienes que crear nuevas funciones cada vez que necesitas una nueva transformación, y tienes que hacer cosas como mantener e invalidar cachés, sincronizar el activo generado de vuelta a tu cubo donde viven tus activos.

2. Transformación de Imágenes con CDN y IA

Short description:

Con un CDN de imágenes, puedes encargarte de todo el trabajo pesado y adoptar progresivamente las mejores prácticas. En nuestra aplicación Contentful Next JS, eliminamos fondos, recortamos imágenes usando IA y mejoramos la resolución de imágenes pixeladas. Aprovechamos el CDN de imágenes y los parámetros de IA para asegurar que nuestras imágenes siempre se vean lo mejor posible. Eso es transformar imágenes usando IA sin salir de tu aplicación React.

Y por eso puede volverse un poco complicado, razón por la cual la gente se inclina hacia los CDN de imágenes. Con un CDN de imágenes, puedes encargarte de todo ese trabajo pesado. Y luego puedes adoptarlo progresivamente usando algo como unpick image que se encargará de cumplir con todas estas best practices por ti. Es fantástico porque es de configuración cero con la mayoría de los grandes CDN. Simplemente sueltas la URL de tu imagen que vive en el CDN. Sabe qué hacer. Solo le das un ancho y una altura si lo necesitas. Y eso es prácticamente todo.

En resumen, no necesitas reinventar la rueda para lograr las best practices. Así que echemos un vistazo a cómo podrías usar esto en tus aplicaciones. Vamos a tener una aplicación Contentful Next JS, va a usar una biblioteca de optimization de imágenes. Utilizará un CDN de imágenes para eliminar toda esa sobrecarga y aprovechará los parámetros de IA del CDN para hacer algunas transformaciones divertidas.

Entonces, primero, vamos a eliminar fondos usando IA. Queremos hacer cumplir cierta consistencia en nuestro sitio, asegurarnos de que las cosas coincidan con nuestros diseños. Así que aquí tenemos nuestra aplicación Contentful Next JS. Tiene una imagen de héroe. Queremos eliminar el fondo. Todo lo que necesitamos hacer, usando el CDN, es usar su parámetro de eliminación de fondo, guardar, y al agregar eso a la URL, tendremos un fondo eliminado. Fue rápido, fácil, sin dolor, gracias a usar Unpick Image en el CDN. Sigamos adelante. Tenemos algunos recortes faciales de IA que queremos hacer. Queremos asegurarnos de que las imágenes siempre estén enfocadas en lo que es realmente relevante y centrado. Así que veamos cómo podemos hacer eso. Tenemos una imagen aquí, y tenemos a alguien caminando por el pasillo, pero realmente no podemos ver la cara de esta persona, y nos gustaría, así que, ¿por qué no la recortamos alrededor de la cara de esta persona? La forma en que hacemos eso es agregando algunos parámetros a la URL. Configuraremos Frick crop, agregaremos algunas dimensiones de ancho y altura. Y una vez que hemos hecho eso, ahora también queremos asegurarnos de que usamos algún reconocimiento facial para centrar automáticamente la cara del sujeto en la imagen. Fácil. Y ahora, lo último que queremos hacer, es mejorar la resolución. Este es mi favorito personal, es como un truco de magia. Puedes agregar algo de definición a las imágenes pixeladas, vas a aumentar la densidad de píxeles, y vas a hacer cosas como, ya sabes, mejorar la iluminación y el contraste. Entonces, si pensamos en nuestra aplicación Contentful NxJS, podemos tener un componente de imagen, que todas nuestras imágenes usen, pero tal vez tenemos mucho contenido generado por los usuarios, se pone un poco complicado, ¿verdad? No todos tienen lo último y lo mejor, tienen contenido antiguo, queremos mejorar su resolución. Lo que tenemos que hacer en este caso es agregar el parámetro de mejora de resolución, guardarlo, y así, con el upscale equals true en nuestra URL de imagen, nuestra imagen se mejora automáticamente y ese carrusel se ve genial. Así que, para resumir, ¿qué hicimos? Hablamos mucho sobre muchas cosas. Hicimos una aplicación Contentful NxJS, usamos una biblioteca de optimization de imágenes llamada Unpick Image, y luego usamos un CDN de imágenes para eliminar toda esa desagradable sobrecarga de tener que invalidar cachés o almacenar imágenes en la cloud y finalmente, aprovechamos ese CDN para usar algunos parámetros de IA como el recorte de reconocimiento facial, como la eliminación de fondos, como la mejora de resolución y asegurarnos de que nuestras imágenes siempre se vean lo mejor posible cuando se muestran. Eso es transformar imágenes usando IA sin salir de tu aplicación React y estoy suficientemente sin aliento. Muchas gracias a todos. No duden en hacer preguntas.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

JSNation 2023JSNation 2023
24 min
AI and Web Development: Hype or Reality
In this talk, we'll take a look at the growing intersection of AI and web development. There's a lot of buzz around the potential uses of AI in writing, understanding, and debugging code, and integrating it into our applications is becoming easier and more affordable. But there are also questions about the future of AI in app development, and whether it will make us more productive or take our jobs.
There's a lot of excitement, skepticism, and concern about the rise of AI in web development. We'll explore the real potential for AI in creating new web development frameworks, and separate fact from fiction.
So if you're interested in the future of web development and the role of AI in it, this talk is for you. Oh, and this talk abstract was written by AI after I gave it several of my unstructured thoughts.
React Summit US 2023React Summit US 2023
30 min
The Rise of the AI Engineer
We are observing a once in a generation “shift right” of applied AI, fueled by the emergent capabilities and open source/API availability of Foundation Models. A wide range of AI tasks that used to take 5 years and a research team to accomplish in 2013, now just require API docs and a spare afternoon in 2023. Emergent capabilities are creating an emerging title: to wield them, we'll have to go beyond the Prompt Engineer and write *software*. Let's explore the wide array of new opportunities in the age of Software 3.0!
JS GameDev Summit 2023JS GameDev Summit 2023
37 min
Building the AI for Athena Crisis
This talk will dive into how to build an AI for a turn based strategy game from scratch. When I started building Athena Crisis, I had no idea how to build an AI. All the available resources were too complex or confusing, so I just started building it based on how I would play the game. If you would like to learn how to build an AI, check out this talk!
TestJS Summit 2023TestJS Summit 2023
8 min
Code coverage with AI
In this lightning demo I will showcase how Codium, a cutting-edge generative AI tool, is revolutionizing code integrity. We will demonstrate Codium's ability to generate useful Mocha tests, taken from a public repository and highlight the seamless integration. You can see Codium as it transforms complex test scenarios into actionable insights, propelling code coverage forward. Join us for an insightful peek into the future of automated testing where speed meets quality!
React Summit 2023React Summit 2023
29 min
Improving Developer Happiness with AI
GitHub Copilot is an AI pair programmer that can help you write code faster and spend less time writing repetitive code.This session will cover some interesting use cases for Copilot that could shine a light on its possibilities. This ranges from prompting Copilot to suggest a function based on a comment, learning how to use a new framework, tackling a security or accessibility bug, better documenting your code, translating  code from one language to another, etc.Agenda:
Introduction to CoPilot
- What is Copilot
- How can you use it
- How it can help you write code faster
- Copilot Labs experimental features I will pick examples from the React ecosystem and show how we can fix Security Vulnerabilities and Accessibility issues in some components.

Workshops on related topic

DevOps.js Conf 2024DevOps.js Conf 2024
163 min
AI on Demand: Serverless AI
Featured WorkshopFree
In this workshop, we discuss the merits of serverless architecture and how it can be applied to the AI space. We'll explore options around building serverless RAG applications for a more lambda-esque approach to AI. Next, we'll get hands on and build a sample CRUD app that allows you to store information and query it using an LLM with Workers AI, Vectorize, D1, and Cloudflare Workers.
React Advanced Conference 2023React Advanced Conference 2023
98 min
Working With OpenAI and Prompt Engineering for React Developers
Workshop
In this workshop we'll take a tour of applied AI from the perspective of front end developers, zooming in on the emerging best practices when it comes to working with LLMs to build great products. This workshop is based on learnings from working with the OpenAI API from its debut last November to build out a working MVP which became PowerModeAI (A customer facing ideation and slide creation tool).
In the workshop they'll be a mix of presentation and hands on exercises to cover topics including:
- GPT fundamentals- Pitfalls of LLMs- Prompt engineering best practices and techniques- Using the playground effectively- Installing and configuring the OpenAI SDK- Approaches to working with the API and prompt management- Implementing the API to build an AI powered customer facing application- Fine tuning and embeddings- Emerging best practice on LLMOps
JSNation Live 2021JSNation Live 2021
81 min
Intro to AI for JavaScript Developers with Tensorflow.js
Workshop
Have you wanted to explore AI, but didn't want to learn Python to do it? Tensorflow.js lets you use AI and deep learning in javascript – no python required!
We'll take a look at the different tasks AI can help solve, and how to use Tensorflow.js to solve them. You don't need to know any AI to get started - we'll start with the basics, but we'll still be able to see some neat demos, because Tensorflow.js has a bunch of functionality and pre-built models that you can use on the server or in the browser.
After this workshop, you should be able to set up and run pre-built Tensorflow.js models, or begin to write and train your own models on your own data.