1. Produse
  2.   Imagine
  3.   Node.js
  4.   LooksSame
 
  

API-ul Node.js gratuit pentru compararea imaginilor

API-ul open source bazat pe Node.js care compară imagini pixel cu pixel. O soluție puternică, flexibilă și eficientă pentru compararea imaginilor în aplicațiile Node.js.

Compararea imaginilor joacă un rol vital în dezvoltarea software-ului, în special în domenii precum testarea regresiei vizuale, asigurarea calității imaginii și verificarea designului perfect pixelilor. Fie că dezvoltați software pentru a asigura un aspect consecvent al interfeței de utilizare pe mai multe platforme sau că automatizați verificări vizuale într-un canal de producție, este esențial să aveți un instrument eficient de comparare a imaginilor. LooksSame, un API open-source dezvoltat de Gemini-Testing, simplifică procesul de creare a software-ului pentru compararea imaginilor cu caracteristicile sale intuitive. Există câteva caracteristici importante care fac parte din bibliotecă, cum ar fi compararea imaginii pixel cu pixel, detectarea anti-aliasing, configurarea controlului toleranței, gestionarea dimensiunilor imaginii, suportul pentru Promises și multe altele.

LooksSame este un API bazat pe Node.js, conceput pentru compararea imaginilor. Permite dezvoltatorilor să compare imaginile pixel cu pixel, cu opțiuni pentru a gestiona variațiile minore care pot apărea din cauza diferențelor în mediile de randare. Prin utilizarea bibliotecii, dezvoltatorii de software își pot construi propriile aplicații care detectează diferențe vizuale semnificative, ignorând în același timp variațiile triviale. API-ul se concentrează în primul rând pe a ajuta dezvoltatorii să mențină consecvența în designul interfeței de utilizare, dar versatilitatea sa îl face potrivit pentru multe alte cazuri de utilizare pentru compararea imaginilor. Cu API-ul său simplu și opțiunile personalizabile, LooksSame este o completare excelentă la setul de instrumente al oricărui dezvoltator, în special pentru testarea UI bazată pe web, generarea automată de imagini și alte scenarii în care acuratețea vizuală este primordială.

Previous Next

Noțiuni introductive cu LooksSame

Modul recomandat de a instala LooksSame este utilizarea NPM. Vă rugăm să utilizați următoarea comandă pentru o instalare fără probleme.

Instalați LooksSame prin NPM

npm install looks-same

Compararea de bază a imaginilor în aplicațiile Node.js

Biblioteca Open Source LooksSame facilitează pentru dezvoltatorii de software să efectueze compararea de bază a imaginilor în cadrul aplicațiilor Node.js. Odată instalat, puteți compara două imagini solicitând modulul LooksSame în codul dvs. Iată un exemplu de bază care arată cum să utilizați biblioteca pentru a verifica dacă două imagini sunt identice vizual: În acest exemplu, compară image1.png și image2.png. Dacă vizual sunt la fel, egal va returna adevărat; în caz contrar, returnează false.

Cum se compară două imagini în aplicațiile 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ție de imagini bazată pe toleranță

Pentru aplicațiile care nu necesită potriviri perfecte pentru pixeli, dezvoltatorii de software pot adăuga un nivel de toleranță. Acest lucru permite ignorarea micilor diferențe între imagini, cum ar fi modificările datorate redării pe diferite browsere sau sisteme de operare. În următorul exemplu de cod, toleranța este setată la 5%, ceea ce înseamnă că variațiile mici ale pixelilor (până la 5%) nu vor face ca imaginile să fie considerate diferite.

Cum se efectuează o comparație de imagini bazată pe toleranță în aplicațiile 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

Evidențierea unor zone specifice de diferență

Pentru aplicații mai sofisticate, dezvoltatorii de software ar putea dori să identifice și să analizeze doar anumite zone de diferență. Biblioteca LooksSame oferă o caracteristică de delimitare care arată regiunea exactă în care apar diferențele. Această funcție emite coordonatele casetei de delimitare ale diferitelor regiuni, facilitând focalizarea pe anumite părți ale imaginii care s-au schimbat. Următorul exemplu arată cum să utilizați coordonatele casetei de delimitare pentru a compara imaginile și a evidenția diferențele.

Cum se compară, se identifică diferențele dintre anumite zone ale imaginilor prin intermediul aplicațiilor 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ție anti-aliasing pentru comparații precise

Biblioteca de sursă deschisă LooksSame permite dezvoltatorilor de software să efectueze compresia imaginilor utilizând metoda de detectare a anti-aliasing în cadrul aplicațiilor Node.js. Anti-aliasing poate provoca fals pozitive atunci când se compară imagini, deoarece introduce ușoare variații în randarea marginilor. Opțiunea ignoreAntialiasing a bibliotecii ajută la evitarea acestor rezultate false pozitive. Acest lucru este util în special pentru aplicațiile în care imaginile pot fi redate diferit pe diferite dispozitive sau browsere, dar sunt în continuare la fel din punct de vedere vizual.

 Română