सभी रंगों के साथ एनिमेशन


11

पिछले साल, हर 24-बिट RGB रंग वाली एक छवि बनाने के लिए एक बहुत लोकप्रिय चुनौती थी ।

मेरी चुनौती एक चिकनी एनीमेशन (24 फ्रेम / एस कहना) बनाना है, जहां हर फ्रेम के प्रत्येक पिक्सेल का रंग अद्वितीय है। मैं रंगों के दोहराव की भी अनुमति दूंगा जब तक कि हर रंग समान संख्या में दिखाई देता है (0 से अधिक) , क्योंकि अन्यथा एनीमेशन को छोटा या फ्रेम छोटा होना होगा।

मैंने 2d संस्करण के विजेता समाधान के आधार पर कुछ उदाहरण प्रस्तुत किए हैं । दुर्भाग्य से, ऐसा लगता है कि आप वीडियो एम्बेड नहीं कर सकते, इसलिए लिंक करना होगा।


1
लिंक किए गए प्रश्न के उत्तर में किसी ने पहले ही एक एनीमेशन किया था । मुझे यकीन नहीं है कि यह मानदंडों को पूरा करता है, हालांकि।
mbomb007

1
थोड़ा और तकनीकी चश्मा अच्छा होगा। "बनाने" का क्या मतलब है? डिस्क पर वीडियो रेंडर करें? एक रीयलटाइम एनीमेशन प्रदर्शित करें?
mınxomaτ

आप एक gif का उपयोग कर सकते हैं ...
wizzwizz4

1
@ wizzwizz4 एक GIF 256 से अधिक रंगों को पकड़ नहीं सकता है; तो आप हर पिक्सेल के लिए अलग-अलग रंगों के साथ 16x16 की छवि बना सकते हैं - और एनीमेशन के लिए कोई जगह नहीं बची है।
टाइटस

जवाबों:


4

मेथेमेटिका

यह प्रत्येक आरजीबी रंग के साथ एक सीधा कार्यान्वयन है जिसमें 256 में 256 यूनिट ग्रिड द्वारा एक चौराहे पर कब्जा कर लिया गया है।

झटका वीडियो का एक गुण है, डेटा में कोई त्रुटि नहीं है, जो सटीक होना चाहिए।

लाल मान नीचे की ओर बढ़ता है, हरा मान दाईं ओर बढ़ता है, और नीला मान फ़्रेम से बढ़ता है।

शायद मैं बाद में चीजों को उछलूंगा।

f@b_ := Image@Table[{r, g, b}/255, {r, 0, 255}, {g, 0, 255}]
Export["c.mov", Table[f@b, {b, 0, 255}]]

क्विक क्लिप


यह हैरान करने वाला है। यह मेरे लिए काम करता है और इसे एक्सेस करने के लिए किसी की भी अनुमति निर्धारित है। क्या आप vimeo.com पर अन्य वीडियो चलाने में सक्षम हैं?
डेविड

यह अब काम करता है, किसी कारण से।
घातक

सुन के अच्छा लगा।
डेविड

0

PHP (+ HTML) + जावास्क्रिप्ट

भाग 1
0 से 255 तक अलग-अलग लाल मूल्यों के साथ 256 चित्र उत्पन्न करता है;
हरा मूल्य = पंक्ति सूचकांक, नीला मूल्य = स्तंभ सूचकांक

for($r=$h=256;$r--;){$i=imagecreatetruecolor($g=$h,$h);for(;$g--;)for($b=$h;$b--;)imagesetpixel($i,$g,$b,imagecolorallocate($i,$r,$g,$b));imagepng($i,"$r.png");imagedestroy($i);}

नोट : आपके PHP कार्यान्वयन के आधार पर, यह एक आंतरिक सर्वर त्रुटि को फेंक सकता है।
यदि ऐसा होता है, तो सबसे कम संख्या में छवियां लें जो पहले से ही बनाई गई हैं, <number>,बाद में डालें $r=और फिर से चलाएं।

भाग 2
लूप इन छवियों के माध्यम से 0 से 255 तक और पीछे (0 और 255 प्रत्येक 2 फ्रेम लेते हुए)

<img><script>r=d=0;setInterval(()=>{document.images[0].src=r+".png",(d?!r--:(++r)>=256)?r-=(d=!d)?1:-1:r},40);</script>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.