SIRTS (Single Image Random TEXT Stereogram).

What are they?

They are images that appear at first glance to be composed of totally random dots but when you look at them more carefully, a 3D image appears out of the 2D image. There are two kinds of such images: SIRDS (Single Image Random Dot Stereogram) and SIRTS (Single Image Random Text Stereogram).

As their names imply, SIRDS are composed of dots while SIRTS are composed of text characters.

How do we view these images?

The basic idea is that you need to focus your eyes on a point that is slightly further that the actual image. What you need to do is cross your eyes slightly to bring the image out of focus until you start seeing the 3D image. I really don't know how to properly explain to you how to see it if you don't already know. If you have trouble viewing the image, please search google for SIRDS.

How do we create our own SIRTS?

Using this program. It takes as input a file that is the height map of the object. For example:
000000000000000000000000
000000000000000000000000
000011111111111111110000
000011111111111111110000
000011111111111111110000
000011111111111111110000
000011111111111111110000
000000000000000000000000
000000000000000000000000
should create a rectangle that is closer to you (at depth 1) than the background (at depth 0).

You feed this data to the program and it gives you the 3d SIRTS:

g810![IJ'`h1F7zbg810![IJ'`h1F7zbg810![IJ'`h1F7zbg810![IJ'`h huNM:W'YlyFWn<b,huNM:W'YlyFWn<b,huNM:W'YlyFWn<b,huNM:W'YlyF (o>PK+W2[r#ui$JL(o>K+W2[r#ui$JL(o>K%+W2[r#ui$JL(o>K%+W2[r#u -XV!C]{WM3H$\UoQ-XVC]{WM3H$\UoQ-XVCG]{WM3H$\UoQ-XVCG]{WM3H$ DDI40{lk$0fl"?(9DDI0{lk$0fl"?(9DDI0){lk$0fl"?(9DDI0){lk$0fl oJI?lc".cCYbx4HZoJIlc".cCYbx4HZoJIlic".cCYbx4HZoJIlic".cCYb f0*I.&%_l/h~S*`;f0*.&%_l/h~S*`;f0*.M&%_l/h~S*`;f0*.M&%_l/h~ 1|$0zRW{7:4gbN{P1|$0zRW{7:4gbN{P1|$0zRW{7:4gbN{P1|$0zRW{7:4 }yG]D(FqinGWb,'#}yG]D(FqinGWb,'#}yG]D(FqinGWb,'#}yG]D(FqinG
The rectangle should appear on the left side of the image.

Is it complicated to create such a thing?

Not at all if you know how to ;)

Where can I get more information?

http://www.tnt.uni-hannover.de/soft/compgraph/sird/sirdsfaq.txt or search google again for more information.

Ok, where is the program?

#!/usr/bin/perl -nw # generate ascii 3-d for an input height field # input contains tabs(ts=8), spaces(h=0) or numbers 0..9 # 0 is the furthest and 9 is the closest. # Copyright 2001 -- Abdulaziz Ghuloum chomp; s/\t/' 'x8/eg; # replace tabs $_|=' 'x72; # normalize width s/ /0/g; # default depth s/(\d)/$1$1/g; # double each letter s/.//; # remove first chop; # and last my $p = rs(16); # pick a random string print $p; $p=reverse$p; s[(\d)(\d)][ # for each step if($2>$1){chop($p) for 1..$2-$1} # remove chars if going up elsif($2<$1){$p .= rs($1-$2)}; # add chars if going down $p =~ s/(.*)(.)/$2$1/; # rotate chars $2 # and substitute ]eg; print "$_\n"; sub rs{ my @chars = map chr, 33..126; # all printable chars my $p; $p .= $chars[rand @chars] for 1 .. shift; $p or ''; }

And I want to see the camel in 3d

Click d/l code to see it.

Hope you all like it

Aziz,,,

__DATA__ 5ETtY?.ARZJ;xtN[5ETtY?.ARZJ;xtN[5ETtY?.ARZJ;xtN[5ETtY?.ARZJ;xtN[5ETtY? +.ARZJ;xtN[5ETtY?. TI_R_SpgIPIzEpF=TI_R_SpgIPIzEpF=TI_R_SpgIPIzEpF=TI_R_SpgIPIzEpF=TI_R_S +pgIPIzEpF=TI_R_Sp Y@ft]c'O#-gslvMaY@ft]c'O#-gslvMaY@ft]c'O#-gslvMaY@ft]c'O#-gslvMaY@ft]c +'O#-gslvMaY@ft]c' N`Otq8pNY|u;Kt9<N`Otq8pNY|u;Kt9<N`Otq8pNY|u;Kt9<N`Otq8pNY|uKt9<N`+Otq8 +pNY|uKt9<N`+Otq8p GNB;|N<R,I>?YgdtGNB;|N<R,I>?YgdtGNB;|N<R,I>?YgdtGNB;|N<,I>?YgdtGNB;|eN +<,I>?YgdtGNB;|eN< o<6k/w}n>N^-1*Dmo<6k/w}n>N^1*Dmo<o6k/w}n>N^1*Dmo<o6/w}n>N^1*Dmo<o6/w}* +n>N^1*Dmo<o6/w}*n a]w(Y_xSN&s$+XtMa]w(Y_xN&s$+XtMa]w7(Y_xN&s$+XtMa]7(Y_xN&s$+XtMa]7(Y_xN +9&s$+XtMa]7(Y_xN9 zWkBqulSL*r!P%knzWBqulSL*r}!%knzWBq2ulSL*r}!%knzBq2ulSL*r}!%knzBq2ulSL +*er}!%knzBq2ulSL* po^&<s)@EA1ib=:No^&<s)@EA1ib=:No^&<sI)@EA1ib=:N^&<sI)@EA1ib=:N^&<sI)@E +AH1ib=:N^&<sI)@EA c@xG]iqI:<[kfd|/@xG]iqI:<[kfd|/@xG]iqWI:<[kfd/@xG]iqWI:<[kfd/@xG]iqWI: +<[Ckfd/@xG]iqWI:< *`r*u&fKAa>^QE*-*r*u&fKAa>^QE*-*r*u&fDKAa>^E*-*r*u&fDKAa>^E*-*r*u&fDKA +a>^!E*-*r*u&fDKAa |e[->w@77`e$sl#o|e[->w@7`e$sl#o|e[->wA@7`$sl#o|e[->wA@7`$sl#o|e[->wA@7 +`$sl#lo|e[->wA@7` 1h=>'FaR,y.:p19l1h=>'Fa,y.:p19l1h=>'HFay.:p19l1h=>'HFay.:p19l1h=>'HFay +.:p19lJ1h=>'HFay. 8/41YnvJaMs}@er;8/41YnJaMs}@er;8/41YqnaMs}@er;8/41YqnaMs}@er;8/41YqnaM +s}@er;8;/41YqnaMs K=sdz[e9`+H3Ju),K=sdze9`+H3Ju),K=sdze9`+H3Ju),K=sdze9`+H3Ju),K=sdze9`+ +H3Ju),K=&sdze9`+H Au\//}Y>KD1X{%'-Au\//Y>KD1X{%'-Au\//Y>KD1X{%'-Au\//Y>KD1X{%'-Au\//Y>KD +1X{%'-Au\/L/Y>KD1 qO;Y>6Jv1=b]t"DBqO;Y>Jv1=b]t"DBqO;Y>Jv1=b]t"DBqO;Y>Jv1=b]t"DBqO;Y>Jv1= +b]t"DBqO;Y>WJv1=b z*qg-"f%z"Iphh.Tz*qg-"%z"Iphh.Tz*qg-"%z"Iphh.Tz*qg-"%z"Iphh.Tz*qg-"%z" +Iphh.Tz*qg-"@%z"I ,|aSS?jIMu7\A<KS,|aSS?IMu7\A<KS,|aSS?IMu7\A<KS,|aSS?IMu7\A<KS,|aSS?IMu +7\A<KS,|aSS?I]Mu7 NV&s0;%~Wst7^N|ZNV&s0;~Wst7^N|ZNV&s0;~Wst7^N|ZNV&s0;~Wst7^N|ZNV&s0;~Ws +t7^N|ZNV&s0;~zWst LH*!#w>wLJAJ)@[YLH*!#w>LJAJ)@[YLH*!#w>LJAJ)@[YLH*!#w>LJAJ)@[YLH*!#w>LJ +AJ)@[YLH*!#w>L-JA rl2,eE"a2UT$b0!grl2,eE"aUT$b0!grl2,eE"aUT$b0!grl2,eE"aUT$b0!grl2,eE"aU +T$b0!grl2,eE"a!UT o]vsn\/l>Z{AY40po]vsn\/l>{AY40po]vsn\/l>{AY40po]vsn\/l>{AY40po]vsn\/l> +{AY40poW]vn\/l.>{ N]}WVotea;wtK?!dN]}WVotea;wK?!dN]}WVotea;wK?!dN]}WVotea;wK?!dN]}WVotea +;wK?!dNU]}Vote@a; j]Kb^[&:"D4K9OEUj]Kb^[&:"D4K9EUj]Kb^[&:"D4K9EUj]Kb^[&:"D4K9EUj]Kb^[&%" +D4K9EUjJ]K^[&%Q"D FAr"!u]aoF*u(;$ZFAr"!u]aoF*u(;$FAZr"u]aoF*u(;$FAZr"u]aoF*u(;$FAZr"u]~o +F*u(;$F<Ar"u]:~oF ULJsK`S,{"2T/{e_ULJsK`S,{"2T/{e_ULJs`S,{"2T/{eD_LJs`S,{"2TF{eD_LJs`JS, +"2TF{eD}_Js`fJS," L:Rk+IHzLb.DI}#=L:Rk+IHzLb.DI}#=L:RkIHzLb.DI}#O=:RkIHzLb.Da}#O=:RkI{Hz +L.Da}#O=?RklI{HzL R6:=nz{1SP}DI9v+R6:=nz{1SP}DI9v+R6:=n{1SP}DI9rv+6:=n{1SP}DnIrv+6:=nU{1 +SPDnIrv+o6:=nU{1S uK|"D8-='e;8|X>=uK|"D8-='e;8|X>=uK|"D-='e;8|Xz>uK|"D-='e;[8|z>uK|"Du-= +'e;8|z>uvK|"Du-=' o##F2}no$Ak/q4u0o##F2}no$Ak/q4u0o##F2no$Ak/q-4uo##F2no$AkG/q-uo##F2'no +$Ak/q-uo#@#F2'no$ q|B335Po*+N@h%/|q|B335Po*+N@h%/|q|B33Po*+N@h+%/q|B33Po*+N@h+%q|B33Pno* ++N@h%q|B3,3Pno*+N 3oc@{CczkH/2l%ia3oc@{CczkH/2l%ia3oc@{czkH/29l%i3oc@{cfzkH/29%i3oc@K{cf +zkH/9%i3oEc@K{cfz 1{PddQd6x]9*U}p+1{PddQd6x]9*U}p+1{PddQ6x]9*_U}p+{PddQ6'x]9*U}p+{PGddQ6 +'x]9U}p+{>PGddQ6' Z-Q/U\`jWJYP0p\"Z-Q/U\`jWJYP0p\"Z-Q/U\jWJYPe0p\"ZQ/U\jWJmYe0p\"ZrQ/U\j +WJmY0p\":ZrQ/U\jW W)Vz:(#%`UOikL:ZW)Vz:(#%`UOikL:ZW)Vz:(%`UOi3kL:ZW)Vz(%`UOi3kL::ZW)Vz(% +`UOikL::NZW)Vz(%` ShG$E(`P@h:7lkaMShG$E(`P@h:7lkaMShG$E(P@h:17lkaMShG$EP@h:17lkuaMShG$EP +@h:1lkua^MShG$EP@ lpCQbgVNX|OH\W0^lpCQbgVNX|OH\W0^lpCQbgNX|O/H\W0^lpCQbgX|O/H\W0^lpCQbgX +|O/HW0^l@pCQbgX|O 6w/<~!OdY"\U:yfd6w/<~!OdY"\U:yfd6w/<~OdY"=\U:yfd6w/<~dY"=\U:yfd67w/<~d +Y"=U:yfdk67w/<~dY g!NaIBPoGp`G|$acg!NaIBPoGp`G|$acg!NaBPoGpG`G|$acg!aBPoGpG`G|$acg3!aBPo +GpGG|$acg#3!aBPoG iyZp'J4S8FLxA/zkiyZp'J4S8FLxA/zkiyZpJ4S8FoLxA/zkiZpJ4S8FoJLA/zk`iZpJ4S +8FJLA/zk`aiZpJ4S8 qG~C=1f_:6mCBYL:qG~C=1f_:6mCBYL:qGC=1f_:6GmCBYL:qGC=1f_:6GmCBYL:qGC=1f +_6GmCBYL:)qGC=1f_ H0sK(eTR1zixaG=UH0sK(eTR1zixaG=U0sK(eTR1izixaG=U0sK(eTR1izixaG=U0sK(eT +R1zixaG=>U0sK(eTR !hUCWvci*qOWP~4[!hUCWvci*qOWP~[!hUCWvci*8qOWP~[!hUCWvci*8qOWP~[!hUCWvc +i*8qOWP~[!hUCWvci .Q&K@9mCK?I&Ffke.Q&K@9mCK?I&Ffke.Q&K@9mCK?I&Ffke.Q&K@9mCK?I&Ffke.Q&K@9 +mCK?I&Ffke.Q&K@9m }Fi$r(_eOy+g!9k9}Fi$r(_eOy+g!9k9}Fi$r(_eOy+g!9k9}Fi$r(_eOy+g!9k9}Fi$r( +_eOy+g!9k9}Fi$r(_ ?$cB~]?94~yL?9[z?$cB~]?94~yL?9[z?$cB~]?94~yL?9[z?$cB~]?94~yL?9[z?$cB~] +?94~yL?9[z?$cB~]?

In reply to ASCII Stereograms (SIRTS) by abstracts

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.