Ses kayıtlarında, belirli bir kişinin konuştuğu bölümleri bulmama izin veren bir (tercihen C# .Net) kitaplık bilen var mı?Bir kullanıcı konuştuğunda segmentleri belirleme?
cevap
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.
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.
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").
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!
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
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
SHoUT-no ile ses analizine daha iyi destek verdiğinden Python'a geçtim. –
- 1. anlama lucene segmentleri
- 2. Kullanıcı yazı tipi boyutu seçimini belirleme
- 3. Kullanıcı profili başına farklı kök yolu belirleme
- 4. IMAP yoluyla posta kutusuna eklenen bir iletinin kullanıcı kimliğini belirleme
- 5. ffmpeg m3u8 ve segmentleri manuel olarak oluşturur
- 6. Karmaşık bir sayı belirleme
- 7. Ekran görüntüsünü belirleme Android
- 8. Kullanıcının musluğuna bildirim belirleme
- 9. android: sembolik bir bağlantı belirleme
- 10. Bir yöntemin belgelerini açıkça belirleme
- 11. Bir türün nerede tanımlandığını belirleme
- 12. Bir nesnenin neden tutturulduğunu belirleme
- 13. Bir eğri içinde noktaları belirleme
- 14. Bir cümlenin gerginliğini belirleme Python
- 15. Sınıf Sorumluluğu ve İşbirlikçiler Belirleme
- 16. Bir satırın bir dizede nerede bulunduğunu belirleme:
- 17. Hangi paylaşım uzantısının kullanıldığını belirleme
- 18. Bir kullanıcı
- 19. iOS UI'nin neden engellendiğini belirleme
- 20. C# yansıması kullanarak özel bir dizinleyici belirleme
- 21. pygtk: anahtarın bir düzenleyici olduğunu belirleme
- 22. Düzen sayfasında bir RenderSection() çağrılıp tanımadığını belirleme
- 23. Bir sınıf başvurulan olup olmadığını belirleme C#
- 24. Bir scipy.sparse matrisinin bayt boyutunu belirleme?
- 25. readLine() için bir zaman aşımı sınırı belirleme?
- 26. property-placeholder başka bir özellikten konum belirleme
- 27. Bir UIViewController ürününün piyasaya sunulup sunulmadığını belirleme
- 28. Bir ISAPI süzgecinden yanıt uzunluğu belirleme
- 29. ANT - Bağımlılık olmaksızın tek bir hedef belirleme
- 30. Bir iOS UICollectionCell'in ekrandan çıkıp çıkmadığını belirleme
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
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