ss21:mushell

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
ss21:mushell [2021/11/16 10:45]
juju_kinha
ss21:mushell [2022/02/18 10:13] (aktuell)
amichel92
Zeile 1: Zeile 1:
 +====== MuShell ======
 +Ein Projekt von Daniel Viladrich Herrmannsoerfer, Charlotte Roschka, Julia Stein, Daniel El-Assal, Anton Michel & Enver Felix Loyaza Mora
 +
 +
 ====== Kurzbeschreibung ====== ====== Kurzbeschreibung ======
 Die Inspiration für unser Projekt war die Ähnlichkeit einiger Kegelschnecken zu Walzenspieldosen.  Die Inspiration für unser Projekt war die Ähnlichkeit einiger Kegelschnecken zu Walzenspieldosen. 
Zeile 17: Zeile 21:
 In der Regel ist das Erscheinungsbild von Organismen eng mit einem evolutionären Wettbewerbsvorteil verknüpft.  In der Regel ist das Erscheinungsbild von Organismen eng mit einem evolutionären Wettbewerbsvorteil verknüpft. 
 Allerdings kann diese Maxime der Evolutionstheorie die Vielfalt an Mustern bei den oft sehr eng verwandten Kegelschnecken nicht erklären. \\ Allerdings kann diese Maxime der Evolutionstheorie die Vielfalt an Mustern bei den oft sehr eng verwandten Kegelschnecken nicht erklären. \\
-In seinem Buch „The algorithmic beauty of sea shells”, liefert Hans Meinhardt folgenden Erklärungsansatz: „[…] es ist anzunehmen, dass kein hoher selektionsdruck auf der Art des Musters liegt. +In seinem Buch „The algorithmic beauty of sea shells”, liefert Hans Meinhardt folgenden Erklärungsansatz: „[…] es ist anzunehmen, dass kein hoher Selektionsdruck auf der Art des Musters liegt. 
 Die Vielfalt deutet darauf hin, dass das Muster drastisch verändert werden kann, ohne die Spezies zu bedrohen. Die Natur darf Spielen.“\\ Die Vielfalt deutet darauf hin, dass das Muster drastisch verändert werden kann, ohne die Spezies zu bedrohen. Die Natur darf Spielen.“\\
  
Zeile 26: Zeile 30:
 In grün hervorgehoben, sieht man, dass die parallelen Linien auch teilweise durch die weißen Dreiecke verlaufen, welches auf ein geschwächtes, aber nicht vollständig abgeschaltetes Untergrund-System hindeutet.\\ In grün hervorgehoben, sieht man, dass die parallelen Linien auch teilweise durch die weißen Dreiecke verlaufen, welches auf ein geschwächtes, aber nicht vollständig abgeschaltetes Untergrund-System hindeutet.\\
 Von der Vielzahl an Mustern, die in dem Buch mathematisch beschrieben werden, möchten wir uns an dieser Stelle der conus textile widmen, da Sie eine der spannendsten Muster zeigt. Alle Kegelschnecken, zu denen auch //c. textile// gehört, haben gemeinsam, dass das Wachstum der Schale am Rand der Schalenöffnung stattfindet.  Von der Vielzahl an Mustern, die in dem Buch mathematisch beschrieben werden, möchten wir uns an dieser Stelle der conus textile widmen, da Sie eine der spannendsten Muster zeigt. Alle Kegelschnecken, zu denen auch //c. textile// gehört, haben gemeinsam, dass das Wachstum der Schale am Rand der Schalenöffnung stattfindet. 
-Der Prozess der Musterbildung ist somit sowohl ein orts- als auch zeitabhängiger Prozess (x, t). +Der Prozess der Musterbildung ist somit sowohl ein orts- als auch zeitabhängiger Prozess (x, t), Abbildung 2
 Dies ist eine weitere Ähnlichkeit zu Walzenspieldosen, deren Melodie auch durch Orts- und Zeitkoordinaten bestimmt wird.  Dies ist eine weitere Ähnlichkeit zu Walzenspieldosen, deren Melodie auch durch Orts- und Zeitkoordinaten bestimmt wird. 
 Wenn dann die Pigmentablagerung während des Schalenwachstums von mehreren oszillierenden Systemen bestimmt wird, bilden sich komplexe Muster.  Wenn dann die Pigmentablagerung während des Schalenwachstums von mehreren oszillierenden Systemen bestimmt wird, bilden sich komplexe Muster. 
Zeile 38: Zeile 42:
 ====== Prozess ====== ====== Prozess ======
  
-**Schneckenauswahl**\\+====Schneckenauswahl====
 Zunächst haben wir geeignete Kegelschnecken (conus) ausgewählt, deren Schalen geeignete Muster aufweisen.  Zunächst haben wir geeignete Kegelschnecken (conus) ausgewählt, deren Schalen geeignete Muster aufweisen. 
-Dabei haben wir uns auf //c. textile//, //c. arenatus//, und //c. nussatella// geeinigt, da diese alle „Punktstrukturen“ zeigen, die sich gut mit unserem Python Algorithmus umsetzen lassen. +Dabei haben wir uns auf //C. textile//, //C. arenatus//, und //C. nussatella// geeinigt, da diese alle „Punktstrukturen“ zeigen, die sich gut mit unserem Python Algorithmus umsetzen lassen.  
 +Die Schnecken sind in Abbildung 4 zu sehen.
  
-**Photogrammetrie (Agisoft Metashape)**\\+====Photogrammetrie (Agisoft Metashape)====
 Photogrammetrie ist ein Verfahren, in dem man Lage und Form eines Objekts durch das Zusammenfügen von Einzelaufnahmen in spezialisierten Programmen bestimmen kann. Ähnlich wie wir mit unseren Augen durch triangulation Räumlichkeit wahrnehmen können, vergleichen wir mit dem Programm Agisoft Metashape pro Schnecke zwischen 40 und 150 Fotos von verschiedenen Perspektiven aufgenommen, durch charakteristische Punkte, sogenannte Keypoints aus mehreren Fotos erkannt werden. die zusammen das 3D Modell der Schnecke erstellen.  Photogrammetrie ist ein Verfahren, in dem man Lage und Form eines Objekts durch das Zusammenfügen von Einzelaufnahmen in spezialisierten Programmen bestimmen kann. Ähnlich wie wir mit unseren Augen durch triangulation Räumlichkeit wahrnehmen können, vergleichen wir mit dem Programm Agisoft Metashape pro Schnecke zwischen 40 und 150 Fotos von verschiedenen Perspektiven aufgenommen, durch charakteristische Punkte, sogenannte Keypoints aus mehreren Fotos erkannt werden. die zusammen das 3D Modell der Schnecke erstellen. 
 Praktisch werden die Schnecken mithilfe einer Drehbühne rundum aus mehreren Winkeln fotografiert. Aus den Bildern wird ein 3D-Objekt mit der Textur der Schnecken erstellt. Praktisch werden die Schnecken mithilfe einer Drehbühne rundum aus mehreren Winkeln fotografiert. Aus den Bildern wird ein 3D-Objekt mit der Textur der Schnecken erstellt.
Zeile 49: Zeile 54:
  
  
-**3D Modellierung und Projektion (Houdini und Blender)**\\+====3D Modellierung und Projektion (Houdini und Blender)====
 Die 3D-Textur wird mittels zylindrischer Netzprojektion in eine 2D-Textur umgewandelt (Abbildung 3).  Die 3D-Textur wird mittels zylindrischer Netzprojektion in eine 2D-Textur umgewandelt (Abbildung 3). 
 Dabei werden alle Schnecken in die gleiche horizontale Orientierung gebracht, sodass auch der Schnitt der Zylinder-projezierten Textur an der Lippe der Schnecke stattfindet, die keine Muster aufweist.  Dabei werden alle Schnecken in die gleiche horizontale Orientierung gebracht, sodass auch der Schnitt der Zylinder-projezierten Textur an der Lippe der Schnecke stattfindet, die keine Muster aufweist. 
Zeile 57: Zeile 62:
 **Abbildung 3**: 2-D Textur //C. nussatella// **Abbildung 3**: 2-D Textur //C. nussatella//
  
-**Bildbearbeitung (GIMP)**\\+====Bildbearbeitung (GIMP)====
 Auf das Bild werden Filter wie Difference of Gaussians oder Sobel Edge detection angewandt, um die Punkt und Streifenmuster unabhängig von Ihrer Farbe und ohne kleineren Artefakten oder Verfärbungen hervorzuheben.  Auf das Bild werden Filter wie Difference of Gaussians oder Sobel Edge detection angewandt, um die Punkt und Streifenmuster unabhängig von Ihrer Farbe und ohne kleineren Artefakten oder Verfärbungen hervorzuheben. 
 Dieses Bild wird dann mit der Threshold-Funktion in ein binäres Bild umgewandelt um einen maximal klaren Kontrast (schwarz-weiß) zu erhalten, der es dem Algorithmus erleichtert, die Konturen der Punkte zu erkennen.  Dieses Bild wird dann mit der Threshold-Funktion in ein binäres Bild umgewandelt um einen maximal klaren Kontrast (schwarz-weiß) zu erhalten, der es dem Algorithmus erleichtert, die Konturen der Punkte zu erkennen. 
 Es werden interessante Teile des gesamten Musters ausgeschnitten, da das gesamte Muster zu viele Punkte (Noten) für einen klaren Klang enthält. Es werden interessante Teile des gesamten Musters ausgeschnitten, da das gesamte Muster zu viele Punkte (Noten) für einen klaren Klang enthält.
  
-{{ss21:conus_arenatus_poster-001.png?250}} {{ss21:conus_nussatella_poster.png?250}} {{ss21:conus_textile_poster.png?250}}+{{ss21:conus_arenatus_poster-001.png?250}} {{ss21:conus_nussatella_poster.png?250}} {{ss21:conus_textile_poster.png?250}} \\ 
 **Abbildung 4**: Plakate der 3 Schnecken mit 3-D Modell, 2-D Textur (colored, S/W), farblich markierter Ausschnitt für Sonifizierung   **Abbildung 4**: Plakate der 3 Schnecken mit 3-D Modell, 2-D Textur (colored, S/W), farblich markierter Ausschnitt für Sonifizierung  
  
-**Computer Vision (Python und openCV)** \\+ 
 +====Computer Vision (Python und openCV)====
 OpenCV ist eine Open-Source Bibliothek, die mehrere unterschiedliche computer vision (= computerbasiertes Sehen) Algorithmen enthält. Die in unserem Python Projekt verwendeten Algorithmen erlauben uns als Input Bilder zu bearbeiten, sowie Strukturen wie Punkte automatisch zu erkennen und eine Liste aller Punkte und ihrer Koordinaten zu erstellen, indem für jeden Punkt deren bounding box (umrahmende Box) erstellt wird.  OpenCV ist eine Open-Source Bibliothek, die mehrere unterschiedliche computer vision (= computerbasiertes Sehen) Algorithmen enthält. Die in unserem Python Projekt verwendeten Algorithmen erlauben uns als Input Bilder zu bearbeiten, sowie Strukturen wie Punkte automatisch zu erkennen und eine Liste aller Punkte und ihrer Koordinaten zu erstellen, indem für jeden Punkt deren bounding box (umrahmende Box) erstellt wird. 
 Die x- und y-Koordinaten des Zentrums der Box werden jeweils als die Tonhöhe für an einem bestimmten Zeitpunkt der generierten Note übernommen.  Die x- und y-Koordinaten des Zentrums der Box werden jeweils als die Tonhöhe für an einem bestimmten Zeitpunkt der generierten Note übernommen. 
 Andere Eigenschaften wie zum Beispiel die vertikale Länge der Box bestimmen die Zeitdauer der jeweils generierten Note. Andere Eigenschaften wie zum Beispiel die vertikale Länge der Box bestimmen die Zeitdauer der jeweils generierten Note.
  
