Bezplatné rozhraní Node.js API pro porovnávání obrázků
Open Source API založené na Node.js, které porovnává obrázky pixel po pixelu. Výkonné, flexibilní a efektivní řešení pro porovnávání obrázků v aplikacích Node.js.
Porovnávání obrázků hraje zásadní roli při vývoji softwaru, zejména v oblastech, jako je vizuální regresní testování, zajištění kvality obrazu a ověření návrhu dokonalého pixelu. Ať už vyvíjíte software pro zajištění konzistentního vzhledu uživatelského rozhraní na více platformách nebo automatizujete vizuální kontroly v produkčním potrubí, mít účinný nástroj pro porovnávání obrázků je zásadní. LooksSame, open-source API vyvinuté společností Gemini-Testing, díky svým intuitivním funkcím zjednodušuje proces vytváření softwaru pro porovnávání obrázků. Součástí knihovny je několik důležitých funkcí, jako je porovnání obrázků pixel po pixelu, detekce vyhlazování, konfigurace kontroly tolerance, manipulace s rozměry obrázku, podpora pro Promises a mnoho dalších.
LooksSame je rozhraní API založené na Node.js navržené pro porovnávání obrázků. Umožňuje vývojářům porovnávat obrázky pixel po pixelu s možnostmi zpracování drobných odchylek, které mohou nastat kvůli rozdílům v prostředí vykreslování. Využitím knihovny mohou vývojáři softwaru vytvářet své vlastní aplikace, které detekují významné vizuální rozdíly a přitom ignorují triviální variace. Rozhraní API se primárně zaměřuje na pomoc vývojářům udržovat konzistenci v návrhu uživatelského rozhraní, ale díky své všestrannosti je vhodné pro mnoho dalších případů použití porovnávání obrázků. Díky svému přímočarému rozhraní API a přizpůsobitelným možnostem je LooksSame skvělým doplňkem jakékoli vývojářské sady nástrojů, zejména pro testování uživatelského rozhraní na webu, automatické generování obrázků a další scénáře, kde je prvořadá vizuální přesnost.
Začínáme s LooksSame
Doporučený způsob instalace LooksSame je pomocí NPM. Pro bezproblémovou instalaci použijte prosím následující příkaz.
Instalujte LooksSame prostřednictvím NPM
npm install looks-same
Porovnání základních obrázků v aplikacích Node.js
Open source knihovna LooksSame usnadňuje vývojářům softwaru provádět základní porovnávání obrázků v aplikacích Node.js. Po instalaci můžete porovnat dva obrázky tím, že ve svém kódu budete vyžadovat modul LooksSame. Zde je základní příklad, který ukazuje, jak používat knihovnu ke kontrole, zda jsou dva obrazy vizuálně identické: V tomto příkladu porovnává image1.png a image2.png. Pokud jsou vizuálně stejné, vrátí se rovná hodnota true; jinak vrátí hodnotu false.
Jak porovnat dva obrázky v aplikacích 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!');
}
});
Porovnání obrázků na základě tolerance
U aplikací, které nevyžadují dokonalé shody pixelů, mohou vývojáři softwaru přidat úroveň tolerance. To umožňuje ignorovat malé rozdíly mezi obrázky, jako jsou změny způsobené vykreslováním v různých prohlížečích nebo operačních systémech. V následujícím příkladu kódu je tolerance nastavena na 5 %, což znamená, že malé odchylky v pixelech (až 5 %) nezpůsobí, že obrázky budou považovány za odlišné.
Jak provést porovnání obrázků na základě tolerance v aplikacích 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
Zvýraznění konkrétních oblastí rozdílů
U sofistikovanějších aplikací mohou vývojáři softwaru chtít identifikovat a analyzovat pouze konkrétní oblasti rozdílů. Knihovna LooksSame poskytuje funkci ohraničovacího rámečku, která ukazuje přesnou oblast, kde se vyskytují rozdíly. Tato funkce zobrazuje souřadnice ohraničovacího rámečku různých oblastí, což usnadňuje zaostření na konkrétní části obrazu, které se změnily. Následující příklad ukazuje, jak používat souřadnice ohraničovacího rámečku k porovnání obrázků a zvýraznění rozdílů.
Jak porovnávat Identifikovat rozdíly mezi konkrétními oblastmi obrázků pomocí aplikací 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');
Detekce anti-aliasingu pro přesná srovnání
Open source knihovna LooksSame umožňuje vývojářům softwaru provádět kompresi obrázků pomocí metody Anti-Aliasing Detection uvnitř aplikací Node.js. Anti-aliasing může způsobit falešné pozitivní výsledky při porovnávání obrázků, protože přináší drobné odchylky ve vykreslování okrajů. Možnost ignoreAntialiasing knihovny pomáhá těmto falešným poplachům předejít. To je užitečné zejména pro aplikace, kde mohou být obrázky vykresleny odlišně na různých zařízeních nebo prohlížečích, ale vizuálně jsou stále stejné.