½üÄêÀ´£¬3D ¼ÆËã»úÊÓ¾õºÍÈ˹¤ÖÇÄÜÁ½¸öÁìÓò¶¼È¡µÃÁË·É¿ìµÄ·¢Õ¹£¬µ«¶þÕßÖ®¼äÈçºÎʵÏÖÓÐЧµÄ½áºÏ»¹Óкܳ¤µÄ·Ҫ×ß¡£»ùÓÚ´Ë£¬Ó¢Î°´ïÓÚ½ñÈÕÍƳöÁË Kaolin PyTorch ¿â£¬½èÖúÓÚÕâ¸ö¿â£¬Ö»Ð輸²½¼´¿É½« 3D Ä£ÐÍǨÒÆÖÁÉñ¾ÍøÂçµÄÓ¦Ó÷¶³ë¡£
´ËÍ⣬Kaolin ¿â»¹¿ÉÒÔ´ó´ó½µµÍΪÉî¶Èѧϰ׼±¸ 3D Ä£Ð͵Ť×÷Á¿£¬´úÂë¿ÉÓÉ 300 ÐÐÈñ¼õµ½½ö½ö 5 ÐС£
×÷Ϊһ¸öÖ¼ÔÚ¼ÓËÙ 3D Éî¶ÈѧϰÑо¿µÄ PyTorch ¿â£¬Kaolin ΪÓÃÓÚÉî¶ÈѧϰϵͳÖеĿÉ΢ 3D Ä£¿éÌṩÁ˸ßЧµÄʵÏÖ¡£Kaolin ²»½öÄܹ»¼ÓÔغÍÔ¤´¦ÀíÁ÷ÐÐµÄ 3D Êý¾Ý¼¯£¬¶øÇÒ¾ßÓвÙ×÷Íø¸ñ¡¢µãÔÆ¡¢·ûºÅ¾àÀ뺯ÊýºÍÌåËØÕ¤¸ñ£¨voxel grid£©µÄ±¾µØ¹¦ÄÜ£¬Òò¶ø¿ÉÒÔ¼õÉÙ±àд²»±ØÒªµÄÑù±¾´úÂë¡£
Kaolin ¿â°üº¬äÖȾ£¨rendering£©¡¢¸ß¹â£¨lighting£©¡¢°µÓ°£¨shading£©ºÍÊÓͼºÏ³É£¨view warping£©µÈ¼¸ÖÖ²»Í¬µÄͼÐÎÄ£¿é¡£´ËÍ⣬Kaolin ¿â»¹Ö§³ÖһϵÁÐÓÃÓÚÎÞ·ìÏνÓÆÀ¼Û£¨seamless evaluation£©µÄËðʧº¯ÊýºÍÆÀ¼Û¶ÈÁ¿£¬²¢Ìṩ¿ÉÊÓ»¯¹¦ÄÜÀ´äÖȾ 3D Ч¹û¡£ÖØÒªµÄÊÇ£¬Ó¢Î°´ï´´½¨ÁË°üº¬Öî¶àµ±Ç°×îÓÅ 3D Éî¶Èѧϰ¼Ü¹¹µÄ model zoo£¬´Ó¶ø×÷ΪδÀ´Ñо¿µÄÆðµã¡£
´ËÀ๤¾ß¿ÉÒÔʹµÃ»úÆ÷ÈË¡¢×Ô¶¯¼ÝÊ»¡¢Ò½Ñ§³ÉÏñºÍÐéÄâÏÖʵµÈÖî¶àÁìÓòµÄÑо¿Õß»ñÒæ¡£Ëæ×ÅÈËÃÇ¶Ô 3D Ä£Ð͵ÄÐËȤÈÕÒæ¸ßÕÇ£¬Ó¢Î°´ïµÄ Kaolin ¿â¿ÉÒÔÔÚ¸ÃÁìÓò²úÉúÖØ´óÓ°Ïì¡£ÔÚÏß´æ´¢¿â£¨repo£©ÏÖÒÑÓµÓкܶà 3D Êý¾Ý¼¯£¬ÕâÔÚÒ»¶¨³Ì¶ÈÉϵÃÒæÓÚÊÀ½ç¸÷µØËùʹÓõġ¢Äܹ»²¶»ñ 3D ͼÏñµÄÔ¼ 3000 Íò¸öÉî¶ÈÉãÏñÍ·¡£
GitHub µØÖ·£ºhttps://github.com/NVIDIAGameWorks/kaolin/
ÄÇô Kaolin ¿âµÄ¾ßÌåչʾЧ¹ûÊÇÔõÑùµÄÄØ£¿Ó¢Î°´ï¸ø³öÁËÒÔϼ¸¸öʵ¼ÊÓ¦ÓÃʾÀý£º
ÔÚ 3D ³¡¾°ÖУ¬Í¨¹ý·ÖÀ๦ÄÜÀ´Ê¶±ð¶ÔÏó£¨Í¼ÖÐʶ±ð³öÁËÒÎ×Ó£©
3D ×é¼þ·Ö¸î¹¦ÄÜ¿ÉÒÔ×Ô¶¯Ê¶±ð 3D Ä£Ð͵IJ»Í¬×é¼þ£¬ÕâʹµÃ¡¸×°±¸¡¹¶¯»½ÇÉ«»ò×Ô¶¨ÒåÄ£ÐÍÒÔÉú³É¶ÔÏó±äÌå¸ü¼ÓÈÝÒ×£¨Í¼×óµÄ 3D Ä£ÐÍÔÚͼÓÒ´©ÉÏÁËÒ·þ¡¢Ð¬×ӵȣ©
ͼÏñµ½ 3D£¨Image to 3D£©¹¦ÄÜ¿ÉÒÔ¸ù¾ÝѵÁ·µÄÉñ¾ÍøÂçʶ±ð³öµÄͼÏñÀ´¹¹½¨ 3D Ä£ÐÍ£¨Í¼ÓÒÉú³ÉÁËÒÎ× 3D Ä£ÐÍ£©
Ä¿Ç°£¬Ó¢Î°´ïÍƳöµÄ beta °æ Kaolin ¿â°üº¬¼¸Ïî´¦Àí¹¦ÄÜ£¬ÓÃÓÚÍø¸ñ¡¢ÌåËØ¡¢·ûºÅ¾àÀ뺯ÊýºÍµãÔÆÉ쵀 3D Éî¶Èѧϰ¡£¼ÓÔصļ¸¸öÁ÷ÐеÄÊý¾Ý¼¯£¨Èç ShapeNet¡¢ModelNet ºÍ SHREC£©Ö§³Ö¿ªÏä¼´ÓᣴËÍ⣬Ӣΰ´ï»¹ÊµÏÖÁ˼¸ÖÖ 3D ǨÒƺÍת»»²Ù×÷¡£
Kaolin ¿âÖ§³ÖµÄ 3D ÈÎÎñÈçÏ£º
Ö§³ÖµÄƽ̨
Kaolin ÒѾ»ñµÃÁË Linux ƽ̨µÄ¹Ù·½Ö§³Ö£¬²¢ÒÑÔÚ Ubuntu 18 ÉϽøÐй¹½¨ºÍ²âÊÔ¡£Windows ºÍ Mac ƽ̨ÉÏÒ²Ó¦¿¼ÂÇÕ¹¿ªÊÔÑéÐÔµÄÖ§³Ö¡£
°²×°²½Öè
Ӣΰ´ïÍƼöÓû§ÔÚÐéÄâ»·¾³Öа²×° Kaolin ¿â£¨ÈçÀûÓà conda »ò virtualenv ´´½¨µÄÐéÄâ»·¾³£©¡£Kaolin ÒªÇó Python °æ±¾ÔÚ 3.6 ÒÔÉÏ£¬²¢ÇÒÄ¿Ç°ÔÚ¹¹½¨Ê±ÐèÒªÆôÓà CUDA µÄ»úÆ÷£¨¼´ÐèÒª°²×° nvcc£©¡£
Ê×ÏÈ´´½¨Ò»¸öÐéÄâ»·¾³¡£ÏÂÀýչʾÁËÈçºÎΪ´´½¨°²×° Kaolin ¿âËùÐèÒªµÄ conda ÐéÄâ»·¾³£º
$?conda?create?--name?kaolin?python=3.6?$?conda?activate?kaolin??
½Ó×Å°²×°Ïà¹ØÒÀÀµ£¨numpy ºÍ torch£©¡£×¢Ò⣬ÉèÖÃÎļþ²¢²»ÄÜ×Ô¶¯°²×°ÕâÁ½ÖÖÒÀÀµ¡£
conda?install?numpy?
È»ºó°²×° Pytorch£¬ÕâÑù¾Í¿ÉÒÔ°²×° Kaolin ¿âÁË¡£×îºó¸ù¾Ý repo µÄ¸ùĿ¼£¨¼´°üº¬ README ÎļþµÄĿ¼£©£¬ÔËÐУº
$?python?setup.py?install?
ÔÚ°²×°¹ý³ÌÖУ¬packman °ü¹ÜÀíÆ÷½« nv-usd °üÏÂÔص½~/packman-repo/ÖУ¬ºóÕß°üº¬ÔĶÁºÍ±àдͨÓó¡¾°ÃèÊö£¨Universal Scene Description,USD£©ÎļþµÄ±ØÒª°ü¡£
ÑéÖ¤°²×°
ΪÁËÑéÖ¤ÊÇ·ñ°²×°Íê³É Kaolin ¿â£¬Óû§¿ÉÒÔÆô¶¯ python ½âÊÍÆ÷£¬²¢Ö´ÐÐÒÔÏÂÃüÁ
>>>import?kaolin?as?kal>>>?print(kal.__version)?
´´½¨Îĵµ
ΪÉîÈëÑо¿ Kaolin ¿â£¬Óû§¿ÉÒÔ´´½¨Îĵµ¡£¸ù¾Ý repo µÄ¸ùĿ¼£¨¼´°üº¬ README ÎļþµÄĿ¼£©£¬Ö´ÐÐÒÔÏÂÃüÁ
$?cd?docs?$?sphinx-build?.?_build?
ÔËÐе¥Ôª²âÊÔ
ΪÔËÐе¥Ôª²âÊÔ£¬Óû§¿É¸ù¾Ý repo µÄ¸ùĿ¼£¨¼´°üº¬ README ÎļþµÄĿ¼£©Ö´ÐÐÒÔÏÂÃüÁ
$?pytest?tests/?
repo£ºÖ§³ÖµÄ 3D ×ʲú±íÕ÷°üÀ¨Èý½ÇÍø¸ñ¡¢ËıßÐÎÍø¸ñ¡¢ÌåËØÕ¤¸ñ¡¢µãÔƺͷûºÅ¾àÀ뺯Êý£»
ת»»£ºÖ§³ÖËùÓÐÁ÷ÐÐ 3D ±íÕ÷µÄת»»£» ʵÏÖµÄÄ£ÐÍ°üÀ¨£º
ͼÐΣº¿âΪ¹¹½¨¿É΢äÖȾÆ÷ÌṩÁËÁé»îµÄÄ£¿é»¯¿ò¼Ü£¬Ê¹µÃµ¥¸ö×é¼þÒ×ÓÚʵÏÖÌæ»»¡£´ËÍ⣬Kaolin ¿â»¹ÌṩÁËÒÔÏ¿É΢äÖȾÆ÷µÄʵÏÖ£º
DIB-R (https://arxiv.org/abs/1908.01210)
SoftRas (https://arxiv.org/abs/1904.01786)
Neural 3D Mesh Renderer (https://arxiv.org/abs/1711.07566)
¶ÈÁ¿£ºÊµÏֵĶÈÁ¿ºÍËðʧº¯ÊýÈçÏ£º
Mesh: Triangle Distance, Chamfer Distance, Edge Length regularization, Laplacian regularization, Point to Surface distance, Normal consistency
Point Cloud: Sided Distance, Chamfer Distance, Directed Distance
Voxel Grid: Intersection Over Union (3D IoU), F-Score
ÁìȡרÊô 10ÔªÎÞÃż÷ȯ
˽Ïí×îР¼¼Êõ¸É»õ