%محمود امین طوسی
\chapter{ترکیب تصاویر }\label{Chap:fusion}
% http://www.imagefusion.org/
\def\algorithmicrequire{\textbf{ورودی:}}
\def\algorithmicensure{\textbf{خروجی:}}


مسئلهٔ پیدا بودن درز نواحی مورد ترکیب، از مشکلات معمول در ترکیب تصاویر است. 
  \fusion تصاویر به نحوی که مرز تصاویر آشکار نباشد یکی از موضوعات مهم در مسائل \SR و تصاویر عریض می‌باشد. 
مرز نواحی مورد ترکیب در نتایچ نهایی روش پیشنهادی در فصل قبل قابل رؤیت بود. این مشکل حتی در روش‌های مبتنی بر استفاده از \patch همچون \cite{Freeman02example} نیز به نحوی وجود دارد که به ناسازگاری بلوکهای مجاور معروف است. البته دو مسئله با هم متفاوت هستند ولی تا حدودی بیانگر یک مشکل می‌باشند.
در این فصل مروری کوتاه بر ترکیب تصاویر داشته و شیوهٔ پیشنهادی برای حل مشکل مذکور ارائه می‌گردد\footnote{شیوهٔ پیشنهادی در این فصل در قالب مقالهٔ \cite{Amintoosi88amikhtan} منتشر شده است.}.

به فرآیند ترکیب\LTRfootnote{Combination} \index{ترکیب} اطلاعات دو یا چند تصویر از یک صحنه، جهت حصول یک تصویر که دارای اطلاعات 
بیشتری بوده و برای درک بصری یا پردازش کامپیوتری مناسب‌تر است «\fusion \LTRfootnote{Fusion}» گفته می‌شود
\citep{Goshtasby07image}. \fusion تصویر به سه سطح: پایین، میانه و بالا تقسیم‌بندی می‌شود که برخی به آنها به عنوان سطوح پیکسلی، ویژگی و نمادین\LTRfootnote{Symbolic} اشاره می‌کنند. برخلاف  سطح اول (پایین)، کارهای کمی  در زمینه‌ی دو سطح دیگر انجام شده است. متدهای مبتنی بر ویژگی معمولاً تصویر را به چند ناحیه قطعه بندی نموده و  نواحی را با استفاده از خصوصیات مختلفشان ترکیب می‌کنند. این متدها معمولاً حساسیت کمتری به نویز دارند. متدهای سطح بالا، توصیف کننده‌های تصویر مانند گرافهای رابطه‌ای \LTRfootnote{Relational graphs} را ترکیب می‌کنند \citep{Goshtasby07image,Wang07framework}.

%طراحی و گسترش سیستم‌های بهتر وفقی و برخط \fusion تصویر و ویدئو از زمینه‌های آتی کار در این مقوله خواهد بود\citep{Goshtasby07image}.

% \citet{Wang07framework} متدی مبتنی بر شناسائی زمینه برای \fusion (البته نه برای \SR) ارائه نموده است.
 
% \section{همرنگ سازی}
 \citet{Milgram77adaptive} شیوه‌ای برای همرنگسازی\index{هم‌رنگ‌سازی} ارائه نموده است که مشتمل بر مراحل زیر است:
 \begin{enumerate}
 \item \registration 
 \item متعادل نمودن اختلاف سطح خاکستری بین دو تصویر\LTRfootnote{Equalize the gray-level differences} تا حد ممکن،
 \item پیدا نمودن یک \seam در ناحیه‌ی هم‌پوشان با استفاده از برنامه‌سازی پویا،
 \item \smooth نمودن تصویر در محل \seam
 \end{enumerate}
 هزینه‌ی یک \seam به عنوان میزان اختلاف دو تصویر در هر نقطه در نظر گرفته شده و \seam با حداقل هزینه با روش برنامه‌ریزی پویا پیدا شده است. تعداد همسایه‌ها در هر سطر 2و4و6 در نظر گرفته شده و ذکر شده است که می‌توان این اندازه را وفقی درنظر گرفت. 
 
% \citet{Avidan07seam} بر اساس شیوه‌ی فوق روشی برای تغییر اندازه‌ی تصاویر مبتنی بر محتوی ارائه نموده‌اند.

