码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Visual Studio 2019编译HTKlib


    我们知道,HTK声学模型部分由HTKLib和HTKTools组成。

    在HTKLib里定义了很多公用函数,比如wave信号处理相关的函数、字典构建函数、HMM算法viterbi、forward-backward算法等,还有内存管理、数学计算等等。

    HTKTools是利用这些公用函数完成某个具体的任务,比如HDMan实现任务词典构建,就是从几个大词典中,构建当前任务相关的发音字典。HLEd实现标注文件处理,输入发音字典、标注文本,构建phone级别的MLF文件,即对标注文件进行发音序列扩展,构建当前任务的phone集合,它与要训练的模型集合是一一对应的。这些工具最终编译成为独立的exe文件,可以单独运行,而HTKLib是开发这些工具的依赖包。

    现在,利用htk的源码,编译一个HTKlib库,然后开发工具的时候就可以include对应头文件,生成可执行文件时,需要链接这些库(里面是一堆目标文件——object file)。

    首先,看一下下载下来的HTK3.4.1源码的目录。

    红圈标记的两个目录,分别是HTKLib和HTKTools,这是咱们重点关注的。

    继续看下它们里面有哪些内容:

     HTKTools:

     这里面的每一个.c文件都将编译成一个exe可执行程序,可以实现独立的功能。上图中圈出来的.c文件对应的工具将分别用来构建子图(lattice)、重估HMM参数和初始化HMM参数。它们各自都有多个参数,提供各种功能选项。

    HTKLib:

    lib库里含有多种函数,如HFB.c是关于前向-后续算法、HMem.c定义了内存管理的函数、HShell.c定义了参数处理的函数等等。

    现在就是要对HTKLib目录的源码进行编译,生成一个DLL或lib库,在编译HTKTools里面每个.c文件(工具)时使用。

    第一步:把HTKLib里的.c和.h文件分开,分别放进源文件夹和头文件夹里。

    第二步:新建项目。其中解决方案名称可以是HTK或者HTK_compile,项目名称写HTKlib。

    第三步:在HTKlib项目中,添加现有项,选择头文件和源文件。

    参考Visual Studio 2019调试HTK代码博文。

    不同点就是生成文件的类型是“静态库”。

     最终编译生成文件HTKlib.lib库。

  • 相关阅读:
    ArrayList vs. LinkedList:数据结构之争
    (Research)泛癌单细胞分析揭示肿瘤微环境中癌相关成纤维细胞的异质性和可塑性
    点云从入门到精通技术详解100篇-基于点云数据的机器人装焊 过程在线测量
    Excel中高级筛选多个条件怎么做?
    哈希的应用 —— 布隆过滤器
    学node 之前你要知道这些
    Linux高级IO ------ poll ,epoll(重要)
    AXWWriter兼容的Word处理元素
    通过LabVIEW提升生产设备自动化水平
    Flutter快学快用08 单元测试:Flutter 应用单元测试,提升代码质量
  • 原文地址:https://blog.csdn.net/hjx5200/article/details/127083797
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号