2010-12-16 5 views
0

Also mache ich einige Bildverarbeitung in MATLAB, und versuche, eine Datei in einem y4m-Format mit Farbraum 4: 2: 0 zu speichern.Mit fwrite möchte ich schreiben drei Elemente in A zwischen jedem schreiben

Grundsätzlich, was kommt es darauf an, ich möchte fwrite verwenden, aber ich möchte in der Lage sein, eine bestimmte Anzahl von Elementen in dem Vektor zu überspringen, der schreibt. Gibt es einen einfachen Weg, wie ich das machen kann?

Antwort

0

Es gibt tools dafür schon.

Wenn Sie darauf bestehen, die Dinge selbst zu tun (ich tue, da ich nicht für die separaten Toolboxen belästigt werden kann), können Sie immer einen neuen Vektor erstellen, der nur die Elemente enthält, die Sie schreiben müssen. Unter der Annahme, dass Sie YUV 4: 4: 4 und möchten Sie es als YUV schreiben 4: 2: 0:

  • Split yuv444 hinein getrennt ist Y‘, Cb, Cr-Komponenten
  • schreiben Y' wie es ist, mit fwrite
  • Auflösungsverringerung Cb und Cr um einen Faktor von zwei zu bekommen Cb_down und Cr_down
  • schreiben Cb_down und Cr_downfwrite auf die gleiche offene Datei mit Griff
+0

Die Verknüpfung * tools * ist unterbrochen. – zellus

+0

@zellus: wirklich? funktioniert hier gut. – misha

+0

* Methode nicht implementiert GET zu /nikola/matlab/yuv.html nicht unterstützt. * – zellus

Verwandte Themen