현재 위치: > 최신 기사 목록> PHP를 사용하여 OpenCV를 결합하여 이미지 가장자리 감지 및 스트로크를 달성하는 것에 대한 완전한 자습서

PHP를 사용하여 OpenCV를 결합하여 이미지 가장자리 감지 및 스트로크를 달성하는 것에 대한 완전한 자습서

M66 2025-06-04

소개

이미지 처리 및 컴퓨터 비전 분야에서 이미지 가장자리 감지는 주로 이미지에서 경계 기능을 추출하는 데 사용되는 핵심 기술입니다. 이미지 스트로크는 이미지의 구조를 명확하게하기 위해 이러한 가장자리를 시각적으로 표시합니다. 이 기사는 OpenCV 라이브러리와 결합 된 PHP 언어를 통해 이미지 에지 감지 및 스트로크의 특정 구현 방법을 소개하며, 개발자가 실용적인 기술을 마스터 할 수 있도록 완전한 코드 예제를 동반 할 것입니다.

1. 환경 준비

이미지 처리를 수행하기 전에 개발 환경에 PHP 및 OpenCV 확장 지원이 있는지 확인하십시오. 기본 준비 단계는 다음과 같습니다.

1. PHP 및 OpenCV 라이브러리를 설치하십시오

Linux 시스템에서는 다음 명령에 따라 PHP가 설치되는지 확인할 수 있습니다.
 php -v

설치되지 않은 경우 다음 명령을 사용하여 설치하십시오.

 sudo apt-get install php
sudo apt-get install php-opencv

2. 테스트 이미지를 준비하십시오

테스트 이미지를 선택하고 이름을`test.jpg`로 이름을 지정하여 쉽게 읽고 처리 할 수 ​​있도록 PHP 스크립트와 동일한 디렉토리에 배치하십시오.

2. 이미지 가장자리 감지를 실현하십시오

이미지는 OpenCV에서 제공하는 Canny Edge Detection 알고리즘을 사용하여 처리됩니다. 다음은 완전한 구현 코드입니다.
 <?php
// 이미지로드
$image = cvimread("test.jpg");

// 그레이 스케일로 돌아갑니다
$gray = cvcvtColor($image, CV_BGR2GRAY);

// 가장자리 감지
$edges = cvCanny($gray, 50, 150);

// 결과를 보여줍니다
cvimshow("Edges", $edges);
cvwaitKey();
?>

위의 프로세스에서 먼저 이미지를 회색 스케일 형식으로 변환 한 다음 cvcanny () 함수를 사용하여 에지 감지를 수행하면 임계 값이 각각 50과 150으로 설정됩니다. 마지막으로, 처리 결과는 cvimshow () 를 통해 표시됩니다.

3. 이미지 스트로크 작동

에지 감지를 완료 한 후 이미지 구조의 시각적 성능을 향상시키기 위해 이미지를 쓰다듬을 수 있습니다.
 <?php
// 이미지로드
$image = cvimread("test.jpg");

// 그레이 스케일로 돌아갑니다
$gray = cvcvtColor($image, CV_BGR2GRAY);

// 가장자리 감지
$edges = cvCanny($gray, 50, 150);

// 색상 이미지로 변환하십시오
$color = cvcvtColor($edges, CV_GRAY2BGR);

// 개요를 찾으십시오
$contours = cvindContours($edges, cvCV_RETR_EXTERNAL, cvCV_CHAIN_APPROX_SIMPLE);

// 윤곽을 그립니다
cvdrawContours($color, $contours, -1, [0, 255, 0], 2);

// 뇌졸중 효과를 보여줍니다
cvimshow("Edges with Contours", $color);
cvwaitKey();
?>

이 부분은 컨투어 추출 및 드로잉 작업을 사용하여 이미지의 가장자리를 크게 스트로크합니다. 모서리 맵을 색 형식으로 변환하고 녹색 스트로크를 사용하여 각각의 감지 된 외부 윤곽을 묘사하여 이미지 구조는 더 명확하고 더 잘 보이게됩니다.

4. 요약

OpenCV와 결합 된 PHP를 통해보다 효율적인 이미지 가장자리 감지 및 스트로크 기능을 달성 할 수 있습니다. 이 기사에서는 이미지 로딩, 그레이 스케일 변환, 에지 추출 및 에지 도면의 두 가지 실제 예를 통해 완전한 처리 흐름을 보여줍니다. 이 방법은 기본 이미지 기능 추출 요구 사항에 적합하며보다 복잡한 시나리오에서도 완벽하게 사용할 수 있습니다.

이 기사가 OpenCV를 사용하여 PHP 환경의 이미지 에지 문제를 처리하고 이미지 처리 프로젝트의 기초를 마련하는 방법을 이해하는 데 도움이되기를 바랍니다. 지속적인 학습 및 실험은 이미지 알고리즘 구현 기능을 더욱 향상시키는 데 도움이됩니다.