Matrix mod: EQM V3HR

  • Hi,

    ich habe Sharktooth's EQM V3HR matrix, die sich meiner Meinung nach besonders gut für DVD-Quellmaterial, das für DVD+/-R Medien komprimiert werden soll, eignet, für bereits gut entrauschte Encodings modifiziert. Die neue Matrix trägt dem Umstand Rechnung, dass auch jeder temporale Entrauschfilter bereits einen gewissen Deteilverlust mit sich bringt. Die neue Matrix bringt daher weniger HF und Inter-frame Kompression, bei gleichzeitig nur geringen Abstrichen bei der over-all Kompression mit sich. Sie zeichnet damit also weniger weich und erhält mehr Details.

    give it a try...

    IntraFrame-Matrix:


    08 10 10 10 11 11 13 15
    10 10 10 10 11 12 14 16
    10 10 11 11 13 14 16 18
    10 10 11 13 15 17 19 22
    11 11 13 15 17 20 23 27
    11 12 14 17 20 24 30 36
    13 14 16 19 23 30 40 48
    15 16 18 22 27 36 48 62

    InterFrame-Matrix:

    13 14 14 14 15 16 18 21
    14 14 14 14 16 17 20 22
    14 14 15 16 18 20 22 25
    14 14 16 18 21 23 26 30
    15 16 18 21 24 27 31 36
    16 17 20 23 27 32 40 48
    18 20 22 26 31 40 53 64
    21 22 25 30 36 48 64 83


    PS: meine verwendeten XviD B-Frame Parameter...
    Quantizer ratio: 1.50
    Quantizer offset: 0.70

  • Hi Selur,

    >Hat jemand eigentlich eine sinnige Erklärung wie und warum man für Interframe
    >bestimmte Matrizen aufbauen sollte?

    Ja, klar. Weil z.B. der XviD-Codec eine solche verlangt... ;)

    Also ich bin oben v.a. von meiner guten Erfahrung mit der EQM V3HR Matrix ausgegangen und habe mich nach dem Vermutung-, Versuch- und Irrtum's-Prinzip an diese Modifikation herangetestet.

    Eine interessante Fragestellung.

    Ich denke, dass es i.A. sinnvoll ist, die Intraframe Matrix etwas weniger aggressiv (geringere Kompression, kleinere Werte) auszulegen, da viele Interblocks auf wenigen Intrablocks aufbauen. Insbesondere kann man die rechte-untere HF Ecke der Interframe Matrix mit höhren Werten füllen, wenn man auch bei verrauschtem Quellmaterial gute Kompression erzielen will. Die beste Qualität würde hingegen die ausschliessliche Verwendung von Intraframes (I-Frames), ganz ohne Interblock-Referenzierung liefern. Will man also sehr hohe Qualität bei sehr hohen Bitraten erzielen, dann kann die Interframe-Referenzierung gar nicht genau genug sein und man kann eine Interframe-Matrix verwenden, die geringer komprimiert als die Intraframe-Matrix.

    Soweit erstmal meine laienhaften Gedanken... ;)

  • Zitat

    Ja, klar. Weil z.B. der XviD-Codec eine solche verlangt... ;)


    Das 'warum' war als ein 'Warum man eine Intermatrix so, oder so aufbauen sollte' gemeint. Weshalb man eingene Intermatrizen macht war schon klar. *gig*

    Die Frage ist nur was erwischt man wirklich wenn man bei einem Interframe (P/B Frame), welches ja Differenzwerte zu Bildern darstellt auf die es verweist, irgendwo gewisse Werte einträgt?
    Bei Intramatrizen kann ich das Ganze voll verstehen, da bezieht man sich ja auf wirkliche Bildinformationen, aber ob es nicht eventuell sinniger ist eher im mittleren Frequenzspektrum zu filtern wenn man Interframes betrachtet wäre interessant zu wissen.

    Matrizen per Try&Error 'tunen' erziehlt zwar Ergebnisse jedoch würde mich eine 'wissenschaftlichere/mathematische' Erklärung warum eine Matrix so aussieht eher interessieren.

    Cu Selur

  • >ob es nicht eventuell sinniger ist eher im mittleren Frequenzspektrum
    >zu filtern wenn man Interframes betrachtet wäre interessant zu wissen.

    Ich kann zumindest sagen, dass bei rauscharmen Encodings die HF Werte (rechts, unten) der InterFrame-Matrix weder auf die Kompression noch auf die erzielbare Qualität grossen Einfluss haben. Sind die LF Werte zu gross (links, oben) würde sich vermutlich die Gefahr der Blockartefaktbildung bei Bewegungen erhöhen.
    Die mittleren Werte der Interframe Matrix haben weniger Einfluss auf den Detailreichtum sondern mehr auf die Genauigkeit von bewegten Bildinformationen.

  • Zitat

    Sind die LF Werte zu gross (links, oben) würde sich vermutlich die Gefahr der Blockartefaktbildung bei Bewegungen erhöhen. Die mittleren Werte der Interframe Matrix haben weniger Einfluss auf den Detailreichtum sondern mehr auf die Genauigkeit von bewegten Bildinformationen.


    Kannste das etwas ausführen, denn nachvollziehen kann ich das nicht. :D

    Danke

    Cu Selur

  • Soweit, wie ich das verstanden habe, wird bei Interblocks die Differenz zu einem referenzierten Block eines anderen Frames gespeichert. Abweichungen im LF Bereich (in der Matrix links, oben) bestimmen dann die sehr auffällige Gesamthelligkeit (DC) bzw. grossflächige Helligkeitsverteilung. Grosse Abweichungen führen hier zu sichtbaren Blockartefakten. Abweichungen durch zu hohe Werte im mittleren Bereich der Matrix führen dazu, dass (temporale) Unterschiede zum referenzierten Frame unter den Tisch fallen, nicht aber dessen Details. Solche Fehler sind nicht so auffällig, wie zu stark komprimierte Intraframes.

  • jaein.

    Ein hoher DC Wert bei der Interframe Matrix führt auf jeden Fall zu verstärkten Block-Artefakten, allerdings auch zu Unschärfe (ob das mit der Bewegungsabschätzung zu tun hat ?? - keine Ahnung).

    Meine Modifikationen führten nicht zu so klaren und eindeutigen Unterschieden, wie oben beschrieben, die Ergebnisse sind interpretierbar...

  • Es wäre durchaus interessant, die Frequenzverteilung im Differenzbild zu ermitteln.

    Mir fallen keine logischen/mathematischen Argumente ein, wie das aussehen könnte/sollte/müsste.

    Da ist das Experiment wahrscheinlich die Einzige Möglichkeit, dass in Erfahrung zu bringen.

    Es gibt eine Theorie, die besagt, dass das Universum sofort verschwinden und etwas noch Unerklärlicheres und Bizarres an seine Stelle treten wird, sobald jemand herausfindet, wofür es gut ist und warum es existiert.

    Es gibt eine andere Theorie, die besagt, dass das bereits geschehen ist.

  • So, ich habe ein bissel in den XviD Sourcen rumgepfuscht (mal wieder), und eine Protokollfunktion eingebaut, die die transformierten, unquantisierten DCT-Koeffizienten (Luma) von Inter Frames in eine Textdatei (C:\xvidinterq.txt, ist fest einprogrammiert, nicht zu ändern) schreibt. Genaugenommen werden sie hinten angehängt, also die Datei dort entfernen, bevor man einen neuen Test startet.

    Die Daten, die geschrieben werden, machen ca. 520kB pro 8x8Block aus, also am besten kleine Auflösungen und kurze Ausschnitte testen.

    Diese Funktion hat auch keinen weiteren Sinn, als ein Gefühl dafür zu bekommen, wie die Inter Matrix gestaltet werden könnte.

    Bitte auch die beigeelegte Readme beachten. Ich übernehme keine Gewähr für nix:

    http://web3.gleitz.org/Kopernikus/XviD110beta2mod4.zip

    Es gibt eine Theorie, die besagt, dass das Universum sofort verschwinden und etwas noch Unerklärlicheres und Bizarres an seine Stelle treten wird, sobald jemand herausfindet, wofür es gut ist und warum es existiert.

    Es gibt eine andere Theorie, die besagt, dass das bereits geschehen ist.

  • Ich habe nochmals über der Matrix gebrütet und die Bitrate optimiert. Ziel war eine Matrix, die ähnlich gut ist, wie EQM_V3HR, jedoch nicht so stark weichzeichnet und mehr Details erhält, ohne nennenswert mehr Bitrate zu benötigen:

    entwickelt für:
    volle, anamorphe dvd auflösung. ordentliches/entrauschtes quellmaterial.
    bitrate: 2000-3000 kbit/s

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!