Programmeringstävling: ASCII art

Permalänk

Programmeringstävling: ASCII art

Hej alla!

Efter you's underbara förslag om att vi ska ha en tävling och delights förslag på ASCII art utser jag nu mig själv till att ta nästa boll!

Här är då den tråden som vi har innan tävlingen är avslutad. All diskussion om tävlingen kan föras här.

Deadline för tävlingen är 2010-01-17

Ingen postning av kod i tråden innan tävlingen är avklarad! PM:a mig (KurreKula) direkt istället!

För er som undrar vad ASCII art är har vi denna länk till underbara WIKI:
http://en.wikipedia.org/wiki/ASCII_art

Tävlingen går i kort sett ut på att bygga en ASCII Art converter. Detta är ett program som tar en inbild och sen gör om den till ASCII Art.
http://en.wikipedia.org/wiki/ASCII_art_converters

Vi kommer att göra det på tre bilder som kommer att vara hemliga fram tills deadline är den 17:de januari. När deadline förfaller kommer jag att kontakta de som har anmält sig, be dem skicka sitt program till mig(ifall de själva får ladda upp kan de göra ASCII art för hand) och sen skapar jag en ny tråd där jag lägger upp bidragen och folk kan rösta.

Har någon åsikter på detta så säg gärna till!

Regler:
1. Programmet ska klara input från valfritt bildformat, så länge det anges vilket
2. Programmet behöver inte vara i något speciellt språk, så länge det är körbart på linux, OSX eller windows(xp eller högre)
3. Programmet får enbart använda sig av ASCII-tecken
4. Deadline är 2010-01-17, bidrag skickade in efter det räknas ej. Omröstning påbörjas 2010-01-21 och avslutas 2010-01-25
5. Programmet behöver inte vara grafiskt utan kan köras på vilket sätt som helst så länge det meddelas hur
6. Program som kraschar på en bild får en varning och sen till 20:de januari på sig att fixa buggen
7. Tredjepartsbibiliotek är tillåtet men får ej vara specialanpassat för att få ut ASCII-art. Det får enbart vara för bildinläsning
8. Output måste vara ren text som kan kopieras in i tråden och får därför inte vara en bild med asciitecken
9. Ingen kod får postas i denna tråd. All eventuell kod när tävling är slut kommer att postas i omröstningstråden
10. Output kommer att visas på forumet inom code-taggar och [ font=courier]-taggar l
11. Man får max använda sig av 70 tecken på bredden

_____ _____ _____ _____ /\ \ /\ \ /\ \ /\ \ /::\ \ /::\____\ /::\____\ /::\ \ /::::\ \ /:::/ / /:::/ / /::::\ \ /::::::\ \ /:::/ / /:::/ / /::::::\ \ /:::/\:::\ \ /:::/ / /:::/ / /:::/\:::\ \ /:::/ \:::\ \ /:::/ / /:::/____/ /:::/__\:::\ \ /:::/ \:::\ \ /:::/ / /::::\ \ /::::\ \:::\ \ /:::/ / \:::\ \ /:::/ / /::::::\ \ _____ /::::::\ \:::\ \ /:::/ / \:::\ ___\ /:::/ / /:::/\:::\ \ /\ \ /:::/\:::\ \:::\ \ /:::/____/ ___\:::| |/:::/____/ /:::/ \:::\ /::\____\/:::/ \:::\ \:::\____\ \:::\ \ /\ /:::|____|\:::\ \ \::/ \:::\ /:::/ /\::/ \:::\ \::/ / \:::\ /::\ \::/ / \:::\ \ \/____/ \:::\/:::/ / \/____/ \:::\ \/____/ \:::\ \:::\ \/____/ \:::\ \ \::::::/ / \:::\ \ \:::\ \:::\____\ \:::\ \ \::::/ / \:::\____\ \:::\ /:::/ / \:::\ \ /:::/ / \::/ / \:::\/:::/ / \:::\ \ /:::/ / \/____/ \::::::/ / \:::\ \ /:::/ / \::::/ / \:::\____\ /:::/ / \::/____/ \::/ / \::/ / \/____/ \/____/

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase

Permalänk
Medlem

Låter finemang, får se om jag orkar mig på att delta.

Edit: Något speciellt språk?

Visa signatur

WS: [i5 2500k@4.5ghz, 16gb ram, HD6870]@Win 7 / Debian
Laptop: [Samsung 700Z5C-S02]
@Win 8

Om du har smak för elektronisk musik: soundcloud.com/skepth

Permalänk
Citat:

Ursprungligen inskrivet av Dibbqwaz
Låter finemang, får se om jag orkar mig på att delta.

Edit: Något speciellt språk?

La till lite regler

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase

Permalänk
Medlem

Gôtt! Har sista tentan idag, ska nog kunna skriva ihop något roligt framåt slutet av veckan

Permalänk
Medlem

Sån har man ju gjort =D fast den behöver nog lite tweeking för att få den att göra det snyggare

Visa signatur

Utvecklare (Technical Director) / Delägare - Björnmamman

Permalänk
Hedersmedlem

Borde man inte reglera vilka hjälpmedel man får använda? Det blir lite tråkigt om alla använder samma bmp-till-ascii-bibliotek (om det nu finns ett sådant), men samtidigt är det kanske onödigt att tvinga folk att skriva egna bildformatsavkodare? Eller är det underförstått att man skall skriva allt själv?

Permalänk
Citat:

Ursprungligen inskrivet av Elgot
Borde man inte reglera vilka hjälpmedel man får använda? Det blir lite tråkigt om alla använder samma bmp-till-ascii-bibliotek (om det nu finns ett sådant), men samtidigt är det kanske onödigt att tvinga folk att skriva egna bildformatsavkodare? Eller är det underförstått att man skall skriva allt själv?

Tycker att man borde skriva allt själv? Kan ju ha en regel om att källkoden måste skickas också så att det kan kontrolleras...

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase

Permalänk
Medlem

Inga tredjepartsbibliotek känns som en god idé.

Visa signatur

Kom-pa-TI-bilitet

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av KurreKula
Tycker att man borde skriva allt själv? Kan ju ha en regel om att källkoden måste skickas också så att det kan kontrolleras...

I så fall bör man begränsa det till enklare bildformat, JPEG är nog gränsfall eftersom man måste implementera FFT och annat. Det kan stänga ute lite mindre erfarna programmerare.

Permalänk
Medlem

Jag tycker det är smartast att låta folk använda vilka bibliotek som dom vill. Om sen alla i slutändan använder samma biliotek så kommer ju resultatet bli likvärdigt och ingen innovation har uppnåtts och därmed kan ingen vinnare utses.

Permalänk

La till en kompriss till reglerna

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av KurreKula
La till en kompriss till reglerna

Det verkar vettigt, en annan fördel med att skriva det själv är ju att man lär sig; men det kan ligga över vissas ambitioner att skriva en egen JPEG-läsare liksom.

Permalänk
Citat:

Ursprungligen inskrivet av You
Det verkar vettigt, en annan fördel med att skriva det själv är ju att man lär sig; men det kan ligga över vissas ambitioner att skriva en egen JPEG-läsare liksom.

Jo, alltid kul att lära sig har dock inte tid att delta i själva tävlingen nu:( Men helt klart en grej som ska testas när programmeringsuppdragen minskar!

Edit: ska vi fastslå vilket filformat det ska vara nu direkt kanske?

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av KurreKula
Edit: ska vi fastslå vilket filformat det ska vara nu direkt kanske?

GIF eller PNG är lättast att implementera, och GIF bör definitivt räcka eftersom det handlar om gråskalebilder. Vill man anstränga sig ännu mindre kan man köra på BMP.

Permalänk
Citat:

Ursprungligen inskrivet av You
GIF eller PNG är lättast att implementera, och GIF bör definitivt räcka eftersom det handlar om gråskalebilder. Vill man anstränga sig ännu mindre kan man köra på BMP.

La till i reglerna att man får välja mellan gif, png och jpeg.

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase

Permalänk
Hedersmedlem
Citat:

Ursprungligen inskrivet av KurreKula
Tycker att man borde skriva allt själv? Kan ju ha en regel om att källkoden måste skickas också så att det kan kontrolleras...

Då blir det ju dock plötsligt mera beroende på vilket språk man väljer. Får man till exempel använda .net (jag kan tänka mig att många gillar c#)?

Permalänk
Citat:

Ursprungligen inskrivet av Elgot
Då blir det ju dock plötsligt mera beroende på vilket språk man väljer. Får man till exempel använda .net (jag kan tänka mig att många gillar c#)?

Vi har ju sagt nu att man inte behöver skriva allt själv men gör man inte det så får man 10% avdrag av poängen eller ska vi skippa den delen?

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase

Permalänk
Medlem

Tillåts "high ascii"? Vilken font ska användas? Får man rendera med fonten på en grafisk canvas eller ska resultatet visas upp i något speciellt program/terminal/whatever? Om jag använder PHP och outputtar HTML (som ju består av ASCII) men använder pixlar och därmed renderar en pixelperfekt bild, får jag 90% i poäng då (10% dras ju av då jag förmodligen inte skriver en egen bildinläsare).

Permalänk
Citat:

Ursprungligen inskrivet av iXam
Tillåts "high ascii"? Vilken font ska användas? Får man rendera med fonten på en grafisk canvas eller ska resultatet visas upp i något speciellt program/terminal/whatever? Om jag använder PHP och outputtar HTML (som ju består av ASCII) men använder pixlar och därmed renderar en pixelperfekt bild, får jag 90% i poäng då (10% dras ju av då jag förmodligen inte skriver en egen bildinläsare).

Du får ju inte använda dig av css eller dylikt för att positionera om det är det som du syftar du på? Fonten som printas ut är ju upp till dig. Så länge det går att kopiera den med bokstäver och klistra in i tråden. Det får alltså inte outputtas en bild som består av ascii-tecken. Förutsatt det är det ju 90% om du inte skriver en egen bildavläsare om jag uppfattat allt rätt.

High ascii får någon annan svara på

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase

Permalänk
Medlem

Tycker det borde vara standard-ASCII samt att det ska kunna cat-as till en fil och visas i lämplig texteditor.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av You
Tycker det borde vara standard-ASCII samt att det ska kunna cat-as till en fil och visas i lämplig texteditor.

7-bitars eller 8-bitars?
"Lämplig" texteditor är notepad i windows med default font?
Sorry att jag är en "pain in the rümpa".

Permalänk
Medlem

Trevligt! Kul att nån styrde upp det.

Behövs det förtydligas hur output skall ges? Ser att det skall vara text men skall det vara fil eller stdout? Antar att det inte spelar nån roll så länge det dokumenteras.

Men... hur sker bedömningen? Antal rader kod? Exekveringstid? Bedömning på kvalitet på output? Om det sistnämnda, vilka är domare? (Så man vet vem man skall smöra för?). Skämt åsido - det kan vara bra att veta hur bedömning görs innan eftersom det kan påverka vilket språk man bör välja.

Än en gång, kul att det drogs igång!

Edit: ah, ok, missade det. Folk får rösta så vi är "själva" domare. Och då handlar det förstås om kvaliteten...

Check. RTFM.

Visa signatur

Crap.

Permalänk
Hedersmedlem
Citat:

Ursprungligen inskrivet av KurreKula
Vi har ju sagt nu att man inte behöver skriva allt själv men gör man inte det så får man 10% avdrag av poängen eller ska vi skippa den delen?

Huvudsaken är att det är tydligt. Hur gör man till exempel med .net? Är det förbud på namnrymden system.drawing? Kanske även på andra?

Permalänk
Medlem

Tänker inte vara med i tävlingen, men har gjort en början på en tga-ascii-läsare nu. Resultatet kan se ut såhär:

\-\ \-\ \-\ \-\ \\\\-\\\\\ \--------- \\\\\-\\\\ \-\ \\-\ \-\

Från den här bilden:

(Dock upp och ner på grund av att TGA sparar omvänt och jag skiftar aldrig.)

Permalänk
Medlem

Kul att tävlingen blir av Men jag gillar verkligen inte idén om poängavdrag vid användande av 3e-partsbibliotek. Hela idén med ascii-art-program är väl ändå att uppgiften är tillräckligt enkelt för vem som helst att ställa upp, även om man heter kalle 14 år och bara har lekt i VB.NET i två år, men ger samtidigt utrymme för mycket avancerade lösningar.

Att implementera bildavkodare kräver i regel att man är universitetsutbildad inom datorteknik, och när inläsningen kräver _mycket_ mer jobb än själva bearbetandet känns det som att något gått snett.

I samma anda anser jag att snacket om 7 resp. 8 bitars ascii känns lika kontraproduktivt. Vem bryr sig egentligen? I slutändan kommer en människa att sitta och gå igenom resultatet ändå. Skall alla förslag som inte använder unix-radbrytningar diskas också?

Jag rekommenderar att reglerna ändras så att fler vågar sig på tävlingen. Tillåt alla tredjepartsbibliotek utan avdrag så länge dom inte implementerar en direkt översättning av bild till ascii.

Visa signatur

www.filipsprogram.tk - lite freeware
"Delight, herregud. Talang är bara förnamnet."

Permalänk

Okej, ifall inte någon är emot tar vi bort regeln om tredjepartsbibiliotek?

För att förtydliga så spelar det ingen roll font som används för en ascii-konverter. Det enda som spelar roll är att alla bokstäver är lika breda(läs på wiki!).

Det enda viktiga med output är att man får ut en text som går att kopieras in till forumet för att visas upp i code-taggar såsom GLHF i förstaposten, all textoutput är alltså tillåten så länge den är lättillgänglig. Bildoutput är ej tillåten då det då går att använda pixlar etc. som mått.

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase

Permalänk
Testpilot

Ska försöka mig på en i PHP då det är språket jag kan bäst men tänker använda mig av GD för bildinläsningen så nån annan får avgöra om det räknas som tredjepartsbibliotek eller ej

Visa signatur

Kolla gärna in min RGB-LED-ljusstake i galleriet
[Gigabyte GA-Z97MX-Gaming 5][Intel Core i5 4690K][Corsair XMS3 16GB][Asus GeForce RTX 2060 Super Dual Evo OC]

Permalänk
Medlem

TGA utan komprimering är ju ett format som alla förmodligen kan läsa in ganska enkelt. Jag ser egentligen inte riktigt meningen med att krångla till det med JPEG, PNG osv.

Permalänk
Medlem

Vad räknas egentligen som tredjepartsbibliotek? Om jag använder ramverket i .NET eller Java för att åstadkomma något, blir jag diskad då?

Permalänk
Citat:

Ursprungligen inskrivet av Wishie
Vad räknas egentligen som tredjepartsbibliotek? Om jag använder ramverket i .NET eller Java för att åstadkomma något, blir jag diskad då?

Tredjepart för mig är en part utöver microsoft och dig(i .net-fallet), vilket gör att .net skulle vara tillåtet. Men för att undvika förvirring kanske vi bör säga att man får välja fritt från bibliotek så länge biblioteket inte är speciellt anpassat för ASCII-art?

Citat:

Ursprungligen inskrivet av robino_
TGA utan komprimering är ju ett format som alla förmodligen kan läsa in ganska enkelt. Jag ser egentligen inte riktigt meningen med att krångla till det med JPEG, PNG osv.

La till TGA och BMP som format att välja mellan, vi vill trots allt ha det enkelt

Edit: uppdaterade reglerna om tredjepart. Känns som reglerna rä mer korrekta nu eller vad säger ni?

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase