鱼眼图像校正(球面等距投影模型)_||
魚眼圖像校正算法
2017.11.6
前面講了關(guān)于魚眼圖像等距投影模型的原理。下面先來看看幾個算法的仿真效果。
本周主要在上周的基礎(chǔ)上完成魚眼圖像校正算法的仿真,上周提出的是基于等距模型的球面投影校正算法。為了完成仿真的任務(wù),先實現(xiàn)了球面透視投影的校正算法,因為等距模型的投影算法本質(zhì)上實際就是將球面投影的坐標(biāo)計算換成了可以根據(jù)等距模型替代的公式。
為了直觀的說明算法的優(yōu)劣下面分別給出經(jīng)緯度校正算法,球面投影模型校正算法,以及等距模型球面透視投影算法的方正代碼及效果。
說明:為了實現(xiàn)完整圖像校正算法。(圓形區(qū)域提取,坐標(biāo)變換,插值),我寫了線性和雙線插值函數(shù) ,圓形區(qū)域提取參考了網(wǎng)上的代碼,但是實際效果不好,在水平方向的圓形區(qū)域查找上效果比較差。
圓形區(qū)域提取效果:
上圖中左邊是原始圖像,右邊是圓形區(qū)域提取之后的圖像。從圖中可以看出目前的方法對垂直方向的邊界確定效果比較好,但是水平方向的邊界確定效果較差。之后圓形區(qū)域提取這部分還需要修正。目前只是為了算法完整性先用來測試坐標(biāo)變換效果。
經(jīng)緯校正算法:
從上圖中可以看出經(jīng)緯校正算法對于圓形圖像中心部分的校正效果還不錯,保持了圖像的垂直特性。但是此方法并不能很好校正圓形圖像的邊緣部分。(實際上可以結(jié)合仿射變換對校正之后的圖像進(jìn)行一下修正,但是這樣可能會影響后續(xù)重疊區(qū)域的計算。)
球面模型透視投影算法:
從圖中可以看出相比于經(jīng)緯度校正算法對于邊緣圖像的校正效果要好一點,但是從上圖中也看出一個問題,那就是球面投影之后的圖像的大小確定的問題。與經(jīng)緯度校正算法相比,球面透視投影算法的目標(biāo)圖像是需要擴(kuò)大的。后續(xù)會完善這一部分的代碼。同時我們也可以看到球面透視投影算法雖然在一定程度上解決了魚眼圖像邊緣彎曲的問題,但是校正效果,也不是很好。還需要進(jìn)一步改進(jìn)。同時算法對圓形圖像半徑的求解依賴很高。不同的半徑對校正效果的影響比較大。
等距模型球面投影算法:
上圖是初步的算法仿真圖,此算法是基于球面投影算法修改的,但是忽略了圖像坐標(biāo)中心變換的問題,以及坐標(biāo)映射時候的坐標(biāo)系一致性問題使得校正未完成。但是從校正出來的部分圖像可以看出此校正算法可以將邊緣的彎曲的部分較好的校正。圖中的馬賽克是由于對目標(biāo)圖像的大小設(shè)定問題導(dǎo)致的。后續(xù)將繼續(xù)改進(jìn)這部分的代碼。
總結(jié):通過這三種算法的初步對比,可以看出等距模型球面投影算法還是可行的。個人建議可以繼續(xù)完善這部分的算法。看看完整的校正效果。后續(xù)將會貼上各種算法的Matlab代碼。未完待續(xù)。。
總結(jié)
以上是生活随笔為你收集整理的鱼眼图像校正(球面等距投影模型)_||的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: axure交互动作
- 下一篇: 将工作组信息 (.mdw) 文件转换为