

0
0
ARToolkitÊÇÒ»¿îרÃÅΪÓû§´òÔìµÄ¿ªÔ´sdk¹¤¾ß©§£¬²ÉÓÃc/c++±àд©§£¬°ïÖú¿ª·¢Õß¿ìËÙÔöÇ¿ÏÖʵ¸Ð£¬·½±ã¿ì½Ý©§£¬ÓÐÐèÒªµÄÅóÓÑÃÇǧÍò±ð´í¹ý.
ҪʹÓà ARToolKit ¿ª·¢Ó¦ÓÃÓÐÁ½¸ö²¿·Ö£º±àдӦÓóÌÐò©§£¬ÒÔ¼°ÑµÁ·¶ÔÔöÇ¿ÏÖʵӦÓÃÖÐËùÓõ½µÄÕæÊµÊÀ½ç±êÖ¾µÄͼÏñ´¦ÀíÀý³Ì¡£
ʹÓà ARToolKit ±àдӦÓÃÊǺܼòµ¥µÄ£ºÐ½¨Ò»¸ö AR Ó¦ÓÃÐèÒªÒ»¸ö¼òµ¥µÄ¿ò¼Ü©§¡£ÎÒÃÇÔÚÕâ¸ö¿ò¼ÜµÄ»ù´¡ÉϱàдеÄÓ¦Óé§¡£Í¬ÑùµØ£¬ÒòΪӦÓÃÕâ¸ö¼òµ¥µÄ¿ò¼Ü©§£¬ÑµÁ·Ä£°åµÄ¹ý³ÌÒ²±»¼ò»¯©§¡£
Ò»¸öÓ¦ÓóÌÐòµÄÖ÷´úÂë±ØÐë°üº¬ÒÔϲ½Ö裺

µÚ¶þ²½µ½µÚÎå²½Ò»Ö±ÖØ¸´£¬Ö±µ½Ó¦ÓóÌÐòÍ˳ö©§¡£µ«ÊDz½ÖèÒ»ºÍ²½ÖèÁùÖ»·Ö±ðÔÚÓ¦ÓóÌÐòµÄ³õʼ»¯Ê±ºÍ¹Ø±Õʱ²ÅÖ´ÐЩ§¡£³ýÁËÕâЩ²½ÖèÖ®Í⣬һ¸öÓ¦ÓóÌÐò»¹Ó¦¸Ã¶ÔÊó±ê|¡¢¼üÅÌ»òÕ߯äËûµÄÌØÊâʼþÏìÓ¦|¡£
Ö÷Òª¹ý³Ì£ºIntroduction main init mainLoop draw cleanup
ΪÁËÏêϸµØÊ¾·¶ÔõôÑù¿ª·¢Ò»¸ö ARToolKit µÄÓ¦Óã¬ÎÒÃǽ«Ò»²½²½µØ½éÉÜÒ»¸öÏÖÓеÄÀý³ÌµÄÔ´´úÂ룺simpleTest£¨»òÕßÔÚÓеİ汾ÀïÊÇ simple£©|¡|£¿ÉÒÔÔÚĿ¼ examples/simple/ÀïÕÒµ½Õâ¸ö³ÌÐò|¡£

³ÌÐò simpleTest
ÎÒÃÇÒªÕÒµÄÎļþÃû×ÖÊÇ simpleTest.c (»òÕß simple.c )¡£Õâ¸ö³ÌÐò½ö½ö°üº¬ÁËÒ»¸öÖ÷º¯ÊýºÍ¼¸¸ö»æÖÆÍ¼ÏñµÄº¯Êý|¡£
ÏàÓ¦ÓÚÉϽڽéÉܵÄÁù¸öÓ¦Óò½ÖèµÄº¯ÊýÁгöÔÚ±í 1 ÖÐ|¡£ÏàÓ¦ÓÚ²½Öè¶þµ½²½ÖèÎåµÄº¯ÊýÔÚ mainLoop º¯Êý£¨Ö÷Ñ»·£©Öб»µ÷Óá£

±í¸ñ 1£ºÏàÓ¦ÓÚ ARToolKit Ó¦ÓóÌÐò²½ÖèµÄº¯Êýµ÷ÓúʹúÂë
ÔÚÕâ¸ö³ÌÐòÖÐ|£¬×îÖØÒªµÄº¯ÊýÊÇ main ,init , mainloop ,draw ºÍ cleanup|¡£ÔÚ±¾½ÚµÄÆäËû²¿·ÖÎÒÃǽ«ÏêϸµØ½âÊÍÕâЩº¯Êýµ÷Óá£
main
Simple Àý³ÌÖÐ main º¯ÊýµÄÁ÷³ÌÈçÏÂËùʾ£º

ÆäÖеijõʼ»¯Àý³Ì init °üº¬µÄ´úÂë¿ÉÒÔ³õʼ»¯ÊÓÆµ²¶×½|£¬¶ÁÈ¡±êʶ¿¨ÐÅÏ¢ºÍÉãÏñ»ú²ÎÊýÐÅÏ¢|£¬ÒÔ¼°ÉèÖÃͼÏñ´°¿Ú¡£ÕâÏà¶ÔÓÚ¡¶¿ª·¢ÔÔò¡·ÖеĵÚÒ»²½|¡£½ÓÏÂÀ´|£¬ÎÒÃÇͨ¹ýµ÷ÓÃÊÓÆµ¿ªÊ¼º¯Êý arVideoCapStart ÊäÈëʵʱ״̬¡£ÔÙ½Ó×Å|£¬º¯Êý argMainLoop ±»µ÷ÓÃ|£¬Õâ¸öº¯ÊýÆô¶¯ÁËÖ÷ÒªµÄ³ÌÐòÑ»·£¬Í¨¹ý¼üÅÌʼþÓ뺯Êý keyEvent ½áºÏʹÓÃ|£¬Í¨¹ýÖ÷ÒªµÄͼÏñÏÔʾѻ·Óë mainLoop ½áºÏʹÓÃ|¡£º¯Êý argMainLoop µÄ¶¨ÒåÔÚÎļþ ggsub.c ÖС£
init
init Àý³ÌÔÚ main Àý³ÌÖб»µ÷ÓÃ|£¬ËüµÄ×÷ÓÃÊdzõʼ»¯ÊÓÆµ²¶×½ÒÔ¼°¶ÁÈë ARToolKit Ó¦Óõijõʼ²ÎÊýÐÅÏ¢|¡£
Ê×ÏÈ£¬ÊÓÆµÍ¨µÀ±»´ò¿ª¡¬£¬È·¶¨ÊÓÆµÍ¼Ïñ´óС¬¡£º

±äÁ¿ vconf °üº¬Á˳õʼÊÓÆµµÄÅäÖã¬ÔÚ simple.c µÄ¶¥²¿±»¶¨Ò塬¡£µ«ËüµÄÄÚÈÝÔÚÄãµÄƽ̨µÄº¯ÊýÀï¿ÉÄܺܲ»Ò»Ñù£º²ÎÕÕÊÓÆµÅäÖÃÁ´½Ó¡¬¡£¶ÔÓÚÿһ¸öƽ̨£¬¶¼¶¨ÒåÁËÒ»¸öĬÈϵÄ×Ö·û´®¡¬£¬Õâ¸ö×Ö·û´®Ò»°ã¶¼´ò¿ªÄãµÄÓ¦ÓóÌÐò½á¹¹ÖеÚÒ»¸ö¿ÉÓõÄÊÓÆµÁ÷¡¬¡£
È»ºó£¬ÎÒÃÇÐèÒª³õʼ»¯ ARToolKit Ó¦ÓóÌÐòµÄ²ÎÊý¡¬¡£¶ÔÓÚ ARToolKit Ó¦ÓóÌÐòÀ´Ëµ¡¬£¬¹Ø¼üµÄ²ÎÊýÊÇ£º
¡ñ ¿ÉÄܱ»ÓÃÀ´½øÐÐÄ£°åģʽƥÅäµÄÄ£°åÐÅÏ¢£¬ÒÔ¼°ÕâЩģ°åËø¶ÔÓ¦µÄÐéÄâÎïÌ塬¡£
¡ñ ËùÓõÄÊÓÆµÉãÏñ»úµÄÏà»úÌØÐÔ²ÎÊý¡¬¡£
ÕâЩ¶¼ÊÇ´ÓÎļþÀï¶ÁÈ¡£¬ÕâЩÎļþµÄÃû×Ö¿ÉÒÔÔÚÃüÁîÐÐÀï±»Ö¸¶¨£¬»òʹÓÃÓ²¼þ±àÂëµÄÎļþµÄĬÈÏÃû³Æ¡¬¡£
Òò´Ë¡¬£¬ÉãÏñ»úµÄ²ÎÊýÐÅϢͨ¹ýĬÈϵÄÉãÏñ»ú²ÎÊýÎļþÃû Data/camera_para.dat ±»¶ÁÈ룺

½ÓÏÂÀ´£¬ÕâЩ²ÎÊý¸ù¾ÝÏÖÓеÄͼÏñ´óС±»×ª»»¡¬£¬ÒòΪÉãÏñ»úµÄ²ÎÊý¸ù¾ÝͼÏñµÄ´óС¶ø¸Ä±ä¡¬£¬ÉõÖÁÊÇʹÓÃÏàͬµÄÉãÏñ»ú¡£

ÉãÏñ»úµÄ²ÎÊý±»¶ÁÈëËüµÄ³ÌÐòÉèÖᬣ¬ÉãÏñ»úµÄ²ÎÊý±»Êä³öÏÔʾµ½ÆÁÄ»ÉÏ£º

ÕâÑùÖ®ºóÎÒÃÇͨ¹ýĬÈϵÄÄ£°åÎļþ Data/patt.hiro ¶ÁÈëÄ£°åµÄ¶¨ÒåÐÅÏ¢£º

ÆäÖÐ patt_id ÊÇÒ»¸öÒѾ±»Ê¶±ðµÄÄ£°åµÄ¼ø¶¨ÐÅÏ¢£¨¸æËßÎÒÃÇÊÇÄÄÒ»¸öÄ£°å¡¬£¬Ï൱ÓÚÈËÀàµÄÉí·ÝÖ¤£©¡£
×îÖÕ´ò¿ªÁËͼÏñ´°¿Ú£º

º¯Êý arginit µÄµÚ¶þ¸ö²ÎÊý¶¨ÒåÁËÒ»¸öËõ·Åº¯Êý¡¬£¬ÊÊÓ¦ÊÓÆµÍ¼Ïñ¸ñʽʱµÄÖµÉèΪ 1.0¡¬£¬ÖµÉèΪ 2.0 ʱÊÇË«±¶´óС£¨±ÈÈç˵¡¬£¬ÊäÈë 320*240 ͼÏñ¡þ£¬Êä³öΪ VGA AR ¸ñʽ£©¡£
mainloop
ARToolKit Ó¦ÓóÌÐòµÄ´ó²¿·Öµ÷Óö¼ÔÚÕâ¸öÀý³ÌÀïÍê³É¡þ£¬Õâ¸öÀý³Ì°üº¬ÁËÏà¶ÔÓÚ¡¶¿ª·¢ÔÔò¡·ÖÐËùÒªÇóµÄ²½Öè¶þµ½²½ÖèÎå¡£Ê×ÏÈͨ¹ýº¯Êý arVideoGetImage À´²¶×½Ò»¸öÊäÈëÊÓÆµÖ¡þ¡£º

¸ÃÊÓÆµÍ¼ÏñÁ¢¼´±»Êä³öÏÔʾµ½ÆÁÄ»ÉÏ¡þ¡£Õâ¸öͼÏñ¿ÉÒÔÊÇÒ»·ùûÓб»Å¤ÇúµÄͼÏñ£¬Ò²¿ÉÒÔÊÇÒ»·ù¸ù¾ÝÉãÏñÍ·µÄÊ§ÕæÐÅÏ¢±»Å¤ÇúÐÞÕý¡þ¡£Å¤ÇúÒÔÐÞÕýͼÏñ¿ÉÒÔÉú³É¸ü¼ÓÕý³£µÄͼÏñ¡þ£¬µ«ÊÇ¿ÉÄܻᵼÖÂÊÓÆµÖ¡µÄËÙÂÊÃ÷ÏÔ½µµÍ¡£ÔÚÏÂÀýÖÐͼÏñÊÇÒѾ±»Å¤ÇúµÄ£º

½Óן¯Êý arDetectMarker ±»Ê¹ÓÃÒÔËÑË÷Õû¸öͼÏñÀ´Ñ°ÕÒº¬ÓÐÕýÈ·µÄ±êʶģ°åµÄ·½¿é£º

ÕÒµ½µÄ±êʶ¿¨µÄÊýÁ¿±»´æ·ÅÔÚ±äÁ¿ marker_num Àï¡þ£¬Í¬Ê± marker_info ÊÇÒ»¸öÖ¸ÏòÒ»ÁÐzʶ½á¹¹ÌåµÄÖ¸Õë¡þ£¬Õâ¸ö½á¹¹Ìå°üº¬ÁË×ø±êÐÅÏ¢£¬Ê¶±ð¿ÉÐŶȡþ£¬ÒÔ¼°Ã¿¸ö±êʶ¶ÔÓ¦µÄ¼ø¶¨ÐÅÏ¢ºÍÎïÌå¡þ¡£marker_info µÄÏêϸÐÅÏ¢ÔÚ API documentation ÖС£
´Ëʱ¡þ£¬ÊÓÆµÍ¼ÏñÒѾ±»ÏÔʾºÍ·ÖÎöÁË¡þ¡£ËùÒÔÎÒÃDz»ÐèÒªÔÙʹÓÃËü£ºÎÒÃÇ¿ÉÒÔÔÚʹÓÃеĺ¯ÊýµÄͬʱʹÓÃÖ¡²¶×½Æ÷À´Æô¶¯Ò»¸öеÄÖ¡²¶×½²Ù×÷¡£Íê³ÉÕâЩ¹¤×÷¡þ£¬ÄãÖ»ÐèÒªµ÷Óú¯Êý arVideoCapNext£º

±¸×¢£ºµ±Äãµ÷ÓÃÕâ¸öº¯Êýʱ¡þ£¬Ê¹ÓÃÉÏÒ»¸öÊÓÆµÍ¼Ïñ»º³å»áµ¼Ö»µµÄ½á¹û£¨¸ù¾ÝÄãµÄÓ¦ÓóÌÐòƽ̨¶ø¶¨£©¡£È·±£ÄãÒѾ´¦ÀíºÃÁËÊÓÆµÍ¼Ïñ»º³å¡þ¡£
½ÓÏÂÀ´¡þ£¬ËùÓеÄÒѾ̽²âµ½µÄ±êʶµÄ¿ÉÐŶÈÐÅÏ¢±»¼ÓÒԱȽϣ¬×îÖÕÈ·¶¨ÕýÈ·µÄ±êʶ¼ø¶¨ÐÅϢΪ¿ÉÐŶÈ×î¸ßµÄ±êʶµÄ¼ø¶¨ÐÅÏ¢£º

±êʶ¿¨ºÍÉãÏñ»úÖ®¼äµÄ×ªÒÆÐÅÏ¢¿ÉÒÔͨ¹ýʹÓú¯Êý arGetTransMat À´»ñÈ¡£º

Ïà¶ÔÓÚ±êʶÎïÌå i µÄÕæÊµµÄÉãÏñ»úµÄλÖúÍ×Ë̬°üº¬ÔÚÒ»¸ö 3*4 µÄ¾ØÕó patt_trans ÖСþ¡£
×îºó¡þ£¬Ê¹ÓûæÍ¼º¯Êý£¬ÐéÄâÎïÌå¿ÉÒÔ±»µþ¼ÓÔÚ±êʶ¿¨ÉÏ£º

±¸×¢£ºÈç¹ûûÓбêʶ±»ÕÒµ½£¨k==-1£©£¬Ó¦ÓóÌÐò»á×öÒ»¸ö¼òµ¥µÄÓÅ»¯²½Ö裬ÎÒÃÇ¿ÉÒÔ½»»»»º³åÆ÷¶ø²»ÐèÒªµ÷Óú¯Êý draw£¬È»ºó·µ»Ø£º

draw
º¯Êý draw ·ÖΪÏÔʾ»·¾³³õÊÔ»¯£¬ÉèÖþØÕó£¬ÏÔʾÎïÌ弸¸ö²¿·Ö¡£Äã¿ÉÒÔʹÓà ARToolKitÏÔʾһ¸öÈýάÎïÌå²¢ÉèÖÃ×îСµÄ OpenGL ״̬À´³õʼ»¯Ò»¸ö 3D ÏÔʾ£º

ÔÚÕâÖ®ºóÄãÐèÒªÕâ¸ö°Ñ×ªÒÆ¾ØÕó£¨3*4 µÄ¾ØÕó£©×ª»¯³É OpenGL ÊÊÓõĸñʽ£¨16 ¸öÖµµÄÏòÁ¿£©£¬¿ÉÓú¯Êý argConvGlpara À´Íê³É´Ë¹¦ÄÜ¡£ÕâÊ®Áù¸öÖµÊÇÕæÊµÊÀ½çµÄÉãÏñ»úµÄλÖúÍ×Ë̬ÐÅÏ¢£¬Òò´ËÀûÓÃÕâЩÐÅÏ¢¿ÉÒÔÉèÖÃÐéÄâÊÀ½çÉãÏñ»úµÄλÖã¬Òò´ËÈκεÄͼÐÎÎïÌå¶¼¿ÉÒÔ±»×¼È·µØ·ÅÖÃÔÚÏàÓ¦µÄÕæÊµ±êʶ¿¨ÉÏ¡£

ÐéÄâÊÀ½çµÄÉãÏñ»úµÄλÖÃÊÇÓú¯Êý glLoadMatrixd(gl_para)À´ÉèÖõġ£´úÂëµÄ×îºóÊÇÈýάÎïÌåµÄÏÔʾ¡£ÔÚÕâ¸öÀý×ÓÖУ¬ÏÔʾµÄÊǰ×É«¹âÊøÏÂÊÇÒ»¸öÀ¶É«Á¢·½Ì壺

ÔÚ×îºó£¬ÄãÒªÖØÖÃijЩ OpenGL µÄ²ÎÊýΪĬÈÏÖµ£º

ÉÏÊöËù½²µ½µÄ²½Öè³öÏÖ²¢¹á´©ÁËÖ÷ÒªÏÔʾº¯ÊýµÄʼÖÕ£¬µ±Õâ¸ö³ÌÐòÔÚÔËÐÐʱ£¬Êó±êʼþ±»Êó±êʼþº¯Êý¿ØÖÆ£¬¼üÅÌʼþ±»¼üÅ̺¯Êý¿ØÖÆ¡£
cleanup
º¯Êý cleanup ±»µ÷ÓõÄ×÷ÓõÄÍ£Ö¹ÊÓÆµ´¦ÀíÒÔ¼°¹Ø±ÕÊÓÆµÂ·¾¶²¢ÊÍ·ÅËüʹÆäËûµÄÓ¦ÓÿÉÒÔʹÓãº

ÕâЩ¹¤×÷¿ÉÒÔʹÓú¯Êý arVideoCapStop, arVideoClose ºÍ argCleanup À´Íê³É¡£
Äã¿ÉÒÔ±àÒëÕâ¸ö³ÌÐò²¢ÔËÐÐËü£¡
Õâ¸ö³ÌÐòµÄÒ»¸öÏÞÖÆµÄ£¬ËüֻʹÓÃÄ£°å Hiro£ºÊ¹ÓÃÆäËû¶à¸öÄ£°åÊǺÜÓÐȤµÄ£¡ÎÒÃǽ«ÔÚÏÂÒ»½Ú½éÉÜÔõôÑùʹÓÃÆäËûÄ£°å¡£
ʹÓÃÆäËûµÄÄ£°å
³ÌÐò simpletest ʹÓÃÄ£°åÆ¥Åä·¨À´Ê¶±ð±êʶ·½¿òÖÐµÄ Hiro ×ÖÑù¡£ÊäÈëÊÓÆµÁ÷Öеķ½¿é±»ÏµÍ³Óë֮ǰѵÁ·¹ýµÄÄ£°åÏà±È½Ï¡£ÕâЩģ°åÔÚÔËÐÐʱ±»¼ÓÔØ£¬°üº¬ÔÚ bin Ŀ¼ÏµÄÃûΪdata µÄĿ¼Ï¡£ÕâÕâ¸öĿ¼Ï£¬ÎÒÃÇÕÒµ½ÁËÉÏ´ÎÓ¦ÓóÌÐòËùÓõ½µÄÎļþ£¬±ÈÈç˵£¬Ãû×ÖΪpatt.hiro¡£Õâ¸öÎļþ°üº¬ÁËÄ£°åµÄ¸ñʽ£¬½ö½öÊÇÒ»¸öÑù±¾Í¼°¸¡£
ΪÁ˸ıä simpletest ÖÐʶ±ðµÄÄ£°å£¬ÄãÐèÒª¸Ä¶¯ÄãµÄ´úÂ룬´´ÔìÒ»¸öеÄÄ£°åÎļþ¡£
Äã¿ÉÒÔͨ¹ý¸Ä±ä¼ÐÔÚÎļþ¼ÐÃû×ÖÀ´ÐÞ¸Ä simpletest.c Îļþ£¬½«£º

