ממשק API של Node.js בחינם להשוואת תמונות

ממשק API מבוסס Node.js בקוד פתוח המשווה תמונות Pixel by Pixel. פתרון רב עוצמה, גמיש ויעיל להשוואת תמונות ביישומי Node.js.

השוואת תמונות ממלאת תפקיד חיוני בפיתוח תוכנה, במיוחד בתחומים כמו בדיקות רגרסיה חזותית, אבטחת איכות תמונה ואימות עיצוב מושלם לפיקסלים. בין אם אתה מפתח תוכנה כדי להבטיח מראה עקבי של ממשק משתמש על פני פלטפורמות מרובות או אוטומציה של בדיקות ויזואליות בצנרת ייצור, יש צורך בכלי יעיל להשוואת תמונות. LooksSame, API בקוד פתוח שפותח על ידי Gemini-Testing, מפשט את תהליך יצירת התוכנה להשוואת תמונות עם התכונות האינטואיטיביות שלה. ישנם מספר מאפיינים חשובים של הספרייה, כגון השוואת תמונות פיקסל לפי פיקסל, זיהוי נגד זיהוי, הגדרת בקרת סובלנות, טיפול במידות תמונה, תמיכה ב-Promises ועוד רבים.

LooksSame הוא API מבוסס Node.js המיועד להשוואת תמונות. זה מאפשר למפתחים להשוות תמונות פיקסל אחר פיקסל, עם אפשרויות לטפל בווריאציות קלות שעלולות להתרחש עקב הבדלים בסביבות העיבוד. על ידי ניצול הספרייה, מפתחי תוכנה יכולים לבנות יישומים משלהם שמזהים הבדלים ויזואליים משמעותיים תוך התעלמות מוריאציות טריוויאליות. ה-API מתמקד בעיקר בסיוע למפתחים לשמור על עקביות בעיצוב ממשק המשתמש, אך הרבגוניות שלו הופכת אותו למתאים למקרי שימוש רבים אחרים בהשוואת תמונות. עם ה-API הפשוט והאפשרויות הניתנות להתאמה אישית שלו, LooksSame הוא תוספת מצוינת לכל ערכת כלים של מפתחים, במיוחד עבור בדיקות ממשק משתמש מבוססות אינטרנט, יצירת תמונות אוטומטית ותרחישים אחרים שבהם הדיוק החזותי הוא בעל חשיבות עליונה.

Previous Next

תחילת העבודה עם LooksSame

הדרך המומלצת להתקנת LooksSame היא באמצעות NPM. אנא השתמש בפקודה הבאה להתקנה חלקה.

התקן את LooksSame באמצעות NPM

npm install looks-same

השוואת תמונות בסיסית באפליקציות Node.js

ספריית הקוד הפתוח LooksSame מקלה על מפתחי תוכנה לבצע השוואת תמונות בסיסית בתוך יישומי Node.js. לאחר ההתקנה, אתה יכול להשוות שתי תמונות על ידי דרישת מודול LooksSame בקוד שלך. הנה דוגמה בסיסית שמראה כיצד להשתמש בספרייה כדי לבדוק אם שתי תמונות זהות מבחינה ויזואלית: בדוגמה זו, משווה בין image1.png לבין image2.png. אם הם זהים מבחינה ויזואלית, שווים יחזיר אמת; אחרת, הוא מחזיר false.

כיצד להשוות שתי תמונות בתוך אפליקציות 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!');
    }
});

השוואת תמונות מבוססת סובלנות

עבור יישומים שאינם דורשים התאמות פיקסלים מושלמות, מפתחי תוכנה יכולים להוסיף רמת סובלנות. זה מאפשר להתעלם מהבדלים קטנים בין תמונות, כגון שינויים עקב רינדור בדפדפנים או מערכות הפעלה שונות. בדוגמה הבאה של הקוד, הסובלנות מוגדרת ל-5%, כלומר וריאציות קטנות של פיקסלים (עד 5%) לא יגרמו לתמונות להיחשב שונות.

כיצד לבצע השוואת תמונות מבוססת סובלנות בתוך אפליקציות 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

הדגשת אזורי הבדל ספציפיים

עבור יישומים מתוחכמים יותר, מפתחי תוכנה עשויים לרצות לזהות ולנתח רק תחומים ספציפיים של הבדלים. ספריית LooksSame מספקת תכונת תיבה תוחמת המציגה את האזור המדויק שבו מתרחשים ההבדלים. פונקציה זו מפיקה את הקואורדינטות של התיבה התוחמת של האזורים השונים, מה שמקל על התמקדות בחלקים ספציפיים של התמונה שהשתנו. הדוגמה הבאה מראה כיצד להשתמש בקואורדינטות של תיבה תוחמת כדי להשוות תמונות ולהדגיש את ההבדלים.

כיצד להשוות לזהות את ההבדלים בין אזורים ספציפיים של תמונות באמצעות אפליקציות 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');

זיהוי נגד כינוי להשוואות מדויקות

ספריית הקוד הפתוח LooksSame מאפשרת למפתחי תוכנה לבצע דחיסת תמונות על ידי שימוש בשיטת Anti-Aliasing Detection בתוך יישומי Node.js. אנטי-aliasing יכול לגרום לתוצאות חיוביות שגויות בעת השוואת תמונות, מכיוון שהיא מציגה שינויים קלים בעיבוד הקצוות. האפשרות ignoreAntialiasing של הספרייה עוזרת להימנע מתוצאות כוזבות אלה. זה שימושי במיוחד עבור יישומים שבהם תמונות עשויות להיות מוצגות בצורה שונה במכשירים או בדפדפנים שונים, אך הן עדיין זהות מבחינה ויזואלית.

 עִברִית