परिचय
तेज किनारों हैं, स्पष्ट रूप से, सिर्फ सादा खतरनाक तो, इनपुट के रूप में एक PNG दिया, नीचे वर्णित विधि का उपयोग करके छवि को धुंधला करें और उन शापित तीखे किनारों को कुंद करें।
तरीका
प्रत्येक पिक्सेल का RGB मान प्राप्त करने के लिए, निम्नलिखित तीन समीकरणों का उपयोग करें:
जहाँ समीपवर्ती पिक्सेल के प्रत्येक के लाल मानों का योग है। का मान आसन्न पिक्सल (जैसे, एक कोने पिक्सेल एक होगा की संख्या है , 3 का मान, जबकि छवि के केंद्र के चारों ओर एक पिक्सेल एक होगा 8 का मूल्य)।
एक आसन्न पिक्सेल एक पिक्सेल है जो सभी दिशाओं (मूल, दाएँ, ऊपर, नीचे और सभी विकर्णों पर) में मूल पिक्सेल से 1 पिक्सेल दूर है।
उदाहरण के लिए, निम्नलिखित 3 x 1 छवि में:
मध्य पिक्सेल का धुंधला RGB मान होगा:
जहां किसी भी दशमलव आउटपुट को निकटतम इकाई में गोल किया जाता है। आपको केवल परिणाम को मंजिल नहीं देना चाहिए।
इसलिए, मध्य पिक्सेल रंग (0, 221, 221), या होगा:
छवि में परिणाम:
आपको छवि में प्रत्येक पिक्सेल के लिए इस प्रक्रिया को दोहराना चाहिए। (ध्यान दें कि आप मूल पिक्सेल के साथ ऐसा करते हैं और संशोधित पिक्सेल नहीं। मूल रूप से, आपको मूल छवि को अधिलेखित नहीं करना चाहिए, और इसे नई, धुंधली छवि से पूरी तरह से अलग रखना चाहिए )।
यदि आप 255 से अधिक होने के लिए किसी भी मान की गणना करते हैं, तो मान लें कि इसका मान 255 है (यानी, 374 का मान 255 पर सेट किया जाएगा)।
परिणामी आउटपुट एक अलग पीएनजी छवि होना चाहिए (आप इसे जो चाहें नाम दे सकते हैं)।
उदाहरण
सुपर मारियो
मूल:
धुंधली:
बिसात
मूल:
धुंधली:
क्रिस्प्स
मूल
धुंधला
अब इतना कुरकुरा नहीं है
अमेरिकन गोथिक
मूल:
धुंधली:
बड़ी छवियों पर धब्बा देखने के लिए, धुंधली छवि पर फिर से कार्यक्रम चलाना सबसे अच्छा है:
चुनौती
किसी दिए गए PNG छवि को धुंधला करने के लिए सबसे छोटा कोड।
आप छवि प्रसंस्करण पुस्तकालयों (जैसे पीआईएल) का उपयोग कर सकते हैं लेकिन आपको अंतर्निहित धुंधला कार्यों (गणितज्ञ, मैं आपको देख रहा हूं) का उपयोग नहीं करना चाहिए।
ध्यान दें
जैसा कि @orlp नीचे कहता है:
रिकॉर्ड के लिए, (मेरी जानकारी के लिए) यह एक मानक धुंधला विधि नहीं है। यह चुनौती शैक्षिक संसाधन नहीं है।
n
हर में दिखना चाहिए।