paint-brush
ການເພີ່ມຂໍ້ມູນໃບຫນ້າ - ສ່ວນທີ 1: ການຫັນປ່ຽນທາງເລຂາຄະນິດໂດຍ@ainur
282 ການອ່ານ

ການເພີ່ມຂໍ້ມູນໃບຫນ້າ - ສ່ວນທີ 1: ການຫັນປ່ຽນທາງເລຂາຄະນິດ

ໂດຍ Ainur Gainetdinov3m2024/10/27
Read on Terminal Reader

ຍາວເກີນໄປ; ອ່ານ

ການປະຕິບັດຂອງຕາຫນ່າງ neural ເລິກໄດ້ກ້າວໄປສູ່ບາດກ້າວອັນໃຫຍ່ຫຼວງໃນສອງທົດສະວັດທີ່ຜ່ານມາ. ທຸກໆປີ, ສະຖາປັດຕະຍະກໍາໃຫມ່ໄດ້ຖືກອອກແບບທີ່ເອົາຊະນະຜົນໄດ້ຮັບທີ່ທັນສະໄຫມ. ຢ່າງໃດກໍ່ຕາມ, ພຽງແຕ່ການປັບປຸງສະຖາປັດຕະຍະກໍາຈະບໍ່ເຮັດວຽກໂດຍບໍ່ມີຊຸດຂໍ້ມູນທີ່ມີຄຸນນະພາບ. ຊຸດຂໍ້ມູນມີຜົນກະທົບອັນໃຫຍ່ຫຼວງຕໍ່ການປະຕິບັດສຸດທ້າຍ. ການລວບລວມແລະການຕິດສະຫຼາກຊຸດຂໍ້ມູນທີ່ມີຄວາມຫຼາກຫຼາຍ, ຖືກຕ້ອງອາດຈະຫຍຸ້ງຍາກແລະມີລາຄາແພງ, ແລະຊຸດຂໍ້ມູນທີ່ມີຢູ່ໂດຍປົກກະຕິຈະບໍ່ກວມເອົາຄວາມຫລາກຫລາຍຂອງການແຈກຢາຍຂໍ້ມູນທີ່ແທ້ຈິງ, ດັ່ງນັ້ນເຕັກນິກການເພີ່ມຂໍ້ມູນແມ່ນຖືກນໍາໃຊ້.
featured image - ການເພີ່ມຂໍ້ມູນໃບຫນ້າ - ສ່ວນທີ 1: ການຫັນປ່ຽນທາງເລຂາຄະນິດ
Ainur Gainetdinov HackerNoon profile picture

ການປະຕິບັດຂອງຕາຫນ່າງ neural ເລິກໄດ້ກ້າວໄປສູ່ບາດກ້າວອັນໃຫຍ່ຫຼວງໃນສອງທົດສະວັດທີ່ຜ່ານມາ. ທຸກໆປີ, ສະຖາປັດຕະຍະກໍາໃຫມ່ໄດ້ຖືກອອກແບບທີ່ເອົາຊະນະຜົນໄດ້ຮັບທີ່ທັນສະໄຫມ. ຢ່າງໃດກໍ່ຕາມ, ພຽງແຕ່ການປັບປຸງສະຖາປັດຕະຍະກໍາຈະບໍ່ເຮັດວຽກໂດຍບໍ່ມີຊຸດຂໍ້ມູນທີ່ມີຄຸນນະພາບ. ຊຸດຂໍ້ມູນມີຜົນກະທົບອັນໃຫຍ່ຫຼວງຕໍ່ການປະຕິບັດສຸດທ້າຍ. ການລວບລວມແລະການຕິດສະຫຼາກຊຸດຂໍ້ມູນທີ່ມີຄວາມຫຼາກຫຼາຍ, ຖືກຕ້ອງອາດຈະຫຍຸ້ງຍາກແລະມີລາຄາແພງ, ແລະຊຸດຂໍ້ມູນທີ່ມີຢູ່ໂດຍປົກກະຕິບໍ່ໄດ້ກວມເອົາຄວາມຫລາກຫລາຍຂອງການແຈກຢາຍຂໍ້ມູນທີ່ແທ້ຈິງ, ດັ່ງນັ້ນເຕັກນິກການເພີ່ມຂໍ້ມູນແມ່ນຖືກນໍາໃຊ້.


ໃນບົດຄວາມນີ້, ຂ້າພະເຈົ້າຈະສະແດງວິທີການຊຸດຂໍ້ມູນຂອງໃບຫນ້າຂອງມະນຸດສາມາດອຸດົມສົມບູນໂດຍການຫັນເປັນເລຂາຄະນິດ 3D ເພື່ອປັບປຸງການປະຕິບັດຂອງຕົວແບບຂອງທ່ານ. ການປະຕິບັດລະຫັດແຫຼ່ງເປີດແມ່ນສະຫນອງໃຫ້ຂ້າງລຸ່ມນີ້[1].


ການເພີ່ມຂໍ້ມູນແມ່ນເຕັກນິກທີ່ເພີ່ມປະລິມານຂໍ້ມູນໂດຍການໃຊ້ການດັດແກ້ທີ່ແຕກຕ່າງກັນກັບຕົວຢ່າງ. ການຂະຫຍາຍຮູບພາບທົ່ວໄປສາມາດແບ່ງອອກເປັນສອງປະເພດ: ການຫັນເປັນເລຂາຄະນິດແລະການປ່ຽນສີ. ການຫັນປ່ຽນທາງເລຂາຄະນິດປະກອບດ້ວຍການປັບຂະ ໜາດ, ການຕັດ, ການພິກ, ການຫມຸນ, ການແປ, ແລະອື່ນໆ. ໃນຂະນະທີ່ການປ່ຽນສີປະກອບດ້ວຍການສັ່ນສະເທືອນສີ, ການເພີ່ມສິ່ງລົບກວນ, ການປັບຂະ ໜາດ ສີເທົາ, ການປັບຄວາມສະຫວ່າງ / ຄວາມຄົມຊັດ, ແລະອື່ນໆ.


ລອງຄິດເບິ່ງວ່າເຮົາຈະເພີ່ມຮູບແນວໃດຖ້າເຮົາຮູ້ວ່າມີໃບໜ້າຂອງມະນຸດ. ເຮົາ​ຈຳ​ແນກ​ຄົນ​ໜຶ່ງ​ຈາກ​ຄົນ​ອື່ນ​ໄດ້​ແນວ​ໃດ? ມີລັກສະນະຂອງໃບຫນ້າທີ່ປະກອບເປັນເອກະລັກ, ເຊັ່ນ: ສີຜິວ, ຮູບຊົງໃບຫນ້າ, ຕັດຜົມ, wrinkles, ສີຕາ, ແລະອື່ນໆ, ຫນຶ່ງໃນຄວາມແຕກຕ່າງທີ່ສຸດແມ່ນຮູບຮ່າງຂອງໃບຫນ້າ.


ດັ່ງນັ້ນ, ຖ້າພວກເຮົາປ່ຽນຮູບຮ່າງຂອງຮູບພາບໃບຫນ້າຂອງວັດສະດຸປ້ອນ, ມັນຈະເປັນບຸກຄົນທີ່ແຕກຕ່າງກັນເລັກນ້ອຍສໍາລັບຮູບແບບການຝຶກອົບຮົມ. ດັ່ງນັ້ນ, ໃຫ້ໃຊ້ຄຸນສົມບັດນີ້ເພື່ອເພີ່ມຊຸດຂໍ້ມູນຂອງພວກເຮົາ.


