设为首页收藏本站 距【华南国际工业博览会】开幕 : :

51Halcon机器视觉

 找回密码
 会员注册

QQ登录

只需一步,快速开始

扫一扫,微信登录

查看: 223|回复: 8
收起左侧

[未解决] 模板匹配中得到的Row和Column的相对位置受匹配物旋转角度

[复制链接]
  • TA的每日心情
    叹气
    2021-1-20 22:17
  • 签到天数: 11 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    2

    主题

    15

    帖子

    55

    积分

    Rank: 1

    积分
    55
    发表于 2020-12-28 15:21:59 | 显示全部楼层 |阅读模式
    90视觉币
    我用create­_scaled_shape_model_xld创建模板,再用Find_scaled_shape_model进行识别。发现抓取出的Row与Column坐标会随匹配物角度的不同而产生相对位置的偏移。初步怀疑是Find_scaled_shape_model算子的问题,请问做模板匹配时除了能得到Row、Column、Angle等位置信息还能提取出什么其他有用的信息么,可以获取匹配物的轮廓么?模板匹配图片如问题中的图所示,谢谢大家。

    匹配使用的图片

    匹配使用的图片

    匹配使用的图片

    匹配使用的图片

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

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

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

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

  • TA的每日心情
    叹气
    2021-1-20 22:17
  • 签到天数: 11 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    2

    主题

    15

    帖子

    55

    积分

    Rank: 1

    积分
    55
     楼主| 发表于 2020-12-28 15:34:56 | 显示全部楼层
    有没有大佬有办法解决,有偿请教大佬。

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

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

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

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

    回复

    使用道具 举报

  • TA的每日心情
    点赞
    4 小时前
  • 签到天数: 1064 天

    连续签到: 18 天

    [LV.10]以坛为家III

    394

    主题

    1603

    帖子

    7940

    积分

    Rank: 9

    积分
    7940

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

    发表于 2020-12-28 21:57:57 | 显示全部楼层
    XuDong1 发表于 2020-12-28 15:34
    有没有大佬有办法解决,有偿请教大佬。

    可以获取模板的轮廓,但是获取了以后模板的坐标会更新到(0,0)的位置,角度为0,用算子:get_shape_model_contours

    评分

    参与人数 1视觉币 +2 收起 理由
    XuDong1 + 2

    查看全部评分

    无效附件更新 权限提升操作 删帖申请 举报以及其他需要帮助请加入QQ群:214663141 广告位招商 有意者联系
    回复

    使用道具 举报

  • TA的每日心情
    叹气
    2020-9-28 08:46
  • 签到天数: 59 天

    连续签到: 1 天

    [LV.5]常住居民I

    13

    主题

    84

    帖子

    228

    积分

    Rank: 2Rank: 2

    积分
    228
    发表于 2020-12-29 08:20:13 | 显示全部楼层
    要区分模板对模板,模板对图片之类的转换关系。
    分清哪个坐标系对哪个坐标系的转换就好了。

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

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

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

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

    回复

    使用道具 举报

  • TA的每日心情
    叹气
    2021-1-20 22:17
  • 签到天数: 11 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    2

    主题

    15

    帖子

    55

    积分

    Rank: 1

    积分
    55
     楼主| 发表于 2020-12-29 11:21:53 | 显示全部楼层
    Criss 发表于 2020-12-28 21:57
    可以获取模板的轮廓,但是获取了以后模板的坐标会更新到(0,0)的位置,角度为0,用算子:get_shape_model_ ...

    您好,我一直使用的是默认的参数就直接是(0,0),想请问您set_shape_model是将模板轮廓的重心放置在图片中的位置进行设置么,因为我调整了一下,发现偏得更离谱了,谢谢您了

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

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

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

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

    回复

    使用道具 举报

  • TA的每日心情
    叹气
    2021-1-20 22:17
  • 签到天数: 11 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    2

    主题

    15

    帖子

    55

    积分

    Rank: 1

    积分
    55
     楼主| 发表于 2020-12-29 11:27:25 | 显示全部楼层
    lrf2019 发表于 2020-12-29 08:20
    要区分模板对模板,模板对图片之类的转换关系。
    分清哪个坐标系对哪个坐标系的转换就好了。 ...

    这个分清楚了,但是就感觉算子获取的Row和Column不够准,会随角度产生一定偏移,但是如果角度一样,识别的相对位置就一样。偏移也很少,就大概0.5mm以内,像素的相机当量是0.139mm左右。

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

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

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

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

    回复

    使用道具 举报

  • TA的每日心情
    点赞
    4 小时前
  • 签到天数: 1064 天

    连续签到: 18 天

    [LV.10]以坛为家III

    394

    主题

    1603

    帖子

    7940

    积分

    Rank: 9

    积分
    7940

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

    发表于 2020-12-29 11:58:36 | 显示全部楼层
    XuDong1 发表于 2020-12-29 11:21
    您好,我一直使用的是默认的参数就直接是(0,0),想请问您set_shape_model是将模板轮廓的重心放置在图 ...

    微信截图_20201229115759.png
    是模板中心不是图形中心,使用dev_display_shape_matching_results就可以把现在查找的位置和交给给它就可以重合了,楼主也可以自己创建仿射矩阵转换显示。

    评分

    参与人数 1视觉币 +5 收起 理由
    XuDong1 + 5

    查看全部评分

    无效附件更新 权限提升操作 删帖申请 举报以及其他需要帮助请加入QQ群:214663141 广告位招商 有意者联系
    回复

    使用道具 举报

  • TA的每日心情
    叹气
    2021-1-20 22:17
  • 签到天数: 11 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    2

    主题

    15

    帖子

    55

    积分

    Rank: 1

    积分
    55
     楼主| 发表于 2020-12-29 14:47:04 | 显示全部楼层
    Criss 发表于 2020-12-29 11:58
    是模板中心不是图形中心,使用dev_display_shape_matching_results就可以把现在查找的位置和交给给它就可 ...

    好的,能详细写一下您是怎么做的么?我是参考例程先读入模板轮廓再构建模板到识别点的仿射变换矩阵,最后将轮廓仿射变换过去。请问直接用dev_display_shape_matching_results就可以显示出匹配模板的轮廓了么?会和我之前得到的结果有不同么?谢谢您了

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

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

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

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

    回复

    使用道具 举报

  • TA的每日心情
    点赞
    4 小时前
  • 签到天数: 1064 天

    连续签到: 18 天

    [LV.10]以坛为家III

    394

    主题

    1603

    帖子

    7940

    积分

    Rank: 9

    积分
    7940

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

    发表于 2020-12-29 15:39:12 | 显示全部楼层
    XuDong1 发表于 2020-12-29 14:47
    好的,能详细写一下您是怎么做的么?我是参考例程先读入模板轮廓再构建模板到识别点的仿射变换矩阵,最后 ...
    1. set_system ('border_shape_models', 'false')
    2. dev_get_window (WindowHandle)

    3. read_image (Image, 'C:/Users/Criss/Desktop/1.jpg')
    4. * draw_rectangle2 (WindowHandle, Row, Column, Phi, Length1, Length2)
    5. gen_rectangle2 (Rectangle, 1453, 1255, -0.0717, 265, 122)
    6. reduce_domain (Image, Rectangle, TemplateImage)
    7. create_shape_model (TemplateImage, 7, rad(0), rad(360), rad(0.4835), ['none','no_pregeneration'], 'use_polarity', [10,18,11], 4, ModelID)
    8. get_shape_model_contours (ModelContours, ModelID, 1)

    9. area_center (Rectangle, ModelRegionArea, RefRow, RefColumn)
    10. vector_angle_to_rigid (0, 0, 0, RefRow, RefColumn, 0, HomMat2D)
    11. affine_trans_contour_xld (ModelContours, TransContours, HomMat2D)

    12. dev_display (Image)
    13. dev_set_line_width (3)
    14. dev_set_color ('green')
    15. dev_set_draw ('margin')
    16. dev_display (Rectangle)
    17. dev_display (TransContours)
    18. stop ()

    19. TestImages := ['C:/Users/Criss/Desktop/1.jpg','C:/Users/Criss/Desktop/2.jpg']
    20. for T := 0 to 1 by 1
    21.     read_image (Image, TestImages[T])
    22.     find_shape_model (Image, ModelID, rad(0), rad(360), 0.5, 4, 0.5, 'least_squares', [7,1], 0.75, Row, Column, Angle, Score)
    23.     dev_display (Image)
    24.     for I := 0 to |Score| - 1 by 1
    25.         vector_angle_to_rigid (0, 0, 0, Row[I], Column[I], Angle[I], HomMat2D1)
    26.         affine_trans_contour_xld (ModelContours, TransContours, HomMat2D1)
    27.         dev_set_color ('green')
    28.         dev_display (TransContours)
    29.         stop ()
    30.     endfor
    31. endfor
    复制代码

    FindShapeDemo.rar (618.65 KB, 下载次数: 4)

    评分

    参与人数 1视觉币 +1 热心值 +1 收起 理由
    XuDong1 + 1 + 1 谢谢您我先试试

    查看全部评分

    无效附件更新 权限提升操作 删帖申请 举报以及其他需要帮助请加入QQ群:214663141 广告位招商 有意者联系
    回复

    使用道具 举报

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

    本版积分规则


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

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

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

    © 2015-2021 51Halcon机器视觉  X3.4  粤ICP备15095995号-2 粤公网安备44030602000670号

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