فهرست مطالب:

دوربین صدا محور با استفاده از تمشک پای: 6 مرحله
دوربین صدا محور با استفاده از تمشک پای: 6 مرحله

تصویری: دوربین صدا محور با استفاده از تمشک پای: 6 مرحله

تصویری: دوربین صدا محور با استفاده از تمشک پای: 6 مرحله
تصویری: 😉 وقتی شوهرش سرکاره، ربات مرد تمام خواسته های زن را برآورده می کند 2024, جولای
Anonim
دوربین صدا محور با استفاده از تمشک پای
دوربین صدا محور با استفاده از تمشک پای

دوربینی بسازید که بتواند با دستورات صوتی کار کند ، این دوربین عمدتا برای افراد مختلف طراحی شده است ، به ویژه برای افرادی که به دنبال عکاسی سرگرم کننده هستند.

مرحله 1: راهنمای سخت افزار

راهنمای سخت افزار
راهنمای سخت افزار

VDC بر روی Raspberry Pi (مدل B) طراحی شده است و به سخت افزار اضافی مانند وای فای (اختیاری) و میکروفون USB نیاز دارد. سخت افزار پیشنهادی در زیر با پیوندهایی برای جزئیات بیشتر نشان داده شده است. ممکن است مارک ها/مشخصات سخت افزاری کمی متفاوت را امتحان کنید. VDC به هیچ یک از فروشندگان سخت افزار مرتبط وابسته نیست.

لیست کامل

  1. تمشک پای مدل B
  2. Picamera
  3. مینی میکروفون USB
  4. کارت SD
  5. کابل اترنت
  6. آداپتور مینی USB (اختیاری)
  7. میکرو USB - شارژر دیواری
  8. بلندگوهایی که از طریق جک صوتی Raspberry Pi کار می کنند (احتمالاً نیاز به خودکار دارند)

فهرست لوازم جانبی تأیید شده Raspberry Pi ممکن است برای یافتن جایگزین برای محصولات توصیه شده در بالا مفید باشد.

مونتاژ

مونتاژ اجزای مورد نیاز ساده است. میکروفون ، کارت SD ، آداپتور بی سیم (در صورت داشتن) ، کابل micro-USB ، کابل اترنت و بلندگوها را در رزبری پای وارد کنید. آداپتور شارژ دیواری USB به عنوان یک دستگاه مستقل برای تغذیه توصیه می شود.

در مرحله نصب نرم افزار از کابل اترنت برای ورود به pi از رایانه استفاده می شود. پس از نصب ، اگر ترجیح می دهید از اتصال بی سیم استفاده کنید ، می توانید این کابل را حذف کنید.

اتصال اینترنت

همانطور که در بالا ذکر شد ، آداپتور بی سیم اختیاری است. روی اتصال سیمی (از طریق اترنت) بسیار خوب اجرا می شود ، بنابراین بسته به آنچه برای شما مناسب است ، می توانید بین دو تنظیم را انتخاب کنید.

مرحله 2: نصب سیستم عامل روی رزبری پای

نصب سیستم عامل روی رزبری پای
نصب سیستم عامل روی رزبری پای

معرفی

رزبری پای یک میکرو پردازنده با اندازه کارت اعتباری است که در مدلهای مختلف با سرعت پردازش متفاوت از 700 مگاهرتز در دسترس است. فرقی نمی کند که شما مدل B یا مدل B+داشته باشید ، یا نسخه بسیار قدیمی ، مراحل نصب یکسان است. افرادی که وب سایت رسمی Raspberry Pi را بررسی کرده اند ، ممکن است آنها را مشاهده کرده باشند که سیستم عامل "NOOBS" یا "NOOBS LITE" (با نام مستعار "OS") را برای مبتدیان توصیه می کنند. اما استفاده از Pi بسیار آسان است و از مبتدی بودن ، شخص در کوتاه مدت حرفه ای می شود. بنابراین ، بهتر است از سیستم عامل قوی تر و کارآمدتر ، Raspbian استفاده کنید. دلیل اصلی محبوبیت Raspbian این است که هزاران کتابخانه از پیش ساخته شده برای انجام بسیاری از وظایف و بهینه سازی سیستم عامل دارد. این یک مزیت بزرگ در هنگام ایجاد برنامه های کاربردی است.

