ITK里的某些类的前缀或中间包含的vnl代表的含义

0. 缘起

最近在了解图像配准算法,了解的部分大部分使用的是ITK的算法,里面很多地方出现了以vnl开头的类,常见的有vnl_vectorvnl_vector_fixed等等,甚至在源码里面有一个专门的vnl文件夹用来放置这些相关的文件。
但是使用的有点郁闷,这个vnl到底代表什么含义呢?

1. 路过的路线

1.1 头文件阅读

在源码的头源文件中查找了,有很多的类在头文件中写着版权信息。
如果幸运的话,在版权信息上会描述这个类的作用,有可能捎带到这个简称的含义。
但是在阅读查找过程中,并没有找到相关简写的含义。
意外的发现:看到在源码里面存在vnl_matlab_**等的类,说明这个可能能与MATLAB结合做一些事情。

1.2 百度查找

在百度里面基本上没找到太多有用的信息,但是百度到一篇论文《基于ITK数学库的矩阵基本运算》,这里写到“ITK的数学库VNL”,这样最起码知道这个应该是一个数学库。
再次在百度“数学 vnl库”,第一条是“VXL库的简单使用”,这篇文章里面提到了“数学库vnl”,那么说明这个可能是一个独立的库。
既然可能是一个独立的库,ITK是一个国际化的大的软件,那么其中可能会提到版权声明,那么就可以查看一下它的帮组文档,看看里面的描述。

2. ITK帮助文档

在帮助文档里面找到这样的附录章节:

A.2.16 VNL
#ifndef vxl_copyright_h_
#define vxl_copyright_h_
// Copyright 2000-2013 VXL Contributors
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions
// are met:

这里面提到了vnl上面提到是vxl_copyright,那么这个vnl应该是vxl的一部分了。

3. VXL数学库

那么再查找VXL,就很容易找到这个数学库了,它的展示页面是The VXL Homepage.
在这里可以看到:VXL代表的是the Vision-something-Libraries.
这个库里面包含如下几部分:

  • vnl (numerics): Numerical containers and algorithms. e.g. matrices, vectors, decompositions, optimisers.
  • vil (imaging): Loading, saving and manipulating images in many common file formats, including very large images.
  • vgl (geometry): Geometry for points, curves and other elementary objects in 1, 2 or 3 dimensions.
  • vsl (streaming I/O), vbl (basic templates), vul (utilities): Miscellaneous platform-independent functionality.

这样就可以知道vnl表示的是the Vision Numerics Libraries(视觉数值库 )

参考资料

  1. VXL库的简单使用
  2. ITK帮助文档
  3. The VXL Homepage
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值