Esta página foi traduzida automaticamente. Encontrou um erro?Ajude a melhorá-la.
Skip to content

Redimensionamento com Reconhecimento de Conteúdo ​

Redimensionamento por corte de costura (seam carving) que remove ou adiciona pixels de forma inteligente ao longo dos caminhos de menor importância visual, preservando o conteúdo importante e, opcionalmente, protegendo os rostos.

Endpoint da API ​

POST /api/v1/tools/image/content-aware-resize

Processamento: Síncrono (retorna o resultado diretamente)

Pacote do modelo: Nenhum necessário para a operação básica. A proteção de rostos usa o pacote face-detection (200-300 MB) se ativada.

Parâmetros ​

ParâmetroTipoObrigatórioPadrãoDescrição
filefileSim-Arquivo de imagem (multipart)
widthnumberNão-Largura alvo em pixels
heightnumberNão-Altura alvo em pixels
protectFacesbooleanNãofalseDetecta e protege rostos da remoção de costuras
blurRadiusnumberNão4Raio de desfoque de pré-processamento para o cálculo de energia (0-20)
sobelThresholdnumberNão2Limiar de detecção de bordas Sobel (1-20). Valores maiores tornam o algoritmo mais agressivo
squarebooleanNãofalseRedimensiona para um quadrado (usa a menor dimensão)

Pelo menos um entre width, height ou square deve ser especificado.

Exemplo de Requisição ​

bash
curl -X POST http://localhost:1349/api/v1/tools/image/content-aware-resize \
  -F "[email protected]" \
  -F 'settings={"width":800,"protectFaces":true}'

Resposta (200 OK) ​

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/{jobId}/landscape_seam.png",
  "originalSize": 450000,
  "processedSize": 380000,
  "width": 800,
  "height": 600
}

Notas ​

  • Esta rota personalizada atualmente retorna uma resposta síncrona 200.
  • Usa a biblioteca de corte de costura caire para o redimensionamento com reconhecimento de conteúdo.
  • Apenas reduz as dimensões (remove costuras). Não pode expandir uma imagem além do seu tamanho original.
  • A opção protectFaces usa detecção de rostos por IA para marcar as regiões de rosto como de alta energia, impedindo que as costuras passem pelos rostos.
  • blurRadius controla a suavização antes do cálculo do mapa de energia. Valores maiores tornam o mapa de energia mais uniforme, o que pode ajudar com imagens ruidosas.
  • sobelThreshold afeta o quão agressivamente as bordas são detectadas. Valores menores preservam mais bordas sutis.
  • A saída é sempre no formato PNG.
  • Suporta os formatos de entrada HEIC/HEIF, RAW, TGA, PSD, EXR e HDR via decodificação automática.