INLEIDING
Zoals uit de titel al blijkt, wil ik handgetekende cirkels wiskundig beoordelen. Ik had al eerder gepost op het forum over een programma die ik zou kunnen schrijven om getekende cirkels mee te beoordelen en ik ben inmiddels heel wat verder. We hebben nu nog maar een heel klein probleempje in Maple waar we niet uit komen. Voordat ik begin over het probleem zelf, wil ik eerst het onderwerp introduceren. Daarna zal ik ingaan op het probleem.
Begin dit jaar heb ik dit onderwerp gekozen voor wiskunde als praktische opdracht op aanbeveling van mijn leraar. Nu ben ik ermee doorgegaan voor mijn profielwerkstuk. Als je op Youtube zoekt met “freehand circle drawing” zul je zien dat er heel wat mensen zijn die uit de losse pols een hele mooie cirkel kunnen tekenen. Er is zelfs een wedstrijd georganiseerd waarbij een zekere Alexander Overwijk heeft gewonnen. Die wedstrijd was waarschijnlijk niet serieus (er was waarschijnlijk een jury aanwezig die de cirkels subjectief beoordeelde)
Mijn opdracht was dus om een wiskundige methode te verzinnen om deze cirkels te beoordelen. Ik heb vele methoden bedacht met allemaal hun eigen voor- en nadelen, maar uiteindelijk heb ik één methode eruit gepikt: bij de methode wordt er gebruik gemaakt van regressie analyse (in dit geval circulaire regressie analyse). Ik heb besloten om een smartboard te gebruiken voor het tekenen van de cirkels. Elke pixel levert dan 2 coördinaten op. Hiervoor heb ik inmiddels een programma die de coördinaten kan opslaan in een tekst-bestandje. De coördinaten kan ik dan uiteindelijk kopiëren en plakken in Maple. Voor de verdere berekening maak ik namelijk gebruik van een Maple worksheet, die de formule van de best passende cirkel voor mij kan berekenen.
DE MENSEN DIE MEER INFO WILLEN KUNNEN ALTIJD HET NODIGE DEEL VAN MIJN PWS KRIJGEN.
HET PROBLEEM
Zoals ik net al zei kan Maple voor ons de formule van de best passende cirkel berekenen, maar we moeten natuurlijk ook een maat hebben om te bepalen hoe goed de getekende cirkel is. Hierop heb ik het volgende verzonnen. Stel dat Maple voor ons de volgende cirkel berekent:
Cirkel met gegeven middelpunt M(XM,YM) en straal=R. Verder nemen we momenteel alleen één punt en dat zullen we later uitbreiden tot iets algemeens (dus geldig voor alle pixels). We noemen het punt P(XP,YP). Hierbij moet je wel opletten: De formule van de cirkel wordt gegeven in de volgende vorm: x^2+y^2-2*a*x-2*b*y-c = 0. Het middelpunt van deze cirkel is dus (a,b). De cirkel wordt dus niet als volgt gegeven: (X-XM)^2 + (Y-YM)^2 = R^2. Maple berekent wel a, b en r allemaal; het middelpunt en de straal zijn dus wel gegeven!
Als de afstand van het punt P tot het middelpunt gelijk is aan de straal, dan is dat dus perfect. Hoe groter de afwijking van de straal is, hoe slechter we dat vinden. Hiervoor bereken ik door middel van Pythagoras de afstand van het punt P tot het middelpunt M en daarvan trek ik de straal af. Om te zorgen dat bij meer punten negatieve en positieve waarden elkaar niet kunnen compenseren, heb ik besloten om de absolute waarde van het verschil te nemen.
In formulevorm ziet dat er als volgt uit (Dit is alleen voor punt P):
Afwijking van punt P: |Wortel( (YP-YM)^2 + (XP-XM)^2 ) - R |
(R is hierbij de straal zoals ik al eerder had genoemd)
Als we dit nu veralgemeniseren voor alle punten (pixels) dan krijgen we dit:
Afwijking getekende cirkel: (Sigma |Wortel( (YP-YM)^2 + (XP-XM)^2 ) - R | ) / N
Bij deze formule tellen we dus ALLE afwijkingen (verschillen) bij elkaar op en ik deel tenslotte door het aantal pixels om een gemiddelde te krijgen. N is dus hierbij het aantal pixels. Ik heb hier bewust voor een gemiddelde gekozen omdat niet iedere getekende cirkel evenveel pixels zal hebben. De ene cirkel zal namelijk groter zijn dan de ander.
Het probleem is echter dat we dit helemaal niet in Maple hebben kunnen verwerken. De worksheet die wij gebruiken is te vinden op de volgende site: http://www.maplesoft.com/applications/view.aspx?SID=3776. Het is ons helemaal niet gelukt om bovenstaande formule erin te verwerken. Als dat uiteindelijk is gelukt dan is ook het hele project af. Maple-kenners zouden volgens mij precies weten hoe het moet. Vandaar dat ik besloot om het forum deze vraag te stellen.
Zoals ik al had aangegeven hebben we op school een smartboard tot onze beschikking. Het doel is dus uiteindelijk om een wedstrijd te organiseren waarbij meerdere mensen een poging doen om de beste cirkel te tekenen.
Bij voorbaat dank
,
Fatih C.
Zoals uit de titel al blijkt, wil ik handgetekende cirkels wiskundig beoordelen. Ik had al eerder gepost op het forum over een programma die ik zou kunnen schrijven om getekende cirkels mee te beoordelen en ik ben inmiddels heel wat verder. We hebben nu nog maar een heel klein probleempje in Maple waar we niet uit komen. Voordat ik begin over het probleem zelf, wil ik eerst het onderwerp introduceren. Daarna zal ik ingaan op het probleem.
Begin dit jaar heb ik dit onderwerp gekozen voor wiskunde als praktische opdracht op aanbeveling van mijn leraar. Nu ben ik ermee doorgegaan voor mijn profielwerkstuk. Als je op Youtube zoekt met “freehand circle drawing” zul je zien dat er heel wat mensen zijn die uit de losse pols een hele mooie cirkel kunnen tekenen. Er is zelfs een wedstrijd georganiseerd waarbij een zekere Alexander Overwijk heeft gewonnen. Die wedstrijd was waarschijnlijk niet serieus (er was waarschijnlijk een jury aanwezig die de cirkels subjectief beoordeelde)
Mijn opdracht was dus om een wiskundige methode te verzinnen om deze cirkels te beoordelen. Ik heb vele methoden bedacht met allemaal hun eigen voor- en nadelen, maar uiteindelijk heb ik één methode eruit gepikt: bij de methode wordt er gebruik gemaakt van regressie analyse (in dit geval circulaire regressie analyse). Ik heb besloten om een smartboard te gebruiken voor het tekenen van de cirkels. Elke pixel levert dan 2 coördinaten op. Hiervoor heb ik inmiddels een programma die de coördinaten kan opslaan in een tekst-bestandje. De coördinaten kan ik dan uiteindelijk kopiëren en plakken in Maple. Voor de verdere berekening maak ik namelijk gebruik van een Maple worksheet, die de formule van de best passende cirkel voor mij kan berekenen.
DE MENSEN DIE MEER INFO WILLEN KUNNEN ALTIJD HET NODIGE DEEL VAN MIJN PWS KRIJGEN.
HET PROBLEEM
Zoals ik net al zei kan Maple voor ons de formule van de best passende cirkel berekenen, maar we moeten natuurlijk ook een maat hebben om te bepalen hoe goed de getekende cirkel is. Hierop heb ik het volgende verzonnen. Stel dat Maple voor ons de volgende cirkel berekent:
Cirkel met gegeven middelpunt M(XM,YM) en straal=R. Verder nemen we momenteel alleen één punt en dat zullen we later uitbreiden tot iets algemeens (dus geldig voor alle pixels). We noemen het punt P(XP,YP). Hierbij moet je wel opletten: De formule van de cirkel wordt gegeven in de volgende vorm: x^2+y^2-2*a*x-2*b*y-c = 0. Het middelpunt van deze cirkel is dus (a,b). De cirkel wordt dus niet als volgt gegeven: (X-XM)^2 + (Y-YM)^2 = R^2. Maple berekent wel a, b en r allemaal; het middelpunt en de straal zijn dus wel gegeven!
Als de afstand van het punt P tot het middelpunt gelijk is aan de straal, dan is dat dus perfect. Hoe groter de afwijking van de straal is, hoe slechter we dat vinden. Hiervoor bereken ik door middel van Pythagoras de afstand van het punt P tot het middelpunt M en daarvan trek ik de straal af. Om te zorgen dat bij meer punten negatieve en positieve waarden elkaar niet kunnen compenseren, heb ik besloten om de absolute waarde van het verschil te nemen.
In formulevorm ziet dat er als volgt uit (Dit is alleen voor punt P):
Afwijking van punt P: |Wortel( (YP-YM)^2 + (XP-XM)^2 ) - R |
(R is hierbij de straal zoals ik al eerder had genoemd)
Als we dit nu veralgemeniseren voor alle punten (pixels) dan krijgen we dit:
Afwijking getekende cirkel: (Sigma |Wortel( (YP-YM)^2 + (XP-XM)^2 ) - R | ) / N
Bij deze formule tellen we dus ALLE afwijkingen (verschillen) bij elkaar op en ik deel tenslotte door het aantal pixels om een gemiddelde te krijgen. N is dus hierbij het aantal pixels. Ik heb hier bewust voor een gemiddelde gekozen omdat niet iedere getekende cirkel evenveel pixels zal hebben. De ene cirkel zal namelijk groter zijn dan de ander.
Het probleem is echter dat we dit helemaal niet in Maple hebben kunnen verwerken. De worksheet die wij gebruiken is te vinden op de volgende site: http://www.maplesoft.com/applications/view.aspx?SID=3776. Het is ons helemaal niet gelukt om bovenstaande formule erin te verwerken. Als dat uiteindelijk is gelukt dan is ook het hele project af. Maple-kenners zouden volgens mij precies weten hoe het moet. Vandaar dat ik besloot om het forum deze vraag te stellen.
Zoals ik al had aangegeven hebben we op school een smartboard tot onze beschikking. Het doel is dus uiteindelijk om een wedstrijd te organiseren waarbij meerdere mensen een poging doen om de beste cirkel te tekenen.
Bij voorbaat dank
Fatih C.