-**Anpassung an eine Tonleiter**\\+====Anpassung an eine Tonleiter====
 Würde die Pixelkoordinaten des Bildes direkt als Noten übernommen werden, würden fast alle Noten von der geringen Anzahl an Noten innerhalb einer Tonleiter abweichen.  Würde die Pixelkoordinaten des Bildes direkt als Noten übernommen werden, würden fast alle Noten von der geringen Anzahl an Noten innerhalb einer Tonleiter abweichen. 
 Wir wissen jedoch, dass verschiedene Kulturen mit Rücksicht auf Harmonisierung und andere akustische Effekte jeweils verschieden Tonleitern verwenden.  Wir wissen jedoch, dass verschiedene Kulturen mit Rücksicht auf Harmonisierung und andere akustische Effekte jeweils verschieden Tonleitern verwenden. 
Zeile 82: Zeile 89:
   - Equal Temperament   - Equal Temperament
  
-**MIDIutil**\\+====MIDIutil====
 Die Tabellarisch aufgefassten Koordinaten der Punktmuster werden mit dem MIDIUtil Python Paket in eine MIDI datei umgewandelt.  Die Tabellarisch aufgefassten Koordinaten der Punktmuster werden mit dem MIDIUtil Python Paket in eine MIDI datei umgewandelt. 
  
-**GarageBand**\\+====GarageBand====
 Im letzten Schritt ist der größte Interpretationsspielraum enthalten, da wir die erhaltenen MIDI-Dateien in Garage Band nach unserem subjektiven Geschmack mit Instrumenten und Modulationen ausstatten.  Im letzten Schritt ist der größte Interpretationsspielraum enthalten, da wir die erhaltenen MIDI-Dateien in Garage Band nach unserem subjektiven Geschmack mit Instrumenten und Modulationen ausstatten. 
 Dabei haben wir Sowohl Traditionelle als auch moderne Synthetische Klänge benutzt, die das Muster der Muschel künstlerisch und pädagogisch am Besten wiedergeben können.  Dabei haben wir Sowohl Traditionelle als auch moderne Synthetische Klänge benutzt, die das Muster der Muschel künstlerisch und pädagogisch am Besten wiedergeben können. 
Zeile 126: Zeile 133:
 ====== Fazit ====== ====== Fazit ======
  
-__//conus arenatus//__+====conus arenatus====
  
 {{ ss21:arenatus_thresh_strip_bend_a_minor_natural_equal_temperament_8_400_330bpm_bass.mp3 }} {{ ss21:arenatus_thresh_strip_bend_a_minor_natural_equal_temperament_8_400_330bpm_bass.mp3 }}
Zeile 133: Zeile 140:
 Instrument: Bass \\ Instrument: Bass \\
 bpm: 330 \\ bpm: 330 \\
-\\ + 
-__//conus nussatella//__+====conus nussatella====
  
 {{ ss21:nussatella_thresh_colored_1und2_arabic_rast_on_c_modern_1_8_120.mp3 }} {{ ss21:nussatella_thresh_colored_1und2_arabic_rast_on_c_modern_1_8_120.mp3 }}
Zeile 142: Zeile 149:
 bpm: 120 \\ bpm: 120 \\
  
-{{ss21:partitur.png}}+{{ ss21:partitur.png }} 
 **Abbildung 8**: Generierte Klavier-Partitur für //C. nussatella// **Abbildung 8**: Generierte Klavier-Partitur für //C. nussatella//
  
 \\ \\
-__//conus textile//__ +====conus textile====
 {{ ss21:conus_textile_lightbox_thresh_strip_dots_balafon_1_8_400_300bpm_piano.mp3 }} {{ ss21:conus_textile_lightbox_thresh_strip_dots_balafon_1_8_400_300bpm_piano.mp3 }}
  
  • ss21/mushell.1637055942.txt.gz
  • Zuletzt geändert: 2021/11/16 10:45
  • von juju_kinha