2017-03-27 13 views
0

輪郭発見は、輪郭発見は、これを使用して行われcontours = skimg.measure.find_contours(edges、0.8)境界輪郭と共に円形でない輪郭の円結果のセグメント化された画像の

これらの座標を複雑な形式に変換する方法。

+0

この 'measure.find_contours'はあなたに戻りますデカルト座標、リストとして、あなたは極座標が必要なのですか?なぜ複雑な数ですか? – Dadep

+0

これらの座標を複雑な形に変換することができます。 – image

+0

しかし、なぜ複素数が分かりませんか?それはどういう意味ですか? 2D画像では、各点は座標(デカルトまたはポーラ)によって定義されます。あなたは文脈を説明できますか? – Dadep

答えて

0

私は、フーリエ記述子について見つけたもの:

:あなたはすでにあなたのように複雑な形でそれを使用しますので、あなたの座標を持っているので、

http://fourier.eng.hmc.edu/e161/lectures/fd/node1.html

skimg.measure.find_contoursリターン座標[x, y]を持つ配列のリスト

x+y*i

後は、次の計算でどのように使用するかによって異なりますが、たとえば、yの値:

for i in range(len(contours)): 
    for j in range(len(contours[i])): 
     print contours[i][j][1] 

あなたも複素数を処理するためにcmathを使用することができます。

>>> x=4.90 
>>> y=7.890 
>>> CoordComplex=complex(x,y) 
>>> CoordComplex 
(4.9+7.89j) 

または複合体のリストからレコード生成する:

https://docs.python.org/2/library/cmath.html

あなたもcomplex使用することができます配列のリスト:

compCoord=[] 
for i in range(len(contours)): 
    for j in range(len(contours[i])): 
     compCoord.append(complex(contours[i][j][0], contours[i][j])[1]) 
+0

おかげです... – image

+0

あなたのコードを投稿するのにもっと助けが必要ならば! – Dadep