banner

블로그

Jun 12, 2023

Python 코드와 함께 Raspberry Pi 카메라 모듈 3을 사용하는 방법

Picamera2 라이브러리를 사용하여 제어하세요.

Raspberry Pi에는 최고의 액세서리가 많이 있으며 그 목록에 확실히 표시되는 액세서리는 새로운 카메라 모듈 3입니다. Raspberry Pi 카메라 모듈 3 리뷰에서 우리는 빠른 자동 초점과 HDR 이미지가 마음에 들고 다음을 원한다고 말했습니다. 이 방법에서 이러한 기능을 공유해 보세요.

이전에 Raspberry Pi 카메라를 사용해 본 적이 없다면 Picamera2 초보자 가이드는 Pi가 멋진 사진을 찍을 수 있도록 도와주는 훌륭한 입문서입니다. 이 방법에서는 Picamera2와 함께 카메라 모듈 3의 초점 시스템을 사용할 수 있는 다양한 방법을 탐색하고 프로세스를 자동화하는 빠르고 간단한 스크립트로 HDR 이미지를 촬영하는 방법을 배웁니다. Python이 마음에 들지 않으면 터미널을 통해 libcamera를 사용하여 카메라 모듈 3을 제어할 수도 있습니다.

자동 초점에는 세 가지 작동 모드가 있습니다.

연속 초점은 알고리즘을 사용하여 이미지 스트림에서 대상을 검색합니다. 표적이 가깝거나(약 10cm) 멀거나 상관없이 알고리즘이 표적을 찾아 고정합니다. 하지만 우리는 그것을 어떻게 사용합니까? 간단한 테스트를 실행해 보겠습니다. 연속 초점 모드를 사용하여 대상에 대한 최상의 초점을 찾습니다. 카메라에 담을 수 있는 물건이 있으면 유용할 것 같습니다. 우리는 1달러 지폐를 사용했습니다.

1.메인 메뉴에서 프로그래밍 >> Thonny를 엽니다.

2.Picamera2를 가져옵니다.

삼.libcamera의 컨트롤 클래스를 가져옵니다.이를 통해 우리는 요구 사항에 맞게 카메라를 구성할 수 있습니다.

4.picam2 객체 생성코드와 카메라 사이의 링크로 사용할 것입니다.

5.미리보기 창을 시작합니다.미리보기는 카메라의 출력을 보는 곳입니다.

6.AfMode(자동 초점 모드)를 연속으로 설정하세요.

7.코드를 AFtest.py로 저장합니다.

8.실행을 클릭하여 코드를 시작합니다. 미리보기 창이 나타납니다. 개체를 이동하고 프레임 주위에서 달러 지폐를 선택하고 초점이 이동하는 것을 관찰합니다. 물체를 렌즈에 더 가까이 이동해 보십시오. 가장 가까운 초점은 10cm라는 점을 기억하십시오.

때로는 고정된 초점이 멋진 사진을 찍는 데 필요한 것입니다. 결국 우리는 흐릿한 혼란을 포착하고 싶지 않습니다. 초점을 수정하는 것은 비교적 간단합니다. 실제로 이전 예제의 코드 대부분을 재사용할 수 있을 정도로 쉽습니다.

1.다른 이름으로 저장 사용이전 예에서 to ManualFocusTest.py라는 새 파일을 만듭니다.

2.LensPosition을 사용하도록 마지막 줄을 변경하세요., 이 경우 무한 초점을 위해 값을 0.0으로 설정합니다.

삼.코드를 실행하세요.멀리 있는 물체의 경우 초점이 선명하지만 가까이 있는 물체의 경우 흐려지는 것을 확인하세요.

4.LensPosition 값을 0.5로 변경합니다.이렇게 하면 약 50cm의 초점 거리가 제공됩니다.

5.코드를 저장하고 실행하세요. 카메라를 향해 개체를 이동하거나 카메라 반대쪽으로 이동합니다. 50cm 부근에서 초점이 어떻게 선명해지는지 확인하세요.

버드캠, 학교 운동회, 가정 보안 등 때로는 일련의 선명한 이미지를 얻어야 할 때가 있습니다. 다행히 카메라 모듈 3을 설정하여 일련의 빠른 이미지를 촬영하고 자동 초점을 고속으로 설정할 수 있습니다.

1.AfFastFocus.py라는 새 파일을 만듭니다.

2.Picamera2를 가져옵니다.

삼.libcamera의 컨트롤 클래스를 가져옵니다.이를 통해 우리는 요구 사항에 맞게 카메라를 구성할 수 있습니다.

4.picam2 객체 생성코드와 카메라 사이의 링크로 사용할 것입니다.

5.미리보기 창을 시작합니다.미리보기는 카메라의 출력을 보는 곳입니다.

6.자동 초점 모드를 연속으로 설정하고 AfSpeed를 고속으로 설정합니다.

7.각 샷 사이에 0.5초의 지연을 두고 세 개의 파일을 캡처하도록 카메라를 설정합니다. 파일 이름 "fastfocus.jpg"는 각 파일에 0, 1, 2를 추가합니다. 세 개의 파일을 번호순으로 제공합니다.

> Thonny. Import Picamera2. Import libcamera's controls class. Create an object, picam2 Start a preview window. Set the AfMode (Autofocus Mode) to be continuous. Save the code as AFtest.py. Click Run to start the code. Use Save As o create a new file called ManualFocusTest.py Change the last line to use LensPosition Run the code. Change the LensPosition value to 0.5. Save and run the code. Create a new file called AfFastFocus.py Import Picamera2. Import libcamera's controls class. Create an object, picam2 Start a preview window. Set the autofocus mode to Continuous and set the AfSpeed to Fast. Set the camera to capture three files, with a delay of half a second between each shot. Close the preview window. Close the camera connection. Save and run the code. AfFastFocus.py Create a new file called HDRAfFastFocus.py Import Picamera2. Import libcamera's controls class. Import the OS module Create an object, picam2 Use the system function from the os module to set the camera to use HDR. Print a message to the Python Shell Start a preview window. Set the autofocus mode to Continuous set the AfSpeed to Fast Set the camera to capture three files, with a delay of one second between each shot. Close the preview window. Close the camera connection. Print a message to the user Save and run the code./strong>
공유하다