ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ ΠΊΠΎΠ΄ для синтСза Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ нСйросСтСй

Π“Ρ€ΡƒΠΏΠΏΠ° исслСдоватСлСй ΠΈΠ· ΡˆΠ°Π½Ρ…Π°ΠΉΡΠΊΠΎΠ³ΠΎ тСхничСского унивСрситСта ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»Π° инструмСнтарий Impersonator, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² машинного обучСния ΡΠΈΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ двиТСния людСй ΠΏΠΎ статичСским изобраТСниям, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΎΠ΄Π΅ΠΆΠ΄Ρƒ, ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ΠΌΠ΅Π½ΡΡ‚ΡŒ ракурс с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π΅Π½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. Код написан Π½Π° языкС Python
с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° PyTorch. Для сборки Ρ‚Π°ΠΊΠΆΠ΅ трСбуСтся torchvision ΠΈ CUDA Toolkit.

ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ ΠΊΠΎΠ΄ для синтСза Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ нСйросСтСй

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ…ΠΎΠ΄Π΅ Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ синтСзируСт ΠΈΠ·ΠΌΠ΅Π½Ρ‘Π½Π½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π° основС Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ Ρ‚Ρ€ΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° трансформаций:
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ двиТущСгося ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰Π΅Π³ΠΎ двиТСния, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±Ρ‹Π»Π° ΠΎΠ±ΡƒΡ‡Π΅Π½Π° модСль. ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° элСмСнтов внСшнСго Π²ΠΈΠ΄Π° ΠΈΠ· ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, смСна ΠΎΠ΄Π΅ΠΆΠ΄Ρ‹). ГСнСрация Π½ΠΎΠ²ΠΎΠ³ΠΎ ракурса (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, синтСз изобраТСния Π² ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ Π½Π° основС Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ Π² анфас). ВсС Ρ‚Ρ€ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΈΠ΄Π΅ΠΎ, ΠΈΠΌΠΈΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ исполнСниС слоТного акробатичСского Ρ‚Ρ€ΡŽΠΊΠ° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΎΠ΄Π΅ΠΆΠ΄Π΅.

Π’ процСссС синтСза ΠΏΠΎΠΏΡƒΡ‚Π½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ выдСлСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π° Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ ΠΈ формирования Π½Π΅Π΄ΠΎΡΡ‚Π°ΡŽΡ‰ΠΈΡ… элСмСнтов Ρ„ΠΎΠ½Π° ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΈ. МодСль для Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π°Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²Π°Π½Π° ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΈ использована для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΉ. Для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ доступны Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ сразу ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ инструмСнтарий Π±Π΅Π· провСдСния ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚Ρ€Π΅Π½ΠΈΡ€ΠΎΠ²ΠΊΠΈ. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ трСбуСтся GPU с Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ памяти Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 8GB.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² трансформации, основанных Π½Π° трансформации ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌ, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΌ располоТСниС Ρ‚Π΅Π»Π° Π² Π΄Π²ΡƒΠΌΠ΅Ρ€Π½ΠΎΠΌ пространствС, Π² Impersonator прСдпринята ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° синтСза Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½ΠΎΠΉ сСтки (mesh) с описаниСм Ρ‚Π΅Π»Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ машинного обучСния.
ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ позволяСт ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ манипуляции с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ пСрсонализированной Ρ„ΠΎΡ€ΠΌΡ‹ Ρ‚Π΅Π»Π° ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·Ρ‹, модСлируя СстСствСнныС двиТСния конСчностСй.

ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ ΠΊΠΎΠ΄ для синтСза Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ нСйросСтСй

Для сохранСния исходной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ тСкстуры, ΡΡ‚ΠΈΠ»ΡŒ, Ρ†Π²Π΅Ρ‚Π° ΠΈ ΡƒΠ·Π½Π°Π²Π°Π΅ΠΌΠΎΡΡ‚ΡŒ Π»ΠΈΡ†Π°, Π² процСссС трансформации примСняСтся Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎ-ΡΠΎΡΡ‚ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ нСйронная ΡΠ΅Ρ‚ΡŒ (Liquid Warping GAN). Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎΠ± исходном ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ для Π΅Π³ΠΎ Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ извлСкаСтся ΠΏΡƒΡ‚Ρ‘ΠΌ примСнСния свёрточной Π½Π΅ΠΉΡ€ΠΎΠ½Π½ΠΎΠΉ сСти.


Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru