设置首页收藏本站
12
返回列表 发新帖
开启左侧

寻求 瑕疵侦测 线上缺口的方法

[复制链接]
gungun 发表于 2025-2-26 12:22:47 | 显示全部楼层
NGregion.JPG
提供一种解决思路

1.hdev

1.56 KB, 下载次数: 5

售价: 15 视觉币  [记录]

一块五,买不了上当,买不了吃亏

奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
回复

使用道具 举报

hankchang 发表于 2025-2-26 14:38:25 | 显示全部楼层
  1. ***使用灰階投影搜尋變化
  2. read_image (Test, 'C:/Users/genel/Downloads/1.jpg')
  3. rgb1_to_gray (Test, GrayImage)

  4. get_image_size(GrayImage, Width, Height)
  5. get_domain(GrayImage, Domain)
  6. ***分段投影
  7. gray_projections (Domain, GrayImage, 'rectangle', HorProjection, VertProjection)
  8. create_funct_1d_array (VertProjection, Function)

  9. smooth_funct_1d_gauss (Function, 8, SmoothedFunction)
  10. derivate_funct_1d (SmoothedFunction, 'first', Derivative)
  11. ***
  12. sel:= Derivative[4:|Derivative|-1]
  13. **定位

  14. tuple_greater_elem (sel, 0.05, Greater)
  15. tuple_find(Greater, 1, Indices)

  16. ***正緣變化
  17. p_start:=[]
  18. p_end:=[]
  19. pre:=0
  20. for i:=0 to |Greater|-1 by 1
  21.     if(Greater>0 and pre=0)
  22.       p_start[|p_start|]:=i
  23.       pre:=1
  24.     else
  25.         if(Greater=0 and pre=1)
  26.             pre:=0  
  27.             p_end[|p_end|]:=i-1
  28.         endif
  29.     endif
  30. endfor

  31. tuple_less_elem (sel, -0.05, Less)  
  32. tuple_find(Less, 1, NegIndices)

  33. **抓負緣
  34. n_start:=[]
  35. n_end:=[]
  36. n_pre:=0
  37. for i:=0 to |Less|-1 by 1
  38.     if(Less>0 and n_pre=0)
  39.       n_start[|n_start|]:=i
  40.       n_pre:=1
  41.     else
  42.         if(Less=0 and n_pre=1)
  43.             n_pre:=0  
  44.             n_end[|n_end|]:=i-1
  45.         endif
  46.     endif
  47. endfor

  48. ****判斷 負緣先出現 則為干擾
  49. defect:=[]
  50. for i:=0 to |p_start|-1 by 1
  51.     if(p_start<n_start)
  52.         defect[|defect|]:=i
  53.     endif
  54. endfor

  55. ***draw result 懶惰隨便來!
  56. for j:=0 to |defect|-1 by 1
  57.     gen_rectangle1(Rectangle, 0,p_start[defect[j]], 54, n_end[defect[j]])
  58. endfor
复制代码
2025-02-26 14 37 27.jpg
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
回复

使用道具 举报

 楼主| Jescal0001 发表于 2025-2-26 17:31:52 | 显示全部楼层
gungun 发表于 2025-2-26 12:22
提供一种解决思路

我新提供了我目前的zip附档
这个用不了 要怎么调整比较好
有没有比较好的方法 谢谢
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
回复

使用道具 举报

 楼主| Jescal0001 发表于 2025-2-26 17:35:59 | 显示全部楼层
hankchang 发表于 2025-2-26 14:38
***使用灰階投影搜尋變化
read_image (Test, 'C:/Users/genel/Downloads/1.jpg')
rgb1_to_gray (Test, Gray ...

我新提供了我目前的zip附档
您上面的代码我用不了,要怎么调整比较好
我想要抓到像我附档那种的效果,但又不被下面的东西干扰
有没有什么方法是针对线上的缺口做处理的 外面的不管他

没办法用位置去去筛选 因为这是极座标转换的图 每次都会有一点差异
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
回复

使用道具 举报

小马哥 发表于 2025-3-2 16:41:10 | 显示全部楼层
Halcon里缺陷检测有一种方法叫做【Blob分析+差分】法
先找出整个物件区域,然后区域(闭运算),最后(闭运算)后的区域减去原来的区域,就得出缺陷区域了
11.png
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
回复

使用道具 举报

hankchang 发表于 2025-3-5 12:31:30 | 显示全部楼层
Jescal0001 发表于 2025-2-26 17:35
我新提供了我目前的zip附档
您上面的代码我用不了,要怎么调整比较好
我想要抓到像我附档那种的效果,但 ...

如果此圖是由類似 "polar_trans_image_ext"所獲得的
難道不考慮在轉換時就捨棄 下方的暗點
看起來RadiusStart, RadiusEnd 的其中之一就對準暗點的中央 何不調整 RadiusStart, RadiusEnd讓他不包含 下方的暗點
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
回复

使用道具 举报

 楼主| Jescal0001 发表于 2025-3-11 14:51:03 | 显示全部楼层
hankchang 发表于 2025-3-5 12:31
如果此圖是由類似 "polar_trans_image_ext"所獲得的
難道不考慮在轉換時就捨棄 下方的暗點
看起來RadiusS ...

因为有规定检验的范围,所以能不裁切就不裁切,谢谢
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表