角度によってリングの強さがどのように変化するかを調べています。私がやりたい何Pythonのサークルからデータを取る
はそのドーナツの中心部内から値の円を取り、角度対してプロットしたものである。ここでは画像の例があります。私が現在行っているのは、scipy.ndimage.interpolation.rotateを使ってリングを半径方向にスライスし、2つのピークの最大値を抽出し、それらの角度をプロットすることです。
crop = np.ones((width,width)) #this is my image
slices = np.arange(0,width,1)
stack = np.zeros((2*width,len(slices)))
angles = np.linspace(0,2*np.pi,len(crop2))
for j in range(len(slices2)): # take slices
stack[:,j] = rotate(crop,slices[j],reshape=False)[:,width]
しかし、これは私が実際に探していることではないと思います。私は、私が望むデータをどのように抽出するのかとほとんど苦労しています。私はまたこのようなマスクを適用しようとしました。
画像へ、その後私は、正しい順序で、マスク内の値を取得する方法がわからない(すなわち角度0増加のために - 。2PI)を
その他アイデアは大きな助けになるでしょう!
こんにちは、答えるために感謝そんなに。コードはすばらしく見えますが、私がラインを外すときは、ここにいるものが得られます。 image = image/np.amax(画像) それはいつものように動作するようです!もしそうでなければ、私はオリジナルの画像が完全に黒くなってしまい、右下の小さな1つの小さな正方形から終わります。 私はscipy interp2dの仕組みについて少し混乱しています - scipy.miscのimread関数を使ってイメージをインポートするので、interp2dの必要なx yとz入力に分割する方法がわかりませんか? – arbitraryknowledge
ああ、私はPython3のコードを書いて、あなたはPython 2.7を持っていますよね? 'image = image * 1.0/np.max(image)'を試してください。また、 'xcenter = 0.5 * len(x) 'などに変更します。これは[整数除算](http://stackoverflow.com/q/21316968/1292641)のためです。 – Norman
'imread()からのあなたのイメージはndarrayです。 'h、w = image.shape;を試してください。 sp.interpolate.interp2d(np.arange(w)、np.arange(h)、image) '。 – Norman