private void button2_Click(object sender, EventArgs e) { //创建图像 Bitmap image = new Bitmap("c:\\1.JPG"); //获取图像的BitmapData对像 BitmapData data = image.LockBits(new Rectangle(0, 0, image.Width, image.Height), ImageLockMode.ReadWrite, PixelFormat.Format24bppRgb); //循环处理 int k = 0; int h = 0; int w = 0; unsafe { byte* ptr = (byte*)(data.Scan0.ToPointer ()); for (int i = 0; i < data.Height; i++) { h = h + 1; for (int j = 0; j < data.Width; j++) { w = w + 1; int a =Convert .ToInt32 ( ptr[0].ToString ()); int b =Convert .ToInt32 ( ptr[1].ToString()); int c =Convert .ToInt32 ( ptr[2].ToString()); if (a < 150 && b < 150 && c < 150) { } else {
if (k == 0) { this.textBox1.Text =a.ToString(); this.textBox2.Text = b.ToString(); this.textBox3.Text = c.ToString(); this.textBox4.Text = h.ToString(); this.textBox5.Text = w.ToString(); k = k + 1; }
{
//创建图像
Bitmap image = new Bitmap("c:\\1.JPG");
//获取图像的BitmapData对像
BitmapData data = image.LockBits(new Rectangle(0, 0, image.Width, image.Height), ImageLockMode.ReadWrite, PixelFormat.Format24bppRgb);
//循环处理
int k = 0;
int h = 0;
int w = 0;
unsafe
{
byte* ptr = (byte*)(data.Scan0.ToPointer ());
for (int i = 0; i < data.Height; i++)
{
h = h + 1;
for (int j = 0; j < data.Width; j++)
{
w = w + 1;
int a =Convert .ToInt32 ( ptr[0].ToString ());
int b =Convert .ToInt32 ( ptr[1].ToString());
int c =Convert .ToInt32 ( ptr[2].ToString());
if (a < 150 && b < 150 && c < 150)
{ }
else
{
if (k == 0)
{
this.textBox1.Text =a.ToString();
this.textBox2.Text = b.ToString();
this.textBox3.Text = c.ToString();
this.textBox4.Text = h.ToString();
this.textBox5.Text = w.ToString();
k = k + 1;
}
}
ptr += 3;
}
ptr += data.Stride - data.Width * 3;
}
} 哪里错了。??怎么取出的值不对。