هم‌گشت

بندانگشتی|392px|هم‌گشت برای دو پالس مربعی: حالت موج به دست آمده یک پالس مثلثی است. انتگرال حاصلضرب برابر مساحت ناحیه زرد است.|جایگزین=

[بندانگشتی|250px|هم‌گشت برای یک پالس مربعی (سیگنال ورودی) با [پاسخ ضربه در یک مدار RC که از آن برای به دست آوردن حالت موج سیگنال خروجی استفاده می‌شود. انتگرال حاصلضرب آن‌ها برابر مساحت ناحیه زرد است.|جایگزین=]]
**هَم‌گَشت** یا کانوُلوشِن  در ریاضیات یا به‌طور دقیق‌تر آنالیز تابعی، یک عملگر ریاضی است که بر روی دو تابع مانند f و g عمل می‌کند. کاربردهای این عملگر شامل آمار، بینایی رایانه‌ای، پردازش تصویر، پردازش سیگنال، مهندسی برق و معادلات دیفرانسیل می‌شود. به هم‌گشت، هم‌آمیخت و پیچیدگی هم گفته شده است.

هم‌گشت را می‌توان برای توابعی از گروه‌های غیر از فضای اقلیدسی تعریف کرد. در حالت خاص، هم‌گشت دوره‌ای (Cyclic Convolution) را می‌توان برای توابع متناوب تعریف کرد، و هم‌گشت گسسته را نیز می‌توان برای توابع گسسته تعریف کرد. چنین تعمیم‌هایی از هم‌گشت دارای کاربردهایی در زمینه تحلیل عددی، جبر خطی عددی، و پردازش سیگنال‌های گسسته دارند. امروزه از کانولوشن‌ها برای استخراج ویژگی‌های داده استفاده‌ فراوان می‌شود.

## تاریخچه
عمل

:\int_0^t\varphi(s)\psi(t-s)ds،

به ازای

0\le t،

حالت خاص ضرب ترکیبی است که ریاضیدان ایتالیایی ویتو ولترا آن را مطرح کرده‌است.

هم‌گشت اصولاً به نام "Faltung" (که همان Folding انگلیسی به معنی تا کردن است)، توسط یک ریاضیدان آلمانی به نام گوستاو دوچ معرفی شد.

## تعریف
هم‌گشت دو تابع ƒ و g به صورت f * g نوشته می‌شود. این تعریف به صورت انتگرال حاصلضرب دو تابع که یکی از آن‌ها نسبت به محور عمودی مختصات برعکس شده و روی آن یکی می‌لغزد تعریف می‌شود. با این تعریف، هم‌گشت یک نوع خاص از تبدیل انتگرالی است.

:

