概念

莫顿码是将多维数据转化为一维数据的编码。
莫顿编码定义了一条 Z 形的空间填充曲线,因此莫顿编码通常也称Z阶曲线(Z-order curve)。 在 N 维空间中对于彼此接近的坐标具有彼此接近的莫顿码, 可以应用于为一个整数对产生一个唯一索引。例如,对于坐标系中的坐标点使用莫顿编码生成的莫顿码,可以唯一索引对应的点。这些索引为“Z”形排序 。如下图以Z形(左上->右上->左下->右下)分别代表1*1、2*2、4*4、8*8 平方单位:

编码规则

十进制编码规则:首先,行列号转为二进制(从第0行0列开始);然后行列号交叉排列(yxyx…);最后将二进制结果转为十进制。Morton编码是按左上,右上,左下,右下的顺序从0开始对每个格网进行自然编码的。如下图(二维空间):展示了8*8的图像每个像素的空间编码,从000000到111111,用一维二进制数,编码了x,y值在0-7的位置坐标。图中蓝色数字代表x轴,红色数字代表y轴,网格中的二进制数由x和y的二进制数交叉构成。

将上图中的二进制数转为10进制,是0…63的数列,如下图:

在三维空间同样是Z形排序,xyz轴二进制位交叉(zyxzyx…),如下图4*4*4和8*8*8 立方单位

莫顿码(Morton code)介绍相关推荐

  1. 莫顿码Morton code的c语言实现

    十进制 Morton码可以使用栅格单元的行列号计算 ###原理部分 遵循C语言规范,矩阵的第一行为"0"行.第一列为"0"列,先将十进制的行列号转换成二进制数, ...

  2. 三维坐标莫顿码计算 c++算法程序

    莫顿码可以将多维数据转化为一维数据编码,根据一维编码位数可确定多维数据保留精度,是一种比较常用的压缩编码方法,尤其是作为哈希表的映射算法等,加速了树结构数据的存储和访问速度. 莫顿编码也叫z-orde ...

  3. Morton Code

    莫顿码 ,实现了一维与二维(或多维)的转换.它通过交叉存储两个数的位产生一个数,即莫顿码. 可以应用于为一个整数对产生一个唯一索引. 例如,对于坐标系中的坐标点使用莫顿编码生成的莫顿码,可以唯一索引对 ...

  4. 痞子衡嵌入式:走进二维码(QR Code)的世界(1)- 引言

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是走进二维码(QR Code)的世界专题的引言. 如今二维码可以说是深入走进大家的生活了,推送名片.扫码支付都离不开它,大家几乎每天都会和 ...

  5. Code 39码与Code 128码区别

    Code 39码与Code 128码区别  128 码与 Code 39 码有很多的相近性,都广泛运用在企业内部管理.生产流程.物流控制系统方面.不同的在于 Code 128 比 Code 39 能 ...

  6. 诺贝尔奖得主罗伯特·莫顿—唯有信任,方得科技创新

    介绍莫顿教授: 罗伯特·C·莫顿(Robert C. Merton)是麻省理工斯隆管理学院的金融系特聘教授.由于他对连续时间金融学(特别是对布莱克&斯科尔斯期权定价公式(Black–Schol ...

  7. 根据快码的类型获取快码Lookup Code设置

    根据快码的类型获取快码Lookup Code设置 在EBS系统中,值列表的来源有时候是值集,有时候是使用快码.下面介绍如何根据快码的类型,获取快码可以有的值. SELECT B.APPLICATION ...

  8. minio存储之纠删码(Erasure Code)

    纠删码的原理介绍可以参考: https://www.jianshu.com/p/4abf65ad03af 一般上我们如果要保证数据高可用,主流的有两种策略: 多副本 纠删码 副本(Replicatio ...

  9. gray code java_格雷码Gray Code详解

    格雷码简介 在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(Gray Code),另外由于最大数与最小数之间也仅一位数不同,即"首尾相连",因此又 ...

最新文章

  1. 查看微码的两种方式hmcaix
  2. python编写测试系统_纯 python 编写的一套 dubbo 测试平台
  3. java jar log4j_使用Log4j
  4. spring整合问题集合1
  5. InterDev 调试错误信息: Unable to set server into correct debugging state automatically....的解决办法...
  6. 计算机应用基础是文管二级吗,计算机应用基础(文管二级)习题册.doc
  7. FPGA复位激励编写(方法二)
  8. 【IDEA】IDEA 单元测试 System.in 没办法输入
  9. 【海报设计灵感】潮翻天的波普艺术海报设计
  10. 洛谷1031 均分纸牌 解题报告
  11. C# 使用RabbitMQ(二)安装
  12. java top tree 数据结构_Java中如何实现Tree的数据结构算法
  13. uniapp h5在线预览word文档ppt等
  14. 基于DSP的温度采集系统设计
  15. C++多线程并发(五)---原子操作与无锁编程
  16. Dreamweaver CS6破解教程[序列号+破解补丁
  17. Linux安装git报错make[1]: *** [perl.mak] 错误 2
  18. pta 循环——首字母大写
  19. 用python构建多只股票日收益率直方图_Barra纯因子收益率的Python实现
  20. 金山 V8 终端安全系统 默认弱口令漏洞

热门文章

  1. 知道做到 - 分享一
  2. 连续函数的运算与初等函数的连续性——“高等数学”
  3. 2022 综合英语慕课(大学英语二)最新满分章节测试答案(题库中自找具体题目)
  4. 【算法】高精度计算π(pi)值
  5. 计算机修改users用户名,笔记本电脑更改用户名_笔记本电脑更改user
  6. 使用Linux挂载NAS硬盘的RAID分区
  7. Activiti 简单demo (2)
  8. 1127 - 咸鱼文章
  9. VS 2019 点击页面自动定位到解决方案资源管理器目录位置
  10. windows开机启动