我有一個相機放置在距離寬度= 50cm,高度= 15cm的肖像(矩形)10米遠的地方,我希望在拍攝的圖像內獲得此肖像的尺寸。捕獲的圖像寬度= 800像素,高度= 600像素。根據相機距離遙遠的圖像中的對象尺寸遠距
如何計算圖像內的人像尺寸?請幫忙嗎?
我有一個相機放置在距離寬度= 50cm,高度= 15cm的肖像(矩形)10米遠的地方,我希望在拍攝的圖像內獲得此肖像的尺寸。捕獲的圖像寬度= 800像素,高度= 600像素。根據相機距離遙遠的圖像中的對象尺寸遠距
如何計算圖像內的人像尺寸?請幫忙嗎?
我假設相機位於肖像中心正常位置,直視人像中心。
讓我們定義一些變量。
我們知道tan(FOV)=(CW cm)/(100 * D cm)。因此CW = tan(FOV)* 100 * D cm。
我們知道PW/CW = X/IW。因此X =(IW * PW)/(tan(FOV)* 100 * D)px。
感謝您的回答,但我想澄清一下您的意思是什麼水平視野?縱向拍攝的寬度和圖像空間中的縱向寬度有什麼區別? –
@ 0_0水平視野是相機可以在任何一側看到的程度。例如,90度的水平視野意味着攝像機可以直線前進,並且任何一側都可以看到45度。圖像空間中人像的寬度是人像在相機圖像中出現的寬度(以像素爲單位)。 –
我同意蒂莫西的回答,因爲你需要知道相機的視場(FOV)。但我不確定我完全遵循/同意他的方法。我認爲這是相似的,但它有所不同,視場角需要除以2才能將我們的觀點分爲兩個直角三角形。使用黃褐色(X)=相反/相鄰
黃褐色(FOV/2)=(IW/2)/(DIST * 100)
其中IW是真正的圖像寬度(必須用兩個作爲分我們只找到直角三角形的一半寬度),分辨率是從相機到人像的距離(轉換爲釐米)。
重新安排找到整個圖像的寬度(IW):
IW = t和(FOV/2)*(2 * DIST * 100)
現在,可以制定出的寬度每個像素(PW)使用圖像寬度中的像素數量(800)。
PW = IW/NumPixels
PW = IW/800
現在,通過該值除以真寬度找到的像素的數量。
PixelWidth = TrueWidth/PW
同樣可以做到的高度,但你需要看你的相機的視野。 林不知道這是一個蒂莫西的答案,但我敢肯定這是正確的。
您需要指定相機的視野(即相機型號)。 –