Umfrageergebnis anzeigen: Welches Bild ist der Gewinner des Mona Lisa Contests ?

Teilnehmer
22. Du darfst bei dieser Umfrage nicht abstimmen
  • Dead Orks Mona Lisa

    1 4,55%
  • DFYX - Variante I

    0 0%
  • DFYX - Variante II

    0 0%
  • DFYX - Variante III

    0 0%
  • DFYX - Variante IV

    4 18,18%
  • Dingsi - Variante I

    1 4,55%
  • Dingsi - Variante II

    0 0%
  • Dingsi - Variante III

    6 27,27%
  • Dingsi - Variante IV

    8 36,36%
  • Mannis Mona Lisa

    2 9,09%
Ergebnis 1 bis 15 von 15

Thema: [Contest] Mona Lisa im Forum #3 - Bilderwahl und Sourcecode

  1. #1

    [Contest] Mona Lisa im Forum #3 - Bilderwahl und Sourcecode

    Werte Combatanten, wertes Publikum, es ist so weit, der Contest ist abgeschlossen, und es findet im Folgenden die Wahl des besten Mona Lisa Bildes statt. Zur wahl stehen eine ganze Reihe von Bildern, von denen jeder ein einziges als persoenlichen Favoriten waehlen kann. Die Bilder sind in alphabetischer Reihenfolge:

    Dead Ork
    DFYX - Variante I
    DFYX - Variante II
    DFYX - Variante III
    DFYX - Variante IV
    Dingsi - Variante I
    Dingsi - Variante II
    Dingsi - Variante III
    Dingsi - Variante IV
    Manni

    Es werden dabei keine Bewertungskriterien vorgegeben. Jeder entscheidet subjektiv, welches Bild ihm am besten gefaellt.

    Desweiteren soll dieser Thread dazu dienen, den zweiten Teil des Contests einzuleiten, in dem die Sourcecodes vorgestellt werden. Ich wuerde also jeden Teilnehmer bitten, den Sourcecode zu den jeweiligen Bildern hier im Thread zu posten, samt einer kleinen Erklaehrung des zu Grunde liegenden Algorithmus. Die Kriterien zur Bewertung der Quelltexte und die entsprechende Umfrage wird in einem gesonderten Thread zum Wochenende bekanntgegeben.

    So .. und nun viel Spass beim Bewerten und dem Veroeffentlichen der Quelltexte ...

    Gruss Ineluki

  2. #2
    DFYX - Variante IV

    Das war mehr ein Ausschlussverfahren:
    DFYX - Variante I ist ja nur ein Fehlversuch ^^
    DFYX - Variante III ist einfach nur DFYX - Variante II monochrom
    Dingsi - aus Prinzip nicht, weil er es sich zu einfach gemacht hat, IMO, und außerdem meine Rauten geklaut hat ;_;
    Übrig blieben am Schluss noch DFYX - Variante IV und Mannis Mona Lisa, und da hat DFYX' Version irgendwie einfach n bisschen besser ausgesehen ^^

    PS: Und wehe ich sehe am Schluss noch ne Stimme für mich

    PPS: Eigentlich graut es mir davor, diesen schrecklich unsauberen, unkommentierten, unperformanten (sry Fnord-Team ;_; ) und berhaupt unschönen Code zu veröffentlichen, aber muss ja ^^

    [EDIT]
    @drunken monkey: Hätte dein "Bild" den Vorgaben entsprochen kannste sicher sein wäre meine Stimme dein gewesen. Echt: Hut ab, grandiose Leistung

    Geändert von dead_orc (24.05.2006 um 16:28 Uhr)

  3. #3
    Ziemlich klar Dingsis vierter Versuch, imo einfach das beste. Bin aber schon ziemlich gespannt auf die Codes. ^^ Keine Ahnung, wie man das so schnell hinkriegen kann, Dingsi erstaunt mich immer wieder! o_O

    Hab's btw auch selber versucht, geniales Konzept überlegt, Detailgrad 10-Mal besser als alles andere, im Endeffekt haben sich allerdings zwei klitzekleine Fehler eingschlichen! ^^'' Der erste betraf ein paar Zeichen, die weiß statt schwarz waren, keine Ahnung, wieso. Der zweite...
    Naja, sagen wir's so: immerhin bin ich ziemlich sicher der Erste, der die Fehlermeldung
    Zitat Zitat
    Der Text, den du eingegeben hast, besteht aus 1193577 Zeichen und ist damit zu lang. Bitte kürze den Text auf die maximale Länge von 20000 Zeichen.
    erhalten hat! o_O Ich habe den Ansatz verfolgt, in normal breiter Schrift das Bild mit lauter "i"s zu erzeugen, wodurch ich 1,5 Mal so viele wie beim Originalbild in eine Zeile gebracht hätte. Dadurch wären 3 Zeichen auf jede Farbangabe gekommen, die ich dann noch mit Übergang zum nächsten belegen wollte, also jedes dritte Zeichen die Originalfarbe, die restlichen ein Gemisch zwischen der Originalfarbe links und der rechts.

    Ich kann auch gern den Quellcode posten, hier ist er: Mein irre geniales Prog mit kleinem Schönheitsfehler ^^' (Ich kann nur Java gut genug, um sowas zu machen.)

    Ich hab's dann, nachdem ich (nach gut 3 Minuten Ladezeit des Forums ) die Fehlermeldung erhalten habe, noch selber in HTML-Code umgewandelt und ins Forenlayout geworfen. Ergebnis: bezüglich Breite waren meine Berechnungen absolut korrekt, hat genau gepasst, und auch so ist's eine Augenweide geworden!
    Beweisfoto in Originalgröße

    Dann noch einen Versuch starten, nur um eh gegen den Meister zu verlieren, wollte ich nicht.

    Naja, schade dass es bei mir nicht geklappt hat, aber eine tolle Idee, das mit dem Contest!

    Edit: Eine öffentliche Umfrage? o_O Pikant! XD
    @ Ork: Warum, deins war doch auch ziemlich gut! o_O

  4. #4
    Dingsi IV. Gefällt mir irgendwie rein visuell am besten.

  5. #5
    Dingsis drittes und viertes sehen am besten aus.
    Ich lass random()*2 entscheiden, welches ich wähle.

    Geändert von nudelsalat (23.05.2006 um 19:50 Uhr)

  6. #6
    Ich hab ausversehen für Dingsi-III gestimmt, aber eigentlich wollte ich DFYX-IV nehmen. Ist einfach qualitativ das beste. ^^

    So, zu den Sourcecodes:

    Dingsi - I / Dingsi - I - Xtreme \m/
    Der Algorithmus ist schlicht. Ich such mir alle Zeilen die mit "<font" beginnen raus, lösche jede dritte, gehe alle FONT-Tags durch, lösche jedes drittes und mach BBCode draus.
    Sourcecode-technisch ist die kleine Version hiervon übrigens eindeutig mein Favorit. ^^

    Dingsi - II / Dingsi - II - Xtreme \m/
    Eigentlich genauso schlicht. Und unglaublich fies.
    Ich filtere genauso wie in I alle Zeilen mit "<font" raus und verwandele anschließend die Daten in ein Pixel-Array, welches ich mit Hilfe von RMagick verkleinere. Hey, warum das Rad neu erfinden?

    Dingsi - III
    Das selbe wie bei II bis auf diese beiden Zeilen:
    Code:
    image.background_color = '#411A12'
    image = image.emboss.wave(20, 150)
    Dingsi - IV
    Größtenteils funktioniert das ganze genauso wie II, nur lese ich alle Pixel doppelt ein. Das heißt das Bild wird intern doppelt so breit verarbeitet -> Beim Verkleinern ist alles feiner.

    Heil the Ruby Magic!

    P.S.: Eigentlich solltet ihr mich nicht mehr ehren als Microsoft. Die entscheidenden Punkte (Doppelte Qualität und besseres Bild durch Rauten) habe ich von DFYX und dead_orc erklaut. :/

    P.P.S.: Respekt, monkey, die Idee ist echt gut. Sieht auch ziemlich klasse aus. Schade, dass es nicht funktioniert. Meine Stimme hät ich dir gegeben.

    Geändert von Dingsi (23.05.2006 um 19:51 Uhr)

  7. #7
    Danke für das Lob, Ork und Dingsi! Aber mit fast 60 Mal mehr Zeichen als vorgegeben ist das kein wirkliches Kunststück mehr. ^^''
    Zitat Zitat von Drachendingsbumstyp
    Ich hab ausversehen für Dingsi-III gestimmt, aber eigentlich wollte ich DFYX-IV nehmen.
    Jaaaaaaaa~, natürlich!
    Zitat Zitat
    Hättest wenigstens einen Hacker oder kleinen Bruder erfinden können! P.S.: Eigentlich solltet ihr mich nicht mehr ehren als Microsoft. Die entscheidenden Punkte (Doppelte Qualität und besseres Bild durch Rauten) habe ich von DFYX und dead_orc erklaut. :/
    Nicht so bescheiden! ^^ Hier geht's schließlich um's Ergebnis, nicht um den Code. Und wenn du schon so schrecklich fair und bescheiden bist, hättest halt die Sachen nicht klauen dürfen!

    Aber langsam sieht das ohnehin verdächtig nach Deckmantel aus, "aus Versehen" für sich selbst stimmen, schamlos klauen und dann auf bescheiden spielen,...

    Also ich find's weiterhin toll. Auch wenn der Code nach ziemlich wenig Arbeit ausseht, sowas muss man auch erstmal können! (Ich muss es wissen, ich kann's nicht! Wahrscheinlich wäre meins auch viel einfacher gegangen, mit irgendeiner mir unbekannten Klasse, oder so. )

  8. #8
    Öhm ja. Mein Code findet sich hier. Ich hatte zuerst eine Version mit den image-Funktionen von PHP, aber ich war mir nicht sicher, ob das erlaubt war ^^

    Ich weiß noch nicht, wofür ich stimme. Mal schaun

  9. #9
    Eigentlich war Dingsi - II mein Favorit ... allerdings kam dann doch noch DFYX mit IV heraus ... und das fand ich einen Tick besser, weil die Haare im Uebergang nicht so kantig waren ...

  10. #10
    Zitat Zitat von General Jack
    Könnt ihr euch so was eigentlich in C/C++ vorstellen/realisieren?
    Ja. Es wär nur unnötiger Aufwand, wenn mans in Ruby bzw. $SCRIPTSRACHE in einem hunderstel der Zeilen machen kann.

  11. #11
    So, mein Code, mit dem man praktisch alles erzeugen kann:

    PHP-Code:
    <?php
      $type 
    $_GET['type'];
      if(
    $type == 'bb')
      {
    ?>
    [font="Courier New"][size=1]
    <?php
      
    }
      else
      {
    ?>
    <body bgcolor=#000000>
    <font size="-3" color="#ffffff" face="Courier New">
    <?php
      
    }
      
    $file file_get_contents('monalisa.htm');

      
    preg_match_all('#<font color=\#(\w{2})(\w{2})(\w{2})>\w{2}</font>#i'$file$cPREG_SET_ORDER);

      for(
    $row 0$row 200$row += 3)
      {
        for(
    $col 0$col 153$col += 1.5)
        {
          for(
    $i 1$i <= 3$i++)
          {
            
    $color[$i] = hexdec($c[floor($row 153 $col)][$i]);
            
    $color[$i] += hexdec($c[floor($row 153 $col 1)][$i]);
            
    $color[$i] += hexdec($c[floor($row 153 $col 2)][$i]);
            
    $color[$i] += hexdec($c[floor(($row 1) * 153 $col)][$i]);
            
    $color[$i] += hexdec($c[floor(($row 1) * 153 $col 1)][$i]);
            
    $color[$i] += hexdec($c[floor(($row 1) * 153 $col 2)][$i]);
            
    $color[$i] += hexdec($c[floor(($row 2) * 153 $col)][$i]);
            
    $color[$i] += hexdec($c[floor(($row 2) * 153 $col 1)][$i]);
            
    $color[$i] += hexdec($c[floor(($row 2) * 153 $col 2)][$i]);
            
    $color[$i] = sprintf('%02X'$color[$i] / 9);
          }
          if(
    $_GET['mono'])
            
    $color[1] = $color[2] = $color[3] = sprintf('%02X', (hexdec($color[1]) + hexdec($color[2]) + hexdec($color[3]))/3);
          if(
    $type == 'bb')
            echo 
    '[color=#'.$color[1].$color[2].$color[3].']'.substr($color[1], 1).'[/color]';
          else
            echo 
    '<font color=#'.$color[1].$color[2].$color[3].'>'.substr($color[1], 1).'</font>';
        }
        echo 
    "<br>\n";
      }

      if(
    $type)
      {
    ?>
    [/size][/font]
    <?php
      
    }
      else
      {
    ?>
    </font>
    </body>
    <?php
      
    }
    ?>
    Das is der Code für Version IV. Für die niedrigauflösenden Versionen müssen folgende Zeilen geändert werden:

    Zeile 22: for($col = 0; $col < 153; $col += 3)
    Zeile 40: echo '[color=#'.$color[1].$color[2].$color[3].']'.$color[1].'[/color]';
    Zeile 42: echo '<font color=#'.$color[1].$color[2].$color[3].'>'.$color[1].'</font>';

    Falls sich jemand spontan in die grün und blau geschlagene Mona Lisa verliebt hat, muss noch folgendes geändert werden:

    Zeile 35: $color[$i] = dechex($color[$i] / 9);

    Der Rest wird komplett per GET Parameter übergeben.

  12. #12
    Dingsi IV gewählt hab.

    War aber ne extreme entscheidung zwischen Dingsi IV, dead_orc und DFYX IV. Beim genauerem Vergleich hab ich dann dingsi gewählt.

    EDIT: Was eventuell als nächster Schritt lustig wär in meinen Augen, ein Programm zu schreiben, das das mit jedem bild machen kann. Also wo man nur das Bild sozusagen angeben muss und des Prog tut das hier so ganz von allein. Da ich mich mit programmiertechnischen dingen aber nichtz auskenne hab ich keine ahnung von sowas. Aber lustig wär es schon find ich

    Geändert von Chaik (25.05.2006 um 14:38 Uhr)

  13. #13
    Damit erklaehre ich Dingsi zum Gewinner des Mona Lisa Bild Contests

    Er lebe HOCH HOCH HOCH usw

    Ein weiteres Lob geht natuerlich an alle, die ebenfalls eingesendet haben, oder sich zumindest muehe gegeben haben. Alle Einsendungen entsprachen den vorgegebenen Kriterien, obwohl sie das Forum ganz schoen geknechtet haben ^__-

    Damit geht nun der Contest in die zweite Runde, dem bewerten des Codes. Ich gebe den anwesenden noch ueber das Wochenende Zeit die Codes nachzuvollziehen, auszutesten, oder Dokumentationen / Kommentare / Erklaehrungen einzureichen. Anfang der naechsten Woche wird dann die Umfrage nach dem besten Script gestartet.

    Schoenen Gruss, Ineluki

  14. #14
    Proud to be last \o/
    Leider hab ich ja dann doch noch ne Stimme bekommen. Wäre viel cooler gewesen mit ohne Stimmen auszugehen

    Eigentlich hab ich keinen Bock mir die Codes alle durchzulesen. Ich werde einfach wieder für DFYX stimmen (da Dingsi es sich noch immer zu einfach gemacht hat und geklaut hat)

    BTW: Fragt mich nicht, warum das Forum meine Zeilenumbrüche nicht in <br>s umgewandelt hat und deshalb mein Bild bei höheren Auflösungen doppelt ist. Wie im Output und im Code zu sehen ist, sind eigentlich \n's da o.o

    Geändert von dead_orc (27.05.2006 um 11:16 Uhr)

  15. #15
    Yay ^^
    Ich danke zuallererst meiner Familie und meinen Freunden hier (Hallo #progforum!), dem Forum und vor allem Matz, dafür dass er diese wundervolle Sprache geschaffen hat! Und natürlich danke ich der Acada.. äeh, den wunderbaren Usern dieses Forums.

    Aber auch DFYX und dead_orc müssen ohne Frage nocheinmal erwähnt werden, ohne die ich es niemals geschafft hätte. Nur durch das Zusammenklauen aus ihren Bildern ist mein Kunstwerk so geworden wie es ist. :D

    Nyo, danke. Und Glückwunsch an den Zweitplatzierten.. he.. moment, das bin ja ich. ^^" Okay dann Glückwunsch an DFYX, Manni und dead_orc.

    (Irgendwie ists ja doch ein bisschen unfair, dass DFYX und ich jeweils mit vier Bildern angetreten sind, oder?)
    0123456789abcdef
    Ho.

    Geändert von Dingsi (27.06.2006 um 18:31 Uhr)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •