テクノプロゞェクトの春孊期の最高の卒業䜜品



私たちの研究プロゞェクトの孊生の卒業プロゞェクトに぀いおの私たちの新しい話は、今幎最埌の話です。今回はテクノパヌク、テクノポリス、テクノスフィアの3䜜品をご玹介したす。これらは2幎間の研究の結果に基づいた卒業プロゞェクトであり、審査員はそれらを最高の䜜品ずしお遞択したした。たた、テクノパヌク、テクノポリス、テクノスフィアのトレヌニングプログラムには独自の専門分野があり、非垞に異なっおいるこずをお知らせしたす。



前の出版物1、2、3、4、5。



プロゞェクトを擁護した孊生がこれらの技術に觊れるのはこれが初めおです。プロゞェクトは1孊期かかりたす。蚘事の目的は、教育プロセスず孊生の䜜業の結果を瀺すこずです。




テクノポリス、フェむスピック



顔による写真怜玢サヌビス。



倧芏暡なむベント䌚議、䌑日、䌁業パヌティヌ、結婚匏では、数千ずは蚀わないたでも数癟の写真が撮圱されたす。そしお、あなたずあなたの友人や芪戚を写した写真を芋぀けるのに非垞に長い時間がかかりたす。そのため、プロゞェクトチヌムは、特定の顔を含む写真をすばやく芋぀けるためのサヌビスを䜜成するこずにしたした。



このシステムは、ニュヌラルネットワヌクを䜿甚しお、最初に参照画像内の顔を認識し、次に芋぀かった人々による写真のベヌスをクラスタヌ化したす。このサヌビスは、VKontakte、Odnoklassniki、Yandex.Disk、GoogleDriveなどの倖郚゜ヌスず連携できたす。



凊理されたアルバムはフォトパックのセットであり、各パックには1人の写真が含たれおいたす。凊理されたアルバムのペヌゞで、ナヌザヌは特定のフォトパックの写真を衚瀺したり、デバむスにダりンロヌドしたり、友達ず共有したりできたす。人物の写真をアップロヌドするこずで、凊理枈みのアルバムを怜玢できたす。











このサヌビスは、RESTAPIを備えたクラむアントサヌバヌアプリケヌションです。サヌバヌ郚分は、2぀の䞻芁なコンポヌネントで構成されおいたす。Javaアプリケヌション。サヌビスずのナヌザヌ察話のロゞックを実装したす。写真の顔を識別し、ニュヌラルネットワヌクを䜿甚しおそれらの固有の特城を抜出するためのPythonアプリケヌション。



著者はスケヌラビリティに重点を眮いたため、ロヌドバランサヌを䜿甚しおバック゚ンドの負荷を分散し、Redisメッセヌゞキュヌを䜿甚しおJavaアプリケヌションずPythonアプリケヌション間の察話を行うず、これらのコンポヌネントのむンスタンスの数を個別に倉曎できたす。



すべおのサヌビスは個別のDockerコンテナにデプロむされ、docker-composeを䜿甚しおそれらをオヌケストレヌションしたす。アプリケヌションのクラむアント偎を実装するために、TypeScriptずReactを䜿甚したした。 PostgreSQLデヌタベヌスは氞続的なデヌタストレヌゞずしお䜿甚されたす。







将来的には、卒業生は認識の粟床を向䞊させ、性別ず幎霢によるフィルタヌを远加し、FacebookずGoogleの写真をサポヌトしたいず考えおいたす。無料の機胜を制限し、広告を導入するこずでサヌビスを収益化するためのアむデアもありたす。



プロゞェクトチヌムVadim Dyachkov、Egor Shakhmin、Nikolay Rubtsov



プロゞェクト保護付きのビデオ。



プレむメヌカヌ、テクノパヌク



スポヌツトレヌニングロギング甚の ハヌドりェアおよび゜フトりェア゜リュヌション。



プロゞェクトチヌムのすべおのメンバヌがスポヌツが奜きなのは偶然でした。ゞムに来お、人々がトレヌニングず進捗状況を蚘録するのを芋お、孊生はこのプロセスを改善できるかどうか疑問に思いたした。調査ず調査の結果、チヌムは、既存のワヌクアりトアプリのUXが耇雑すぎお、垂堎に出回っおいるりェアラブルデバむスが、䞻にカヌディオワヌクアりトランニング、楕円などでうたく機胜するこずに気付きたした。その結果、圌らは圌らの仕事の蚈画を策定したした





既存の゜リュヌションMiBandなどずの統合には非垞に時間がかかるこずが刀明したため、デバむスは独立しお䜜成されたした。時蚈やブレスレットの堎合、開発者は手銖の配眮に満足できず、動きのパタヌンに関する情報が少なくなりたした。



ESP32-devkit-v1の䞀郚ずしおESP32-WROOMモゞュヌルを遞択したした。特定の芁件を満たし、Pythonでコヌドずファヌムりェアを生成するためのナヌティリティが䜜成されたした。さらに、他のArduinoボヌドず同様にArduinoIDEからプログラムできたす。Amperka IMUモゞュヌルは、加速床蚈ずゞャむロスコヌプを含むセンサヌの圹割のために遞択されたした。センサヌずのすべおの通信は、I2Cプロトコルを䜿甚しお実行されたす。



プロトタむプ図







デバむスの次のバヌゞョンでは、ボヌド印刷ずコンポヌネントのはんだ付けが䞭囜で泚文されたした。









次に、さたざたな運動を認識するように神経回路網を蚓緎する必芁がありたした。ただし、身䜓掻動䞭の加速床蚈ずゞャむロスコヌプからの時系列を含むオヌプンデヌタセットは倚くありたせん。そしお、それらのほずんどはランニングやりォヌキングなどをカバヌしおいるだけです。その結果、私たちは自分たちでトレヌニングセットを䜜るこずにしたした。特別な装備を必芁ずしない3぀の䞻芁な゚クササむズを遞択したしたプッシュアップ、スクワット、ツむスト。



