<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>rle &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/rle/</link>
	<description>Feed of posts on WordPress.com tagged "rle"</description>
	<pubDate>Thu, 24 Dec 2009 17:27:11 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Run Length Encoding (RLE)]]></title>
<link>http://arrayofpointers.wordpress.com/2009/12/14/run-length-encoding-rle/</link>
<pubDate>Mon, 14 Dec 2009 13:45:44 +0000</pubDate>
<dc:creator>Mahmud faisal</dc:creator>
<guid>http://arrayofpointers.wordpress.com/2009/12/14/run-length-encoding-rle/</guid>
<description><![CDATA[***** this program is in CPP and coded by Md. Mushfiqur Rahman and Mahmud who did it during undergra]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>***** this program is in CPP and coded by Md. Mushfiqur Rahman and <a href="http://expressionsunbound.wordpress.com/">Mahmud</a> who did it during undergrad program in <a href="http://kuet.ac.bd/">KUET<br />
</a><br />
#include&#60;iostream.h&#62;<br />
#include&#60;fstream.h&#62;<br />
#include&#60;string.h&#62;<br />
#include &#60;stdlib.h&#62;<br />
#include &#60;stdio.h&#62;<br />
#include &#60;time.h&#62;</p>
<p>int main()<br />
{<br />
//char ins;<br />
char pd[500];<br />
int len;</p>
<p>//    printf(&#8220;Please enter the actual data :&#8221;);<br />
//    gets(ins);</p>
<p>time_t t;<br />
srand((unsigned) time(&#38;t));<br />
printf(&#8220;random numbers from 0 to 9,a-z,A-Z\n\n&#8221;);<br />
char ch;<br />
ofstream out(&#8220;raw_data.txt&#8221;);<br />
for(int i=0; i&#60;100 ; i++)<br />
{<br />
int r=rand()%123;<br />
if((48&#60;r &#38;&#38; r&#60;58) &#124;&#124;(64&#60;r &#38;&#38; r&#60;91) &#124;&#124;(96&#60;r &#38;&#38; r&#60;123))<br />
{<br />
//    printf(&#8221; %c&#8221;,r);<br />
ch=(char)r;<br />
out&#60;&#60;ch;<br />
if(ch == &#8216;o&#8217;&#124;&#124;ch==&#8217;O'&#124;&#124;ch==&#8217;0&#8242;)<br />
for(int x=0;x&#60;i;x++)<br />
out&#60;&#60;ch;<br />
}<br />
}<br />
out.close();</p>
<p>ifstream in(&#8220;raw_data.txt&#8221;);<br />
in&#62;&#62;pd;<br />
in.close();</p>
<p>printf(&#8220;The original data is :&#8221;);<br />
puts(pd);<br />
len=strlen(pd);<br />
//puts(pd);</p>
<p>int j,count[500]={0};</p>
<p>ofstream fout(&#8220;Encoded.txt&#8221;);</p>
<p>printf(&#8220;\nEncoded String is: &#8220;);<br />
for(i=0;i&#60; len;i*=1)<br />
{<br />
j = 0;<br />
count[i] = 1;<br />
do<br />
{<br />
j++;<br />
if(pd[i+j] == pd[i])<br />
count[i]++;<br />
}while(pd[i+j]==pd[i]);<br />
if(count[i]==1)<br />
{<br />
printf(&#8220;%c&#8221;,pd[i++]);<br />
fout&#60;&#60;pd[i];<br />
}<br />
else<br />
{<br />
printf(&#8220;$%d%c&#8221;,count[i],pd[i]);<br />
fout&#60;&#60;&#8217;$'&#60;&#60;count[i]&#60;&#60;pd[i];<br />
i += count[i];<br />
}<br />
}<br />
cout&#60;&#60;endl;<br />
fout.close();</p>
<p>return 0;<br />
}</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Aldri mer RLE]]></title>
<link>http://vestfoldgirl.wordpress.com/2009/11/23/aldri-mer-rle/</link>
<pubDate>Mon, 23 Nov 2009 14:48:43 +0000</pubDate>
<dc:creator>vestfoldgirl</dc:creator>
<guid>http://vestfoldgirl.wordpress.com/2009/11/23/aldri-mer-rle/</guid>
<description><![CDATA[I dag har vi hatt siste forelesning i RLE!! Det er litt deilig og litt dumt&#8230;for det er jo et g]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://vestfoldgirl.wordpress.com/files/2009/11/happy-dog.jpg"></a><a href="http://vestfoldgirl.wordpress.com/files/2009/11/happycat.jpg"><img class="aligncenter size-thumbnail wp-image-544" title="happycat" src="http://vestfoldgirl.wordpress.com/files/2009/11/happycat.jpg?w=134" alt="" width="134" height="150" /></a>I dag har vi hatt siste forelesning i RLE!! Det er litt deilig og litt dumt&#8230;for det er jo et ganske viktig fag, med mye tungt pensum&#8230;vi har gått gjennom det på få måneder. Men sånn er studiet lagt opp&#8230;..og nå er det kun eksamen igjen&#8230;&#8230; <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  Vi har eksamen om et par uker i RLE, og jeg gruer meg. Det er så mye å lese og masse viktig, men man må bare gjøre sitt beste. Vi har fått vite litt i dag om hva hun kommer til å spørre om&#8230;..og det hjelper litt. Håper bare at jeg ikke svimer av, eller får fullstendig hjerneteppe.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Nok en historie fra hinduismen]]></title>
<link>http://martehelenelundlangsholt.wordpress.com/2009/11/22/nok-en-historie-fra-hinduismen/</link>
<pubDate>Sun, 22 Nov 2009 17:02:04 +0000</pubDate>
<dc:creator>martehelenelundlangsholt</dc:creator>
<guid>http://martehelenelundlangsholt.wordpress.com/2009/11/22/nok-en-historie-fra-hinduismen/</guid>
<description><![CDATA[Leste en spennende historie i religionboka nå; en &#8220;kjærlighetshistorie&#8221; om Rama og Sita.]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Leste en spennende historie i religionboka nå; en &#8220;kjærlighetshistorie&#8221; om Rama og Sita. Rama skulle ut og kjempe mot onde krefter i skogen, og ba kona Sita om å bli hjemme, nettopp fordi han skulle kjempe og mente at dette ikke var en kvinnesport.  Men trofast som Sita var ble hun med,  for der ektemannen hennes var, ville hun også være.</p>
<p>Så dro de sammen; Rama og Sita, og broen til Rama. Ute i skogen ble Sita tatt til fange hos en ond demon, og da starter Rama og brorens kamp for å få henne tilbake. Den onde demonen &#8220;prøver seg&#8221; på Sita med ulike teknikker, men hun står på sitt og vil være trofast mot sin kjære ektemann.</p>
<p>Etter flere rømninger og bortføringer er Sita til slutt tilbake hos sin ektemann Rama. Men han vil ikke ha henne tilbake, fordi han tror hun har vært utro mot han. Hun settes på flere prøver, hvor hun skal bevise sin trofasthet. Den ene er at hun skal gå inn i ild, og ber til en gud om at dersom hun har vært tro skal hun verges mot flammene, ellers er skal det være &#8220;over og ut&#8221; med henne. Så klart verges hun fra flammene, men dette er ikke nok til å overbevise Rama.</p>
<p>Hun sendes ut til en hytte for å leve alene sammen med deres to sønner. Hun er fortsatt trofast mot sin ektemann, og plages med at han ikke tror på henne. Hun ber da moder jord om å ta henne tilbake til hennes opprinnelse, og hun blir til slutt tatt inn i jorda.</p>
<p>Hva synes du om historien? Har du hørt den før? Leste at det er blitt laget en tv-serie(hele 56 deler <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ) på grunnlag av denne historien, og tror jeg har funnet en &#8220;trailer&#8221; på den. Kikk her: : )</p>
<p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/Ht_0mS-iLcE&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/Ht_0mS-iLcE&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span> </p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Det var de &oslash;ynene]]></title>
<link>http://hagenpahytta.wordpress.com/2009/11/21/det-var-de-ynene/</link>
<pubDate>Sat, 21 Nov 2009 20:19:23 +0000</pubDate>
<dc:creator>Britt Åse</dc:creator>
<guid>http://hagenpahytta.wordpress.com/2009/11/21/det-var-de-ynene/</guid>
<description><![CDATA[Du husker kanskje at jeg hadde en øyeoperasjon i begynnelsen av september? Nærmere bestemt en operas]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img style="display:block;float:none;margin-left:auto;margin-right:auto;" src="http://www.sweeneyeye.com/images/rezoom2.jpg" width="260" height="358" /></p>
<p>Du husker kanskje at jeg hadde en øyeoperasjon i begynnelsen av september? Nærmere bestemt en operasjon for å kvitte meg med alderslangsyntheten, som de siste årene har plaget meg ille. Jeg hadde jo briller, men bare til arbeids- og lesebruk, siden jeg så godt på mellomlang og lang avstand, så det var et styr hver gang jeg plutselig trengte å se noe som var på armlengdes avstand og nærmere, og brillene ikke var for hånden.&#160; Butikken, for eksempel. Det var megen småbanning og tenners gnissel over innholdsfortegnelser og desslike.&#160; Jeg tenkte og grublet over dette med operasjon veldig lenge, og tok en beslutning til slutt.&#160; </p>
<p>Noen av dere har bedt meg fortelle om hvordan det med operasjonen foregikk, og om hvordan det er nå.&#160; Here goes.</p>
<p>Først er man til forundersøkelse, hvor optikeren finner ut om man er helsemessig skikket til å gjennomgå en slik operasjon. Blodtrykk, kronisk sykdom, medikasjon osv., og om trykk og hornhinnetykkelse (eller var det netthinne?) er ok. Jeg var egnet på alle vis.</p>
<p>Så målte optikeren størrelsen på øynene mine for å finne korrekt størrelse på ny linse.</p>
<p>Operasjonsdagen møtte jeg fram på klinikken, hvor jeg fikk en valium, og så ble dryppet med diverse antibakterielt (antar jeg) og noe som fikk pupillene til å utvide seg. Dette tok en times tid. Så tok optikerdama en ny kikk på øynene mine for å utelukke at noe skulle ha oppstått siden forundersøkelsen.</p>
<p>Så var det inn på operasjonsstuen, hvor jeg ble satt i en tannlegekontoraktig stol og alt <img style="display:inline;margin-left:0;margin-right:0;" alt="graphic" align="right" src="http://www.granitepoint.biz/ecop/mfiol/4.jpg" />unntatt høyre øye ble dekket til. Så dryppet de meg med en bedøvelsesdråpe eller to og noe annet, sikkert jod, og tok på plass den greia som holder øyet oppe så man ikke kan blunke. Det var dette jeg hadde gruet mest for, men jeg kjente det ikke. De forklarte hele tida hva de gjorde og hvorfor.&#160; Så kjente jeg at kirurgen holdt på med øyet mitt. Jeg så et sterkt lys, som jeg ble bedt om å fokusere på. Det ble litt ubehagelig, ikke vondt, men de ga litt mer bedøvelse tror jeg, mest for å berolige meg. I løpet av null tid fikk jeg beskjed om at den gamle linsa var ute, så var det litt romstering, og så var den nye inne.&#160; Øyet ble skylt, den som holdt øyet oppe ble fjernet, det skarpe lyset som hadde vært der ble tatt bort, og sykepleieren kom inn i synsfeltet&#160;&#160; <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> &#160;&#160; Da pustet jeg ut og sluttet å tenke “tenkomjegblirblindtenkomjegblirblind-osv”. Det andre øyet gikk raskere og med mindre ubehag.&#160; Jeg kan max ha vært der inne i en halv time. Antakelig ikke mer enn 20 min.</p>
<p>Etterpå var det litt hviling og venting, utdeling av dråper og informasjon og sånn. Jeg så helt greit nok til å gå på do aleine og lese på øyedråpepakker osv, og kunne betrakte mine “nye” øyne i speilet. Jeg så nifs ut med de digre pupillene!   <br />Alt i alt var vi vel inne på klinikken i et par timer, inkludert ganske lang venting før jeg kom inn på operasjonsstua.</p>
<p>Så var det vel en tre ukers tid med øyedrypping flere ganger daglig for å unngå komplikasjoner.&#160; Jeg har ikke hatt noe fysisk ubehag av noe slag etter operasjonen, bortsett fra at jeg hadde avsindig lyst til å gni meg i øynene den første uka, men det kunne jeg jo ikke.</p>
<p>Nå er det vel 2 måneder siden operasjonen. Den første måneden så jeg ganske dårlig – alt var diffust og ullent med rikelig med auraer og “slagskygger” i alle retninger, og jeg var ganske nærsynt, plutselig. Jeg var utrolig trøtt! Og lei meg, for jeg trodde jo, pessimistisk som jeg kan være, at that was it, så og si.   <br />Men, så har tida gått, og de siste par ukene har jeg etterhvert skjønt at jeg leser skilt som er langt unna igjen, og kan se båtene ute i horisonten og i det hele tatt. </p>
<p>Jeg har vært til en kontroll. Optikeren var strålende fornøyd med meg, og mener jeg ser som en ørn. Hun melder at det meste av dobbelsynet vil gi seg etterhvert som hjernen sjalter det ut, og resten kan tas med laser på de skjeve hornhinnene. Så skal nærsyntheten, som de gav meg med vilje fordi det er lettere å fikse den i etterkant med laser enn å fikse en restlangsynthet. Det gjør vi når øynene har stabilisert seg ferdig.</p>
<p>Jeg trenger svake nærsyntbriller ved pc-en. Jeg <em>må</em> ikke, men blir sliten i nakken av å strekke på den, så jeg tar på et par billigbriller.</p>
<p>Dette ble veldig langt, men nå er jo rapporten avlagt, da&#160;&#160; <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> &#160;&#160; Lurer du på om du skal slutte med å være alderslangsynt?&#160; Sett i gang!</p>
<p>PS: en eneste ulempe: jeg kan ikke beholde illusjonen om mine veldig få rynker. Jeg har ikke veldig mange heller, men slett ikke så få som jeg trodde.&#160; Hehe!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Video i klasserommet, del 1 - mulighetene]]></title>
<link>http://percoach.wordpress.com/2009/11/09/video-i-klasserommet-del-1-mulighetene/</link>
<pubDate>Mon, 09 Nov 2009 20:43:48 +0000</pubDate>
<dc:creator>Per Abildgaard</dc:creator>
<guid>http://percoach.wordpress.com/2009/11/09/video-i-klasserommet-del-1-mulighetene/</guid>
<description><![CDATA[Bruk av video gir mange spennende muligheter i undervisningen. Video er i en del tilfeller den beste]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><h3><img class="alignright size-full wp-image-991" src="http://percoach.wordpress.com/files/2009/11/p3npemu9bwvkaxvtyizpzd0ynzeymzq1.jpg" alt="" width="210" height="118" />Bruk av video gir mange spennende muligheter i undervisningen. Video er i en del tilfeller den beste måten å fremstille og levendegjøre stoffet på. Utvalget av video på Internett gir læreren muligheter som var totalt ukjent for få år siden. I RLE holder vi nå på med hinduismen. Det gjør straks stoffet mer levende å vise amatøropptak av pudsja (et hinduistisk ritual) enn å se på tekst og bilder i en lærebok. Det tok ikke mange sekundene å finne opptaket på Youtube. I dette innlegget vil jeg gi konkrete eksempler på hvordan video kan brukes i undervisningen.</h3>
<p>Bruken av levende bilder da jeg gikk på skolen begrenset seg til enkelte besøk på filmrommet. Det var helt klart et høydepunkt og et aldri så lite pusterom fra den vanlige aktiviteten i klasserommet. I dag har både lærer og elever mulighet til å integrere videokutt i undervisningen på en helt ny måte. Jeg bruker video jevnlig, men som regel bare kortere kutt som inngår i en helhet sammen med andre virkemidler. Min digitale skolehverdag muliggjøres av videoprosjektør og lydanlegg i alle klasserom, tilgang til Internett i hele skolebygget og laptop med til alle timer. Det går dermed ikke tid til rigging eller til å flytte klassen til et annet rom.</p>
<p>Internett gir større makt til lærere og elever på bekostning av forlag og medieleverandører. Hvem som helst kan lage sin egen video og gjøre den tilgengelig for alle. Helt gratis. Dette er det første av fire innlegg om video i undervisningen. Neste innlegg omhandler den tekniske siden. Så skriver jeg om hvordan den digitale skolehverdagen aktualiserer behovet for superbrukere. Det siste innlegget omhandler hvordan elevene kan ta dette i bruk. <!--more-->Brukerne har selv et ansvar for å vurdere om videoen er lovlig å vise. Slett ikke alt på Youtube er klarert i forhold til rettigheter. Blant annet forsøker Youtube selv å bekjempe ulovlig opplastede musikkvideoer ved å <a href="http://www.itavisen.no/800996/youtube-fjerner-lyden" target="_blank">fjerne lydsporet</a>. Det er ikke alltid like lett å vurdere slike spørsmål for brukerne. Rettighetsspørsmål kan være kompliserte. Dagens ungdomsgenerasjon har en klar til tendens til å heie på Pirate Bay. Dette må de utfordres på. Les hva Youtube skriver om rettigheter <a href="http://www.youtube.com/t/howto_copyright" target="_blank">her</a>.</p>
<p>Jeg bruker for det meste Youtube. Det finnes andre muligheter, blant annet<a href="http://teachertube.com/" target="_blank"> Teachertube</a>. En fordel med Youtube er at det store utvalget. I tillegg er det svært enkelt å legge inn videoene (<em>embedding</em>) i læringsplattformen It’s Learning. Elevene fikser dette etter en kort gjennomgang, og vi kan bruke video som en kommunikasjonsform i klassen. NRK er også på banen med <a href="http://nrkbeta.no/2009/07/03/nrk-skole-lanseres-31-august/" target="_blank">NRK skole</a>, men utvalget der ikke veldig stort foreløpig. Jeg er slett ikke ferdig med DVD som medium. Den tekniske kvaliteten er jo som regel vesentlig bedre enn video på nettet. Mer om det siden. La oss se på fem konkrete eksempler på hvordan video fra Youtube kan brukes.</p>
<p>I engelskfaget er vi jo stadig innom forskjellige steder i den engelskspråklige delen av verden. For noen får år siden gjorde jeg bruk av video fra Lonely Planet. Disse var tilgjengelige som DVD fra den interkommunale AV-sentralen. Selv om mye av dette var bra, kommer en slik ordning ofte til kort i forhold til mulighetene Internett gir. Ikke minst er det en fordel at jeg kan finne kortere klipp som er skreddersydd undervisningen.  Med New York på timeplanen, var det bare å velge å vrake. Jeg har tatt med dette eksempelet fordi det er et amatøropptak av solid filmatisk kvalitet. Den tekniske kvaliteten er høy (HD). Ved å søke på ”New York City HD” fant jeg videoen nedenfor. Ved å se videoen på Youtube vil det framgå av kommentarene at dette er et amatøropptak.</p>
<p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/-QwRu6DKRtE&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/-QwRu6DKRtE&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span> </p>
<p>I RLE hadde vi fokus på emnet ”liv og død”. Vi var blant annet innom hvordan døden som underholdning. Som en trigger brukte jeg en video med opptak av dataspillet ”Grand Theft Auto”. Spillfantaster bruker nemlig Youtube om en kanal til å vise opptak av egne spillsekvenser. Dette opptaket inneholder skyting og dreping så det holder og er en fin inngangsport til videre arbeid med temaet. En annen mulighet er jo selvfølgelig å la noen elever gi en demonstrasjon av et dataspill for åpen scene.</p>
<p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/7pd80Nxni-U&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/7pd80Nxni-U&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p>I musikkfaget er det også mange muligheter. I høst har vi blitt kjent med de store komponistene. Jeg kommer da ikke utenom ”toccata og fuge i d-moll” av Bach. Selvfølgelig kunne vi lyttet til CD. For øvrig kjøper vi jo ikke CD lenger. Når jeg trenger ny musikk, laster jeg ned det aktuelle sporet for en tier. Det er svært tidsbesparende og også rimeligere enn å kjøpe en hel CD slik vi gjorde før. Nedenfor har jeg tatt med et eksempel på en innspilling av Bachs berømte orgelverk. Det er noe med å se en organist utfolde seg i en kirke. I det hele tatt er video (f. eks. av opera og ballett) svært velkomment når vi jobber med musikk som ligger langt unna VG-lista. Det er for øvrig mange flinke amatørmusikere som legger ut videoer.</p>
<p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/Q1wH2qZ3gnk&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/Q1wH2qZ3gnk&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p>Når vi er inne på dette med musikk, vil jeg trekke fram muligheten video gir når vi synger i klassen. Dette bruker jeg ikke bare i musikkfaget, men også for eksempel i engelsk. På netter kryr det av karaokelignende videoer som virkelig setter fart på sangen. Vi får fullt band på lydanlegget og tekst på skjermen. I fjor skapte det stor stemning med et knippe julesanger siste uken før juleferien. Søk på sangtittel og <em>lyrics</em> eller <em>karaoke</em>. Her kan du synge med på ”Let it snow”, hjemmelaget og i HD-kvalitet.</p>
<p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/QkExmIc3IKA&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/QkExmIc3IKA&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p>Det siste eksempelet jeg har med her, handler om bruk av filmtrailere. De er korte og passer i mange fag. I RLE har jeg undervist i emnet ”Jesus på film”. Vi går da nærmere inn på et utvalg filmer og ser lengre utdrag av disse på DVD. I noen tilfeller tar jeg bare med noen få hovedpunkter om filmen og viser traileren. Vi ser for eksempel på noen eksempler på Messias – symbolikk i ”The Matrix” før vi ser denne traileren.</p>
<p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/Kw3IQpnVtvo&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/Kw3IQpnVtvo&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p>Dette var fem konkrete eksempler på bruk av videokutt i mine fag engelsk, musikk og RLE. Jeg har kun vist et lite glimt av hva video kan bety i undervisningen. Jeg har kolleger som har sett mulighetene video gir i fag som naturfag og samfunnsfag. Særlig innen historiefaget er det uendelig mye å velge i. I neste innlegg om bruk av video skal vi se på den tekniske siden av emnet, blant annet hvordan vi laster ned video. Det er slett ikke komplisert.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Oppgaveskriving....]]></title>
<link>http://vestfoldgirl.wordpress.com/2009/11/09/oppgaveskriving/</link>
<pubDate>Mon, 09 Nov 2009 20:26:48 +0000</pubDate>
<dc:creator>vestfoldgirl</dc:creator>
<guid>http://vestfoldgirl.wordpress.com/2009/11/09/oppgaveskriving/</guid>
<description><![CDATA[Nå sitter jeg og forbereder meg til en oppgave vi skal skrive i faget RLE&#8230;.det skal være om en]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Nå sitter jeg og forbereder meg til en oppgave vi skal skrive i faget RLE&#8230;.det skal være om en religiøs høytid, og jeg har valgt pinse. Det var kanskje ikke det smarteste&#8230;men jeg tenkte at alle de andre tok jul og påske, så det kunne være greit og interessant å skrive om noe annet. Men pinse er visst ganske innviklet&#8230;det har ingen enkel historie, og stammer fra både nye og gamle testamente. Så det kan jo bli en utfordring å få til seks sider om den høytiden&#8230;og hvordan den kan markeres i barnehagen. Men jeg får gjøre mitt beste, jeg har fått mange bøker fra biblioteket som jeg håper det står noe i, og i morra setter vi i gang for fullt. Vi skal være ferdig innen søndag, så har ikke så god tid på oss&#8230;skal jobbe litt i grupper, men det er individuell innlevering. Håper jeg får godkjent&#8230;..!</p>
<p><img class="aligncenter size-full wp-image-445" title="student" src="http://vestfoldgirl.wordpress.com/files/2009/11/student.jpg" alt="student" width="336" height="296" /></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[First Day Inside the Delivery Room]]></title>
<link>http://edenthea.wordpress.com/2009/10/19/first-day-inside-the-delivery-room/</link>
<pubDate>Mon, 19 Oct 2009 13:48:20 +0000</pubDate>
<dc:creator>edenthea</dc:creator>
<guid>http://edenthea.wordpress.com/2009/10/19/first-day-inside-the-delivery-room/</guid>
<description><![CDATA[Last Friday at 10p.m. was my first night duty at the D.R. (delivery room). Together with my groupmat]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Last Friday at 10p.m. was my first night duty at the D.R. (delivery room). Together with my groupmates we&#8217;re able to experienced to help moms delivery their babies. It was an awesome experienced and a totally different one. The entire shift was toxic up until this morning. It was a good shift because now we have completed all our cases. In Nursing RLE (Related Learning Experience) their are certain no. of cases that we need to fulfill these include cases you experience as Actual, Assist and Cord Care. These requirements are a must before graduating.</p>
<p> </p>
<p>This is also the reason why I was busy and never had the chance to check my site. Thanks again peeps and I hope like me you enjoyed your weekend. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&#8216;Til my next blog! Goodnight.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Jeg savner havene mine. =&lt;]]></title>
<link>http://kinemaniac.wordpress.com/2009/09/07/jeg-savner-havene-mine/</link>
<pubDate>Mon, 07 Sep 2009 17:58:11 +0000</pubDate>
<dc:creator>kinemaniac</dc:creator>
<guid>http://kinemaniac.wordpress.com/2009/09/07/jeg-savner-havene-mine/</guid>
<description><![CDATA[Bloggmodusen min er slått av. Muligens pga jeg har null motivasjon eller inspirasjon og går på skole]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Bloggmodusen min er slått av. Muligens pga jeg har null motivasjon eller inspirasjon og går på skolen.</p>
<p>Men null klaging. Jeg har godteriuke med Nicholas nå, og jeg skal prøve å spise mindre godteri fremover. Trene er ikke helt min greie. Selvom jeg egentlig ikke orker å tenke på alle size-zero-menneskene. livet handler ikke om å bli perfekt. Men dette her vet dere jo fraførav hvis dere har lest bloggen min. =p</p>
<p>Men uansett. Det skader ingen.</p>
<p>I kveld er det Grey&#8217;s, også skal jeg sove. Hvis ikke jeg sovner før det. Jeg sovnet nemlig i storefri i dag. Så jeg tror det er et tegn på at kroppen min er sliten og trøtt. Jeg og nicholas er for resten sikre på at begge har kronisk utmattelse eller noe, siden vi er kjempeslappe og sover hele tiden. Men, neida. Vi er flinke. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> </p>
<p>Wish me luck. Jeg skal gjøre RLE lekser, om homofili og tvangsekteskap. HURRA! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /><br />
- Kinemaniac.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Nyoperert  - weird!]]></title>
<link>http://hagenpahytta.wordpress.com/2009/09/07/nyoperert-weird/</link>
<pubDate>Mon, 07 Sep 2009 09:21:14 +0000</pubDate>
<dc:creator>Britt Åse</dc:creator>
<guid>http://hagenpahytta.wordpress.com/2009/09/07/nyoperert-weird/</guid>
<description><![CDATA[Kirurgen sier det gikk helt flott, og det sa hun som sjekket meg etterpå også. Inntil videre har jeg]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Kirurgen sier det gikk helt flott, og det sa hun som sjekket meg etterpå også. Inntil videre har jeg imidlertid knapt lesesyn (og aner ikke hvor mange feil jeg skriver nå! haha).  I kveld og i morra ser jeg nok myyye bedre. Det blir bra.</p>
<p>Ikke  vondt, bare litt ubehagelig og ganske skummelt på første øye, andre øye gikk meget bedre. Foreberedelsene tok lengst tid.  Selve operasjonen var unnagjort på under  halvtimen eller noe.</p>
<p>Jeg kjenner i fingrene at dette må lese korrektur på når skarpsynet er på plass.</p>
<p>Lenke til beskrivelse av prosedyren:  <a href="http://www.memira.no/web/rle_2.aspx">http://www.memira.no/web/rle_2.aspx</a></p>
<p> <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_lol.gif' alt=':lol:' class='wp-smiley' /> </p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[RLE]]></title>
<link>http://linkesamlingen.wordpress.com/2009/09/04/rle/</link>
<pubDate>Fri, 04 Sep 2009 17:14:19 +0000</pubDate>
<dc:creator>vimsehodet</dc:creator>
<guid>http://linkesamlingen.wordpress.com/2009/09/04/rle/</guid>
<description><![CDATA[Ulike RLE-verk: Vi i verden: Nettressurs fra Cappelen Andre generelle nettsteder med tilknytning til]]></description>
<content:encoded><![CDATA[Ulike RLE-verk: Vi i verden: Nettressurs fra Cappelen Andre generelle nettsteder med tilknytning til]]></content:encoded>
</item>
<item>
<title><![CDATA[Back from Vacation - LET'S ROCK THE SCHOOL!]]></title>
<link>http://blarghit.wordpress.com/2009/08/25/back-from-vacation-lets-rock-the-school/</link>
<pubDate>Tue, 25 Aug 2009 16:20:20 +0000</pubDate>
<dc:creator>Syver</dc:creator>
<guid>http://blarghit.wordpress.com/2009/08/25/back-from-vacation-lets-rock-the-school/</guid>
<description><![CDATA[Nå har jeg gått på skolen i&#8230; 6 dager. Jeg går altså i 8B, med en knall fin klasse, selvom jeg ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Nå har jeg gått på skolen i&#8230; 6 dager. Jeg går altså i 8B, med en knall fin klasse, selvom jeg ikke fikk så mange fra min gamle klasse. Men jeg skal skrive litt om hvordan dagene har vært.</p>
<p><strong>Dag 1 &#8211; Tirsdag</strong><br />
Det meste glemt, bortsett fra at vi hadde SpeedDating, og litt info i Auditoriet.<br />
SpeedDatingen var grei nok. Ganske skuffende, siden alt var så tamt. Regular spørsmål, som man måtte svare morsomt på for å ha det litt gøy. </p>
<p><strong>Dag 2 &#8211; Onsdag &#8211; Fag og Kultur Dag.</strong><br />
Teambuilding konkurranse på Nordbytjernet! Weee, det var veldig veldig moro! Vi hadde 6 øvelser som vi skulle igjennom. Først var det &#8220;Edderkoppen&#8221;. Der skulle vi få alle fra klassen igjennom en haug med tau binnet fast i to trær. Dette klarte vi nesten, kun to gjenstående personer.<br />
Neste utfordring var Larven. Vi hadde fire ringer, som vi skulle få flyttet, med oss selv inni, bort til en sekk.<br />
Dette klart vi med noen minutter igjen. Etter det kom vi til et sted der vi skulle hente mest mulig vann i forskjellige ting. (Plastkopper, matboks og fiskegratengfat.) Vi fikset 63,2 liter noe som var 10 liter bedre enn det nest beste. Etter det skulle vi gå halveis rundt Nordbytjernet, og tilbake. Prøve å matche tiden så bra som mulig. Vi gikk 11 sekunder for fort tilbake.<br />
Etter det var det en irriterende oppgave. Vi skulle kaste en person (i dette tilfelle Kasim) bort over. Vi skulle holde sammen og få ført han bort ved å kaste til hverandre, og løpe rundt. Nesten som når de flyttet tunge pyramidesteiner i Egypt.<br />
Til slutt skulle vi løfte hele klassen 2 meter for så å få dem på andre siden av et tau. En om gangen. Vi sto igjen med 4 eller 5. David, Ole og Kristin hadde gått ut, og Jens fikk ikke tid til å prøve å komme over.</p>
<p>Til slutt ble vi kåret til vinnere! Det var 6 klasser. </p>
<p><strong>Dag 3 &#8211; Torsdag</strong><br />
<em>Husker ingenting. :S</em></p>
<p><strong>Dag 4 &#8211; Fredag</strong><br />
Første tysk time, ellers ganske vanlig. Bortsett fra veldig stilig Naturfagstime.</p>
<p><strong>Dag 5 &#8211; Mandag</strong><br />
Vi skulle ta Naturfagsforsøk, og det var over raskende moro. Vi skulle koke vann med Gassbrenner. Vi gjorde alt, men hypotesen min var selvfølgelig ikke riktig.<br />
Vi hadde Svømming i første time med Vibeke. Og det var deilig godt å få en dukkert før man startet å tenke.<br />
Vi hadde også musikk med 3. plassen. (Vil ikke si hvorfor vi kaller henne det) Noe som var helt greit.<br />
Ellers skjedde det ikke stort. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>Dag 6 &#8211; Tirsdag</strong><br />
Matte første time, noe som i grunnen ikke er kjedelig på min skole. Fikk litt skryt av Arne, og da ble jeg motivert. Tysken var greit, men jeg kunne det vi snakket om. Samfunnsfaget var normalt, og RLEen var faktisk litt morsom, siden jeg presenterte min teori om hvorfor mennesket er til.</p>
<p>Alt i alt: Gleder meg faktisk litt til å gå på skolen.      </p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Release : 36-image converter 4.7.1 Alpha build 140 ("Tiger Chameleon")]]></title>
<link>http://phoenxsoftware.wordpress.com/2009/08/21/release-36-image-converter-4-7-1-alpha-build-140-tiger-chameleon/</link>
<pubDate>Fri, 21 Aug 2009 17:33:10 +0000</pubDate>
<dc:creator>phoenxsoftware</dc:creator>
<guid>http://phoenxsoftware.wordpress.com/2009/08/21/release-36-image-converter-4-7-1-alpha-build-140-tiger-chameleon/</guid>
<description><![CDATA[As promised we are releasing the first development alpha of 36-image converter 4.7 &#8220;Tiger Cham]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>As promised we are releasing the first development alpha of 36-image converter 4.7 &#8220;Tiger Chameleon&#8221; to the world. It has been in development for 3 months yet and includes many interesting changes especially for people with advanced camera&#8217;s. This is also the first public version which includes the new Core Image Processing Unit.</p>
<p>36-image converter 4.7 is far from finished but the current release already shows huge improvements, but still isn&#8217;t stable yet. We could say that it&#8217;s already 20% finished. Here&#8217;s a full list of all changes in this build :</p>
<p>-Improved performance<br />
-Reduced memory usage<br />
-New conversion engine (Core Image Processing Unit v0.3.1)<br />
-Support for the RAW formats of over 300 digital camera&#8217;s (<a title="RAW support" href="http://phoenxsoftware.wordpress.com/2009/06/28/36-image-converter-4-7-to-support-35-raw-picture-filetypes/">List</a>)<br />
-Faster filters handled by CIPU<br />
-A bunch of new filters<br />
-More stable write support for TGA, TIF, TIFF, Portable Bitmaps (raw), ICO, CUR, PNG, JPEG, JPEG2000, PCX and EMF<br />
-Added write support for RLE, 256-colors (8-bits) and 16-bits BMP,  ICB, Portable Bitmaps (raw),<br />
-Tweaks to convert menu UI<br />
-New splash screen and icons<br />
-Added install welcome screen</p>
<p>There are still some bugs and therefore we can use as many feedback as possible.</p>
<p><a title="Download" href="http://36ic.phoenxsoftware.com/4.7/alpha_b140/36ICsetup.exe">36-image converter 4.7.1 build 140 Alpha Download&#62;</a></p>
<div id="attachment_386" class="wp-caption aligncenter" style="width: 310px"><a href="http://phoenxsoftware.wordpress.com/files/2009/08/36ic47screenshot.png"><img class="size-medium wp-image-386" title="36IC 4.7.1a Build 140 screenshot " src="http://phoenxsoftware.wordpress.com/files/2009/08/36ic47screenshot.png?w=300" alt="36IC 4.7.1a Build 140 screenshot " width="300" height="180" /></a><p class="wp-caption-text">36IC 4.7.1a Build 140 screenshot </p></div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Serialize and deserialize BITMAP object in MFC/Win32]]></title>
<link>http://phvu.wordpress.com/2009/07/09/serialize-and-deserialize-bitmap-object-in-mfcwin32/</link>
<pubDate>Thu, 09 Jul 2009 12:47:31 +0000</pubDate>
<dc:creator>phvu</dc:creator>
<guid>http://phvu.wordpress.com/2009/07/09/serialize-and-deserialize-bitmap-object-in-mfcwin32/</guid>
<description><![CDATA[Download the source code Lately, in one of my project, I have to save an BITMAP object into an XML d]]></description>
<content:encoded><![CDATA[Download the source code Lately, in one of my project, I have to save an BITMAP object into an XML d]]></content:encoded>
</item>
<item>
<title><![CDATA[Chikaadee Ft. Parthi &amp; Uma Nanthini - Fire In The Booth [HD]]]></title>
<link>http://krthehits.wordpress.com/2009/05/19/chikaadee-ft-parthi-uma-nanthini-fire-in-the-booth-hd/</link>
<pubDate>Tue, 19 May 2009 08:26:44 +0000</pubDate>
<dc:creator>krafterdark</dc:creator>
<guid>http://krthehits.wordpress.com/2009/05/19/chikaadee-ft-parthi-uma-nanthini-fire-in-the-booth-hd/</guid>
<description><![CDATA[Fire In The Booth Chikaadee ft. Parthi &amp; Uma Nanthini Music: DJ Nesh The Nation Records Check ou]]></description>
<content:encoded><![CDATA[Fire In The Booth Chikaadee ft. Parthi &amp; Uma Nanthini Music: DJ Nesh The Nation Records Check ou]]></content:encoded>
</item>
<item>
<title><![CDATA[T. Milan [Little Empire] - No Holdin' Back]]></title>
<link>http://krthehits.wordpress.com/2009/05/19/t-milan-little-empire-no-holdin-back/</link>
<pubDate>Tue, 19 May 2009 08:22:03 +0000</pubDate>
<dc:creator>krafterdark</dc:creator>
<guid>http://krthehits.wordpress.com/2009/05/19/t-milan-little-empire-no-holdin-back/</guid>
<description><![CDATA[Check out the artist page for more videos ! http://www.youtube.com/user/reeleyesarts]]></description>
<content:encoded><![CDATA[Check out the artist page for more videos ! http://www.youtube.com/user/reeleyesarts]]></content:encoded>
</item>
<item>
<title><![CDATA[Begining another film...]]></title>
<link>http://greghren.wordpress.com/2009/05/04/begining-another-film/</link>
<pubDate>Mon, 04 May 2009 14:04:41 +0000</pubDate>
<dc:creator>greg hren</dc:creator>
<guid>http://greghren.wordpress.com/2009/05/04/begining-another-film/</guid>
<description><![CDATA[Rabbit sets up for the interview Started on another film on our RLE Investigator Profile series last]]></description>
<content:encoded><![CDATA[Rabbit sets up for the interview Started on another film on our RLE Investigator Profile series last]]></content:encoded>
</item>
<item>
<title><![CDATA[OH Shit!]]></title>
<link>http://diginalet.wordpress.com/2009/04/29/oh-shit/</link>
<pubDate>Wed, 29 Apr 2009 11:06:34 +0000</pubDate>
<dc:creator>diginalet</dc:creator>
<guid>http://diginalet.wordpress.com/2009/04/29/oh-shit/</guid>
<description><![CDATA[Atheist: I can’t believe this shit! Agnostic: Shit might have happened; then again, maybe not. Buddh]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Atheist: I can’t believe this shit!</p>
<p>Agnostic: Shit might have happened; then again, maybe not.</p>
<p>Buddhist: Shit will happen, keep a clear mind.</p>
<p>Zen Buddhist: What is the sound of shit happening?</p>
<p>Calvinist: Shit happens because you don’t work.</p>
<p>Catholic: If shit happens, you deserve it.</p>
<p>Hindu: This shit has happened before.</p>
<p>Presbyterian: This shit was bound to happen.</p>
<p>Capitalist: That’s MY shit.</p>
<p>Communist: It’s everybody’s shit.</p>
<p>Rastafarian: Let’s smoke this shit!</p>
<p>Darwinist: This shit was once food.</p>
<p>Gardener: Shit helps plants grow.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[MIT Research Lab the Latest to Deploy RFID for File Management]]></title>
<link>http://milestechinc.wordpress.com/2009/04/16/mit-research-lab-the-latest-to-deploy-rfid-for-file-management/</link>
<pubDate>Thu, 16 Apr 2009 14:00:04 +0000</pubDate>
<dc:creator>milestechinc</dc:creator>
<guid>http://milestechinc.wordpress.com/2009/04/16/mit-research-lab-the-latest-to-deploy-rfid-for-file-management/</guid>
<description><![CDATA[As was recently the case with the Florida State Attorney&#8217;s Office, the Research Laboratory of ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>As was recently the case with the Florida State Attorney&#8217;s Office, the Research Laboratory of Electronics (RLE) at the Massachusetts Institute of Technology had no real system in place to keep track of its files. Instead, personnel files and project and funding proposal applications were stored in separate offices, with employees pulling needed files and returning them later, with no log record kept in between. Krista Van Guilder, the RLE&#8217;s manager of media and design, told the RFID Journal that files were occasionally lost and often very difficult to <a href="http://www.rfidjournal.com/article/view/4679/1">find</a>. Enter RFID.</p>
<p>The process works as follows: First, all files were moved to shelving in one central office. Then RFID tags were attached to the inside of each file folder. Staff members needing a file go to that central office, pull the file from its place, and wave the folder past the RFID reader attached to a wall-mounted touch-screen computer nearby. The reader logs the tag&#8217;s unique ID number while the computer pulls up an employee roster on the computer. The employee touches his or her name, and the file is officially checked out. To return the file, the employee follows the same process.</p>
<p>If another employee needs the file while it is still checked out, he or she can consult the custom, Web-based software developed by Barcoding, Inc., look up the file or employee name associated with it, and determine the file&#8217;s location. In situations where the person who checked out the file can no longer find it, a Motorola MC9090-G handheld RFID reader can be used to scan the room or area for the file&#8217;s unique ID number. The reader beeps when it reads the number, and while it can&#8217;t yet pinpoint the exact location, it will narrow down a search area to a particular desk or shelf area.</p>
<p>If your current file management system is not as effective as it could be, would you consider using RFID to improve it?</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Ad Hoc Compression Methods: RLE (part II)]]></title>
<link>http://hbfs.wordpress.com/2009/04/15/ad-hoc-compression-methods-rle-part-ii/</link>
<pubDate>Wed, 15 Apr 2009 23:55:35 +0000</pubDate>
<dc:creator>Steven Pigeon</dc:creator>
<guid>http://hbfs.wordpress.com/2009/04/15/ad-hoc-compression-methods-rle-part-ii/</guid>
<description><![CDATA[Yestermorning I presented an ad hoc compression method known as RLE, or run-length encoding and I go]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://hbfs.wordpress.com/2009/04/14/ad-hoc-compression-methods-rle/" target="_blank">Yestermorning</a> I presented an ad hoc compression method known as <a href="http://en.wikipedia.org/wiki/Run-length_encoding" target="_blank">RLE</a>, or <em>run-length encoding</em> and I got quite more reactions than I thought I would. Many suggested doing plenty of <em>other</em> stuff despite the fact that the post was about RLE, not about &#60;insert your favorite compression method&#62;. But something very nice happened: people got interested and many suggestions came forth.</p>
<p>I decided to implement the median-based prediction method as suggested by <a href="http://x264dev.multimedia.cx/" target="_blank"><b>Dark Shikari</b></a> <a href="http://hbfs.wordpress.com/2009/04/14/ad-hoc-compression-methods-rle/#comment-247" target="_blank">here</a>. Let us see the results!</p>
<p><!--more--></p>
<p>The median prediction, as used in the <a href="http://en.wikipedia.org/wiki/FFV1" target="_blank">FFV1</a> lossless video codec that uses only <a href="http://en.wikipedia.org/wiki/Intra-frame" target="_blank">intra-frame coding</a>, uses the following context:</p>
<p><a href="http://hbfs.wordpress.com/files/2009/04/context.png"><img src="http://hbfs.wordpress.com/files/2009/04/context.png" alt="context" title="context" width="122" height="122" class="aligncenter size-full wp-image-1171" /></a></p>
<p>The prediction is given by:</p>
<p align="center">
<img src='http://l.wordpress.com/latex.php?latex=%5Cmathrm%7Bpred%7D%3D%5Cmathrm%7Bmed3%7D%28C_1%2CC_2%2CC_1%2BC_2-C_3%29&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\mathrm{pred}=\mathrm{med3}(C_1,C_2,C_1+C_2-C_3)' title='\mathrm{pred}=\mathrm{med3}(C_1,C_2,C_1+C_2-C_3)' class='latex' /></p>
<p>Which means that if color images are considered, the predicted color of the pixel &#8216;?&#8217; is given by the median of the colors. In RGB (or more like some other <a href="http://en.wikipedia.org/wiki/YUV" target="_blank">YUV</a>-like color space), that means that the prediction is applied on each color plane separately. The difference with the actual color and the predicted color is then encoded.</p>
<p>Using &#8220;continuous&#8221; colors, the residual (the difference) is likely to be smaller in magnitude than the original range of the colors; using an efficient code yields compression.</p>
<p>What happens when you have a palette image? As <a href="http://x264dev.multimedia.cx/" target="_blank"><b>Dark Shikari</b></a> suggested, let us use the color in the palette that is the closest to the prediction as the predicted color. But that leaves the problem of encoding the error. Palette images have a problem in this regard: colors are not necessarily sorted in any smart way! Encoding the error pretty much means encoding the correct palette index.</p>
<p>To circumvent this problem, I use the same technique as I used with the simpler context prediction of yesterday; I compute the ranking for each color in the palette at each pixel. The closest to the prediction gets rank 0, the furthest, rank 3.</p>
<p>To measure the difference with the palette colors and the predicted color, I tried two approaches. One is based on the approximate perceived <a href="http://en.wikipedia.org/wiki/Luma_(video)" target="_blank">brightness</a> difference, where the difference is given by the formula <img src='http://l.wordpress.com/latex.php?latex=299%26%23124%3Br_1-r_2%26%23124%3B%2B587%26%23124%3Bg_1-g_2%26%23124%3B%2B114%26%23124%3Bb_1-b_2%26%23124%3B&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='299&#124;r_1-r_2&#124;+587&#124;g_1-g_2&#124;+114&#124;b_1-b_2&#124;' title='299&#124;r_1-r_2&#124;+587&#124;g_1-g_2&#124;+114&#124;b_1-b_2&#124;' class='latex' />. The second is to count the number of components that differ, something like <img src='http://l.wordpress.com/latex.php?latex=%28r_1%5Cneq+r_2%29%2B%28g_1%5Cneq+g_2%29%2B%28b_1%5Cneq+b_2%29&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='(r_1\neq r_2)+(g_1\neq g_2)+(b_1\neq b_2)' title='(r_1\neq r_2)+(g_1\neq g_2)+(b_1\neq b_2)' class='latex' />. I labeled the first &#8220;median-luma&#8221; and the second &#8220;median-diff&#8221;.</p>
<div id="attachment_1178" class="wp-caption aligncenter" style="width: 310px"><a href="http://hbfs.wordpress.com/files/2009/04/results-2.png" target="_blank"><img src="http://hbfs.wordpress.com/files/2009/04/results-2.png?w=300" alt="Results, in increasing compression ratios" title="results-2" width="300" height="217" class="size-medium wp-image-1178" /></a><p class="wp-caption-text">Results, in increasing compression ratios</p></div>
<p>The &#8220;media-luma&#8221; method yields an average compression ratio of 1.77:1, and the &#8220;median-diff&#8221; method 1.82:1, just wee short of the context-prediction that yields 1.9:1. The median prediction is followed by the same steps as the context predictor; so results compare directly the quality of prediction. Why median-diff does a bit better than the median-luma method, I am not sure; intuitively I would say that the bitmaps exhibit some color structure that makes some color components (not palette entries, but separate components such as R, G, B) more likely to be the same as they are pretty much primary-colored. What&#8217;s your take on this?</p>
<p align="center">*<br />*&#8195;*</p>
<p>So the important point here is not that RLE is state-of-the-art (because it certainly is <em>not</em>) but that compression algorithms perform better when there are multiple stages of analysis, prediction, and encoding. A good prediction or transform helps the following stages exploit redundancy. In our case, we have median or context prediction that transforms the original pixel stream into a ranking stream, which, it turns out, has more repetitions than the original stream. The repetitions are then exploited by an auto-trigger RLE encoder, whose output is further encoded by a code reminescent of Huffman codes.</p>
<p>And most codecs are structured like that, at the global scale&#8212;although a lot more complex.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Ad Hoc Compression Methods: RLE]]></title>
<link>http://hbfs.wordpress.com/2009/04/14/ad-hoc-compression-methods-rle/</link>
<pubDate>Tue, 14 Apr 2009 10:31:03 +0000</pubDate>
<dc:creator>Steven Pigeon</dc:creator>
<guid>http://hbfs.wordpress.com/2009/04/14/ad-hoc-compression-methods-rle/</guid>
<description><![CDATA[Suppose you have been sub-contracted by a video game company, say Nintendo, to come up with an low p]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Suppose you have been sub-contracted by a video game company, say Nintendo, to come up with an low power, low-memory, implementation of a popular video game, say, an installment of the infamous Pokémon series. The envisaged device is very slow (it has a 2MHz processor) but has a 220&#215;176 pixels color screen capable of displaying 32768 different colors. It also has a hardware <a href="http://en.wikipedia.org/wiki/Sprite_(computer_graphics)" target="_blank">sprite</a> mode, but sprites are limited to 4 distinct colors. You have to encode the complete database of Pokémons, which are several hundreds, in as little space as possible. Each image vary somewhat in size, but can only have 4 distinct colors from the possible palette of 32768 colors.</p>
<p>A typical Pokémon would look like:</p>
<div id="attachment_847" class="wp-caption aligncenter" style="width: 310px"><a href="http://hbfs.wordpress.com/files/2009/02/some-pokemon.png"><img src="http://hbfs.wordpress.com/files/2009/02/some-pokemon.png?w=300" alt="A typical Pokémon image, shown enlarged and in original size." title="some-pokemon" width="300" height="300" class="size-medium wp-image-847" /></a><p class="wp-caption-text">A typical Pokémon image, shown enlarged and in original size.</p></div><br />
<!-- caption: real size vs zoomed. --></p>
<p>Since the artists put a lot of efforts into drawing the critters in 4 colors, and because of the hardware requirements, you cannot use a compression algorithm that modifies or creates more colors than the original image had, therefore excluding <a href="http://en.wikipedia.org/wiki/JPEG" target="_blank">JPEG</a>. Moreover, the JPEG codec would be too complex to port to the platform considered. You must therefore use a simple <a href="http://en.wikipedia.org/wiki/Lossless" target="_blank">lossless</a> codec.</p>
<p>We will be comparing 5 codecs for the Pokémon image database. We will be looking at a &#8220;block&#8221; codec, which will serve as a comparison for a non-RLE codec. We will be looking at 5 variations on the theme of <em>run length encoding</em>, or RLE, namely, the All Counts, the Bit Select, and Auto-Trigger RLE. The last variant will help Auto-Trigger RLE by using predictors, transforming the input image into one that is easier to compress using RLE.</p>
<p><!--more--></p>
<p>First, let us describe the physical properties of the images. In the images, there are only four colors drawn from a possible set of 32768. For each image, still assuming lossless coding, we will have 45 bits dedicated for the color palette. One could think that four 15-bits color would mean 60 bits total, but one can be removed (coded implicitly) since one of the colors is <em>always</em> white; therefore only 45 bits are necessary. The physical dimensions of the images vary but never exceeds 64&#215;64. Assuming a -1 bias (so that sizes 1 to 64 are encoded using 0 to 63), only 12 bits are necessary to encode the image sizes. So, whatever the compression used, we have 12+45=57 bits of overhead before encoding the image itself.</p>
<p><b>The Block Compressor</b>. Let us suppose we&#8217;re just starting to tackle problem of compressing the Pokémon images. We look at the images and see that there are either long runs of repeating pixels (same colors), or runs of pixels of different values because more colors are simulated by the use of hand-crafted <a href="http://en.wikipedia.org/wiki/Dithering#Digital_photography_and_image_processing" target="_blank">dithering</a>. You also notice that around the Pokémon&#8217;s edges, you have similar transitions. So after thinking a while, you devise the following code:</p>
<pre>
Code     Pixels
0 00 --&#62; 00 00 00 00
0 01 --&#62; 01 01 01 01
0 10 --&#62; 10 10 10 10
0 11 --&#62; 11 11 11 11

10   --&#62; repeats the last seen pixel 2 times
11 + xx yy zz ww -&#62; copy the 4 pixels (xx,yy,zz,ww)
</pre>
<p>So runs of 4 repeating pixels gets encoded into 3 bits instead of 8, two repeating pixels are encoded in two, and finally, a random set of 4 pixels gets encoded onto 10 bits. This scheme will serve as the reference naïve codec.</p>
<p><b>RLE</b>. The reference codec isn&#8217;t very good at capturing arbitrary lengths of repeating pixels. Maybe we can do better. What could we do? Couldn&#8217;t we rather encode arbitrary repetitions? Oh. Wait. That&#8217;s what <em>Run Length Encoding</em>, or RLE, is about! But there are many possible flavors of RLE.</p>
<p><b>All counts RLE</b>. The simplest, and unsurprisingly the least efficient variant, encodes just any pixel using a count and pixel pair. If there&#8217;s a run of exactly one pixel long, we encode the pair (1,p), where p is the pixel value. If we have 5 pixels with the same value in a row, we encode the pair (5,p), and so on. We can introduce a -1 bias to encode one repetition on 0, 2 on 1, 3 on 2, etc. If we use a fixed number of bits to encode the run length, that allows to encode the range <img src='http://l.wordpress.com/latex.php?latex=1&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='1' title='1' class='latex' /> to <img src='http://l.wordpress.com/latex.php?latex=2%5En&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='2^n' title='2^n' class='latex' /> on the range <img src='http://l.wordpress.com/latex.php?latex=0&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='0' title='0' class='latex' /> to <img src='http://l.wordpress.com/latex.php?latex=2%5En-1&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='2^n-1' title='2^n-1' class='latex' />.</p>
<p><b>The Bit Select RLE</b>. Since it is inefficient to encode a long series of different pixels by as many pairs as there are pixels, one can consider an encoding where a bit indicates whether the pair encodes a repeat or a string of literal pixels. A series of literal pixels is simply a series of pixels to be copied as is. The encoding would then take the form (1,rep,p) for pixels repeated rep+1 times, and (0,rep,p1,p2,&#8230;pn) for rep different pixels.</p>
<p><b>The Auto-Trigger RLE</b>. Rather than allocating bits to repetitions on every pixels, we might be better off to detect repetitions in another way. Let&#8217;s say we rather encode pixels one by one until a repetition is detected. A repetition is detected whenever <img src='http://l.wordpress.com/latex.php?latex=a&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='a' title='a' class='latex' /> consecutive pixels are the same. The optimal value of <img src='http://l.wordpress.com/latex.php?latex=a&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='a' title='a' class='latex' /> is determined by the source to encode. For the Pokémon image database, the optimal <img src='http://l.wordpress.com/latex.php?latex=a%3D2&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='a=2' title='a=2' class='latex' />. So after two repeating pixels, a repeat code is emitted. If the repetitions continue, the number of remaining pixels in that run is encoded, otherwise it&#8217;s 0. It&#8217;s &#8220;0 more repetitions&#8221; if the next pixel breaks the repeating sequence.</p>
<p><b>Variable Length Codes</b>. Fixed-length codes are probably not very efficient to encode run lengths. After looking that the distribution of runs, I found that the following <a href="http://en.wikipedia.org/wiki/Variable-length_code" target="_blank">variable length code</a> (or VLC) is nearly optimal:</p>
<pre>
Code           Lengths
00             0
01             1
100  + 1 bit   2,3
101  + 2 bits  4,...,7
110  + 3 bits  8,...,15
1110 + 4 bits  16,...,31
1111 + 5 bits  32,...,63
</pre>
<p>And those will be the variable length codes for the run encoding in all implementations of RLE (except for the Block coder, which isn&#8217;t RLE at all).</p>
<p>However, the results from the first four variants aren&#8217;t all that impressive. Starting at 2 bits per pixels in the original image, the block coder yields a 1.38:1 compression ratio, the All Counts fares similarly with a 1.34:1 compression ratio, the Bit Select is an absolute catastrophe with an insignificant compression ratio of 1.02:1. Finally, the Auto-Trigger RLE yields 1.71:1 compression, which is by far the best amongst the more naïve methods.</p>
<p><b>Predictive RLE</b>. This method is considerably more complex than the methods presented so far (while being still rather simple in absolute terms). The previous methods are limited by the repetitions found in the pixels. If there&#8217;s a regular pattern (as there is often in dithering), the RLE compressor cannot take advantage of it. However, we can transform the original image so that the RLE compressor is able to form much longer runs and therefore yield much better compression.</p>
<p>To do so, we will use <em>prediction</em>. In order to guess what will be the next pixel in the image, we will form contexts and accumulate frequencies of occurrence of pixels given the contexts. The context is defined as the pixel right above and the pixel to the immediate left of the pixel we want to predict, as the following illustrates:</p>
<p><img src="http://hbfs.wordpress.com/files/2009/02/context.png" alt="context" title="context" width="122" height="122" class="aligncenter size-full wp-image-849" /></p>
<p>For the sake of bootstrapping the process, the pixels that fall outside the image are considered as the color 0.</p>
<p>For each context (which are numbered 16), we will maintain four counts, one for each color. While we scan the entire image, we form the contexts (c1,c2) and we increment the count corresponding to the color observed in the &#8216;?&#8217; pixel. Once the image is scanned, we have all context populated and we proceed to the second phase.</p>
<p>In the second phase, we establish, for each context, color ranking. Color ranking assigns, to each color in a given context, a rank: the most frequent color receives rank 1, the second most frequent rank 2, and so on. Once rankings are assigned for each colors in each context, we discard the frequency information as we won&#8217;t be needing it again.</p>
<p>In the third phase, we will rescan the image and replace the pixels by their ranking given their context. This will help RLE compress longer series of pixels as, even they were different in the original image, their rank might be the same given their contexts. Once all pixels are replaced by their ranking, we apply Auto-Trigger RLE with an auto-repeat length of 2.</p>
<p>This method requires the coding of the rankings, at a cost of 10 bytes (we have 16 context, with 4 rankings, which can be encoded in at most 5 bits per permutation, since there are 24 possible permutations of 1,2,3,4).</p>
<p>The decompression proceeds in reverse: the data is decompressed using Auto-trigger RLE, then one by one the rankings are replaced by colors, by using the ranking to color mapping encoded in the contexts.</p>
<p><b>Comparing Results</b>. It is finally the predicted values that will be encoded using Auto-Trigger RLE, yielding a much better compression ratio of 1.9:1, a gain of about 12% on the unaided Auto-Trigger RLE which yields a 1.7:1 compression ratio. Bit Select, All Counts, and Block perform so much worse than they can be discarded from the list of potential compression algorithms.</p>
<p>Comparing relative performances yields:</p>
<p><div id="attachment_853" class="wp-caption aligncenter" style="width: 310px"><a href="http://hbfs.wordpress.com/files/2009/02/results1.png"><img src="http://hbfs.wordpress.com/files/2009/02/results1.png?w=300" alt="The compression methods compared." title="results1" width="300" height="238" class="size-medium wp-image-853" /></a><p class="wp-caption-text">The compression methods compared (bigger is better).</p></div>
<p>which clearly indicates the predictive codec as a winner. The results are averaged over the 746 test set Pokémon bitmaps.</p>
<p align="center">*<br />
*&#8195;*</p>
<p>In this post, we have seen two things. First, we have seen that Auto-Trigger RLE is the best variant of RLE as it does not use special codes for strings of non-repeating pixels, and only for pixels that do actually repeat. The optimal value <img src='http://l.wordpress.com/latex.php?latex=a&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='a' title='a' class='latex' /> of repetitions after which a repetition code is emitted depends on the source to code. In the case of the Pokémon database, <img src='http://l.wordpress.com/latex.php?latex=a%3D2&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='a=2' title='a=2' class='latex' /> gave the best results (it was determined by exhaustive testing).</p>
<p>Second, we have seen that <em>transforming</em> the data before compression can actually yield much better results. In this example, we transformed from pixel-space to ranking-space, which yielded longer repetitions than the original data, with very little extra processing cost.</p>
<p align="center">*<br />
*&#8195;*</p>
<p><b>On compression ratio fairness</b>. The compression ratio presented are relative to the original image at two bits per pixels. However, if I had measured the compression ratio according to the original <a href="http://en.wikipedia.org/wiki/Portable_anymap" target="_blank">pnm</a> files, I could have claimed a much higher ratio. Indeed, in the original pnm file, each pixel is 24 bits long (3 components, R, G, B, each 8 bits wide), therefore I could easily have claimed a 22.8:1 compression ratio using predictive RLE coding! Which would be dishonnest, I think, even though it would give better compression ratios that Zip on that particular series of files.</p>
<p>Compression ratios should always be expressed relative to the smallest non-compressed representation of the data. In our case, the Pokémons are in fact <a href="http://en.wikipedia.org/wiki/Palette_(computing)" target="_blank">palette<a> <a href="http://en.wikipedia.org/wiki/Raster_graphics" target="_blank">bitmaps</a>, and each pixel has a <em>natural</em> representation on two bits, relative to a four entry palette of 15 bits colors. Therefore, all compression ratios are reported relative to the original bitmap at two bits per pixels.</p>
<p align="center">*<br />
*&#8195;*</p>
<p>This also raises the question of the original dimensionality of the data. Not only one has to ask himself how many bits are necessary for the minimal natural representation of the data (in our example, 2 bits per pixels plus a palette describe adequately the data) but also how much it &#8220;fills&#8221; its possible space. Speaking of <a href="http://en.wikipedia.org/wiki/Fractal_dimension" target="_blank">fractal dimension</a> may be exagerated, and not quite applicable, but one has to figure out what patterns are possible (and then merely likely) in the data and how this influences the possible compression algorithms and obtained compression ratios. In our case, the Pokémon images share numerous properties: vast blocks of uniform colors; edges formed by white pixels followed by a single dark pixel followed by the fill color, simulated colors by regular dithering (checkboards patterns of two colors), etc. Clearly, the Pokémons do not occupy a large portion of all possible bitmaps of 4 colors. Unless there&#8217;s a <a href="http://en.wikipedia.org/wiki/White_noise" target="_blank">Whitenoisamon</a>, the images have a high degree of structuration, and that is clearly exploitable for compression.</p>
</div>]]></content:encoded>
</item>

</channel>
</rss>
