כיום יש הרבה אפליקציות וספריות שמתמקדות בתמונותמהידועים ביותר יש לנו Photoshop, GIMP, Krita, Paint, בין היתר, אם כי ברור שהשניים הראשונים הם השלמים ביותר.
אבל למקרים ספציפיים של עבודה אין צורך להשתמש בכל כך הרבה משאבים לביצוע של כל אחד מאלה, נניח למשל רק לחתוך תמונות, לשנות גודל, מראה, פורמט, לטפל בכמה שינויים קטנים, בין היתר.
העניין הוא שלאחרונה נתקלתי ב- ספרייה מעולה זה משך את תשומת לבי, שכן הוא מתמקד בהסרת רעשים בתמונות ושמעל הכל זה קוד פתוח ומפותח יד ביד עם אינטל.
כשאנחנו מדברים על רעש בתמונות, לא, זה לא בהתייחסות לצליל/אודיו (וזה לא הגיוני אם אנחנו מדברים על תמונות), אבל רעש דיגיטלי הוא:
הווריאציה האקראית של בהירות או צבע בתמונות דיגיטליות המיוצרות על ידי התקן הקלט היא בעצם אותם "גרגרים" או פיקסלים שאינם תואמים לצבע.
ובכן, אם נחזור לנקודה של הספרייה עליה נדבר היום היא «Open Image Denoise» שמפתחת אוסף של פילטרים לביטול רעשים מתמונות שהוכנו עם מערכות עיבוד של מעקב אחר קרניים.
אודות Open Image Denoise
פתח את Image Denoise מפותח כחלק מפרויקט OneAPI Rendering Toolkit גדול יותר מכוון לפיתוח כלי הדמיה של תוכנה לחישובים מדעיים, כולל ספריית מעקב קרני Embree, מערכת העיבוד הפוטוריאליסטית GLuRay, פלטפורמת מעקב הקרניים המבוזר OSPRay ומערכת הרסטריזציה של תוכנת OpenSWR.
מטרת הפרויקט היא מספקים תכונות דה-נוז איכותיות, יעילות וקלות לשימוש שניתן ליישם כדי לשפר את איכות תוצאות מעקב הקרניים. המסננים המוצעים מאפשרים, בהתבסס על תוצאה של מחזור מעקב קרניים קצר יותר, להשיג רמת איכות סופית הדומה לתוצאה של תהליך רינדור מפורט יקר ואיטי יותר.
Open Image Denoise מסנן רעשים אקראי, כגון Monte Carlo Integration ray Tracing (MCRT). כדי להשיג עיבוד באיכות גבוהה באלגוריתמים כאלה, נדרש מעקב אחר מספר גדול של קרניים; אחרת, חפצים בולטים מופיעים בתמונה המתקבלת בצורה של רעש אקראי.
שימוש ב-Open Image Denoise מאפשר להפחית את מספר החישובים הנדרשים במספר סדרי גודל בעת חישוב כל פיקסל. כתוצאה מכך, ניתן ליצור תמונה רועשת בתחילה הרבה יותר מהר, אך לאחר מכן להוריד אותה לאיכות מקובלת באמצעות אלגוריתמים מהירים להפחתת רעש. עם הציוד המתאים, הכלים המוצעים יכולים לשמש אפילו למעקב אחר קרניים אינטראקטיביות עם דה-noising תוך כדי תנועה.
Open Image Denoise קיבלה לאחרונה את הגרסה החדשה שלה 2.0 שבה השינויים הבאים בולטים:
- תמיכה בהאצת פעולות הפחתת רעש באמצעות ה-GPU. הטמיעה תמיכה בהורדת GPU עם מערכות SYCL, CUDA ו-HIP שניתן להשתמש בהן עם GPUs המבוססים על ארכיטקטורת Intel Xe, AMD RDNA2, AMD RDNA3, NVIDIA Volta, NVIDIA Turing, NVIDIA Ampere, NVIDIA Ada Lovelace ו-NVIDIA Hopper.
- נוסף API חדש לניהול מאגר, המאפשר לך לבחור סוג אחסון, להעתיק נתוני מארח ולייבא מאגרים חיצוניים ממשקי API גרפיים כמו Vulkan ו-Direct3D 12.
- נוספה תמיכה במצב ביצוע אסינכרוני (פונקציות oidnExecuteFilterAsync ו-oidnSyncDevice).
- נוסף API לשליחת בקשות למכשירים פיזיים הקיימים במערכת.
- נוספה הפונקציה oidnNewDeviceByID כדי ליצור מכשיר חדש המבוסס על מזהה המכשיר הפיזי, כגון כתובת UUID או PCI.
- נוספו תכונות עבור ניידות עם SYCL, CUDA ו-HIP.
- נוספו אפשרויות סריקת מכשירים חדשות (SystemMemorySupported,
- ManagedMemorySupported, externalMemoryTypes).
- נוסף פרמטר להגדרת רמת האיכות של המסננים.
פתח את Image Denoise ניתן להשתמש בסוגים שונים של מכשירים, ממחשבים ניידים ומחשבים אישיים ועד צמתים מקובצים. היישום מותאם עבור מחלקות שונות של מעבדי אינטל 64 סיביות. אם אתה רוצה לדעת את הדרישות כדי להפעיל את Open Image Denoise כמו גם את שיטת ההתקנה שלה, אתה יכול להתייעץ הקישור הבא.
הקוד כתוב ב-C++ ומשוחרר תחת רישיון Apache 2.0.