ترکیب تصاویر در پایتون (image blending)

در این قسمت تیم کدگیت را با آموزش ترکیب تصاویر در پایتون همراهی کنید. بسیاری از تصاویر امروز در روزنامه‌ها، وبسایت‌ها و … با کمک ترکیب یک یا چندین عکس بدست می‌آیند. در این جلسه با کمک کتابخانه opencv دو تصویر را ترکیب خواهیم کرد. پیشنهاد می‌کنیم پیش از مطالعه این جلسه، آموزش‌های زیر را بررسی کنید:

فراخوانی کتابخانه‌ها

OpenCV یا همان Open Computer Vision مجموعه ای از کتابخانه‌های برنامه‌نویسی پردازش تصویر و یادگیری ماشین است. این کتابخانه با داشتن توابع مختلف در زمینه پردازش تصویر، فرآیندهای کار بر روی تصاویر را بسیار آسان نموده است.

برای پیاده سازی کد ترکیب تصاویر در پایتون از کتابخانه opencv استفاده خواهیم کرد. کد فراخوانی این کتابخانه به صورت زیر است:

ترکیب تصاویر در پایتون

برای ترکیب تصاویر در پایتون از تابع  addWeighted در پایتون استفاده می‌کنیم. فرمولی که این تابع برای ترکیب دو عکس استفاده می‌کند به صورت زیر است:

dst=α⋅image1+β⋅image2+γ

α و β بین صفر و یک است و نسبت تاثیر پیکسل هر عکس را نشان می‌دهد. دقت داشته باشید برای ترکیب تصاویر ما نیاز داریم تصاویر با سایز یکسان داشته باشیم. برای درک بهتر این موضوع چند مثال را با هم پیاده سازی می‌کنیم. دو لوگو ویندوز و لینوکس را می‌خواهیم با یکدیگر ترکیب کنیم:

ترکیب تصاویر در پایتون
ترکیب تصاویر در پایتون

 برای خواندن تصاویر از کد زیر استفاده می‌کنیم:

بیشتر بخوانید:  تبدیل Affine در جاوا (Affine Transformation in Java)

با استفاده از کد زیر دو تصویر را هم سایز می‌کنیم:

حال با کمک addWeighted دو تصویر را ترکیب می‌کنیم:

ورودی‌های تابع Addweighted به صورت زیر است:

  1. تصویر اول
  2. مقدار α (با توجه به فرمول بالا)
  3. تصویر دوم
  4. مقدار β
  5. مقدار γ

خروجی کد بالا به صورت زیر است:

ترکیب تصاویر در پایتون

در تصویر زیر مقدار  α را برابر با 0.8 و مقدار β را را برابر با 0.2 قرار دادیم(لوگو لینوکس کمرنگ تر شده است).

ترکیب تصاویر در پایتون

در پایان اگر می‌خواهید تصویر خود را ذخیره کنید از کد زیر استفاده کنید:

اگر سوالی در خصوص این جلسه دارید در قسمت کامنت سوال خود را مطرح کنید تا پاسخگوی شما باشیم.

    پسورد: www.codegate.ir

    دیدگاهتان را بنویسید

    نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *