問題タブ [ndimage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
595 参照

python - scipy.ndimage.label の機能に定期的な接続を指定するには?

0 と 1 の N*N 配列を指定して、クラスターのリストを作成したいと思います (クラスターとは、1 でラベル付けされた接続点のセットです)。

scipy.ndimage.labelどのポイントが接続されているかがわかるので、非常に便利です。

しかし、配列に周期的な境界条件、つまりポイント(0,j)(N,j)識別 (シリンダーを作るために接着する平面のように) も必要です。したがって、機能が境界を介して接続されていることを scipy.ndimage.label に伝える必要があります。

たとえば、元の配列が次の場合:

そして私はしたい:

label の構造パラメータを使用すると、接続を指定できます (たとえば、フィーチャが斜めに接触していても接続されている)、その目的にも使用できますか?

0 投票する
1 に答える
2279 参照

python - ndimage.maximum_filter と skimage.peak_local_max を使用して画像のピークを見つける

特定の画像の相対的な最大値を見つけようとしています。2 つの方法が考えられることを理解しています。1 つ目は usingscipy.ndimage.maximum_filter()で、2 つ目は using skimage.feature.peak_local_max()です。

両方の方法を比較するために、見つかったピークを比較するために、ここに示すskimage の例を変更しました。

これにより、各メソッドの次のピークが得られます。 画像

パラメータsizeforがfrommaximum_filterと同等ではないことは理解していますが、どちらも同じ結果が得られるメソッドがあるかどうか知りたいです。それは可能ですか?min_distancepeak_local_max

stackoverflow に関するいくつかの関連する質問は次のとおりです。

特定の値を超える 2D 配列の極大値の座標を取得します

2D アレイでのピーク検出

0 投票する
1 に答える
371 参照

python - Boxcar 平均を地理空間画像に適用する

次の配列が GeoTIFF 画像を読み取った結果であると仮定すると、たとえば、配列Aである nodata 値がマスクされBている rasterio を使用します。

正方形の近傍に有蓋車の平均平滑化を適用したいと思います。最初の問題は、どの scipy 関数が有蓋車の平均を表しているかわからないことです。

ndimage.uniform_filter かもしれないと思いました。ただし、scipy.signal とは対照的に、ndimage はマスクされた配列には適用できません。

では、 scipy.signal.medfilt などのnodata値を考慮したボックスカー平均を適用するにはどうすればよいでしょうか?

0 投票する
1 に答える
236 参照

python - scipy ndimage が affine_transform に使用する 3 次スプライン メソッドはどれですか?

背景/コンテキスト

scipyndimage.affine_transform関数によって出力された値を再現しようとしていましたが、scipy実装とは異なる「3 次」補間スキームを使用しているようです。

非常に単純な例を見てみましょう (3 次補間を使用したいデータではありませんが、理解しやすいものです)。値を確認するために、一様な Catmull-Rom splinesを実装しました。私の小さな実装例:

次のプロットが得られます(scipy関数の真の補間関数がわからないため、さまざまなデータポイントをより強調するために線形接続をプロットしただけであることに注意してください): ここに画像の説明を入力

所見:

  • scipy メソッドは Catmull-Rom スプラインを使用しません
  • scipy メソッド (フィルタリングなし) は、通常、鋭いエッジの 3 次補間に関連するオーバーシュートを生成しませんが、scipy のドキュメントに記載されているように、多少のぼやけが発生します。また、これは、私が使用した画像の特定のシフトに関連しているようです例
  • 事前にフィルター処理された scipy メソッドは、Catmull-Rom スプラインに近いですが、同一ではありません (目に見える違いがあります)。

質問

  • scipy はどの補間スキームを使用しますか?
  • ドキュメントやコードのどこで実際に見つけることができますか?
  • ボーナス:Pythonで(チェック目的で)実装する簡単な方法