Ich habe eine einfache Netzwerkkamera mit ESP32-CAM und RTSP erstellt.
ESP32-CAM kann sowohl mit der Arduino IDE als auch mit ESP32 entwickelt werden. Eine Skizze namens "Camera Server" wird als Beispiel erstellt, und Sie können sie problemlos als Netzwerkkamera verwenden, indem Sie sie in ESP32-CAM schreiben.
Nach dem Schreiben können Sie das Video ansehen, indem Sie über einen Browser auf die IP-Adresse zugreifen, die ESP32-CAM zugewiesen wurde. Darüber hinaus können die Bildqualitätsanpassung und die Gesichtserkennung über den Browser gesteuert werden, was für eine einfache Netzwerkkamera ausreicht.
Dieses Mal habe ich eine Netzwerkkamera mit RTSP erstellt, ohne sie zu verwenden. Der Hauptgrund dafür war, dass mein Ziel darin bestand, "Videos in Python-Programmen verfügbar zu machen".
ESP32-CAM verfügt über WLAN- und Bluetooth-Funktionen. Um diese Funktion in Japan nutzen zu können, muss das Ministerium für innere Angelegenheiten und Kommunikation "Technische Konformität" einholen. Die Verwendung nicht technischer Produkte kann mit Strafen belegt werden.
Siehe hier für Details [Wikipedia: Technische Eignungsmarke](https://ja.wikipedia.org/wiki/%E6%8A%80%E9%81%A9%E3%83%9E%E3%83%BC%E3%82%AF #% E6% A6% 82% E8% A6% 81) Drahtloses Standardzertifizierungssystem Informationen zum Standardzertifizierungssystem für Endgeräte
Ab dem 20. November 2019 wurde ein System gestartet, mit dem Sie Geräte verwenden können, die für Experimente nicht technisch geeignet sind. Spezielles System für Experimente mit Geräten, die nicht technisch geeignet sind
Unter diesem System können Sie die nicht erworbene technische Eignung für experimentelle Zwecke nutzen, indem Sie eine vorgeschriebene Benachrichtigung einreichen. Es gibt jedoch bestimmte Einschränkungen wie den Zeitraum, die verfügbaren Funkstandards und das Frequenzband.
Dieses Mal habe ich diese Benachrichtigung gemacht und verwende ESP32-CAM.
Bei der diesmaligen Verwendung von RTSP mit ESP32-CAM habe ich auf das folgende Repository verwiesen Micro-RTSP
In der ursprünglichen Skizze wurde ESP32-CAM im SoftAP-Modus (Access Point-Modus) verwendet. Ich habe es geändert und eine feste IP-Adresse festgelegt.
wsp32-cam.ino
WiFi.config(ip, gatway, subnet);
while (WiFi.status() != WL_CONNECTED)
{
Serial.print("Attempting to connect to SSID: ");
Serial.println(ssid);
WiFi.begin(ssid, password);
delay(10000);
}
In der ursprünglichen Skizze wurde WebServer zusätzlich zu RTSP festgelegt, jedoch zur Vereinfachung der Skizze gelöscht.
In Python wird das Video von ESP32-CAM von OpenCV empfangen und angezeigt.
view.py
esp_ip = ''
esp32cam_camera = cv2.VideoCapture(f"rtsp://{esp_ip}:8554/mjpeg/1")
Da es auf der Python-Seite einfach als Bilddaten behandelt werden kann, kann es auf verschiedene Arten verwendet werden, z. B. als Gesichtserkennung und Objekterkennung.
Die erstellte Quelle wird auf git hochgeladen. ESP32CAM_RTSP
Recommended Posts