2013-10-04 71 views
1

我想使用scipy的curve_fit來計算兩個灰度圖像之間的x和y的偏移量作爲二維numpy ndarrays。但是,這要求我饋送curve_fit的函數的參數需要整數參數。scipy curve_fit與整數參數

所以我有一個函數,它有三個參數:一個扁平數組,以及兩個軸上的偏移量。它正確完成偏移並返回所有整數偏移的重新平展數組,但curve_fit始終返回p0。

是否有可能使curve_fit與整數參數一起工作?這裏

回答

0

一個可行的方法可能是定義兩個浮點偏移的功能,整點之間進行插值:

def func_orig(xint,yint): 
    .... 

def func_new(x,y): 
    x1 = int(x) 
    y1 = int(y) 
    x2 = x1 + 1 
    y2 = y1 + 1 
    val = func_orig(x1,y1) * (x2-x)*(y2-y)+ 
      func_orig(x1,y2) * (x2-x)*(y1-y)+ 
      func_orig(x2,y1) * (x1-x)*(y2-y)+ 
      func_orig(x2,y2) * (x1-x)*(y1-y) 
    val = val/(x2-x1)/(y2-y1) 
    return val 
+0

我可能會嘗試,但我認爲這可能是有點慢上1048x1048的圖像。 你認爲這將是一個很好的使用scipy的插值方法嗎? – Saethlin