دانلود Raspbian و Image Writer

آخرین نسخه Raspbian را از اینجا بارگیری کنید. می توانید آن را مستقیماً یا از طریق تورنت بارگیری کنید.

صفحه Raspbian

لینک دانلود Raspbian OS

برای نوشتن سیستم عامل بارگیری شده در کارت SD (در صورت استفاده از مدل Raspberry Pi B+) ، به یک نویسنده تصویر نیاز خواهید داشت. بنابراین "win32 disk imager" را از اینجا بارگیری کنید.

نوشتن تصویر

کارت SD را در لپ تاپ/رایانه قرار دهید و تصویر نویس را اجرا کنید. پس از باز شدن ، فایل بارگیری شده Raspbian را مرور کرده و انتخاب کنید. دستگاه صحیح را انتخاب کنید ، درایو نشان دهنده کارت SD است. اگر درایو (یا دستگاه) انتخاب شده با کارت SD متفاوت باشد ، درایو انتخابی دیگر خراب می شود. خیلی مراقب باش.

پس از آن ، روی دکمه "نوشتن" در پایین کلیک کنید. به عنوان مثال ، تصویر زیر را ببینید ، جایی که درایو کارت SD (یا micro SD) با حرف "G: \" نشان داده شده است

پس از اتمام نوشتن ، کارت SD را خارج کرده و آن را در رزبری پای وارد کرده و روشن کنید. باید شروع بوت کنه

راه اندازی Pi

لطفاً به خاطر داشته باشید که پس از بوت شدن Pi ، ممکن است شرایطی پیش بیاید که اعتبار کاربر مانند "نام کاربری" و رمز عبور درخواست شود. Raspberry Pi دارای نام کاربری و رمز عبور پیش فرض است و بنابراین همیشه از آن در هر زمان که درخواست می شود استفاده کنید. مدارک تحصیلی عبارتند از:

ورود: pi

رمز عبور: تمشک

هنگامی که Pi برای اولین بار بوت شد ، یک صفحه پیکربندی به نام "Setup Options" ظاهر می شود و مانند تصویر زیر به نظر می رسد.

اگر صفحه "Setup Options" را از دست داده اید ، مشکلی نیست ، همیشه می توانید با تایپ کردن دستور زیر در ترمینال آن را دریافت کنید.

sudo raspi-config

پس از اجرای این دستور ، صفحه "Setup Options" مطابق تصویر بالا ظاهر می شود.

اکنون که پنجره Setup Options باز شده است ، باید چند مورد را تنظیم کنیم. پس از اتمام هر یک از مراحل زیر ، در صورت درخواست راه اندازی مجدد Pi ، لطفاً این کار را انجام دهید. پس از راه اندازی مجدد ، اگر صفحه "Setup Options" را دریافت نکردید ، دستور زیر را دنبال کنید تا صفحه/پنجره را دریافت کنید.

اولین کاری که باید انجام شود:

اولین گزینه را در لیست پنجره گزینه های راه اندازی انتخاب کنید ، یعنی گزینه را انتخاب کنید

گسترش سیستم فایل

گزینه را انتخاب کرده و کلید enter را فشار دهید. ما این کار را برای استفاده از تمام فضای موجود در کارت SD به عنوان یک پارتیشن کامل انجام می دهیم. تنها کاری که باید انجام دهید این است که سیستم عامل را گسترش دهید تا کل فضا را روی کارت SD قرار دهد که می تواند بعنوان حافظه ذخیره سازی Pi استفاده شود. دومین کاری که باید انجام شود:

سومین گزینه را در لیست پنجره گزینه های راه اندازی انتخاب کنید ، یعنی گزینه "Enable Boot To Desktop/Scratch" را انتخاب کرده و کلید ورود را فشار دهید. شما را به پنجره دیگری به نام پنجره "Choose boot option" می رساند که شبیه تصویر زیر است.

