>  기사  >  Java  >  Java에서 OpenCV를 사용하여 시스템 카메라에서 스냅샷 찍기

Java에서 OpenCV를 사용하여 시스템 카메라에서 스냅샷 찍기

王林
王林앞으로
2023-08-28 11:09:10676검색

Java에서 OpenCV를 사용하여 시스템 카메라에서 스냅샷 찍기

소개

OpenCV(오픈 소스 컴퓨터 비전 라이브러리)는 오픈 소스 컴퓨터 비전 및 기계 학습 소프트웨어 라이브러리입니다. 여기에는 2500개 이상의 최적화 알고리즘이 포함되어 있으며 실시간 애플리케이션에 널리 사용됩니다.

Java는 JavaCV 라이브러리를 통해 OpenCV에 대한 바인딩을 제공하므로 Java 개발자는 애플리케이션에서 OpenCV의 기능을 활용할 수 있습니다. 그러한 응용 프로그램 중 하나는 웹캠에서 이미지를 캡처하는 것입니다.

전제조건

계속하려면 다음이 필요합니다 -

  • OpenCV가 시스템에 설치되어 있습니다.

  • JavaCV는 Java의 OpenCV용 래퍼입니다.

OpenCV를 사용하여 스냅샷 캡처

스냅샷을 캡처하려면 비디오 캡처 장치를 나타내는 VideoCapture 클래스의 인스턴스를 생성해야 합니다. 그런 다음 읽기 메서드를 사용하여 비디오 소스에서 프레임을 캡처할 수 있습니다.

예시를 보시죠 -

으아아아

지침

위 코드에서는 먼저 OpenCV 라이브러리를 로드합니다.

그런 다음 기본 카메라(색인 0)에 대한 VideoCapture 개체를 만듭니다. 여러 대의 카메라가 있고 다른 카메라를 사용하려는 경우 VideoCapture 개체를 생성할 때 해당 인덱스를 지정할 수 있습니다.

isOpened 메소드를 사용하여 카메라가 성공적으로 열렸는지 확인합니다. 카메라에 액세스할 수 없으면 오류 메시지를 인쇄하고 기본 메서드에서 반환됩니다.

다음으로 읽기 메서드를 사용하여 카메라에서 프레임을 캡처하고 이를 Mat 객체에 저장합니다. Mat(Matrix의 약자)는 픽셀 데이터를 저장하는 데 사용되는 OpenCV의 주요 이미지 구조입니다.

Imgcodecs 클래스의 imwrite 메소드를 사용하여 캡처된 프레임을 이미지로 저장하고 이름을 "snapshot.png"로 지정합니다.

마지막으로 release 메소드를 사용하여 카메라를 릴리즈하여 리소스를 릴리즈합니다.

이 프로그램을 실행하면 웹캠에서 단일 프레임을 캡처하여 프로젝트 디렉토리에 "snapshot.png"로 저장합니다.

결론

OpenCV를 사용하여 Java 웹캠에서 이미지를 캡처하는 것은 얼굴 인식, 동작 감지 등과 같은 더 복잡한 응용 프로그램에 대한 많은 기회를 열어주는 간단한 프로세스입니다. Java에서 OpenCV 라이브러리를 사용하는 방법을 이해하면 컴퓨터 비전 및 이미지 처리를 탐구하기 위한 견고한 기반이 제공됩니다.

위 내용은 Java에서 OpenCV를 사용하여 시스템 카메라에서 스냅샷 찍기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제