2014-02-21 55 views
2

我有一個大的2000幀系列從gopro hero3拍攝的夜空圖像。 這本身很愚蠢,因爲GoPros的低光性能不好。我對圖像做了一些淺數學運算,並在2小時內確定了星形位置「弧線」。使用多個靜態圖像修正GoPro的桶形失真?

有沒有一種方法,使用恆星運動來解決鏡頭畸變和恆星旋轉?也許使用OpenCV或桶形失真校正公式?

我覺得應該有一個通用的方法來解決像素偏移方程,而不管鏡頭失真和星形旋轉之間的相互作用。有任何想法嗎?相信我有需要的所有信息,大約30k個數據點跨250星:(star_id,time,x,y),覆蓋面很好,請參見下面的快速圖形圖像。

star tracks

+1

這不是關於編程,而是關於圖像處理算法。這可能更適合[dsp.se]。 –

+0

我不知道那個論壇 - 非常感謝你的指針! –

+0

問題轉移到[適用於DSP StackExchange的論壇](http://dsp.stackexchange.com/questions/14602/motion-and-distortion-estimation-using-multiple-still-images) –

回答

1

爲了計算失真參數,你需要有一定的情景。擁有足夠的分數並不意味着它們是有用的。在你的情況下,它甚至需要額外的數學工作來計算時間校正的對象座標。

另一方面,您並不需要使用數據集來計算失真參數(DP)。使用這款相機,你可能不會達到比1/20像素更好的精確度,因爲它根本不是爲了測量。

我的建議是創建一個良好的校準場景,並校準相機,從三次函數A1,A2,A3計算焦距,偏移量(x0,y0)和至少三個桶形失真參數。之後,您可以將桶參數應用於圖像。

請注意,校準場景會產生(始終)本地DP參數,該參數僅適用於當前場景,不適用於夜間場景。但是,由於攝影機/鏡頭組合不是用於精確測量的,因此當您從夜景中計算DP時,您不會獲得更好的效果。

0

如果您只需要修正相機失真(並且不想通過使用其他困難的方法來完成,因爲「科學很美麗」),您可以使用camera calibration from openCV