Midjourney vs Stable Diffusion: Qual é a melhor IA para gerar imagens?

Pelo Midjourney ser "noob friendly" a acessibilidade da ferramente é alta. O Stable Diffusion é gratuito, porém exige um computador potente.

9/16/20239 min ler

Nos últimos anos, a inteligência artificial (IA) tem se destacado em várias aplicações, incluindo a geração de imagens. Modelos como o Midjourney e o Stable Diffusion têm se destacado nesse campo, oferecendo resultados impressionantes. O primeiro é muito popular no Brasil, enquanto o segundo está começando a ganhar visibilidade agora. Neste artigo, vou explorar e comparar esses dois modelos de IA de imagens, destacando algumas de suas diferenças e ilustrando os resultados com alguns prompts.

Midjourney: O /imagine “noob friendly”

Como já é conhecido, o Midjourney funciona por meio de um bot no Discord. Portanto, o único requisito necessário é possuir um dispositivo compatível com esse aplicativo. Isso torna a ferramenta acessível a praticamente qualquer pessoa que possua um smartphone, tablet ou computador capaz de executar o Discord, o que não é tão complicado, mas implica uma necessidade fundamental: conexão com a internet.

Na prática, o Midjourney tem uma tendência marcante em ser uma ferramenta com uma abordagem mais artística do que foto-realista. Os resultados da versão 5.2 da IA são visualmente impressionantes e mesmo com prompts simples, ela entrega resultados fantásticos.

Outro ponto importante a destacar é que o acesso à ferramenta só está disponível mediante o pagamento de uma assinatura mensal. Os preços variam de 10 a 120 dólares, o que pode ser um custo considerável para os brasileiros, especialmente considerando que, no momento em que este artigo está sendo escrito, a taxa de câmbio do dólar está em R$ 4,86. Para ter uma ideia, o plano mais básico de $10 oferece 200 minutos de processamento para a geração de imagens. Na prática, isso resulta em aproximadamente 200 gerações, podendo variar um pouco para cima ou para baixo. No entanto, a partir do plano de $30, você tem um número ilimitado de gerações no 'modo relax', que é um modo onde o processamento da sua imagem é mais lento.

Stable Diffusion: Complexo, mas muito exigente

O primeiro ponto que gostaria de destacar como uma diferença no Stable Diffusion é que ele é um software de código aberto. Sim, ele é totalmente gratuito e pode ser instalado em seu computador. No entanto, ele demanda um poder de processamento significativo, funcionando de maneira mais eficiente em um dispositivo com uma placa de vídeo de, no mínimo, 6GB de VRAM. A versão mais recente do SDXL requer, no mínimo, 8GB de VRAM (em minha experiência pessoal, eu recomendaria pelo menos 12GB de VRAM e preferencialmente placas Nvidia, já que as placas AMD podem apresentar desafios adicionais para rodar o SD). Isso, por si só, já reduz consideravelmente a acessibilidade da ferramenta, especialmente para os brasileiros.

Outro fator limitante aqui, é que para instalar localmente no seu PC, você talvez precise ter um pouco de conhecimento em programação, já que a IA utiliza a linguagem Python para rodar. Existem opções online que utilizam o Stable Diffusion diretamente ou foram desenvolvidas a partir do código da IA e, no final das contas, oferecem processamento para gerar essas imagens. Em alguns casos, também fornecem acesso a modelos exclusivos criados com base no Stable Diffusion. Alguns exemplos incluem Leonardo.ai, Wombo Dream, Dawn, Wonder, Prodia, Playgroundai, FeverDreams e a lista simplesmente não para de crescer, graças à natureza de código aberto da fonte existem uma infinidade de opções disponíveis. Isso me faz lembrar do Linux e suas várias distribuições, como Ubuntu, Debian, Fedora e Android. Sim, o sistema Android que talvez você esteja usando para ler esse texto é uma versão criada com base no Linux.

