matlab のmat2gray関数のように機能する関数を持つ c# 用の画像処理ライブラリを知っている人はいますか?
ありがとう。
matlab のmat2gray関数のように機能する関数を持つ c# 用の画像処理ライブラリを知っている人はいますか?
ありがとう。
何かのようなもの:
public Bitmap mat2gray(int[,] mat,double? amin = null, double? amax = null){
var sizex = mat.GetLength(0);
var sizey = mat.GetLength(1);
if (!amin.HasValue)
amin = 0;
if (!amax.HasValue)
amax = 1;
var ret = new Bitmap(sizex,sizey);
for (int i=0; i< sizex;i++){
for (int j=0; j< sizey;j++){
int A = (int)((Math.Round(mat[i,j]-amin.Value)*(255.0/amax.Value))%amax.Value);
ret.SetPixel(i,j,Color.FromArgb(A,A,A));
}
}
しかし、amin/amax には微調整が必要です
もう1つの可能性は、MATLAB Builder NEツールボックスにアクセスできる場合、deploytool
mat2gray(またはC#から呼び出したいその他のMATLAB機能)への.NETインターフェイスを作成するために使用することです。次に、引数をMWArrayオブジェクトとしてラップし、MATLAB関数の.NETラッパーを呼び出して、返されたMWArray[]の結果をアンラップします。
type キーワードを使用して、MATLAB 関数の正確な実装を出力できます (組み込み関数は別として)。
type mat2gray