ພວກເຮົາຈະປ່ຽນແປງເລຂາຄະນິດຂອງໃບໜ້າໂດຍໃຊ້ຕົວແບບ 3D Morphable (3DMM), ໂດຍສະເພາະຮູບແບບ FLAME[2]. 3DMM ແມ່ນຕາຫນ່າງສາມມິຕິທີ່ມີພາລາມິເຕີເພື່ອຈັດການຮູບຮ່າງ, ທ່າທາງ, ແລະການສະແດງອອກຂອງມັນ. 3DMM ແມ່ນກໍ່ສ້າງຈາກຕາຫນ່າງສາມມິຕິທີ່ໄດ້ຮັບການລົງທະບຽນໂດຍຄົນທີ່ແທ້ຈິງ.


ດັ່ງນັ້ນ, ມັນສາມາດເປັນຕົວແທນການແຈກຢາຍຂອງຮູບຮ່າງຂອງໃບຫນ້າທີ່ແທ້ຈິງ. ພາຍໃຕ້ຜ້າຄຸມ, ມັນປະກອບດ້ວຍຮູບຮ່າງສະເລ່ຍແລະຊຸດຂອງອົງປະກອບຕົ້ນຕໍທີ່ລະບຸທິດທາງຂອງການປ່ຽນແປງສໍາລັບຮູບຮ່າງແລະການສະແດງອອກ. Alpha ແລະ beta ແມ່ນຕົວກໍານົດການຂອງຕົວແບບ.


ກ່ອນທີ່ຈະປ່ຽນຮູບຮ່າງຂອງໃບຫນ້າ, ພວກເຮົາຈໍາເປັນຕ້ອງຊອກຫາພາລາມິເຕີຂອງ 3DMM ທີ່ສອດຄ້ອງກັບຮູບພາບທີ່ເຂົ້າມາຂອງພວກເຮົາ. ມີຫຼາຍວິທີທີ່ຈະເຮັດແນວນັ້ນ, ເຊັ່ນ: ການເພີ່ມປະສິດທິພາບຂອງຈຸດຫມາຍ, ການເພີ່ມປະສິດທິພາບຮູບພາບ, ຫຼືຕົວແບບ regression ເພື່ອຄາດຄະເນພາລາມິເຕີໃນຂັ້ນຕອນດຽວ. ຂ້ອຍໃຊ້ການເພີ່ມປະສິດທິພາບຈຸດຫມາຍປາຍທາງ 2D ຍ້ອນວ່າມັນມີການປະຕິບັດທີ່ງ່າຍດາຍແລະໃຫ້ຜົນໄດ້ຮັບທີ່ຖືກຕ້ອງໃນເວລາທີ່ເຫມາະສົມ.


ສະຖານທີ່ສຳຄັນຂອງໃບໜ້າຖືກກວດພົບຢູ່ໃນຮູບທີ່ປ້ອນເຂົ້າດ້ວຍຮູບແບບການກວດຫາໃບໜ້າ Dlib. Adam optimization algorithm ຖືກນໍາໃຊ້ກັບການສູນເສຍ MSE ສໍາລັບຈຸດຫມາຍປາຍທາງທີ່ເຫມາະສົມກັບ 3DMM ເຂົ້າໄປໃນຮູບໃບຫນ້າ. ມັນໃຊ້ເວລາປະມານ 150 ຊ້ຳເພື່ອມາຮວມກັນ.


ໃນປັດຈຸບັນ, ພວກເຮົາພ້ອມທີ່ຈະດັດແປງເລຂາຄະນິດຂອງໃບຫນ້າ. ກ່ອນອື່ນ ໝົດ, ພວກເຮົາມີຕາຫນ່າງສາມມິຕິທີ່ສອດຄ່ອງກັບຮູບໃບຫນ້າຂອງພວກເຮົາ. ການວາງຕົວກໍານົດການຮູບຮ່າງຂອງ 3DMM ນໍາໄປສູ່ການປ່ຽນແປງຂອງເສັ້ນຕາຫນ່າງຈຸດໃນພື້ນທີ່ຮູບພາບ. ໂດຍຮູ້ວ່າການປ່ຽນ, ພວກເຮົາສາມາດໃຊ້ມັນເພື່ອຍ້າຍ pixels ຂອງຮູບພາບ.


