فایل اولیه‌ی پروژه را می‌توانید از این لینک دانلود کنید.

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

البته این کار به سادگی که به نظر می‌رسد نیست! وظیفه شما این است که نام هر شهر را به شکل watermark روی تصویر مربوط به یکی از مکان‌های آن شهر قرار دهید.

در ادامه، ساختار فایل‌ها و جزئیات پیاده‌سازی این بخش از مسابقه توضیح داده خواهد شد.


واترماک

واترمارکینگ (Watermarking) یک تکنیک برای جاسازی اطلاعات دیجیتال (مانند لوگو، متن یا شناسه) در یک تصویر است، به گونه‌ای که این اطلاعات به صورت آشکار یا پنهان بخشی از تصویر شوند.

در این فرآیند معمولاً دو تصویر نقش اصلی دارند:

  • تصویر پیام (Message): محتوای دیجیتالی که باید در تصویر جاسازی شود، مانند یک لوگو یا متن.
  • تصویر کاور (Cover): تصویر اصلی که قرار است پیام در آن مخفی یا درج شود.

در مثال زیر، سه تصویر اصلی در فرآیند واترمارکینگ معرفی می‌شوند: تصویر پیام، تصویر کاور و تصویر واترمارک‌شده که حاصل ترکیب پیام با کاور است.


پیکربندی فایل‌ها

در این بخش از مسابقه، سه دسته فایل در اختیار شما قرار دارد. این فایل‌ها در پوشه Data قرار دارند که جز فایل‌های اولیه این سوال می‌باشد.

  • پوشه Cover: سه تصویر اصلی که در پوشه Cover قرار گرفته‌اند.

  • پوشه Message: سه تصویر حاوی محتوای متنی یا گرافیکی که باید روی کاورها درج شوند. این تصاویر در پوشه Message موجود هستند.

  • پوشه Watermark: نتیجه ترکیب هر تصویر پیام با تصویر کاور متناظر آن، که در پوشه Watermark قرار دارد.

توجه داشته باشید که اندازه هر سه تصویر کاور، پیام و واترمارک باید یکسان باشد. در ساختار فایل‌های ارائه شده نیز این موضوع رعایت شده است؛ یعنی هر سه تصویر پیام، کاور و واترمارک متناظر، دقیقاً دارای ابعاد برابر هستند. از تصاویر موجود در پوشه watermark استفاده کنید تا بتوانید راه‌حل خود را ارزیابی کنید. دقت کنید هر چه نتیجه واترمارک شما به تصاویر این پوشه شباهت بیشتری داشته باشد، کیفیت راه‌حل شما بالاتر خواهد بود.


معیار ارزیابی

برای ارزیابی مدل شما از معیار SSIM Score استفاده می‌شود. برای نمره‌گیری در این سوال مدل شما باید دارای SSIM حداقل ۰.۸ باشد و در این حالت نمره‌ی نهایی بر اساس فرمول زیر محاسبه می‌گردد:

\[round(SSIM, 3) \times 100\]

اگر مدل شما به حدنصاب نرسد، نمره‌ی دریافتی صفر خواهد بود.

شاخص SSIM

شاخص شباهت ساختاری (Structural Similarity Index Measure یا SSIM) یک معیار پیشرفته‌ برای مقایسه شباهت بین دو تصویر است. SSIM ساختار کلی تصویر را هم در نظر می‌گیرد و تلاش می‌کند شباهت را به گونه‌ای اندازه‌گیری کند که با درک بینایی انسان همخوان‌تر باشد.

این مقدار عددی بین \(1-0\) است که به شکل زیر تفسیر می‌شود:

  • مقدار \(1\) نشان‌دهنده تشابه کامل است.
  • مقدار نزدیک به \(0\) یا کمتر از آن نشان‌دهنده تفاوت زیاد است.

نحوه‌ی ارسال پاسخ

شما باید پاسخ خود را به صورت یک تابع پایتونی ارائه دهید. ابتدا یک فایل پایتونی با نام watermark.py ایجاد کنید. سپس در این فایل، تابعی به نام apply_watermark پیاده‌سازی کنید که دو ورودی می‌گیرد: نام فایل تصویر کاور و نام فایل تصویر پیام.

نمونه اعمال و استفاده از تابع به شرح مثال زیر می‌باشد:

result_image = apply_watermark(cover_name='cover_Isfahan.jpg', message_name='message_Isfahan.jpg')

خروجی این تابع یک تصویر خاکستری خواهد بود که نتیجه اعمال واترمارک بین تصویر کاور و پیام است. در نهایت فایل watermark.py را در کوئرا آپلود کنید.

ارسال پاسخ برای این سؤال
فایلی انتخاب نشده است.