91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3KB
    文件類型: .cs
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-07
  • 語言: C#
  • 標簽: hough??C#??

資源簡介

基于Visual C#的運用霍夫變換對圖像中的直線進行檢測的算法,

資源截圖

代碼片段和文件信息

///?
///?檢測直線
///?

///?hough變換后的曲線交點個數,取值越大,找出的直線越少
public?Bitmap?hough_line(Bitmap?bmpobj?int?cross_num)
{
????int?x?=?bmpobj.Width;
????int?y?=?bmpobj.Height;
????int?rho_max?=?(int)Math.Floor(Math.Sqrt(x*x+y*y))+1;?//由原圖數組坐標算出ρ最大值,并取整數部分加1
????//此值作為ρ,θ坐標系ρ最大值
????int[]?accarray?=?new?int[rho_max180];?//定義ρ,θ坐標系的數組,初值為0。
????//θ的最大值,180度

????double[]?Theta?=?new?double[180];
????//定義θ數組,確定θ取值范圍
????double?i?=?0;
????for?(int?index?=?0;?index?????{
????????Theta[index]?=?i;
????????i?+=?Math.PI/180;
????}

????double?rho;
????int?rho_int;
????for?(int?n?=?0;?n?????{
????????for?(int?m?=?0;?m?????????{
????????????Color?pixel?=?bmpobj.GetPixel(n?m);
????????????if?(pixel.R?==?0)
????????????{
????????????????for?(int?k?=?0;?k?????????????????{
????????????????????//將θ值代入hough變換方程,求ρ值
????????????????????rho?=?(m?*?Math.Cos(Theta[k]))?+?(n?*?Math.Sin(Theta[k]));
????????????????????//將ρ值與ρ最大值的和的一半作為ρ的坐標值(數組坐標),這樣做是為了防止ρ值出現負數
????????????????????rho_int?=?(int)Math.Round(rho?/?2?+?rho_max?/?2);
????????????????????//在ρθ坐標(數組)中標識點,即計數累加
????????????????????accarray[rho_int?k]?=?accarray[rho_int?k]?+?1;
????????????????}
????????????}
????????}
????}

????//=======利用hough變換提取直線======
????//尋找100個像素以上的直線在hough變換后形成的點
????const?int?max_line?=?100;
????int[]?case_accarray_n?=?new?int[max_line];
????int[]?case_accarray_m?=?new?int[max_li

評論

共有 條評論