

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¡¿