এমন একটি প্রোগ্রাম লিখুন যা একটি স্ট্যান্ডার্ড ট্রুইকারলর ইমেজ এবং একটি একক 24-বিট আরজিবি রঙ (0 থেকে 255 পর্যন্ত তিনটি সংখ্যা) নেবে । ইনপুট চিত্রটি পরিবর্তন করুন (বা একই মাত্রা সহ একটি নতুন চিত্র আউটপুট করুন) যেমন এর গড় রঙ হ'ল একক রঙ যা ইনপুট ছিল। আপনি এই অর্জন করতে চান কোন ভাবেই ইনপুট ছবিতে পিক্সেল সংশোধন করতে পারে, কিন্তু লক্ষ্য সম্ভব হিসাবে চাক্ষুষরূপে কেউ খেয়াল করে যেমন রঙ পরিবর্তন করা ।
গড় রঙ একটি আরজিবি ইমেজ সত্যিই তিনটি একটি সেট গাণিতিক উপায়ে , প্রতিটি রঙ চ্যানেলের একটি। গড় লাল মান হল চিত্রের সমস্ত পিক্সেল জুড়ে লাল মানগুলির সমষ্টি, মোট পিক্সেলের সংখ্যার (চিত্রের ক্ষেত্র) দ্বারা বিভক্ত, নিকটতম পূর্ণসংখ্যাকে গোল করে। সবুজ এবং নীল গড়গুলি একইভাবে গণনা করা হয়।
এই পাইথন 2 ( পিআইএল সহ ) স্ক্রিপ্ট বেশিরভাগ চিত্রের ফাইল ফর্ম্যাটের গড় রঙ গণনা করতে পারে:
from PIL import Image
print 'Enter image file'
im = Image.open(raw_input()).convert('RGB')
pixels = im.load()
avg = [0, 0, 0]
for x in range(im.size[0]):
for y in range(im.size[1]):
for i in range(3):
avg[i] += pixels[x, y][i]
print 'The average color is', tuple(c // (im.size[0] * im.size[1]) for c in avg)
(অনুরূপ গড় রঙ প্রোগ্রাম আছে এখানে , কিন্তু তারা অগত্যা সঠিক একই গণনা করা যাক না।)
আপনার প্রোগ্রামের মূল প্রয়োজনীয়তাটি হ'ল যে কোনও ইনপুট চিত্রের জন্য, তার সম্পর্কিত আউটপুটটির গড় রঙ অবশ্যই ঠিক সেই রঙের সাথে অবশ্যই মিলবে যা ইনপুট ছিল - পাইথন স্নিপেট বা কিছু সমতুল্য কোড দ্বারা বিচার করা। আউটপুট চিত্রের অবশ্যই ইনপুট চিত্রের মতো একই মাত্রা থাকতে হবে।
সুতরাং আপনি প্রযুক্তিগতভাবে এমন একটি প্রোগ্রাম জমা দিতে পারেন যা কেবলমাত্র পুরো ইনপুটটিকে নির্দিষ্ট গড় রঙের রঙ দেয় (কারণ গড়টি সর্বদা সেই রঙের হবে) তবে এটি একটি জনপ্রিয়তার প্রতিযোগিতা - সর্বাধিক সংখ্যক ভোটের সাথে জমা দেওয়া জিতবে এবং এ জাতীয় তুচ্ছ জমা দেওয়ার ফলে আপনি অনেকগুলি আপত্তি পাবেন না। মানুষের দৃষ্টিভঙ্গিতে কৌতুকের সুযোগ নেওয়া বা চিত্রটি সঙ্কুচিত করা এবং চারপাশে রঙিন সীমানা আঁকার মতো উপন্যাসের ধারণাগুলি আপনাকে (আশাবাদী) ভোট দেবে।
নোট করুন যে গড় রঙ এবং চিত্রগুলির নির্দিষ্ট সংমিশ্রণগুলি অত্যন্ত লক্ষণীয় রঙ পরিবর্তন প্রয়োজন। উদাহরণস্বরূপ, মিলার গড় রঙ যদি কালো হয় (0, 0, 0), কোনও ইনপুট চিত্র পুরোপুরি কালো করা দরকার কারণ যদি কোনও পিক্সেলের শূন্য-না মান থাকে, তবে এটিও গড় অ-শূন্য করে তোলে ( রাউন্ড-অফ ত্রুটিগুলি বাদ দেওয়া)। ভোট দেওয়ার সময় এ জাতীয় সীমাবদ্ধতাগুলি মনে রাখবেন।
চিত্র পরীক্ষা করুন
কিছু চিত্র এবং এগুলির চারপাশে খেলতে তাদের ডিফল্ট গড় রঙ। পূর্ণ মাপের জন্য ক্লিক করুন।
উঃ গড় (127, 127, 127)
থেকে fejesjoco এর সব রং দিয়ে ছবি উত্তর । পাওয়া মূল উপর তার ব্লগে ।
বি গড় (62, 71, 73)
যোকোহামা । দ্বারা প্রদান করা Geobits ।
সি গড় (115, 112, 111)
টোকিও । দ্বারা প্রদান করা Geobits ।
ডি গড় (154, 151, 154)
ই গড় (105, 103, 102)
মাষ্ট শাস্তা । আমার দ্বারা সরবরাহ করা।
এফ গড় (75, 91, 110)
মন্তব্য
- আপনার প্রোগ্রামটি যে সঠিক ইনপুট এবং আউটপুট ফর্ম্যাট এবং ইমেজ ফাইলের ধরণের ব্যবহার করে সেগুলি তেমন গুরুত্বপূর্ণ নয়। আপনার প্রোগ্রামটি কীভাবে ব্যবহার করবেন তা নিশ্চিত হয়ে নিন।
- এটি সম্ভবত একটি ভাল ধারণা (তবে প্রযুক্তিগতভাবে কোনও প্রয়োজন নয়) যে কোনও চিত্রের যদি ইতিমধ্যে লক্ষ্য গড় রঙ থাকে তবে তা যেমন হয় আউটপুটও হওয়া উচিত।
- গড় রঙ ইনপুট সহ পরীক্ষার চিত্রগুলি পোস্ট করুন (১৫০, ১০০, ১০০) অথবা (75, 91, 110), যাতে ভোটাররা বিভিন্ন সমাধানগুলিতে একই ইনপুট দেখতে পান। (এর চেয়ে বেশি উদাহরণ পোস্ট করা ভাল, এমনকি উত্সাহিতও।)