JavaScript API с отворен код за сравняване на изображения

Библиотеката на JavaScript позволява на софтуерните програмисти да сравняват две изображения в множество среди като Node или браузъри и т.н.

Понякога е необходимо да се сравнят две изображения, за да се види колко си приличат. Това е много сложен процес и изисква добри познания за осъществяването му. Библиотеката pixelmatch с отворен код може да бъде много полезен избор за сравняване на две изображения във всяка среда. Тъй като библиотеката няма зависимости и работи върху необработени въведени масиви от данни за изображения, така че може да се използва в множество среди като Node или браузъри и т.н.

Pixelmatch е много малък по размер и много лесен за използване, но е много бърза библиотека за сравнение на изображения на ниво пиксел. Написан е на JavaScript и първоначално е създаден за сравняване на екранни снимки в тестове. Библиотеката поддържа функции като откриване на пиксели с изглаждане и перцептивни показатели за цветова разлика.

Откриването на антиалиасинг е много полезна функция, тъй като обикновено се наблюдава, че изобразяването на едни и същи данни на различни приложения, устройства или операционни системи може да генерира леко различни резултати. Но най-вече се препоръчва да се игнорират тези малки разлики или тестове, за да се уловят по-смислени данни.

Previous Next

Първи стъпки с pixelmatch

Препоръчителният начин за инсталиране на pixelmatch е чрез NPM. Моля, използвайте следната команда, за да го инсталирате.

Инсталирайте pixelmatch чрез NPM

 npm install pixelmatch 

Какво представлява тестването на Pixel Match?

Ако трябва да сравните две изображения, за да проверите дали има разлика между тях, можете да използвате тестване за съвпадение на пиксели за тази цел. Може да има два типа изображения, оригиналното изображение и модифицираното изображение. Можете да използвате приложение, което може да извлича изображения от екранната снимка на вашето приложение и след това библиотеката за сравнение на изображения може да се използва за сравняване на тези изображения и показване на резултатите.

Сравняване на изображения чрез JavaScript библиотека

Библиотеката с отворен код pixelmatch предоставя пълна функционалност за лесно сравняване на изображения в приложения на JavaScript. Разработчиците на софтуер трябва да предоставят данни за изображение за сравнение, както и изходното място, където трябва да запише данните за изображението с разликите. Те също трябва да предоставят размерите, които са ширината и височината на трите изображения. Можете да използвате опцията за праг, която позволява изображенията да са малко по-различни, което може да бъде чудесно в някои случаи. Моля, имайте предвид, че библиотеката pixelmatch изисква изображенията да са с еднакви размери.

Сравнение на изображения онлайн чрез JavaScript API

 const img1 = img1Context.getImageData(0, 0, width, height);
const img2 = img2Context.getImageData(0, 0, width, height);
const diff = diffContext.createImageData(width, height);
pixelmatch(img1.data, img2.data, diff.data, width, height, {threshold: 0.1});
diffContext.putImageData(diff, 0, 0);

Сравнете изображения в Node.js чрез pixelmatch

 const fs = require('fs');
const PNG = require('pngjs').PNG;
const pixelmatch = require('pixelmatch');
const img1 = PNG.sync.read(fs.readFileSync('img1.png'));
const img2 = PNG.sync.read(fs.readFileSync('img2.png'));
const {width, height} = img1;
const diff = new PNG({width, height});
pixelmatch(img1.data, img2.data, diff.data, width, height, {threshold: 0.1});
fs.writeFileSync('diff.png', PNG.sync.write(diff));
 Български