PHP는 실시간 이미지 처리를 위해 카메라를 호출합니다: 간단한 튜토리얼 공유
카메라의 실시간 이미지 처리는 영상 감시, 얼굴 인식, 이미지 분석 등과 같은 다양한 시나리오에서 널리 사용됩니다. PHP 개발자의 경우 카메라를 호출하여 실시간 이미지 처리를 달성하는 것도 가능합니다. 이 기사에서는 실시간 이미지 처리를 위해 PHP를 사용하여 카메라를 호출하는 방법을 알려주는 간단한 튜토리얼을 공유합니다.
1.1 OpenCV 다운로드 및 설치
OpenCV 공식 웹사이트(https://opencv.org/)에 접속하여 최신 버전의 OpenCV를 다운로드할 수 있습니다. 시스템에 따라 해당 설치 패키지를 선택하고 다운로드하여 설치를 완료하십시오.
1.2 php-opencv 플러그인 설치
php-opencv는 PHP 개발자가 OpenCV 라이브러리를 운영하기 위한 확장 플러그인입니다. GitHub(https://github.com/opencv/opencv_contrib)에서 플러그인의 소스 코드를 찾아 다운로드한 후 컴파일하고 설치할 수 있습니다. 특정 설치 단계는 공식 문서에 따라 수행할 수 있습니다.
<?php $video = new VideoCapture(0); // 打开默认摄像头 while (true) { $frame = $video->read(); // 读取摄像头的图像帧 if ($frame !== null) { $image = cvimencode(".bmp", $frame); // 对图像帧进行编码 echo "<img src="data:image/bmp;base64," . base64_encode($image) . ""/>"; // 显示图像 } if (waitKey(1) >= 0) { // 按下任意键退出循环 break; } } $video->release(); // 释放摄像头资源 ?>
위 코드는 php-opencv 플러그인을 사용하여 기본 카메라를 열고 VideoCapture 클래스를 호출하여 카메라의 이미지 프레임을 읽습니다. 그런 다음 이미지 프레임이 인코딩되고 이미지는 echo 문을 통해 브라우저에 표시됩니다. 아무 키나 누르면 루프를 종료하고 카메라 리소스를 해제합니다.
<?php $video = new VideoCapture(0); // 打开默认摄像头 $cascade = new CascadeClassifier('haarcascade_frontalface_default.xml'); // 加载人脸识别模型 while (true) { $frame = $video->read(); // 读取摄像头的图像帧 if ($frame !== null) { $gray = cvcvtColor($frame, cvCOLOR_BGR2GRAY); // 将彩色图像转换为灰度图像 cvequalizeHist($gray, $gray); // 直方图均衡化增强对比度 $faces = $cascade->detectMultiScale($gray); // 人脸检测 foreach ($faces as $face) { cvectangle($frame, $face, new Scalar(0, 255, 0)); // 绘制人脸矩形 } $image = cvimencode(".bmp", $frame); // 对图像帧进行编码 echo "<img src="data:image/bmp;base64," . base64_encode($image) . ""/>"; // 显示图像 } if (waitKey(1) >= 0) { // 按下任意键退出循环 break; } } $video->release(); // 释放摄像头资源 ?>
위 코드는 카메라에서 이미지 프레임을 읽은 후 먼저 컬러 이미지를 회색조 이미지로 변환하고 히스토그램 균등화를 사용하여 대비를 향상시킵니다. 그런 다음 로드된 얼굴 인식 모델을 사용하여 얼굴 감지를 수행하고 감지된 얼굴 직사각형을 그립니다. 마지막으로 이미지 프레임이 인코딩되어 표시됩니다.
위의 간단한 튜토리얼을 통해 PHP를 사용하여 실시간 이미지 처리를 위해 카메라를 호출할 수 있습니다. 물론 실제 응용에서는 더 복잡한 알고리즘과 처리 절차가 필요할 수 있지만 이 기사에서는 초급 수준의 예제를 제공하므로 실시간 이미지 처리를 학습하는 데 도움이 되기를 바랍니다. 관심이 있으시면 OpenCV 및 php-opencv에서 제공하는 더 많은 기능과 인터페이스를 자세히 알아보고 탐색하실 수 있습니다.
위 내용은 PHP는 실시간 이미지 처리를 위해 카메라를 호출합니다. 간단한 튜토리얼 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!