mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-23 11:42:49 -06:00
ATK: set CMNDEFAULT programmatically. Requires latest version of atkrec.
This commit is contained in:
@@ -28,6 +28,7 @@ import System.IO
|
|||||||
import System.IO.Unsafe
|
import System.IO.Unsafe
|
||||||
|
|
||||||
data ATKLang = ATKLang {
|
data ATKLang = ATKLang {
|
||||||
|
cmndef :: FilePath,
|
||||||
hmmlist :: FilePath,
|
hmmlist :: FilePath,
|
||||||
mmf0 :: FilePath,
|
mmf0 :: FilePath,
|
||||||
mmf1 :: FilePath,
|
mmf1 :: FilePath,
|
||||||
@@ -49,6 +50,7 @@ getLanguage l =
|
|||||||
atk_home <- getEnv_ "ATK_HOME" atk_home_error
|
atk_home <- getEnv_ "ATK_HOME" atk_home_error
|
||||||
let res = atk_home ++ "/Resources"
|
let res = atk_home ++ "/Resources"
|
||||||
return $ ATKLang {
|
return $ ATKLang {
|
||||||
|
cmndef = res ++ "/UK_SI_ZMFCC/cepmean",
|
||||||
hmmlist = res ++ "/UK_SI_ZMFCC/hmmlistbg",
|
hmmlist = res ++ "/UK_SI_ZMFCC/hmmlistbg",
|
||||||
mmf0 = res ++ "/UK_SI_ZMFCC/WI4",
|
mmf0 = res ++ "/UK_SI_ZMFCC/WI4",
|
||||||
mmf1 = res ++ "/UK_SI_ZMFCC/BGHMM2",
|
mmf1 = res ++ "/UK_SI_ZMFCC/BGHMM2",
|
||||||
@@ -64,17 +66,18 @@ languages = unsafePerformIO $ newIORef []
|
|||||||
initATK :: String -> IO ()
|
initATK :: String -> IO ()
|
||||||
initATK language =
|
initATK language =
|
||||||
do
|
do
|
||||||
|
l <- getLanguage language
|
||||||
ls <- readIORef languages
|
ls <- readIORef languages
|
||||||
when (null ls) $ do
|
when (null ls) $ do
|
||||||
config <- getEnv_ "GF_ATK_CFG" gf_atk_cfg_error
|
config <- getEnv_ "GF_ATK_CFG" gf_atk_cfg_error
|
||||||
hPutStrLn stderr $ "Initializing ATK..."
|
hPutStrLn stderr $ "Initializing ATK..."
|
||||||
initialize config
|
-- FIXME: CMNDEFAULT should be set in the per-language setup
|
||||||
|
initialize (Just config) [("HPARM:CMNDEFAULT",cmndef l)]
|
||||||
when (language `notElem` ls) $
|
when (language `notElem` ls) $
|
||||||
do
|
do
|
||||||
let hmmName = "hmm_" ++ language
|
let hmmName = "hmm_" ++ language
|
||||||
dictName = "dict_" ++ language
|
dictName = "dict_" ++ language
|
||||||
hPutStrLn stderr $ "Initializing ATK (" ++ language ++ ")..."
|
hPutStrLn stderr $ "Initializing ATK (" ++ language ++ ")..."
|
||||||
l <- getLanguage language
|
|
||||||
loadHMMSet hmmName (hmmlist l) (mmf0 l) (mmf1 l)
|
loadHMMSet hmmName (hmmlist l) (mmf0 l) (mmf1 l)
|
||||||
loadDict dictName (dict l)
|
loadDict dictName (dict l)
|
||||||
writeIORef languages (language:ls)
|
writeIORef languages (language:ls)
|
||||||
|
|||||||
@@ -38,13 +38,6 @@ HPARM: CMNTCONST = 0.995
|
|||||||
HPARM: CMNRESETONSTOP = F
|
HPARM: CMNRESETONSTOP = F
|
||||||
HPARM: CMNMINFRAMES = 12
|
HPARM: CMNMINFRAMES = 12
|
||||||
|
|
||||||
# -- Define HMM Resources --
|
|
||||||
|
|
||||||
# FIXME: make this configurable at run-time
|
|
||||||
HPARM: CMNDEFAULT = "/home/bjorn/src/atk/Resources/UK_SI_ZMFCC/cepmean"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# -- Recogniser --
|
# -- Recogniser --
|
||||||
|
|
||||||
AREC: TRBAKFREQ = 1
|
AREC: TRBAKFREQ = 1
|
||||||
|
|||||||
Reference in New Issue
Block a user