در "انتخاب پنجره گزینه بوت" ، گزینه دوم را انتخاب کنید ، یعنی "Desktop Log in as user 'pi' at the graphical desktop" و دکمه enter را فشار دهید. پس از انجام این کار ، به صفحه "تنظیمات گزینه ها" بازگردانده می شوید ، در غیر این صورت دکمه "OK" را در پایین این پنجره انتخاب کرده و به پنجره قبلی بازگردانده می شوید. ما این کار را انجام می دهیم زیرا می خواهیم در محیط دسکتاپ که با آن آشنا هستیم بوت کنیم. اگر این مرحله را انجام ندهیم ، رزبری پای هر بار بدون گزینه GUI به یک ترمینال راه اندازی می شود. پس از انجام هر دو مرحله ، دکمه "پایان" را در پایین صفحه انتخاب کنید و باید به طور خودکار راه اندازی مجدد شود. اگر اینطور نیست ، از دستور زیر در ترمینال برای راه اندازی مجدد استفاده کنید.

راه اندازی مجدد sudo

به روز رسانی سیستم عامل

پس از راه اندازی مجدد مرحله قبل ، اگر همه چیز درست پیش رفت ، در نهایت به دسکتاپ خواهید رسید که شبیه تصویر زیر است.

هنگامی که روی میز کار هستید ، یک ترمینال را باز کنید و دستور زیر را برای به روز رسانی سیستم عامل Pi وارد کنید.

sudo rpi-update

به روزرسانی سیستم عامل ضروری است زیرا برخی از مدل های Pi ممکن است تمام وابستگی های لازم را برای اجرای روان نداشته باشند یا ممکن است اشکالی داشته باشد. آخرین سیستم عامل ممکن است این اشکالات را برطرف کند ، بنابراین به روز رسانی آن در ابتدا بسیار مهم است.

در اینجا لینک ویدیو موجود است:

نصب و پیکربندی سیستم عامل Raspbian Jessie در Raspberry Pi (روی پیوند کلیک کنید)

مرحله 3: VNC را روی Raspberry Pi تنظیم کنید تا از راه دور کنترل شود

VNC را روی Raspberry Pi برای کنترل از راه دور تنظیم کنید
VNC را روی Raspberry Pi برای کنترل از راه دور تنظیم کنید

VNC (محاسبات شبکه مجازی)

گاهی اوقات کار مستقیم بر روی Raspberry Pi راحت نیست. شاید دوست دارید روی دستگاه دیگر با کنترل از راه دور کار کنید.

VNC یک سیستم اشتراک گذاری گرافیکی رومیزی است که به شما امکان می دهد رابط دسکتاپ یک کامپیوتر (در حال اجرا VNC Server) را از رایانه یا دستگاه تلفن همراه دیگر (در حال اجرا VNC Viewer) از راه دور کنترل کنید. VNC Viewer صفحه کلید و رویدادهای ماوس یا لمسی را به سرور VNC منتقل می کند و در عوض به روز رسانی های صفحه را دریافت می کند.

دسکتاپ رزبری پای را در پنجره ای در رایانه یا دستگاه تلفن همراه خود مشاهده خواهید کرد. شما می توانید آن را طوری کنترل کنید که انگار روی رزبری پای خود کار می کنید.

VNC Connect از RealVNC با Raspbian گنجانده شده است. این برنامه شامل هر دو سرور VNC است که به شما امکان می دهد رزبری پای خود را از راه دور کنترل کنید و VNC Viewer که به شما این امکان را می دهد تا در صورت تمایل رایانه های رومیزی را از طریق رزبری پای خود از راه دور کنترل کنید.

قبل از استفاده از VNC Server باید آن را فعال کنید: دستورالعمل های مربوط به این مورد در زیر آمده است. به طور پیش فرض ، سرور VNC به شما امکان دسترسی از راه دور به رومیزی گرافیکی را می دهد که روی رزبری پای شما اجرا می شود ، گویی در مقابل آن نشسته اید.

فعال کردن سرور VNC

در Raspberry Pi خود ، دستورات زیر را اجرا کنید تا مطمئن شوید آخرین نسخه VNC Connect را دارید:

sudo apt-get update

sudo apt-get realvnc-vnc-server realvnc-vnc-viewer را نصب کنید

حالا سرور VNC را فعال کنید. می توانید این کار را به صورت گرافیکی یا در خط فرمان انجام دهید.

سرور VNC را به صورت گرافیکی فعال کنید

در رزبری پای خود ، روی دسکتاپ گرافیکی بوت کنید.

Menu> Preferences> Raspberry Pi Configuration> Interfaces را انتخاب کنید.

اطمینان حاصل کنید که VNC فعال است. فعال کردن سرور VNC در خط فرمان

با استفاده از raspi-config می توانید سرور VNC را در خط فرمان فعال کنید:

sudo raspi-config

اکنون ، VNC Server را با انجام موارد زیر فعال کنید:

به گزینه Interfacing Options بروید

به پایین بروید و VNC> Yes را انتخاب کنید. اتصال به Raspberry Pi خود با VNC Viewer

دو راه برای اتصال به رزبری پای شما وجود دارد. بسته به آنچه برای شما مناسب است می توانید از هر دو یا هر دو استفاده کنید.

ایجاد ارتباط مستقیم

اتصالات مستقیم سریع و ساده هستند به شرطی که به همان شبکه محلی خصوصی رزبری پای خود ملحق شده باشید. به عنوان مثال ، این ممکن است یک شبکه سیمی یا بی سیم در خانه ، مدرسه یا دفتر باشد).

در Raspberry Pi خود (با استفاده از پنجره ترمینال یا از طریق SSH) از این دستورالعمل ها استفاده کنید یا ifconfig را برای کشف آدرس IP خصوصی خود اجرا کنید.

ifconfig

در دستگاهی که برای کنترل آن استفاده می کنید ، VNC Viewer را بارگیری کنید. برای بهترین نتایج ، از برنامه سازگار RealVNC استفاده کنید.

آدرس IP خصوصی رزبری پای خود را در VNC Viewer وارد کنید:

ایجاد ارتباط ابری

شما مجاز به استفاده از سرویس ابری RealVNC به صورت رایگان هستید ، مشروط بر اینکه دسترسی از راه دور فقط برای اهداف آموزشی یا غیر تجاری باشد.

اتصالات ابری راحت و رمزگذاری شده از انتها به انتها هستند. استفاده از آنها برای اتصال به رزبری پای از طریق اینترنت بسیار توصیه می شود. پیکربندی فایروال یا روتر وجود ندارد و نیازی نیست آدرس IP رزبری پای خود را بدانید یا یک آدرس ثابت ارائه دهید.

در اینجا برای یک حساب RealVNC ثبت نام کنید: رایگان است و فقط چند ثانیه طول می کشد.

در Raspberry Pi خود ، با استفاده از اعتبارنامه حساب جدید RealVNC خود ، وارد سرور VNC شوید:

در دستگاهی که برای کنترل آن استفاده می کنید ، VNC Viewer را بارگیری کنید. باید از برنامه سازگار با RealVNC استفاده کنید

با استفاده از همان اعتبار حساب RealVNC وارد VNC Viewer شوید و سپس برای اتصال به رزبری پای خود یا ضربه بزنید یا کلیک کنید:

احراز هویت به سرور VNC

برای تکمیل اتصال مستقیم یا ابری ، باید به سرور VNC احراز هویت کنید.

اگر از برنامه VNC Viewer سازگار با RealVNC در حال اتصال هستید ، نام کاربری و گذرواژه ای را که معمولاً برای ورود به حساب کاربری خود در Raspberry Pi استفاده می کنید وارد کنید. به طور پیش فرض ، این مدارک پی و تمشک هستند.

اگر از یک برنامه غیر RealVNC Viewer متصل می شوید ، ابتدا باید طرح احراز هویت VNC Server را کاهش دهید ، گذرواژه منحصر به سرور VNC را مشخص کرده و سپس آن را وارد کنید. برای انجام این کار ، گفتگوی سرور VNC را در Raspberry Pi خود باز کنید ،

منو> گزینه ها> امنیت را انتخاب کنید ،

و رمز عبور VNC را از Authentication انتخاب کنید.

برای روشن کردن این ویژگی:

در رزبری پای خود ، گفتگوی سرور VNC را باز کنید.

به منو> گزینه ها> عیب یابی بروید و فعال کردن حالت ضبط مستقیم آزمایشی را انتخاب کنید.

در دستگاهی که برای کنترل آن استفاده می کنید ، VNC Viewer را اجرا کرده و وصل شوید.

توجه: برای اعمال این تغییرات ، اتصالات موجود باید مجدداً راه اندازی شوند.

اگر به نظر می رسد عملکرد مختل شده است ، این مراحل عیب یابی را امتحان کنید ، یا به RealVNC اطلاع دهید.

ایجاد دسکتاپ مجازی

اگر رزبری پای شما بدون سر است (یعنی به مانیتور وصل نیست) یا ربات را کنترل نمی کند ، بعید است که از یک دسکتاپ گرافیکی استفاده کنید.

سرور VNC می تواند یک میز کار مجازی برای شما ایجاد کند و در صورت نیاز به شما دسترسی گرافیکی از راه دور را بدهد. این رومیزی مجازی فقط در حافظه رزبری پای شما وجود دارد:

برای ایجاد و اتصال به یک دسکتاپ مجازی:

در رزبری پای خود (با استفاده از ترمینال یا از طریق SSH) ، سرور vnc را اجرا کنید. آدرس IP/شماره نمایشگر که سرور VNC در ترمینال شما چاپ می کند را یادداشت کنید (به عنوان مثال 192.167. **. **).

در دستگاهی که برای کنترل آن استفاده می کنید ، این اطلاعات را در VNC Viewer وارد کنید. برای از بین بردن دسکتاپ مجازی ، دستور زیر را اجرا کنید:

vncserver -kill:

با این کار هرگونه اتصال موجود به این دسکتاپ مجازی نیز متوقف می شود.

مرحله 4: پیکربندی دوربین

پیکربندی دوربین
پیکربندی دوربین

راه اندازی سخت افزار دوربین

هشدار: دوربین ها به استاتیک حساس هستند. قبل از دست زدن به PCB خودتان را زمین کنید. اگر بند زمینی ندارید ، شیر آب ظرفشویی یا موارد مشابه کافی است.

برد دوربین از طریق کابل روبان 15 جهت به رزبری پای متصل می شود. فقط دو اتصال وجود دارد: کابل روبان باید به PCB دوربین و به خود رزبری پای متصل شود. شما باید کابل را به درستی دریافت کنید وگرنه دوربین کار نمی کند. در PCB دوربین ، پشت آبی روی کابل باید از PCB دور باشد و در Raspberry Pi باید به سمت اتصال اترنت (یا اگر از مدل A استفاده می کنید کانکتور اترنت کجا باشد).

اگرچه اتصالات روی PCB و Pi متفاوت هستند ، اما آنها به روشی مشابه کار می کنند. در خود رزبری پای ، زبانه های هر انتهای کانکتور را به سمت بالا بکشید. باید به راحتی به سمت بالا بلغزد و بتواند کمی دور خود بچرخد. کابل روبان را به طور کامل در شکاف قرار دهید ، مطمئن شوید که مستقیماً تنظیم شده است ، سپس زبانه ها را به آرامی به سمت پایین فشار دهید تا در جای خود محکم شود. اتصال PCB دوربین همچنین از شما می خواهد که زبانه ها را از روی برد جدا کرده ، کابل را به آرامی وارد کرده و سپس زبانه ها را به عقب فشار دهید. اتصال PCB می تواند کمی ناخوشایندتر از اتصال روی Pi باشد.

راه اندازی نرم افزار دوربین

دستورالعمل های زیر را در خط فرمان برای بارگیری و نصب جدیدترین هسته ، سیستم عامل GPU و برنامه ها اجرا کنید. برای اینکه این کار به درستی انجام شود ، به اتصال به اینترنت نیاز دارید.

sudo apt-get update

sudo apt-get upgrade

اکنون باید پشتیبانی دوربین را با استفاده از

raspi-config

برنامه ای که هنگام اولین راه اندازی رزبری پای خود استفاده کرده اید.

sudo raspi-config

برای حرکت به گزینه دوربین از کلیدهای مکان نما استفاده کرده و "فعال کردن" را انتخاب کنید. هنگام خروج از raspi-config ، درخواست راه اندازی مجدد می شود. گزینه فعال سازی اطمینان می دهد که هنگام راه اندازی مجدد سیستم عامل GPU صحیح با درایور دوربین تنظیم و تنظیم می شود و تقسیم حافظه GPU کافی است تا به دوربین اجازه دهد حافظه کافی برای عملکرد صحیح را بدست آورد.

اگر فعال نیست ، آن را فعال کنید و Pi خود را مجدداً راه اندازی کنید تا شروع شود

برای آزمایش نصب و کارکرد سیستم ، دستور زیر را امتحان کنید:

raspistill -v -o test.jpg

صفحه نمایش باید یک پیش نمایش پنج ثانیه ای از دوربین را نشان دهد و سپس یک عکس را در فایل test-j.webp

RASPIVID

Raspivid ابزار خط فرمان برای فیلمبرداری با ماژول دوربین است.

با اتصال و فعال کردن ماژول دوربین ، با استفاده از دستور زیر یک فیلم ضبط کنید:

264

به یاد داشته باشید که استفاده کنید

-hf

و

-vf

در صورت لزوم تصویر را لغو کنید ، مانند با

raspistill

با این کار یک فایل ویدیویی 5 ثانیه ای در مسیری که در اینجا به عنوان vid.h264 (مدت زمان پیش فرض) ذخیره شده است ذخیره می شود.

طول ویدئو را مشخص کنید

برای تعیین طول فیلم گرفته شده ، پرچم -t را با چند میلی ثانیه ارسال کنید. مثلا:

raspivid -o video.h264 -t 10000

با این کار 10 ثانیه فیلم ضبط می شود.

فرمت ویدئویی MP4

Pi فیلم را به عنوان یک جریان ویدئویی خام H264 ضبط می کند. بسیاری از پخش کننده های رسانه ای از پخش آن خودداری می کنند یا آن را با سرعت نادرست پخش می کنند ، مگر اینکه در قالب ظرف مناسب مانند MP4 "پیچیده" شود. ساده ترین راه برای به دست آوردن فایل MP4 از

خشمگین

دستور از MP4Box استفاده می کند.

MP4Box را با این دستور نصب کنید:

sudo apt -get install -y gpac

ویدئوی خام خود را با raspivid ضبط کرده و در یک محفظه MP4 مانند این بپیچید:

# ضبط 30 ثانیه فیلم خام با نرخ 640x480 و نرخ بیت 150kB/s در فایل pivideo.h264:

raspivid -t 30000 -w 640 -h 480 -fps 25 -b 1200000 -p 0، 0، 640، 480 -o pivideo.h264 # فیلم خام را با ظرف MP4 MP4Box بپیچید -افزودن pivideo.h264 pivideo.mp4 # حذف منبع فایل خام ، باقی مانده فایل pivideo.mp4 برای پخش rm pivideo.h264

متناوباً ، MP4 را در اطراف خروجی شفاف موجود خود قرار دهید ، مانند این:

MP4Box -افزودن ویدئو. h264 video.mp4

مرحله 5: نصب و پیکربندی

این دستورالعمل ها را تنها در صورتی دنبال کنید که می خواهید نرم افزار خود را از ابتدا کامپایل کنید. این مراحل زیر به عنوان همان موفقیت در نصب Raspberry pi شما ضروری و توصیه می شود.

نصب وابستگی ها

نصب Sphinxbase/Pocketsphinx

ابتدا باید Pocketsphinx را نصب کنید. اگر از دبیان سید (ناپایدار) یا جسی (آزمایش) استفاده می کنید ، فقط می توانید موارد زیر را انجام دهید:

sudo apt-get update

sudo apt-get install pocketsphinx

با نصب برخی از وابستگی ها شروع کنید:

sudo apt-get install subversion autoconf libtool automake gfortran g ++-بله

بعد ، برای بررسی و نصب CMUCLMTK به فهرست اصلی (یا Jasper) خود بروید:

svn co

سی دی cmuclmtk/

./autogen.sh && make && sudo make install

سی دی..

سپس ، هنگامی که از فهرست CMUCLTK خارج شدید ، کتابخانه های زیر را بارگیری کنید:

نصب Phonetisaurus ، m2m-aligner و MITLM

برای استفاده از موتور Pocketsphinx STT ، شما همچنین باید MIT Language Modeling Toolkit ، m2m-aligner و Phonetisaurus (و در نتیجه OpenFST) را نصب کنید.

اگر از Debian استفاده نمی کنید ، این مراحل را انجام دهید:

#اصلی:

# wget

#-جدید:

wget

wget

wget

wget

حذف بارگیری ها:

tar -xvf m2m-aligner-1.2.tar.gz

tar -xvf openfst -1.3.4.tar.gz

tar -xvf is2013 -conversion.tgz

tar -xvf mitlm -0.4.1.tar.gz

ساخت OpenFST:

سی دی openfst-1.3.4/

sudo./configure --enable-compact-fsts --enable-const-fsts --enable-far --enable-lookahead-fsts --enable-pdt

time sudo make install # بازگشت بعد از مدتها واقعا طولانی است

سی دی..

66m38.394s واقعی

کاربر 64m42.620s

sys 1m2.150s

df -h /

اندازه فایل سیستم مورد استفاده استفاده از٪٪ نصب شده بر /dev /root 14G 4.4G 8.3G 35٪ /

ساخت M2M:

cd m2m-aligner-1.2/

sudo make

سی دی..

ساخت MITLMT:

cd mitlm-0.4.1/

sudo./ پیکربندی کنید

sudo make install

سی دی..

ساخت Phonetisaurus:

cd is2013-conversion/phonetisaurus/src

sudo make

سی دی

انتقال برخی از فایل های کامپایل شده:

sudo cp ~/m2m-aligner-1.2/m2m-aligner/usr/local/bin/m2m-aligner

#اصلی:

# sudo cp ~/phonetisaurus-0.7.8/phonetisaurus-g2p/usr/local/bin/phonetisaurus-g2p

#باید باشد:

sudo cp ~/is2013-conversion/bin/phonetisaurus-g2p/usr/local/bin/phonetisaurus-g2p

به مسیر تغییر یافته اجرایی توجه کنید.

مدل FST Phonetisaurus را تهیه و بسازید

wget

tar -xvf g014b2b.tgz

سی دی g014b2b/

./compile-fst.sh

سی دی..

در نهایت ، نام پوشه زیر را برای راحتی تغییر دهید:

mv ~/g014b2b ~/phonetisaurus

پس از اتمام نصب ، Pi خود را مجدداً راه اندازی کنید.

پیروی از دستورالعمل های

همچنین فایل (جدید) `/etc/modprobe.d/alsa-base.conf` را با این محتوا اضافه کردم:

# این مقدار شاخص کارت ها را تنظیم می کند اما تغییر ترتیب نمی دهد.

گزینه های snd_usb_audio index = 0

options snd_bcm2835 index = 1

# تغییر ترتیب می دهد.

options snd slots = snd_usb_audio ، snd_bcm2835

برای اطمینان از نظم مناسب دستگاه های صوتی (هر چند مطمئن نیستید که این مورد واقعاً مورد نیاز است)

نصب انجام شد - برخی اشکالات بعدی…

تلاش برای شروع یاس:

pi@AVIV: ~ $./jasper/jasper.py

ردیابی (آخرین تماس اخیر):

فایل "./jasper/jasper.py" ، خط 12 ، از وارد کننده سرویس گیرنده tts ، stt ، jasperpath ، تشخیص پرونده "/home/pi/jasper/client/tts.py" ، خط 41 ، در تشخیص فایل تشخیص "/ home/pi/jasper/client/diagnose.py "، خط 9 ، در فایل pip.req import" /usr/lib/python2.7/dist-packages/pip/_init_.py "، خط 74 ، در از pip. vcs import git، mercurial، subversion، bazaarar # noqa file "/usr/lib/python2.7/dist-packages/pip/vcs/mercurial.py" ، خط 9 ، از pip.download path_to_url file "/usr/ lib/python2.7/dist-packages/pip/download.py "، خط 25 ، از request.compat import IncompleteRead ImportError: نمی توان نام IncompleteRead را وارد کرد

برطرف شده با:

sudo easy_install -U pip

شماره بعدی:

pi@AVIV: ~ $./jasper/jasper.py

*******************************************************

*JASPER - THE TALKING COMPUTER**(ج) 2015 Shubhro Saha ، Charlie Marsh و Jan Holthuis**************************** ************************* ERROR: root: خطا روی داد! ردیابی (آخرین تماس آخرین): پرونده "./jasper/jasper.py" ، خط 143 ، در برنامه = Jasper () File "./jasper/jasper.py" ، خط 88 ، در _init_ stt_engine_class = stt.get_engine_by_slug (stt_engine_slug) فایل "/home/pi/jasper/client/stt.py" ، خط 648 ، در get_engine_by_slug "وابستگی ها و غیره)")٪ slug)

ValueError: موتور STT 'sphinx' در دسترس نیست (به دلیل از دست دادن وابستگی ها ، وابستگی های از دست رفته و غیره)

