درونیابی دومکعبی

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

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

در کاربردهای پردازش تصویر در صورتی که نیاز به سرعت نباشد به طور معمول از این درونیابی استفاده خواهد. این درونیابی به جای ۴ نقطه درونیابی دوخطی از ۱۶ نقطه همجوار برای انجام درونیابی استفاده می‌کند.

درونیابی دومکعبی[ویرایش]

فرض کنید مقادیر تابع f و مشتقات f_x، f_y و f_{xy} در چهار گوشه (0,0)، (1,0)، (0,1) و (1,1) مربع واحد مشخص باشد. در این صورت سطح درونیابی شده را می‌توان نوشت

p(x,y) = \sum_{i=0}^3 \sum_{j=0}^3 a_{ij} x^i y^j.

درونیابی متشکل از مشخص کردن مقادیر ضرایب ناشناخته a_{ij} است. تطبیق p(x,y) با مقادیر تابع معادلات زیر را بوجود خواهد آورد:

  1. f(0,0)      = p(0,0)   = a_{00}
  2. f(1,0)      = p(1,0)   = a_{00} + a_{10} + a_{20} + a_{30}
  3. f(0,1)      = p(0,1)   = a_{00} + a_{01} + a_{02} + a_{03}
  4. f(1,1)      = p(1,1)   = \textstyle \sum_{i=0}^3 \sum_{j=0}^3 a_{ij}

به همین شکل مشتق‌ها در سمت x و سمت y بدست می‌آیند:

  1. f_x(0,0)    = p_x(0,0) = a_{10}
  2. f_x(1,0)    = p_x(1,0) =  a_{10} + 2a_{20} + 3a_{30}
  3. f_x(0,1)    = p_x(0,1) = a_{10} + a_{11} + a_{12} + a_{13}
  4. f_x(1,1)    = p_x(1,1) = \textstyle \sum_{i=1}^3 \sum_{j=0}^3 a_{ij} i
  5. f_y(0,0)    = p_y(0,0) = a_{01}
  6. f_y(1,0)    = p_y(1,0) = a_{01} + a_{11} + a_{21} + a_{31}
  7. f_y(0,1)    = p_y(0,1) = a_{01} + 2a_{02} + 3a_{03}
  8. f_y(1,1)    = p_y(1,1) = \textstyle \sum_{i=0}^3 \sum_{j=1}^3 a_{ij} j

و چهار معادله مشتق ترکیبی xy:

  1. f_{xy}(0,0) = p_{xy}(0,0) = a_{11}
  2. f_{xy}(1,0) = p_{xy}(1,0) = a_{11} + 2a_{21} + 3a_{31}
  3. f_{xy}(0,1) = p_{xy}(0,1) = a_{11} + 2a_{12} + 3a_{13}
  4. f_{xy}(1,1) = p_{xy}(1,1) = \textstyle \sum_{i=1}^3 \sum_{j=1}^3 a_{ij} i j

که در آن چهار مقدار یکسان زیر استفاده می‌شود:

p_x(x,y) = \textstyle \sum_{i=1}^3 \sum_{j=0}^3 a_{ij} i x^{i-1} y^j
p_y(x,y) = \textstyle \sum_{i=0}^3 \sum_{j=1}^3 a_{ij} x^i j y^{j-1}
p_{xy}(x,y) = \textstyle \sum_{i=1}^3 \sum_{j=1}^3 a_{ij} i x^{i-1} j y^{j-1}.

این روند سطحی برای p(x,y) در مربع واحد پیوسته [0,1] \times [0,1] ایجاد می‌کند. [۱]

منابع[ویرایش]

  1. مشارکت‌کنندگان ویکی‌پدیا، «Bicubic interpolation»، ویکی‌پدیای انگلیسی، دانشنامهٔ آزاد (بازیابی در ۲۷ نوامبر ۲۰۱۲).