Debugging-Methode der Kamera
Debugging-Methode der Kamera
Da bei eingebetteten Bildverarbeitungssystemen maschinelles Sehen an die Verarbeitung und Analyse beteiligt ist, wird das Debuggen der Kamera des Bilderzeugungstools schwieriger.
Visuelle Einführung
Beim maschinellen Sehen werden Maschinen anstelle menschlicher Augen verwendet, um die äußere Umgebung wahrzunehmen und Messungen und Beurteilungen vorzunehmen. Das erfasste Ziel wird über ein Bildgebungsgerät (d. h. ein Bildaufnahmegerät, unterteilt in CMOS und CCD) in ein Bildsignal umgewandelt, das an ein spezielles Bildverarbeitungssystem übertragen und entsprechend der Pixelverteilung, Helligkeit, Farbe und anderen Informationen in ein digitales Signal umgewandelt wird. Das Bildsystem führt verschiedene Operationen an diesen Signalen durch, um die Eigenschaften des Ziels zu extrahieren, und steuert dann die Aktionen des Geräts vor Ort entsprechend den Ergebnissen der Unterscheidung. Bei einigen Systemen, die Aktionen in hoher Echtzeit erfordern, können die menschliche Reaktionsgeschwindigkeit und die Informationsverarbeitungsfähigkeiten die Anforderungen nicht erfüllen. Beim maschinellen Sehen ist die Informationsintegration leicht zu erreichen, und die Kombination mit Computersteuerungssystemen kann die Automatisierung des Systems verbessern.
Debug-Zweck
Der Zweck der Kamerafehlerbehebung in eingebetteten Systemen besteht darin, die mechanischen und elektrischen Parameter der Kamera so zu optimieren, dass unter Berücksichtigung der Systemanforderungen Bilddaten in höchster Qualität erzeugt werden. Bei einem Bildgebungssystem mit Hardware und Software wird die Bildqualität häufig durch zahlreiche Faktoren wie äußere Störungen und eigene Einschränkungen beeinflusst. Diese Effekte führen zu Rauschen und einer ungleichmäßigen Bildgebung. Faktoren auf Softwareebene sind häufig algorithmische Probleme. Probleme auf dieser Ebene können durch theoretische Analysen und mathematische Berechnungen gelöst werden. Faktoren auf Hardwareebene müssen mit Instrumenten behoben werden und können durch experimentelle Messungen und Analysen gelöst werden. Da es sich bei der Kamera um die unterste Schicht des Hardwareverarbeitungssystems handelt, wirkt sich die Qualität der Hardware direkt auf die Qualität der Software aus und beeinflusst somit die endgültige Bildqualität. Die Kamerafehlerbehebung dient dazu, Störungen auf Hardwareebene so weit wie möglich zu eliminieren.
Debugging-Methode
Da es sich bei eingebetteten Systemen um ein relativ weit gefasstes Konzept handelt, wird in diesem Artikel der HCS12 als Hauptsteuerchip zum Debuggen des Kameragruppenwagens als Beispiel verwendet, um die Debugging-Methode vorzustellen.
(1) Verbinden Sie den externen Schaltkreis mit dem CRT-Display
Führen Sie die drei Leitungen für Strom, Masse und Signal von der analogen Kamera heraus, um die Kamera mit Strom zu versorgen, und verbinden Sie dann die Videosignalleitung mit der Videoeingangsschnittstelle der TV-Box. Der VGA-Ausgang der TV-Box ist mit dem CRT-Display verbunden, sodass das CRT das digitalisierte Kamerabild anzeigen kann. Diese Methode ist eine vollständige Anzeige auf Hardwareebene, die einen Anzeigeeffekt bietet, der genau dem menschlichen Sehen entspricht, was bei der Installation der Kamera und der Korrektur ihrer eigenen physikalischen Parameter eine große Hilfe ist.
(2) Erweitern Sie den LCD-Flüssigkristall außerhalb des Chips
Die MCU der HCS12-Serie enthält eine serielle Peripherieschnittstelle SPI (Serial Peripheral Interface), die eine Datenübertragung zwischen MCUs ermöglicht und deren Geschwindigkeit höher ist als bei serieller asynchroner Kommunikation (SCI). Das SPI-Modul unterstützt außerdem bidirektionale, synchrone und serielle Kommunikation zwischen der MCU und Peripheriegeräten und ermöglicht die Peripherieerweiterung der MCU.
1. Wenn das System läuft, zeigen die angezeigten Zeichen die relevanten Betriebsparameter des Systems in Zeichenform an. Jedes Zeichen belegt 8 x 6 Punkte und benötigt 6 Byte Daten. Um die Zeichenanzeige abzuschließen, müssen Sie nur die entsprechenden Daten an die angegebene Position in der Programmierung schreiben. Da das Flüssigkristallmodul selbst keine Schriftartbibliothek hat, müssen die Flüssigkristallanzeige-Punktmatrixdaten der ASC Ⅱ- Tabellenzeichen zu Beginn des Programms definiert werden, d. h. ein zweidimensionales Array mit einer Größe von N x 6 Byte.
2. Bild anzeigen Nachdem das von der analogen Kamera erfasste Videosignal durch den A/D der MCU digitalisiert wurde, werden die Informationen in einem zweidimensionalen 40*70-Array gespeichert. Anschließend wird das Array binärisiert und kann auf einem LCD-Modul mit einer Auflösung von 48*84 angezeigt werden. So können Entwickler die maschinelle Sicht der Kamera in Echtzeit beobachten.
Bei dieser Methode handelt es sich um eine Anzeigemethode, die Hardware und Software kombiniert und mit der kamerabezogene Informationen in Echtzeit verfolgt und angezeigt werden können, ohne den Systembetrieb während der Anzeige zu unterbrechen.
(3) Selbst geschriebene serielle Kommunikations-Hostcomputer-Software
Das SCI-Modul der MCU wird verwendet, um die Bilddaten an den PC zu senden, und der übergeordnete Computer verwendet die MSCOMM-Steuerungsprogrammierung, um die Kommunikationsdaten zu lesen. Nach dem Lesen der Daten können Sie die leistungsstarken Datenverarbeitungs- und Bildanzeigefunktionen des Windows-Programms verwenden, um die Bilddaten zu verarbeiten, z. B.: das Bild entsprechend den Daten neu zeichnen, das Array filtern und den Filtereffekt anzeigen und das empfangene Array als Datei exportieren. Datenquellen für die Computersimulation bereitstellen.
Bei dieser Methode handelt es sich um eine vollständige Softwareanzeigemethode, bei der nur die Daten von der MCU empfangen werden und eine Reihe von Verarbeitungsvorgängen auf dem PC durchgeführt werden können. Sie bietet im Vergleich zu anderen Methoden keine Vorteile hinsichtlich der Überprüfung von Grafiktransformationseffekten, den Vor- und Nachteilen der Filteranalyse und der Idee der Datensimulation . .
Vergleich der Vor- und Nachteile
1. CRT-Modulationsmethode. Durch die Verbindung mit dem Kameravideosignal kann CRT Maschinenbilder mit hoher Wiedergabetreue anzeigen. Dies kann sich jedoch nur auf den Test der Kameraparameter und die Anpassung der mechanischen Position der Kamera beschränken und hat nichts mit dem digitalen Signal des erweiterten Punkts zu tun.
2. LCD-Debugging-Methode. Es ist zur Datenübertragung direkt mit dem SPI-Port des Einchip-Mikrocomputers verbunden, wodurch das Anzeigebild in Echtzeit aktualisiert werden kann. Dieses Modul kann direkt auf dem System montiert werden, um systembezogene Informationen in Echtzeit anzuzeigen. Aufgrund der begrenzten Auflösung des Moduls können jedoch nur schwarzweiße Binärwerte angezeigt werden, was zu einer Verzerrung digitaler Bilder führt.
3. Serielle Debugging-Methode. Sie kann die leistungsstarken Datenverarbeitungs- und Bildanzeigefunktionen des PCs voll ausnutzen, die hochpräzise Pixelanzeige digitaler Bilder realisieren und die Graustufentabelle exportieren, um Felddaten für die VC- und MATLAB-Simulation bereitzustellen. Allerdings ist die Datenübertragungsgeschwindigkeit zwischen PC und MCU zu langsam, es fehlt die Echtzeitleistung und es fehlen die Vorteile der dynamischen Verfolgung.
Da bei eingebetteten Bildverarbeitungssystemen maschinelles Sehen an die Verarbeitung und Analyse beteiligt ist, wird das Debuggen der Kamera des Bilderzeugungstools schwieriger.
Visuelle Einführung
Beim maschinellen Sehen werden Maschinen anstelle menschlicher Augen verwendet, um die äußere Umgebung wahrzunehmen und Messungen und Beurteilungen vorzunehmen. Das erfasste Ziel wird über ein Bildgebungsgerät (d. h. ein Bildaufnahmegerät, unterteilt in CMOS und CCD) in ein Bildsignal umgewandelt, das an ein spezielles Bildverarbeitungssystem übertragen und entsprechend der Pixelverteilung, Helligkeit, Farbe und anderen Informationen in ein digitales Signal umgewandelt wird. Das Bildsystem führt verschiedene Operationen an diesen Signalen durch, um die Eigenschaften des Ziels zu extrahieren, und steuert dann die Aktionen des Geräts vor Ort entsprechend den Ergebnissen der Unterscheidung. Bei einigen Systemen, die Aktionen in hoher Echtzeit erfordern, können die menschliche Reaktionsgeschwindigkeit und die Informationsverarbeitungsfähigkeiten die Anforderungen nicht erfüllen. Beim maschinellen Sehen ist die Informationsintegration leicht zu erreichen, und die Kombination mit Computersteuerungssystemen kann die Automatisierung des Systems verbessern.
Debug-Zweck
Der Zweck der Kamerafehlerbehebung in eingebetteten Systemen besteht darin, die mechanischen und elektrischen Parameter der Kamera so zu optimieren, dass unter Berücksichtigung der Systemanforderungen Bilddaten in höchster Qualität erzeugt werden. Bei einem Bildgebungssystem mit Hardware und Software wird die Bildqualität häufig durch zahlreiche Faktoren wie äußere Störungen und eigene Einschränkungen beeinflusst. Diese Effekte führen zu Rauschen und einer ungleichmäßigen Bildgebung. Faktoren auf Softwareebene sind häufig algorithmische Probleme. Probleme auf dieser Ebene können durch theoretische Analysen und mathematische Berechnungen gelöst werden. Faktoren auf Hardwareebene müssen mit Instrumenten behoben werden und können durch experimentelle Messungen und Analysen gelöst werden. Da es sich bei der Kamera um die unterste Schicht des Hardwareverarbeitungssystems handelt, wirkt sich die Qualität der Hardware direkt auf die Qualität der Software aus und beeinflusst somit die endgültige Bildqualität. Die Kamerafehlerbehebung dient dazu, Störungen auf Hardwareebene so weit wie möglich zu eliminieren.
Debugging-Methode
Da es sich bei eingebetteten Systemen um ein relativ weit gefasstes Konzept handelt, wird in diesem Artikel der HCS12 als Hauptsteuerchip zum Debuggen des Kameragruppenwagens als Beispiel verwendet, um die Debugging-Methode vorzustellen.
(1) Verbinden Sie den externen Schaltkreis mit dem CRT-Display
Führen Sie die drei Leitungen für Strom, Masse und Signal von der analogen Kamera heraus, um die Kamera mit Strom zu versorgen, und verbinden Sie dann die Videosignalleitung mit der Videoeingangsschnittstelle der TV-Box. Der VGA-Ausgang der TV-Box ist mit dem CRT-Display verbunden, sodass das CRT das digitalisierte Kamerabild anzeigen kann. Diese Methode ist eine vollständige Anzeige auf Hardwareebene, die einen Anzeigeeffekt bietet, der genau dem menschlichen Sehen entspricht, was bei der Installation der Kamera und der Korrektur ihrer eigenen physikalischen Parameter eine große Hilfe ist.
(2) Erweitern Sie den LCD-Flüssigkristall außerhalb des Chips
Die MCU der HCS12-Serie enthält eine serielle Peripherieschnittstelle SPI (Serial Peripheral Interface), die eine Datenübertragung zwischen MCUs ermöglicht und deren Geschwindigkeit höher ist als bei serieller asynchroner Kommunikation (SCI). Das SPI-Modul unterstützt außerdem bidirektionale, synchrone und serielle Kommunikation zwischen der MCU und Peripheriegeräten und ermöglicht die Peripherieerweiterung der MCU.
1. Wenn das System läuft, zeigen die angezeigten Zeichen die relevanten Betriebsparameter des Systems in Zeichenform an. Jedes Zeichen belegt 8 x 6 Punkte und benötigt 6 Byte Daten. Um die Zeichenanzeige abzuschließen, müssen Sie nur die entsprechenden Daten an die angegebene Position in der Programmierung schreiben. Da das Flüssigkristallmodul selbst keine Schriftartbibliothek hat, müssen die Flüssigkristallanzeige-Punktmatrixdaten der ASC Ⅱ- Tabellenzeichen zu Beginn des Programms definiert werden, d. h. ein zweidimensionales Array mit einer Größe von N x 6 Byte.
2. Bild anzeigen Nachdem das von der analogen Kamera erfasste Videosignal durch den A/D der MCU digitalisiert wurde, werden die Informationen in einem zweidimensionalen 40*70-Array gespeichert. Anschließend wird das Array binärisiert und kann auf einem LCD-Modul mit einer Auflösung von 48*84 angezeigt werden. So können Entwickler die maschinelle Sicht der Kamera in Echtzeit beobachten.
Bei dieser Methode handelt es sich um eine Anzeigemethode, die Hardware und Software kombiniert und mit der kamerabezogene Informationen in Echtzeit verfolgt und angezeigt werden können, ohne den Systembetrieb während der Anzeige zu unterbrechen.
(3) Selbst geschriebene serielle Kommunikations-Hostcomputer-Software
Das SCI-Modul der MCU wird verwendet, um die Bilddaten an den PC zu senden, und der übergeordnete Computer verwendet die MSCOMM-Steuerungsprogrammierung, um die Kommunikationsdaten zu lesen. Nach dem Lesen der Daten können Sie die leistungsstarken Datenverarbeitungs- und Bildanzeigefunktionen des Windows-Programms verwenden, um die Bilddaten zu verarbeiten, z. B.: das Bild entsprechend den Daten neu zeichnen, das Array filtern und den Filtereffekt anzeigen und das empfangene Array als Datei exportieren. Datenquellen für die Computersimulation bereitstellen.
Bei dieser Methode handelt es sich um eine vollständige Softwareanzeigemethode, bei der nur die Daten von der MCU empfangen werden und eine Reihe von Verarbeitungsvorgängen auf dem PC durchgeführt werden können. Sie bietet im Vergleich zu anderen Methoden keine Vorteile hinsichtlich der Überprüfung von Grafiktransformationseffekten, den Vor- und Nachteilen der Filteranalyse und der Idee der Datensimulation . .
Vergleich der Vor- und Nachteile
1. CRT-Modulationsmethode. Durch die Verbindung mit dem Kameravideosignal kann CRT Maschinenbilder mit hoher Wiedergabetreue anzeigen. Dies kann sich jedoch nur auf den Test der Kameraparameter und die Anpassung der mechanischen Position der Kamera beschränken und hat nichts mit dem digitalen Signal des erweiterten Punkts zu tun.
2. LCD-Debugging-Methode. Es ist zur Datenübertragung direkt mit dem SPI-Port des Einchip-Mikrocomputers verbunden, wodurch das Anzeigebild in Echtzeit aktualisiert werden kann. Dieses Modul kann direkt auf dem System montiert werden, um systembezogene Informationen in Echtzeit anzuzeigen. Aufgrund der begrenzten Auflösung des Moduls können jedoch nur schwarzweiße Binärwerte angezeigt werden, was zu einer Verzerrung digitaler Bilder führt.
3. Serielle Debugging-Methode. Sie kann die leistungsstarken Datenverarbeitungs- und Bildanzeigefunktionen des PCs voll ausnutzen, die hochpräzise Pixelanzeige digitaler Bilder realisieren und die Graustufentabelle exportieren, um Felddaten für die VC- und MATLAB-Simulation bereitzustellen. Allerdings ist die Datenübertragungsgeschwindigkeit zwischen PC und MCU zu langsam, es fehlt die Echtzeitleistung und es fehlen die Vorteile der dynamischen Verfolgung.