% معمولاً تصاویر مورد ترکیب با استفاده از حسگرهای مختلف اخذ شده و با هم \fused می‌شوند؛ به عنوان مثال یک عکس معمولی و یک تصویر مادون قرمز. در این حالت یک شیئ سرد یا گرم به راحتی در تصویر ترکیبی قابل شناسائی خواهد بود.



تکنیک هم‌رنگ‌سازی چندبانده‌ی \cite{Burt83multiresolution} یکی از مشهورترین آثار در حوزه‌ی ترکیب تصاویر است که از روشهای سطح پیکسلی به‌شمار می‌رود. در این روش از سطوح مختلف تفکیک‌پذیری برای \fusion تصاویر در مسئله‌ی موزائیک تصاویر\LTRfootnote{Photo mosaic} بهره گرفته شده است. 
تکنیک موزائیک روشی است برای ساخت تصویری با میدان دید وسیع‌تر یا جزئیات بیشتر از چیزی که از یک تصویر حاصل می‌شود. 
یکی از زیر مسائل این تکنیکها و تصاویر عریض (پانوراما)، ترکیب دو تصویر به نحوی است که لبه‌های تصاویر در ناحیه‌ی هم‌پوشان مشخص نباشد.  حتی تفاوت سطح خاکستری در مرز ناحیه‌ی هم‌پوشان به خوبی قابل رؤیت می‌باشد. لذا نیازمند روشی برای ترکیب هستیم که انتقال از یک تصویر به تصویر دیگر به نرمی صورت پذیرفته، مرز دو تصویر دیده نشود و در عین حال اطلاعات تصاویر اصلی تا حد امکان محفوظ بماند. به چنین روش ترکیبی، ترکیب بدون درز\LTRfootnote{Seamless} گفته می‌شود.

%\floatname{algorithm}{\rl{الگوریتم}}
\begin{algorithm}[t]
\caption{الگوریتم \fusion تصاویر $A$ و $B$  با تکنیک هم‌رنگ‌سازی چندبانده \cite{Burt83multiresolution}.} \label{alg1}
\begin{algorithmic}[1]
\REQUIRE تصاویر $A$ و $B$.\\
\ENSURE تصویر $S$ حاصل از \fusion نیمه‌ی سمت چپ $A$ و نیمه‌ی سمت راست $B$
  \STATE هرمهای لاپلاسین $LA,LB$ از تصاویر $A,B$ ساخته می‌شوند.
  \STATE هرم لاپلاسین سومی به نام $LS$ با کپی کردن نیمه‌های سمت چپ $LA$ و سمت راست $LB$ ساخته می‌شود. عناصر ستون وسط $LS$ با میانگین‌گیری از عناصر نظیر آنها در $LA,LB$ بدست می‌آیند. 
  \STATE تصویر نهایی $S$ با گسترش هر سطح هرم $LS$ و جمع آن با سطح بعدی حاصل خواهد شد.   
\end{algorithmic}
\end{algorithm}

