چگونه از Pillow برای ایجاد افکت آتش روی یک تصویر استفاده کنیم؟
Dec 29, 2025
پیام بگذارید
سلام! من تامین کننده محصولات Pillow هستم و امروز بسیار هیجان زده هستم که با شما نحوه استفاده از کتابخانه Pillow در پایتون برای ایجاد افکت آتش بر روی یک تصویر را با شما به اشتراک بگذارم. چه به هنر دیجیتال، طراحی گرافیک، یا صرفاً به دنبال سرگرمی با دستکاری تصویر باشید، این راهنما شما را در این فرآیند قدم به قدم راهنمایی می کند.
ابتدا اجازه دهید کمی در مورد چیستی کتابخانه Pillow صحبت کنیم. Pillow یک کتابخانه تصویربرداری قدرتمند پایتون (PIL) است که به شما امکان می دهد فرمت های مختلف فایل های تصویری را باز کنید، دستکاری کنید و ذخیره کنید. این مانند یک چاقوی ارتش سوئیس برای پردازش تصویر در پایتون است. شما می توانید انواع کارها را با آن انجام دهید، از تغییر اندازه و برش تصاویر گرفته تا اعمال فیلترها و افکت ها.
قبل از اینکه به ایجاد افکت آتش بپردازیم، باید Pillow را نصب کنید. اگر قبلا این کار را نکرده اید، می توانید آن را با استفاده از pip نصب کنید. فقط ترمینال خود را باز کنید و دستور زیر را اجرا کنید:
بالش نصب پیپ
هنگامی که Pillow را نصب کردید، آماده شروع بازی با دستکاری تصویر هستید.
مرحله 1: کتابخانه های لازم را وارد کنید
اولین کاری که باید در اسکریپت پایتون انجام دهیم این است که کتابخانه Pillow را وارد کنیم. در اینجا نحوه انجام این کار آمده است:
از PIL import Image، ImageDraw، ImageFilter واردات تصادفی
ما همچنین در حال واردات هستیمتصادفیکتابخانه زیرا ما از آن برای اضافه کردن مقداری تصادفی به جلوه آتش خود استفاده خواهیم کرد.
مرحله 2: تصویر پایه را باز کنید
در مرحله بعد، باید تصویری را که می خواهیم افکت آتش را روی آن اعمال کنیم، باز کنیم. شما می توانید از هر تصویری که دوست دارید استفاده کنید، اما برای این مثال، فرض کنید تصویری به نام داریدbase_image.jpgدر همان دایرکتوری اسکریپت پایتون شما.


base_image = Image.open('base_image.jpg')
مرحله 3: یک تصویر جدید برای افکت آتش ایجاد کنید
ما یک تصویر جدید ایجاد خواهیم کرد که به عنوان پایه ای برای اثر آتش ما عمل می کند. این تصویر به اندازه تصویر پایه ما خواهد بود.
fire_image = Image.new('RGBA', base_image.size) draw = ImageDraw.Draw(fire_image)
مرحله 4: پیکسل های آتش را تولید کنید
اکنون بخش سرگرم کننده می آید - تولید پیکسل های آتش. ما تابعی ایجاد خواهیم کرد که یک رنگ تصادفی برای هر پیکسل در افکت آتش ایجاد می کند. رنگ ها از قرمز تا زرد متغیر هستند که رنگ های معمولی مرتبط با آتش هستند.
def get_fire_color(): r = random.randint(150, 255) g = random.randint(50, 200) b = random.randint(0, 50) a = random.randint(100, 255) return (r, g, b, a)
سپس می توانیم از این تابع برای ترسیم پیکسل های آتش روی خود استفاده کنیمآتش_تصویر.
عرض، ارتفاع = base_image.size برای x در محدوده(عرض): برای y در محدوده(ارتفاع): اگر تصادفی.random() < 0.2: color = get_fire_color() draw.point((x، y)، fill=color)
مرحله 5: یک افکت تاری اعمال کنید
برای اینکه جلوه آتش واقعیتر به نظر برسد، یک افکت تاری را روی خود اعمال میکنیمآتش_تصویر.
fire_image = fire_image.filter(ImageFilter.GaussianBlur(radius=3))
مرحله 6: تصویر پایه و تصویر آتش را ترکیب کنید
در نهایت، تصویر پایه و تصویر آتش را ترکیب می کنیم تا نتیجه نهایی را ایجاد کنیم.
final_image = Image.alpha_composite(base_image.convert('RGBA')، fire_image)
مرحله 7: تصویر نهایی را ذخیره کنید
هنگامی که تصویر نهایی خود را دریافت کردیم، می توانیم آن را در یک فایل ذخیره کنیم.
final_image.save('fire_effect_image.png')
و بس! شما به تازگی با استفاده از کتابخانه Pillow یک افکت آتش روی یک تصویر ایجاد کرده اید.
اکنون، اگر در بازار بالشهای باکیفیت هستید، ما شما را تحت پوشش قرار دادهایم. ما طیف گسترده ای از بالش ها را متناسب با نیازها و ترجیحات مختلف ارائه می دهیم. ما را بررسی کنیدبالش پر غاز سفید هتل با کیفیت بالا، که راحتی و پشتیبانی لوکس را فراهم می کند. اگر یک گزینه مصنوعی را ترجیح می دهید، مابالش تخت خواب پر از فیبر توخالی هتلی 100% پلی استر نرم ممتازیک انتخاب عالی است و برای کسانی که به دنبال گزینه ای بادوام و مقرون به صرفه هستند، مابالش 100% پلی استر با کیفیت بالا هتلانتخاب برتر است
اگر علاقه مند به خرید بالش های ما به صورت عمده هستید، مایلیم با شما گپ بزنیم. فقط با ما تماس بگیرید، و ما می توانیم در مورد نیازهای خاص شما صحبت کنیم و کارهای زیادی برای شما انجام دهیم.
مراجع
- اسناد بالش: https://pillow.readthedocs.io/en/stable/
- اسناد رسمی پایتون: https://docs.python.org/3/
