毕业论文

打赏
当前位置: 毕业论文 > 计算机论文 >

彩色图像的分割处理程序设计+Hough算法(17)

时间:2016-12-16 21:10来源:毕业论文
{ rgbValues[i * 3 + 2] = Convert.ToByte(kAver[j * 3 + 2]); rgbValues[i * 3 + 1] = Convert.ToByte(kAver[j * 3 + 1]); rgbValues[i * 3] = Convert.ToByte(kAver[j * 3]); } } } System.Runtime.InteropService


                            {
                                rgbValues[i * 3 + 2] = Convert.ToByte(kAver[j * 3 + 2]);
                                rgbValues[i * 3 + 1] = Convert.ToByte(kAver[j * 3 + 1]);
                                rgbValues[i * 3] = Convert.ToByte(kAver[j * 3]);
                            }
                        }
                    }

                    System.Runtime.InteropServices.Marshal.Copy(rgbValues, 0, ptr, bytes * 3);
                    curBitmap.UnlockBits(bmpData);
                    Invalidate();
                }
            }
        }

4.2.2    Hough变换
 
图4.4  Hough变换原图
 
图4.5  Hough变换原图
左边是经过灰度拉伸后的Hough变换映射图像,两条最亮的弧线是由一个个点组成,每个点代表原图中的一条直线。
右边为根据左边图像进行Hough反变换后得到的图像。通过与原图相比,这些直线不仅能检测出来,而且位置也准确无误。    
以下为Hough变换处理代码:
  private void hough_Click_1(object sender, EventArgs e)
        {
            if (curBitmap != null)
            {
                hough houghtran = new hough(curBitmap);
                houghtran.ShowDialog();
            }
        }
   private void close_Click(object sender, EventArgs e)
        {
            this.Close();
        }
   private void hough_Paint(object sender, PaintEventArgs e)
        {
            Bitmap houghImage = new Bitmap(180, 180,
            System.Drawing.Imaging.PixelFormat.Format8bppIndexed);
            System.Drawing.Imaging.ColorPalette cp = houghImage.Palette;
            for (int i = 0; i < 256; i++) 彩色图像的分割处理程序设计+Hough算法(17):http://www.751com.cn/jisuanji/lunwen_1067.html
------分隔线----------------------------
推荐内容