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_en [2017/03/01 19:19] – Externe Bearbeitung 127.0.0.1 | projekte:vector_graphics_adapter_en [2024/12/30 12:18] (aktuell) – da1l6 | ||
---|---|---|---|
Zeile 17: | Zeile 17: | ||
==== Software operation ==== | ==== Software operation ==== | ||
* The vectorization is implemented as a set of [[https:// | * The vectorization is implemented as a set of [[https:// | ||
- | * I made a [[https://github.com/da1l6/mpv|fork of mpv]] which contains these filters. | + | * I made a [[https://gitlab.warpzone.ms/da1l6/vga|fork of mpv]] which contains these filters. |
- The input video (or image) is passed through the [[https:// | - The input video (or image) is passed through the [[https:// | ||
- | * The fork contains a canny filter that uses the [[http:// | + | |
- | * The edgedetect filter from ffmpeg/ | + | - Following |
- | - Follwing | + | |
* The vector filter also iterates over these paths to create a " | * The vector filter also iterates over these paths to create a " | ||
- | * The availiable | + | * The available |
* The ffmpeg edgedetect filter provides an intensity value in its output depending on how sharp an edge is. | * The ffmpeg edgedetect filter provides an intensity value in its output depending on how sharp an edge is. | ||
* This is used to give more vector image " | * This is used to give more vector image " | ||
- | * Less prominent edges get less scanout time and will apear dimmer because the electron beam moves over these spots more quickly. | + | * Less prominent edges get less scanout time and will appear |
* This method works without the use of a dedicated intensity (Z) input on the oscilloscope. | * This method works without the use of a dedicated intensity (Z) input on the oscilloscope. | ||
* A problem of using the VGA port is the blanking periods during which the VGA Port will output 0 volts on all channels and thus move the electron beam to the lower left corner of the scope screen. | * A problem of using the VGA port is the blanking periods during which the VGA Port will output 0 volts on all channels and thus move the electron beam to the lower left corner of the scope screen. | ||
- | * A bright dot appears there and can potentially damage the phosphor coating of the CRT. It should be moved outside the visible area using the horizonal/vertical controls of the scope. | + | * A bright dot appears there and can potentially damage the phosphor coating of the CRT. It should be moved outside the visible area using the horizontal/vertical controls of the scope. |
* Example vector image for direct output on the VGA port: {{: | * Example vector image for direct output on the VGA port: {{: | ||
Zeile 37: | Zeile 36: | ||
xrandr --addmode VGA1 scope | xrandr --addmode VGA1 scope | ||
xrandr --output VGA1 --mode scope --right-of < | xrandr --output VGA1 --mode scope --right-of < | ||
- | * ffmpeg is needed | + | * ffmpeg is needed |
- | * opencv | + | * opencv3 |
- | * The modified mpv media player with the custom filters can retrived with '' | + | * The modified mpv media player with the custom filters can retrived with '' |
* Example usage command: | * Example usage command: | ||
- | | + | < |
- | * With openCV edge detection:< | + | * The optimal values for low and high can depend on video source. Just try a few. |
- | * The optimal values for t1 (or low) and t2 (or high) can depend on source | + | |
* The canny edge detection is a CPU hog. Because of this '' | * The canny edge detection is a CPU hog. Because of this '' | ||