PHP および OpenCV ライブラリを使用してターゲット追跡を実装するにはどうすればよいですか?
オブジェクト追跡はコンピュータ ビジョンにおける重要な問題であり、連続画像シーケンス内の対象オブジェクトの識別と追跡が含まれます。この記事では、PHP と OpenCV ライブラリを使用してオブジェクト トラッキングを実装する方法について説明し、いくつかのコード例を示します。
まず、PHP と対応する OpenCV 拡張ライブラリをインストールする必要があります。ターミナルまたはコマンド ラインで次のコマンドを実行することで、関連するライブラリをインストールできます。
sudo apt-get install php sudo apt-get install php-dev sudo apt-get install pkg-config sudo apt-get install libopencv-dev sudo apt-get install libphp-embed
インストールが完了したら、次のコマンドを実行する必要があります。ファイル内で PHP Enable OpenCV 拡張機能を設定します。 php.ini ファイルを見つけてテキスト エディタで開き、次の行を見つけてコメントを解除します。
;extension=opencv.so
これを次のように変更します。
extension=opencv.so
ファイルを保存して閉じた後、次のことが必要です。変更を有効にするために PHP を再起動します。
次に、ターゲット追跡を実装するための PHP スクリプトを作成します。まず、OpenCV ライブラリをインポートする必要があります。
<?php // 导入OpenCV库 opencv_import(); ?>
ターゲット追跡の前に、追跡する画像とターゲット テンプレートをロードする必要があります。 。イメージとターゲット テンプレートをロードするためのサンプル コードは次のとおりです。
<?php // 加载图像 $image = opencv_load_image('path/to/image.jpg'); // 加载目标模板 $template = opencv_load_image('path/to/template.jpg'); ?>
イメージとターゲット テンプレートをロードしたら、実行します。ターゲット追跡。以下は、OpenCV ライブラリを使用してターゲット追跡を実装するサンプル コードです。
<?php // 执行目标跟踪 $result = opencv_match_template($image, $template, CV_TM_CCOEFF_NORMED); // 标记目标位置 $min_val; $max_val; $min_loc; $max_loc; opencv_min_max_loc($result, $min_val, $max_val, $min_loc, $max_loc); // 绘制目标边界框 $top_left = $max_loc; $bottom_right = [$max_loc[0] + $template->width, $max_loc[1] + $template->height]; opencv_rectangle($image, $top_left, $bottom_right, [0, 255, 0], 2); // 显示结果图像 opencv_show_image($image); // 释放内存 opencv_release_image($image); opencv_release_image($template); opencv_release_image($result); ?>
上記のコードは、OpenCV 関数 opencv_match_template
を使用してターゲット追跡を実行し、opencv_min_max_loc
一致する最上位の位置を見つける関数。次に、opencv_rectangle
関数を使用してターゲットの境界ボックスを描画し、opencv_show_image
関数を使用して結果のイメージを表示します。最後に、メモリ リークを避けるためにメモリを解放する必要があります。
概要:
この記事では、PHP および OpenCV ライブラリを使用してターゲット追跡を実装する方法を紹介します。 PHP および OpenCV ライブラリをインストールする手順について説明し、画像とターゲット テンプレートをロードし、ターゲット追跡を実行する方法を示すいくつかの PHP コード例を提供しました。この記事がお役に立てば幸いです!
以上がPHP と OpenCV ライブラリを使用してターゲット追跡を実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。