카메라 파라미터 구성#
Exposure Time#
Exposure Time은 각 프레임에 대해 카메라 센서가 빛에 노출되는 시간을 정의합니다. 이는 이미지 밝기, 모션 블러, 신호 품질에 직접적인 영향을 미치기 때문에 이미지 취득에서 가장 중요한 Property 중 하나입니다.
Exposure Time의 영향#
노출되는 동안 센서는 광자를 수집하여 전기 신호로 변환합니다. Exposure Time이 길어질수록 더 많은 빛이 축적됩니다. 이 시각화 자료는 이를 요약합니다:
Exposure Time의 길이는 다음과 같은 영향을 미칩니다:
- Brightness
- 노출이 길어지면 밝기가 증가합니다.
- 노출이 짧아지면 밝기가 감소합니다.
- 모션 블러
- 노출이 길면 움직이는 물체가 흐리게 나타납니다.
- 노출이 짧으면 움직이는 물체가 멈춘 것처럼 나타납니다.
- 이미지 노이즈
- 매우 짧은 노출은 노이즈가 있는 이미지(낮은 신호)를 초래할 수 있습니다.
- 노출이 길어지면 신호 품질은 향상되지만 모션 블러가 발생할 수 있습니다.
애플리케이션에 따라 Exposure Time을 지정할 때 어떤 효과에 우선순위를 둘지 결정해야 합니다. 다음 표가 지침이 될 수 있습니다.
| 목표 | 권장 노출 |
|---|---|
| 빠른 움직임 고정 | 짧은 노출 |
| 밝기 극대화 | 긴 노출 |
| 안정적인 측정 | 균형 잡힌 노출 |
구성 예시#
ExposureAuto = Off수동 제어를 보장합니다.ExposureTime다음에서 지정됩니다. microseconds (µs).
주요 내용 요약#
Exposure Time은 항상 다음 요소들과 연관하여 선택해야 합니다.
- 장면의 밝기
- 모션 속도
- 프레임 레이트 요구 사항
올바른 Exposure Time을 지정하는 것은 안정적인 비전 시스템을 구축하는 데 있어 기본적인 단계입니다.
camera.ExposureAuto.Value = "Off"
camera.ExposureTime.Value = 3000 # Value is in microseconds. Check ValueRange for valid values.
#alternatively:
camera.ExposureTimeAbs.SetValue(3000, pylon.FloatValueCorrection_ClipToRange)
Gain#
Gain은 노출 후 센서 신호의 전자적 증폭을 제어합니다. Exposure Time과 달리 Gain은 캡처된 빛의 양을 늘리는 것이 아니라 기존 신호를 증폭합니다. 이 시각화 자료는 이를 요약합니다.
Low gain → weak amplification → darker but cleaner image
High gain → strong amplification → brighter but noisier image
Gain의 영향#
- Brightness
- Gain을 높이면 이미지가 더 밝아집니다.
- 실제 신호 강도를 증가시키는 것이 아니며, 이미 캡처된 내용을 증폭할 뿐입니다.
- 이미지 노이즈
- 높은 Gain은 신호와 노이즈를 모두 증폭합니다.
- 과도한 Gain은 이미지를 거칠게 만듭니다.
- Detail Quality
- 높은 Gain은 대비 및 미세 디테일의 가시성을 저하시킬 수 있습니다.
구성 예시#
주요 내용 요약#
- Exposure Time을 늘릴 수 없는 경우(예: 모션 블러 발생 위험이 있는 경우) Gain을 사용하십시오.
- 화질과 신호 대 잡음비(SNR)가 중요한 경우 과도한 Gain을 피하십시오.
일반적인 규칙: 가능한 경우 높은 Gain보다 긴 Exposure Time을 선호하십시오.
ROI#
ROI (Region of Interest)는 각 프레임마다 실제로 읽혀지고 전송되는 센서의 부분을 정의합니다. 기본적으로 ROI는 센서와 동일한 크기(전체 해상도)입니다. 너비와 높이를 변경하여 장면에 관련된 부분에만 집중할 수 있습니다. 이 시각화 자료는 이를 요약합니다.
ROI를 줄이면 지정된 영역 외부에 있는 픽셀은 읽히거나 전송되지 않습니다.
다음 항목을 사용하여 ROI를 조정할 수 있습니다. Width, Height, OffsetX 및 OffsetY 파라미터의 상태를 업데이트합니다. Width + OffsetX 다음 항목에 의해 제한됩니다. MaxWidth 및 Height + OffsetY 다음 항목에 의해 제한됩니다. MaxHeight.
정보
- ROI 치수는 하드웨어 제약 조건(증분, 정렬)의 적용을 받습니다.
- 최대 ROI는 전체 센서 해상도와 같습니다.
- ROI를 변경하려면 이미지 취득을 중지해야 합니다.
Image ROI 변경의 영향#
- 프레임 레이트 증가: 프레임당 데이터가 줄어들면 더 빠른 판독과 더 높은 프레임 레이트(fps)가 가능합니다.
- 대역폭 감소: GigE 카메라에 특히 중요합니다.
- 처리 부하 감소: 이미지 크기가 작을수록 더 빠른 이미지 처리(OpenCV/AI)가 가능합니다.
- 관심 영역 집중: 장면의 불필요한 부분을 제외할 수 있습니다.
다음 표는 더 작은 ROI가 애플리케이션에 어떻게 도움이 되는지 가이드라인을 제공합니다.
| 사용 사례 | 더 작은 ROI의 이점 |
|---|---|
| 작은 개체 추적 | 더 빠른 처리 및 노이즈 감소 |
| 고속 검사 | 프레임 레이트 증가 |
| 특정 구역 내 에지 검출 | 연산량 감소 |
구성 예시#
주요 내용 요약#
ROI 축소는 머신 비전 시스템에서 가장 효과적인 성능 도구 중 하나입니다. 소스에서 데이터 양을 줄임으로써 다음 측면을 개선할 수 있습니다.
- 처리량
- 지연 시간
- 시스템 확장성
소프트웨어를 통한 이미지 자르기와 달리, ROI를 줄이면 파이프라인에 들어가기 전에 불필요한 데이터가 제거됩니다.
Static Defect Pixel Correction#
Defect Pixel Correction을 사용하면 센서 개별 픽셀의 감도 차이로 인한 영향을 최소화할 수 있습니다. 이 기능은 모든 카메라에서 지원되는 것은 아닙니다. 따라서 현재 장치에서 지원되지 않을 가능성을 고려해 대비책을 마련하는 것이 중요합니다.
정보
- 사용
pylon.StaticDefectPixelCorrection호출camera.NodeMap. - 사용
ListType_Factory공장 제공 불량 픽셀 읽기 - 사용
ListType_User사용자 지정 불량 픽셀 읽기/업데이트 - 잡기
pylon.RuntimeException및pylon.InvalidArgumentException지원되지 않는 모델의 경우
구성 예시#
from pypylon import pylon
with pylon.InstantCamera(pylon.FirstFound) as camera:
# Read the factory defect pixel list.
factory_ok, factory_pixels = pylon.StaticDefectPixelCorrection.GetDefectPixelList(
camera.NodeMap,
[],
pylon.StaticDefectPixelCorrection.ListType_Factory,
)
# Build/update the user list as (x, y) or (x, y, type) tuples.
user_pixels = [(100, 200), (300, 400, 0)]
try:
normalize_ok, normalized_pixels = pylon.StaticDefectPixelCorrection.NormalizePixelList(
camera.NodeMap,
user_pixels,
)
set_ok, written_pixels = pylon.StaticDefectPixelCorrection.SetDefectPixelList(
camera.NodeMap,
normalized_pixels,
pylon.StaticDefectPixelCorrection.ListType_User,
)
get_ok, read_back_pixels = pylon.StaticDefectPixelCorrection.GetDefectPixelList(
camera.NodeMap,
[],
pylon.StaticDefectPixelCorrection.ListType_User,
)
except (pylon.RuntimeException, pylon.InvalidArgumentException):
# Camera does not provide this feature.
pass
주요 내용 요약#
정적 불량 픽셀 보정은 장치 종속 기능으로 취급하세요. 사용 가능한 경우 사용하고, 지원되지 않는 경우 적절히 우회하도록 처리하세요.