Heim  >  Artikel  >  Backend-Entwicklung  >  PHP betreibt die Kamera für Echtzeit-Bewegungsverfolgung: detaillierte Schritte

PHP betreibt die Kamera für Echtzeit-Bewegungsverfolgung: detaillierte Schritte

WBOY
WBOYOriginal
2023-08-02 10:55:511500Durchsuche

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.

3. Kamerabild öffnen und anzeigen

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);
?>

Speichern Sie den obigen Code als .php-Datei und greifen Sie dann in Ihrem Browser auf die Datei zu, um das Kamerabild zu öffnen und anzuzeigen.

4. Echtzeit-Bewegungsverfolgung

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();
?>

Der obige Code veranschaulicht, wie die OpenCv-Bibliothek für die Echtzeit-Bewegungsverfolgung verwendet wird. Bevor Sie diesen Code ausführen, müssen Sie zunächst die OpenCv-Bibliothek installieren und sicherstellen, dass die Kamerageräte-ID korrekt ist.

Durch die oben genannten Schritte können wir PHP verwenden, um die Kamera für die Bewegungsverfolgung in Echtzeit zu bedienen. Dies bietet uns einen großen Komfort bei der Implementierung von Funktionen wie Gesichtserkennung und Bewegungsüberwachung in Webanwendungen. Ich hoffe, dass die Einführung in diesem Artikel für Sie hilfreich sein kann!

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn