موضوع مقاله: هسته (پردازش تصویر) | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # هسته (پردازش تصویر) | مقدمه: در پردازش تصویر، یک هسته, ماتریس کانولوشن, یا پوشش یک ماتریس کوچک است که روی تصویر اعمال می‌شود. | ## بخش 1: هسته (پردازش تصویر) | (تصویر، یک ماتریس است که در هریک از درایه‌های آن مقادیر رنگ مربوط به آن درایه بسته به سیستم رنگی استفاده شده، قرارگرفته اند). هسته یا کرنال، یک ماتریس است که با ضرب هر آرایه آن در آرایه معادل‌اش در هر بلوک از تصویر اصلی، عددی حاصل می‌شود که در تصویر نهایی جایگزین پیکسل تصویر اصلی است. از هسته برای ایجاد فیلترهای مختلف روی عکس استفاده می‌کنند، از دیگر کاربردهای آن در یادگیری ماشین است. هر هسته برای یک کار خاص مفید است مثل مات کردن، تیز کردن، برجسته سازی، تشخیص لبه، و کارهای دیگر. این تغییرات روی تصویر با عبور دادن ماتریس هسته (که از ماتریس تصویر اندازهٔ کوچکتری دارد) از تصویر یا میانگین‌گیری کانولوشن بین هسته و تصویر صورت می‌گیرد. جزئیات بسته به مقادیر عنصر، یک هسته می‌تواند محدوده گسترده‌ای از تأثیرات را داشته باشد. در مورد هستهٔ متقارن منشأ معمولاً عنصر مرکزی است، در این صورت هسته باید ماتریسی فرد-فرد باشد. کانولوشن کانولوشن عمل اضافه کردن هر خانه (پیکسل) از عکس به خانه‌های اطرافش (پیکسل‌های همسایهٔ محلی) است که توسط هسته وزن دهی شده‌اند. | ## بخش 2: هسته (پردازش تصویر) | باید به این نکته توجه شود که عمل ضرب ماتریس‌ها که در کانولوشن انجام می‌شود همان عمل ضرب تعریف شده روی ماتریس‌ها نیست، گرچه مشابهاْ آن را با * نشان می‌دهیم. برای مثال، فرض کنید دو ماتریس ۳ – مربعی K و M را داشته باشیم که K ماتریس هسته و M قسمتی از تصویر مورد نظر ما باشد، کانولوشن، عملیات وارون کردن ماتریس هسته به صورت افقی و عمودی و سپس ضرب نظیر به نظیر درایه‌های دو ماتریس و در نهایت جمع همهٔ آنهاست. البته اگر ماتریس هسته متقارن باشد نیازی به وارون کردن افقی و عمودی ماتریس نیست زیرا در این حالت هستهٔ وارون شده با هستهٔ اصلی برابر است. ماتریس‌های K و M را به شکل زیر داریم: ماتریس K را به صورت عمودی و افقی وارون می‌کنیم، هستهٔ جدید به شکل روبروست: گام بعدی ضرب نظیر به نظیر درایه‌های دو ماتریس و جمع همهٔ آنهاست: عنصر قرار گرفته در مختصات (۲٬۲) از تصویر حاصل (یعنی عنصر مرکزی)، یک ترکیب وزن دار از تمام درایه‌های ماتریس تصویر است، که توسط هسته وزن دهی شده‌اند: درایه‌های دیگر هم به‌طور مشابه مقدار دهی می‌شوند، به این صورت که مرکز هسته را روی نقاط مرزی تصویر قرار می‌دهیم و یک حاصل جمع وزن دار را محاسبه می‌کنیم. مقادیر یک پیکسل داده شده از تصویر حاصل، با ضرب هر مقدار از ماتریس هسته در مقادیر پیکسل‌های متناظر آن در ماتریس تصویر اولیه محاسبه می‌شوند. اگر هسته متقارن بود منشأ هسته را روی پیکسل فعلی قرار دهید، بنابراین هسته توسط پیکسل‌های مجاور هم پوشانی خواهد داشت. حال هر یک از عناصر هسته را با پیکسلی از تصویر که متناظر ان است ضرب کرده و همهٔ مقادیر بدست آمده را باهم جمع کنید. اگر هسته متقارن نباشد باید قبل از محاسبهٔ کانولوشن همانند قسمت بالا، ماتریس هسته به صورت افقی و عمودی برعکس شود. | ## بخش 3: هسته (پردازش تصویر) | این روش می‌تواند باعث شود که تصویر خروجی کمی کوچکتر شود و لبه‌های آن بریده شوند. در این حالت هسته می‌تواند از ماتریس تصویر بیرون بزند که مقادیر خارج از تصویر می‌توانند به انواع زیر مدیریت بشوند: پوشش با صفر (zero padding): مقادیر خارج از تصویر در این حالت برابر با صفر قرار داده می‌شوند. گسترش : نزدیک‌ترین پیکسل‌ها به لبه‌های تصویر به اندازهٔ لازم گسترش داده می‌شوند تا مقادیر مورد نیاز برای کانولوشن را فراهم کنند. پیکسل‌های کنج را در ابعاد یک گوهٔ ۹۰ درجه گسترش می‌دهیم، بقیهٔ پیکسل‌ها به صورت خطی گسترش داده می‌شوند. برای مثال، بجای خواندن پیکسلی که سه واحد خارج از لبه است پیکسلی که سه واحد داخل لبه است خوانده می‌شود پوشانیدن : تصویر در واقع پوشانده می‌شود (تکرار تصویر به صورت یکپارچه و بدون مرز) و برای این کار از مقادیری که در حاشیه یا کنج مخالف هستند استفاده می‌شود. نمونه‌هایی از انواع کانولوشن با حاشیه گذاری: گسترش zero padding گسترش آینه وارپوشانیدن100px100px100px100px نرمال سازی نرمال سازی به عنوان تقسیم هر عنصر در هسته بر جمع همهٔ عناصر هسته تعریف می‌شود که در نتیجه، جمع عناصر یک هستهٔ نرمال شده برابر با یک می‌شود، این کار باعث می‌شود که روشنایی تصویراصلاح شده به اندازه روشنایی تصویر اصلی باشد. | ## جمع‌بندی | برای مثال ماتریس هستهٔ استفاده شده در Box Blur را در نظر بگیرید: اگر همهٔ عناصر آن را جمع کنیم عدد ۹ بدست می‌آید، بنابراین هسته نرمال شده نیست و برای اصلاح آن باید همهٔ درایه‌های ماتریس را بر ۹ تقسیم کرد: حال جمع عناصر برابر ۱ می‌شود پس ماتریس هسته نرمال شده‌است.