Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.205.56.209] |
|
Страницы: (2) [1] 2 все ( Перейти к последнему сообщению ) |
Сообщ.
#1
,
|
|
|
Доброго дня.
Помогите побыстрее втянуться в тему. меня интересуют - какие проекты существуют (opensource) на тему распознания речи. я научился хорошо манипулировать гуглом. хотелось бы локальное распознание. обозначу сразу, интересует = дикторозависимое распознание. с чего начать. и объясните на пальцах что такое сфикнс. спасибо |
Сообщ.
#2
,
|
|
|
Цитата меня интересуют - какие проекты существуют (opensource) на тему распознания речи. Проектов очень много - умные дома, приложения под Android, различные системы управления компьютером. Большинство из них в зачаточном состоянии, так как довести до ума какой-либо проект тяжело. Недавно, например, вот такой проект анонсировали, голосовой помощник на CMUSphinx: http://jasperproject.github.io с довольно простым кодом, в котором можно разобраться. Укажите платформу и язык, который Вас интересует, можно подобрать что-то поближе. Цитата я научился хорошо манипулировать гуглом. хотелось бы локальное распознание. обозначу сразу, интересует = дикторозависимое распознание. с чего начать. Начать нужно с чтения введения в CMUSphinx (http://cmusphinx.sourceforge.net/wiki/tutorial), попробовать примеры. Дальше нужно писать интересующий код. Например, код на языке C: http://cmusphinx.sourceforge.net/wiki/tutorialpocketsphinx. В процессе можно задавать вопросы, если что-то непонятно Цитата и объясните на пальцах что такое сфинкс. Сфинкс - простая система распознавания речи, библиотека, способная встраиваться в приложения и преобразовывать речь в текст. Работа этой библоитеки очень простая. На вход библиотеки подаются звуковые данные, на выходе - распознанный текст. Библиотека достаточно гибкая, включает в себя множество параметров, может быть настроена на необычные применения, например, на обучение произношению. Кроме этого, в состав сфинкса входят инструменты для улучшения моделей, анализа производительности и так далее. Сфинкс как проект объединят большое количество людей и компаний, работающих над распознаванием речи. Отвечу на остальные Ваши вопросы. |
Сообщ.
#3
,
|
|
|
nsh, спасибо за ответ... Хорошие примеры на С#. не встречались ли Вам примеры на Delphi?
|
Сообщ.
#4
,
|
|
|
и еще вопрос-
чем длиннее анализируемая запись - тем лучше распознание? или это не верно!? есть какая то зависимость? |
Сообщ.
#5
,
|
|
|
извиняюсь что влезаю )
Цитата чем длиннее анализируемая запись - тем лучше распознание? или это не верно!? есть какая то зависимость? По моему мнению есть некий минимум по которому можно определить окружаюшую обстановку. Но после превышения этого минимума длина записи ни сколько не повышает качество распознавания. В случаи с продуктами использующими HMM (из тех что мне довелось увидеть) увеличение длительности увеличивает длительность распознавания (случаи, при котором срабатывает VAD я пренебрёг). |
Сообщ.
#6
,
|
|
|
Цитата Но после превышения этого минимума длина записи ни сколько не повышает качество распознавания. При большом количестве данных можно проводить адаптацию. При наличии минуты записей можно существенно улучить распознавание. При наличии нескольких часов распознавание будет идеальным. Добавлено Цитата nsh, спасибо за ответ... Хорошие примеры на С#. не встречались ли Вам примеры на Delphi? На Delphi тоже самое, функции из dll вызываются и возвращают результат. |
Сообщ.
#7
,
|
|
|
nsh, как же такое может быть... при наличии минуты записи - можно же столько наговорить.... очень много слов. как с этим увязать?
Добавлено ведь мне кажется наоборот. все все слова же не распознаешь из минутной записи... помогите понять. Добавлено почему интересует - просто допустим пользователь запустил мою программу, стартовал запись и у меня есть возможность каждую секунду получать запись любой длинны. допустим каждую секунду получать запись последних 10 минут всего что он сказал. не совсем понял я как это мне поможет улучшить распознание. |
Сообщ.
#8
,
|
|
|
Цитата nsh, как же такое может быть... при наличии минуты записи - можно же столько наговорить.... очень много слов. как с этим увязать? Пользователь говорит, Вы записываете. Постепенно распознавание улучшается. Просто не нужно всё сразу отбрасывать. Цитата почему интересует - просто допустим пользователь запустил мою программу, стартовал запись и у меня есть возможность каждую секунду получать запись любой длинны. допустим каждую секунду получать запись последних 10 минут всего что он сказал. Не обязательно делать адаптацию постоянно. Адаптация делается один раз и потом работает. Например, в конце дня собираются все записи и направляются на адаптацию. На утро уже более точная модель используется. Чем больше данных, тем более точная. Пока адаптированной модели нет, используется общая модель, чуть менее аккуратная. |
Сообщ.
#9
,
|
|
|
nsh, правильно ли я Вас понял - допустим пользователь говорит не важно что в течении часа и я это записал допустим в файл wav.
затем этот файл целиком может быть отправлен на адаптацию - и от этого улучшится распознание..? |
Сообщ.
#10
,
|
|
|
Да, вы поняли правильно.
|
Сообщ.
#11
,
|
|
|
Информации показалось крайне мало.
Простую вещь не получается сделать. прошу помощи (смотрите скриншот) и не могли бы ткнуть пальцем где описаны все параметры подробней (кроме /?). Прикреплённый файл______________________________________________.png (182,74 Кбайт, скачиваний: 597) |
Сообщ.
#12
,
|
|
|
в cfg.txt указаны опции для работы с wav файлами
эти опции должны быть указаны при запуске pocketsphinx_batch помимо этих опций должны быть опции с указанием акустической модели которую вы используете и фонетический словарь также на скриншоте сказано что надо добавить опцию -ctl в которой указывается текстовый файл в этом файле перчисляются имена wav файлов которые требуется распознать (без расширения .wav в данном случаи) |
Сообщ.
#13
,
|
|
|
спасибо. по крупицам собираю с ваших слов информацию...
сделал как вы сказали. но теперь новая ошибка... если не трудно подскажите Прикреплённый файлerror2.jpg (180,11 Кбайт, скачиваний: 563) Добавлено zamir, я так понимаю что теперь не хватает акустической модели в данный момент? вот отсюда я скачал файл.. я так понимаю это акустическая модель. как установить ее. ведь похоже без этого дальше ничего работать не будет. http://www.repository.voxforge1.org/downlo...usticModels.tgz |
Сообщ.
#14
,
|
|
|
верно.
модели можно загрузить отсюда: http://sourceforge.net/projects/cmusphinx/...guage%20Models/ -hmm $AM \ <- языковая модель -ctl list.ctl \ -adcin yes \ -adchdr 44 \ -cepdir . \ -cepext .wav \ -dict $DIC \ <- фонетический словарь -lm $LM \ <- языковая модель |
Сообщ.
#15
,
|
|
|
zamir, спасибо. голосовую модель указал, теперь дело за фонетическом словарем
я так понимаю мне нужен ru4sphinx, но зайдя на сайт совершенно не понятно какой именно мне файл нужно скачать D:\DB\Soft\HOME_SAPIENS\install\Home_Sapiens\client>E:\7778\bin\Release\pocketsp hinx_batch.exe E:\7778\bin\Release\cfg.txt INFO: cmd_ln.c(691): Parsing command line: \ -hmm E:\7778\model\voxforge-ru-0.2\model_parameters\msu_ru_nsh.cd_cont_1 000_8gau_16000 \ -adcin yes \ -adchdr 44 \ -cepdir . \ -cepext .wav \ -ctl E:\7778\bin\Release\test9.wav \ -dict $DIC \ -lm E:\7778\model\voxforge-ru-0.2\model_parameters\msu_ru_nsh.cd_cont_10 00_8gau_16000 Current configuration: [NAME] [DEFLT] [VALUE] -adchdr 0 44 -adcin no yes -agc none none -agcthresh 2.0 2.000000e+000 -alpha 0.97 9.700000e-001 -argfile -ascale 20.0 2.000000e+001 -aw 1 1 -backtrace no no -beam 1e-48 1.000000e-048 -bestpath yes yes -bestpathlw 9.5 9.500000e+000 -bghist no no -build_outdirs yes yes -cepdir . -cepext .mfc .wav -ceplen 13 13 -cmn current current -cmninit 8.0 8.0 -compallsen no no -ctl E:\7778\bin\Release\test9.wav -ctlcount -1 -1 -ctlincr 1 1 -ctloffset 0 0 -ctm -debug 0 -dict $DIC -dictcase no no -dither no no -doublebw no no -ds 1 1 -fdict -feat 1s_c_d_dd 1s_c_d_dd -featparams -fillprob 1e-8 1.000000e-008 -frate 100 100 -fsg -fsgctl -fsgdir -fsgext -fsgusealtpron yes yes -fsgusefiller yes yes -fwdflat yes yes -fwdflatbeam 1e-64 1.000000e-064 -fwdflatefwid 4 4 -fwdflatlw 8.5 8.500000e+000 -fwdflatsfwin 25 25 -fwdflatwbeam 7e-29 7.000000e-029 -fwdtree yes yes -hmm E:\7778\model\voxforge-ru-0.2\model_parameters\m su_ru_nsh.cd_cont_1000_8gau_16000 -hyp -hypseg -input_endian little little -jsgf -kdmaxbbi -1 -1 -kdmaxdepth 0 0 -kdtree -latsize 5000 5000 -lda -ldadim 0 0 -lextreedump 0 0 -lifter 0 0 -lm E:\7778\model\voxforge-ru-0.2\model_parameters\m su_ru_nsh.cd_cont_1000_8gau_16000 -lmctl -lmname default default -lmnamectl -logbase 1.0001 1.000100e+000 -logfn -logspec no no -lowerf 133.33334 1.333333e+002 -lpbeam 1e-40 1.000000e-040 -lponlybeam 7e-29 7.000000e-029 -lw 6.5 6.500000e+000 -maxhmmpf -1 -1 -maxnewoov 20 20 -maxwpf -1 -1 -mdef -mean -mfclogdir -min_endfr 0 0 -mixw -mixwfloor 0.0000001 1.000000e-007 -mllr -mllrctl -mllrdir -mllrext -mmap yes yes -nbest 0 0 -nbestdir -nbestext .hyp .hyp -ncep 13 13 -nfft 512 512 -nfilt 40 40 -nwpen 1.0 1.000000e+000 -outlatbeam 1e-5 1.000000e-005 -outlatdir -outlatext .lat .lat -outlatfmt s3 s3 -pbeam 1e-48 1.000000e-048 -pip 1.0 1.000000e+000 -pl_beam 1e-10 1.000000e-010 -pl_pbeam 1e-5 1.000000e-005 -pl_window 0 0 -rawlogdir -remove_dc no no -round_filters yes yes -samprate 16000 1.600000e+004 -seed -1 -1 -sendump -senin no no -senlogdir -senmgau -silprob 0.005 5.000000e-003 -smoothspec no no -svspec -tmat -tmatfloor 0.0001 1.000000e-004 -topn 4 4 -topn_beam 0 0 -toprule -transform legacy legacy -unit_area yes yes -upperf 6855.4976 6.855498e+003 -usewdphones no no -uw 1.0 1.000000e+000 -var -varfloor 0.0001 1.000000e-004 -varnorm no no -verbose no no -warp_params -warp_type inverse_linear inverse_linear -wbeam 7e-29 7.000000e-029 -wip 0.65 6.500000e-001 -wlen 0.025625 2.562500e-002 INFO: cmd_ln.c(691): Parsing command line: \ -alpha 0.97 \ -dither yes \ -doublebw no \ -nfilt 40 \ -ncep 13 \ -lowerf 133.33334 \ -upperf 6855.4976 \ -nfft 512 \ -wlen 0.0256 \ -transform legacy \ -feat 1s_c_d_dd \ -agc none \ -cmn current \ -varnorm no Current configuration: [NAME] [DEFLT] [VALUE] -agc none none -agcthresh 2.0 2.000000e+000 -alpha 0.97 9.700000e-001 -ceplen 13 13 -cmn current current -cmninit 8.0 8.0 -dither no yes -doublebw no no -feat 1s_c_d_dd 1s_c_d_dd -frate 100 100 -input_endian little little -lda -ldadim 0 0 -lifter 0 0 -logspec no no -lowerf 133.33334 1.333333e+002 -ncep 13 13 -nfft 512 512 -nfilt 40 40 -remove_dc no no -round_filters yes yes -samprate 16000 1.600000e+004 -seed -1 -1 -smoothspec no no -svspec -transform legacy legacy -unit_area yes yes -upperf 6855.4976 6.855498e+003 -varnorm no no -verbose no no -warp_params -warp_type inverse_linear inverse_linear -wlen 0.025625 2.560000e-002 INFO: acmod.c(246): Parsed model-specific feature parameters from E:\7778\model\ voxforge-ru-0.2\model_parameters\msu_ru_nsh.cd_cont_1000_8gau_16000/feat.params INFO: fe_interface.c(299): You are using the internal mechanism to generate the seed. INFO: feat.c(713): Initializing feature stream to type: '1s_c_d_dd', ceplen=13, CMN='current', VARNORM='no', AGC='none' INFO: cmn.c(142): mean[0]= 12.00, mean[1..12]= 0.0 INFO: mdef.c(517): Reading model definition: E:\7778\model\voxforge-ru-0.2\model _parameters\msu_ru_nsh.cd_cont_1000_8gau_16000/mdef INFO: bin_mdef.c(179): Allocating 113108 * 8 bytes (883 KiB) for CD tree INFO: tmat.c(205): Reading HMM transition probability matrices: E:\7778\model\vo xforge-ru-0.2\model_parameters\msu_ru_nsh.cd_cont_1000_8gau_16000/transition_mat rices INFO: acmod.c(121): Attempting to use SCHMM computation module INFO: ms_gauden.c(198): Reading mixture gaussian parameter: E:\7778\model\voxfor ge-ru-0.2\model_parameters\msu_ru_nsh.cd_cont_1000_8gau_16000/means INFO: ms_gauden.c(292): 1153 codebook, 1 feature, size: INFO: ms_gauden.c(294): 8x39 INFO: ms_gauden.c(198): Reading mixture gaussian parameter: E:\7778\model\voxfor ge-ru-0.2\model_parameters\msu_ru_nsh.cd_cont_1000_8gau_16000/variances INFO: ms_gauden.c(292): 1153 codebook, 1 feature, size: INFO: ms_gauden.c(294): 8x39 INFO: ms_gauden.c(354): 879 variance values floored INFO: acmod.c(123): Attempting to use PTHMM computation module INFO: ms_gauden.c(198): Reading mixture gaussian parameter: E:\7778\model\voxfor ge-ru-0.2\model_parameters\msu_ru_nsh.cd_cont_1000_8gau_16000/means INFO: ms_gauden.c(292): 1153 codebook, 1 feature, size: INFO: ms_gauden.c(294): 8x39 INFO: ms_gauden.c(198): Reading mixture gaussian parameter: E:\7778\model\voxfor ge-ru-0.2\model_parameters\msu_ru_nsh.cd_cont_1000_8gau_16000/variances INFO: ms_gauden.c(292): 1153 codebook, 1 feature, size: INFO: ms_gauden.c(294): 8x39 INFO: ms_gauden.c(354): 879 variance values floored INFO: ptm_mgau.c(792): Number of codebooks exceeds 256: 1153 INFO: acmod.c(125): Falling back to general multi-stream GMM computation INFO: ms_gauden.c(198): Reading mixture gaussian parameter: E:\7778\model\voxfor ge-ru-0.2\model_parameters\msu_ru_nsh.cd_cont_1000_8gau_16000/means INFO: ms_gauden.c(292): 1153 codebook, 1 feature, size: INFO: ms_gauden.c(294): 8x39 INFO: ms_gauden.c(198): Reading mixture gaussian parameter: E:\7778\model\voxfor ge-ru-0.2\model_parameters\msu_ru_nsh.cd_cont_1000_8gau_16000/variances INFO: ms_gauden.c(292): 1153 codebook, 1 feature, size: INFO: ms_gauden.c(294): 8x39 INFO: ms_gauden.c(354): 879 variance values floored INFO: ms_senone.c(149): Reading senone mixture weights: E:\7778\model\voxforge-r u-0.2\model_parameters\msu_ru_nsh.cd_cont_1000_8gau_16000/mixture_weights INFO: ms_senone.c(200): Truncating senone logs3(pdf) values by 10 bits INFO: ms_senone.c(207): Not transposing mixture weights in memory INFO: ms_senone.c(266): Read mixture weights for 1153 senones: 1 features x 8 co dewords INFO: ms_senone.c(320): Mapping senones to individual codebooks INFO: ms_mgau.c(141): The value of topn: 4 SYSTEM_ERROR: "dict.c", line 274: Failed to open dictionary file '$DIC' for read ing: No such file or directory FATAL_ERROR: "batch.c", line 819: PocketSphinx decoder init failed D:\DB\Soft\HOME_SAPIENS\install\Home_Sapiens\client> Добавлено Смотрю вот тут: https://github.com/zamiron/ru4sphinx перечислите/укажите пожалуйста что я должен скачать Добавлено вроде как вот эта папка мне нужна https://github.com/zamiron/ru4sphinx/tree/master/text2dict |