เด“เดชเตเดชเตบเดตเดฟเดจเต‹ เดนเดพเด•เตเด•เดคเตเดคเต‹เตบ: เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆเดฏเดฟเดฒเต† เดถเดฌเตเดฆเดตเตเด‚ เดตเดฟเด•เดพเดฐเด™เตเด™เดณเตเด‚ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเต

เดจเดตเด‚เดฌเตผ 30 - เดกเดฟเดธเด‚เดฌเตผ 1 เดจเดฟเดธเตเดจเดฟ เดจเต‹เดตเตเด—เตŠเดฑเต‹เดกเดฟเตฝ เดจเดŸเดจเตเดจเต เด“เดชเตเดชเตบเดตเดฟเดจเต‹ เดนเดพเด•เตเด•เดคเตเดคเต‹เตบ. Intel OpenVINO เดŸเต‚เตพเด•เดฟเดฑเตเดฑเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด’เดฐเต เด‰เตฝเดชเตเดชเดจเตเดจ เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเดจเตเดฑเต† เด’เดฐเต เดชเตเดฐเต‹เดŸเตเดŸเต‹เดŸเตˆเดชเตเดชเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เดชเด™เตเด•เดพเดณเดฟเด•เดณเต‹เดŸเต เด†เดตเดถเตเดฏเดชเตเดชเต†เดŸเตเดŸเต. เด’เดฐเต เดŸเดพเดธเตโ€Œเด•เต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ เดจเดฏเดฟเด•เตเด•เดพเดตเตเดจเตเดจ เดเด•เดฆเต‡เดถ เดตเดฟเดทเดฏเด™เตเด™เดณเตเดŸเต† เด’เดฐเต เดฒเดฟเดธเตเดฑเตเดฑเต เดธเด‚เด˜เดพเดŸเด•เตผ เดจเดฟเตผเดฆเตเดฆเต‡เดถเดฟเดšเตเดšเต, เดชเด•เตเดทเต‡ เด…เดจเตเดคเดฟเดฎ เดคเต€เดฐเตเดฎเดพเดจเด‚ เดŸเต€เดฎเตเด•เดณเตเดŸเต‡เดคเดพเดฏเดฟเดฐเตเดจเตเดจเต. เด•เต‚เดŸเดพเดคเต†, เด‰เตฝเดชเตเดชเดจเตเดจเดคเตเดคเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดพเดคเตเดค เดฎเต‹เดกเดฒเตเด•เดณเตเดŸเต† เด‰เดชเดฏเต‹เด—เด‚ เดชเตเดฐเต‹เดคเตเดธเดพเดนเดฟเดชเตเดชเดฟเดšเตเดšเต.

เด“เดชเตเดชเตบเดตเดฟเดจเต‹ เดนเดพเด•เตเด•เดคเตเดคเต‹เตบ: เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆเดฏเดฟเดฒเต† เดถเดฌเตเดฆเดตเตเด‚ เดตเดฟเด•เดพเดฐเด™เตเด™เดณเตเด‚ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเต

เดˆ เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ เดžเด™เตเด™เตพ เด‰เตฝเดชเตเดชเดจเตเดจเดคเตเดคเดฟเดจเตเดฑเต† เดชเตเดฐเต‹เดŸเตเดŸเต‹เดŸเตˆเดชเตเดชเต เดŽเด™เตเด™เดจเต† เดธเตƒเดทเตเดŸเดฟเดšเตเดšเต เดŽเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดจเดฟเด™เตเด™เดณเต‹เดŸเต เดชเดฑเดฏเตเด‚, เด…เดคเดฟเดฒเต‚เดŸเต† เดžเด™เตเด™เตพ เด’เดŸเตเดตเดฟเตฝ เด’เดจเตเดจเดพเด‚ เดธเตเดฅเดพเดจเด‚ เดจเต‡เดŸเดฟ.

เดชเดคเตเดคเดฟเดฒเดงเดฟเด•เด‚ เดŸเต€เดฎเตเด•เตพ เดนเดพเด•เตเด•เดคเตเดคเดฃเดฟเตฝ เดชเด™เตเด•เต†เดŸเตเดคเตเดคเต. เด…เดตเดฐเดฟเตฝ เดšเดฟเดฒเตผ เดฎเดฑเตเดฑเต เดชเตเดฐเดฆเต‡เดถเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเดจเตเดจเดตเดฐเดพเดฃเต†เดจเตเดจเดคเต เดธเดจเตเดคเต‹เดทเด•เดฐเดฎเดพเดฃเต. "เด•เตเดฐเต†เด‚เดฒเดฟเตปเดธเตเด•เดฟ เด“เตบ เดชเต‹เดšเตเดšเต†เดฏเดฟเตป" เดธเดฎเตเดšเตเดšเดฏเดฎเดพเดฏเดฟเดฐเตเดจเตเดจเต เดนเดพเด•เตเด•เดคเตเดคเต‹เดฃเดฟเดจเตเดฑเต† เดตเต‡เดฆเดฟ, เด…เดตเดฟเดŸเต† เดจเดฟเดธเตเดจเดฟ เดจเต‹เดตเตเด—เตŠเดฑเต‹เดกเดฟเดจเตเดฑเต† เดชเตเดฐเดพเดคเดจ เดซเต‹เดŸเตเดŸเต‹เด—เตเดฐเดพเดซเตเด•เตพ เด’เดฐเต เดชเดฐเดฟเดตเดพเดฐเดคเตเดคเดฟเตฝ เดคเต‚เด•เตเด•เดฟเดฏเดฟเดŸเตเดŸเดฟเดฐเตเดจเตเดจเต! (เด‡เดชเตเดชเต‹เตพ เด‡เดจเตเดฑเดฒเดฟเดจเตเดฑเต† เดธเต†เตปเดŸเตเดฐเตฝ เด“เดซเต€เดธเต เดจเดฟเดธเตเดจเดฟ เดจเต‹เดตเตเด—เตŠเดฑเต‹เดกเดฟเดฒเดพเดฃเต เดธเตเดฅเดฟเดคเดฟ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต†เดจเตเดจเต เดžเดพเตป เดจเดฟเด™เตเด™เดณเต† เด“เตผเดฎเตเดฎเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต). เดชเด™เตเด•เต†เดŸเตเด•เตเด•เตเดจเตเดจเดตเตผเด•เตเด•เต เด•เต‹เดกเต เดŽเดดเตเดคเดพเตป 10 เดฎเดฃเดฟเด•เตเด•เต‚เตผ เดธเดฎเดฏเด‚ เดจเตฝเด•เดฟ, เด…เดตเดธเดพเดจเด‚ เด…เดตเตผ เด…เดตเดฐเตเดŸเต† เดชเดฐเดฟเดนเดพเดฐเด‚ เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด†เดธเต‚เดคเตเดฐเดฃเด‚ เดšเต†เดฏเตเดคเดคเต†เดฒเตเดฒเดพเด‚ เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เดจเตเดจเตเด‚ เด…เดตเดคเดฐเดฃเดคเตเดคเดฟเตฝ เด†เดถเดฏเด™เตเด™เตพ เดจเดฟเดฒเดจเดฟเตฝเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒเต†เดจเตเดจเตเด‚ เด‰เดฑเดชเตเดชเดพเด•เตเด•เดพเตป เด’เดฐเต เดกเต†เดฎเต‹ เดธเต†เดทเดจเตเดฑเต† เดธเดพเดจเตเดจเดฟเดงเตเดฏเดฎเดพเดฏเดฟเดฐเตเดจเตเดจเต เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดจเต‡เดŸเตเดŸเด‚. เด•เดšเตเดšเดตเดŸเด‚, เดฒเด˜เตเดญเด•เตเดทเดฃเด‚, เดญเด•เตเดทเดฃเด‚, เดŽเดฒเตเดฒเดพเด‚ เด…เดตเดฟเดŸเต†เดฏเตเด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเต!

เด•เต‚เดŸเดพเดคเต†, เด‡เดจเตเดฑเตฝ เด“เดชเตเดทเดฃเดฒเดพเดฏเดฟ เด•เตเดฏเดพเดฎเดฑเด•เตพ, เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเดฟเด, เดจเตเดฏเต‚เดฑเตฝ เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเต เดธเตเดฑเตเดฑเดฟเด•เตเด•เต 2 เดŽเดจเตเดจเดฟเดต เดจเตฝเด•เดฟ.

เดŸเดพเดธเตเด•เต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตฝ

เด’เดฐเต เดซเตเดฐเต€-เดซเต‹เด‚ เดนเดพเด•เตเด•เดคเตเดคเดฃเดฟเดจเดพเดฏเดฟ เดคเดฏเตเดฏเดพเดฑเต†เดŸเตเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดฑเต† เดเดฑเตเดฑเดตเตเด‚ เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเตเดณเตเดณ เดญเดพเด—เด™เตเด™เดณเดฟเดฒเตŠเดจเตเดจเต เด’เดฐเต เดตเต†เดฒเตเดฒเตเดตเดฟเดณเดฟ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจเดคเดพเดฃเต. เด‡เดคเต เดตเดณเดฐเต† เดธเตเดตเดพเด—เดคเดพเตผเดนเดฎเดพเดฃเต†เดจเตเดจเต เด…เดฑเดฟเดฏเดฟเดชเตเดชเต เดชเดฑเดžเตเดžเดคเดฟเดจเดพเตฝ, เด‰เตฝเดชเตเดชเดจเตเดจเดคเตเดคเดฟเตฝ เด‡เดคเตเดตเดฐเต† เด‡เดฒเตเดฒเดพเดคเตเดค เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เด•เตŠเดฃเตเดŸเตเดตเดฐเดพเตป เดžเด™เตเด™เตพ เด‰เดŸเตป เดคเต€เดฐเตเดฎเดพเดจเดฟเดšเตเดšเต.

เดตเดฟเดถเด•เดฒเดจเด‚ เดšเต†เดฏเตเดคเต เดฎเต‹เดกเดฒเตเด•เตพ, เดจเดฟเดฒเดตเดฟเดฒเต† เดชเดคเดฟเดชเตเดชเดฟเตฝ เด‰เตฝเดชเตเดชเดจเตเดจเดคเตเดคเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดต, เด…เดตเดฏเดฟเตฝ เดฎเดฟเด•เตเด•เดคเตเด‚ เดตเดฟเดตเดฟเดง เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเตผ เดฆเตผเดถเดจ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดŽเดจเตเดจ เดจเดฟเด—เดฎเดจเดคเตเดคเดฟเตฝ เดžเด™เตเด™เตพ เดŽเดคเตเดคเดฟเดšเตเดšเต‡เดฐเตเดจเตเดจเต. เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, OpenVINO เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเดจเดพเด•เดพเดคเตเดค เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเตผ เดฆเตผเดถเดจ เดฎเต‡เด–เดฒเดฏเดฟเตฝ เด’เดฐเต เดชเตเดฐเดถเตเดจเด‚ เด•เตŠเดฃเตเดŸเตเดตเดฐเตเดจเตเดจเดคเต เดตเดณเดฐเต† เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเดพเดฃเต, เด•เต‚เดŸเดพเดคเต† เด’เดจเตเดจเต เด•เดฃเตเดŸเตเดชเดฟเดŸเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดฎเต†เด™เตเด•เดฟเดฒเตเด‚, เดชเตŠเดคเตเดธเดžเตเดšเดฏเดคเตเดคเดฟเตฝ เดฎเตเตปเด•เต‚เดŸเตเดŸเดฟ เดชเดฐเดฟเดถเต€เดฒเดฟเดชเตเดชเดฟเดšเตเดš เดฎเต‹เดกเดฒเตเด•เตพ เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเดคเต เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเดพเดฃเต. เดžเด™เตเด™เตพ เดฎเดฑเตเดฑเตŠเดฐเต เดฆเดฟเดถเดฏเดฟเดฒเต‡เด•เตเด•เต เด•เตเดดเดฟเด•เตเด•เดพเตป เดคเต€เดฐเตเดฎเดพเดจเดฟเด•เตเด•เตเดจเตเดจเต - เดธเด‚เดญเดพเดทเดฃ เดชเตเดฐเต‹เดธเดธเตเดธเดฟเด‚เด—เดฟเดฒเต‡เด•เตเด•เตเด‚ เดตเดฟเดถเด•เดฒเดจเดคเตเดคเดฟเดฒเต‡เด•เตเด•เตเด‚. เดธเด‚เดธเดพเดฐเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเดฟเด•เดพเดฐเด™เตเด™เตพ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฐเดธเด•เดฐเดฎเดพเดฏ เด’เดฐเต เดœเต‹เดฒเดฟ เดจเดฎเตเด•เตเด•เต เดชเดฐเดฟเด—เดฃเดฟเด•เตเด•เดพเด‚. เด’เดฐเต เดตเตเดฏเด•เตเดคเดฟเดฏเตเดŸเต† เดฎเตเด–เดคเตเดคเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เด…เดตเดจเตเดฑเต† เดตเดฟเด•เดพเดฐเด™เตเด™เตพ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดฎเต‹เดกเตฝ OpenVINO เดจเต เด‡เดคเดฟเดจเด•เด‚ เด‰เดฃเตเดŸเต†เดจเตเดจเต เดชเดฑเดฏเดฃเด‚, เดชเด•เตเดทเต‡:

  • เดธเดฟเดฆเตเดงเดพเดจเตเดคเดคเตเดคเดฟเตฝ, เดถเดฌเตเดฆเดคเตเดคเดฟเดฒเตเด‚ เดšเดฟเดคเตเดฐเดคเตเดคเดฟเดฒเตเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดธเด‚เดฏเต‹เดœเดฟเดค เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚, เด…เดคเต เด•เตƒเดคเตเดฏเดค เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด‚.
  • เด•เตเดฏเดพเดฎเดฑเด•เตพเด•เตเด•เต เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ เด‡เดŸเตเด™เตเด™เดฟเดฏ เดตเตเดฏเต‚เดตเดฟเด‚เด—เต เด†เด‚เด—เดฟเตพ เด‰เดฃเตเดŸเต; เด’เดฐเต เดตเดฒเดฟเดฏ เดชเตเดฐเดฆเต‡เดถเด‚ เดฎเดฑเดฏเตเด•เตเด•เดพเตป เด’เดจเตเดจเดฟเดฒเดงเดฟเด•เด‚ เด•เตเดฏเดพเดฎเดฑเด•เตพ เด†เดตเดถเตเดฏเดฎเดพเดฃเต; เดถเดฌเตเดฆเดคเตเดคเดฟเดจเต เด…เดคเตเดคเดฐเด‚ เดชเดฐเดฟเดฎเดฟเดคเดฟเด•เดณเดฟเดฒเตเดฒ.

เดจเดฎเตเด•เตเด•เต เด†เดถเดฏเด‚ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เดพเด‚: เดฑเต€เดŸเตเดŸเต†เดฏเดฟเตฝ เดตเดฟเดญเดพเด—เดคเตเดคเดฟเดจเดพเดฏเตเดณเตเดณ เด†เดถเดฏเด‚ เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเดฏเดฟ เดŽเดŸเตเด•เตเด•เดพเด‚. เดธเตเดฑเตเดฑเต‹เตผ เดšเต†เด•เตเด•เตเด”เดŸเตเดŸเตเด•เดณเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‰เดชเดญเต‹เด•เตเดคเตƒ เดธเด‚เดคเตƒเดชเตเดคเดฟ เด…เดณเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. เด•เดธเตเดฑเตเดฑเดฎเตผเดฎเดพเดฐเดฟเตฝ เด’เดฐเดพเตพ เดธเต‡เดตเดจเดคเตเดคเดฟเตฝ เด…เดคเตƒเดชเตเดคเดจเดพเด•เตเด•เดฏเตเด‚ เด…เดตเดฐเตเดŸเต† เดŸเต‹เตบ เด‰เดฏเตผเดคเตเดคเดพเตป เดคเตเดŸเด™เตเด™เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดคเดพเตฝ, เดธเดนเดพเดฏเดคเตเดคเดฟเดจเดพเดฏเดฟ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‰เดŸเตป เด…เดกเตเดฎเดฟเดจเดฟเดธเตเดŸเตเดฐเต‡เดฑเตเดฑเดฑเต† เดตเดฟเดณเดฟเด•เตเด•เดพเด‚.
เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดžเด™เตเด™เตพ เดฎเดจเตเดทเตเดฏ เดถเดฌเตโ€Œเดฆ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตฝ เดšเต‡เตผเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เด‡เดคเต เดธเตเดฑเตเดฑเต‹เตผ เดœเต€เดตเดจเด•เตเด•เดพเดฐเต† เด‰เดชเดญเต‹เด•เตเดคเดพเด•เตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเต‡เตผเดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเดพเดจเตเด‚ เด“เดฐเต‹ เดตเตเดฏเด•เตเดคเดฟเด•เตเด•เตเด‚ เด…เดจเดฒเดฟเดฑเตเดฑเดฟเด•เตโ€Œเดธเต เดจเตฝเด•เดพเดจเตเด‚ เดžเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด‚. เดถเดฐเดฟ, เด•เต‚เดŸเดพเดคเต†, เดธเตเดฑเตเดฑเต‹เตผ เดœเต€เดตเดจเด•เตเด•เดพเดฐเตเดŸเต† เดชเต†เดฐเตเดฎเดพเดฑเตเดฑเด‚ เดธเตเดตเดฏเด‚ เดตเดฟเดถเด•เดฒเดจเด‚ เดšเต†เดฏเตเดฏเดพเดจเตเด‚ เดŸเต€เดฎเดฟเดฒเต† เด…เดจเตเดคเดฐเต€เด•เตเดทเด‚ เดตเดฟเดฒเดฏเดฟเดฐเตเดคเตเดคเดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚, เดจเดจเตเดจเดพเดฏเดฟ เดคเต‹เดจเตเดจเตเดจเตเดจเต!

เดžเด™เตเด™เดณเตเดŸเต† เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเดจเตเดณเตเดณ เด†เดตเดถเตเดฏเด•เดคเด•เตพ เดžเด™เตเด™เตพ เดฐเต‚เดชเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเต:

  • เดŸเดพเตผเด—เต†เดฑเตเดฑเต เด‰เดชเด•เดฐเดฃเดคเตเดคเดฟเดจเตเดฑเต† เดšเต†เดฑเดฟเดฏ เดตเดฒเดฟเดชเตเดชเด‚
  • เดคเดคเตเดธเดฎเดฏ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚
  • เด•เตเดฑเดžเตเดž เดตเดฟเดฒ
  • เดŽเดณเตเดชเตเดชเดฎเตเดณเตเดณ เดธเตเด•เต‡เดฒเดฌเดฟเดณเดฟเดฑเตเดฑเดฟ

เดคเตฝเดซเดฒเดฎเดพเดฏเดฟ, เดŸเดพเตผเด—เต†เดฑเตเดฑเต เด‰เดชเด•เดฐเดฃเดฎเดพเดฏเดฟ เดžเด™เตเด™เตพ Raspberry Pi 3 c เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจเต เด‡เดจเตเดฑเตฝ เดŽเตปเดธเดฟเดŽเดธเต 2.

เด‡เดตเดฟเดŸเต† NCS-เดจเตเดฑเต† เด’เดฐเต เดชเตเดฐเดงเดพเดจ เดธเดตเดฟเดถเต‡เดทเดค เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเต เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต - เด‡เดคเต เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต CNN เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเดฑเตเด•เดณเดฟเตฝ เดฎเดฟเด•เดšเตเดš เดฐเต€เดคเดฟเดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดทเตเดŸเดพเดจเตเดธเตƒเดค เดฒเต†เดฏเดฑเตเด•เดณเตเดณเตเดณ เด’เดฐเต เดฎเต‹เดกเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดฃเดฎเต†เด™เตเด•เดฟเตฝ, เดฒเต‹-เดฒเต†เดตเตฝ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต‡เดทเตป เดชเตเดฐเดคเต€เด•เตเดทเดฟเด•เตเด•เตเด•.

