Matching Algorithm Framework: Problems

一直打算用templates做一个指纹匹配算法的framework,但目标不太明确——可能方便做测试应该是比较重要的一条,另外在统一的框架下应该会减少很多重复劳动和重复的代码;当然,选择templates而不是classes hierarchy + virtual functions的原因是为了efficiency。以前曾仿照blitz++的architecture写了一点,不过写的时候没有很仔细地考虑,觉得不太理想——主要是匹配器和特征之间的耦合太强,要写一个user transparent & friendly的界面似乎有点困难;而且动手写的分类器确实少了点,对一些问题缺少直观和实践上的认识

原来定义的核心类是template class matcher{};这样,class matcher提供统一的接口,T_Method和T_Minutiae分别是具体的匹配方法和采用的特征。

几个现有的问题:

  • T_Method和T_Minutiae之间的关系:matcher主要由T_Method刻画,T_Method毫无疑问应该作为独立的模板参数;而T_Minutiae尽管有一定的自由性,但在很大程度上依赖于T_Method,因此把T_Minutiae当成独立的模板参数会带来一定的问题——我们必然要在某处揭示T_Method和T_Minutiae的相互依赖关系。另一方面,T_Minutiae维持一定的独立性也是必要的(这涉及到某一T_Method是ad-hoc方法还是generic的框架方法:有些方法只适用于特定的特征,而有些方法对特征没有预先的假定),因此将T_Minutiae定义成以T_Method为模板参数的类模板T_Minutiae并不合适。
  • database和feature extraction:这个也很头疼。到目前为止我只在一个数据库上做过实验,因此现在的解决办法是在dataIO.h中实现数据读取。我希望与database和feature extraction相关的类应该实现对matcher的透明,并能根据matcher的要求完成数据读取和一定的处理工作。可能这里还需要一个interface。
  • matcher的定义:现在matcher的定义不够好,当然这跟前两个问题都有关系。另外重要的一点是:我希望在matcher里完成什么工作?user应该完成什么工作?设计完这个框架后,能提供一个对user和developer都友好的界面么?
发表评论?

0 条评论。

发表评论


注意 - 你可以用以下 HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">

Switch to our mobile site