In de bossen van fractale graphics
Dmitry Shakhov, freelancer, Moskou
Fractals trekken de aandacht, fascineren en hypnotiseren. Velen zijn echter van mening dat dergelijke afbeeldingen slechts patronen zijn die alleen goed zijn op een beeldscherm of als toegepaste hulpmiddelen bij het ontwerpen van verschillende gedrukte producten. Tegelijkertijd beseffen maar weinig mensen dat deze eenvoud slechts schijn is. Fractale graphics zijn eigenlijk behoorlijk complex en zijn het resultaat van een samensmelting van wiskunde en kunst. Tegenwoordig zijn fractals een van de meest veelbelovende en zich snel ontwikkelende soorten computergraphics.
Laten we, voordat we verder gaan met de beschouwing van fractale graphics, eens kijken wat de essentie van computer- of ‘machine’-graphics is, evenals de algemeen aanvaarde classificatie van computergraphics (Computer Graphics, CG). Dit concept verscheen relatief recent, in de jaren zestig van de vorige eeuw, toen elektronische computerapparatuur werd uitgevonden. De term ‘computergraphics’ wordt in verschillende bronnen verschillend geïnterpreteerd. Sommigen definiëren het als een gebied van de computerwetenschappen dat zich bezighoudt met de productie van verschillende afbeeldingen (tekeningen, tekeningen, animaties) op een computer. Computergraphics omvat alle soorten en vormen van beeldweergave die toegankelijk zijn voor de menselijke waarneming op een beeldscherm of als kopie op externe media (papier, stof, film, enz.). In andere bronnen wordt computergraphics een speciaal vakgebied van de informatica genoemd dat methoden en middelen bestudeert voor het creëren en verwerken van afbeeldingen met behulp van software- en hardwarecomputersystemen.
In de brede zin van het woord is computergraphics alles waarvoor een visueel, figuratief weergavemedium op een monitor wordt gebruikt. Als we het concept beperken tot praktisch gebruik, kunnen computergraphics worden opgevat als het proces van het creëren, verwerken en weergeven van verschillende soorten afbeeldingen met behulp van een computer.
Afhankelijk van de methode van beeldvorming worden computergraphics onderverdeeld in raster, vector en fractal (Fig. 1).
Het belangrijkste en kleinste element van een rasterafbeelding is een punt. Wanneer een afbeelding zich in een softwareomgeving op het scherm bevindt, wordt dit een pixel genoemd. Elke pixel in een rasterafbeelding heeft twee kenmerken: plaatsing en kleur. Hoe hoger het aantal pixels en hoe kleiner hun afmetingen, hoe beter de afbeelding eruit ziet. Grote hoeveelheden gegevens vormen een grote uitdaging bij het gebruik van rasterafbeeldingen. Het tweede nadeel van rasterafbeeldingen is dat ze niet kunnen worden vergroot om details te bekijken. Omdat de afbeelding uit punten bestaat, zorgt het vergroten van de afbeelding ervoor dat de punten groter worden en op een mozaïek lijken, waardoor er in dit geval geen extra details zichtbaar zijn. Bovendien wordt door het vergroten van de rasterpunten de afbeelding visueel vervormd en korrelig gemaakt. Dit effect wordt pixelatie genoemd.
Rijst. 1. Soorten computergraphics: a - raster; b - vector; c - fractaal
In vectorafbeeldingen is het belangrijkste element van de afbeelding een lijn (het maakt niet uit of deze recht of gebogen is). Natuurlijk zijn er ook lijnen in rasterafbeeldingen, maar daar worden ze beschouwd als combinaties van punten. Voor elk lijnpunt in rasterafbeeldingen worden een of meer geheugencellen toegewezen (hoe meer kleuren de punten kunnen hebben, hoe meer cellen eraan worden toegewezen). Hoe langer de rasterlijn, hoe meer geheugen deze in beslag neemt. In vectorafbeeldingen hangt de hoeveelheid geheugen die een lijn in beslag neemt niet af van de grootte van de lijn, aangezien de lijn wordt weergegeven als een formule, of beter gezegd, als verschillende parameters. Wat we ook met deze regel doen, alleen de parameters die in de geheugencellen zijn opgeslagen, veranderen. Het aantal cellen voor elke regel blijft ongewijzigd.
Rijst. 2. Een voorbeeld van fractaliteit in de natuur: Romanescu-kool
Een afbeelding in vectorformaat is eenvoudig te bewerken: deze kan zonder verlies worden geschaald, geroteerd en vervormd. Het simuleren van driedimensionaliteit in vectorafbeeldingen is ook eenvoudiger dan in rasterafbeeldingen. Feit is dat elke transformatie feitelijk als volgt wordt uitgevoerd: het oude beeld (of fragment) wordt gewist en er wordt een nieuw beeld voor in de plaats gebouwd. De wiskundige beschrijving van een vectortekening blijft hetzelfde: alleen de waarden van sommige variabelen, zoals coëfficiënten, veranderen.
Fractale afbeeldingen zijn relatief jong vergeleken met raster- en vectorafbeeldingen. De basis van fractale afbeeldingen is fractale geometrie, waarmee men verschillende soorten inhomogeniteiten in de natuur wiskundig kan beschrijven. De concepten "fractal", "fractale geometrie" en "fractale graphics" verschenen eind jaren zeventig. Het woord 'fractal' is afgeleid van het Latijnse fractus en betekent 'bestaande uit fragmenten'. Wiskundige Benoit Mandelbrot stelde in 1975 voor om te verwijzen naar onregelmatige maar op zichzelf gelijkende structuren. De geboorte van fractale geometrie wordt meestal geassocieerd met de publicatie in 1977 van het boek “The Fractal Geometry of Nature” van Benoit Mandelbrot. Mandelbrot's definitie van een fractal: Een fractal is een structuur die bestaat uit delen die in zekere zin vergelijkbaar zijn met het geheel. Zelfgelijkenis is een van de belangrijkste eigenschappen van fractals. Fractal graphics zijn dus een soort computergraphics die tot op zekere hoogte gebruik maken van op zichzelf gelijkende structuren (met andere woorden: fractals). Vervolgens zullen we praten over wat zelf-gelijkenis is en waar fractals in de natuur voorkomen.
Wat wordt bedoeld met zelfgelijkenis? De Romanescu-kool uit Italië is het meest karakteristieke voorbeeld van een fractaal object in de natuur. Haar koolknoppen groeien in de vorm van een soort spiraal (Fig. 2), die logaritmisch wordt genoemd, en het aantal koolknoppen valt samen met het Fibonacci-getal. Fibonacci-getallen zijn de elementen van de getallenreeks 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765 , 10946 ..., waarbij elk volgend getal gelijk is aan de som van de twee voorgaande getallen. Ze kregen hun naam ter ere van de middeleeuwse wiskundige Leonardo van Pisa (bekend als Fibonacci). Elk deel van de Romanescu-koolelementen heeft dezelfde vorm als de hele krop. Deze eigenschap herhaalt zich met regelmaat op verschillende schaalniveaus. In feite is deze kool een natuurlijke fractal. Dat wil zeggen, hoe we de fractal ook vergroten, na elke stap zullen we dezelfde vorm zien die kenmerkend is voor deze fractal als geheel. Er zijn dus nog twee concepten die nauw verwant zijn aan fractals: iteratie en recursie. Recursie is het proces waarbij elementen op dezelfde manier worden herhaald. Iteratie is, simpel gezegd, de herhaalde toepassing van een wiskundige bewerking.
In feite heeft een zeer groot aantal natuurlijke objecten fractale eigenschappen - slechts weinig mensen denken erover na. Je kunt de wolken in de lucht bewonderen, de rollende golven van de branding, door het bos wandelen - en niet eens vermoeden dat wiskunde de basis is van deze schoonheid! Ja Ja! Benoit Mandelbrot begon onderzoek te doen naar de fractale eigenschappen van natuurlijke objecten. Het blijkt dat ondanks alle complexiteit van natuurlijke objecten, veel ervan in principe worden beschreven door vrij eenvoudige wiskundige formules. Hoewel fractals in hun pure vorm niet in de natuur voorkomen. Wat we waarnemen zijn zogenaamde stochastische fractals. Dat wil zeggen fractals die worden verkregen als u willekeurig een van de parameters ervan wijzigt in een iteratief proces. Een ‘zuivere’ fractaal kan tot in het oneindige worden benaderd, omdat deze een oneindige recursie heeft, maar dit kan niet worden gezegd over stochastische fractals.
Opgemerkt moet worden dat het woord ‘fractal’ geen wiskundige term is en geen algemeen aanvaarde, strikte wiskundige definitie heeft. Het kan worden gebruikt als het betreffende figuur een van de volgende eigenschappen heeft:
- heeft een niet-triviale structuur op alle schalen - dit is hoe een fractaal verschilt van reguliere figuren (zoals een cirkel, een ellips, een grafiek van een vloeiende functie): als we een klein fragment van een reguliere figuur op een zeer grote schaal beschouwen schaal, het ziet eruit als een fragment van een rechte lijn. Voor een fractal leidt het vergroten van de schaal niet tot een vereenvoudiging van de structuur, dus op alle schalen zullen we een even complex beeld zien;
- is op zichzelf lijkend of ongeveer op zichzelf lijkend;
- heeft een fractionele metrische dimensie of een metrische dimensie die de topologische dimensie overschrijdt.
Om een fractal te construeren, is het bovendien noodzakelijk om rekening te houden met de begintoestand en de formule die deze beschrijft - de zogenaamde initiële set, die via een bepaald mechanisme wordt doorgegeven dat de weergave ervan veroorzaakt en de weergegeven set toevoegt aan de fractal. originele. Dit proces wordt iteratie genoemd. Zo wordt na verschillende vergelijkbare, relatief eenvoudige handelingen een zeer complex beeld verkregen. Bij het verkrijgen van een fractal zijn twee punten belangrijk: de initiële set en het transformatiemechanisme. Afhankelijk van het constructie-algoritme worden fractals verdeeld in lineair en niet-lineair.
Algoritmen voor het construeren van lineaire fractals worden bepaald door lineaire functies. Daarin is zelfgelijkenis aanwezig in de eenvoudigste vorm: elk deel herhaalt het geheel.
Niet-lineaire fractals worden gespecificeerd door een niet-lineaire groeifunctie, dat wil zeggen door vergelijkingen die een graad hoger zijn dan de eerste. In hen zal de gelijkenis met zichzelf complexer zijn: elk onderdeel is niet langer exact, maar een vervormde kopie van het geheel.
Een van de eenvoudigste voorbeelden van een lineaire fractal is de Koch-curve (1904, Duitse wiskundige Helga von Koch).
Er is een eenvoudige recursieve procedure (het verkrijgen van op zichzelf gelijkende delen van een fractal) voor het genereren van fractale curven in een vlak. Laten we een willekeurige onderbroken lijn definiëren met een eindig aantal schakels, een zogenaamde generator. Vervolgens vervangen we elk segment daarin door een generator (meer precies, een onderbroken lijn vergelijkbaar met een generator). In de resulterende onderbroken lijn vervangen we elk segment opnieuw door een generator. Als we doorgaan tot in het oneindige, krijgen we in de limiet een fractale curve. In afb. Figuur 3 toont verschillende stappen van deze procedure voor de Koch-curve.
Een van de eersten die niet-lineaire fractals beschreef was de Franse wiskundige Gaston Julia in 1918. Maar in zijn werk ontbraken afbeeldingen van de sets die hij bestudeerde en de term ‘fractal’.
Tegenwoordig hebben computers het mogelijk gemaakt om afbeeldingen van Julia-sets te verkrijgen (Fig. 4 A), die samen met de Mandelbrot-sets (Fig. 4 B) zijn nu de bekendste kwadratische fractale structuren.
Beide soorten fractals ontstaan als resultaat van de implementatie van het eenvoudigste niet-lineaire algoritme op het complexe vlak.
Hier is de methode voor het construeren van afbeeldingen gebaseerd op het principe van overerving van de zogenaamde ouders van de geometrische eigenschappen van erfgenaamobjecten. De constructie van een fractaal patroon wordt uitgevoerd met behulp van een algoritme of door automatisch afbeeldingen te genereren met behulp van berekeningen met behulp van specifieke formules. Het veranderen van waarden in algoritmen of coëfficiënten in formules leidt tot aanpassingen van deze afbeeldingen. Het belangrijkste voordeel van fractalafbeeldingen is dat alleen algoritmen en formules in het fractalafbeeldingsbestand worden opgeslagen.
Een fractal is een object waarvan de individuele elementen de eigenschappen van bovenliggende structuren erven. Omdat een meer gedetailleerde beschrijving van elementen op kleinere schaal plaatsvindt met behulp van een eenvoudig algoritme, kan een dergelijk object met slechts een paar wiskundige vergelijkingen worden beschreven.
Fractals maken het mogelijk hele klassen van afbeeldingen te beschrijven, waarvan de gedetailleerde beschrijving relatief weinig geheugen vereist. Tegelijkertijd zijn fractals slecht toepasbaar op afbeeldingen buiten deze klassen.
Softwaretools voor het werken met fractalafbeeldingen zijn ontworpen om automatisch afbeeldingen te genereren door middel van wiskundige berekeningen. Dat is de reden waarom fractale afbeeldingen niet worden herkend door computers of gewone kunstenaars, omdat een programma zogenaamd alles voor een persoon doet. In feite is het proces van het werken met fractal graphics, hoewel geautomatiseerd, toch volledig creatief: door formules te combineren en variabelen te veranderen, kun je verbluffende resultaten bereiken en de meest gedurfde artistieke ideeën realiseren. Het creëren van een fractal artistieke compositie gaat niet over tekenen of ontwerpen, maar over programmeren.
Door de kleur van fractale figuren te veranderen en te combineren, kun je afbeeldingen van de levende en levenloze natuur (bijvoorbeeld boomtakken of sneeuwvlokken) simuleren, en van de resulterende figuren een 'fractale' compositie creëren. Fractale afbeeldingen zijn, net als vector- en 3D-afbeeldingen, computationeel. Het belangrijkste verschil is dat het beeld is opgebouwd met behulp van een vergelijking of een systeem van vergelijkingen. Om alle berekeningen in het computergeheugen uit te voeren, is daarom niets anders nodig dan de formule.
Alleen door de coëfficiënten van de vergelijking te veranderen, kun je een heel ander beeld krijgen. Dit idee heeft toepassing gevonden in computergraphics vanwege de compactheid van het wiskundige apparaat dat nodig is voor de implementatie ervan. Met behulp van verschillende wiskundige coëfficiënten kunt u dus lijnen en oppervlakken met zeer complexe vormen definiëren.
In computergraphics is fractale geometrie onmisbaar voor het genereren van kunstmatige wolken, bergen en zeeoppervlakken. Dankzij fractale afbeeldingen is er zelfs een manier gevonden om complexe niet-Euclidische objecten, waarvan de afbeeldingen sterk lijken op natuurlijke objecten, effectief te implementeren. Dat is eigenlijk de reden dat dit artikel zo’n titel heeft gekregen. Veel natuurlijke objecten hebben fractale eigenschappen, zodat ze eenvoudig op een computer kunnen worden gemaakt met behulp van fractale afbeeldingen. Bij het ontwikkelen van een computerspel is het bijvoorbeeld niet nodig om het bos, de bergen, de wolken, enz. elke keer opnieuw te tekenen. Deze objecten lijken op zichzelf en kunnen daarom eenvoudig door software worden gegenereerd op basis van wiskundige formules. Door enkele parameters van de oorspronkelijke formule toe te voegen of te wijzigen, kunt u een verbazingwekkende verscheidenheid aan natuurlijke objecten verkrijgen. Fractals op een computerscherm zijn patronen die door de pc zelf zijn geconstrueerd volgens een bepaald programma. Naast fractal schilderen zijn er fractal animatie en muziek.
Tot slot zou ik het volgende willen opmerken: fractale graphics zijn een van de meest ongebruikelijke en veelbelovende gebieden in computergraphics. De resultaten die met zijn hulp kunnen worden verkregen, verbazen zelfs de meest geavanceerde kenners van computerkunst. Zo bevatten afbeeldingen die zijn gemaakt met behulp van fractalgeneratorprogramma's soms absoluut fantastische en ongewone landschappen (Fig. 5), waar surrealistische kunstenaars zelfs nooit van hadden gedroomd. Omgekeerd kunnen we met behulp van fractale afbeeldingen met verbazingwekkende nauwkeurigheid weergeven wat we zien in de wereld om ons heen. De wereld van fractals is echt geweldig!
Wordt vervolgd.
Tegenwoordig ontwikkelen fractal graphics zich zeer snel en zijn ze erg populair en veelbelovend. De basis van fractal graphics is geometrie. De belangrijkste methode voor het maken van afbeeldingen is het principe van overerving van de geometrische eigenschappen van erfgenamen.
Een fractal is een structuur die bestaat uit delen die op het geheel lijken. De belangrijkste eigenschap is gelijkvormigheid. Objecten worden zelfgelijkend genoemd als delen van het object, na vergroting, op elkaar blijven lijken.
Het midden van een fractale figuur is het eenvoudigste element: een driehoek met gelijke zijden, die "fractal" wordt genoemd. In het midden van de zijden van de driehoek worden dezelfde gelijkzijdige driehoeken gebouwd, die gelijk zijn aan een derde van de zijde van de oorspronkelijke figuur. Vervolgens worden op de driehoeken van de eerste generatie driehoeken van de tweede generatie gebouwd, maar met een zijde gelijk aan een negende van de zijde van de centrale driehoek. Dit proces kan een oneindig aantal keren worden voortgezet.
Door de kleuren van fractale figuren te veranderen en te combineren, is het mogelijk levende of levenloze natuurlijke beelden te ontwerpen, zoals sneeuw of bomen, takken, bladeren. Maak een fractale compositie. Fractale grafische afbeeldingen bestaan uit vergelijkingen of een systeem van vergelijkingen. Fractale afbeeldingen zijn berekeningen. Om afbeeldingen van dergelijke afbeeldingen te produceren, hoeft de computer alleen de formule of het algoritme op te slaan waarmee de berekeningen worden gemaakt. Door de coëfficiënten van de vergelijking te vervangen, kunnen we een heel ander beeld creëren, en als we meerdere coëfficiënten tegelijk gebruiken, kunnen we lijnen of een oppervlak met de meest complexe vorm creëren.
Fractale afbeeldingen De 21e eeuw is vrij recent populair geworden en gebruikt concepten als: fractale driehoeken, figuren, rechte objecten en composities. Evenals “Ouderobjecten” en “Opvolgobjecten”. Al deze concepten spelen een rol bij het creëren van een beeld.
Met behulp van fractal computergraphics worden abstracte composities gecreëerd die compositietechnieken implementeren zoals horizontale en verticale lijnen, alle diagonale richtingen, verschillende symmetrische en asymmetrische. Weinig Russische en buitenlandse programmeurs en computerontwerpers zijn bekend met fractal graphics.
Objecten met fractale afbeeldingen kunnen qua structuur worden vergeleken met de complexe structuren van ijskristallen of sneeuwvlokken. Met behulp van deze unieke eigenschappen van fractalafbeeldingen kunt u decoratieve patronen creëren. Algoritmen en vergelijkingen ontwikkeld door grote geesten voor het synthetiseren van de coëfficiënten van fractale patronen maken het mogelijk om afbeeldingen te maken die sterk op het origineel lijken, dat wil zeggen om een afbeelding een onbeperkt aantal keren te klonen.
In computergraphics is het gebruik van fractale geometrie onmisbaar bij het creëren van kunstmatige wolken, zeeoppervlakken of bergen. Het was alleen dankzij fractal graphics dat er een manier werd gecreëerd om complexe objecten te realiseren die qua uiterlijk sterk op de natuur lijken. Geometrische fractals op een computermonitor zijn patronen die zijn geconstrueerd volgens een bepaald programma.
De makers van fractals zijn een veelzijdig persoon die meerdere beroepen tegelijk beheerst. Hij moet tegelijkertijd kunstenaar, beeldhouwer en fotograaf zijn. Wanneer u met uw eigen handen een tekening maakt, gebruikt u een wiskundige formule om de vorm van de afbeelding te bepalen die u nodig heeft. Je past de parameters aan, kiest hoe de tekening eruit zal zien, welke kleur deze zal hebben. Het verschil tussen fractalafbeeldingen en andere grafische editors, zoals Photoshop, is dat u uw eigen, unieke ontwerp helemaal opnieuw maakt.
Het is onmogelijk om een tekening in Photoshop te maken, je kunt hem alleen bewerken of opmaken, hem de gewenste kleur en grootte geven, de kwaliteit verbeteren en onvolkomenheden wegwerken. Een onderscheidend kenmerk van de Painter-editor is dat een kunstenaar die daadwerkelijk zonder de hulp van een computer werkt, niet in staat zal zijn een penseel, pen of potlood te gebruiken om over dezelfde mogelijkheden te beschikken als in Painter.
Beoordeling: / 18