51Halcon机器视觉

 找回密码
 会员注册

QQ登录

只需一步,快速开始

扫一扫,微信登录

查看: 6336|回复: 13

[待解决] 求助,用Halcon获取物体旋转角度

[复制链接]
  • TA的每日心情
    害羞
    2018-8-10 08:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    1

    主题

    8

    帖子

    33

    积分

    Rank: 1

    积分
    33
    发表于 2018-8-9 22:04:39 | 显示全部楼层 |阅读模式

    51Halcon诚邀您的加入,专注于机器视觉开发与应用技术,我们一直都在努力!

    您需要 登录 才可以下载或查看,没有帐号?会员注册

    x
    小弟初学,求大神们指导怎么获取物体旋转角度,获取到第二张图相对第一张图的旋转度数,误差1度内。
    图一如下

    图片1

    图片1


    图二如下

    图片2

    图片2

    1.发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

    2.提问请组织好自己的逻辑,标题注明大概是什么问题,问题内容写详细,需提供问题症状、错误代码、截图、位置等等信息,不要让别人去猜你想问啥;

    3.如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题前面加上【已解决】

    4.回报帮助你解决问题的坛友,右下角【免费评分】赠与对方视觉币和热心值,伸手党遭人唾弃,做一个热心并受欢迎的人!

  • TA的每日心情
    开心
    昨天 10:43
  • 签到天数: 958 天

    连续签到: 3 天

    [LV.10]以坛为家III

    380

    主题

    1554

    帖子

    7300

    积分

    Rank: 9

    积分
    7300

    突出贡献优秀版主荣誉管理论坛元老切换助手验证会员最佳新人

    发表于 2018-8-10 09:33:58 | 显示全部楼层
    用标准的MADE IN CHINA做定位模板,然后检测其他物体,得到的角度就是旋转角度!
    无效附件更新 权限提升操作 删帖申请 举报以及其他需要帮助请加入QQ群:214663141 广告位招商 有意者联系
  • TA的每日心情
    害羞
    2018-8-10 08:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    1

    主题

    8

    帖子

    33

    积分

    Rank: 1

    积分
    33
     楼主| 发表于 2018-8-10 10:11:05 | 显示全部楼层
    51Halcon 发表于 2018-8-10 09:33
    用标准的MADE IN CHINA做定位模板,然后检测其他物体,得到的角度就是旋转角度! ...

    MADE IN CHINA?  大神这个怎么用,能介绍具体点吗?

    1.发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

    2.提问请组织好自己的逻辑,标题注明大概是什么问题,问题内容写详细,需提供问题症状、错误代码、截图、位置等等信息,不要让别人去猜你想问啥;

    3.如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题前面加上【已解决】

    4.回报帮助你解决问题的坛友,右下角【免费评分】赠与对方视觉币和热心值,伸手党遭人唾弃,做一个热心并受欢迎的人!

  • TA的每日心情
    窃喜
    2019-2-25 13:08
  • 签到天数: 16 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    5

    主题

    60

    帖子

    127

    积分

    Rank: 1

    积分
    127

    热心会员

    发表于 2018-8-10 10:15:49 | 显示全部楼层
    先选择一条边界清晰的便找边的角度A,再用Madeinchaina,或者其他标志坐模板匹配,找到旋转后的边的角度B,这样旋转角度就是B-A

    1.发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

    2.提问请组织好自己的逻辑,标题注明大概是什么问题,问题内容写详细,需提供问题症状、错误代码、截图、位置等等信息,不要让别人去猜你想问啥;

    3.如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题前面加上【已解决】

    4.回报帮助你解决问题的坛友,右下角【免费评分】赠与对方视觉币和热心值,伸手党遭人唾弃,做一个热心并受欢迎的人!

  • TA的每日心情
    开心
    昨天 10:43
  • 签到天数: 958 天

    连续签到: 3 天

    [LV.10]以坛为家III

    380

    主题

    1554

    帖子

    7300

    积分

    Rank: 9

    积分
    7300

    突出贡献优秀版主荣誉管理论坛元老切换助手验证会员最佳新人

    发表于 2018-8-10 10:22:38 | 显示全部楼层
    完美世界 发表于 2018-8-10 10:15
    先选择一条边界清晰的便找边的角度A,再用Madeinchaina,或者其他标志坐模板匹配,找到旋转后的边的角度B, ...

    差不多的这个意思!大概原理就是利用盖子上面的特征的来获取位置,然后在定位获取新位置,这样就知道角度怎么旋转了!
    无效附件更新 权限提升操作 删帖申请 举报以及其他需要帮助请加入QQ群:214663141 广告位招商 有意者联系
  • TA的每日心情
    害羞
    2018-8-10 08:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    1

    主题

    8

    帖子

    33

    积分

    Rank: 1

    积分
    33
     楼主| 发表于 2018-8-10 16:32:09 | 显示全部楼层
    51Halcon 发表于 2018-8-10 10:22
    差不多的这个意思!大概原理就是利用盖子上面的特征的来获取位置,然后在定位获取新位置,这样就知道角度 ...

    请问大师,怎么把 MADEINCHAINA 做成模版?能帮忙写个代码段参考下吗? 万分感谢

    1.发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

    2.提问请组织好自己的逻辑,标题注明大概是什么问题,问题内容写详细,需提供问题症状、错误代码、截图、位置等等信息,不要让别人去猜你想问啥;

    3.如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题前面加上【已解决】

    4.回报帮助你解决问题的坛友,右下角【免费评分】赠与对方视觉币和热心值,伸手党遭人唾弃,做一个热心并受欢迎的人!

  • TA的每日心情
    耍酷
    2020-8-25 00:47
  • 签到天数: 95 天

    连续签到: 2 天

    [LV.6]常住居民II

    0

    主题

    21

    帖子

    320

    积分

    Rank: 6Rank: 6

    积分
    320

    切换助手验证会员

    发表于 2018-8-10 17:12:29 | 显示全部楼层
    小手一痒...匹配助手拖了一下。不知道是不是你要的效果。
    当然我没用Madeinchaina这个实现你自己去操作

    TIM截图20180810170926.png

    TIM截图20180810170943.png

    1. read_image(Image2,'C:/ Users / Pictures / 2.png')
    2. *匹配01:模型初始化生成代码的BEGIN
    3. set_system('border_shape_models','false')
    4. *匹配01:获取模型图像
    5. *匹配01:假设图像在
    6. *匹配中可用01:变量最后显示在图形窗口中
    7. copy_obj(Image2,Image,1,1)
    8. *匹配01:从基本区域构建ROI
    9. gen_rectangle1(ModelRegion,363.354,445.481,465.233,537.484)
    10. *匹配01:减少模型模板
    11. reduce_domain (Image,ModelRegion,TemplateImage)
    12. *匹配01:创建形状模型
    13. create_shape_model(TemplateImage,3,rad(0),rad(360),rad(2.5886),['none','no_pregeneration'],'use_polarity',[16,22,4],10,ModelId)
    14. *匹配01 :获取模型轮廓以便稍后将其转换为图像
    15. get_shape_model_contours(ModelContours,ModelId,1)
    16. *匹配01:生成代码的END用于模型初始化
    17. *匹配01:模型应用生成代码的BEGIN
    18. *匹配01:以下操作是通常移动到
    19. *匹配01:处理获取图像的循环
    20. *匹配01:找到模型

    21. *图像采集01:图像采集生成的代码01
    22. list_files('C:/ Users / Pictures',['files',' follow_links'],ImageFiles)
    23. tuple_regexp_select(ImageFiles,['\\。(tif | tiff | gif | bmp | jpg | jpeg | jp2 | png | pcx | pgm | ppm | pbm | xwd | ima | hobj),'ignore_case'],ImageFiles)
    24. 索引:= 0到| ImageFiles | -  1 by 1
    25.     read_image(Image,ImageFiles [Index])
    26.     *图像采集01:做一些事情
    27.     find_shape_model(Image,ModelId,rad(0),rad(360),0.7,0,0.5,'least_squares',[3,1 ],1,ModelRow,ModelColumn,ModelAngle,ModelScore)
    28. *匹配01:将模型轮廓转换

    29. 为MatchingObjIdx 的检测位置:= 0到| ModelScore | -  1 by 1
    30.     hom_mat2d_identity(HomMat)
    31.     hom_mat2d_rotate(HomMat,ModelAngle [MatchingObjIdx],0,0,HomMat)
    32.     hom_mat2d_translate(HomMat,ModelRow [MatchingObjIdx],ModelColumn [MatchingObjIdx],HomMat)
    33.     affine_trans_contour_xld(ModelContours,TransContours,HomMat)
    34.     disp_message(3600,deg(ModelAngle),'window',20,20,'black','true')
    35.     dev_display(TransContours)
    36. endfor
    37. endfor


    38. *匹配01:完成时清除模型
    39. clear_shape_model(ModelId )
    40. *匹配01:模型应用程序生成代码的END
    复制代码

    1.发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

    2.提问请组织好自己的逻辑,标题注明大概是什么问题,问题内容写详细,需提供问题症状、错误代码、截图、位置等等信息,不要让别人去猜你想问啥;

    3.如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题前面加上【已解决】

    4.回报帮助你解决问题的坛友,右下角【免费评分】赠与对方视觉币和热心值,伸手党遭人唾弃,做一个热心并受欢迎的人!

  • TA的每日心情
    开心
    昨天 10:43
  • 签到天数: 958 天

    连续签到: 3 天

    [LV.10]以坛为家III

    380

    主题

    1554

    帖子

    7300

    积分

    Rank: 9

    积分
    7300

    突出贡献优秀版主荣誉管理论坛元老切换助手验证会员最佳新人

    发表于 2018-8-10 18:23:51 | 显示全部楼层
    feel 发表于 2018-8-10 17:12
    小手一痒...匹配助手拖了一下。不知道是不是你要的效果。
    当然我没用Madeinchaina这个实现你自己去操作

    厉害了我的哥!
    无效附件更新 权限提升操作 删帖申请 举报以及其他需要帮助请加入QQ群:214663141 广告位招商 有意者联系
  • TA的每日心情
    害羞
    2018-8-10 08:31
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    1

    主题

    8

    帖子

    33

    积分

    Rank: 1

    积分
    33
     楼主| 发表于 2018-8-13 10:27:32 | 显示全部楼层
    feel 发表于 2018-8-10 17:12
    小手一痒...匹配助手拖了一下。不知道是不是你要的效果。
    当然我没用Madeinchaina这个实现你自己去操作

    ,在C#中操作 怎么把创建好的模版保存起来呢?

    1.发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

    2.提问请组织好自己的逻辑,标题注明大概是什么问题,问题内容写详细,需提供问题症状、错误代码、截图、位置等等信息,不要让别人去猜你想问啥;

    3.如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题前面加上【已解决】

    4.回报帮助你解决问题的坛友,右下角【免费评分】赠与对方视觉币和热心值,伸手党遭人唾弃,做一个热心并受欢迎的人!

  • TA的每日心情
    窃喜
    2019-2-25 13:08
  • 签到天数: 16 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    5

    主题

    60

    帖子

    127

    积分

    Rank: 1

    积分
    127

    热心会员

    发表于 2018-8-13 10:33:29 | 显示全部楼层
    arvin1121 发表于 2018-8-13 10:27
    ,在C#中操作 怎么把创建好的模版保存起来呢?

    write_shapemodel这个算子就可以呀

    1.发帖求助前要善用论坛搜索功能,那里可能会有你要找的答案;

    2.提问请组织好自己的逻辑,标题注明大概是什么问题,问题内容写详细,需提供问题症状、错误代码、截图、位置等等信息,不要让别人去猜你想问啥;

    3.如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题前面加上【已解决】

    4.回报帮助你解决问题的坛友,右下角【免费评分】赠与对方视觉币和热心值,伸手党遭人唾弃,做一个热心并受欢迎的人!

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

    本版积分规则

    建议您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流浏览器浏览本网站

    51Halcon会员技术交流会员技术交流 | 51Halcon官方客服咨询官方客服咨询 | Halcon切换助手使用反馈切换助手使用

    有问题需要咨询站长?| 申请友链| 小黑屋| 手机版| Archiver|  

    粤ICP备15095995号-2 粤公网安备44030602000670号

    CopyRight © 2015-2020 51Halcon机器视觉. Tencent Cloud X3.4.

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