Wie schreiben Kameras mit extrem hoher Bildrate so schnell?

66

Die Aufzeichnung mit 1080p und 100.000 FPS für 1 Sekunde im ProRes 422-Codec belegt 73,2 Gigabyte Speicherplatz. (QUELLE)

Wie schreiben Ultrahochgeschwindigkeitskameras mit so hohen Geschwindigkeiten wie 580,56 Gigabit pro Sekunde auf SD-Karten? Vor dem Schreiben muss das Filmmaterial auch verschlüsselt / verarbeitet werden! Welche Technologie steckt hinter Kameras mit extrem hoher Bildrate, die in der Lage sind, große Mengen an Bilddaten zu verwalten? Haben sie gigantische Speicherpuffer?

Clickbait
quelle
15
Erstklassige PCs können mit 19,2 GB / s in den Arbeitsspeicher schreiben , und das ist handelsübliche Universalhardware. Legen Sie es also unverarbeitet in den Arbeitsspeicher und nehmen Sie sich Zeit, um es zu speichern.
RomanSt
2
Sollte dies auf photo.SE verschoben werden?
Dalearn
4
@ Dalearn: Wenn überhaupt, Elektronik.SE. Wie kann Cache so schnell sein? (zu Benchmark-Ergebnissen für Speicher- / Cache-Bandbreite auf einer IvyBridge mit mehreren Kernen) wurde dort gut aufgenommen.
Peter Cordes
3
@RomanSt: Das ist für einen einzelnen Stick (dh einen Kanal / einen Speichercontroller). Typische Desktop- / Laptop-Systeme sind zweikanalig, High-End-Desktops können dreifach oder vierkanalig sein. zB ohne Übertakten beträgt die theoretische maximale Speicherbandbreite einer Intel-CPU mit DDR4-2400 (wie ein Coffee Lake i3-8100 ) 37,5 GB / s. Der praktische Durchsatz ist etwas geringer und es sind mehrere Kerne erforderlich, um die DRAM-Bandbreite zu sättigen .
Peter Cordes
8
Die Bandbreite des GPU-Speichers ist vielleicht ein besseres Beispiel dafür, was mit einem auf eine Platine gelöteten DRAM mit vielen Kanälen getan werden kann, der für den Durchsatz für sequentielle Zugriffsmuster optimiert ist. Wie eine GTX1080 mit 320 GB / s Bandbreite von 8 GB GDDR5X oder 112 GB / s für eine günstige GTX1050. Und heutzutage gibt es 3D-DRAMs wie HBM ( en.wikipedia.org/wiki/High_Bandwidth_Memory ) mit bis zu 256 GB / s pro Paket.
Peter Cordes

Antworten:

75

Welche Technologie steckt hinter Kameras mit hoher Bildrate, die in der Lage sind, große Mengen an Bilddaten zu verwalten?

Aufnahme mit 1080p und 100.000 FPS

Nicht gleichzeitig:

Wenn Sie mit 1.000.000 fps aufnehmen, nehmen Sie in Schwarzweiß mit einer Auflösung von 128 x 32 auf. Bei einer vollen Auflösung von 1280 x 800 kann mit 25.600 fps aufgenommen werden.

Diese Kameras verwenden eine Kombination aus:

  • große Mengen an RAM

    Msgstr "Mit der 288 GB RAM - Option können Sie 7,6 Sekunden bei voller Auflösung aufnehmen

  • spezialisierte SSD-Karten

    "Ein CineMag kann direkt etwa 1 Gpixel / Sekunde aufnehmen"

Hier ist nur ein Beispiel, wie es gemacht wird:

Schauen wir uns eine echte Hochgeschwindigkeitskamera an, anstatt nur abstrakt zu sprechen. Dies ist das Phantom v2512, das mit einer speziellen Option mit Auflösungen von bis zu 1280 x 800 und Bildraten von bis zu 1.000.000 fps aufnehmen kann. Allerdings nicht beide gleichzeitig. Wenn Sie mit 1.000.000 fps aufnehmen, nehmen Sie in Schwarzweiß mit einer Auflösung von 128 x 32 auf. Bei einer vollen Auflösung von 1280 x 800 kann mit 25.600 fps aufgenommen werden. Sie behaupten, dies sei die schnellste 1-Megapixel-Videokamera auf dem Markt.

So kann es mit 25 Gpixel pro Sekunde aufnehmen. Dies wird jedoch nicht an eine SSD gesendet, sondern an den Arbeitsspeicher. Sie können die Kamera mit 72 GB, 144 GB oder 288 GB RAM bestellen. Dynamischer Arbeitsspeicher natürlich viel, viel schneller als jede SSD. Mit der 288 GB RAM-Option können Sie 7,6 Sekunden bei voller Auflösung aufnehmen.

Für längere und langsamere Aufnahmen bieten sie eine speziell für Hochgeschwindigkeitsvideos entwickelte SSD, die CineMag IV. Ein CineMag kann direkt etwa 1 Gpixel / Sekunde aufnehmen, das sind also 1500 MB / s. Angesichts der Tatsache, dass sie eine benutzerdefinierte SSD und keine Standardeinheit verwenden, besteht kein Grund zu der Annahme, dass diese auf die Geschwindigkeiten der Standard-SSDs für PCs beschränkt sind.

Quelle Wie verarbeiten Hochgeschwindigkeitskameras Gigabyte an Daten in so kurzer Geschwindigkeit? - Quora


Weitere Lektüre

DavidPostill
quelle
24
Sie enthalten auch maßgeschneiderte Ultra-High-Speed-ASICs für die Videokomprimierung und -codierung in Echtzeit. Denken Sie nicht an Hardware-beschleunigte Hardware-beschleunigte Videokodierung auf Steroiden, sondern an reine Hardware-Videokodierung. Der "Videoprozessor" macht wahrscheinlich mehr als 20.000 US-Dollar der Kamerakosten aus.
Qasdfdsaq
Ein Beispiel für die Einrichtung und Verwendung dieser SSDs in der Praxis finden Sie unter Linus Tech Tips. Es ist (wahrscheinlich) nicht das beste Setup, aber es ist ein Beispiel.
Ismael Miguel
1
Nur nicht sicher, in welcher Welt 1500mb / s schnelle Schreibgeschwindigkeit für eine High-End-SSD ist. Das PM1725a von Samsung leistet WAY mehr als das, und das ist eine "Standard" -Datencenter-SSD - ich habe einige davon auf meinen Servern.
TomTom
1
Das Zitat sagt 10.000 FPS, aber das Original sagt 100.000 FPS (zu klein für eine Bearbeitung).
Zackary
5

Das passiert überhaupt nicht.

Wie im Video deutlich zu sehen ist, erfolgt die Aufnahme mit 120k fps mit einer Auflösung von 512 * 320 , was weniger als 8% der Bandbreite für 1080p entspricht. Bei 170 KBit / s beträgt die Auflösung nur 256 * 256 KBit / s, und die 340-KBit / s- Aufzeichnung erfolgt erneut mit der Hälfte der Auflösung, also nur 3% der Bandbreite, von der Sie sprechen.
Das fertige Video auf youtube ist 1080p, sicher, aber die Quelle Videos (zumindest die Hochgeschwindigkeits sind) sind nicht, sind sie nach der Tat hochskaliert.

Also, während es noch ziemlich viel ist , ist es nicht annähernd das, was Sie denken.

Das kleinste Modell dieser Kameras verfügt über 72 GB RAM und es sind bis zu 288 GB RAM verfügbar. Unter der Annahme der niedrigsten Auflösung, die sie für das Video verwendet haben, und des größten Modells der Kamera, könnte die Kamera etwa 2 Millionen Vollfarbbilder oder etwa 5,8 Sekunden Video einfach so im RAM speichern, nein muss mal was schreiben.
Aber das tut es nicht , es speichert Frames, die ungefähr 1/10 dieser Größe haben. Es kann also wirklich fast eine Minute aufnehmen, ohne jemals etwas aufzuschreiben. Hinzu kommt ein schnelles Speichermedium (von dem heutzutage sogar das billigere mehr als 100 MB / s aufnehmen kann, und erstklassig ist eher 1 GB / s), und es ist wenig überraschend, wie es funktionieren könnte.
Beachten Sie, dass Sie dank paralleler Schreibvorgänge auch bei einem langsamen Medium, das nicht in der Lage ist, die Schreibvorgänge auf unbestimmte Zeit aufrechtzuerhalten, die Gesamtaufzeichnungskapazität erheblich erhöhen können, sodass sie praktisch unbegrenzt ist (Sie können keine zweistündigen Geschwindigkeitsaufnahmen sowieso).

Bei der Verarbeitung / Komprimierung ist ProRes 422 nicht mit der typischen Videokomprimierung vergleichbar. Es handelt sich um eine absolut einfache Chroma-Unterabtastung, gefolgt von einer DCT, die streng auf einen einzelnen Frame beschränkt ist. Keine Bewegungsschätzung, Vorhersage, Interframe-Abhängigkeit, keine dieser Art. Im Grunde genommen handelt es sich also um eine Art von unterabgetasteter Einzelbild- JPEG- Komprimierung, die seit mehr als 25 Jahren gut erforscht ist, ein peinlich paralleles Problem darstellt und für die dedizierte, billige Hardware, die die gesamte Transformation fest verdrahtet hat, leicht verfügbar ist. Dies schnell zu tun ist keine technische Herausforderung. Das Speichern komprimierter Daten erfolgt genauso schnell wie das Speichern nicht komprimierter Daten.

Damon
quelle
1

Wie bereits erwähnt, Hochgeschwindigkeits-RAM. Wenn das den Senf nicht schneidet, können Sie:

  • Interleave-Hochgeschwindigkeits-RAMs. Sie schließen beispielsweise acht oder sechzehn RAM-Chips parallel an den Sensorausgang an und fordern sie auf, nacheinander und dann die erste Round-Robin-Methode zu speichern. Die RAMs müssen nur ein Achtel oder ein Sechzehntel so schnell sein. Wenn sie nicht mit den Daten umgehen können, die sich vor ihren Eingaben so schnell ändern, fügen Sie als Vermittler ein zusätzliches Schnellregister hinzu.

    Eine alternative Möglichkeit besteht darin, alle acht oder sechzehn oder wie viele RAMs gleichzeitig zu takten - aber die Länge der Drähte / Leiterbahnen, die zu ihnen führen, zu staffeln, sodass Daten, die zu unterschiedlichen Zeiten aktuell waren, am Eingang jedes RAM angezeigt werden.

  • Verwenden Sie Speicher, der nicht adressierbar ist, sondern in einer FIFO- / Warteschlangen-Art arbeitet. Dies erfordert überhaupt keine Adressverwaltung. Sie können Daten auf diesen Geräten nur so schnell takten, wie sie können, bis sie buchstäblich am anderen Ende herauskommen Wenn Sie mehr Platz benötigen, schließen Sie einfach mehr dieser Geräte an das andere Ende an. Sobald die Zeit gekommen ist, um es vorzulesen, können Sie dies mit Ihrer bevorzugten Geschwindigkeit tun.

Rackandboneman
quelle
fifo wird entweder durch große Schieberegister oder ein inkrementierendes Adressregister implementiert, das in einen Adressendecodierer eingespeist wird. Schieberegister sind im Vergleich zu einem Adressdecodierer in Bezug auf Leistung und Siliziumraum sehr teuer.
Ratschenfreak