In den diversen Sourcen von Touch-Screens wird zum Ermitteln des X/Y Wertes gemittelt, oder es wird sortiert und nach dem Sortieren der mittlere Wert als bestes Ergebnis genommen. Wer kann was dazu sagen was besser ist? Sortieren oder Mitteln? Dass das Mitteln sicher schneller ist kann ich mir vorstellen, aber welcher Algorithmus ist besser, genauer? Ist bei gleicher Anzahl von Sampling-Werten der eine oder der andere grundsätzlich besser? Hängt vielleicht auch vom Prozessor ab ob er schnell dividieren kann (bei der Mittelung). Vielleicht hat jemand Erfahrungswerte oder kann von der Theorie her etwas dazu sagen? Gibt es vielleicht noch andere Algorithmen?
Um den Mittelwert zu bilden, musst du dividieren. Den mittleren Wert hingegen kannst du ohne Division ermitteln. Vielleicht geht das mit weniger CPU Takten, also auch mit weniger Energieverbrauch. Ansonsten, einfach laut Nachgedacht: Ich stelle mit für eine Achse folgende Messwerte vor: 1,2,1,9,1 Der Mittelwert daraus ist 2,8. Der mittlere Wert ist hingegen 1. Und ich glaube, das zweite Ergebnis ist besser, denn die 9 ist ganz offensichtlich ein Ausreißer, der weit von den anderen Messungen abweicht.
Stefan U. schrieb: > Und ich glaube, das zweite Ergebnis ist besser, denn die 9 ist ganz > offensichtlich ein Ausreißer, der weit von den anderen Messungen > abweicht. Um nicht auf Ausreißer reinzufallen, wurde der Median erfunden.
Stefan U. schrieb: > Ansonsten, einfach laut Nachgedacht: Ich stelle mit für eine Achse > folgende Messwerte vor: 1,2,1,9,1 > > Der Mittelwert daraus ist 2,8. > Der mittlere Wert ist hingegen 1. > > Und ich glaube, das zweite Ergebnis ist besser, denn die 9 ist ganz > offensichtlich ein Ausreißer, der weit von den anderen Messungen > abweicht. Wenn die Messwerte lauten würden: 1,2,9,1,1 dann wäre 9 der mittlere Wert, obwohl die 9 offensichtlich der Ausreisser ist. Und wo der Ausreisser steht in der Messreihe, das weißt du vorher nicht. Deswegen ist der mittlere Wert nur in deinem Beispiel (zufällig) die beste Wahl.
Stefan U. schrieb: > Den mittleren Wert hingegen kannst du ohne Division ermitteln. > Vielleicht geht das mit weniger CPU Takten, also auch mit weniger > Energieverbrauch. Falsch gedacht. Natürlich muss man - um den mittleren Wert zu erhalten, die Messreihe sortieren. Wie in meinem Eingangs-Post erwähnt. Und das kostet Zeit ...
@asdf, der mittleren Wert nimmt man logischer Weise erst nach dem Sortieren! Aus 1,2,1,9,1 wird 1,1,1,2,9 an sonsten geht dividieren schneller wenn man für die Anzahl der Messwerte eine Potenz von 2 verwendet, dann lässt sich die Division durch ein paar Schift's erledigen. Sascha
Überlege dir auch, ob du überhaupt irgendwelche Mittelwerte benötigst. Ein TouchPanel mit bspw. 12Bit liefert dir 4096 Werte. Bei einer horizontalen Bildschirmauflösung von bspw. 800 Pixeln und einem Daumen der wohl mindestens 20 Pixel breit ist, lohnt sich da irgendeine Art der Mittelwertbildung? Ob du nun auf x = 244 oder x = 253 touchst ist meist nicht noch belang. Wenn das Touchen in meinem Projekt die CPU möglichst wenig belasten soll, würde ich die Mittelwertbildung sein lassen. Kommt eben darauf an, was du haben möchtest.
Reginald L. schrieb: > lohnt sich da irgendeine Art der Mittelwertbildung? Sie lohnt sich nicht, nein sie muss sein da das einzelne Sampling-Ergebnis zu starken Schwankungen unterworfen und zu ungenau ist. Aus eigener Erfahrung .....
HFstark schrieb: > Sie lohnt sich nicht, nein sie muss sein da das einzelne > Sampling-Ergebnis zu starken Schwankungen unterworfen > und zu ungenau ist. Aus eigener Erfahrung ..... Hier habe ich andere Erfahrungen gemacht. Kommt auf die Hardware und auf die Programmierung an. Und auf die Dicke des Daumens ;) Beim XPT2046 sowie beim FT5206 hole ich mir die erstbesten Werte. Ok, beim FT5206 muss man sagen, dass hier schon der Chip die Arbeit abnimmt. Der XPT gibt wohl aber die Rohwerte aus.
Reginald L. schrieb: > Beim XPT2046 sowie beim FT5206 hole ich mir die erstbesten Werte. Ok, > beim FT5206 muss man sagen, dass hier schon der Chip die Arbeit abnimmt. > Der XPT gibt wohl aber die Rohwerte aus. Ja der XPT2046 ist meistens drauf. Aber entscheidend für die Genauigkeit ist ja der Touch Screen selbst, und da steckt man nicht drin was der abliefert. Gut wenn der FT5206 von sich aus schon Intelligenz aufbringt, ich kenne ihn nicht ...
HFstark schrieb: > Aber entscheidend für die > Genauigkeit ist ja der Touch Screen selbst Ob der Threadersteller hier vom TouchPanel selbst redet, oder von der Ausgabe eines Chips, erschließt sich leider nicht. Und welcher Chip was macht, weiß man meist auch nicht. Klar, wenn deine Rohwerte bei dir unbrauchbar sind, dann muss man die eben irgendwie mitteln. Ich wollte mit meinem Beitrag auch lediglich nahelegen, dass man sich zuallererst fragen solle, ob dies notwendig ist. Bei meinen ersten TouchPanel-Erfahrungen habe ich mir Sheets zum Mitteln und Kalibrieren Tagelang angeschaut und Code geschrieben. Nur um am Ende festzustellen, dass die Rohwerte absolut ausreichend sind.
Danke für euere Beiträge. Ich werde mir das nochmal genauer anschauen ob die Mittelung überhaupt erforderlich ist. Gretchenfrage wäre für nach wie vor ob die Mittelung gegenüber der Sortierung/Mittenfindung Vor- oder Nachteile bietet. Ganz "schlimm" wird es bei den Arduino Displays die gar keinen Touch Controller haben. Bei solchen wird dann mittels ADC eine Spannungsmessung gemacht (vorher der Screen mittels TTL Signal unter Spannung gesetzt) und daraus der Widerstand/ Touch-Wert ermittelt. Oh mir graust es .... ich schätze da braucht es ganz sicher irgendeine Mittelwertbildung.
TouchApprentice schrieb: > Gretchenfrage wäre für nach wie vor ob die Mittelung gegenüber > der Sortierung/Mittenfindung Vor- oder Nachteile bietet. Da kann zumindest ich nicht weiterhelfen. Mit Mathematik tue ich mir jedes mal schwer. TouchApprentice schrieb: > Ganz "schlimm" wird es bei den Arduino Displays die gar keinen > Touch Controller haben. Bei solchen wird dann mittels ADC > eine Spannungsmessung gemacht (vorher der Screen mittels TTL > Signal unter Spannung gesetzt) und daraus der Widerstand/ > Touch-Wert ermittelt. Oh mir graust es .... ich schätze da > braucht es ganz sicher irgendeine Mittelwertbildung. Möchtest du ein TouchPanel entwickeln oder betreiben? Sofern du keines auf den Markt bringen möchtest, benutzt du einfach einen dafür geeigneten Controller. So wie jeder andere auch. Naja, es bleibt natürlich noch die Möglichkeit, dass du die Herausforderung suchst, das würde ich natürlich auch noch verstehen :)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.