knp.de

– Zufällige Farben mit Mathematica

Zufällige Farben mit Mathematica

03/01/2015

Dieses Jahr habe ich mir vorgenommen, Mathematica zu erlernen. In diesem Blog gibt es kleine Erkenntnisse.

In diesem ersten Versuch habe ich probiert eine Stelle aus dem Einführungsvideo nachzubauen: ein Foto von der Kamera wird aufgenommen und mit kleinen Kästchen in zufälligen Farben hinterlegt.

Das Bild aufnehmen

Das Bild aufzunehmen ist einfach:

CurrentImage[]

Das Ergebnis ist ein farbiges Foto:

ursprüngliches Foto

Damit die zufälligen Farben besser zur Geltung kommen, soll das Bild zunächst in Graustufen umgerechnet werden:

ColorConvert[%, "Grayscale"]

Das Ergebnis ist entsprechend:

Foto in Graustufen

Um später das Bild mit zufälligen Farben anzureichen, muss das Ergebnis wieder in den RGB-Farbraum umgewandelt werden:

ColorConvert[%, "RGB"];

Durch das Semikolon am Ende wird verhindert, dass das Foto erneut ausgegeben wird (es hat sich ja sichtbar nichts geändert).

Das Bild zerlegen und einfärben

Mit dem folgenden Befehl kann ein Bild in Teilbilder unterteilt werden. Jedes Bild ist 20 Pixel breit und hoch:

ImagePartition[%, 20]

zerlegtes Bild

Um die Teilbilder zufällig einzufärben, werden zufällig drei Farbanteile ermittelt (rot, grün und blau) und die Pixel der Bilder mit den entsprechenden Werten multipliziert:

Map[ImageMultiply[#, RandomReal[{0, 1}, 3]] &, %, {2}]

eingefärbte Teilbilder

Bild zusammensetzen

Das Zusammensetzen kann ebenfalls mit einem einzigen Befehl erreicht werden:

ImageAssemble[%]

zusammengesetztes Bild

Das zusammengesetzte Bild kann mit Export gespeichert werden.


Comments

Would you like to correct, expand or correct an entry? Please send an e-mail to timm@knp.de. I will gladly publish interesting contributions on this site.