2011-11-27 16 views

cevap

18

Bu araç bağırmaya ile mümkündür: http://shout-toolkit.sourceforge.net/index.html

O C++ ile yazılmıştır ve Linux için test, ama aynı zamanda Windows veya OSX altında çalışmalıdır ediyor.

Araç seti, otomatik konuşma tanıma (ASR) konusunda doktora araştırmamın bir yan ürünüdür. ASR'nin kendisi için kullanılması belki de bu kadar basit değildir, ancak Konuşma Aktivite Algılama (SAD) ve diarizasyon (belirli bir kişinin tüm konuşmalarını bulma) için kullanımı oldukça kolaydır.

  1. 16KHz, 16bit, küçük endian, mono bir headerless pcm ses dosyası oluşturun: İşte bir örnek. Ham dosyaları oluşturmak için ffmpeg kullanıyorum: ffmpeg -i [INPUT_FILE] -vn -acodec pcm_s16le -ar 16000 -ac 1 -f s16le [RAW_FILE] Küçük endian kodlanmış dosya boyutuyla (4 bayt) başsız veri öneki. Shout_cluster uzantıya dayalı dosya türünü algıladığından, dosyanın .raw uzantısına sahip olduğundan emin olun.

  2. konuşma/olmayan konuşma segmentasyon gerçekleştirin: ./shout_segment -a [RAW_FILE] -ams [SHOUT_SAD_MODEL] -mo [SAD_OUTPUT] çıktı dosyası etiketli konuşma yapılan segmentler (sağlayacaktır "KONUŞMA" ile. Tabii ki, her şey otomatik olarak yapıldığı için, sistemde ses çıkarıyor olabilir ..), hangi ses olmayan konuşma ("SES") veya sessizlik ("SESSİZ").

  3. gerçekleştirin diarization: ./shout_cluster -a [RAW_FILE] -mo [DIARIZATION_OUTPUT] -mi [SAD_OUTPUT], o çalışacağız shout_segment çıkışını kullanarak kayıtta etkindi kaç hoparlörler belirlemek için , her bir hoparlörü ("SPK01", "SPK02" vb.) etiketleyin ve ardından her bir hoparlörün tüm konuşma bölümlerini bulun.

Umarım bu yardımcı olacaktır!

+0

Cevabınız, Marijn için teşekkür ederiz, ve adımların girişiniz için! Bu dil bağımsız mı, yani İbranice, Japonca ve benzeri yerlerde çalışabilir mi?(Şaşırtıcı bir şekilde, bu "muhtemelen bu örnek için seçtikleri için çok egzotik diller") tam olarak gereken dillerdir :) – Avi

+0

Sadece bu komutları ve terminali ikinci bir komutta dondurdum. Ubuntu 17.10. Belki de bu yönerge hakkında hiçbir şey yapmadığım için: "Küçük endian kodlanmış dosya boyutu (4 bayt) ile başsız veri öneki". Bu dava mı? Bunu nasıl yaparım? – Roman

2

Yukarıdaki yanıt doğru olsa da, SHoUT'u yüklerken Linux'ta kurulum sorunumu için bir güncelleme gerçekleştirdim. değiştirildi için buldum undefined reference to pthread_join olan çözeltisi hattı

CXXFLAGS="-O3 -funroll-loops -mfpmath=sse -msse -msse2" LDFLAGS="-lpthread" ../configure 

lpthreadNOT

CXXFLAGS="-O3 -funroll-loops -mfpmath=sse -msse -msse2" LDFLAGS="-pthread" ../configure 

bağır yükleme zip configure-make.sh açıp değiştirmek olan Linux Sistemlerinde pthread.

OS: Linux Mint 18 nerede bağırmak sürümü: serbest-2010-versiyon-0-3

+0

Cevabınız için teşekkürler, dostum! Sonunda bir şeyi başarılı bir şekilde tanımayı başardınız mı? – Roman

+0

SHoUT-no ile ses analizine daha iyi destek verdiğinden Python'a geçtim. –

İlgili konular