开启左侧

求飞机飞到月亮中心上的 halcon代码

[复制链接]
0755雅俗共赏 发表于 2017-6-5 11:47:28 | 显示全部楼层 |阅读模式
求飞机飞到月亮中心上的 halcon代码。  

掩码掉飞机背景的绿色。
1.png

飞机模型:
2.png
wh64cc 发表于 2017-7-25 14:25:58 | 显示全部楼层
kumai87 发表于 2017-7-16 18:03
不懂什么意思。。。

呵呵,你是闲着没事干想出来的吗?
yoga 发表于 2018-6-5 10:12:07 | 显示全部楼层
我也是无聊透顶了,你要的效果来了
  1. *读图
  2. read_image (Image, 'C:/Users/yoga/Desktop/测试图像/月亮.png')
  3. read_image (ImagePart, 'C:/Users/yoga/Desktop/测试图像/飞机.png')
  4. dev_update_off ()
  5. count_seconds (Seconds)
  6. *rgb分离
  7. decompose3 (Image, ImageR, ImageG, ImageB)
  8. decompose3 (ImagePart, ImagePartR, ImagePartG, ImagePartB)

  9. *获取目标点
  10. threshold (ImageR, Region, 128, 255)
  11. connection (Region, ConnectedRegions)
  12. select_shape_std (ConnectedRegions, SelectedRegions, 'max_area', 70)
  13. area_center (SelectedRegions, Area, Row, Column)

  14. *飞机去背景
  15. auto_threshold (ImagePartR, Regions1, 2)
  16. select_shape_std (Regions1, SelectedRegions1, 'max_area', 70)
  17. connection (SelectedRegions1, ConnectedRegions1)
  18. select_shape_std (ConnectedRegions1, SelectedRegions2, 'max_area', 70)
  19. difference (ImagePartR, SelectedRegions2, RegionDifference)
  20. connection (RegionDifference, ConnectedRegions2)

  21. select_shape_std (ConnectedRegions2, SelectedRegions3, 'max_area', 70)
  22. get_region_points (SelectedRegions3, PartRows, PartColumns)
  23. count:=|PartRows|
  24. startRs:=gen_tuple_const(count, Row)
  25. startCs:=gen_tuple_const(count, Column)

  26. *将所有像素坐标加上偏移量
  27. Rows:=startRs+PartRows
  28. Cols:=startCs+PartColumns

  29. *r绘制
  30. get_grayval (ImagePartR, PartRows, PartColumns, Grayval)
  31. copy_image (ImageR, DupImageR)
  32. set_grayval (DupImageR, Rows, Cols, Grayval)

  33. *g绘制
  34. get_grayval (ImagePartG, PartRows, PartColumns, Grayval1)
  35. copy_image (ImageG, DupImageG)
  36. set_grayval (DupImageG, Rows, Cols, Grayval1)
  37. *b绘制
  38. get_grayval (ImagePartB, PartRows, PartColumns, Grayval2)
  39. copy_image (ImageB, DupImageB)
  40. set_grayval (DupImageB, Rows, Cols, Grayval2)
  41. compose3 (DupImageR, DupImageG, DupImageB, MultiChannelImage)
  42. count_seconds (Seconds1)
  43. tt:=(Seconds1-Seconds)*1000
复制代码

结果图像

结果图像



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

本版积分规则

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