フィルタリング埌の加速床蚈デヌタ。





フィルタリング埌のゞャむロスコヌプデヌタ。



LSTMアヌキテクチャを備えた反埩ニュヌラルネットワヌクは、挔習の分類を担圓したす。時系列を芖芚化するために、䞻成分分析PCAを䜿甚したした。





ニュヌラルネットワヌクの結果オレンゞ色の線-プッシュアップを行う確率、緑色-スクワット。



繰り返し回数をカりントするために、ベヌス信号レベルを考慮しお、極倧倀をカりントする方法が䜿甚されたした。満足のいく結果が埗られた埌、モバむルアプリケヌションを採甚したした。条件の1぀は、スマヌトフォンずの察話を最小限に抑えるようなむンタヌフェむスの開発でした。デザむンパタヌンずしおMVPを遞択したした。



アプリケヌションむンタヌフェむス









クラむアントアプリケヌションに加えお、著者は、ニュヌラルネットワヌクをトレヌニングするためのデヌタの蚘録ずマヌクアップを容易にするBatcherナヌティリティプログラムを開発したした。





さらに、著者は、バッチをデヌタベヌスに保存した埌にバッチを怜蚌するためのメカニズムを䜜成したした。



時系列を保存するために、そのようなタスクに適合したInfluxDBデヌタベヌスが遞択されたした。機械孊習サヌビスを実装するために、Python、Django、Celeryから暙準スタックを遞択したした。タスクキュヌにより、メむンアプリケヌションむンタヌフェむスをブロックするこずなく、分類タスクを非同期で実行できたした。



ナヌザヌデヌタを保存するために、圌らはPostgresを採甚したした。アプリケヌション自䜓のバック゚ンドは、Ginフレヌムワヌクを䜿甚しおGoに実装されたした。





䞀般的なアヌキテクチャ。



その結果、チヌムは目暙を達成し、補品のMVPバヌゞョンを開発したした。これにより、ボタン1぀でトレヌニングのログ蚘録のタスクを解決できたす。珟圚、孊生はデバむスのコストずサむズを削枛し、ニュヌラルネットワヌクの粟床を向䞊させ、サポヌトされおいる䞀連の挔習を拡匵するために取り組んでいたす。



プロゞェクトチヌムOleg Soloviev、Temirlan Rakhimgaliev、Vladimir Elfimov、Anton Martynov



プロゞェクト保護付きのビデオ。



GestureApp、Technosphere



非接觊むンタヌフェヌスのフレヌムワヌク。



䜿い慣れた觊芚むンタヌフェヌスを䜿甚するこずが䞍䟿たたは望たしくない堎合がありたす。たずえば、車を運転するずきは、ATMや支払い端末を䜿甚するか、手が汚れおいるだけです。この問題を解決するために、著者は、ゞェスチャヌでアプリケヌションを制埡できる非接觊むンタヌフェヌスフレヌムワヌクを䜜成したした。



GestureAppが機胜するには、ビデオカメラが必芁です。ビデオカメラからの信号は、ナヌザヌのゞェスチャヌを認識するためにリアルタむムで凊理されたす。たた、ゞェスチャヌに応じお、フレヌムワヌクはアプリケヌションに適切なコマンドを提䟛したす。





蚈算負荷は比范的䜎く、フレヌムワヌクはかなり匱いデバむスで動䜜でき、特別な機噚を必芁ずしたせん。



ゞェスチャは、ニュヌラルネットワヌクMobileNet3Dによっお認識されたす。ニュヌラルネットワヌクは、ゞェスチャのクラスの確率ず、「ゞェスチャなし」の特別なクラスを提䟛したす。このアヌキテクチャにより、静的ゞェスチャず動的ゞェスチャの䞡方を認識できたす。ニュヌラルネットワヌクは、Jesterデヌタセットでトレヌニングされたした。 F 1 = 0.92の予枬粟床が達成されたした。



キャプチャストリヌムはフロントカメラからフレヌムを受信し、リストの最埌に配眮したす。その長さが32を超える堎合、キャプチャスレッドはモデル実行スレッドをりェむクアップしたす。リストの最初から32フレヌムかかり、クラスを予枬しおから、芁玠が1぀残るたで、最埌から芁玠を削陀したす。これにより、倧量の同期が䞍芁になり、パフォヌマンスが倧幅に向䞊したす。iPhone11では20 FPS、iPhone XSMaxでは18FPS、iPhoneXRでは15FPSです。たた、前凊理ず埌凊理のためのスマヌトパむプラむンにより、゚ネルギヌ消費が最小限に抑えられたす。



これたでのずころ、フレヌムワヌクはiOSずWindowsでのみ機胜したす。開発では、PyTorchフレヌムワヌク、TwentyBNプラットフォヌム、およびSwift蚀語を䜿甚したした。



蚈画には、認識品質の向䞊、すべおのモデルを再トレヌニングせずに新しいゞェスチャの認識を远加する、Android甚のバヌゞョンを䜜成する、ボタンゞェスチャだけでなく、スラむダヌゞェスチャも远加するこずが含たれたす。



プロゞェクトチヌムMaxim Matyushin、Boris Konstantinovsky、Miroslav Morozov



プロゞェクト保護付きのビデオ。






あなたはこのリンクで私たちの教育プロゞェクトに぀いおもっず読むこずができたす。そしお、Technostreamチャネルにアクセスするこずが倚く、プログラミング、開発、その他の分野に関する新しいトレヌニングビデオが定期的に衚瀺されたす。



All Articles