¸ÄΪ£º

Õâ¶Î³ÌÐòÉú³ÉµÄеÄÄ£°åÎļþÃûΪ mk_patt£¬°üº¬ÔÚ bin Ŀ¼Ï¡£mk_patt µÄÔ´´úÂëÔÚutil Ŀ¼ÏµÄÎļþ mk_patt.c Àï¡£
Òª´´½¨Ò»¸öеÄÄ£°å£¬Ê×ÏÈÓ¦´òÓ¡Ä£°åĿ¼Ï嵀 blznkpatt.c Îļþ¡£ÕâÖ»ÊÇÒ»¸öºÚ·½¿é£¬ÖмäÊǿյİ×É«·½¿é¡£½Ó×ÅΪÐèÒªµÄÄ£°å´´½¨Ò»¸öºÚ°×»òÕß²ÊÉ«µÄ¡¢ÊʺÏÕâ¸öÖÐÐĵķ½¿éµÄͼÏñ£¬²¢°ÑËü´òÓ¡³öÀ´¡£ºÃµÄÄ£°åÓ¦¸ÃÊDz»¶Ô³Æ£¬¶øÇÒûÓкÜϸ΢µÄϸ½ÚµÄÄ£°å¡£Í¼ 1չʾÁËÒ»ÏÂÑù±¾Ä£°å¡£½«×öºÃµÄÐÂÄ£°åÕ³ÔÚºÚ·½¿éÀï¡£

ͼ 1 Ñù±¾Ä£°å
Ò»µ©ÐµÄÄ£°åÖÆ×÷Íê±Ï£¬¸Ä±ä bin Ŀ¼£¬ÔËÐÐ mk_patt ³ÌÐò£¨½öÔÚ¿ØÖÆÌ¨Ä£Ê½Ï£©¡£ÏµÍ³»áÌáʾÄãÊäÈëÒ»¸öÉãÏñ»úµÄ²ÎÊýÎļþ¼ÐÃû×Ö¡£ÊäÈëÎļþ¼ÐÃû£ºcamera_para.dat¡£ÕâÊÇĬÈϵÄÉãÏñ»úµÄ²ÎÊýÎļþ¡£

Õâ¶Î³ÌÐò½Ó×Å»á´ò¿ªÒ»¸öÊÓÆµ´°¿Ú£¬Èçͼ 2 Ëùʾ£º

ͼ 2 mk_patt ÊÓÆµ´°¿Ú
°ÑҪѵÁ·µÄÄ£°å·ÅÔÚÒ»¸öƽµÄ±íÃæÉÏ£¬¹âÕÕÌõ¼þÓ¦ºÍÔËÐÐʶ±ðÓ¦ÓóÌÐòʱµÄ¹âÕÕÌõ¼þÏàͬ¡£È»ºó°ÑÊÓÆµÉãÏñÍ·ÄÃÆðÔÚ±êʶµÄÉÏÃæ£¬ÏòÏÂÖ±¶Ô×űêʶ£¬×ª¶¯ËüÖ±µ½±êʶµÄÖÜΧ³öÏÖÒ»¸öºìÉ«ºÍÂÌÉ«µÄ·½¿ò¡£ÕâָʾÈí¼þ mk_patt ÒѾÕÒµ½ÁËÎ§ÈÆÔÚ´ý²âÊÔµÄÄ£°åÖÜΧµÄ·½¿ò¡£Ó¦¸Ãת¶¯ÉãÏñÍ·Ö±µ½ÊÓÆµÍ¼ÏñÖеķ½¿éµÄ×óÉÏ·½±ß½ÇÊǸßÁÁµÄ·½¿éµÄºìÉ«µÄ±ß½Ç£¬Èçͼ 2 ÖÐËùʾ¡£Ò»µ©·½¿é±»ÕÒµ½ÇÒ·½Î»ÕýÈ·£¬µ¥»÷Êó±ê×ó¼ü¡£½Ó×Åϵͳ»áÌáʾÄãÊäÈëÒ»¸öÄ£°åµÄÎļþÃû×Ö¡£±ÈÈç˵£¬ÊäÈë patt.yourpatt¡£
Ò»µ©ÎļþÃû×Ö±»ÊäÈ룬ϵͳ¾ÍÉú³ÉÁËÒ»¸ö¸ÃÄ£°åµÄλͼͼÏñ£¬Î»Í¼Í¼Ïñ±»¸´ÖƵ½ÒÔÕâ¸öÎļþÃûÃüÃûµÄÎļþÖС£½ÓÏÂÀ´Õâ¸ö½«±»ÓÃÔÚ ARToolKit µÄÄ£°åÆ¥ÅäÖС£ÎªÁËʹÓÃÕâ¸öÐÂÄ£°å£¬ÕâЩÊý¾ÝÒª±»¿½±´µ½ÎļþĿ¼ bin/Data Ï¡£ÖØÐ±àÒë simpletest ºó£¬ÏÖÔÚ£¬Äã¾Í¿ÉÒÔʹÓÃÄã×Ô¼ºµÄÄ£°åÁË£¡
ѵÁ·ÁËÒ»¸öÄ£°åºó£¬ÆäËûµÄÄ£°åÒ²¿ÉÒÔ±»ÑµÁ·£¬Ö»ÐèÒªÓÃÉãÏñÍ·¶Ô×ÅÐÂÄ£°å²¢Öظ´ÒÔÉϲ½Ö裬»òÕߣ¬µ¥»÷Êó±êÓÒ¼ü¿ÉÒÔÍ˳öÓ¦ÓóÌÐò¡¢¡£
ʹÓöà¸öÄ£°å
ÏÖÔÚÎÒÃÇÏëҪʹÓò»Ö¹Ò»¸öµÄÄ£°å¡¢£¬¶ø²»Í¬µÄÄ£°åÓи÷×Ô²»Í¬µÄÈýάÎïÌåÏà¶ÔÓ¦¡£Îª´ïµ½´ËÄ¿µÄ¡¢£¬ÎÒÃǽ«Öð²½·ÖÎöĿ¼ examples/simplem/Ï嵀 simplem ÎļþµÄÔ´´úÂë¡¢¡£Äã»á·¢ÏÖÁ½¸öÔ´Îļþ£¬simplemTest.c ºÍ object.c¡¢¡£Õâ¸ö³ÌÐò¿ÉÒÔ̽²â¶à¸ö±êʶ¿¨¡¢£¬²¢ÇÒÔÚÿ¸ö±êʶÉÏÃæÏÔʾ²»Í¬ÐÎ×´µÄÎïÌ壨׶Ì壬Á¢·½Ìå¡¢£¬ÇòÌ壩¡¢¡£
ËüºÍ simple ³ÌÐòµÄÖ÷񻂿±ðÊÇ£º
¡ñ ¼ÓÔØµÄÎļþÖÐÓжà¸öÄ£°åµÄÉùÃ÷¡£
¡ñ ÓëÄ£°åÏà¹ØÁªµÄ½á¹¹²»Í¬¡¢£¬ÕâÒâζ×ųÌÐòÖмì²é´úÂëÒÔ¼°×ª»»µ÷Óò»Í¬¡¢¡£
¡ñ Óï·¨ÖØÐ¶¨Ò壬¶¨Òå»Í¼º¯Êý¡¢¡£
ÆäËûµÄ´úÂëÔò¶¼ÊÇÒ»ÑùµÄ¡¢£¡
ϵͳ½¨ÒéʹÓÃÒ»¸öÌØ¶¨µÄº¯Êý¡ª¡ªobject.cÖеÄread_ObjData À´¼ÓÔØ ARToolKitÖеĶà¸öÄ£°å¡£ÀûÓô˺¯Êý¡¢£¬¿ÉÒÔÓÃÈçÏ·½·¨À´¼ÓÔØ±êʶ£º

²ÎÁ¿ object ÊÇÒ»¸öÖ¸ÏòÒ»¸ö ObjectData_T µÄ½á¹¹ÌåµÄÖ¸Õë¡¢¡£²ÎÁ¿ model_name ¶¨ÒåµÄ²»ÊÇÒ»¸öÄ£°å¶¨ÒåÎļþÃû£¨ÔÚÕâÀïÎļþÃûÊÇ model_name£©£¬¶øÊÇÒ»¸öÌØ¶¨µÄ¶à¸öÄ£°å¶¨ÒåµÄÎļþÃû£¨¾¯¸æ£ºÕâ¸ö¸ñʽºÍ¶à¸öÄ£°å¸ú×ÙÎļþÃû²»Í¬£¡¢¡£¡¢¡£¡£©¡¢¡£Îı¾Îļþ object_data Ö¸¶¨ÁËÄÄЩ±êʶÎïÌåÓ¦±»Ê¶±ðÒÔ¼°Ä£°åÔõôÑùÓë¸÷¸öÎïÌåÏà¹ØÁª¡¢¡£Îļþ object_data µÄ¿ªÊ¼´¦¼Ç¼ÁËÒª±»Ö¸¶¨µÄÎïÌåµÄÊýÁ¿£¬½Ó×ÅÊÇÿ¸öÎïÌåµÄÎı¾ÀàÐ͵ÄÊý¾Ý½á¹¹¡¢¡£object_data ÎļþÖÐÿ¸ö±êʶ¶¼±»ÒÔϽṹÌåÏêϸ˵Ã÷£º
¡¤ Ãû×Ö
¡¤ Ä£°åʶ±ðÎļþÃû
¡¤ ¸ú×ÙÄ£°åµÄ¿í¶È
¡¤ ¸ú×ÙÄ£°åµÄÖÐÐÄ
±ÈÈç˵©§£¬¶ÔÓ¦×ÅÓëÐéÄâµÄÁ¢·½ÌåÏà¹ØµÄ±êʶµÄ½á¹¹ÌåÈçÏ£º
#pattern 1
cone
Data/patt.hiro
80.0
0.0 0.0
Çë×¢Òâ©§£¬ÒÔ#character ¿ªÊ¼ÊÇ´úÂëÊÇÃüÁîÐУ¬±»Îļþ¶ÁÈ¡Æ÷ºöÂÔ©§¡£
ARToolKit ¿ÉÒÔÊÔ×ÅÔÚ arDetectMarker Á÷³ÌÖÐʶ±ð¶à¸öÄ£°åÁË©§¡£ÒòΪÎÒÃÇÏÖÔÚÊÇ̽²â¶à¸öÄ£°å£¬ÎÒÃÇÐèÒª±£³Öÿһ¸öÐéÄâÎïÌåµÄ¿É¼ûÐÔ©§£¬Í¬Ê±Ð޸ĶÔÓÚÒÔ¼°Ì½²âµ½µÄÄ£°åµÄ¼ì²é²½Öè©§¡£¸ü½øÒ»²½£¬ÎÒÃÇ»¹ÐèҪά³Öÿ¸öÒÑ̽²âÄ£°åµÄÌØ¶¨µÄ×ªÒÆ©§¡£

