Thumbor
| Thumbor | |
|---|---|
| Desenvolvedor | Globo.com |
| Lançamento inicial | 6 de junho de 2013 (12 anos) |
| Lançamento estável | 7.7.7
/ 15 de maio de 2025 |
| Repositório | github.com/thumbor |
| Escrito em | Python |
| Sistema operacional | Multiplataforma |
| Plataforma | Multiplataforma |
| Tipo | Processamento de imagens |
| Licença | MIT |
| Website | www |
Thumbor é uma aplicação de código aberto para redimensionamento e manipulação de imagens em tempo real. Desenvolvida originalmente pela Globo.com, a ferramenta é escrita em Python e permite o corte inteligente de imagens com base em reconhecimento facial e outros algoritmos de detecção de objetos.
Características
- Redimensionamento dinâmico: Gera imagens em diferentes tamanhos sob demanda.
- Corte inteligente (smart cropping): Utiliza algoritmos de reconhecimento facial e detecção de pontos de interesse para cortar imagens automaticamente de maneira mais relevante.
- Suporte a filtros: Permite aplicar efeitos como brilho, contraste, desfoque, entre outros.
- Armazenamento e cache: Pode integrar-se a diversos backends de armazenamento (como Amazon S3, Google Cloud Storage, Redis, etc.) e sistemas de cache.
- Segurança: Suporta assinaturas criptografadas para evitar manipulação não autorizada de URLs.
Utilização
O Thumbor é utilizado por empresas que necessitam de manipulação de imagens em larga escala e em tempo real, especialmente em portais de notícias[1][2], e-commerces[3][4][5][6] e aplicações web que demandam alta performance na entrega de mídia visual[7].
Uso pela Fundação Wikimedia
A Fundação Wikimedia, mantenedora da Wikipédia e de outros projetos, utiliza o Thumbor como parte de sua infraestrutura de processamento de imagens[8][9][10]. Desde junho de 2017, todo o tráfego de miniaturas de imagens para wikis públicas e beta passou a ser servido pelo Thumbor. Em fevereiro de 2018, esse suporte foi estendido às wikis privadas[11], e em abril do mesmo ano, o sistema anterior de geração de miniaturas baseado no MediaWiki foi desativado. Em abril de 2023, o Thumbor passou a servir o tráfego de produção via Kubernetes[12].
Uso pela Amazon
A Amazon utiliza o Thumbor como parte de sua infraestrutura de processamento de imagens. A solução Serverless Image Handler, integrada ao Amazon CloudFront, permite redimensionar, converter e aplicar filtros de imagem em tempo real usando o Thumbor em conjunto com AWS Lambda. A documentação oficial da Amazon lista filtros como blur, grayscale, equalize, sharpen, smart crop, entre outros, que podem ser utilizados via URL[13].
Funcionamento do Thumbor
Arquitetura Baseada em Servidor
O Thumbor opera como um serviço web, processando imagens sob demanda. Ele recebe requisições HTTP com parâmetros como tamanho da imagem, qualidade, recortes e outros ajustes. O servidor então manipula a imagem conforme os parâmetros recebidos e serve a imagem modificada ao cliente.
URL como Interface
A principal interface de interação com o Thumbor é por meio de URLs. A URL pode incluir diversos parâmetros para manipulação da imagem, como redimensionamento (largura, altura)[14], filtros[15] (como blur, rotate), recorte (crop)[16], entre outros. Esses parâmetros são passados na URL, e o Thumbor processa a imagem conforme os parâmetros recebidos.
Exemplo de URL: http://thumbor.exemplo.com/unsafe/300x200/smart/https://exemplo.com/imagem.jpg
Neste exemplo:
300x200: define as dimensões finais da imagem.smart: aplica um algoritmo de corte inteligente que tenta manter o foco no conteúdo mais relevante da imagem.https://exemplo.com/imagem.jpg: é a URL da imagem original (fonte), que será baixada e processada pelo Thumbor.
O URL final após o domínio unsafe refere-se a um método de geração de imagem sem autenticação adicional, o que pode ser configurado.
Código-fonte
O projeto é mantido como software livre sob a licença MIT, com o código-fonte disponível no repositório oficial no GitHub[17].
Ver também
- Processamento digital de imagem
- Rede de fornecimento de conteúdo
- Reconhecimento facial
- Software livre
Referências
- ↑ «Thumbor: Escalabilidade em processamento de imagens com reconhecimento facial para 20 milhões de brasileiros». InfoQ. Consultado em 20 de maio de 2025
- ↑ «feat: Support AVIF format encoding by fdintino · Pull Request #1476 · thumbor/thumbor». GitHub (em inglês). Consultado em 20 de maio de 2025
- ↑ Boeira, Marcelo (10 de outubro de 2018). «The Fast and the Payloadless». Medium (em inglês). Consultado em 20 de maio de 2025
- ↑ Square Engineering (20 de janeiro de 2014). «Dynamic Images with Thumbor». Consultado em 20 de maio de 2025
- ↑ «Experimental exports - Hooks and Components». developers.vtex.com (em inglês). Consultado em 20 de maio de 2025
- ↑ «How Yipit Scales Thumbnailing with Thumbor and Cloudfront - Yipit Django Blog». web.archive.org. 15 de fevereiro de 2024. Consultado em 20 de maio de 2025
- ↑ «Usar CDNs de imagens para otimizar imagens | Articles». web.dev. Consultado em 20 de maio de 2025
- ↑ «The journey to Thumbor, part 1: rationale – WM:TECHBLOG» 🔗 (em inglês). 20 de junho de 2017. Consultado em 4 de maio de 2025
- ↑ «The journey to Thumbor, part 2: thumbnailing architecture – WM:TECHBLOG» 🔗 (em inglês). 17 de novembro de 2017. Consultado em 4 de maio de 2025
- ↑ «The journey to Thumbor, part 3: development and deployment strategy – WM:TECHBLOG» 🔗 (em inglês). 20 de novembro de 2017. Consultado em 4 de maio de 2025
- ↑ Wikimedia Foundation (22 de fevereiro de 2018). «Thumbor support for private wikis deployed». Wikimedia Tech Blog. Consultado em 4 de maio de 2025
- ↑ Wikimedia Foundation (abril de 2023). «Thumbor». Wikimedia Tech Blog. Consultado em 4 de maio de 2025
- ↑ Amazon Web Services. «Use supported Thumbor filters». AWS Documentation. Consultado em 4 de maio de 2025
- ↑ «Crop and Resize Algorithms — Thumbor 7.7.7 documentation». thumbor.readthedocs.io. Consultado em 20 de maio de 2025
- ↑ «Filters — Thumbor 7.7.7 documentation». thumbor.readthedocs.io. Consultado em 20 de maio de 2025
- ↑ «Crop and Resize Algorithms — Thumbor 7.7.7 documentation». thumbor.readthedocs.io. Consultado em 20 de maio de 2025
- ↑ Thumbor contributors. «thumbor/thumbor». GitHub. Consultado em 4 de maio de 2025