0

ここに画像の説明を入力してください

この画像では、黒いカラーグラフが白い背景にあります。グラフの2つのピーク波の間のピクセル長と、ピーク波の平均振幅(ピークの高さ)を取得したいと思います。

私はこのコードを実装するためのロジックに固執しています。誰かがこれを実装するのを手伝ってくれますか?私はC#を使用しています

public void black(Bitmap bmp)
{
         Color col;
             for (int i = 0; i < bmp.Height; i++)
             {
                for (int j = 0; j < bmp.Width; j++)
                {
                        col = bmp.GetPixel(j, i);
                        if (col.R == 0) //check whether black pixel
                        {
                            y = i;  //assign black pixel x,y positions to a variable
                            x = j;
                        }

                }                           
            }
 }

上司は、2D配列を使用して、これらの値を取得するためにラインのインクリメントとデクリメント(各インクリメントとデクリメントの開始点ピクセル値と終了点ピクセル値)を格納する必要があると言いましたが、それを適用するための十分なコーディングスキルがありませんこのコードのロジック。

4

1 に答える 1

0

Bitmap img = new Bitmap(pictureBox1.Image);

        int width = img.Width;
        int height = img.Height;
        for (int y = 0; y < height; y++)
        {
        for (int x = 0; x < width; x++)
        {
            Color pixelColor = img.GetPixel(x, y);
        if (pixelColor.R == 0 && pixelColor.G == 0 && pixelColor.B == 0)               
            //listBox1.Items.Add(String.Format("x:{0} y:{1}", x, y));

              textBox1.Text = (String.Format("x:{0} y:{1}", x, y));


    }
    }
于 2014-04-20T17:40:17.647 に答える