Hi,
ich bin über ein modul gestoßen, dass ich Anfang April 2009 geschrieben habe, also fast genau ein Jahr alt. Da hab ich mich mit Videokompression beschäftigt gehabt, vermute ich.
Es handelt sich um schnelle (aber speicherintensive) RGB2YUV and vice versa Konvertierung.
Ausserdem sind ein paar Testmethoden enthalten, die Rundungfehler darstellen sollen und Funktionen benchmarken/vergleichen können.
Ich dachte mir vielleicht kann des ja jemand gebrauchen.
So bitt'schön:
http://paste.pocoo.org/show/195838/
edit (jens): code ausgelagert
Der Code ist mehr oder minder selbsterklärend. Auch wenns kompliziert aussieht, das sind alles nur die Umrechnungsformeln, der eigentliche "Code", der dahinter steckt ist klein und einfach zu verstehen.
Bei Fragen, fragen!
Ciao.
RGB2YUV and vice versa code...
Hallo.
Du solltest deinen Code auslagern, man kann auf deinen Beitrag kaum noch antworten.
Zum Code: Die Länge kann man bestimmt halbieren, dass ist alles Copy&Paste. Die dutzenden magischen Zahlen sind noch eines der kleinen Probleme. Der ganze Code müsste mal grundlegend überarbeitet werden.
Sebastian
Du solltest deinen Code auslagern, man kann auf deinen Beitrag kaum noch antworten.
Zum Code: Die Länge kann man bestimmt halbieren, dass ist alles Copy&Paste. Die dutzenden magischen Zahlen sind noch eines der kleinen Probleme. Der ganze Code müsste mal grundlegend überarbeitet werden.
Sebastian
Das Leben ist wie ein Tennisball.
- jens
- Python-Forum Veteran
- Beiträge: 8502
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
Die ganze precalc geschichten könnte man auch anders lösen.
Das Vorberechnen hat Nachteile:
1. Man berechnet evtl. Kombinationen, die hinterher nie abgefragt werden
2. Es dauert bei Programmstart eine weile (Hab keine Zeit gemessen)
3. der RAM Verbrauch
Das ganze könnte man so lösen: Man berechnet nur die Werte die gerade abgefragt werden und packt sie dann in einen dict als cache...
Das Vorberechnen hat Nachteile:
1. Man berechnet evtl. Kombinationen, die hinterher nie abgefragt werden
2. Es dauert bei Programmstart eine weile (Hab keine Zeit gemessen)
3. der RAM Verbrauch
Das ganze könnte man so lösen: Man berechnet nur die Werte die gerade abgefragt werden und packt sie dann in einen dict als cache...