بايثون
استخراج النص من فيديو بأستخدام لغة بايثون
في التعلم الآلي ، يعد التعرف على الكلام مهمة مثيرة للاهتمام تتيح لك التعرف على النص الموجود خلف الصوت. باستخدام التعرف على الصوت ، يمكننا أيضًا استخراج نص من مقطع فيديو. في هذه المقالة ، سوف أطلعك على كيفية استخراج نص من مقاطع الفيديو باستخدام Python.
استخراج نص من مقاطع الفيديو باستخدام Python
في هذا القسم ، سأطلعك على كيفية استخراج نص من مقطع فيديو باستخدام Python.
الخطوة الأولى هي تنزيل مقطع فيديو. بعد تنزيل مقاطع الفيديو ، تحتاج إلى تثبيت مكتبتين من مكتبات Python:
1- SpeechRecognition: pip install SpeechRecognition
2- moviepy: pip install moviepy
بعد تثبيت مكتبتي Python أعلاه ، يمكنك البدء في البرمجة. إليك برنامج Python الكامل لتحويل الفيديو إلى نص:
import speech_recognition as sr
import moviepy.editor as mp
from moviepy.video.io.ffmpeg_tools import ffmpeg_extract_subclip
num_seconds_video= 52*60
print("The video is {} seconds".format(num_seconds_video))
l=list(range(0,num_seconds_video+1,60))
diz={}
for i in range(len(l)-1):
ffmpeg_extract_subclip("videorl.mp4", l[i]-2*(l[i]!=0), l[i+1], targetname="chunks/cut{}.mp4".format(i+1))
clip = mp.VideoFileClip(r"chunks/cut{}.mp4".format(i+1))
clip.audio.write_audiofile(r"converted/converted{}.wav".format(i+1))
r = sr.Recognizer()
audio = sr.AudioFile("converted/converted{}.wav".format(i+1))
with audio as source:
r.adjust_for_ambient_noise(source)
audio_file = r.record(source)
result = r.recognize_google(audio_file)
diz['chunk{}'.format(i+1)]=result
بعد تنفيذ كود Python أعلاه ، تحتاج إلى إنشاء مستند نصي لتخزين كل النص الذي تم استخراجه من الفيديو:
l_chunks=[diz['chunk{}'.format(i+1)] for i in range(len(diz))]
text='\n'.join(l_chunks)
with open('recognized.txt',mode ='w') as file:
file.write("Recognized Speech:")
file.write("\n")
file.write(text)
print("Finally ready!")
السلام عليكم ..
والله العظيم إستفدت كثيراً من موقعكم هذا ، وبالذات أكواد و معلومات بايثون .
مليار شكر.. وبالتوفيق المستمر إن شاء الله .