Skytte för en hemsida funktion: Timelapse och Multi-exponering fotografi DIY Hur (göra eller skriva egen kod!) (6 / 6 steg)
Steg 6: Göra en ".gif" fil nu men se till att inte överstiga 10 000 000 byte!
En sak jag verkligen älskar med webbplatsen Instructables.com är dess utmärkta hantering av GIF-bilder.
I självporträtt ovan tog jag en bild med blixt och sedan 35 lång exponering bilder med en glödlampa, med sladden definiera en båge framför övervakningskamera. Jag använder en rör-skrivar-TV-mottagare och förstärkare system jag skapade mer än 30 år sedan, i vilken fyra 6BQ5 rör i en push-pull konfiguration (två parallellt för push) och två parallellt för dra till driva en 220 volts glödlampa direkt med en förstärkt NTSC TV-signal. Detta resulterar i video feedback som beskrivs i en av mina tidigare Instructables.
En trevlig funktion av CEMENT är att du kan hålla CEMENTing i nya lightvectors. I ovanstående sekvens, den första bilden är en med blixt, sedan nästa har den första glödlampan spåra CEMENTed i, och sedan nästa lampa tracen är cementerade i det totalt, och så vidare.
Här är enkla två-line shell script kallas "cementij.sh" skrev jag att göra ovan (uppringande cementij.sh från en annan skriften, en gång för varje bild):
#! / bin/sh
cementi temp.plm img$1.jpg 1 1 1
plm2pnm temp.plm -o steve$1.jpg
Slutligen, i slutet, jag cementerade i while sak på dubbel vikt, och fyrbäddsrum, etc., att bygga den upp för ett sista crescendo av "(sur)veillance flux". Slutligen, om den slutliga bilden är den mest intressanta, byta namn på det så det kommer upp först i globbing för filnamn i generera .gif-bild. På detta sätt när GIF-fil är icke-animerade (t.ex. vid inläsningen från början, eller när iconified) att den första bildrutan (och ibland den enda ramen synlig) vara den mest intressanta av ramar.
Se till att ingen av dina .gif bilder överstiger 10 000 000 byte eller det bara fungerar inte när du överför till Instructables, och det finns inget varningsmeddelande (det bara enkla inte laddas).
Jag gillar enkla kommandoraden gränssnitt i sann DIY-anda, och mitt kommando väljer att generera .gif-filer är "Konvertera".
Själva bilden från min tidigare hemsida funktionen Instructable genererades med följande skript:
Detta genererar olika storlekar på .gif-filer jag använt internt, med en av dem som genereras på strax under 10 000 000 byte.
För att få den exakta storleken, skapa jag helt enkelt något nära storleken jag tycker det borde vara, och sedan rätta till det. Till exempel bilden överst på denna sida med ursprungliga upplösning på 1024 linjer (steve1536x1024, nära HDTV upplösning) var för stor (22894455 byte) med en faktor på 22894455/10.000.000, dvs 2.289... gånger för stor.
Ta kvadratroten av det förhållanden, och du får den storlek minskning du behöver trycka målstorleken: cut storlek av ca 1.5131 och du får 1015 x 677.
Udda storlekar som som brukar inte hantera bra på datorer. Så plocka nästa storlek ner att resultaten i bilddimensioner som är någorlunda komposit nummer, t.ex. Låt oss ta dessa dimensioner, dividera med 32 (en typisk blockstorlek i hantering och bildbehandling), avrunda nedåt och sedan multiplicera igen med 32.
Detta ger oss 960 x 640, som slutar att ge en .gif-fil som är 9,100,702 byte, dvs strax under 10 000 000 byte.
Ha kul och göra några stora .gif bilder på DIY sätt (t.ex. med kod du gör eller skriver själv)!