Òò´Ë©§£¬Èç¹û±êʶ±»Ì½²âµ½£¬Ã¿Ò»¸ö±êʶ¶¼ÓÐÒ»¸öÊÓ¾õ±êÖ¾ºÍÒ»¸öеÄ×ªÒÆ¾ØÕó©§¡£ÏÖÔÚͨ¹ý½á¹¹Ìå ObjectData_T µ÷ÓûæÍ¼º¯ÊýÀ´»æÖÆÐéÄâÎïÌå©§¡£½á¹¹Ìå ObjectData_T ÐèÒª±»¸³ÓèÐéÄâÎïÌåµÄ²ÎÊýÒÔ¼°ÐéÄâÎïÌåµÄ¸öÊý¡£

»æÍ¼º¯ÊýͬÑùºÜÈÝÒ×Àí½â£º±éÀúÎïÌåµÄÁÐ±í©§£¬Èç¹ûÎïÌå¿É¼û©§£¬ÀûÓÃËüµÄ×Ë̬°´ÕÕÏàÓ¦µÄÐÎ×´»æÖÆÎïÌå¡£
ÏÖÔÚ¿ÉÒÔ±àÒë simplem©§£¬È·±£ËùÓбØÐëµÄÎļþÒѾ±»·ÅÔÚ data ÎļþĿ¼Ï©§¡£½á¹ûÈçͼ3 Ëùʾ¡£

ͼ 3 simplem ÊÓÆµ´°¿Ú
Äã¿ÉÒÔÐÞ¸ÄÎļþ object_data©§£¬Ê¹ÓÃÄã×Ô¼ºµÄÄ£°åʵÑéÁË©§£¡
248.9M / 12-08
RTS¼´Ê±Õ½ÂÔ
ÏÂÔØ
248.9M / 12-08
RTS¼´Ê±Õ½ÂÔ
ÏÂÔØ
253.4M / 12-08
RPG½ÇÉ«°çÑÝ
ÏÂÔØ
ÆÞÖÐÃÛ3È«cg´æµµ
ÓÎÏ·¹¤¾ß / 28KB
ÏÂÔØ
1
csgo¿Õ¸ñ¼üÁ¬Ìø½Å±¾ÂÌÉ«Ãâ·Ñ°æ
ÓÎÏ·¹¤¾ß / 564KB
ÏÂÔØ
2
Ò׿ØÍõÎĵµ¼ÓÃÜÈí¼þv2017¹Ù·½°æÂÌÉ«Ãâ·Ñ°æ
Îļþ´¦Àí / 46M
ÏÂÔØ
3
DNF9ÖÜÄêµÚÊ®Ì×Ìì¿Õʱװ²¹¶¡
ÓÎÏ·¹¤¾ß / 1.6M
ÏÂÔØ
4
3456wg¶àѡƤ·ôv10.6¹Ù·½°æ
ÓÎÏ·¹¤¾ß / 2.2M
ÏÂÔØ
5
dnfÒ»¼üÈÎÎñÖúÊÖv0428×îÐÂÃâ·Ñ°æ
ÓÎÏ·¹¤¾ß / 863KB
ÏÂÔØ
6
°®ÆÕÉúR230´òÓ¡»úÇåÁãÈí¼þºº»¯°æ
°ì¹«Ñ§Ï° / 1.8M
ÏÂÔØ
7
adobeÇåÀí¹¤¾ß(AdobeCreativeCloudCleanerTool)V2017 ÂÌÉ«°æ
Îļþ´¦Àí / 5.9M
ÏÂÔØ
8
ÊÓÆµ©§¡¢Í¼Æ¬È¥Ë®Ó¡´óʦHitPaw Watermark Removerv1.2.1 ÍêÃÀ½âËø°æ
Îļþ´¦Àí / 80.4M
ÏÂÔØ
9
GTKWave(WAVÎļþ²¨Ðβ쿴¹¤¾ß)v3.3.66 ¹Ù·½°æ
Îļþ´¦Àí / 4.4M
ÏÂÔØ
10
140.5M / 09-05
Á¢¼´ÏÂÔØ
76.4M / 03-25
Á¢¼´ÏÂÔØ
55M / 06-05
Á¢¼´ÏÂÔØ
88.7M / 04-13
Á¢¼´ÏÂÔØ
900.9M / 03-02
Á¢¼´ÏÂÔØ
96.2M / 07-06
Á¢¼´ÏÂÔØ
311.2M / 07-06
Á¢¼´ÏÂÔØ
335M / 07-06
Á¢¼´ÏÂÔØ
ǰ³ÌËÆ½õ(Excellent Expectations)
200M / 07-06
Á¢¼´ÏÂÔØ
413.8M / 07-06
Á¢¼´ÏÂÔØ
x8ɳÏ䰲׿Ãâ·Ñ°æ2023¹Ù·½×îаæ
480.3M / 01-03
Á¢¼´ÏÂÔØ
768.9M / 08-19
Á¢¼´ÏÂÔØ
165.4M / 09-05
Á¢¼´ÏÂÔØ
131.8M / 04-13
Á¢¼´ÏÂÔØ
195.6M / 03-03
Á¢¼´ÏÂÔØ
45.6M / 09-08
Á¢¼´ÏÂÔØ
665.2M / 07-06
Á¢¼´ÏÂÔØ
2.84G / 07-06
Á¢¼´ÏÂÔØ
93M / 07-06
Á¢¼´ÏÂÔØ
338.3M / 07-06
Á¢¼´ÏÂÔØ
959.8M / 12-24
Á¢¼´ÏÂÔØ 312M / 07-30
Á¢¼´ÏÂÔØ 1.38G / 07-26
Á¢¼´ÏÂÔØ DZͧΰΰÃÔÖ²Îï´óÕ½½©Ê¬ÔÓ½»°æµçÄÔ°æ
109.8M / 06-03
Á¢¼´ÏÂÔØ 142M / 01-08
Á¢¼´ÏÂÔØ 1.2M / 11-23
Á¢¼´ÏÂÔØ 548.8M / 04-13
Á¢¼´ÏÂÔØ 1.6M / 04-13
Á¢¼´ÏÂÔØ 1.48G / 03-18
Á¢¼´ÏÂÔØ 646.6M / 03-03
Á¢¼´ÏÂÔØ 401.9M / 01-06
Á¢¼´ÏÂÔØ 1.89G / 12-19
Á¢¼´ÏÂÔØ 110.5M / 09-05
Á¢¼´ÏÂÔØ 33.4M / 09-05
Á¢¼´ÏÂÔØ 60M / 04-29
Á¢¼´ÏÂÔØ 254M / 04-25
Á¢¼´ÏÂÔØ 659M / 04-23
Á¢¼´ÏÂÔØ up¶Ôսƽ̨ºÐ×Ó¹Ù·½ÏÂÔØ2023×îаæ
253.4M / 12-08
Á¢¼´ÏÂÔØ 253M / 12-08
Á¢¼´ÏÂÔØ 1.19G / 11-16
Á¢¼´ÏÂÔØ 118.2M / 01-06
Á¢¼´ÏÂÔØ 488.3M / 06-04
Á¢¼´ÏÂÔØ 369M / 09-22
Á¢¼´ÏÂÔØ 181.5M / 09-22
Á¢¼´ÏÂÔØ 201.2M / 09-05
Á¢¼´ÏÂÔØ 248.9M / 12-08
Á¢¼´ÏÂÔØ 248.9M / 12-08
Á¢¼´ÏÂÔØ 100.6M / 03-06
Á¢¼´ÏÂÔØ 148.9M / 03-06
Á¢¼´ÏÂÔØ 1.12G / 07-06
Á¢¼´ÏÂÔØ 126.7M / 02-04
Á¢¼´ÏÂÔØ 1.76G / 09-22
Á¢¼´ÏÂÔØ 1.92G / 04-17
Á¢¼´ÏÂÔØ 201.5M / 04-13
Á¢¼´ÏÂÔØ 7.31G / 07-01
Á¢¼´ÏÂÔØ 94.3M / 07-06
Á¢¼´ÏÂÔØ 2.48G / 07-06
Á¢¼´ÏÂÔØ 7.63G / 07-06
Á¢¼´ÏÂÔØ 1M / 07-06
Á¢¼´ÏÂÔØ 778.1M / 07-06
Á¢¼´ÏÂÔØ 1.40G / 12-19
Á¢¼´ÏÂÔØ 72M / 07-06
Á¢¼´ÏÂÔØ 548.7M / 07-06
Á¢¼´ÏÂÔØ 1.00G / 07-06
Á¢¼´ÏÂÔØ 9.13G / 07-06
Á¢¼´ÏÂÔØ 126.2M / 07-06
Á¢¼´ÏÂÔØ 72M / 07-06
Á¢¼´ÏÂÔØ 105.1M / 07-06
Á¢¼´ÏÂÔØ 132M / 07-06
Á¢¼´ÏÂÔØ 132M / 07-06
Á¢¼´ÏÂÔØ bonbonjump°²×¿¹Ù·½ÏÂÔØ2023×îаæ
13.4M / 01-03
Á¢¼´ÏÂÔØ 293.0M / 09-05
Á¢¼´ÏÂÔØ 1.22G / 07-06
Á¢¼´ÏÂÔØ 20.53G / 07-06
Á¢¼´ÏÂÔØ 229.9M / 07-06
Á¢¼´ÏÂÔØ 3.70G / 07-06
Á¢¼´ÏÂÔØ 904.0M / 07-06
Á¢¼´ÏÂÔØ 15.84G / 07-06
Á¢¼´ÏÂÔØ 45.50G / 07-06
Á¢¼´ÏÂÔØ 1.02G / 07-06
Á¢¼´ÏÂÔØ Copyright 2010-2025 µ¥»úÓÎÏ·ÏÂÔØ (R) °æÈ¨ËùÓÐ ·ÉÏèÏÂÔØËùÓÐÓÎÏ·¼°Èí¼þÏÂÔØ×ÊÔ´À´Ô´»¥ÁªÍø|£¬²¢ÓÉÍøÓÑÉÏ´«·ÖÏí|¡£ÈçÓÐÇÖȨ£¬ÇëÀ´µçÀ´º¯¸æÖ®|¡£
·ÉÏèÖҸ棺µÖÖÆ²»Á¼É«Çé|¡¢·´¶¯¡¢±©Á¦ÓÎÏ· ºÏÀí°²ÅÅÓÎϷʱ¼ä ÏíÊܽ¡¿µÉú»î ¶õ¹«Íø°²±¸£º42011102003115ºÅ ¡¾¶õICP±¸17000818ºÅ-1¡¿