تلاش کردن

sudo apt-get install -y python-pocketsphinx

مسیر "../ phonetisaurus/g014b2b.fst" را به عنوان "/home/pi/phonetisaurus/g014b2b.fst" در عوض (در `.jasper/profile.yml`) ثابت کنید

pi@AVIV: ~ $./jasper/jasper.py

*******************************************************

*JASPER - THE TALKING COMPUTER**(ج) 2015 Shubhro Saha ، Charlie Marsh و Jan Holthuis**************************** ************************* ERROR: client.stt: hmm_dir '/usr/local/share/pocketsphinx/model/hmm/en_US/hub4wsj_sc_8k ' وجود ندارد! لطفاً مطمئن شوید که hmm_dir صحیح را در نمایه خود تنظیم کرده اید.

مسیر این مورد را در `profile.yml` نیز ثابت یا فعال کنید:

hmm_dir: '/usr/share/pocketsphinx/model/hmm/fa_US/hub4wsj_sc_8k' #اختیاری

(به عدم وجود "محلی" در مسیر توجه کنید)

موفقیت نسبی -:

pi@AVIV: ~ $./jasper/jasper.py

*******************************************************

*JASPER - THE TALKING COMPUTER**(ج) 2015 Shubhro Saha ، Charlie Marsh و Jan Holthuis**************************** ************************** ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) کارتهای PCM ناشناخته. pcm. عقب ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) کارتهای PCM ناشناخته. pcm.center_lfe ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) کارتهای PCM ناشناخته. pcm.side ALSA lib pcm.c: 2239: (snd_pcm_open_cmen_noupdate) pcm.c: 2239: (snd_pcm_open_noupdate) کارتهای PCM ناشناخته. pcm.hdmi ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) کارتهای PCM ناشناخته. pcm.modem ALSA lib pcm.c: 2239: (snd_pcm_opmdpp modem: اتصال امکان پذیر نیست: اتصال ALSA lib pulse را رد کرد. c: 243: (pulse_connect) PulseAudio: اتصال امکان پذیر نیست: اتصال رد شد امکان اتصال به سرویس وجود ندارد r socket err = هیچ فایل یا فهرست موردی نمی تواند متصل به درخواست سرور باشد سرور جک اجرا نمی شود یا نمی توان آن را راه اندازی کرد -> capture، inParams، self-> primeBuffers، hwParamsCapture، & realSr) 'src/hostapi/alsa/pa_linux_alsa.c' ، خط: 2719 Expression 'PaAlsaStream_Configure (stream، inputParameters، outputParameter، نمونه سرعت ، & hostBufferSizeMode) 'در' src/hostapi/alsa/pa_linux_alsa.c 'خطا کرد ، خط: 2843 Traceback (آخرین تماس اخیر): فایل "./jasper/jasper.py" ، خط 148 ، در app.run () فایل "./jasper/jasper.py" ، سطر 118 ، در اجرای convers.handleForever () فایل "/home/pi/jasper/client/conversation.py" ، خط 31 ، در آستانه handleForever ، رونویسی شده = self.mic.passiveListen (self.persona) فایل "/home/pi/jasper/client/mic.py" ، خط 110 ، در فرمت های PassiveListen_per_buffer = CHUNK) فایل "/usr/lib/python2.7/dist-packages/pyaudio.py" ، خط 747 ، در جریان آزاد = جریان (خود ، *args ، ** kwargs) فایل "/usr/lib/python2.7/dist -packages/pyaudio.py "، خط 442 ، در _init_ self._stream = pa.open (** استدلال) IO خطا: [نرخ نمونه نامعتبر Errno] -9997

خوب ، تصحیح RATE و CHUNK مانند این بیشتر به نظر می رسد:

diff --git a/client/mic.py b/client/mic.py

index 401cddb..dee49fe 100644

--- a/client/mic.py

+++ b/client/mic.py

-93 ، 8 +93 ، 8کلاس میکروفون:

"""

THRESHOLD_MULTIPLIER = 1.8

- نرخ = 16000

- CHUNK = 1024

+ نرخ = 44100 # 16000

+ CHUNK = 4096 # 1024

# تعداد ثانیه برای تعیین آستانه

THRESHOLD_TIME = 1

مرحله 6: خروجی تصاویر

توصیه شده: