Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| projekte:vector_graphics_adapter [2015/12/12 23:34] – da1l6 | projekte:vector_graphics_adapter [2024/12/30 12:17] (aktuell) – da1l6 | ||
|---|---|---|---|
| Zeile 7: | Zeile 7: | ||
| {{ : | {{ : | ||
| - | Doch der PC besitzt ja meist noch einen weiteren Digital-Analog-Wandler: | + | Doch der PC besitzt ja meist noch einen weiteren Digital-Analog-Wandler: |
| Der VGA-Port kann die Bilddaten auch mit sehr hoher Geschwindigkeit (> 100MHz) ausgeben, davon kann man bei Soundkarten nur träumen. Auch stöhrende Ausgangsfilter gibt es nicht. Damit ist er fast ideal für komplexe Vektor-Darstellungen geeignet. | Der VGA-Port kann die Bilddaten auch mit sehr hoher Geschwindigkeit (> 100MHz) ausgeben, davon kann man bei Soundkarten nur träumen. Auch stöhrende Ausgangsfilter gibt es nicht. Damit ist er fast ideal für komplexe Vektor-Darstellungen geeignet. | ||
| Zeile 16: | Zeile 16: | ||
| ==== Funktionsprinzip / Software ==== | ==== Funktionsprinzip / Software ==== | ||
| - | * Die Vektorisierung ist als [[https:// | + | * Die Vektorisierung ist als [[https:// |
| * Das Video (oder Bild) wird mittels [[https:// | * Das Video (oder Bild) wird mittels [[https:// | ||
| - | | + | |
| - | * Alternativ kann der edgedetect Filter aus ffmpeg/ | + | |
| * Anschließend wird ein weiterer Videofilter nachgeschaltet, | * Anschließend wird ein weiterer Videofilter nachgeschaltet, | ||
| * Dieser Filter basiert auf dem OpenCV FindContours funktion, welche die Kanten als Vektor-Pfad extrahiert. | * Dieser Filter basiert auf dem OpenCV FindContours funktion, welche die Kanten als Vektor-Pfad extrahiert. | ||
| - | * Der Vektorpfad wird anschließend als " | + | * Der Vektorpfad wird anschließend als " |
| * Der ffmpeg edgedetect Filter liefert einen Intensitätswert, | * Der ffmpeg edgedetect Filter liefert einen Intensitätswert, | ||
| - | * Bei der Umsetzung in das Vektorbild wird dies berücksichtigt indem der Anteil an der koordinaten | + | * Bei der Umsetzung in das Vektorbild wird dies berücksichtigt indem der Anteil an der Koordinaten |
| * Je kleiner der Anteil desto schneller überstreicht der Elektronenstrahl die Kante und desto dunkler erscheint Sie. | * Je kleiner der Anteil desto schneller überstreicht der Elektronenstrahl die Kante und desto dunkler erscheint Sie. | ||
| - | * Damit ist möglich die Helligkeit auch ohne Z-Eingang verändern. | + | * Damit ist es möglich die Helligkeit auch ohne Z-Eingang verändern. |
| - | * In der unteren linken Ecke (0,0) erscheint ein heller Punkt, dies ist Folge der Austastlücken (" | + | * In der unteren linken Ecke (0,0) erscheint ein heller Punkt, dies ist eine Folge der Austastlücken (" |
| * Um den Phosphor des Oszilloskop zu schonen sollte dieser außerhalb des sichtbaren Bereiches der Röhre bewegt werden. | * Um den Phosphor des Oszilloskop zu schonen sollte dieser außerhalb des sichtbaren Bereiches der Röhre bewegt werden. | ||
| * Beispiel " | * Beispiel " | ||
| Zeile 35: | Zeile 34: | ||
| xrandr --addmode VGA1 scope | xrandr --addmode VGA1 scope | ||
| xrandr --output VGA1 --mode scope --right-of < | xrandr --output VGA1 --mode scope --right-of < | ||
| - | * ffmpeg | + | * ffmpeg |
| - | * opencv | + | * opencv3 |
| - | * Modifizierter mpv media player: '' | + | * Modifizierter mpv media player: '' |
| * Beispielaufruf: | * Beispielaufruf: | ||
| - | * Mit ffmpeg Kantenerkennung: | + | * < |
| - | * Mit openCV Kantenerkennung:< | + | * Die optimalen werte für low und high können je nach Material variieren. Einfach ausprobieren. |
| - | * Die optimalen werte für t1 (bzw. low) und t2 (bzw. high) können je nach Material variieren. Einfach ausprobieren. | + | |
| * Der Canny-Algorithmus ist sehr Rechenintensiv, | * Der Canny-Algorithmus ist sehr Rechenintensiv, | ||
| Zeile 56: | Zeile 54: | ||
| < | < | ||
| + | |||
| + | ==== Screen Capture ==== | ||
| + | {{ : | ||
| + | |||
| + | Das funktioniert prinzipiell sowohl im Raster als auch im reinen Vektorgrafikmodus. Das bild Rechts ist mit dem Rastergrafik modus entstanden. | ||
| + | |||
| + | < | ||
| + | |||
| + | Video Eingänge wie TV-Karten oder Webcams lassen sich auch abgreifen: | ||
| + | < | ||
| ===== Digitaloszilloskop ===== | ===== Digitaloszilloskop ===== | ||
| - | Wer kein analoges Oszilloskop sein eigen nennt kann auch ein modernes digitales Oszilloskop verwenden, allerdings sind die Darstellungsergebnisse deutlich schlechter. Insbesondere der Rastergrafik | + | Wer kein analoges Oszilloskop sein eigen nennt kann auch ein modernes digitales Oszilloskop verwenden, allerdings sind die Darstellungsergebnisse deutlich schlechter. Insbesondere der Rastergrafik-Modus |
| - | Die Ursache liegt darin, | + | Die Ursache liegt darin, |
| {{: | {{: | ||
| {{: | {{: | ||
| + | |||
| + | === DSO Tipps: === | ||
| + | * Eine hohe Bildwiederhohlrate einstellen (z.B. 120Hz) um den Pixeltakt zu erhöhen und damit die Zeit " | ||
| + | * Ein möglichst breites Seitenverhältniss verwenden um wenig H-Blanks zu haben (ist immer gut). | ||
| + | * Geringe Speichertiefe einstellen (e.g. ~7kPoints). | ||
| + | * Mit der Samplerate rumspielen bis so wenig " | ||
| + | |||
| + | ===== Unsere anderen VGA-zu-Oszilloskop Projekte ===== | ||
| + | * [[https:// | ||