A natureza de código aberto da IA permite uma evolução incrivelmente rápida. Um exemplo disso? Recentemente, o Midjourney lançou a ferramenta "vary (region)", que permite refazer uma área selecionada da imagem, permitindo substituir, apagar, editar ou corrigir elementos nessa área de maneira simples, sem afetar o restante da imagem. Uma ferramenta com funcionalidade semelhante já existe no Stable Diffusion desde abril deste ano. Além disso, o Stable Diffusion já oferece ferramentas que proporcionam um controle mais avançado em seu fluxo de trabalho, algo que o Midjourney pode demorar mais alguns meses para alcançar. Um exemplo disso é o ControlNet, que permite ajustar aspectos específicos da imagem para obter resultados altamente personalizados. Isso pode ser um desafio no Midjourney, onde você depende principalmente de prompts e, frequentemente, precisa gerar várias iterações do mesmo prompt para alcançar um resultado específico.

Com todo esse controle, o Stable Diffusion se torna uma ferramenta muito eficaz para produzir imagens realistas. Além disso, os modelos criados e compartilhados pela comunidade podem fornecer resultados excelentes em áreas ou estilos específicos, criados a partir do modelo base do SD. Nesse caso, o limite é realmente a sua criatividade ou o poder de processamento da sua placa de vídeo.

Comparações

Aqui vou tentar utilizar prompts semelhantes nas duas ferramentas para comparar os resultados. Os prompts terão diferenças sutis, pois elas possuem a sua própria maneira de interpretar o que é escrito, como algumas especificações e detalhes que precisam ser escritos de maneira com que cada uma entenda o que é pedido. Não dá pra simplesmente copiar e colar o mesmo prompt para esse tipo de comparação, acaba sendo até injusto não levando em conta como cada ferramenta se comporta. Mas vou tentar escrever para alcançar resultados parecidos, como se quisesse alcançar o mesmo resultado.

SDXL: raw photo, from below, amazon forest in the rain, <lora:add-detail-xl:1>

Um prompt simples para começar. Um lugar específico com um ponto de vista específico. O Midjourney parece ter a tendência de entregar imagens com uma saturação levemente alta, com um aspecto que lembra imagens tratadas. Fiz duas versões do prompt no MJ para tentar alcançar mais realismo usando o parâmetro "stylize 0" para tentar remover a "liberdade artística" da IA, segue abaixo a versão sem esse parâmetro.

MJ: raw photo, from below, amazon forest in the rain --v 5.2 --ar 16:9 --no bad quality, medium quality, jpeg artifacts --stylize 0

Floresta vista de baixo.

Já no Stable Diffusion a tendência são resultados mais realistas, sem árvores vindas direto de obras surrealistas. A iluminação e as cores também já tendem para esse lado com cores não tão saturadas quando os resultados do Midjourney. No prompt adicionei um LoRA, que são modelos treinados no Stable Diffusion para entregar pequenos detalhes que mudam o padrão o modelo usado, considere eles como extensões, add-on ou até "anabolizantes" para a IA. Nesses testes utilizei o modelo DreamShaper XL criado pelo usuário Lykon, o que considero um dos modelos mais versáteis disponíveis, baseado na versão mais nova do Stable Diffusion, o SDXL.

O ângulo não parece variar muito nas quatro imagens geradas, mas isso é facilmente resolvido adicionando peso ao parâmetro específico substituindo o prompt "from below" por "(((from below)))" ou "(from below:1.5)". No Stable Diffusion o uso de "( )" em um parâmetro faz com a IA interprete que deve dar mais ênfase para aquele parâmetro específico. Isso também é um recurso presente no Midjourney, você pode enfatizar algum parâmetro utilizando "::", nesse exemplo você substituiria o "from below" por "from below:2".

Astronauta na selva.

Aqui a interpretação do Midjourney enche os olhos com imagens que parecem frames de um filme. Adicionando mais detalhes ao prompt, como pedir uma paleta de cores fria, nos dáum resultado quase que perfeito. Só o prompt "muted colors" que deveria nos dar imagens com cores menos saturadas. Mas é algo facilmente corrigido com o parâmetro "stylize 0". Também podemos explorar muito mais a visão artística da IA pedindo para ela fazer uma versão em arte digital do mesmo prompt para comparação.

