Convide e ganhe

Como funcionam as recompensas

Compartilhe seu link. Quando um amigo se cadastrar por ele e adicionar saldo, você receberá a recompensa exibida nas recargas posteriores.

Ideogram 4.5 vs FLUX 3 na edição precisa de imagens de produto

Para uma pequena correção em uma imagem de produto já aprovada, comece testando o Ideogram 4.5. Para posicionar ou coordenar vários objetos e usar mais referências, comece pelo FLUX 3. O guia propõe um teste com a mesma fonte, checkpoints e validação local em vez de declarar um vencedor universal sem evidência comparável.

Conteúdo
Ideogram 4.5 vs FLUX 3 na edição precisa de imagens de produto

Uma boa edição de produto não é apenas uma nova imagem bonita. Quando o material já foi aprovado, a tarefa costuma ser restrita: corrigir uma linha no rótulo, mudar a cor da tampa ou substituir um objeto sem redesenhar a embalagem, o logotipo, o código de barras, a iluminação, os reflexos, as sombras, o fundo ou o enquadramento.

A escolha inicial é simples: teste primeiro o Ideogram 4.5 Precise Edit quando a regra for “mude esta pequena área e preserve todo o restante”. Teste primeiro o FLUX 3 Image quando o desafio principal for posicionamento espacial, vários elementos relacionados ou um conjunto maior de referências. Isso é uma recomendação de fluxo, não um veredito universal de qualidade. Os materiais oficiais analisados não trazem um benchmark independente e reproduzível dos dois modelos na mesma fonte; portanto, a decisão final precisa passar por um teste de aceitação próprio.

Decisão em 30 segundos

NecessidadeComece porMotivo
Corrigir texto, selo ou pequena região de corIdeogram 4.5O Precise Edit documenta dimensões iguais às da entrada, máscara opcional e cópia exata dos pixels que não foram alterados de forma significativa.
Editar um recorte de um arquivo grande e reinseri-loIdeogram 4.5A página do modelo descreve a edição de recortes com bordas preservadas para recomposição no original.
Mover, remover ou substituir vários elementosFLUX 3As linhas de bounding boxes descrevem posições de origem e destino.
Usar muitas referênciasFLUX 3A API recebe de uma a dez imagens; o Ideogram recebe até quatro, e menos quando a máscara ocupa um slot.
Exigir “nada fora da área pode mudar”Ideogram primeiro, com verificação localA máscara limita a edição; as caixas do FLUX orientam o posicionamento, mas não são clipping masks.
Criar várias versões de cor ou mercadoQualquer um, com ramificaçõesTodas as variantes devem partir do mesmo checkpoint aprovado, e não da variante anterior.

Transforme “preciso” em um contrato verificável

Antes de escolher o modelo, defina:

  1. Região mutável: a menor área que pode mudar, incluindo margem para bordas, sombras e reflexos.
  2. Região protegida: todos os pixels e objetos que devem permanecer estáveis.
  3. Critérios de aceitação: dimensões, deriva fora da área, texto, cor, geometria, luz, perfil e revisão humana.

Preservação semântica não é o mesmo que preservação de pixels. Uma embalagem pode parecer igual, embora o modelo altere o espaçamento do logotipo, a textura do rótulo, o formato de um brilho ou o ruído do fundo. Isso pode funcionar em um conceito, mas não necessariamente em ecommerce, texto regulatório ou impressão em grande formato.

Como o Ideogram 4.5 trabalha

A API oficial de Precise Edit usa:

POST https://api.ideogram.ai/v2/image/precise-edit/ideogram-4-5

A fonte vai em image, a instrução em prompt, e você pode incluir reference_images e mask. A documentação afirma que a saída mantém a largura e a altura da entrada e que os pixels não alterados de forma significativa são copiados exatamente. Na máscara enviada ao Ideogram, preto significa editar e branco significa preservar.

Esse contrato é adequado para uma mudança cirúrgica em um material aprovado. Para arquivos grandes, a página do Ideogram 4.5 recomenda editar um recorte com margem e reinseri-lo, aproveitando a preservação das bordas.

Duas precauções operacionais:

  • imagens grandes demais para o modelo são reduzidas, segundo a documentação; não presuma que enviar o máster inteiro manterá cada pixel;
  • a máscara ocupa um slot de referência, então uma requisição com máscara aceita menos imagens auxiliares.

A resposta é síncrona por padrão. Com async ou webhook, salve generation_id e consulte GET /v2/generations/{generation_id}. A visão geral da API também avisa que as URLs expiram; baixe o arquivo original imediatamente.

Como o FLUX 3 trabalha

A API oficial do FLUX 3 Image usa:

POST https://api.bfl.ai/v1/flux-3-image

Não existe um modo de edição separado: envie prompt e images. A API aceita de uma a dez referências. Com aspect_ratio: auto, uma proporção pedida no prompt vence; caso contrário, quando há referências, o enquadramento da primeira imagem é mantido.

O principal controle espacial é o formato de bounding boxes. Cada caixa usa [top, left, bottom, right] em uma grade normalizada de 0 a 1000. As linhas podem indicar origem e destino para manter, mover, adicionar, substituir, recolorir ou remover elementos.

Isso favorece o FLUX 3 quando a tarefa é “coloque este objeto aqui” ou “coordene estas três alterações”. Porém, a documentação define um limite importante: as caixas orientam o posicionamento, mas não são clipping masks. Os pixels fora das caixas “normalmente” permanecem idênticos; isso não é uma garantia absoluta.

As requisições são assíncronas. Salve id e polling_url; o guia de integração manda usar a URL retornada. Quando o status for Ready, baixe result.sample imediatamente, pois a BFL informa que o arquivo expira após dez minutos.

Em um teste controlado, use grounding: false. O grounding fica ativo por padrão e pode incluir busca na web ou por imagens, uma variável desnecessária para uma edição local de um original fornecido.

Um teste justo com a mesma imagem

1. Congele um máster imutável

Use PNG sem perdas ou um PNG derivado do TIFF aprovado. Registre nome, SHA-256, dimensões, perfil de cor e versão de aprovação. Mantenha uma cópia que nenhum processo possa sobrescrever.

2. Crie uma máscara interna de alterações permitidas

Ela deve ter as mesmas dimensões da fonte:

  • branco: pode mudar;
  • preto: deve permanecer intacto.

Inclua uma margem ao redor do alvo e cubra sombras, reflexos ou relevos que precisem se adaptar. Essa máscara interna é o oposto da máscara enviada ao Ideogram. Use nomes claros para não confundi-las.

3. Faça uma mudança de negócio por tentativa

Uma boa tarefa é substituir uma linha, mudar apenas a tampa ou remover um adesivo. Não combine texto, fundo, iluminação e reenquadramento em um único teste.

Modelos de prompt:

LABEL EDIT
Change only the product label text from "CLASSIC" to "ZERO SUGAR".
Keep the package shape, logo, barcode, lighting, reflections, shadows, background,
camera angle, crop, and all pixels outside the label area unchanged.
Do not redesign, restyle, or add objects.

COLORWAY
Change only the bottle cap from matte black to Pantone 186 C red.
Preserve the bottle, label, liquid, highlights, reflections, shadows, background,
camera angle, crop, and every object outside the cap area.

OBJECT REPLACEMENT
Replace only the small paper sticker with a clean white sticker of the same size,
position, perspective, edge softness, and shadow. Keep everything else unchanged.

No FLUX, acrescente caixas medidas quando a posição for o problema. O exemplo é ilustrativo; calcule os valores na imagem real e lembre que a caixa não bloqueia alterações externas:

Edit only <front_label>. Keep every other part of ref_image_0 unchanged.
[
  {
    "id": "front_label",
    "from": null,
    "src_bbox": null,
    "tgt_bbox": [360, 285, 690, 725],
    "desc": "the same front label with the text ZERO SUGAR; preserve its size, perspective, typography, print texture, highlights, and shadow"
  }
]

4. Compare a mesma intenção com controles próprios

  • Ideogram: imagem completa ou recorte com margem; máscara preto-editar/branco-preservar para localização estrita.
  • FLUX 3: fonte em primeiro lugar em images, aspect_ratio: auto, linhas de caixas e grounding desativado no teste.

Registre todas as configurações. Um teste justo preserva a mesma intenção comercial e usa os controles documentados de cada sistema.

5. Baixe os resultados brutos

Não compare screenshots nem previews comprimidos. Salve o arquivo com um nome como:

masterHash_model_editId_attempt.ext

Calcule o hash. Qualquer redimensionamento, conversão ou compressão posterior deve ser armazenado como derivado separado.

Validação local dos pixels protegidos

O script abaixo compara a fonte e o candidato fora da máscara interna e gera um mapa: branco para pixels protegidos alterados, cinza para a região permitida e preto para a região protegida intacta.

Instale as dependências:

python -m pip install pillow numpy

Salve como verify_edit.py:

#!/usr/bin/env python3
"""Check whether an edited image changed pixels outside an allowed mask."""
from __future__ import annotations

import argparse
import sys
from pathlib import Path

import numpy as np
from PIL import Image


def parse_args() -> argparse.Namespace:
    parser = argparse.ArgumentParser()
    parser.add_argument("original", type=Path)
    parser.add_argument("edited", type=Path)
    parser.add_argument("allowed_mask", type=Path,
                        help="white = may change, black = must stay unchanged")
    parser.add_argument("--tolerance", type=int, default=0,
                        help="maximum per-channel delta treated as unchanged")
    parser.add_argument("--max-outside-ratio", type=float, default=0.0)
    parser.add_argument("--diff-map", type=Path, default=Path("outside-diff.png"))
    return parser.parse_args()


def main() -> int:
    args = parse_args()
    if not 0 <= args.tolerance <= 255:
        raise SystemExit("--tolerance must be between 0 and 255")
    if not 0.0 <= args.max_outside_ratio <= 1.0:
        raise SystemExit("--max-outside-ratio must be between 0 and 1")

    with Image.open(args.original) as original_file, \
         Image.open(args.edited) as edited_file, \
         Image.open(args.allowed_mask) as mask_file:
        if original_file.size != edited_file.size or original_file.size != mask_file.size:
            print("FAIL: original, edited image, and mask must have identical dimensions")
            return 2

        original_profile = original_file.info.get("icc_profile")
        edited_profile = edited_file.info.get("icc_profile")
        original = np.asarray(original_file.convert("RGB"), dtype=np.int16)
        edited = np.asarray(edited_file.convert("RGB"), dtype=np.int16)
        allowed = np.asarray(mask_file.convert("L")) >= 128

    delta = np.abs(edited - original)
    changed = np.max(delta, axis=2) > args.tolerance
    protected = ~allowed
    outside_changed = changed & protected

    protected_pixels = int(protected.sum())
    changed_pixels = int(outside_changed.sum())
    outside_ratio = changed_pixels / protected_pixels if protected_pixels else 0.0
    max_delta = int(delta[protected].max()) if protected_pixels else 0

    diff_map = np.zeros(allowed.shape, dtype=np.uint8)
    diff_map[allowed] = 64
    diff_map[outside_changed] = 255
    Image.fromarray(diff_map, mode="L").save(args.diff_map)

    print(f"protected_pixels={protected_pixels}")
    print(f"outside_changed_pixels={changed_pixels}")
    print(f"outside_changed_ratio={outside_ratio:.8f}")
    print(f"max_outside_channel_delta={max_delta}")
    print(f"icc_profile_match={original_profile == edited_profile}")
    print(f"diff_map={args.diff_map}")

    if outside_ratio > args.max_outside_ratio:
        print("FAIL: protected area changed beyond the allowed threshold")
        return 1
    print("PASS: protected-area pixel check passed")
    return 0


if __name__ == "__main__":
    sys.exit(main())

Execute uma verificação rígida em arquivos sem perdas:

python verify_edit.py master.png candidate.png allowed-mask.png --tolerance 0 --max-outside-ratio 0

outside_changed_pixels=0 indica RGB idêntico fora da zona permitida. Um outside_changed_ratio diferente de zero revela deriva; abra outside-diff.png. icc_profile_match=False sinaliza mudança no fluxo de cor. Tolerância zero é apropriada para arquivos sem perdas; JPEG recomprimido altera muitos pixels, portanto valide o original sem perdas ou documente um limiar aprovado.

A igualdade externa não confirma a qualidade da mudança. Revise ortografia, tipografia, logotipo, textura, perspectiva, bordas, brilhos, sombras, reflexos e oclusões dentro da área editável.

Como evitar deriva em edições sucessivas

Organize os arquivos em três categorias:

  1. Máster: fonte aprovada e imutável.
  2. Checkpoint: candidato aprovado por validação automática e humana.
  3. Variante: ramo regional, de cor ou formato criado a partir de um checkpoint.

Versões vermelha, azul e verde devem nascer do mesmo checkpoint. Não gere azul a partir da vermelha e verde a partir da azul. Em cada rodada, altere apenas uma coisa; se falhar, volte ao último checkpoint. Não tente “corrigir a deriva” em cima de uma saída rejeitada.

Mantenha um registro com hash da fonte, modelo, endpoint, prompt, máscara ou caixas, hash de saída, dimensões, proporção de alteração externa e decisão do revisor. A alegação do Ideogram sobre menor deriva e o controle por caixas do FLUX precisam ser testados dessa forma; nenhum deles substitui checkpoints.

Recomendação por cenário

Rótulo ou texto regulatório

Ideogram 4.5 primeiro. Use um recorte com margem e a máscara do fornecedor. Confira cada caractere antes de reinserir. Teste o FLUX quando a composição for complexa, mas não trate a caixa como garantia de isolamento.

Uma única mudança de cor

Ideogram 4.5 primeiro se o limite for limpo e o restante tiver de permanecer estável. Inclua reflexos coloridos e luz projetada na área permitida. FLUX 3 primeiro se vários objetos mudarem juntos ou se referências definirem material e paleta.

Substituição, movimento ou remoção

FLUX 3 primeiro quando posição de origem e destino forem o centro do problema. Ideogram 4.5 primeiro quando o alvo for pequeno, isolável por máscara e a geometria exata for mais importante.

Máster de alta resolução

Recorte com margem, edite o fragmento, valide a borda e recomponha. O Ideogram documenta esse processo. No FLUX, trate dimensões e pixels protegidos como critérios de aceitação, não como suposições.

Muitas variantes

Teste um conjunto pequeno e representativo, escolha o fluxo com menos rejeições e reparo manual, congele um checkpoint e crie todas as variantes a partir dele.

Checklist de aceitação

Antes de publicar, confirme:

  • origem no máster ou checkpoint correto;
  • apenas uma mudança documentada;
  • dimensões, orientação e recorte corretos;
  • zona protegida dentro do limiar;
  • texto, logotipo, código e informação regulatória exatos;
  • textura, bordas, sombras, reflexos e oclusões plausíveis;
  • perfil e formato adequados ao destino;
  • arquivo bruto, prompt, controles, hashes e decisão salvos;
  • futuras variantes partirão de um checkpoint, não de outra variante.

Conclusão

Para uma pequena edição cirúrgica em uma imagem final, o Ideogram 4.5 é o primeiro fluxo mais lógico por seu contrato documentado de preservação e sua máscara real. Para uma edição espacial complexa, vários elementos ou muitas referências, o FLUX 3 é o primeiro fluxo mais adequado por suas caixas estruturadas.

Nenhum dispensa a verificação. Preserve o máster, teste a mesma fonte, meça a região protegida, revise a alteração e aprove checkpoints antes de criar variantes. Esse processo — e não uma promessa de marketing — evita que uma sequência de pequenos ajustes vire silenciosamente uma nova imagem.

Fontes oficiais

Quer otimizar seu fluxo de trabalho com LLMs?

Conecte modelos por uma única API, gerencie chaves e controle os gastos com IA.

Começar grátis