竞争编码一些数字的计算问题

个人记录用,不回答任何相关问题。

一些定义:

六角度竞争编码图,一个像素的特征占用3bit,相邻角度间的差距值为1.(相邻角度间1的个数差1)。

1)隔三个点采样的原因?

A:startPoint=18,endPoint=112。18+3*k=112的话k=32个编码点,一个编码点占3 bit,sizeof(int )= 4 byte = 32 bit,因此一行的图像编码后正好可以用3个int,即12个byte记录。

2)为何会占用 384 byte?

A: 一个特征占用3 bit,每行采样点k=32,采样行数k=32,共占用32*32*3 =3072 bit ,3072 / 8 =384 byte。即,可以用384 / 4 =96个int类型变量保存。


3)匹配的PlaneNum和PlaneSize是什么?

A:用按位异或操作进行匹配,因此编码后特征的三个bit分开按位异或,每一位是一个Plane,因此PlaneNum=3,384 / 3=128.因此整个特征一个Plane的PlaneSize=128(byte)。


4)为何用一个union来记录匹配值?

A: 匹配按异或与后,需要查找“1”的个数,因此需要事先保存一个十进制数到1个数的映射数组,unsigned int有32位,映射数组过大。因此建立一个union

采用{unsigned int bitCount,unsigned short bitCountLow,unsigned short bitCountHight }的模式,对于一个int数拆分成两个short,映射数组仅需65536大小。


5)如何计算得分?

A:对于没有位移的两特征,共匹配特征点32*32对,PlaneNum=3,因此共有共得到匹配值32*32*3次匹配,因此得分值等于 bitCount/(32*32*3=3072)。



  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值