در این قسمت تیم کدگیت را با آموزش تبدیل قرمز رنگ در پایتون (پردازش تصویر) همراهی کنید. در ادامه موضوع بهبود تصاویر در پایتون، این آموزش به معرفی تبدیل قرمز رنگ خواهیم پرداخت. ابتدای آموزش تبدیل قرمز رنگ در پایتون را معرفی کرده سپس آن را با ذکر مثال پیاده سازی خواهیم کرد. پیش نیاز این آموزش شامل موارد زیر است:
- خواندن تصاویر در پایتون
- تبدیل توانی در پایتون
- تبدیل لگاریتمی در پایتون
تبدیل قرمز رنگ
تبدیل قرمز رنگ همانطور که از نام آن پیداست یک تصویر رنگی را به تصویری قرمز تبدیل میکند. ایده و الگوریتم این تبدیل به صورت زیر میباشد:
- تمامی پیکسل تصویر رنگی را دریافت کرده
- پیکسلهای ورودی را به صورت زیر تنظیم میکنیم.
- پیکسل رنگ قرمز را تغییر نمیدهیم.
- پیکسل رنگ آبی را عدد صفر قرار میدهیم.
- پیکسل رنگ سبز را عدد صفر قرار میدهیم.
- پیکسلهای تصویر ورودی را با روش بالا تغییر میدهیم.
- مراحل 2 و 3 را برای تمامی پیکسلها انجام میدهیم.
بعد از انجام مراحل بالا تصویر ایجاد شده قرمز رنگ میشود. تصویر زیر این تبدیل را نشان میدهد:

پیاده سازی تبدیل قرمز رنگ در پایتون
برای پیاده سازی تبدیل قرمز رنگ باید یک عکس را خوانده سپس پیکسلهای آن را طبق روش بالا تغییر دهیم. پیاده سازی این تبدیل به صورت زیر است:
from PIL import Image
def convertToRed(sourceAddress,destAddress):
source = Image.open(sourceAddress)
result = Image.new('RGB', source.size)
width, height = source.size
pixels = result.load()
for i in range(00, width, 1):
for j in range(00, height, 1):
p = source.getpixel((i, j))
pixels[i, j] = (p[00], 00, 00,255)
result.save(destAddress, "PNG")
if __name__ == '__main__':
convertToRed('baboon.png', 'Redbaboon.png')
print('convert to Red image finished...')
در کد بالا یک تصویر را خوانده سپس در متغیر p مقادیر RGB پیکسل را ذخیره کردهایم. خانه اول این متغیر مقدار R و خانه دوم مقدار G و خانه سوم مقدار B میباشد. متغیر دیگری به نام pixels برای ذخیره پیکسلهای جدید ساخته و مقادیر B و G آن را صفر و مقدار R را نگه میداریم که در کد p[0] قرار داده شده است همچنین مقدار alpha را 255 قرار دادیم. در پایان تصویر جدید را ذخیره میکنیم. خروجی کد بالا به صورت زیر است:
