Video ANALOG-DIGITAL Konverter

Gast #127763
Lesenswert?

Hallo,
kann mir jemand helfen, wie ich ein analoges video signal (z.b.
composite, scart...) in digitales konvertieren kann? ich bräuchte am
ende die farbanteile (r,g,b) der einzelnen bildpunkte um mir den
farbmittelwert des eben angezeigten bildes zu berechnen.

zudem: kann ich so etwas mit einem avr lösen, oder brauch ich da etwas
schnelleres?

lg leo
Gast #127764
Lesenswert?

Versuchs mit einer TV-Karte...
Ein AVR ist für Video-Anwendungen leider zu klein.
Für sowas kann man DSP benutzen (sollte man eigentlich auch nur).
schon mal probiert, sowas auf dem PC zu programmieren?

Gruß Rahul
Gast #127765
Lesenswert?

Nein hab ich nicht!
Aber ich hätte mir das so vorgestellt, dass die wandlung extern ein
chip macht (z.b. irgend ein video input processor oder dgl.)
könnte das funktionieren?
wenn ja wie?
videomäßig mit den signalen hab ich leider fast keine erfahrung!
mfg leo
Gast #127766
Lesenswert?

Selbst wenn ein externer A/D-Wandler verwendet wird, ist die beim
Digitalisieren von Fernsehbildern entstehende Datenrate einige
Größenordnungen über der von einem AVR oder ähnlichen Controllern
verarbeitbaren Datenrate.

Ausweg wäre
a) ein sehr viel schnellerer Controller (irgendein ARM)
oder
b) ein Framegrabber, der eine Einzelbilddigitalisierung macht (also
Standbilder digitalisiert)

Letzteres wurde wohl schon mit "Computern" der VC64-Leistungsklasse
gemacht, so daß ein AVR keine Probleme damit haben dürfte.


Ein komplett anderer Ansatz müsste sich (fast) komplett in Hardware
realisieren lassen:

Das PAL-Signal (Composite Video) wird mit entsprechender Hardware in
die drei RGB-Komponenten zerlegt.

Die Ausgänge dreier ausreichend schneller 8-Bit-A/D-Wandler werden mit
Addierern verbunden, die alle Abtastwerte summieren.

Nehmen wir die typische PAL-Auflösung von 768*576, enthält ein Vollbild
also etwa 450000 Abtastwerte.
Da ein 8-Bit-Wandler als größten Wert 255 ausgeben kann, liegt die
höchste Summe, die die Addierer verarbeiten müssen, bei etwa 110
Millionen. Damit genügt ein 32-Bit-Addierer völlig.

Mit jedem (Voll-)Bildwechsel werden die Addierer zurückgesetzt und
fangen erneut an, alle Abtastwerte zu summieren.
Vor dem Zurücksetzen können die addierten Werte an einen geeigneten
Controller übertragen werden, der die Summen durch die Anzahl der
Abtastwerte teilt und die Resultate irgendwohin ausgibt.
Dafür sollte ein AVR mehr als genügen, sind doch gerade mal 25
Berechnungen (mal drei) pro Sekunde erforderlich.

Die Schwierigkeit bei dieser Bastelübung besteht darin, aus dem
Videosignal entsprechende Synchronimpulse und einen Takt für die
A/D-Wandler zu generieren (ruft hier wer PLL?), sowie die Austastlücken
korrekt auszuwerten.
Aber das dürfte alles bereits schon mal von jemandem gelöst worden
sein.

Mit etwa 450000 Abtastwerten pro Vollbild kommen wir bei 25 Bildern pro
Sekunde auf eine Wandelrate von etwa 11 MHz - 8-Bit-Wandler mit so einer
Samplerate dürften auch noch erschwinglich sein.
Gast #127773
Lesenswert?

Also mit einem SAA7111 Video Input Processor (VIP) und hinten dran ein
SAA7196 Digital video decoder, Scaler and Clock generator circuit
(DESCPro) könnte es gehen... :-)
Beide werden übrigens mit I2C angesteuert, was nicht verwunderlich ist,
da sie von Philips sind.
Gast #127776
Lesenswert?

Auf den Lerneffekt mehrere 120 polige ICs mit 0,5mm Raster zu löten, und
erst mal die Platine dafür zu machen kann ich eigentlich gut verzichten.

Ich denke mal es wird schwer genug sein das ganze Ding zu
programmieren...
Gast #127777
Lesenswert?

@Leopold:
Wie Benedikt schon schrieb, die ganze Geschichte gibt es fertig
aufgebaut auf einer beliebigen 20 EUR analog-TV KArte zu kaufen.
Schmeiß den Tunerbaustein runter wenn du den nicht magst, und der Rest
ist deine Schaltung.

Lösungsansatz A)
Die Platine packst du dann in einen Schuhkarton mit geeigneten
Netzteil, das du dann halt auch noch irgendwie anklemmst. An dem
PCI-Bus frickelst du noch ein wenig Speicher dran, und dann klemmst du
noch irgendeinen Prozessor dran und läßt dem die
nitialisierungsroutinen und die rechenintensiven Aufgaben machen. Dann
noch eine lahme serielle Schnittstelle dran, so daß das Gebilde auch
von außen Ansprechbar ist. Und dann nimmst du dein Schuhkarton mit dem
ganzen Friemelkram und stellst ihn neben deinen PC, denn vermutlich
willst du ja auch irgendwas auswerten.

Lösungsansatz B)
Motorhaube von deinem PC auf, Karte rein, irgendwelche passende
Shareware aus dem Netz geladen, um deine Videosignale zu analysieren,
und schon bis du fertig.
Gast #127779
Lesenswert?

Hallo Leopold,

in der Elektor war vor nicht allzulanger Zeit mal ein
TV-Werbe-Blocker,
der das Fernesehsignal digitalisierte und über Kontrast-Werte das
Sender-Logo erkannte.
Die Hardware bestand im wesenlichen aus einen High-Speed-ADC einen
Compsite-Signal-Generator und einem UBICOM SX (PIC-ähnlich mit 75 MHz
übertaktet). Die im Artikel beschriebenen Hintergrund-Informationen
waren recht gut. Vielleicht kannst du dir den Artikel/Zeitschrift bei
Elektor organisieren.


Gruss,

Peter
Gast #127782
Lesenswert?

schau dir mal den TVP5150 von Texas Instruments an. Sehr kompakt (32 Pin
TQFP 0,5mm Pitch). Anzusteuern mit I2C. Allerdings kann der TVP5150 nur
einen 8Bit Datenstrom erzeugen. Muster bekommst du unter www.ti.com.
Zur Not könnte ich dir auch noch 1 oder 2 Stück davon zukommen lassen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren