最新のWeb開発では、ビデオ会議、監視システム、顔認識分野でカメラアプリケーションが広く使用されています。この記事では、PHPでカメラを呼び出し、OPENCV拡張ライブラリを使用してカメラの画像をリアルタイムでキャプチャして表示する方法に関する詳細なチュートリアルを提供します。
開始する前に、最初にハードウェア機器を準備する必要があります。カメラを備えたコンピューター、またはカメラ機能をサポートするモバイルデバイスを使用できます。 USBカメラを使用している場合は、デバイスがコンピューターに適切に接続されていることを確認してください。
PHPでカメラを呼び出すには、OpenCV(コンピュータービジョンライブラリ)をインストールする必要があります。公式OpenCV Webサイトからオペレーティングシステムに適したバージョンをダウンロードしてインストールできます。
インストールが完了したら、PHP環境にOPENCVのPHP拡張を追加する必要があります。特定の手順については、公式のOpenCVドキュメントを参照してください。
OPENCV拡張機能をインストールした後、PHPでカメラを呼び出すことができます。まず、OpenCV拡張機能をコードに紹介します。
<?php
// 負荷OpenCV拡張
extension_loaded('opencv');
?>
次に、 `cvcreatecameracapture`関数を使用してカメラオブジェクトを作成し、パラメーター「0」はデフォルトのカメラデバイスを使用することを意味します。複数のカメラが接続されている場合は、ニーズに応じてさまざまなデバイスを選択できます。
<?php
// カメラオブジェクトを作成します
$camera = cvCreateCameraCapture(0);
?>
次に、「cvqueryframe」関数を使用して、カメラによってキャプチャされた各フレームを取得して表示します。
<?php
while (true) {
// カメラでキャプチャされた画像を取得します
$frame = cvQueryFrame($camera);
// ブラウザに画像を表示します
header('Content-type: image/jpeg');
imagejpeg($frame);
}
?>
上記のコードは、カメラの画像を継続的に取得し、画像の各フレームをJPEG形式のブラウザに送信します。画像の保存やその他の処理操作など、必要に応じて画像をさらに処理できます。
カメラに電話をかけ、ブラウザにリアルタイムで画像を表示するのに役立つ完全なPHPサンプルコードを次に示します。
<?php
// 負荷OpenCV拡張
extension_loaded('opencv');
// カメラオブジェクトを作成します
$camera = cvCreateCameraCapture(0);
// キャプチャされた画像の幅と高さを設定します
cvSetCaptureProperty($camera, CV_CAP_PROP_FRAME_WIDTH, 640);
cvSetCaptureProperty($camera, CV_CAP_PROP_FRAME_HEIGHT, 480);
// 画像表示ウィンドウを作成します
cvNamedWindow('Camera', CV_WINDOW_NORMAL);
while (true) {
// カメラでキャプチャされた画像を取得します
$frame = cvQueryFrame($camera);
// 画像にテキストを表示します
cvPutText($frame, 'Press ESC to exit', new CvPoint(20, 20), new CvFont(CV_FONT_HERSHEY_SIMPLEX, 0.8, 0.8));
// 画像を表示します
cvShowImage('Camera', $frame);
// ユーザーがキーを押すのを待ちます
$key = cvWaitKey(10);
if ($key == 27) { // ESC鍵
break;
}
}
// カメラオブジェクトを放出します
cvReleaseCapture($camera);
// 画像表示ウィンドウを閉じます
cvDestroyWindow('Camera');
?>
この完全な例を使用すると、PHPを使用してカメラを呼び出して画像をリアルタイムで表示する方法を理解できます。実際のニーズに応じて、機能をさらに開発および拡張できます。
この記事では、必要なソフトウェアツールのインストール方法、OpenCV拡張機能の導入方法、カメラの画像を取得してリアルタイムで表示する方法など、PHPでカメラを呼び出す方法について詳しく説明します。この記事のチュートリアルを通して、カメラアプリケーションを簡単に構築し、PHPでカメラを使用するという一般的な問題を解決できることを願っています。質問や質問がある場合は、メッセージを残して議論してください。私はあなたのためにそれに答えるために最善を尽くします。