EverestAndroid 手機(jī)拍照測(cè)距
村花測(cè)距: Android 手機(jī)拍照測(cè)距
知識(shí)背景
利用器具測(cè)距的方式方法較多, 手機(jī)拍照測(cè)距從類別來(lái)分應(yīng)該是屬于單目測(cè)距, 這是需要使用到具體的參數(shù)物作為參考的來(lái)作比對(duì)的, 目前一些手機(jī)測(cè)距應(yīng)用是使用到內(nèi)置的感應(yīng)器, 使用具體的方向、旋轉(zhuǎn)角度來(lái)作為參考指標(biāo)推算的, 有些應(yīng)用則是簡(jiǎn)單地使用到成像圖片與已知實(shí)物大小的比例來(lái)作推算。
在村花測(cè)距應(yīng)用中, 仍然是利用成像大小與實(shí)物的比例關(guān)系來(lái)估算, 不過在具體計(jì)算上引入了手機(jī)硬件的光學(xué)感應(yīng)器的參數(shù), 盡量做到成像大小精確。
計(jì)算的模型
1. 公式
一般光學(xué)公式是使用高斯成像公式, 不過對(duì)手機(jī)攝像頭來(lái)說(shuō)由于焦距較小, 所以直接使用小孔成像公式:
實(shí)際距離/焦距 = 實(shí)際長(zhǎng)(寬)/成像長(zhǎng)(寬)
2. 成像體系指標(biāo)
我們可以使用 “面” 來(lái)理解一個(gè)成像過程, 涉及到的各個(gè)環(huán)節(jié)
a. 實(shí)物面, 也就是實(shí)物的真實(shí)平面
b. 感應(yīng)面, 光線透過手機(jī)鏡頭落在光學(xué)感應(yīng)器上形成的像平面, 光學(xué)感應(yīng)器的尺寸和單個(gè)像素點(diǎn)的面積大小是手機(jī)硬件的一個(gè)指標(biāo)
c. 屏幕面, 生成圖片文件之后, 是需要顯示在手機(jī)屏幕上的, 由于圖片像素大小與屏幕大小是不同的, 所以這里仍然有一個(gè)轉(zhuǎn)換的過程
減少誤差和校正調(diào)整的方法
a. 在應(yīng)用中的 “圖片比對(duì)測(cè)量” 窗口, 會(huì)出現(xiàn)一個(gè)十字標(biāo)尺, 盡量細(xì)心地比對(duì)長(zhǎng)寬, 需要注意的是黃色(測(cè)實(shí)物高度)和藍(lán)色(測(cè)實(shí)物寬度)兩條坐標(biāo)軸的標(biāo)度是不一致的, 因?yàn)樵诖蠖鄶?shù)環(huán)境下, 我們圖片長(zhǎng)寬是 4:3 比例的(真正的原因是手機(jī)攝像頭也正好是這個(gè)比例), 還有誰(shuí)見過正方形的手機(jī)嗎?
b. 在不設(shè)置校正參數(shù)條件下, 實(shí)際距離與計(jì)算出的距離是有差異的, 應(yīng)該說(shuō)是上述 “成像體系指標(biāo)” 還有些因素沒有考慮到并引入,所以在這里我們可以使用線性擬合的方法, 更進(jìn)在實(shí)際應(yīng)用中的算法
結(jié)束語(yǔ)
編寫這個(gè)手機(jī)應(yīng)用主要是為了學(xué)習(xí), 對(duì)于成像專業(yè)上的了解并不精通, 有錯(cuò)誤之處就多交流。 謝謝
圖一
圖片二
