X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: f996b,db78abe5177a5c67 X-Google-Attributes: gidf996b,public X-Google-ArrivalTime: 2001-04-24 13:28:04 PST Path: newsfeed.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!news.stealth.net!news.uni-stuttgart.de!rz.uni-karlsruhe.de!news.rz.uni-karlsruhe.de!not-for-mail From: Markus Gebhard Newsgroups: alt.ascii-art Subject: Re: Gwyneth Paltrow - Jave image->ascii conversion .. and discussion of algorithms Date: Tue, 24 Apr 2001 22:24:08 +0200 Organization: University of Karlsruhe, Germany Lines: 130 Message-ID: <3AE5E0E8.75483ACD@rz.uni-karlsruhe.de> References: <9bi18c$s21$1@news.inet.tele.dk> <3ADCB3E4.3404E133@rz.uni-karlsruhe.de> <987593119.12602@itz.pp.sci.fi> <3AE01CDE.85C9373B@rz.uni-karlsruhe.de> <9bp97i$kej$1@news.inet.tele.dk> NNTP-Posting-Host: wn4-jarjar.wn4.uni-karlsruhe.de Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Trace: news.rz.uni-karlsruhe.de 988144084 19885 172.20.12.141 X-Complaints-To: usenet@rz.uni-karlsruhe.de X-Mailer: Mozilla 4.77 [en] (Win98; U) X-Accept-Language: en Xref: newsfeed.google.com alt.ascii-art:5415 Christian 'CeeJay' Jensen wrote: > > L -> 10 / -> 01 ( -> 01 > > 10 10 10 > > 11 10 01 > > > > My 2x2-algorithm uses greyscales for the 4 areas - schematically: > > > > L -> 50 / -> 04 ( -> 33 > > 88 40 33 > > (in the algorithm there are 256 values for brightness of each area) > > I would like to see what change a 3 x 3 grid would do. Feel free to implement it :-) As stated before I do not see advantages. It will become an unsolvable puzzle - have a look at this: IMAGE: A: B: C: 505 800 400 008 505 080 500 012 505 008 781 312 Suppose in the image you found a grayscale pattern like in 'IMAGE'. You can substitute this pattern by one of three avialable characters with reference patterns A, B, and C. But none of them fits. Which one will you use? The one with the least difference - but the differences here are all by far too big. The result will not be likely to look similar to the original image. In Ascii you have about 94 characters or so to chose from - a little bit more than the three ones in the example above, but by far to few to cover a 3x3 grid. To get a better idea of the problem have a look at this: http://www.jave.de/preview/9x9.gif I have done a little testing with the 3x3 grid some time ago. I have stopped as I realized the fact I wrote about above. Here an example of what it looked like: 1) The 2x2-Algorithm: MMMMMMMEM#mmyMMTxZ0(:--((x>>-(>>{zv==:::------`-`` `(3X#MMMBB:JdMMBMM MBMBMBMMMKMMBZSwY={z>---(3>-(zz====>(:((---------... .(d#MMMB#n(XBMBMM MBMEMB#MBMMMTgP%(=>{{----((awxo{{>>:(((((----------.. ..(4QMMMMBm(dMMMMM MMMBMBBMMBMSQ+>::-(z=---(499UUQQQQwe-((((:----------.__aggMMMMBBm(3MMBMM MMMMmQMMMWn2%(>--(z=-_JQQxxgyzwQX#MM#Q{>>((-------(agX##XQQ#MMMBB{zdMBMM MMMMMMMMT4f>::---(:(a#mmMMMMMmMMmQXZZZOxoz>-----(ugggMMMMMMMMMMEM|3QMMMM mgMMMMMKx+->:----(a#MMMMMMMMB+V@MMMQxZO[xz=--`.(gMMMMF#MMBMMMMBBM[(SMMMM MMBMMBKgC(>-----JZZHMMBXM#MMH:`-7#Z#QQZO[v>- .a#MMMM#I{dMMMMBMBEMI(dXMMM MMMBBSZ%(>----JZZZOO09MQZZ96~-.-cvXZZZZZOv>- _ZAz9#9%(udMMMMMMMMM](d##MM MMMMGZ%(>---(ZXZOvO[[[0OZXXO4nO{>(z4ZZZZOx>- .(zxxZZwQ#MM#MMMMBMBP>4##MM MMMnZ%(:--_g#XZO[vzzzzvvvvvvvv=={=zOOO4ZZ[{- .->zvvOZZZXXSMMMMBBMR>zdMMM MW4Z%:--_aM#QZZO[xzz{>=::>>>(:>>>{z[[[4ZZO{- -(>zzxO4ZZZSMMMMBMMm=(dBMM W4XC---_BB#XZZZO[vzz=>::(:(((:((>zvxxxZOZO[~ -(>{zzOOZZZQMMBMBMME{?dMMB xQ%---(MBB#QZZZOO[zzz{((((-((:(({zxxxx4OZO[>. .(>{zz[OZZZdMMBMBMME{zzMMB XC--_gMBMB#QQZZZ[xxvzz{>>(((((>{zzxxx[OZZO[{- ({zzx[[ZZQdMMMMBMMB[(xdMB C~-_MMBEMB#XQZZZOx[vzzz={>>(>>>{zzOOOZZZZZO{- ({zzx[OZZdMMMBMMMMBk?[dMB ~_aMMMME#B#XQZZZOOx[vzzzzzz{{{{zzxwQZOZZZZOo>. .ozzzx4ZQdMBMBMMMMBm{[4MM =aMMMMMBSM#XQZZZZO[x[xvvzzzzzzzvvzQZOxxx4ZZ[:- _xxx[OZZgMMBMBBBMMBm{zxdM gMMMMMMBSM#XQZZZZOx[[[zzzzzzzzzzvvZZxdMHSQQZ[-->zxzxOZgMMMBMBMBMBMB[>OdM MBBMMMBRd#mXQZZZZOOxxxxx[vzzzzzzzvvOOZZOOU0=>-({zx[OOQMMMMBMB#MMMMMP(OdM MMMMMMMmd#XXZZZZZZ[[xxxx[vzzzzzzzzzv[[[=->>---(zx[[OgMMMMMBMBMBMMMMm{vd# 2) The experimental 3x3 Algorithm: BEBEEEBEEBBBE@WEZZZ22%%%ZZ2%%z222ZZZ222%%%%%%------ -%Z@EBBBEE2ZEBBEEE BEEEBEBBBEBBBEEZZ2Z22%%%2Z%z&ZZZZ22222%%%%%%%%------- -ZZEEBBEEEZ@EBEEE BEBEBBEBEEEWEZ@2222Z2%%%%%LQZZZ22222%%%%%%%%%%%%%---- --%ZBBBBBEE2ZEEEBE BBEEEEEBBBWE@Z22%%2Z2%%izZZZ@@@BBBQL2%%2%%%%%%%%%%-%__zaZEBEBEBEE2Z@BEEE BBEBBEBBBEZZ2&%%%%Z2%_aZZZZZEZZZEEEEEE2222%%%%%%%%zZ@EEEEZEEEBBEESZ@EBBE @BBEBBBBEZP%2%%%%%%zdEBBBBBEBBBBBEEZZZZZZZ2%%%%%zZQBBBBBBBBEBBBEE2ZZEEEE BBEEBBWEZ2z2%%%%%zdEBBBEBBBEE2Z@WEBEZZZZZZ2%- _gBBBEEEZBBEEBEEBEESZEEEEE BBBBBEEZ2zS%%%%_dEZ@EBEE@EEBF%--Z@EEZEZZZZ2% -ZE@EEE@ZZZBBBBBBBEEEZZEEBE BBEEEEZ2S%%%%zaZZZZZZZE@EZZ2ii_zZZZZZZZZZZ%- <@@ZZZZ22ZEBEEEEBEEEE2ZEEBB BBBEZ@2&%%%_gEEZZZZZZZZZZZZZZZZZZZZZZZZZZZ2- -2ZZZZZ@@EEEEEBBBEEEE2ZEEBB BBEZZ22%%%gEEEZZZZZZZZZZZZZZZZ22Z2ZZZZZZZZ2% -%2ZZZZZZZEEEEEEBEEEE2Z@EBE BEZE2%%%z@EEEZZZZZZZ222%222222222ZZZZZZZZZ2% %%2ZZZZZZZZEEEEEEEBE22ZEBB EZ@2%%_gBEEEZZZZZZZZ222%%%%%%%%22ZZZZZZZZZZ% %222ZZZZZZZZBBEEEEBE2ZZBBE ZZ2%%zdEEEEEZZZZZZZZZ2222%%%2222ZZZZZZZZZZZ% -22ZZZZZZZZEEBEEEBBE2ZZ@EE E2%-qBBEEEEEZZZZZZZZZZ22222%222ZZZZZZZZZZZZ2% 2ZZZZZZZZZEEEEBEBBESZZZBE P%_gEBBEEEEEEZZZZZZZZZZZZ222222ZZZZZZZZZZZZ2% %ZZZZZZZZEBBBEEEHBEEZZZBE zzdBBBBEEEEEEZZZZZZZZZZZZZZ222ZZZZZZZZZZZZZZ%- And I don't like the ---- 's either. I could remove '-' from the gradient. But I think it is no good idea to also remove '.' - one has to find a way to reduve those artefacts from continuous characters by dithering I think. .'.'.' is much better than ..... > I feel there also is a need to restrict the 2x2 algorithm to certain characthers .. just > like the 1x1 algorithm. That's problematic. You want to remove certain characters, for they create artefacts like lines for example. But on the other hand you want to convert shapes in the image to shapes from characters - that is a contradiction. > F.x if a grid needed a line at the very top , it might in some cases be better if the _ > was used in the grid/cell above it .. the current algorithms do not consider that. Good idea, but by using '_' on the line above, you lose a character at this place that might be needed much more. > Perhaps a algorithm could do a larger pixelgrid to a larger chargrid .. f.x if your 2x2 > algorithm instead was 4x4 to 2x2 chars > > or maybe just a 3x1 char grid > > _ > |_| > |_| > |_| > > Since most "crossover" chars have to do with height Maybe a good idea, but one has to put lots of effort in creating a good translation table. If you want to do that automatically (I suppose so) the only algorithms that come to my mind will not lead to different results from the original algorithm... Markus