0

画像をグレースケールとして開き、numpy float 配列に変換し、多くの数学演算を実行し、正規化してバイナリ画像 (1 ピクセルあたり 1 ビット) に変換し、再度ディスクに保存するコードを Python で持っています ( PNG ファイル)。

同様の操作を実行するには、どの .NET クラスを (できれば) 使用する必要がありますか?

以下は、私の Python コードのサブセットです。

im = Image.open(in_name)
a  = numpy.asarray(im.convert('L'), dtype=float)  ## implicit conversion to grayscale

## lots of element-wise arithmetical operations with 'a'
## and other similar-shaped arrays from other images

out_im = Image.fromarray(a.astype('uint8')).convert('1')
out_im.save(out_name)
4

1 に答える 1

0

これには 2 つの方法があります。どちらかを行うには、XNA または DirectX が必要です。

XNAのTexture2Dオブジェクトには、必要な処理を行う GetData および SetData メソッドが含まれています。

Texture2D で HLSL ピクセル シェーダーを使用して操作することもできます。レンダリング ターゲットを変更して、画像ファイルとして保存する別の Texture2D にレンダリングすることができます。

2 番目が最も速く効率的で、1 番目が最も簡単です。

于 2012-10-04T13:52:01.113 に答える