เด’เดฐเต เดšเต†เดฑเดฟเดฏ เด•เดพเดฐเตเดฏเด‚ เดฎเดพเดคเตเดฐเดฎเต‡ เดšเต†เดฏเตเดฏเดพเดจเตเดณเตเดณเต‚: เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดฎเตˆเด•เตเดฐเต‹เดซเต‹เตบ เดตเต‡เดฃเด‚. เด’เดฐเต เดธเดพเดงเดพเดฐเดฃ USB เดฎเตˆเด•เตเดฐเต‹เดซเต‹เตบ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเด‚, เดŽเดจเตเดจเดพเตฝ RPI-เดฏเตโ€Œเด•เตเด•เตŠเดชเตเดชเด‚ เด‡เดคเต เดฎเดฟเด•เดšเตเดšเดคเดพเดฏเดฟ เด•เดพเดฃเดชเตเดชเต†เดŸเดฟเดฒเตเดฒ. เดŽเดจเตเดจเดพเตฝ เด‡เดตเดฟเดŸเต† เดชเต‹เดฒเตเด‚ เดชเดฐเดฟเดนเดพเดฐเด‚ เด…เด•เตเดทเดฐเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ "เด…เดŸเตเดคเตเดคเดพเดฏเดฟ เด•เดฟเดŸเด•เตเด•เตเดจเตเดจเต." เดถเดฌเตเดฆเด‚ เดฑเต†เด•เตเด•เต‹เตผเดกเต เดšเต†เดฏเตเดฏเดพเตป, เด•เดฟเดฑเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเต‹เดฏเตโ€Œเดธเต เดฌเต‹เดฃเดฑเตเดฑเต เดฌเต‹เตผเดกเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เดคเต€เดฐเตเดฎเดพเดจเดฟเด•เตเด•เตเดจเตเดจเต Google AIY เดตเต‹เดฏเตโ€Œเดธเต เด•เดฟเดฑเตเดฑเต, เด…เดคเดฟเตฝ เดตเดฏเตผเดกเต เดธเตเดฑเตเดฑเต€เดฐเดฟเดฏเต‹ เดฎเตˆเด•เตเดฐเต‹เดซเต‹เตบ เด‰เดฃเตเดŸเต.

เดจเดฟเดจเตเดจเต Raspbian เดกเต—เตบเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด• AIY เดชเตเดฐเต‹เดœเด•เตเดŸเตเด•เดณเตเดŸเต† เดถเต‡เด–เดฐเด‚ เด’เดฐเต เดซเตเดฒเดพเดทเต เดกเตเดฐเตˆเดตเดฟเดฒเต‡เด•เตเด•เต เด…เดชเตโ€Œเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด•, เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฎเตˆเด•เตเดฐเต‹เดซเต‹เตบ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต‹เดฏเต†เดจเตเดจเต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเด• (เด…เดคเต 5 เดธเต†เด•เตเด•เตปเดกเต เดฆเตˆเตผเด˜เตเดฏเดฎเตเดณเตเดณ เด“เดกเดฟเดฏเต‹ เดฑเต†เด•เตเด•เต‹เตผเดกเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด’เดฐเต เดซเดฏเดฒเดฟเดฒเต‡เด•เตเด•เต เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚):

arecord -d 5 -r 16000 test.wav

เดฎเตˆเด•เตเดฐเต‹เดซเต‹เตบ เดตเดณเดฐเต† เดธเต†เตปเดธเดฟเดฑเตเดฑเต€เดตเต เด†เดฃเต†เดจเตเดจเตเด‚ เดถเดฌเตโ€Œเดฆเด‚ เดจเดจเตเดจเดพเดฏเดฟ เดŽเดŸเตเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเตเด‚ เดžเดพเตป เด‰เดŸเดจเดŸเดฟ เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เดฃเด‚. เด‡เดคเต เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเตป, เดจเดฎเตเด•เตเด•เต alsamixer-เดฒเต‡เด•เตเด•เต เดชเต‹เด•เดพเด‚, เด•เตเดฏเดพเดชเตเดšเตผ เด‰เดชเด•เดฐเดฃเด™เตเด™เตพ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเต เด‡เตปเดชเตเดŸเตเดŸเต เดธเดฟเด—เตเดจเตฝ เดฒเต†เดตเตฝ 50-60% เด†เดฏเดฟ เด•เตเดฑเดฏเตเด•เตเด•เตเด•.

เด“เดชเตเดชเตบเดตเดฟเดจเต‹ เดนเดพเด•เตเด•เดคเตเดคเต‹เตบ: เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆเดฏเดฟเดฒเต† เดถเดฌเตเดฆเดตเตเด‚ เดตเดฟเด•เดพเดฐเด™เตเด™เดณเตเด‚ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเต
เดžเด™เตเด™เตพ เด’เดฐเต เดซเดฏเตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฌเต‹เดกเดฟ เดชเดฐเดฟเดทเตเด•เตเด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต, เดŽเดฒเตเดฒเดพเด‚ เดฏเต‹เดœเดฟเด•เตเด•เตเดจเตเดจเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด…เดคเต เด’เดฐเต เดฒเดฟเดกเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด…เดŸเดฏเตเด•เตเด•เดพเด‚

เด’เดฐเต เด‡เตปเดกเดฟเด•เตเด•เต‡เดฑเตเดฑเตผ เดฌเดŸเตเดŸเตบ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเต

AIY เดตเต‹เดฏเตโ€Œเดธเต เด•เดฟเดฑเตเดฑเต เดตเต‡เตผเดคเดฟเดฐเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, เด’เดฐเต RGB เดฌเดŸเตเดŸเตบ เด‰เดฃเตเดŸเต†เดจเตเดจเต เดžเด™เตเด™เตพ เด“เตผเด•เตเด•เตเดจเตเดจเต, เด…เดคเดฟเดจเตเดฑเต† เดฌเดพเด•เตเด•เตโ€Œเดฒเตˆเดฑเตเดฑเต เดธเต‹เดซเตเดฑเตเดฑเตโ€Œเดตเต†เดฏเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เดพเดจเดพเด•เตเด‚. เดžเด™เตเด™เตพ "Google AIY Led" เดŽเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ เดคเดฟเดฐเดฏเตเด•เดฏเตเด‚ เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเตป เด•เดฃเตเดŸเต†เดคเตเดคเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต: https://aiyprojects.readthedocs.io/en/latest/aiy.leds.html
เด…เด‚เด—เต€เด•เตƒเดค เดตเดฟเด•เดพเดฐเด‚ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดˆ เดฌเดŸเตเดŸเตบ เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฐเตเดคเต, เดžเด™เตเด™เตพเด•เตเด•เต 7 เด•เตเดฒเดพเดธเตเด•เตพ เดฎเดพเดคเตเดฐเดฎเต‡เดฏเตเดณเตเดณเต‚, เดฌเดŸเตเดŸเดฃเดฟเดจเต 8 เดจเดฟเดฑเด™เตเด™เดณเตเดฃเตเดŸเต, เดฎเดคเดฟ!

เดžเด™เตเด™เตพ GPIO เดตเดดเดฟ เดฌเดŸเตเดŸเตบ เดตเต‹เดฏเตโ€Œเดธเต เดฌเต‹เดฃเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต, เด†เดตเดถเตเดฏเดฎเดพเดฏ เดฒเตˆเดฌเตเดฐเดฑเดฟเด•เตพ เดฒเต‹เดกเตเดšเต†เดฏเตเดฏเตเดจเตเดจเต (เด…เดต เด‡เดคเดฟเดจเด•เด‚ AIY เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดตเดฟเดคเดฐเดฃ เด•เดฟเดฑเตเดฑเดฟเตฝ เด‡เตปเดธเตเดฑเตเดฑเดพเตพ เดšเต†เดฏเตเดคเดฟเดŸเตเดŸเตเดฃเตเดŸเต)

from aiy.leds import Leds, Color
from aiy.leds import RgbLeds

เด“เดฐเต‹ เดตเดฟเด•เดพเดฐเดคเตเดคเดฟเดจเตเด‚ เด’เดฐเต RGB Tuple เดฐเต‚เดชเดคเตเดคเดฟเดฒเตเด‚ aiy.leds.Leds เดŽเดจเตเดจ เด•เตเดฒเดพเดธเดฟเดจเตเดฑเต† เด’เดฌเตโ€Œเดœเด•เตเดฑเตเดฑเดฟเดจเตเดฑเต† เดฐเต‚เดชเดคเตเดคเดฟเดฒเตเด‚ เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ เด’เดฐเต เดตเตผเดฃเตเดฃเด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดกเดฟเด•เตโ€Œเดฑเตเดฑเต เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เดพเด‚, เด…เดคเดฟเดฒเต‚เดŸเต† เดžเด™เตเด™เตพ เดจเดฟเดฑเด‚ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเด‚:

led_dict = {'neutral': (255, 255, 255), 'happy': (0, 255, 0), 'sad': (0, 255, 255), 'angry': (255, 0, 0), 'fearful': (0, 0, 0), 'disgusted':  (255, 0, 255), 'surprised':  (255, 255, 0)} 
leds = Leds()

เด…เดตเดธเดพเดจเดฎเดพเดฏเดฟ, เด’เดฐเต เดตเดฟเด•เดพเดฐเดคเตเดคเดฟเดจเตเดฑเต† เด“เดฐเต‹ เดชเตเดคเดฟเดฏ เดชเตเดฐเดตเดšเดจเดคเตเดคเดฟเดจเตเด‚ เดถเต‡เดทเด‚, เดฌเดŸเตเดŸเดฃเดฟเดจเตเดฑเต† เดจเดฟเดฑเด‚ เด…เดคเดฟเดจเดจเตเดธเดฐเดฟเดšเตเดšเต เดžเด™เตเด™เตพ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเด‚ (เด•เต€ เดชเตเดฐเด•เดพเดฐเด‚).

leds.update(Leds.rgb_on(led_dict.get(classes[prediction])))

เด“เดชเตเดชเตบเดตเดฟเดจเต‹ เดนเดพเด•เตเด•เดคเตเดคเต‹เตบ: เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆเดฏเดฟเดฒเต† เดถเดฌเตเดฆเดตเตเด‚ เดตเดฟเด•เดพเดฐเด™เตเด™เดณเตเด‚ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเต
เดฌเดŸเตเดŸเตบ, เด•เดคเตเดคเดฟเด•เตเด•เตเด•!

เดถเดฌเตเดฆเดคเตเดคเต‹เดŸเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต

เดถเดฌเตโ€Œเดฆเด‚ เดซเดฟเตฝเดŸเตเดŸเตผ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเด‚ เดถเดฌเตโ€Œเดฆเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเด‚ เดžเด™เตเด™เตพ เดฎเตˆเด•เตเดฐเต‹เดซเต‹เดฃเดฟเตฝ เดจเดฟเดจเตเดจเตเด‚ webrtcvad-เตฝ เดจเดฟเดจเตเดจเตเด‚ เดธเตเดŸเตเดฐเต€เด‚ เด•เตเดฏเดพเดชเตโ€Œเดšเตผ เดšเต†เดฏเตเดฏเดพเตป pyaudio เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด‚. เด•เต‚เดŸเดพเดคเต†, เดžเด™เตเด™เตพ เด’เดฐเต เด•เตเดฏเต‚ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเด‚, เด…เดคเดฟเดฒเต‡เด•เตเด•เต เดžเด™เตเด™เตพ เดตเต‹เดฏเตโ€Œเดธเต เดŽเด•เตโ€Œเดธเตโ€Œเดธเต†เดชเตเดฑเตเดฑเตเด•เตพ เด…เดธเดฎเดจเตเดตเดฟเดคเดฎเดพเดฏเดฟ เดšเต‡เตผเด•เตเด•เตเด•เดฏเตเด‚ เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚.

เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดค เดถเด•เดฒเดคเตเดคเดฟเดจเตเดฑเต† เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเตฝ webrtcvad-เดจเต เด’เดฐเต เดชเดฐเดฟเดฎเดฟเดคเดฟ เด‰เดณเตเดณเดคเดฟเดจเดพเตฝ - เด…เดคเต 10/20/30ms เดจเต เดคเตเดฒเตเดฏเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚, เด•เต‚เดŸเดพเดคเต† เดตเดฟเด•เดพเดฐเด™เตเด™เตพ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเต‹เดกเดฒเดฟเดจเตเดฑเต† เดชเดฐเดฟเดถเต€เดฒเดจเด‚ (เดจเดฎเตเดฎเตพ เดชเดฟเดจเตเดจเต€เดŸเต เดชเด เดฟเด•เตเด•เตเด‚ เดชเต‹เดฒเต†) 48kHz เดกเดพเดฑเตเดฑเดพเดธเต†เดฑเตเดฑเดฟเดฒเดพเดฃเต เดจเดŸเดคเตเดคเดฟเดฏเดคเต, เดžเด™เตเด™เตพ 48000ร—20ms/1000ร—1(เดฎเต‹เดฃเต‹)=960 เดฌเตˆเดฑเตเดฑเตเด•เตพ เดตเดฒเดฟเดชเตเดชเดฎเตเดณเตเดณ เดญเดพเด—เด™เตเด™เตพ เด•เตเดฏเดพเดชเตโ€Œเดšเตผ เดšเต†เดฏเตเดฏเตเด•. Webrtcvad เดˆ เด“เดฐเต‹ เดญเดพเด—เดคเตเดคเดฟเดจเตเด‚ True/False เดจเตฝเด•เตเด‚, เด‡เดคเต เดšเด™เตเด•เดฟเดฒเต† เด’เดฐเต เดตเต‹เดŸเตเดŸเดฟเดจเตเดฑเต† เดธเดพเดจเตเดจเดฟเดงเตเดฏเด‚ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด…เดญเดพเดตเดตเตเดฎเดพเดฏเดฟ เดชเตŠเดฐเตเดคเตเดคเดชเตเดชเต†เดŸเตเดจเตเดจเต.

เดจเดฎเตเด•เตเด•เต เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดฏเตเด•เตเดคเดฟ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเด‚:

  • เดตเต‹เดŸเตเดŸเต เด‰เดณเตเดณ เดญเดพเด—เด™เตเด™เตพ เดžเด™เตเด™เตพ เดชเดŸเตเดŸเดฟเด•เดฏเดฟเตฝ เดšเต‡เตผเด•เตเด•เตเด‚; เดตเต‹เดŸเตเดŸเต เด‡เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดถเต‚เดจเตเดฏเดฎเดพเดฏ เดšเด™เตเด•เตเด•เดณเตเดŸเต† เด•เต—เดฃเตเดŸเตผ เดžเด™เตเด™เตพ เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด‚.
  • เดถเต‚เดจเตเดฏเดฎเดพเดฏ เดšเด™เตเด•เตเด•เดณเตเดŸเต† เด•เตŒเดฃเตเดŸเตผ >=30 (600 ms) เด†เดฃเต†เด™เตเด•เดฟเตฝ, เดžเด™เตเด™เตพ เดธเดžเตเดšเดฟเดค เดšเด™เตเด•เตเด•เดณเตเดŸเต† เดฒเดฟเดธเตเดฑเตเดฑเดฟเดจเตเดฑเต† เดตเดฒเตเดชเตเดชเด‚ เดจเต‹เด•เตเด•เตเดจเตเดจเต; เด…เดคเต > 250 เด†เดฃเต†เด™เตเด•เดฟเตฝ, เดžเด™เตเด™เตพ เด…เดคเต เด•เตเดฏเต‚เดตเดฟเตฝ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเต; เด‡เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดจเต€เดณเด‚ เดŽเดจเตเดจเต เดžเด™เตเด™เตพ เด•เดฃเด•เตเด•เดพเด•เตเด•เตเดจเตเดจเต. เดธเตโ€Œเดชเต€เด•เตเด•เดฑเต† เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเดพเตป เดฎเต‹เดกเดฒเดฟเดจเต เดซเต€เดกเต เดšเต†เดฏเตเดฏเดพเตป เดฑเต†เด•เตเด•เต‹เตผเดกเต เดฎเดคเดฟเดฏเดพเด•เดฟเดฒเตเดฒ.
  • เดถเต‚เดจเตเดฏเดฎเดพเดฏ เดšเด™เตเด•เตเด•เดณเตเดŸเต† เด•เตŒเดฃเตเดŸเตผ เด‡เดชเตเดชเต‹เดดเตเด‚ < 30 เด†เดฃเต†เด™เตเด•เดฟเตฝ, เดธเดžเตเดšเดฟเดค เดšเด™เตเด•เตเด•เดณเตเดŸเต† เดฒเดฟเดธเตเดฑเตเดฑเดฟเดจเตเดฑเต† เดตเดฒเตเดชเตเดชเด‚ 300 เด•เดตเดฟเดฏเตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, เด•เต‚เดŸเตเดคเตฝ เด•เตƒเดคเตเดฏเดฎเดพเดฏ เดชเตเดฐเดตเดšเดจเดคเตเดคเดฟเดจเดพเดฏเดฟ เดžเด™เตเด™เตพ เดถเด•เดฒเด‚ เด•เตเดฏเต‚เดตเดฟเตฝ เดšเต‡เตผเด•เตเด•เตเด‚. (เด•เดพเดฐเดฃเด‚ เดตเดฟเด•เดพเดฐเด™เตเด™เตพ เด•เดพเดฒเดคเตเดคเดฟเดจเดจเตเดธเดฐเดฟเดšเตเดšเต เดฎเดพเดฑเดฟเด•เตเด•เตŠเดฃเตเดŸเดฟเดฐเดฟเด•เตเด•เตเด‚)

 def to_queue(frames):
    d = np.frombuffer(b''.join(frames), dtype=np.int16)
    return d

framesQueue = queue.Queue()
def framesThreadBody():
    CHUNK = 960
    FORMAT = pyaudio.paInt16
    CHANNELS = 1
    RATE = 48000

    p = pyaudio.PyAudio()
    vad = webrtcvad.Vad()
    vad.set_mode(2)
    stream = p.open(format=FORMAT,
                channels=CHANNELS,
                rate=RATE,
                input=True,
                frames_per_buffer=CHUNK)
    false_counter = 0
    audio_frame = []
    while process:
        data = stream.read(CHUNK)
        if not vad.is_speech(data, RATE):
            false_counter += 1
            if false_counter >= 30:
                if len(audio_frame) > 250:              
                    framesQueue.put(to_queue(audio_frame,timestamp_start))
                    audio_frame = []
                    false_counter = 0

        if vad.is_speech(data, RATE):
            false_counter = 0
            audio_frame.append(data)
            if len(audio_frame) > 300:                
                    framesQueue.put(to_queue(audio_frame,timestamp_start))
                    audio_frame = []

เดชเดฌเตเดฒเดฟเด•เต เดกเตŠเดฎเต†เดฏเตโ€Œเดจเดฟเตฝ เดฎเตเตปเด•เต‚เดŸเตเดŸเดฟ เดชเดฐเดฟเดถเต€เดฒเดฟเดชเตเดชเดฟเดšเตเดš เดฎเต‹เดกเดฒเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดคเดฟเดฐเดฏเต‡เดฃเตเดŸ เดธเดฎเดฏเดฎเดพเดฃเดฟเดคเต, เด—เดฟเดคเตเดคเดฌเต, เด—เต‚เด—เดฟเดณเดฟเดฒเต‡เด•เตเด•เต เดชเต‹เด•เตเด•, เดŽเดจเตเดจเดพเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเดฑเดฟเตฝ เดžเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดชเดฐเดฟเดฎเดฟเดคเดฟ เด‰เดฃเตเดŸเต†เดจเตเดจเต เด“เตผเด•เตเด•เตเด•. เด‡เดคเต เดตเดณเดฐเต† เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเตเดณเตเดณ เด’เดฐเต เดญเดพเด—เดฎเดพเดฃเต, เด•เดพเดฐเดฃเด‚ เดจเดฟเด™เตเด™เดณเตเดŸเต† เด‡เตปเดชเตเดŸเตเดŸเต เดกเดพเดฑเตเดฑเดฏเดฟเดฒเต† เดฎเต‹เดกเดฒเตเด•เตพ เดจเดฟเด™เตเด™เตพ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต, เด•เต‚เดŸเดพเดคเต†, เด…เดตเดฏเต† OpenVINO- เดฏเตเดŸเต† เด†เดจเตเดคเดฐเดฟเด• เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเตเด• - IR (เด‡เดจเตเดฑเตผเดฎเต€เดกเดฟเดฏเดฑเตเดฑเต เดชเตเดฐเดพเดคเดฟเดจเดฟเดงเตเดฏเด‚). เด—เดฟเดคเตเดคเดฌเดฟเตฝ เดจเดฟเดจเตเดจเต เดžเด™เตเด™เตพ เดเด•เดฆเต‡เดถเด‚ 5-7 เดตเตเดฏเดคเตเดฏเดธเตเดค เดชเดฐเดฟเดนเดพเดฐเด™เตเด™เตพ เดชเดฐเต€เด•เตเดทเดฟเดšเตเดšเต, เดตเดฟเด•เดพเดฐเด™เตเด™เตพ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเต‹เดกเตฝ เด‰เดŸเดจเดŸเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดšเตเดšเดพเตฝ, เดตเต‹เดฏเตโ€Œเดธเต เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดžเด™เตเด™เตพเด•เตเด•เต เด•เต‚เดŸเตเดคเตฝ เดธเดฎเดฏเด‚ เด•เดพเดคเตเดคเดฟเดฐเดฟเด•เตเด•เต‡เดฃเตเดŸเดฟ เดตเดฐเตเด‚ - เด…เดต เด•เต‚เดŸเตเดคเตฝ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเดฑเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต.

เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดตเดฏเดฟเตฝ เดžเด™เตเด™เตพ เดถเตเดฐเดฆเตเดง เด•เต‡เดจเตเดฆเตเดฐเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต:

  • เดถเดฌเตเดฆเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดตเดฟเด•เดพเดฐเด™เตเด™เตพ - https://github.com/alexmuhr/Voice_Emotion
    เด‡เดคเต เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดคเดคเตเดคเตเดตเดฎเดจเตเดธเดฐเดฟเดšเตเดšเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต: เด“เดกเดฟเดฏเต‹ เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเดฒเตเดณเตเดณ เดญเดพเด—เด™เตเด™เดณเดพเดฏเดฟ เดฎเตเดฑเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต, เดˆ เด“เดฐเต‹ เดญเดพเด—เดคเตเดคเดฟเดจเตเด‚ เดžเด™เตเด™เตพ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจเต MFCC เดคเตเดŸเตผเดจเตเดจเต เด…เดต CNN-เดฒเต‡เด•เตเด•เต เด‡เตปเดชเตเดŸเตเดŸเดพเดฏเดฟ เดธเดฎเตผเดชเตเดชเดฟเด•เตเด•เตเด•
  • เดถเดฌเตเดฆเด‚ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตฝ - https://github.com/linhdvu14/vggvox-speaker-identification
    เด‡เดตเดฟเดŸเต†, MFCC-เด•เตเด•เต เดชเด•เดฐเด‚, เดžเด™เตเด™เตพ เด’เดฐเต เดธเตเดชเต†เด•เตเดŸเตเดฐเต‹เด—เตเดฐเดพเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดพเดฃเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเต, FFT-เดจเต เดถเต‡เดทเด‚ เดžเด™เตเด™เตพ CNN-เดฒเต‡เด•เตเด•เต เดธเดฟเด—เตเดจเตฝ เดจเตฝเด•เตเดจเตเดจเต, เด…เดตเดฟเดŸเต† เด”เดŸเตเดŸเตเดชเตเดŸเตเดŸเดฟเตฝ เดจเดฎเตเด•เตเด•เต เดถเดฌเตเดฆเดคเตเดคเดฟเดจเตเดฑเต† เดตเต†เด•เตเดฑเตเดฑเตผ เดชเตเดฐเดพเดคเดฟเดจเดฟเดงเตเดฏเด‚ เดฒเดญเดฟเด•เตเด•เตเด‚.

เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดธเดฟเดฆเตเดงเดพเดจเตเดคเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดฎเต‹เดกเดฒเตเด•เดณเต† เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เตเด‚. OpenVINO เดจเดฟเดฐเดตเดงเดฟ เดฎเตŠเดกเตเดฏเต‚เดณเตเด•เตพ เด‰เตพเด•เตเด•เตŠเดณเตเดณเตเดจเตเดจเต:

  • เดฎเต‹เดกเตฝ เดฎเตƒเด—เดถเดพเดฒ เดคเตเดฑเด•เตเด•เตเด•, เดจเดฟเด™เตเด™เดณเตเดŸเต† เด‰เตฝเดชเตเดชเดจเตเดจเดคเตเดคเดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดจเตเด‚ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดพเดจเตเด‚ เด•เดดเดฟเดฏเตเดจเตเดจ เดฎเต‹เดกเดฒเตเด•เตพ
  • เดฎเต‹เดกเตฝ เด’เดชเตเดฑเตเดฑเดฟเด‚เดธเตผ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเดฟเดตเดฟเดง เดซเตเดฐเต†เดฏเดฟเด‚เดตเตผเด•เตเด•เต เดซเต‹เตผเดฎเดพเดฑเตเดฑเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต (เดŸเต†เตปเดธเตผเดซเตเดฒเต‹, เด’เดŽเตปเดŽเตปเดŽเด•เตเดธเต เดฎเตเดคเดฒเดพเดฏเดต) เด’เดฐเต เดฎเต‹เดกเตฝ เด‡เดจเตเดฑเตผเดฎเต€เดกเดฟเดฏเดฑเตเดฑเต เดฑเต†เดชเตเดฐเดธเดจเตเดฑเต‡เดทเตป เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเด‚, เด…เดคเดฟเดฒเต‚เดŸเต† เดžเด™เตเด™เตพ เด•เต‚เดŸเตเดคเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเด‚.
  • เด‡เดจเตเดฑเตฝ เดชเตเดฐเต‹เดธเดธเดฑเตเด•เตพ, เดŽเดฃเตเดฃเดฎเดฑเตเดฑ เดšเดฟเดชเตเดชเตเด•เตพ, เดจเตเดฏเต‚เดฑเตฝ เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเต เดธเตเดฑเตเดฑเดฟเด•เตเด•เต เด†เด•เตเดธเดฟเดฒเดฑเต‡เดฑเตเดฑเดฑเตเด•เตพ เดŽเดจเตเดจเดฟเดตเดฏเดฟเตฝ IR เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเตฝ เดฎเต‹เดกเดฒเตเด•เตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เด…เดจเตเดฎเดพเดจ เดŽเดžเตเดšเดฟเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต.
  • OpenCV เดฏเตเดŸเต† เดเดฑเตเดฑเดตเตเด‚ เด•เดพเดฐเตเดฏเด•เตเดทเดฎเดฎเดพเดฏ เดชเดคเดฟเดชเตเดชเต (เด…เดจเตเดฎเดพเดจเด‚ เดŽเดžเตเดšเดฟเตป เดชเดฟเดจเตเดคเตเดฃเดฏเต‹เดŸเต†)
    IR เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเดฒเตเดณเตเดณ เด“เดฐเต‹ เดฎเต‹เดกเดฒเตเด‚ เดฐเดฃเตเดŸเต เดซเดฏเดฒเตเด•เดณเดพเตฝ เดตเดฟเดตเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต: .xml, .bin.
    เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดฐเต€เดคเดฟเดฏเดฟเตฝ เดฎเต‹เดกเตฝ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเตผ เดตเดดเดฟ เดฎเต‹เดกเดฒเตเด•เตพ IR เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเต:

    python /opt/intel/openvino/deployment_tools/model_optimizer/mo_tf.py --input_model speaker.hdf5.pb --data_type=FP16 --input_shape [1,512,1000,1]

    --data_type เดฎเต‹เดกเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดกเดพเดฑเตเดฑ เดซเต‹เตผเดฎเดพเดฑเตเดฑเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. FP32, FP16, INT8 เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเต. เด’เดชเตเดฑเตเดฑเดฟเดฎเตฝ เดกเดพเดฑเตเดฑ เดคเดฐเด‚ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจเดคเต เดฎเดฟเด•เดšเตเดš เดชเตเดฐเด•เดŸเดจ เดฌเต‚เดธเตเดฑเตเดฑเต เดจเตฝเด•เตเด‚.
    --input_shape เด‡เตปเดชเตเดŸเตเดŸเต เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เด…เดณเดตเต เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต. เด‡เดคเต เดšเดฒเดจเดพเดคเตเดฎเด•เดฎเดพเดฏเดฟ เดฎเดพเดฑเตเดฑเดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต C++ API-เตฝ เด‰เดฃเตเดŸเต†เดจเตเดจเต เดคเต‹เดจเตเดจเตเดจเตเดจเต, เดชเด•เตเดทเต‡ เดžเด™เตเด™เตพ เด…เดคเตเดฐเดฏเดงเดฟเด•เด‚ เด•เตเดดเดฟเดšเตเดšเต†เดŸเตเดคเตเดคเดฟเดฒเตเดฒ, เด•เต‚เดŸเดพเดคเต† เดฎเต‹เดกเดฒเตเด•เดณเดฟเดฒเตŠเดจเตเดจเดฟเตฝ เด…เดคเต เดถเดฐเดฟเดฏเดพเด•เตเด•เดฟ.
    เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดกเดฟเดŽเตปเดŽเตป เดฎเตŠเดกเตเดฏเต‚เตพ เดตเดดเดฟ เดเด†เตผ เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเตฝ เด‡เดคเดฟเดจเด•เด‚ เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดค เดฎเต‹เดกเตฝ เด“เดชเตเดชเตบเดธเดฟเดตเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดฒเต‹เดกเต เดšเต†เดฏเตเดฏเดพเตป เดถเตเดฐเดฎเดฟเด•เตเด•เดพเด‚.

    import cv2 as cv
    emotionsNet = cv.dnn.readNet('emotions_model.bin',
                              'emotions_model.xml')
    emotionsNet.setPreferableTarget(cv.dnn.DNN_TARGET_MYRIAD)

    เดˆ เด•เต‡เดธเดฟเดฒเต† เด…เดตเดธเดพเดจ เดตเดฐเดฟ, เดจเตเดฏเต‚เดฑเตฝ เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเต เดธเตเดฑเตเดฑเดฟเด•เตเด•เดฟเดฒเต‡เด•เตเด•เต เด•เดฃเด•เตเด•เตเด•เต‚เดŸเตเดŸเดฒเตเด•เตพ เดฑเต€เดกเดฏเดฑเด•เตเดŸเต เดšเต†เดฏเตเดฏเดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดŸเดฟเดธเตเดฅเดพเดจ เด•เดฃเด•เตเด•เตเด•เต‚เดŸเตเดŸเดฒเตเด•เตพ เดชเตเดฐเต‹เดธเดธเดฑเดฟเตฝ เดจเดŸเดคเตเดคเตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เดฑเดพเดธเตเดฌเต†เดฑเดฟ เดชเตˆเดฏเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เด‡เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดฟเดฒเตเดฒ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดตเดŸเดฟ เด†เดตเดถเตเดฏเดฎเดพเดฃเต.

    เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดฒเต‹เดœเดฟเด•เต เด‡เดชเตเดฐเด•เดพเดฐเดฎเดพเดฃเต: เดžเด™เตเด™เตพ เดžเด™เตเด™เดณเตเดŸเต† เด“เดกเดฟเดฏเต‹เดฏเต† เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดตเดฒเตเดชเตเดชเดคเตเดคเดฟเดฒเตเดณเตเดณ เดตเดฟเตปเดกเต‹เด•เดณเดพเดฏเดฟ เดตเดฟเดญเดœเดฟเด•เตเด•เตเดจเตเดจเต (เดžเด™เตเด™เตพเด•เตเด•เต เด‡เดคเต 0.4 เดธเต†), เดˆ เดตเดฟเตปเดกเต‹เด•เตพ เด“เดฐเต‹เดจเตเดจเตเด‚ เดžเด™เตเด™เตพ MFCC เด†เดฏเดฟ เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด…เดคเต เดžเด™เตเด™เตพ เด—เตเดฐเดฟเดกเดฟเดฒเต‡เด•เตเด•เต เดซเต€เดกเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต:

    emotionsNet.setInput(MFCC_from_window)
    result = emotionsNet.forward()

    เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดŽเดฒเตเดฒเดพ เดตเดฟเตปเดกเต‹เด•เตพเด•เตเด•เตเด‚ เดเดฑเตเดฑเดตเตเด‚ เดธเดพเดงเดพเดฐเดฃเดฎเดพเดฏ เด•เตเดฒเดพเดธเต เดŽเดŸเตเด•เตเด•เดพเด‚. เด’เดฐเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดชเดฐเดฟเดนเดพเดฐเด‚, เดŽเดจเตเดจเดพเตฝ เด’เดฐเต เดนเดพเด•เตเด•เดคเตเดคเต‹เดฃเดฟเดจเต เดจเดฟเด™เตเด™เตพ เดตเดณเดฐเต† เด…เดฎเต‚เตผเดคเตเดคเดฎเดพเดฏ เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เด•เตŠเดฃเตเดŸเตเดตเดฐเต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดธเดฎเดฏเดฎเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ เดฎเดพเดคเตเดฐเด‚. เดžเด™เตเด™เตพเด•เตเด•เต เด‡เดจเดฟเดฏเตเด‚ เด’เดฐเตเดชเดพเดŸเต เดœเต‹เดฒเดฟเด•เตพ เดšเต†เดฏเตเดฏเดพเดจเตเดฃเตเดŸเต, เด…เดคเดฟเดจเดพเตฝ เดจเดฎเตเด•เตเด•เต เดฎเตเดจเตเดจเต‹เดŸเตเดŸเต เดชเต‹เด•เดพเด‚ - เดถเดฌเตเดฆ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตฝ เดžเด™เตเด™เตพ เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเด‚. เดฎเตเตปเด•เต‚เดŸเตเดŸเดฟ เดฑเต†เด•เตเด•เต‹เตผเดกเต เดšเต†เดฏเตเดค เดถเดฌเตเดฆเด™เตเด™เดณเตเดŸเต† เดธเตเดชเต†เด•เตเดŸเตเดฐเต‹เด—เตเดฐเดพเดฎเตเด•เตพ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเตเดคเดฐเด‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดธเตƒเดทเตเดŸเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเต เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เด•เตเดฑเดšเตเดšเต เดธเดฎเดฏเดฎเต‡ เดฌเดพเด•เตเด•เดฟเดฏเตเดณเตเดณเต‚ เดŽเดจเตเดจเดคเดฟเดจเดพเตฝ, เดˆ เดชเตเดฐเดถเตเดจเด‚ เดžเด™เตเด™เตพ เดชเดฐเดฎเดพเดตเดงเดฟ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเด‚.

    เด…เดคเดพเดฏเดคเต, เด’เดฐเต เดตเต‹เดฏเตโ€Œเดธเต เดŽเด•เตโ€Œเดธเตโ€Œเดธเต†เดชเตเดฑเตเดฑเต เดฑเต†เด•เตเด•เต‹เตผเดกเตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต เดžเด™เตเด™เตพ เด’เดฐเต เดธเตโ€Œเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เตเดจเตเดจเต (เดฎเตเด•เดณเดฟเตฝ เดตเดฟเดตเดฐเดฟเดšเตเดšเดคเตเดชเต‹เดฒเต† เด‡เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต€เดฌเต‹เตผเดกเดฟเตฝ เดจเดฟเดจเตเดจเต เดคเดŸเดธเตเดธเดชเตเดชเต†เดŸเตเดฎเตเดชเต‹เตพ เดฎเดพเดคเตเดฐเดฎเต‡ เด…เดคเต เด’เดฐเต เดซเดฏเดฒเดฟเดฒเต‡เด•เตเด•เต เดถเดฌเตโ€Œเดฆเด‚ เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เตเด•เดฏเตเดณเตเดณเต‚).

    เดจเดฎเตเด•เตเด•เต เดถเตเดฐเดฎเดฟเด•เตเด•เดพเด‚:

    python3 voice_db/record_voice.py test.wav

    เดžเด™เตเด™เตพ เดจเดฟเดฐเดตเดงเดฟ เด†เดณเตเด•เดณเตเดŸเต† เดถเดฌเตเดฆเด‚ เดฐเต‡เด–เดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเต (เดžเด™เตเด™เดณเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดฎเต‚เดจเตเดจเต เดŸเต€เด‚ เด…เด‚เด—เด™เตเด™เตพ)
    เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ, เดฑเต†เด•เตเด•เต‹เตผเดกเต เดšเต†เดฏเตโ€Œเดค เด“เดฐเต‹ เดถเดฌเตโ€Œเดฆเดคเตเดคเดฟเดจเตเด‚ เดžเด™เตเด™เตพ เดซเดพเดธเตเดฑเตเดฑเต เดซเต‹เดฑเดฟเดฏเตผ เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดจเดŸเดคเตเดคเตเด•เดฏเตเด‚ เด’เดฐเต เดธเตเดชเต†เด•เตโ€ŒเดŸเตเดฐเต‹เด—เตเดฐเดพเด‚ เดจเต‡เดŸเตเด•เดฏเตเด‚ เด…เดคเดฟเดจเต† เด’เดฐเต เดจเดฎเตเดชเดฟ เด…เดฑเต‡ เด†เดฏเดฟ (.npy) เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต:

    for file in glob.glob("voice_db/*.wav"):
            spec = get_fft_spectrum(file)
            np.save(file[:-4] + '.npy', spec)

    เด•เต‚เดŸเตเดคเตฝ เดตเดฟเดถเดฆเดพเด‚เดถเด™เตเด™เตพ เดซเดฏเดฒเดฟเตฝ create_base.py
    เดคเตฝเดซเดฒเดฎเดพเดฏเดฟ, เดžเด™เตเด™เตพ เดชเตเดฐเดงเดพเดจ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดคเตเดŸเด•เตเด•เดคเตเดคเดฟเตฝ เดคเดจเตเดจเต† เดˆ เดธเตเดชเต†เด•เตเดŸเตเดฐเต‹เด—เตเดฐเดพเดฎเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฎเตเด•เตเด•เต เดŽเด‚เดฌเต†เดกเดฟเด‚เด—เตเด•เตพ เดฒเดญเดฟเด•เตเด•เตเด‚:

    for file in glob.glob("voice_db/*.npy"):
        spec = np.load(file)
        spec = spec.astype('float32')
        spec_reshaped = spec.reshape(1, 1, spec.shape[0], spec.shape[1])
        srNet.setInput(spec_reshaped)
        pred = srNet.forward()
        emb = np.squeeze(pred)

    เดถเดฌเตโ€Œเดฆเดฎเตเดณเตเดณ เดธเต†เด—เตโ€Œเดฎเต†เดจเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เด‰เตพเดšเตเดšเต‡เตผเด•เตเด•เตฝ เดฒเดญเดฟเดšเตเดšเดคเดฟเดจเต เดถเต‡เดทเด‚, เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดฒเต† เดŽเดฒเตเดฒเดพ เดถเดฌเตเดฆเด™เตเด™เดณเดฟเดฒเต‡เด•เตเด•เตเด‚ (เดšเต†เดฑเดฟเดฏเดคเต, เด•เต‚เดŸเตเดคเตฝ เดธเดพเดงเตเดฏเดคเดฏเตเดณเตเดณเดคเต) เดชเดพเดธเต‡เดœเดฟเตฝ เดจเดฟเดจเตเดจเต เด•เต‹เดธเตˆเตป เดฆเต‚เดฐเด‚ เดŽเดŸเตเดคเตเดคเต เด…เดคเต เด†เดฐเตเดŸเต‡เดคเดพเดฃเต†เดจเตเดจเต เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพเด•เตเด•เต เด•เดดเดฟเดฏเตเด‚ - เดกเต†เดฎเต‹เดฏเตโ€Œเด•เตเด•เดพเดฏเดฟ เดžเด™เตเด™เตพ เดชเดฐเดฟเดงเดฟ เดธเดœเตเดœเดฎเดพเด•เตเด•เตเดจเตเดจเต. 0.3 เดตเดฐเต†):

            dist_list = cdist(emb, enroll_embs, metric="cosine")
            distances = pd.DataFrame(dist_list, columns = df.speaker)

    เด…เดตเดธเดพเดจเด‚, เด…เดจเตเดฎเดพเดจ เดตเต‡เด—เดค เดตเต‡เด—เดคเตเดคเดฟเดฒเดพเดฃเต†เดจเตเดจเตเด‚ 1-2 เดฎเต‹เดกเดฒเตเด•เตพ เด•เต‚เดŸเดฟ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเดคเต เดธเดพเดงเตเดฏเดฎเดพเด•เตเด•เดฟเดฏเต†เดจเตเดจเตเด‚ เดžเดพเตป เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต (เด’เดฐเต เดธเดพเดฎเตเดชเดฟเตพ 7 เดธเต†เด•เตเด•เตปเดกเต เดฆเตˆเตผเด˜เตเดฏเดฎเตเดณเตเดณ เด…เดจเตเดฎเดพเดจเดคเตเดคเดฟเดจเต 2.5 เดŽเดŸเตเดคเตเดคเต). เดชเตเดคเดฟเดฏ เดฎเต‹เดกเดฒเตเด•เตพ เดšเต‡เตผเด•เตเด•เดพเตป เดžเด™เตเด™เตพเด•เตเด•เต เดธเดฎเดฏเดฎเดฟเดฒเตเดฒ, เด•เต‚เดŸเดพเดคเต† เดตเต†เดฌเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเดฑเต† เด’เดฐเต เดชเตเดฐเต‹เดŸเตเดŸเต‹เดŸเตˆเดชเตเดชเต เดŽเดดเตเดคเตเดจเตเดจเดคเดฟเตฝ เดถเตเดฐเดฆเตเดง เด•เต‡เดจเตเดฆเตเดฐเต€เด•เดฐเดฟเดšเตเดšเต.

    เดตเต†เดฌเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเตป

    เด’เดฐเต เดชเตเดฐเดงเดพเดจ เด•เดพเดฐเตเดฏเด‚: เดžเด™เตเด™เตพ เดตเต€เดŸเตเดŸเดฟเตฝ เดจเดฟเดจเตเดจเต เดžเด™เตเด™เดณเต‹เดŸเตŠเดชเตเดชเด‚ เด’เดฐเต เดฑเต‚เดŸเตเดŸเตผ เดŽเดŸเตเดคเตเดคเต เดžเด™เตเด™เดณเตเดŸเต† เดชเตเดฐเดพเดฆเต‡เดถเดฟเด• เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต, เด‡เดคเต เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เดฟเดฒเต‚เดŸเต† เด‰เดชเด•เดฐเดฃเดตเตเด‚ เดฒเดพเดชเตโ€ŒเดŸเต‹เดชเตเดชเตเด•เดณเตเด‚ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดธเดนเดพเดฏเดฟเด•เตเด•เตเดจเตเดจเต.

    เดตเต†เดฌเตโ€Œเดธเต‹เด•เตเด•เดฑเตเดฑเต เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏเดฏเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เดซเตเดฐเดฃเตเดŸเดฟเดจเตเด‚ เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆเดฏเตโ€Œเด•เตเด•เตเดฎเดฟเดŸเดฏเดฟเดฒเตเดณเตเดณ เด’เดฐเต เดŽเตปเดกเต-เดŸเต-เดŽเตปเดกเต เดธเดจเตเดฆเต‡เดถ เดšเดพเดจเดฒเดพเดฃเต เดฌเดพเด•เตเด•เต†เตปเดกเต (http over tcp เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ).

    เด†เดฆเตเดฏ เด˜เดŸเตเดŸเด‚ เดฑเดพเดธเตเดฌเต†เดฑเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดค เดตเดฟเดตเดฐเด™เตเด™เตพ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต, เด…เดคเดพเดฏเดคเต, json-เตฝ เดชเดพเดฏเตเด•เตเด•เต เดšเต†เดฏเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดชเตเดฐเดตเดšเดจเด™เตเด™เตพ, เด…เดตเดฐเตเดŸเต† เดฏเดพเดคเตเดฐเดฏเตเดŸเต† เดชเด•เตเดคเดฟเดฏเดฟเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตฝ เดธเต‡เดตเต เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเต, เด…เดคเตเดตเดดเดฟ เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเตเดฑเต† เดตเตˆเด•เดพเดฐเดฟเด• เดชเดถเตเดšเดพเดคเตเดคเดฒเดคเตเดคเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดธเตเดฅเดฟเดคเดฟเดตเดฟเดตเดฐเด•เตเด•เดฃเด•เตเด•เตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. เดˆ เดชเดพเด•เตเด•เดฑเตเดฑเต เดชเดฟเดจเตเดจเต€เดŸเต เดซเตเดฐเดฃเตเดŸเตโ€ŒเดŽเตปเดกเดฟเดฒเต‡เด•เตเด•เต เด…เดฏเดฏเตโ€Œเด•เตเด•เตเดจเตเดจเต, เด…เดคเต เดธเดฌเตโ€Œเดธเตโ€Œเด•เตเดฐเดฟเดชเตโ€Œเดทเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•เดฏเตเด‚ เดตเต†เดฌเตโ€Œเดธเต‹เด•เตเด•เดฑเตเดฑเต เดŽเตปเดกเตโ€Œเดชเต‹เดฏเดฟเดจเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเดพเด•เตเด•เดฑเตเดฑเตเด•เตพ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดฎเตเดดเตเดตเตป เดฌเดพเด•เตเด•เต†เตปเดกเต เดฎเต†เด•เตเด•เดพเดจเดฟเดธเดตเตเด‚ เด—เต‹เดฒเดพเด‚เด—เต เดญเดพเดทเดฏเดฟเดฒเดพเดฃเต เดจเดฟเตผเดฎเตเดฎเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต; เด—เต‹เดฑเต‚เดŸเตเดŸเต€เดจเตเด•เตพ เดจเดจเตเดจเดพเดฏเดฟ เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจ เด…เดธเดฟเตปเด•เตเดฐเดฃเดธเต เดŸเดพเดธเตโ€Œเด•เตเด•เตเด•เตพเด•เตเด•เต เด‡เดคเต เดจเดจเตเดจเดพเดฏเดฟ เดฏเต‹เดœเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเดฒเดพเดฃเต เด‡เดคเต เดคเดฟเดฐเดžเตเดžเต†เดŸเตเดคเตเดคเดคเต.
    เดŽเตปเดกเต เดชเต‹เดฏเดฟเดจเตเดฑเต เด†เด•เตเดธเดธเต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ, เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเต เดฐเดœเดฟเดธเตเดฑเตเดฑเตผ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด˜เดŸเดจเดฏเดฟเตฝ เดชเตเดฐเดตเต‡เดถเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เดคเตเดŸเตผเดจเตเดจเต เด…เดตเดจเตเดฑเต† เดธเดจเตเดฆเต‡เดถเด‚ เดฒเดญเดฟเด•เตเด•เตเด‚. เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเตเด‚ เดธเดจเตเดฆเต‡เดถเดตเตเด‚ เด’เดฐเต เดชเตŠเดคเต เด•เต‡เดจเตเดฆเตเดฐเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดชเตเดฐเดตเต‡เดถเดฟเดšเตเดšเต, เด…เดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดธเดจเตเดฆเต‡เดถเด™เตเด™เตพ เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† เด•เต‚เดŸเตเดคเตฝ เด…เดฏเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต (เดธเดฌเตโ€Œเดธเตโ€Œเด•เตเดฐเตˆเดฌเตเดšเต†เดฏเตโ€Œเดค เดซเตเดฐเดฃเตเดŸเดฟเดฒเต‡เด•เตเด•เต), เด•เต‚เดŸเดพเดคเต† เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเต เด•เดฃเด•เตเดทเตป (เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดซเตเดฐเดฃเตเดŸเต) เด…เดŸเดฏเตเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เด…เดตเดจเตเดฑเต† เดธเดฌเตโ€Œเดธเตโ€Œเด•เตเดฐเดฟเดชเตโ€Œเดทเตป เดฑเดฆเตเดฆเดพเด•เตเด•เตเด•เดฏเตเด‚ เด…เดตเดจเต† เด…เดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดนเดฌเต.

    เด“เดชเตเดชเตบเดตเดฟเดจเต‹ เดนเดพเด•เตเด•เดคเตเดคเต‹เตบ: เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆเดฏเดฟเดฒเต† เดถเดฌเตเดฆเดตเตเด‚ เดตเดฟเด•เดพเดฐเด™เตเด™เดณเตเด‚ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเต
    เดžเด™เตเด™เตพ เดชเดฟเดจเตเดจเดฟเตฝ เดจเดฟเดจเตเดจเต เด’เดฐเต เด•เดฃเด•เตเดทเดจเดพเดฏเดฟ เด•เดพเดคเตเดคเดฟเดฐเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต

    เดตเดฟเด•เดธเดจ เดชเตเดฐเด•เตเดฐเดฟเดฏ เดตเต‡เด—เดคเตเดคเดฟเดฒเดพเด•เตเด•เดพเดจเตเด‚ เดฒเดณเดฟเดคเดฎเดพเด•เตเด•เดพเดจเตเด‚ เดฑเดฟเดฏเดพเด•เตเดฑเตเดฑเต เดฒเตˆเดฌเตเดฐเดฑเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดœเดพเดตเดพเดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดฟเตฝ เดŽเดดเตเดคเดฟเดฏ เด’เดฐเต เดตเต†เดฌเต เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเดพเดฃเต เดซเตเดฐเดฃเตเดŸเต-เดŽเตปเดกเต. เดฌเดพเด•เตเด•เต-เดŽเตปเดกเต เดตเดถเดคเตเดคเตเด‚ เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆเดฏเดฟเดฒเตเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฒเดญเดฟเดšเตเดš เดกเดพเดฑเตเดฑ เดฆเตƒเดถเตเดฏเดตเตฝเด•เตเด•เดฐเดฟเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต เดˆ เด†เดชเตเดฒเดฟเด•เตเด•เต‡เดทเดจเตเดฑเต† เด‰เดฆเตเดฆเต‡เดถเด‚. เดฑเดฟเดฏเดพเด•เตเดฑเตเดฑเต-เดฑเต‚เดŸเตเดŸเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเต‡เดœเดฟเดจเต เดธเต†เด•เตเดทเดฃเตฝ เดฑเต‚เดŸเตเดŸเดฟเด‚เด—เต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต, เดŽเดจเตเดจเดพเตฝ เดตเต†เดฌเตโ€Œเดธเต‹เด•เตเด•เดฑเตเดฑเต เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดธเต†เตผเดตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดคเดคเตเดธเดฎเดฏเด‚ เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏ เดธเตเดŸเตเดฐเต€เด‚ เดฒเดญเดฟเด•เตเด•เตเดจเตเดจ เดชเตเดฐเดงเดพเดจ เดชเต‡เดœเดพเดฃเต เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดคเตเดคเดฟเดจเตเดฑเต† เดชเตเดฐเดงเดพเดจ เดชเต‡เดœเต. เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆ เด’เดฐเต เดถเดฌเตโ€Œเดฆเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเต, เด…เดคเต เดฐเดœเดฟเดธเตเดฑเตเดฑเตผ เดšเต†เดฏเตเดค เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตฝ เดจเดฟเดจเตเดจเต เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดตเตเดฏเด•เตเดคเดฟเดฏเตเดŸเต‡เดคเดพเดฃเต‹ เดŽเดจเตเดจเต เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เด•เตเดฒเดฏเดจเตเดฑเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เดชเตเดฐเต‹เดฌเดฌเดฟเดฒเดฟเดฑเตเดฑเดฟ เดฒเดฟเดธเตเดฑเตเดฑเต เด…เดฏเดฏเตโ€Œเด•เตเด•เตเดจเตเดจเต. เด•เตเดฒเดฏเดจเตเดฑเต เดเดฑเตเดฑเดตเตเด‚ เดชเตเดคเดฟเดฏ เดชเตเดฐเดธเด•เตเดคเดฎเดพเดฏ เดกเดพเดฑเตเดฑ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต, เดฎเตˆเด•เตเดฐเต‹เดซเต‹เดฃเดฟเตฝ เดธเด‚เดธเดพเดฐเดฟเดšเตเดš เดตเตเดฏเด•เตเดคเดฟเดฏเตเดŸเต† เด…เดตเดคเดพเตผ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเตเดชเต‹เดฒเต† เดคเดจเตเดจเต† เด…เดตเตป เดตเดพเด•เตเด•เตเด•เตพ เด‰เดšเตเดšเดฐเดฟเด•เตเด•เตเดจเตเดจ เดตเดฟเด•เดพเดฐเดตเตเด‚.

    เด“เดชเตเดชเตบเดตเดฟเดจเต‹ เดนเดพเด•เตเด•เดคเตเดคเต‹เตบ: เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆเดฏเดฟเดฒเต† เดถเดฌเตเดฆเดตเตเด‚ เดตเดฟเด•เดพเดฐเด™เตเด™เดณเตเด‚ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเต
    เดชเตเดคเตเด•เตเด•เดฟเดฏ เดชเตเดฐเดตเดšเดจเด™เตเด™เดณเตเดณเตเดณ เดนเต‹เด‚ เดชเต‡เดœเต

    เดคเต€เดฐเตเดฎเดพเดจเด‚

    เด†เดธเต‚เดคเตเดฐเดฃเด‚ เดšเต†เดฏเตเดคเดคเตเดชเต‹เดฒเต† เดŽเดฒเตเดฒเดพเด‚ เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเด•เดพเตป เดธเดพเดงเตเดฏเดฎเดฒเตเดฒ, เดžเด™เตเด™เตพเด•เตเด•เต เดธเดฎเดฏเดฎเดฟเดฒเตเดฒ, เด…เดคเดฟเดจเดพเตฝ เดชเตเดฐเดงเดพเดจ เดชเตเดฐเดคเต€เด•เตเดท เดกเต†เดฎเต‹เดฏเดฟเดฒเดพเดฏเดฟเดฐเตเดจเตเดจเต, เดŽเดฒเตเดฒเดพเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเด‚. เด…เดตเดคเดฐเดฃเดคเตเดคเดฟเตฝ, เดŽเดฒเตเดฒเดพเด‚ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต, เดเดคเต เดฎเต‹เดกเดฒเตเด•เดณเดพเดฃเต เด…เดตเตผ เดธเตเดตเต€เด•เดฐเดฟเดšเตเดšเดคเต, เด…เดตเตผ เดจเต‡เดฐเดฟเดŸเตเดŸ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เดŽเดจเตเดจเดฟเดตเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดธเด‚เดธเดพเดฐเดฟเดšเตเดšเต. เด…เดŸเตเดคเตเดคเดคเต เดกเต†เดฎเต‹ เดญเดพเด—เดฎเดพเดฏเดฟเดฐเตเดจเตเดจเต - เดตเดฟเดฆเด—เตเดงเตผ เด•เตเดฐเดฎเดฐเดนเดฟเดคเดฎเดพเดฏ เด•เตเดฐเดฎเดคเตเดคเดฟเตฝ เดฎเตเดฑเดฟเดฏเดฟเตฝ เดšเตเดฑเตเดฑเดฟเดจเดŸเดจเตเดจเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดชเตเดฐเต‹เดŸเตเดŸเต‹เดŸเตˆเดชเตเดชเต เดจเต‹เด•เตเด•เดพเตป เด“เดฐเต‹ เดŸเต€เดฎเดฟเดจเต†เดฏเตเด‚ เดธเดฎเต€เดชเดฟเดšเตเดšเต. เด…เดตเตผ เดžเด™เตเด™เดณเต‹เดŸเตเด‚ เดšเต‹เดฆเตเดฏเด™เตเด™เตพ เดšเต‹เดฆเดฟเดšเตเดšเต, เดŽเดฒเตเดฒเดพเดตเดฐเตเด‚ เด…เดตเดฐเดตเดฐเตเดŸเต† เดญเดพเด—เดคเตเดคเดฟเดจเต เด‰เดคเตเดคเดฐเด‚ เดจเตฝเด•เดฟ, เด…เดตเตผ เดฒเดพเดชเตโ€ŒเดŸเต‹เดชเตเดชเดฟเตฝ เดตเต†เดฌเต เด‰เดชเต‡เด•เตเดทเดฟเดšเตเดšเต, เดŽเดฒเตเดฒเดพเด‚ เดถเดฐเดฟเด•เตเด•เตเด‚ เดชเตเดฐเดคเต€เด•เตเดทเดฟเดšเตเดšเดคเตเดชเต‹เดฒเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเดšเตเดšเต.

    เดžเด™เตเด™เดณเตเดŸเต† เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเดฟเดจเตเดฑเต† เด†เด•เต† เดšเต†เดฒเดตเต $150 เด†เดฃเต†เดจเตเดจเต เดžเดพเตป เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เดŸเตเดŸเต†:

    • เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆ 3 ~ $35
    • Google AIY เดตเต‹เดฏเตโ€Œเดธเต เดฌเต‹เดฃเดฑเตเดฑเต (เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดฑเต†เดธเตโ€Œเดชเต€เด•เตเด•เตผ เดซเต€เดธเต เดŽเดŸเตเด•เตเด•เดพเด‚) ~ 15$
    • เด‡เดจเตเดฑเตฝ NCS 2 ~ 100$

    เดŽเด™เตเด™เดจเต† เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดพเด‚:

    • เด•เตเดฒเดฏเดจเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดฐเดœเดฟเดธเตเดŸเตเดฐเต‡เดทเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด• - เด•เตเดฐเดฎเดฐเดนเดฟเดคเดฎเดพเดฏเดฟ เดœเดจเดฑเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจ เดตเดพเดšเด•เด‚ เดตเดพเดฏเดฟเด•เตเด•เดพเตป เด†เดตเดถเตเดฏเดชเตเดชเต†เดŸเตเด•
    • เด•เตเดฑเดšเตเดšเต เดฎเต‹เดกเดฒเตเด•เตพ เด•เต‚เดŸเดฟ เดšเต‡เตผเด•เตเด•เตเด•: เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดถเดฌเตเดฆเดคเตเดคเดฟเดฒเต‚เดŸเต† เดฒเดฟเด‚เด—เดญเต‡เดฆเดตเตเด‚ เดชเตเดฐเดพเดฏเดตเตเด‚ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เดพเดจเดพเด•เตเด‚
    • เด’เดฐเต‡เดธเดฎเดฏเด‚ เดฎเตเดดเด™เตเด™เตเดจเตเดจ เดถเดฌเตเดฆเด™เตเด™เตพ เดตเต‡เตผเดคเดฟเดฐเดฟเด•เตเด•เตเด• (เดกเดฏเดฑเตˆเดธเต‡เดทเตป)

    เดธเด‚เดญเดฐเดฃเดฟเดฏเดพเดฃเต: https://github.com/vladimirwest/OpenEMO

    เด“เดชเตเดชเตบเดตเดฟเดจเต‹ เดนเดพเด•เตเด•เดคเตเดคเต‹เตบ: เดฑเดพเดธเตโ€Œเดฌเต†เดฑเดฟ เดชเตˆเดฏเดฟเดฒเต† เดถเดฌเตเดฆเดตเตเด‚ เดตเดฟเด•เดพเดฐเด™เตเด™เดณเตเด‚ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเต
    เด•เตเดทเต€เดฃเดฟเดšเตเดšเต†เด™เตเด•เดฟเดฒเตเด‚ เดžเด™เตเด™เตพ เดธเดจเตเดคเต‹เดทเดตเดพเดจเดพเดฃเต

    เด‰เดชเดธเด‚เดนเดพเดฐเดฎเดพเดฏเดฟ, เดธเด‚เด˜เดพเดŸเด•เตผเด•เตเด•เตเด‚ เดชเด™เตเด•เดพเดณเดฟเด•เตพเด•เตเด•เตเด‚ เดจเดจเตเดฆเดฟ เดชเดฑเดฏเดพเตป เดžเดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต. เดฎเดฑเตเดฑเต เดŸเต€เดฎเตเด•เดณเตเดŸเต† เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ, เดธเต—เดœเดจเตเดฏ เดชเดพเตผเด•เตเด•เดฟเด‚เด—เต เดธเตเดฅเดฒเด™เตเด™เตพ เดจเดฟเดฐเต€เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเดฐเดฟเดนเดพเดฐเด‚ เดžเด™เตเด™เตพ เดตเตเดฏเด•เตเดคเดฟเดชเดฐเดฎเดพเดฏเดฟ เด‡เดทเตเดŸเดชเตเดชเต†เดŸเตเดŸเต. เดžเด™เตเด™เดณเต† เดธเด‚เดฌเดจเตเดงเดฟเดšเตเดšเดฟเดŸเดคเตเดคเต‹เดณเด‚, เด‰เตฝโ€Œเดชเตเดชเดจเตเดจเดคเตเดคเดฟเดฒเตเด‚ เดตเดฟเด•เดธเดจเดคเตเดคเดฟเดฒเตเด‚ เดฎเตเดดเตเด•เตเดจเตเดจเดคเดฟเดจเตเดฑเต† เดตเดจเตเดฏเดฎเดพเดฏ เด’เดฐเต เด…เดจเตเดญเดตเดฎเดพเดฏเดฟเดฐเตเดจเตเดจเต เด…เดคเต. AI เดตเดฟเดทเดฏเด™เตเด™เตพ เด‰เตพเดชเตเดชเต†เดŸเต†, เด•เต‚เดŸเตเดคเตฝ เด•เต‚เดŸเตเดคเตฝ เดฐเดธเด•เดฐเดฎเดพเดฏ เด‡เดตเดจเตเดฑเตเด•เตพ เดชเตเดฐเดฆเต‡เดถเด™เตเด™เดณเดฟเตฝ เดจเดŸเด•เตเด•เตเดฎเต†เดจเตเดจเต เดžเดพเตป เดชเตเดฐเดคเต€เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•