OpenCV とネットワーク カメラの統合
評判の高いコンピューター ビジョン ライブラリである OpenCV は、ビデオのキャプチャと処理のための堅牢なツールを提供します。その多用途性はネットワーク カメラにも拡張されており、開発者は RTSP または HTTP プロトコル経由で接続されたカメラの能力を活用できます。
Windows で OpenCV 1.1pre1 を使用しているユーザーは、IP カメラからフレームをキャプチャしようとすると問題が発生する可能性があります。この記事はガイドとして機能し、OpenCV とネットワーク カメラのシームレスな統合を促進するソリューションを提供します。
OpenCV を使用して IP カメラからフレームをキャプチャする
接続を確立するにはIP カメラを使用してフレームを取得することで、OpenCV の高度なビデオ キャプチャ機能を詳しく調べます。 OpenCV 2.0 以降を使用した包括的なコード例を次に示します。
#include "cv.h" #include "highgui.h" #include <iostream> int main(int, char**) { cv::VideoCapture vcap; cv::Mat image; const std::string videoStreamAddress = "rtsp://cam_address:554/live.sdp"; /* mjpeg stream address: "http://user:pass@cam_address:8081/cgi/mjpg/mjpg.cgi?.mjpg" */ if(!vcap.open(videoStreamAddress)) { std::cout << "Error opening video stream or file" << std::endl; return -1; } cv::namedWindow("Output Window"); for(;;) { if(!vcap.read(image)) { std::cout << "No frame" << std::endl; cv::waitKey(); } cv::imshow("Output Window", image); if(cv::waitKey(1) >= 0) break; } }
このコードは、cv::VideoCapture クラスを利用して、指定されたビデオ ストリーム アドレスを使用してカメラへの接続を確立します。次に、カメラからフレームを継続的に読み取り、「出力ウィンドウ」というラベルの付いたウィンドウに表示します。
H.264 RTSP ストリームのサポート
さらに、OpenCV はフレームのキャプチャをサポートします。 H.264 RTSP ストリームから。特定の URL コマンドについては、カメラの API を参照してください。たとえば、Axis ネットワーク カメラは次の RTSP アドレスを使用する場合があります:
rtsp://10.10.10.10:554/axis-media/media.amp
また、パスワードで保護されたカメラの場合、アドレスは次のようになります:
rtsp://username:[email protected]:554/axis-media/media.amp
結論として、OpenCV のこれらの機能を利用すると、開発者はネットワーク カメラをアプリケーションに簡単に統合でき、コンピュータ ビジョンとビデオ分析の領域で幅広い可能性を解き放つことができます。
以上がOpenCV をネットワーク カメラと統合してフレームをキャプチャするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。