ساده‌ترین راه حذف درز را می‌توان روش میانگین‌گیری وزن‌دار پیکسلهای دو تصویر در ناحیه‌ی هم‌پوشان دانست. فرض کنید تصویر $A$ در سمت چپ و تصویر $B$ در سمت راست بوده، $A(i)$ پیکسل $i$ام ناحیه‌ی هم‌پوشان در تصویر سمت چپ، $B(i)$ پیکسل متناظر از تصویر سمت راست و $\hat{i}$ مختصات پیکسل روی مرز باشد. همچنین به فرض $H_l(i)$ تابع وزن‌دهی باشد که نزولی یکنوا از چپ به راست بوده و $H_r(i) = 1-H_l(i)$ باشد. تصویر ترکیبی $S$ به صورت زیر بدست خواهد آمد:
\begin{equation}
S(i) = H_l(i-\hat{i})A(i) + H_r(i-\hat{i})B(i)
\end{equation}
انتخاب مناسب تابع $H$ باعث خواهد شد که انتقالی نرم از یک تصویر به دیگری داشته باشیم. ولی ناپیدا بودن درز را تضمین نمی‌کند. فرض کنید $T$ پهنای ناحیه‌ی هم‌پوشان باشد که در آن $H_l$ از یک به صفر تغییر می‌نماید. اگر $T$ در مقایسه با اندازه‌ی ویژگیهای تصاویر کوچک باشد، درز قابل رؤیت خواهد بود. از طرف دیگر اگر $T$ بزرگ باشد، دو تصویر شبیه به وضعیتی که دو عکس روی یک فیلم گرفته شده باشند، با هم ادغام می‌شوند. 
انتخاب $T$ وابسته به پهنای باند فرکانس مکانی تصاویر می‌باشد. اما هنگامیکه تصاویر هم دارای فرکانس پایین و هم فرکانس بالا می‌باشند، این شیوه با مشکل مواجه خواهد شد. شیوه‌ای که در \cite{Burt83multiresolution} برای مواجهه با این مشکل بکار گرفته شده است عبارت است از تجزیه‌ی تصاویر به یک مجموعه از تصاویر میان‌گذر، ایجاد تصویر \fused با انتخاب $T$ مناسب در هر باند و ترکیب نتایج در سطوح مختلف برای تولید تصویر موزائیک نهایی. این شیوه اسپلاین چند وضوحی\LTRfootnote{Multi-resolution spline} نامیده شده است. برای تولید این تصاویر، یک مجموعه از فیلترهای پایین‌گذر روی تصاویر اعمال می‌شود. فرض کنید یک دنباله از تصاویر فیلتر شده $G_0,G_1,\dots,G_N$  با اعمال یک فیلتر پایین‌گذر به صورت پی‌در‌پی از روی یک تصویر بدست آمده باشند:
\begin{equation}
G_l(i,j) = \sum_{m=1}^5\sum_{n=1}^5w(m,n)G_{l-1}(2i+m,2j+n)
\end{equation}
این مجموعه تصاویر بدست آمده با  فیلتر پایین‌گذر، هرم گوسین\LTRfootnote{Gaussian pyramid} نامیده می‌شود. برای ساخت تصاویر فیلتر شده با یک فیلتر میان‌گذر، کافیست که هر سطح از هرم فوق‌الذکر از سطح پایینی خود کم شود. البته چون ابعاد دو سطح با هم متفاوت است، تصویر هر سطح قبل از تفریق به اندازه‌ی تصویر سطح بعدی گسترش داده می‌شود. تصاویر در این ساختار هرمی جدید را با $L_0,L_1,\dots,L_N$ نمایش داده و هرم لاپلاسین\LTRfootnote{Laplacian pyramid} نامیده می‌شود. 

فرض کنید هدف \fusion نیمه‌ی سمت چپ تصویر $A$ و نیمه‌ی سمت راست تصویر $B$ باشد. همچنین به فرض هر دو تصویر مربعی بوده و هر ضلع $2^N$ پیکسل داشته باشد. تصویر \fused نهایی با استفاده از الگوریتم \ref{alg1} ساخته می‌شود.

راهکار فوق برای حالتی که ترکیب یک ناحیه‌ی خاص از تصویر $A$ با تصویر $B$ مدنظر است با ایجاد یک ماسک متناظر با ناحیه‌ی موردنظر قابل تعمیم است. برای این منظور بر اساس ماسک مذکور یک ساختار هرمی دیگر ایجاد می‌شود که بیانگر آن خواهد بود که چه عناصری از $LS$ باید از $LA$ بیایند، کدام عناصر از $LB$ و کدام یک از میانگین آن دو. الگوریتم \ref{alg2} این شیوه‌ی آمیختن را نشان می‌دهد\cite{Burt83multiresolution}. ماسک $R$ در این الگوریتم به جز نقش فوق، وظیفه‌ی هموار کردن لبه‌ها با استفاده از یک فیلتر پایین‌گذر را نیز دارد.
%\footnote{کد \lr{MATLAB} مربوط به این دو الگوریتم از سایت زیر قابل برداشت است:\lr{http://cvlab.epfl.ch/$\sim$tola/open\_source.html} }.

%\floatname{algorithm}{\rl{الگوریتم}}
\begin{algorithm}[t]
\caption{الگوریتم \fusion ناحیه‌ای خاص از تصاویر $A$ و $B$  با تکنیک \cite{Burt83multiresolution}.} \label{alg2}
\begin{algorithmic}[1]
\REQUIRE تصاویر $A$ و $B$ و ماسک $R$ .\\
\ENSURE تصویر $S$ حاصل از \fusion ناحیه‌هایی از $A$ متناظر با یک‌ها در ماسک $R$ و ناحیه‌هایی از $B$ متناظر با صفرهای $R$.
  \STATE هرمهای لاپلاسین $LA,LB$ از تصاویر $A,B$ ساخته می‌شوند.
  \STATE هرم گوسین $GR$ از ماسک $R$ ساخته می‌شود.
  \STATE هر سطح از هرم لاپلاسین $LS$ از روی  $LA$ و  $LB$ و با استفاده از عناصر $GR$ به عنوان ضریب به صورت زیر ساخته می‌شود:\\
  %\begin{align} & LS_l(i,j) =\nonumber\\ & GR_l(i,j)LA_l(i,j) + (1-GR_l(i,j))LB_l(i,j) \nonumber\end{align}
  \begin{LTR}{$LS_l(i,j) = GR_l(i,j)LA_l(i,j) + (1-GR_l(i,j))LB_l(i,j)$}\end{LTR}
  \STATE تصویر نهایی $S$ با گسترش هر سطح هرم $LS$ و جمع آن با سطح بعدی حاصل خواهد شد.   
\end{algorithmic}
\end{algorithm}

یک دسته‌ی مشهور دیگر از تکنیک‌های \fusion، روشهای مبتنی بر تبدیل موجک می‌باشند \citep{Piella03thesis,Hill02image,Nikolov01wavelets}.
\fusion با تبدیل موجک را می‌توان با $\omega$، تبدیل موجکِ دو تصویر و قانونِ \fusion $\phi$ بیان نمود.
تصویر \fused‌ی $I(\mathbf{x})$، با استفاده از تبدیل موجک $\omega$، معکوس آن $\omega^{-1}$ و قانون $\phi$  به صورت زیر حاصل می‌شود:
\begin{equation}\label{eq:Seamless_DWT_Fusion}
I(\mathbf{x})=\omega^{-1}\Big( \phi \big(
\omega(I_1(\mathbf{x})),\omega(I_2(\mathbf{x}))\big)\Big) \end{equation}
شکل \ref{fig:Seamless_DWT_Fusion} نمایش شماتیک این روش را نشان می‌دهد. از آنجا که ضرائب موجک با قدرمطلق بزرگ، حاوی اطلاعات نمایان و مهم تصویر همچون لبه‌ها و خطوط هستند، یک قانون \fusion خوب می‌تواند انتخاب بیشینه‌ی ضرائب متناظر دو تصویر باشد. 

%------------------------- DWT_Fusion
\begin{figure}[t]
\centering 
\includegraphics[width=.9\textwidth]{Images_SeamlessBlending/DWT_Fusion.pdf}
\caption[نمایش شماتیک \fusion با تبدیل موجک]{نمایش شماتیک \fusion با تبدیل موجک \citep{Nikolov01wavelets}.}\label{fig:Seamless_DWT_Fusion}
\end{figure}

%از جمله کاربردهای \fusion می‌توان به سیستم‌های مراقبت بینائی، سنجش از دور، تصاویر عریض و مسئله‌ی \SR اشاره نمود.

در ادامه با استفاده از ترکیب دو روش همرنگ‌سازی چند بانده\LTRfootnote{Multi-band Blending}(هرم لاپلاسین) و تبدیل موجک یک شیوهٔ ترکیب بدون درز ارائه شده است. در بخش \ref{Sec:Seamless_TheProposedMethod} شیوه‌ی پیشنهادی، در بخش \ref{Sec:Seamless_ExperimentalResults} نتایج پیاده‌سازی‌ها و در انتها جمع‌بندی آورده شده است.
%در بخش 2 شیوه‌ی پیشنهادی، در بخش 3 نتایج پیاده‌سازی‌ها و در انتها جمع‌بندی آورده شده است.
 
 \input{Seamless_Blending}
 
 \def\algorithmicrequire{\if@RTL\textbf{ورودی:}\else\textbf{Input:}\fi}
\def\algorithmicensure{\if@RTL\textbf{خروجی:}\else\textbf{Output:}\fi}
 % برای توضیحات خوب در مورد همرنگ‌سازی چند بانده به صفحه۱۵ از فایل نیک‌انجام مراجعه شود.