www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Englisch
  Status Grammatik
  Status Lektüre
  Status Korrekturlesen
  Status Übersetzung
  Status Sonstiges (Englisch)

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Computergraphik" - Schnittstelle von Gamma fkt
Schnittstelle von Gamma fkt < Computergraphik < Praktische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Computergraphik"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Schnittstelle von Gamma fkt: von gamma fkt und lin fkt
Status: (Frage) beantwortet Status 
Datum: 14:31 Mi 05.12.2007
Autor: ghostdog

Aufgabe

Schnittpunkt zweier funktionen finden.

% y = 255 * pow ( x/z, 1/g)
% z = pow(2,n) - 1
% y = output
% x = input (von 0 bis 2047)
% pow(a,b) = a to the power of b
% g = Gamma in Absolute value = Gamma in integer value/1024.0
% n = # of bits from the analog-to-digital (A/D) converter= 11 bit
vereinfacht
[mm] f_{2}(x) [/mm] = 255* [mm] (\bruch{x}{2047})^{\bruch{1}{gamma}} [/mm]

Der Anfang der Kurve wird bis zum Schnittpunkt linearisiert.
mit
[mm] f_{1}(x) [/mm] = 255* [mm] \bruch{1}{gamma}*x [/mm]

Hallo leider ist mein Algebra schon eine weile her.
Da ich hier immer sehr gute Hilfe gefunden habe wollte ich mal mein Problem hier schildern.
Ich möchte eine Gamma entzerrung für ein Bild machen und habe gemerkt das die verwendete Gammafunktion am Anfang Linearisiert wurde.
Die Linearisierung erfolgt nach meinen Messdaten bis zum Schnittpunkt der beiden Funktionen.
Meine frage ist dummer weise wie berechne ich den Schnittpunkt?
Also ich weiß noch das ich die beiden Formel gleich setzten muss,
aber da die eine funktion nicht linear ist bekomme ich kein vernünftiges Ergebnis.
Hat jemand eine Lösung?

        
Bezug
Schnittstelle von Gamma fkt: Antwort
Status: (Antwort) fertig Status 
Datum: 13:23 Do 06.12.2007
Autor: rainerS

Hallo!

> Schnittpunkt zweier funktionen finden.
>  
> % y = 255 * pow ( x/z, 1/g)
>  % z = pow(2,n) - 1
>  % y = output
>  % x = input (von 0 bis 2047)
>  % pow(a,b) = a to the power of b
>  % g = Gamma in Absolute value = Gamma in integer
> value/1024.0
>  % n = # of bits from the analog-to-digital (A/D)
> converter= 11 bit
>  vereinfacht
>   [mm]f_{2}(x)[/mm] = 255* [mm](\bruch{x}{2047})^{\bruch{1}{gamma}}[/mm]
>  
> Der Anfang der Kurve wird bis zum Schnittpunkt
> linearisiert.
>  mit
>  [mm]f_{1}(x)[/mm] = 255* [mm]\bruch{1}{gamma}*x[/mm]
>  Hallo leider ist mein Algebra schon eine weile her.
> Da ich hier immer sehr gute Hilfe gefunden habe wollte ich
> mal mein Problem hier schildern.
>  Ich möchte eine Gamma entzerrung für ein Bild machen und
> habe gemerkt das die verwendete Gammafunktion am Anfang
> Linearisiert wurde.
>  Die Linearisierung erfolgt nach meinen Messdaten bis zum
> Schnittpunkt der beiden Funktionen.
>  Meine frage ist dummer weise wie berechne ich den
> Schnittpunkt?
>  Also ich weiß noch das ich die beiden Formel gleich
> setzten muss,
>   aber da die eine funktion nicht linear ist bekomme ich
> kein vernünftiges Ergebnis.
> Hat jemand eine Lösung?

Du willst ein [mm]x_0[/mm] finden, für das

[mm] f_1(x_0) = f_2(x_0) [/mm] oder  [mm] f(x_0) = f_1(x_0) - f_2(x_0) = 0[/mm].

In deinem Fall ist (die 255 lasse ich mal weg): [mm] \bruch{1}{\gamma} x - \left(\bruch{x}{2047}\right)^{1/\gamma} = 0 [/mm].

Für diese Gleichung gibt's keine analytische Lösung. Es gibt viele Verfahren, numerisch eine solche Lösung zu bestimmen.

Wenn du mit Sicherheit weisst, dass es nur einen Schnittpunkt der beiden Kurven gibt, ist eine []fortgesetzte Bisektion (Intervallschachtelung) eine einfache Methode: du beginnst mit zwei Punkten, die rechts und links vom Schnittpunkt liegen (zum Beispiel [mm]x_1=1[/mm] und [mm]x_2=1025[/mm]).

Dann ist in einem Punkt [mm]f(x_1) = f_1(x_1)-f_2(x_1) > 0[/mm] und [mm]f(x_2) = f_1(x_2)-f_2(x_2) < 0[/mm].

Dann nimmst du den Punkt in der Mitte zwischen beiden: [mm]x_3 = (x_1 + x_2)/2 [/mm] und rechnest deine beiden Funktionen an diesem Punkt aus. Der Schnittpunkt liegt entweder zwischen [mm]x_1[/mm] und [mm]x_3[/mm] (wenn [mm]f(x_3)<0[/mm]) oder zwischen [mm]x_3[/mm] und [mm]x_2[/mm] (wenn [mm]f(x_3)>0[/mm]). Dann nimmst du die beiden Punkte, zwischen denen der Schnittpunkt liegt und wiederholst den Schritt. Da dein x ja nur 11Bit hat, bist du nach 11 Schritten fertig.

Viele Grüße
   Rainer

Bezug
                
Bezug
Schnittstelle von Gamma fkt: Korrekturmitteilung
Status: (Korrektur) kleiner Fehler Status 
Datum: 15:42 Do 06.12.2007
Autor: Martin243

Hallo,

wenn wir nach x auflösen wollen, dann gibt es doch eine analytische Lösung.


Gruß
Martin

Bezug
                        
Bezug
Schnittstelle von Gamma fkt: Korrekturmitteilung
Status: (Korrektur) oberflächlich richtig Status 
Datum: 16:00 Do 06.12.2007
Autor: rainerS

Hallo!

> wenn wir nach x auflösen wollen, dann gibt es doch eine
> analytische Lösung.

Oops, ja stimmt.

Viele Grüße
   Rainer

Bezug
        
Bezug
Schnittstelle von Gamma fkt: Antwort
Status: (Antwort) fertig Status 
Datum: 15:57 Do 06.12.2007
Autor: Martin243

Hallo,

hier liegt ein einfaches Polynom in x vor:

[mm] $\left(\bruch{x}{2047}\right)^{\bruch{1}{\gamma}} [/mm] - [mm] \bruch{1}{\gamma}x [/mm] = 0$
[mm] $\Leftrightarrow x\left(\bruch{1}{2047}\left(\bruch{x}{2047}\right)^{\bruch{1}{\gamma}-1} - \bruch{1}{\gamma}\right) [/mm] = 0$

Also ist die Null eine Lösung oder wir rechnen weiter:
[mm] $\bruch{1}{2047}\left(\bruch{x}{2047}\right)^{\bruch{1}{\gamma}-1} [/mm] - [mm] \bruch{1}{\gamma} [/mm] = 0$
[mm] $\left(\bruch{x}{2047}\right)^{\bruch{1}{\gamma}-1} [/mm] = [mm] \bruch{2047}{\gamma}$ [/mm]
[mm] $\bruch{x}{2047} [/mm] = [mm] \left(\bruch{2047}{\gamma}\right)^\bruch{\gamma}{1-\gamma}$ [/mm]

Also:
$x = 2047 [mm] \left(\bruch{2047}{\gamma}\right)^\bruch{\gamma}{1-\gamma}$ [/mm]


Gruß
Martin

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Computergraphik"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.englischraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]