2014-02-15 8 views
0

너비가 50cm, 높이가 15cm 인 초상화 (직사각형)에서 10m 떨어진 곳에 카메라가 있습니다.이 이미지의 크기를 캡처 된 이미지 안에 넣고 싶습니다. 캡처 된 이미지의 폭은 800 픽셀이고 높이는 600 픽셀입니다.멀리 떨어진 카메라 거리에 따른 이미지의 객체 치수

이미지 내의 인물의 크기를 어떻게 계산합니까? 어떤 도움을 주시겠습니까?

+0

카메라의 시야 (즉, 카메라 모델)를 지정해야합니다. –

답변

1

저는 카메라가 인물의 중앙 법선을 따라 위치하여 인물의 중심을 똑바로 본다고 가정합니다.

일부 변수를 정의합시다.

    보기
  • 수평 필드 : FOV (지정해야)
  • 물리적 세로 폭 : PW = 50 cm 캡처 세로면의
  • 폭 : (알 수없는) CW cm
  • 이미지 폭 : IW = 800 픽셀 이미지 공간에서의 세로 폭
  • (미지의) 카메라
  • 피사체 거리 X의 PX : D = 10m
,

우리는 tan (FOV) = (CW cm)/(100 * D cm)을 알고 있습니다. 따라서 CW = tan (FOV) * 100 * Dcm.

우리는 PW/CW = X/IW를 알고 있습니다. 따라서 X = (IW * PW)/(tan (FOV) * 100 * D) px.

+0

답변 해 주셔서 감사합니다.하지만 수평 시야 란 무엇을 의미하는지에 대한 설명이 필요합니까? 그리고 캡처 된 인물 사진의 폭과 이미지 공간의 인물 사진의 너비는 어떻게 다른가요? –

+0

@ 0_0 가로보기 필드는 카메라가 양쪽으로 볼 수있는 범위입니다. 예를 들어, 90도 수평 시야 란 카메라가 직선과 45도 어느쪽으로도 볼 수 있음을 의미합니다. 이미지 공간의 인물 사진의 너비는 카메라의 이미지에 인물이 나타나는 거리 (픽셀 단위)입니다. –

0

카메라의 시야 (FOV)를 알아야한다는 점에서 Timothy의 답변에 동의합니다. 그러나 나는 그의 방법을 완전히 따르거나 동의한다는 것을 확신하지 못한다. 저는 이것이 비슷하다고 생각 합니다만, FOV를 2 등분하여 두 개의 직각 삼각형으로 분할해야합니다. 사용 황갈색 인접 (X) = 반대/

황갈색 (FOV/2) = (IW/2)/(DIST는 * 100)의 IW 진정한 화상 폭

(두 등으로 분할해야 우리는 단지 직각 삼각형으로 너비의 반을 찾는 것을 발견하고있다) 은 카메라에서 초상화까지의 거리 (cm로 변환)이다. 전체 이미지의 폭을 찾을 수

다시 정렬 (IW) :

IW =의 TAND (FOV/2) * (2 * DIST * 100)

이제의 폭을 해결할 수 각 픽셀 (PW)은 이미지 너비 (당신을 위해 800)의 픽셀 수를 사용합니다.

PW = IW/NumPixels/800


PW = IW 지금 화소 수를 찾기 위해이 값을 실제 폭을 나눈다.

PixelWidth = TrueWidth/PW

같은이 높이 수행 할 수 있습니다,하지만 당신은보기의 카메라의 필드가 필요합니다. 이것이 티모시의 대답과 같은지 확신 할 수는 없지만 이것이 정확한지 확신합니다.

관련 문제