1. Produtos
  2.   Imagem
  3.   Node.js
  4.   LooksSame
 
  

API Node.js gratuita para comparação de imagens

API Open Source baseada em Node.js que compara imagens pixel por pixel. Uma solução poderosa, flexível e eficiente para comparação de imagens em aplicativos Node.js.

A comparação de imagens desempenha um papel vital no desenvolvimento de software, particularmente em áreas como teste de regressão visual, garantia de qualidade de imagem e verificação de design pixel-perfect. Quer você esteja desenvolvendo software para garantir a aparência consistente da IU em várias plataformas ou automatizando verificações visuais em um pipeline de produção, ter uma ferramenta de comparação de imagens eficiente é essencial. LooksSame, uma API de código aberto desenvolvida pela Gemini-Testing, simplifica o processo de criação de software para comparação de imagens com seus recursos intuitivos. Há vários recursos importantes que fazem parte da biblioteca, como comparação de imagens pixel a pixel, detecção de anti-aliasing, controle de tolerância de configuração, manipulação de dimensões de imagem, suporte para Promises e muito mais.

LooksSame é uma API baseada em Node.js projetada para comparação de imagens. Ela permite que os desenvolvedores comparem imagens pixel por pixel, com opções para lidar com pequenas variações que podem ocorrer devido a diferenças em ambientes de renderização. Ao utilizar a biblioteca, os desenvolvedores de software podem criar seus próprios aplicativos que detectam diferenças visuais significativas, ignorando variações triviais. A API é focada principalmente em ajudar os desenvolvedores a manter a consistência no design da IU, mas sua versatilidade a torna adequada para muitos outros casos de uso de comparação de imagens. Com sua API direta e opções personalizáveis, o LooksSame é um ótimo complemento para o kit de ferramentas de qualquer desenvolvedor, particularmente para testes de IU baseados na web, geração automatizada de imagens e outros cenários em que a precisão visual é primordial.

Previous Next

Introdução ao LooksSame

A maneira recomendada de instalar o LooksSame é usando o NPM. Use o comando a seguir para uma instalação tranquila.

Instalar LooksSame via NPM

npm install looks-same

Comparação básica de imagens em aplicativos Node.js

A biblioteca LooksSame de código aberto facilita para desenvolvedores de software realizar comparações básicas de imagens dentro de aplicativos Node.js. Uma vez instalada, você pode comparar duas imagens exigindo o módulo LooksSame em seu código. Aqui está um exemplo básico que mostra como usar a biblioteca para verificar se duas imagens são visualmente idênticas: Neste exemplo, compara image1.png e image2.png. Se forem visualmente iguais, equal retornará true; caso contrário, retornará false.

Como comparar duas imagens dentro de aplicativos Node.js?

const looksSame = require('looks-same');

// Compare two images
looksSame('image1.png', 'image2.png', (error, { equal }) => {
    if (error) {
        console.error('Error comparing images:', error);
    } else if (equal) {
        console.log('Images are identical!');
    } else {
        console.log('Images differ!');
    }
});

Comparação de imagens baseada em tolerância

Para aplicativos que não exigem correspondências perfeitas de pixels, os desenvolvedores de software podem adicionar um nível de tolerância. Isso permite que pequenas diferenças entre imagens, como alterações devido à renderização em diferentes navegadores ou sistemas operacionais, sejam ignoradas. No exemplo de código a seguir, a tolerância é definida como 5%, o que significa que pequenas variações de pixels (até 5%) não farão com que as imagens sejam consideradas diferentes.

Como executar comparação de imagens baseada em tolerância dentro de aplicativos Node.js?

cfunction compareWithTolerance(image1, image2, toleranceLevel) {
    looksSame(image1, image2, { tolerance: toleranceLevel }, (error, { equal }) => {
        if (error) {
            console.error('Error comparing images:', error);
        } else if (equal) {
            console.log('Images are visually identical within tolerance!');
        } else {
            console.log('Images differ!');
        }
    });
}

// Usage
compareWithTolerance('image1.png', 'image2.png', 5);  // 5% tolerance

Destacando áreas específicas de diferença

Para aplicações mais sofisticadas, os desenvolvedores de software podem querer identificar e analisar apenas áreas específicas de diferença. A biblioteca LooksSame fornece um recurso de caixa delimitadora que mostra a região exata onde as diferenças ocorrem. Esta função gera as coordenadas da caixa delimitadora das regiões diferentes, facilitando o foco em partes específicas da imagem que foram alteradas. O exemplo a seguir mostra como usar as coordenadas da caixa delimitadora para comparar imagens e destacar as diferenças.

Como comparar e identificar as diferenças entre áreas específicas de imagens por meio de aplicativos Node.js?

function compareWithDiffBounds(image1, image2) {
    looksSame(image1, image2, (error, { diffBounds }) => {
        if (error) {
            console.error('Error comparing images:', error);
        } else {
            console.log('Bounding box of differences:', diffBounds);
        }
    });
}

// Usage
compareWithDiffBounds('image1.png', 'image2.png');

Detecção de Anti-Aliasing para Comparações Precisas

A biblioteca LooksSame de código aberto permite que desenvolvedores de software realizem compressão de imagens usando o método de Detecção de Anti-Aliasing dentro de aplicativos Node.js. O anti-aliasing pode causar falsos positivos ao comparar imagens, pois introduz pequenas variações na renderização de bordas. A opção ignoreAntialiasing da biblioteca ajuda a evitar esses falsos positivos. Isso é especialmente útil para aplicativos em que as imagens podem ser renderizadas de forma diferente em vários dispositivos ou navegadores, mas ainda são visualmente as mesmas.

 Português