Remove system path modifications
To run a script during development, instead ./setup.sh followed by precise-<script_name> should be used This ensures all the proper paths are already setup (such as for PreciseRunner)pull/1/head
parent
d622eef3ec
commit
cc32959e29
|
|
@ -1,3 +1,4 @@
|
|||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
from typing import *
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
from os.path import isfile
|
||||
from typing import *
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
# Python 3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
from abc import abstractmethod, ABCMeta
|
||||
from importlib import import_module
|
||||
|
|
@ -8,9 +7,9 @@ from typing import BinaryIO
|
|||
|
||||
import numpy as np
|
||||
|
||||
from precise.util import buffer_to_audio
|
||||
from precise.model import load_precise_model
|
||||
from precise.params import inject_params
|
||||
from precise.util import buffer_to_audio
|
||||
|
||||
|
||||
class Runner(metaclass=ABCMeta):
|
||||
|
|
@ -70,6 +69,7 @@ class KerasRunner(Runner):
|
|||
|
||||
class Listener:
|
||||
"""Listener that preprocesses audio into MFCC vectors and executes neural networks"""
|
||||
|
||||
def __init__(self, model_name: str, chunk_size: int = -1, runner_cls: type = None):
|
||||
self.window_audio = np.array([])
|
||||
self.pr = inject_params(model_name)
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
# Python 3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
import json
|
||||
from collections import namedtuple
|
||||
from math import floor
|
||||
|
||||
import numpy as np
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,13 +1,17 @@
|
|||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
from typing import *
|
||||
from typing import BinaryIO
|
||||
|
||||
import numpy as np
|
||||
|
||||
from precise.util import audio_to_buffer
|
||||
from precise.params import pr
|
||||
from precise.util import audio_to_buffer
|
||||
|
||||
|
||||
class PocketsphinxListener:
|
||||
"""Pocketsphinx listener implementation used for comparison with Precise"""
|
||||
|
||||
def __init__(self, key_phrase, dict_file, hmm_folder, threshold=1e-90, chunk_size=-1):
|
||||
from pocketsphinx import Decoder
|
||||
config = Decoder.default_config()
|
||||
|
|
|
|||
|
|
@ -1,13 +1,9 @@
|
|||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
|
||||
import sys
|
||||
|
||||
sys.path += ['.', 'runner'] # noqa
|
||||
|
||||
from threading import Event
|
||||
from random import randint
|
||||
from subprocess import Popen
|
||||
from threading import Event
|
||||
|
||||
from prettyparse import create_parser
|
||||
|
||||
from precise.pocketsphinx.listener import PocketsphinxListener
|
||||
|
|
|
|||
|
|
@ -2,13 +2,13 @@
|
|||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
import wave
|
||||
from subprocess import check_output, PIPE
|
||||
|
||||
from prettyparse import create_parser
|
||||
|
||||
from precise.pocketsphinx.listener import PocketsphinxListener
|
||||
from precise.scripts.test import show_stats
|
||||
from precise.train_data import TrainData
|
||||
|
||||
|
||||
usage = '''
|
||||
Test a dataset using Pocketsphinx
|
||||
|
||||
|
|
@ -35,7 +35,9 @@ usage = '''
|
|||
|
||||
|
||||
def eval_file(filename) -> float:
|
||||
transcription = check_output(['pocketsphinx_continuous', '-kws_threshold', '1e-20', '-keyphrase', 'hey my craft', '-infile', filename], stderr=PIPE)
|
||||
transcription = check_output(
|
||||
['pocketsphinx_continuous', '-kws_threshold', '1e-20', '-keyphrase', 'hey my craft',
|
||||
'-infile', filename], stderr=PIPE)
|
||||
return float(bool(transcription) and not transcription.isspace())
|
||||
|
||||
|
||||
|
|
@ -44,7 +46,8 @@ def main():
|
|||
data = TrainData.from_both(args.db_file, args.db_folder, args.data_dir)
|
||||
print('Data:', data)
|
||||
|
||||
listener = PocketsphinxListener(args.key_phrase, args.dict_file, args.hmm_folder, args.threshold)
|
||||
listener = PocketsphinxListener(args.key_phrase, args.dict_file, args.hmm_folder,
|
||||
args.threshold)
|
||||
|
||||
def run_test(filenames, name):
|
||||
print()
|
||||
|
|
|
|||
|
|
@ -1,14 +1,10 @@
|
|||
#!/usr/bin/env python3
|
||||
# Attribution: This script was adapted from https://github.com/amir-abdi/keras_to_tensorflow
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
|
||||
import sys
|
||||
|
||||
sys.path += ['.'] # noqa
|
||||
|
||||
import os
|
||||
from os.path import split, isfile
|
||||
from shutil import copyfile
|
||||
|
||||
from prettyparse import create_parser
|
||||
|
||||
usage = '''
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
import sys
|
||||
|
||||
sys.path += ['.'] # noqa
|
||||
|
||||
import json
|
||||
|
||||
from precise.network_runner import Listener
|
||||
from precise.scripts.test import show_stats
|
||||
from prettyparse import create_parser
|
||||
|
||||
from precise.network_runner import Listener
|
||||
from precise.params import inject_params
|
||||
from precise.scripts.test import show_stats
|
||||
from precise.train_data import TrainData
|
||||
|
||||
usage = '''
|
||||
|
|
|
|||
|
|
@ -1,18 +1,15 @@
|
|||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
import sys
|
||||
|
||||
sys.path += ['.', 'runner'] # noqa
|
||||
|
||||
from threading import Event
|
||||
from random import randint
|
||||
from os.path import join
|
||||
from random import randint
|
||||
from subprocess import Popen
|
||||
from prettyparse import create_parser
|
||||
import numpy as np
|
||||
from threading import Event
|
||||
|
||||
import numpy as np
|
||||
from prettyparse import create_parser
|
||||
|
||||
from precise.util import save_audio, buffer_to_audio
|
||||
from precise.network_runner import Listener
|
||||
from precise.util import save_audio, buffer_to_audio
|
||||
from precise_runner import PreciseRunner
|
||||
from precise_runner.runner import ListenerEngine
|
||||
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
|
||||
import os
|
||||
import sys
|
||||
|
||||
sys.path += ['.'] # noqa
|
||||
|
||||
import os
|
||||
from prettyparse import create_parser
|
||||
|
||||
from precise.network_runner import Listener
|
||||
from precise import __version__
|
||||
from precise.network_runner import Listener
|
||||
|
||||
usage = '''
|
||||
stdin should be a stream of raw int16 audio, written in
|
||||
|
|
|
|||
|
|
@ -1,13 +1,9 @@
|
|||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
|
||||
import sys
|
||||
|
||||
sys.path += ['.'] # noqa
|
||||
|
||||
from prettyparse import create_parser
|
||||
from precise.params import inject_params
|
||||
|
||||
from precise.model import load_precise_model
|
||||
from precise.params import inject_params
|
||||
from precise.train_data import TrainData
|
||||
|
||||
usage = '''
|
||||
|
|
|
|||
|
|
@ -1,15 +1,10 @@
|
|||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
|
||||
import sys
|
||||
|
||||
sys.path += ['.'] # noqa
|
||||
|
||||
from prettyparse import create_parser
|
||||
|
||||
from precise.train_data import TrainData
|
||||
from precise.model import create_model
|
||||
from precise.params import inject_params, save_params
|
||||
from precise.train_data import TrainData
|
||||
|
||||
usage = '''
|
||||
Train a new model on a dataset
|
||||
|
|
|
|||
|
|
@ -1,22 +1,18 @@
|
|||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
|
||||
import sys
|
||||
|
||||
sys.path += ['.'] # noqa
|
||||
from glob import glob
|
||||
from os import makedirs
|
||||
from os.path import basename, splitext, isfile, join
|
||||
from random import random
|
||||
from typing import *
|
||||
|
||||
import numpy as np
|
||||
from os import makedirs
|
||||
from random import random
|
||||
from glob import glob
|
||||
from os.path import basename, splitext, isfile, join
|
||||
from typing import *
|
||||
from prettyparse import create_parser
|
||||
|
||||
from precise.train_data import TrainData
|
||||
from precise.network_runner import Listener, KerasRunner
|
||||
from precise.model import create_model
|
||||
from precise.network_runner import Listener, KerasRunner
|
||||
from precise.params import inject_params
|
||||
from precise.train_data import TrainData
|
||||
from precise.util import load_audio, save_audio
|
||||
|
||||
usage = '''
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
# Python 3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
|
||||
import json
|
||||
from argparse import ArgumentParser
|
||||
from hashlib import md5
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
from typing import *
|
||||
|
||||
import numpy as np
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
from typing import *
|
||||
|
||||
import numpy as np
|
||||
|
||||
from precise.util import load_audio
|
||||
from precise.params import pr
|
||||
|
||||
from precise.util import load_audio
|
||||
|
||||
inhibit_t = 0.4
|
||||
inhibit_dist_t = 1.0
|
||||
|
|
|
|||
|
|
@ -1,10 +1,5 @@
|
|||
#!/usr/bin/env python3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
|
||||
import sys
|
||||
|
||||
sys.path += ['.', 'runner'] # noqa
|
||||
|
||||
from argparse import ArgumentParser
|
||||
from subprocess import Popen
|
||||
from precise_runner import PreciseRunner, PreciseEngine
|
||||
|
|
@ -23,10 +18,10 @@ def main():
|
|||
Popen(['aplay', '-q', 'data/activate.wav'])
|
||||
|
||||
engine = PreciseEngine('./precise/stream.py', args.model)
|
||||
PreciseRunner(engine, on_prediction=on_prediction, on_activation=on_activation, trigger_level=0).start()
|
||||
PreciseRunner(engine, on_prediction=on_prediction, on_activation=on_activation,
|
||||
trigger_level=0).start()
|
||||
Event().wait() # Wait forever
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
# Python 2 + 3
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
|
||||
import atexit
|
||||
from subprocess import PIPE, Popen
|
||||
from threading import Thread
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
# Copyright (c) 2017 Mycroft AI Inc.
|
||||
from setuptools import setup, find_packages
|
||||
|
||||
setup(
|
||||
|
|
|
|||
Loading…
Reference in New Issue