设置首页收藏本站
开启左侧

complement求区域补集的一个坑

[复制链接]
绝地武士 发表于 2025-10-16 16:39:47 | 显示全部楼层 |阅读模式
最近写的一个程序从hdevelop导出到C++程序中,在complement(Region : RegionComplement : : )这个算子之后产生的区域始终不对。

刚开始以为是dll的问题,更换后还是一样的异常。
又或者是缓存大小问题,重新设置了还是一样。

然后看看手册中有没有注意事项,然后发现了
If the system flag 'clip_region' is 'true', which is the default, the difference of the largest image processed so far (see reset_obj_db) and the input region is returned.

好家伙,怎么把这个茬给忘记了。
之前我们直接加载区域会被默认512x512大小给裁剪,一般我们采取办法是读取一张实际处理分辨率大小的图像来扩充缓存区。
然后另外一种办法是,设置区域不被裁剪,坑由此而产生了,对于这个算子来说,不裁剪那就是最大区域了。
所以如果你的算法中存在求补集这样的功能,就千万别设置不裁剪这种方法(就是裁剪区域设置为false)。

必须屏蔽代码或者设置为true:
  1. //SetSystem ("clip_region", "false");
复制代码
改成设置图像大小形式(根据图像大小设置hv_Width,hv_Height):
  1. SetSystem("tsp_width", hv_Width);
  2. SetSystem("tsp_height", hv_Height);
复制代码
问题解决!
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
大凡光学,专注标定板提供
Mr.Han 发表于 2025-10-16 16:51:39 | 显示全部楼层
感谢分享
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
gungun 发表于 2025-10-17 08:44:32 | 显示全部楼层
牛逼,之前好像也遇到这样的问题,,,
奖励计划已经开启,本站鼓励作者发布最擅长的技术内容和资源,流量变现就在现在,[点我]加入吧~~~Go
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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