هم‌گشت را می‌توان به عنوان میانگین وزنی تابع (ƒ(τ با مومنتوم t در نظر بگیریم که وزن‌ها توسط (g(−τ به اندازه t جابجا می‌شوند (لغزش می‌کنند). با تغییر t، تابع وزنی قسمت‌های مختلف تابع ورودی را برجسته می‌کند. به‌طور کلی، اگر f و g بر روی **R**d توابع با مقدار مختلط باشند، آنگاه هم‌گشت را می‌توان به صورت انتگرال زیر تعریف کرد:

:(f * g)(x) = \int_{\mathbf{R}^d} f(y)g(x-y)\,dy = \int_{\mathbf{R}^d} f(x-y)g(y)\,dy.

### هم‌گشت دوره‌ای
وقتی یک تابع gT متناوب باشد (که T دوره تناوب آن است)، آنگاه برای تابع ƒ (به‌طوری‌که ƒ∗gT وجود داشته باشد)، هم‌گشت نیز متناوب و یکتا خواهد بود:

:(f * g_T)(t) \equiv \int_{t_0}^{t_0+T} \left[\sum_{k=-\infty}^{\infty} f(\tau + kT)\right] g_T(t - \tau)\ d\tau,\,

که to یک مقدار انتخاب است. جمع، یک **بسط متناوب** از تابع ƒ خوانده می‌شود.

اگر gT بسط متناوب یک تابع دیگر (مثلاً g) باشد، آنگاه رابطه ƒ∗gT را هم‌گشتِ دوره‌ای ƒ و g می‌نامند.

## هم‌گشت گسسته
هم‌گشت برای دو تابع گسسته ƒ، g که بر روی مجموعه اعداد صحیح **Z** تعریف شده‌است، انتگرال گسسته ƒ و g با رابطه زیر بدست می‌آید:

:(f * g)[n]\ \stackrel{\mathrm{def}}{=}\ \sum_{m=-\infty}^{\infty} f[m]\, g[n - m]
::::= \sum_{m=-\infty}^{\infty} f[n-m]\, g[m]. (جابجا پذیری)

زمانی که دو چندجمله‌ای را ضرب می‌کنیم، ضرایب حاصلضرب توسط هم‌گشت توالی ضرایب اصلی بدست می‌آید، که برای جلوگیری از ایجاد جمله‌های تعریف نشده با عدد صفر بسط داده می‌شوند؛ این عمل تحت عنوان حاصلضرب کوشی ضرایب دو چند جمله‌ای شناخته می‌شود.

### هم‌گشت گسستهٔ دوره‌ای
وقتی تابع gN متناوب است (با تناوب N)، آنگاه برای تابعی مانند ƒ، به‌طوری‌که ƒ∗gN وجود داشته باشد، هم‌گشت متناوب و یکتا خواهد بود:

:(f * g_N)[n] \equiv \sum_{m=0}^{N-1} \left(\sum_{k=-\infty}^{\infty} {f}[m+kN] \right) g_N[n-m]\,

حاصل این مجموع بر روی k را **بسط دوره‌ای** تابع ƒ می‌نامند.

اگر gN بسط دوره‌ای یک تابع دیگر باشد، g، آنگاه عبارت ƒ∗gN را هم‌گشت دوره‌ای ƒ و g می‌نامند.

زمانی که طول زمانی غیرصفر هر دو تابع ƒ و g به محدوده [0, N-۱] مقید شود، آنگاه ƒ∗gN به صورت زیر کاهش خواهد یافت:

::::= \sum_{m=0}^n f[m]\ g[n-m] + \sum_{m=n+1}^{N-1} f[m]\ g[N+n-m]\,
::::= \sum_{m=0}^{N-1} f[m]\ g[(n-m)_{\mod{N}}]\quad \stackrel{\mathrm{def}}{=}\quad (f *_N g)[n]\,

نماد (f *_N g)\, برای هم‌گشت دوره‌ای یادآور هم‌گشت بر روی گروه دوره‌ای یک integers modulo N است.

### الگوریتم‌های هم‌گشت سریع
در برخی حالات، هم‌گشت گسسته می‌تواند به هم‌گشت دوره‌ای تبدیل شود تا بتوان از خواص هم‌گشت برای اجرای تبدیل سریع توسط کامپیوتر بهره برد. برای مثال، هم‌گشت توالی رقمی یک عمل بسیار مهم ضرب اعداد چند رقمی است، که در نتیجه می‌تواند به صورت بهینه‌ای با تکنیک‌های تبدیل پیاده‌سازی شود(; ).

 به ازای هر مقدار خروجی به N عمل محاسباتی نیاز دارد و در نتیجه N2 عمل برای N خروجی؛ که این مقدار محاسبات با استفاده از هر کدام از الگوریتم‌های سریع به‌طور چشمگیری می‌تواند کاهش یابد. پردازش سیگنال دیجیتال و دیگر کاربردهای مهندسی معمولاً از الگوریتم‌های هم‌گشت سریع برای کاهش هزینه محاسبات هم‌گشت با پیچیدگی از درجه O(N log N) استفاده می‌کنند.

مرسوم‌ترین الگوریتم هم‌گشت سریع، از الگوریتم‌های تبدیل فوریه سریع (FFT) قضیه هم‌گشت دوره‌ای استفاده می‌کنند. در حالت خاص، هم‌گشت دوره‌ای دو توالی با طول محدود را می‌توان با اعمال FFT هر کدام، ضرب نقطه به نقطه، و سپس اعمال FFT معکوس بدست آورد. در نتیجه انواع هم‌گشت تعریف شده در بالا را به صورت بهینه می‌توان با استفاده از تکنیک‌هایی همراه با افزودن و/یا کاهش صفر خروجی پیاده‌سازی کرد. الگوریتم‌های هم‌گشت سریع دیگر، مثل الگوریتم شون هاگه- اشتراسِن، نیز از تبدیل فوریه سریع در  دیگر استفاده می‌کنند.

## دامنه تعریف
هم‌گشت دو تابع با مقدار مختلط بر روی **R**d

:(f*g)(x) = \int_{\mathbf{R}^d}f(y)g(x-y)\,dy

خوش تعریف است، تنها اگر ƒ و g به اندازه کافی در بینهایت افت سریع خواهد داشت که انتگرال آن وجود داشته باشد. شرایط وجود هم‌گشت تا حدودی ما را به اشتباه می‌اندازد، زیرا یک انفجار (blow up) در تابع g در بینهایت به راحتی با افت سریع تابع ƒ در بینهایت جبران می‌شود. در نتیجه مسئله وجود هم‌گشت شامل شرایط دیگری بر روی ƒ و g می‌شود.

### توابع کاملاً پشتیبان شده
اگر ƒ و g توابع ریاضی کاملاً پشتیبان شده باشند، آنگاه هم‌گشت آن‌ها وجود دارد، و همچنین تابع بدست آمده کاملاً پشتیبانی شده و پیوسته می‌باشد . اصولاً اگر یکی از توابع (مثلاً ƒ) کاملاً پشتیبانی شده و دیگری انتگرال‌پذیر بومی باشد، آنگاه ƒ∗g خوش تعریف و پیوسته خواهد بود.

### توابع انتگرال‌پذیر
هم‌گشت ƒ و g وجود دارد اگر ƒ و g هر دو توابع انتگرال‌پذیر لِبِسگ (در L<sup>1</sup>('''R'''<sup>d</sup>)) باشند؛ در این حالت ƒ∗g نیز انتگرال‌پذیر است . این بیان، یک نتیجه‌گیری از قضیه تونلی است. به همین صورت، اگر ƒ ∈ L1(**R**d) و g ∈ Lp(**R**d) که ۱ ≤ p ≤ ∞، آنگاه ƒ∗g ∈ Lp(**R**d) و

:\|{f}*g\|_p\le \|f\|_1\|g\|_p. \,

در حالت خاص p= ۱، این رابطه نشان می‌دهد که L1 یک جبر باناخ تحت هم‌گشت است (و تساوی دو طرف برقرار است اگر f و g در تمام نقاط غیر منفی باشند).

به‌طور کلی‌تر، نامساوی یونگ بیان می‌کند که هم‌گشت یک نگاشت دوطرفه پیوسته بین فضاهای Lp مناسب است. به‌طور خاص، اگر ۱ ≤ p,q،r ≤ ∞ رابطه زیر را ارضا کنند

:\frac{1}{p}+\frac{1}{q}=\frac{1}{r}+1,

آنگاه

:\|f*g\|_r\le \|f\|_p\|g\|_q,\quad f\in L^p,\ g\in L^q,

در نتیجه، هم‌گشت نگاشت دوطرفه پیوسته از Lp×Lq به Lr است.

### توابع با نزول سریع
علاوه بر توابع با پشتیبانی کامل و توابع انتگرال‌پذیر، توابعی که دارای سرعت نزول سریع در بینهایت هستند نیز می‌توانند تحت هم‌گشت قرار بگیرند. یکی از ویژگی‌های مهم هم‌گشت آن است که اگر ƒ و g هر دو سریعاً نزولی باشند، آنگاه ƒ∗g نیز به سرعت نزول می‌کند. با در نظر گرفتن این واقعیت که هم‌گشت معمولاً با دیفرانسیل‌گیری همراه است (به **خصوصیات** مراجعه کنید)، باعث می‌شود که کلاس توابع شوارتز تحت هم‌گشت بسته باشند.

### توزیع‌ها

تحت برخی شرایط، می‌توان هم‌گشت یک تابع با یک توزیع، یا دو توزیع را تعریف کرد. اگر ƒ یک تابع کاملاً پشتیبانی شده باشد و g یک توزیع باشد، آنگاه ƒ∗g یک تابع نرم است که توسط فرمول توزیعی زیر تعریف می‌شود

:\int_{\mathbf{R}^d} {f}(y)g(x-y)\,dy.

در حالت کلی‌تر، می‌توان تعریف هم‌گشت را بسط داد که به‌طور یکتا، قانون زیر حتی در حالتی که ƒ یک توزیع باشد، و g یک توزیع کاملاً پشتیبانی شده در نظر بگیریم، بر قرار باشد :

:f*(g*\varphi) = (f*g)*\varphi\,

### اندازه‌ها
هم‌گشت هر دو اندازه بورل μ و ν از تغییر محدود، اندازه λ است که با رابطه زیر تعریف می‌شود:

:\int_{\mathbf{R}^d} f(x)d\lambda(x) = \int_{\mathbf{R}^d}\int_{\mathbf{R}^d}f(x+y)\,d\mu(x)d\nu(y).

این رابطه زمانی که μ و ν را توزیع در نظر بگیریم با هم‌گشت‌های تعریف شده در بالا مطابقت دارد؛ همچنین برای هم‌گشت توابع L1 وقتی که μ و ν نسبت به اندازه لِبِسگ مطلقاً پیوسته باشند.

همچنین، هم‌گشت اندازه‌ها نسخه دیگری از نامعادله یونگ که در زیر آمده‌است را ارضا می‌کنند

\|\mu*\nu\|\le \|\mu\|\|\nu\|

که نُرم، تعریف کلی اندازه است. از آنجا که فضای اندازه تغییر محدود یک فضای باناخ است، با هم‌گشت اندازه می‌توان مشابه روش‌های استاندارد تحلیل تابعی که قابل اعمال به توزیع‌ها نیست برخورد کرد.

## خواص
### خواص جبری

هم‌گشت یک ضرب را بر روی فضای برداری توابع انتگرال‌پذیر است. این حاصلضرب خواص ریاضی زیر را ارضا می‌کند، که به معنی آن است که فضای توابع انتگرال‌پذیر با حاصل هم‌گشت یک جبر جابجا پذیر است بدون عنصر خنثی . دیگر فضاهای برداری توابع، مثل فضای توابع پیوسته کاملاً پشتیبانی شده، تحت هم‌گشت بسته هستند، و در نتیجه جزء جبرهای جابه‌جاپذیر هستند.

; جابجایی
: f * g = g * f \,

; انجمنی
: f * (g * h) = (f * g) * h \,

; توزیع‌پذیری
: f * (g + h) = (f * g) + (f * h) \,

؛ خاصیت انجمنی با یک عدد اسکالر
: a (f * g) = (a f) * g = f * (a g) \,
به ازای هر عدد حقیقی (مختلط){a}\,

; خنثی در ضرب

هیچ عمل جبری توابع، یک عامل خنثی در ضرب را برای هم‌گشت ایجاد نمی‌کنند. کمبود عامل خنثی در ضرب عملاً مشکل بزرگی به حساب نمی‌آید، زیرا زیرا اکثر توابعی که هم‌گشت روی آن‌ها انجام می‌شود را می‌توان با یک توزیع دیراک مورد هم‌گشت قرار داد، یا حداقل (مثلاً برای حالت L1) می‌توان تقریبی از عامل خنثی را برای آن در نظر گرفت . ولی فضای برداری توزیع‌های کاملاً پشتیبانی شده، اجازه حضور عامل خنثی در ضرب را تحت هم‌گشت به ما می‌دهند. به خصوص اینکه

:f*\delta = f\,

که δ توزیع دلتا است.

؛ عنصر معکوس

برخی توزیع‌ها برای هم‌گشت یک عنصر معکوس دارند، S−1، که با رابطه زیر تعریف می‌شوند

: S^{(-1)} * S = \delta. \,

مجموعه‌ای از توزیع‌های معکوس پذیر یک گروه آبلی را تحت هم‌گشت تشکیل می‌دهند.

مزدوج مختلط؛ \overline{f * g} = \overline{f} * \overline{g} \!\ 

### انتگرال‌گیری
اگر ƒ و g توابع انتگرال‌پذیر باشند، آنگاه انتگرال هم‌گشت آن‌ها در تمام فضا، از حاصلضرب انتگرال آن‌ها بدست می‌آید:

:\int_{\mathbf{R}^d}(f*g)(x)dx=\left(\int_{\mathbf{R}^d}f(x)dx\right)\left(\int_{\mathbf{R}^d}g(x)dx\right).

این رابطه از قضیه فوبینی بر گرفته شده‌است. نتیجه مشابهی نیز برقرار است در صورتی که ƒ و g فقط توابع قابل اندازه‌گیری غیر منفی باشند توسط قضیه تونلی بیان می‌شود.

### دیفرانسیل‌گیری
در حالت یک متغیری داریم

: \frac{d}{dx}({f} * g) = \frac{df}{dx} * g = {f} * \frac{dg}{dx} \,

که d/dx همان مشتق است. به‌طور کلی، در حالتی که توابعی از متغیرهای مختلف داشته باشیم، فرمول مشابهی با استفاده از مشتق پاره‌ای برقرار است.

:\frac{\partial}{\partial x_i}({f} * g)(x) = \frac{\partial f}{\partial x_i} * g = {f} * \frac{\partial g}{\partial x_i}.

یک نتیجه خاص این رابطه ان است که هم‌گشت را می‌توان به شکل یک عمل «هموار کنندگی» نگاه کرد: هم‌گشت ƒ و g به تعداد مرتبه‌ای که ƒ و g قابل دیفرانسیل‌گیری هستند، قابل دیفرانسیل‌گیری است.

این خاصیت تحت شرایطی برقرار است که ƒ و g مطلقاً انتگرال‌پذیر باشند و به عنوان یکی از نتایج نامعادله یونگ حداقل یکی از آن‌ها دارای (L1). برای مثال، زمانی که ƒ مشتق پذیر پیوسته با پشتیبانی کامل باشد، و g یک تابع دلخواه و انتگرال‌پذیر محدود باشد،

:\frac{d}{dx}({f} * g) = \frac{df}{dx} * g.

### قضیه هم‌گشت
قضیه هم‌گشت بیان می‌دارد که:

: \mathcal{F}\{f * g\} = k\cdot \mathcal{F}\{f\}\cdot \mathcal{F}\{g\}

که  \mathcal{F}\{f\}\, بیان‌کننده تبدیل فوریه تابع f است، و k یک عدد ثابت است که وابسته به نرمالیزه تبدیل فوریه است (به «خصوصیات تبدیل فوریه» مراجعه کنید). برخی نسخه‌های دیگر این قضیه برای تبدیل لاپلاس، تبدیل لاپلاس دوسویه، تبدیل z و تبدیل ملین برقرار است.

قضیه هم‌گشت تیچ مارش که اهمیت کمتری دارد مراجعه کنید.]]

## کاربردها
هم‌گشت در بسیاری از کاربردهای مهندسی و ریاضی دیده می‌شود؛
* در مهندسی برق، هم‌گشت یک تابع (سیگنال ورودی) با تابعی دیگر (پاسخ ضربه)، خروجی یک سیستم خطی تغییرناپذیر با زمان (LTI) را به دست می‌دهد. خروجی سیستم در هر لحظه برابر با اثر جمعی تمام مقادیر پیشین تابع ورودی است، که آخرین مقادیر معمولاً بیشترین تأثیر را دارند.
** در کاربردهای پردازش سیگنال رقمی و پردازش تصویر، تابع ورودی به‌طور کامل در دسترس است و لذا می‌توان هر قسمت از خروجی را بدست آورد. در این نوع، می‌توان از مزیت این که خروجی تنها به چند ورودی اخیر بستگی دارد بهره برد.
** هم‌گشت هر مؤلفه فرکانسی را به‌طور مستقل بدون وابستگی به دیگر فرکانس‌ها تقویت و با تضعیف می‌کند.
* در آمار، هم‌گشت در واقع یک میانگین متحرک وزن دار است.
* در تئوری احتمال، توزیع احتمال مجموع دو متغیر تصادفی مستقل برابر است با هم‌گشت توزیع‌های مستقل.
* در نورشناخت، بسیاری از انواعِ تارشدگی (Blur) را با هم‌گشت بیان می‌کنند. یک سایه (مثلاً سایه دست روی یک میز، زمانی که دست بین میز و نور قرار می‌گیرد) را می‌توان هم‌گشت شکل منبع نور (که قالب سایه را تشکیل می‌دهد) و یک جسم (که سایه آن تشکیل می‌شود) دانست. یک عکس خارج از فوکوس، هم‌گشت شکل جسم (لبه‌های جسم) با شکل عدسی است (Bokeh).
* به‌طور مشابه، در پردازش سیگنال رقمی، فیلتر هم‌گشتی نقش مهمی را در الگوریتمهای تشخیص لبه و کاربردهای مشابه بازی می‌کند.
* در صداشناسی، یک پژواک، هم‌گشت صدا با تابعی است که عناصر منعکس کنندهٔ صدا را توصیف می‌کند.
* در همهمه مصنوعی (پردازش سیگنال رقمی، صدای پس زمینه)، هم‌گشت برای نگاشت پاسخ ضربه یک اتاق واقعی بر روی سیگنال صوتی رقمی استفاده می‌شود.
* In time-resolved fluorescence spectroscopy, the excitation signal can be treated as a chain of delta pulses, and the measured fluorescence is a sum of exponential decays from each delta pulse.
* در سیستم‌های برنامه‌ریز درمان رادیویی، قسمت اعظم محاسبات کدها از الگوریتم‌های برهم‌نهی هم‌گشت استفاده می‌کنند.
* در فیزیک، هر جا که سیستم خطی با "اصل برهم‌نهی" همراه می‌شود، هم‌گشت را نیز خواهیم دید.
* در سامانه اطلاعات مکانی، پاسخ تقریب هسته‌ایِ تابعِ شدتِ یک الگوی نقطه‌ای، هم‌گشت ایزوتروپیک هسته گوسی یک انحراف استاندارد با وزن‌های نقطه‌ای (برای هر نقطه داده) است. می‌توانید به documentation of the "Kernel Smoothed Intensity of Point Pattern" of the SDA4PP QGIS plugin مراجعه کنید.

## جستارهای وابسته
* :ماتریس توپلیتس
* نظریه سیستم خطی تغییرناپذیر با زمان
* ماتریس توپلیتس
* واهم‌گشت
* ضرب دیریکله
* پردازش سیگنال پیوسته

## پانویس

## منابع
* .
* .
* .
* .
* .
* .
* .
* .
* .
* .
* .
* 
* .
* .
* 

## پیوند به بیرون

* Earliest Uses: The entry on Convolution has some historical information.
* https://web.archive.org/web/20090319210410/http://www.nitte.ac.in/downloads/Conv-LTI.pdf
* Convolution, on The Data Analysis BriefBook
* http://www.jhu.edu/~signals/convolve/index.html Visual convolution Java Applet.
* http://www.jhu.edu/~signals/discreteconv2/index.html Visual convolution Java Applet for Discrete Time functions.
* Lectures on Image Processing: A collection of 18 lectures in pdf format from Vanderbilt University. Lecture 7 is on 2-D convolution., by Alan Peters.
** https://web.archive.org/web/20090324090441/http://www.vuse.vanderbilt.edu/~rap2/EECE253/EECE253_01_Intro.pdf
* A collection of 2D convolution kernels
* Convolution Kernel Mask Operation Interactive tutorial
* Convolution at مث‌ورلد
* Freeverb3 Impulse Response Processor: Opensource zero latency impulse response processor with VST plugins

رده:آنالیز تابعی
رده:پردازش تصویر
رده:آنالیز فوریه
رده:عملگرهای دوخطی
رده:عملیات دوتایی
رده:کشف ویژگی‌ها