PHP-Betriebskamera für Echtzeit-Aktionsverfolgung: Detaillierte Schritte
Kamera ist eines der wichtigsten Geräte im Bereich der modernen Informatik. Sie kann Bilder in unserem Leben erfassen und verschiedene Funktionen durch Computerverarbeitung implementieren. PHP ist eine in der Webentwicklung weit verbreitete Backend-Sprache, mit der auch Kameras für die Echtzeit-Bewegungsverfolgung betrieben werden können. In diesem Artikel wird detailliert beschrieben, wie Sie PHP für den Kamerabetrieb und die Echtzeit-Bewegungsverfolgung verwenden.
1. Installieren Sie die erforderliche Software
Um PHP für den Kamerabetrieb zu verwenden, müssen Sie zunächst einige erforderliche Software installieren. Auf Windows-Systemen können Sie „AmCap“ installieren, ein kostenloses Kamera-Debugging-Tool. Auf Linux-Systemen kann das Paket „gstreamer“ über die Kommandozeile installiert werden.
2. Ermitteln Sie die Geräte-ID der Kamera. Bevor Sie die Kamera in Betrieb nehmen, müssen Sie zunächst die Geräte-ID der Kamera ermitteln. Auf Windows-Systemen können Sie den „Geräte-Manager“ öffnen und die Option „Kamera“ suchen und erweitern. Auf Linux-Systemen können Sie den Befehl „ls /dev/video*“ verwenden, um die ID des Kamerageräts anzuzeigen.
In PHP können Sie das Kamerabild öffnen und anzeigen, indem Sie Systembefehle aufrufen. Hier ist ein Beispielcode:
<?php $deviceID = 0; // 摄像头设备ID $cmd = "AmCap /c".$deviceID; // Windows系统下使用AmCap软件 //$cmd = "gst-launch-1.0 v4l2src device=/dev/video".$deviceID." ! video/x-raw,width=640,height=480 ! autovideosink"; // Linux系统下使用gstreamer软件 exec($cmd); ?>
Nachdem Sie das Kamerabild geöffnet und angezeigt haben, können Sie die Echtzeit-Bewegungsverfolgung starten. Dieser Schritt erfordert die Verwendung einer Bildverarbeitungsbibliothek, um Bewegungen zu erkennen und zu verfolgen. Das Folgende ist ein Beispielcode, der die OpenCv-Bibliothek für die Echtzeit-Bewegungsverfolgung verwendet:
<?php $deviceID = 0; // 摄像头设备ID $cmd = "AmCap /c".$deviceID; // Windows系统下使用AmCap软件 //$cmd = "gst-launch-1.0 v4l2src device=/dev/video".$deviceID." ! video/x-raw,width=640,height=480 ! autovideosink"; // Linux系统下使用gstreamer软件 exec($cmd); // 安装和加载OpenCv库 exec("sudo apt-get install -y php7.4-opencv"); extension_loaded('opencv') or die('skip opencv extension not available'); // 创建一个新的OpenCv图像对象 $image = new OpenCVImage(); while (true) { // 从摄像头中获取图像帧 $frame = $image->captureFromCAM($deviceID); // 应用动作跟踪算法并显示结果 $result = $frame->actionTracking(); // 在浏览器中显示结果图像 $result->showImage(); // 检测是否按下了“ESC”键,如果是则退出程序 if (cvWaitKey(1) == 27) { break; } } // 释放资源 $image->close(); $result->close(); ?>
Das obige ist der detaillierte Inhalt vonPHP betreibt die Kamera für Echtzeit-Bewegungsverfolgung: detaillierte Schritte. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!