首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >4路连接链码到8连通链码

4路连接链码到8连通链码
EN

Stack Overflow用户
提问于 2020-02-06 07:39:41
回答 1查看 146关注 0票数 0

我觉得这应该是微不足道的,但我有最困难的时间转换一个4路连接边界链码到8路。例如,如果我有一个边界链码(32323232333000101010),并想把它转换成8路,我会删除一些多余的像素通过插入5。我可以清楚地看到不必要的像素当我画出来,但我正在寻找的实际模式,以便我可以编码它。谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-06 14:44:54

由于定义链码的方法不同,让我们假设4连接的链码使用0表示向右的一步,1用于向上的一步,2用于向左的一步,而8连通的链码也使用0表示向右的一步,1用于向右的一步,2用于向上的一步,等等。

让我们也假设链码通过顺时针跟踪来编码封闭的边界。

第一步是将每个4-连接的步骤转换为一个8连接的步骤,这一步骤只需乘以2 (0->0,1->2,2->4,3->6)即可完成。

第二步是简化四个相连的步骤,形成直角并产生轮廓的凹部;这些步骤必须用对角线台阶代替。

例如,一步右(0)跟一步下来(6)将是凸的,并且应该保持,但是一步右(0)后面的一步向上(2)将是凹的,并且应该被一步右向上(1)所代替。结果表明: 02->1,24->3,46->5,60->7.

我在DIPlib库中实现了这一点,您可以看到代码论GitHub

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60089880

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档