ເພື່ອໃຫ້ໄດ້ຮັບແຜນທີ່ທີ່ຫນາແຫນ້ນຂອງການປ່ຽນແປງ, ຂ້າພະເຈົ້າໄດ້ໃຊ້ຫ້ອງສະຫມຸດ OpenGL, ບ່ອນທີ່ຂ້ອຍສະແດງຕາຫນ່າງ 3DMM ດ້ວຍການປ່ຽນທິດທາງ x ແລະ y ແທນທີ່ຈະເປັນສີ vertex. ມີສິ່ງຫນຶ່ງທີ່ຍັງເຫຼືອໃຫ້ພິຈາລະນາ, ວິທີການຈັດການກັບ pixels ທີ່ອອກຈາກພື້ນທີ່ຕາຫນ່າງໃບຫນ້າ.


ສໍາລັບຈຸດປະສົງນີ້, ຂ້າພະເຈົ້າໄດ້ນໍາໃຊ້ extrapolation, ເຊິ່ງເຊື່ອມຕໍ່ຢ່າງລຽບງ່າຍໃບຫນ້າທີ່ມີການປ່ຽນແປງທີ່ມີພື້ນຫລັງ static. ຕາບໃດທີ່ພວກເຮົາມີແຜນທີ່ການປ່ຽນແປງທີ່ຫນາແຫນ້ນສໍາລັບທິດທາງ x ແລະ y, ພວກເຮົາສາມາດນໍາໃຊ້ພວກມັນກັບປ້າຍປະເພດຕ່າງໆເຊັ່ນ: ຈຸດຫມາຍປາຍທາງໃບຫນ້າ, ຫນ້າກາກການແບ່ງສ່ວນ, ຫຼືຮູບພາບທີ່ຈັບຄູ່. ທ່ານສາມາດເບິ່ງຕົວຢ່າງຂອງການຂະຫຍາຍໃບຫນ້າດ້ວຍການຫັນເປັນເລຂາຄະນິດໃນຮູບຂ້າງລຸ່ມນີ້. ຖ້າທ່ານຕ້ອງການຮູ້ລາຍລະອຽດເພີ່ມເຕີມ, ຂ້າພະເຈົ້າເຊີນທ່ານໄປຫາລະຫັດແຫຼ່ງ[1].



ໃນປັດຈຸບັນ, ທ່ານສາມາດລອງມັນຢູ່ໃນຊຸດຂໍ້ມູນຂອງທ່ານ. ເຕັກນິກການຂະຫຍາຍນີ້ຈະຊ່ວຍໃຫ້ທ່ານປັບປຸງແບບຈໍາລອງເຮັດໃຫ້ມັນມີຄວາມຫມັ້ນຄົງຕໍ່ການປ່ຽນແປງຂອງວັດສະດຸປ້ອນ. ໃນບົດຄວາມນີ້, ພວກເຮົາໄດ້ຮຽນຮູ້ກ່ຽວກັບການຫັນເປັນເລຂາຄະນິດ 3D, ແຕ່ນອກຈາກນັ້ນ, ມີການດັດແກ້ໂຄງສ້າງທີ່ມີການປັບປຸງເພີ່ມເຕີມຂອງຊຸດຂໍ້ມູນໃບຫນ້າ, ເຊິ່ງໃນບົດຄວາມຕໍ່ໄປ.


ເອກະສານອ້າງອີງ

[1​] ລະ​ຫັດ GitHub​. https://github.com/ainur699/face_data_augmentation

[2] ຕົວແບບ FLAME. https://flame.is.tue.mpg.de/index.html