MJ: waist-up "female Astronaut in a Jungle", broken helmet tangerine, cold color palette, muted colors, detailed, 8k, raw photo, octane render, intricate details --v 5.2 --ar 3:4 --no jpeg artifacts, bad anatomy, lowres, bad quality, medium quality

MJ: waist-up "female Astronaut in a Jungle", broken helmet tangerine, cold color palette, muted colors, detailed, 8k, raw photo, octane render, intricate details --v 5.2 --ar 3:4 --no jpeg artifacts, bad anatomy, lowres, bad quality, medium quality --stylize 0

MJ: digital art, waist-up "female Astronaut in a Jungle", broken helmet tangerine, cold color palette, muted colors, detailed, 8k, intricate details --ar 3:4 --no jpeg artifacts, bad anatomy, lowres, bad quality, medium quality

digital art, waist-up "female Astronaut in a Jungle", broken helmet tangerine, cold color palette, muted colors, detailed, 8k, octane render, intricate details

Aqui a interpretação do Midjourney enche os olhos com imagens que parecem frames de um filme. Adicionando mais detalhes ao prompt, como pedir uma paleta de cores fria, nos dáum resultado quase que perfeito. Só o prompt "muted colors" que deveria nos dar imagens com cores menos saturadas. Mas é algo facilmente corrigido com o parâmetro "stylize 0". Também podemos explorar muito mais a visão artística da IA pedindo para ela fazer uma versão em arte digital do mesmo prompt para comparação.

Já no Stable Diffusion a consistência das cores e iluminação é mais sólida, porém alguns aspectos que agregam muito a imagem não são adicionados sem que você especifique no prompt. Como alguns elementos que aumentam a sensação de profundidade de campo, no MJ as folhagens desfocadas em primeiro plano quase sempre aparecem, mesmo removendo parâmetros que costumam adicionar detalhes e qualidade na imagem como: "detailed, 8k, raw photo, octane render, intricate details".

MJ: raw photo, from below, amazon forest in the rain --v 5.2 --ar 16:9 --no bad quality, medium quality, jpeg artifacts

waist-up "female Astronaut in a Jungle", broken helmet tangerine, cold color palette, muted colors, detailed, 8k, raw photo, octane render, intricate details

Conclusão

Comparando acessibilidade e custo benefício, o Midjourney sai muito na frente com os resultados que ele consegue alcançar com um prompt simples e basicamente só tendo acesso a internet e ao Discord. Consegue te entregar imagens com alto apelo visual. O que você precisa aprender para tirar o máximo da ferramenta? Escrever bons prompts.

Já o Stable Diffusion requer conhecimentos mais complexos só para instalar. Você pode acessar ferramentas online para quebrar essa barreira, mas a grande maioria delas é paga e dependendo do preço é até mais caro que a mensalidade do Midjourney, a melhor opção nesse cenário é o Leonardo.ai que oferece um plano de $12 por mês que rende até 8.500 imagens e 1.700 upscale (nesse aspecto o Midjourney ainda peca muito), o que é maior do plano mais barato do MJ. Mas ele também tem um plano gratuito que vale a pena testar para conhecer a ferramenta.

Se é para começar em algum lugar? Recomendo começar aprendendo com Stable Diffusion, seja a plataforma que for. Veja os prompts disponíveis em sites da comunidade como Civitai e PromptHero, realize testes e customize seus prompts. Aprenda sobre as ferramentas ControlNet, ADetailer ou até mesmo instale localmente a versão SD 1.5, que te entrega resultados incríveis também, utilizando os diversos tutoriais no YouTube disponíveis. Depois parta para o Midjourney, com o conhecimento que você adquirir usando o Stable Diffusion, escrever prompts vai ser uma tarefa fácil.

Deixarei um exemplo abaixo do mesmo prompt usado nas comparações anteriores, mas usando o SD 1.5.