Hướng dẫn nhận dạng giọng nói trong Python – w3seo

Rate this post

Chào mừng bạn đến với Hướng dẫn nhận dạng giọng nói Python của chúng tôi. Trong hướng dẫn về AI với tính năng Nhận dạng giọng nói Python này, tất cả chúng ta sẽ học cách đọc tệp âm thanh bằng Python. Chúng tôi sẽ sử dụng API nhận dạng giọng nói để thực thi tác vụ này. Hơn nữa, tất cả chúng ta sẽ tranh luận về việc đọc một phân đoạn và giải quyết và xử lý tiếng ồn .

Các bài viết liên quan:

Vì vậy, hãy khởi đầu Hướng dẫn nhận dạng giọng nói Python .

Nhận dạng giọng nói Python là gì?

Từ mạng lưới hệ thống tương hỗ người nói đơn lẻ và kho từ vựng hạn chế khoảng chừng chục từ, đến mạng lưới hệ thống nhận dạng từ nhiều người nói và chiếm hữu kho từ vựng khổng lồ bằng nhiều ngôn từ khác nhau, chúng tôi đã đi được một chặng đường dài .
Những gì chúng tôi làm ở đây là – chúng tôi quy đổi giọng nói từ âm thanh vật lý sang tín hiệu điện bằng cách sử dụng micrô. Sau đó, chúng tôi sử dụng một bộ chuyển đổi tựa như sang kỹ thuật số để quy đổi tài liệu này sang tài liệu kỹ thuật số .
Cuối cùng, chúng tôi sử dụng nhiều quy mô để chuyển âm thanh thành văn bản. Trong Mô hình Markov ẩn ( HMM ), chúng tôi chia tín hiệu giọng nói thành những đoạn 10 mili giây .

Các API có sẵn trong Nhận dạng giọng nói Python

Với Python, chúng tôi có sẵn 1 số ít API :

  • apiai
  • assemblyai
  • google-cloud-speech
  • nhân sư bỏ túi
  • Nhận dạng giọng nói
  • watson-developer-cloud
  • mưu mẹo

Một số gói Python như wit và apiai cung ứng nhiều thứ hơn là chỉ nhận dạng giọng nói cơ bản. Tuy nhiên, ở đây, chúng tôi sẽ trình diễn SpeechRecognition, dễ sử dụng hơn. Mã cứng này mã hóa một khóa API mặc định cho API Google Web Speech .

Các loại tệp được hỗ trợ trong nhận dạng giọng nói Python

  • Định dạng WAV- PCM / LPCM
  • AIFF
  • AIFF-C
  • FLAC

Điều kiện tiên quyết để nhận dạng giọng nói Python

Bạn hoàn toàn có thể sử dụng pip để setup cái này

pip install SpeechRecognition

Để kiểm tra thiết lập, bạn hoàn toàn có thể nhập tài liệu này vào trình thông dịch và kiểm tra phiên bản

import speech_recognition as sr
sr.__version__

Chúng ta cũng tải xuống âm thanh mẫu từ đây –
http://www.voiptroubleshooter.com/open_speech/american.html

Đọc tệp âm thanh bằng Python

Lớp nhận dạng

Đầu tiên, tất cả chúng ta tạo một biểu lộ của lớp Recognizer .

r=sr.Recognizer()

Với Recognizer, chúng tôi có một phương pháp cho mỗi API –

  • Recog_ing_bing () – Microsoft Bing Speech
  • Recog_google () – API giọng nói trên web của Google
  • Recog_google_cloud () – Google Cloud Speech
  • công nhận_houndify () – Houndify
  • accept_ibm () – IBM Speech to Text
  • recognize_sphinx- CMU Sphinx
  • công nhận_wit () – Wit.ai

Ngoại trừ Recog_sphinx ( ), bạn cần có liên kết Internet cho bất kể thứ gì khác mà bạn đang thao tác .

Thu thập dữ liệu với record ()

Chúng tôi hoàn toàn có thể nhu yếu trình quản trị ngữ cảnh mở tệp và đọc nội dung của nó, sau đó ghi lại nó vào một phiên bản AudioData .

demo=sr.AudioFile('demo.wav')
with demo as source:
       audio=r.record(source)

Để xác nhận điều này, hãy thử :

type(audio)

Nhận dạng giọng nói trong âm thanh

Cuối cùng, bạn hoàn toàn có thể gọi Recog_google ( ) để triển khai phiên âm .

r.recognize_google(audio)

“ The Purge hoàn toàn có thể sử dụng trong tờ The Smurfs mà không cần phát lại Gắn kết thiên nhiên và môi trường sống ngày giao hàng của một Vow những ngày này không sao những thiết bị lò vi sóng được thiết lập trong Windows để sử dụng chanh tiếp theo hãy tìm mật khẩu trên website mà chúng chứa lõi cứng như vậy trong thùng rác. bài tập chính của nghiên cứu và điều tra chuyện trò là đĩa cứng ”

Chà, bạn có thể đọc âm thanh của một ngôn ngữ khác bằng cách sử dụng tham số ngôn ngữ-

r.recognize_google(audio,language='ro-RO') #for Romanian

Đọc một đoạn âm thanh

Khi bạn chỉ muốn đọc một phần của tệp âm thanh của mình, bạn hoàn toàn có thể sử dụng bù đối số – cho biết vị trí mở màn ( tính bằng giây ) và thời lượng – cho biết thời lượng nghe .

with demo as source:
       audio=r.record(source,offset=4,duration=3)
r.recognize_google(audio)

Lưu ý rằng điều này gây ra yếu tố ở những cực. Nó nghe thấy ‘ âm u ’, nó được dịch thành ‘ rõ ràng ’. Nó cũng nghe thấy ‘ tôi quay lại ’ thay vì ‘ phát lại ’ vì tiếng ồn trong âm thanh .
Nếu tất cả chúng ta đặt offset thành 3,3

with demo as source:
       audio=r.record(source,offset=3.3,duration=3)
r.recognize_google(audio)

Nhưng hãy kiểm tra điều gì sẽ xảy ra khi chúng tôi đặt độ lệch thành 2,5 –

with demo as source:
       audio=r.record(source,offset=2.5,duration=3)
r.recognize_google(audio)

Xử lý tiếng ồn

Được rồi, hãy đương đầu với nó. Sẽ luôn có tiếng ồn, bất kể bạn sử dụng thiết bị chuyên nghiệp như thế nào để ghi lại âm thanh của mình. Vì vậy, tốt hơn tất cả chúng ta hãy học cách đối phó với nó .
Phương thức Adjust_for_ambient_noise ( ) đọc giây tiên phong của luồng tệp để hiệu chỉnh trình nhận dạng theo mức tiếng ồn của âm thanh. Điều này thường sử dụng phần âm thanh đó và nó không có trong bản chép lời .

with demo as source:
       r.adjust_for_ambient_noise(source)
       audio=r.record(source,offset=2.5,duration=3)
r.recognize_google(audio)

Chúng tôi hoàn toàn có thể phân phối cho điều này một đối số về thời hạn nó sẽ lắng nghe tiếng ồn để nó hoàn toàn có thể hiệu chỉnh bộ nhận dạng. Hãy xem cách nó tạo ra hai đầu ra trọn vẹn khác nhau với mức chênh lệch thấp tới 0,005 –

with demo as source:
       r.adjust_for_ambient_noise(source,duration=0.51)
       audio=r.record(source,offset=2.5,duration=3)
r.recognize_google(audio)
with demo as source:
       r.adjust_for_ambient_noise(source,duration=0.515)
       audio=r.record(source,offset=2.5,duration=3)
r.recognize_google(audio)

Như bạn hoàn toàn có thể thấy, Adjust_for_ambient_noise ( ) chắc như đinh không phải là một tác nhân thần kỳ. Để xử lý yếu tố này, bạn hoàn toàn có thể sử dụng ứng dụng chỉnh sửa âm thanh như Audacity để giải quyết và xử lý trước âm thanh .

Làm việc với micrô

Để hoàn toàn có thể thao tác với giọng nói của chính bạn với tính năng nhận dạng giọng nói, bạn cần có gói PyAudio. Bạn hoàn toàn có thể setup nó bằng pip –

pip install PyAudio

Hoặc bạn hoàn toàn có thể tải xuống và thiết lập mã nhị phân bằng pip. Liên kết tải xuống –
https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyaudio
Sau đó :

pip install [file_name_for_binary]

Lớp Micrô

Giống như Trình nhận dạng cho tệp âm thanh, tất cả chúng ta sẽ cần Micrô cho tài liệu giọng nói thời hạn thực. Vì chúng tôi đã setup những gói mới, hãy thoát khỏi trình thông dịch của chúng tôi và mở một phiên khác .

import speech_recognition as sr
r=sr.Recognizer()

Bây giờ, hãy tạo một phiên bản của Microphone .

mic=sr.Microphone()

Micrô có một phương pháp tĩnh để liệt kê tổng thể những micrô có sẵn –

sr.Microphone.list_microphone_names()

Giờ đây, hoàn toàn có thể chọn một micrô nhất định theo chỉ mục thiết bị của nó với đoạn mã sau đây –

mic=sr.Microphone(device_index=3)

Nhưng giờ đây hãy gắn bó với mặc định .
Xem thêm Core Layers trong thư viện Keras

Bắt đầu vào micrô

Với trình quản trị ngữ cảnh, chúng tôi chớp lấy thông tin nguồn vào bằng phương pháp nghe ( ) .

with mic as source:
          audio=r.listen(source)

Bây giờ bạn sẽ nói vào micrô của mình. Khi nó phát hiện ra sự yên lặng, nó sẽ ngừng nghe. Sau đó, nó sẽ hiển thị lời nhắc thông dịch viên ( >> > ) .

r.recognize_google(audio)

hoàn thành xong thử nghiệm
Bạn cũng hoàn toàn có thể gọi phương pháp Adjust_for_ambient_noise ( ) bằng Micrô .

with mic as source:
         r.adjust_for_ambient_noise(source)
         audio=r.listen(source)
r.recognize_google(audio)

đây là một bài kiểm tra

Bài phát biểu không đủ điều kiện

Khi Python không hề khớp một số ít âm thanh với văn bản, nó sẽ tạo ra một ngoại lệ UnknownValueError .

r.recognize_google(audio)

Truy xuất error ( lần gọi gần đây nhất ) :

Một số đoạn âm thanh dẫn đến điều này sẽ là âm thanh ho, âm thanh nôn mửa, tiếng vỗ tay và tiếng tặc lưỡi .

Vì vậy, đây là tất cả trong Nhận dạng giọng nói Python. Hy vọng bạn thích giải thích của chúng tôi.

Sự kết luận

Bạn có thấy việc nhận dạng giọng nói với Python thuận tiện như thế nào không ? Các API đã làm cho điều đó trở nên khả thi. Chà, tại sao chúng tôi lại đưa cái này vào phần hướng dẫn AI thì không cần lý giải. Nhận dạng giọng nói trong Python là một phần không hề thiếu của Trí tuệ tự tạo .
Siri hoặc Alexa sẽ ra sao nếu không có nó ?. Vì vậy, trong phần Tóm lại cho tính năng Nhận dạng giọng nói Python này, chúng tôi đã tranh luận về API Nhận dạng giọng nói để đọc tệp Âm thanh bằng Python .

Hơn nữa, chúng tôi đã thấy việc đọc một phân đoạn và giải quyết và xử lý tiếng ồn trong hướng dẫn Python nhận dạng giọng nói. Bạn hoàn toàn có thể tự do cho chúng tôi biết thưởng thức đọc bài viết này trải qua những phản hồi .

Source: https://thomaygiat.com
Category : Nghe Nhìn

Hướng dẫn nhận dạng giọng nói trong Python – w3seo

Bài viết liên quan
Hotline 24/7: O984.666.352
Alternate Text Gọi ngay