Cloudinary serve a muitos propósitos quando se trata da mídia do seu site: upload fácil com qualquer número de idiomas e métodos, servido a partir da nuvem e CDN para velocidade ideal, manipulação de imagens em tempo real por meio de uma simples modificação de URL e até mesmo remoção de fundo com um de seus incríveis complementos. Eu costumava tentar usar esse tipo de função com o ImageMagick, mas o volume de processamento necessário para realizá-las sobrecarregava meu servidor – era uma batalha perdida.


Fiquei muito impressionado e feliz com o Complemento de remoção de plano de fundo do Cloudinary que eu dei a outro add-on uma corrida pelo seu dinheiro: Imagga Auto Tagging. Esse recurso permite que o senhor faça upload de imagens e que os objetos nelas contidos sejam automaticamente detectados e marcados como tal! Vamos dar uma olhada!


Por que a marcação de imagens?


A marcação de imagens é tão importante quanto a marcação do conteúdo escrito: o senhor pode identificar e usar rapidamente o conteúdo com base em uma única palavra ou grupo de palavras. Como as imagens podem transformar um post de blog ou uma página de muito simples em muito bonita, a capacidade de extrair uma imagem com base em uma palavra-chave é inestimável. Realizar essa tarefa manualmente seria um pesadelo, portanto, fique feliz que o complemento do Cloudinary faça o trabalho pesado!


JavaScript de marcação de imagens


Cloudinary


A primeira etapa para adicionar marcação aos uploads de imagens do Cloudinary é ativar o complemento Imagga Auto Tagging. Com o complemento ativado, o senhor pode carregar suas imagens em qualquer linguagem que escolher (o Cloudinary suporta Node.js, Python, PHP, Java, Ruby e outras…); vamos usar Node.js:



var cloudinary = require('cloudinary');

cloudinary.config({
	cloud_name: 'david-walsh-blog',
	api_key: '###############',
	api_secret: ''###############-'###############'
});

cloudinary.uploader.upload('sports-balls.jpg', function(result) {
    console.log('result: ', result);
}, {
  categorization: 'imagga_tagging'
});


O snippet acima carrega uma imagem para o Cloudinary e instrui o Cloudinary a analisar a imagem para reconhecer os objetos com os quais a imagem deve ser marcada. O resultado fornece uma matriz de tags correspondentes e um nível de confiança na referida tag:



// ...
"info": {
  "categorization": {
    "imagga_tagging": {
      "status": "complete", 
      "data": [
        {"tag": "baseball", "confidence": 0.5475}, 
        {"tag": "tennis", "confidence": 0.4414}, 
        {"tag": "football", "confidence": 0.4121}, 
        {"tag": "soccer", "confidence": 0.394}, 
// ...


O add-on Imagga Auto Tagging também permite que o senhor forneça um parâmetro adicional para permitir que o Cloudinary marque automaticamente as imagens com uma tag que corresponda a um limite mínimo de confiança:



cloudinary.uploader.upload('sports-balls.jpg', function(result) { }, {
  categorization: 'imagga_tagging',
  auto_tagging: 0.4
});


Se o senhor já começou a usar o Cloudinary e deseja atualizar uma imagem carregada anteriormente, também pode fazer isso!



cloudinary.api.update('previously-uploaded-image',  function(result) { },  {
    categorization: 'imagga_tagging',
    auto_tagging: 0.5 
});


Extrair imagens de uma tag específica


Capturar imagens por tag é uma função essencial depois que o senhor tiver marcado suas imagens. Para capturar imagens por uma determinada tag, o senhor pode usar:



cloudinary.api.resources_by_tag('arsenal', function(result) {});


…que fornece uma matriz de objetos que representam imagens (e seus URLs) que correspondem a uma tag. Esse é o círculo completo: fazer upload, marcar e extrair por tag quando desejar!


Adicionar metadados aos seus arquivos, especialmente imagens que não são facilmente pesquisáveis como texto, pode ser um grande impulso para que o senhor possa encontrá-los no futuro. No tema do meu blog atual, tenho um trecho de código nojento para pesquisar o texto em um post e exibir uma imagem relacionada. A lista de imagens, no entanto, é explicitamente criada por mim, o que é um pesadelo para manter. Se eu pudesse enviar algumas tags para o Cloudinary e obter uma imagem representativa, a vida seria muito mais fácil.


O Cloudinary também oferece APIs baseadas em URL para realizar transformações de imagens em tempo real, como redimensionamento e corte, remoção de fundo, marcação de imagens, compactação de imagens e muito mais. Se o seu site ou aplicativo depende de imagens, dê Cloudinary pode ser exatamente o que o senhor precisa!