4Â÷ »ê¾÷Çõ¸íÀ» ¸®µåÇÏ°í ÀÖ´Â ÀΰøÁö´É ±â¼úµéÀÌ ÈµÎ°¡ µÈ Áö ¸î ³âÀÌ Áö³ª ÀÌÁ¦´Â ¼º¼÷ÇÑ ½ÃÀåÀ¸·Î ÁøÀÔÇÏ°í ÀÖ´Ù. ¿©·¯ »ê¾÷ºÐ¾ß¿¡¼ Àû¿ëµÇ¾î Á¦Ç°µé¿¡ ÀÀ¿ëµÇ°í ÀÖ´Â ÀΰøÁö´É ±â¼úÀ» NVIDIA Á¦Ç°ÀÇ ÀÓº£µðµå º¸µå¿¡ žÀçÇÏ¿© ÀÚÀ²ÁÖÇà ·Îº¿À̳ª µå·Ð µî ±âŸ Á¦Ç°¿¡¼ »ç¿ëÇÏ°í ÀÖ´Ù.
ÀÌ¿¡ º» µµ¼¿¡´Â °í¼º´É GPU¿Í ÀΰøÁö´É ¿£ÁøÀÌ Å¾ÀçµÈ NVIDIA º¸µå¿¡ ÀΰøÁö´É µö·¯´× ±â¼úÀ» ¹× Àû¿ë Å×½ºÆ®Çغ» °üÁ¡¿¡¼ ±â¼úÇÏ°í ÀÖ´Ù. º» µµ¼¿¡¼´Â µÎ Á¾·ùÀÇ NVIDIA Jetson TX2 º¸µå¿Í Xavier NX ij¸®¾îº¸µå ÇÏ¿¡¼ Å×½ºÆ®µÈ ÀÀ¿ëµéÀ» ´Ù·ç°í ÀÖ´Ù. ´ÙÀ½Àº °¢ Àå¿¡¼ ÇнÀÇÒ ³»¿ëÀ» °³·«ÀûÀ¸·Î ±â¼úÇÑ °ÍÀÌ´Ù.
1Àå¿¡¼´Â ÀΰøÁö´É, ¸Ó½Å·¯´×, µö·¯´× ±â¼úµéÀ» °³·«ÀûÀ¸·Î ´Ù·ç°í ÀÖ´Ù.
2Àå¿¡¼´Â ¸Ó½Å·¯´×¿¡¼ ¸ðµ¨À̳ª ÆÐÅÏÀÇ ºÐ·ù ¼º´É Æò°¡¿¡ »ç¿ëµÇ´Â ÁöÇ¥µé¿¡ ´ëÇØ ±â¼úÇÏ°í ÀÖ´Ù. ¾î´À ¸ðµ¨À̵çÁö ¾Ë°í¸®ÁòÀÇ ¼º´ÉÀ» Á¦´ë·Î Æò°¡ÇÏ´Â ¹æ¹ýÀº ÇöÀç ¸ðµ¨ÀÇ ¼º´ÉÀ» ¿Ã¹Ù¸£°Ô Æò°¡ÇÏ´Â °Í¿¡¼ºÎÅÍ ½ÃÀÛÇÑ´Ù. ÀÌ Àå¿¡¼´Â Á¤¹Ðµµ, ÀçÇöÀ², Á¤È®µµÀÇ ºÐ·ù ¼º´ÉÁöÇ¥¿Í µ¥ÀÌÅͼÂÀ» ´Ù·ç°í ÀÖ´Ù. µ¥ÀÌÅͼÂÀº Á¤¹ÐÇÏ°í ¼¼½ÉÇÏ°Ô ¼±Á¤µÇ°í ±¸ÃàµÇ¾î¾ß ÀΰøÁö´É ¾Ë°í¸®Áò¿¡ ±× ¼º´ÉÀ» ¹ßÈÖÇÒ ¼ö ÀÖ´Â Áß¿äÇÑ Ç׸ñÀÌ´Ù.
3Àå¿¡¼ ´Ù·ç´Â µ¥ÀÌÅÍ ¶óº§¸µ ÀÛ¾÷Àº ¸Ó½Å·¯´×À̳ª µö·¯´× ¸ðµ¨¸µ ÀÛ¾÷ ÀÌÀü¿¡ ÇнÀ µ¥ÀÌÅÍ¿¡ ƯÁ¤ÇÑ °ªÀ» ºÎ¿©ÇØÁÖ´Â ÀÛ¾÷ÀÌ´Ù. ÅøÀ» Àû¿ëÇÏ¿© ÀÏ°üµÈ Ç°ÁúÀ» À¯ÁöÇÏ´Â ÀÛ¾÷Àº AI »ê¾÷ÀÇ ±âº»À̱⵵ ÇÏÁö¸¸, ±â¾÷ AI »ç¾÷ÀÇ ¼º°øÀûÀÎ ¹ßÀüÀ» ÀÌ·ç±â À§ÇÑ ÇÙ½É ¿ä¼ÒÀÌ´Ù. º» Àå¿¡¼´Â Window¿Í ¸®´ª½º Ubuntu ȯ°æ¿¡¼ µ¥ÀÌÅÍ ¶óº§¸µ ÅøÀÎ labelImgÀ» ¼³Ä¡ÇÏ¿© ¶óº§¸µ ½Ç½ÀÀ» ¼öÇàÇغ»´Ù.
4Àå¿¡¼´Â ¸Ó½Å·¯´×, µö·¯´× ¹× ÀΰøÁö´ÉÀ» À§ÇÑ ÃÖ°íÀÇ ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î ÆÄÀ̽ãÀ» Æ÷ÇÔ½ÃŲ ´Ù¾çÇÑ ±â´ÉÀ» ´Ù·ç°í ÀÖÀ¸¸ç, µö·¯´×À» À§ÇÑ ´Ù¾çÇÑ ÆÄÀ̽㠶óÀ̺귯¸®¸¦ ¼Ò°³ÇÏ°í ÀÖ´Ù.
5Àå¿¡¼´Â ¾Æ³ªÄÜ´Ù(Anaconda)¸¦ ÀÌ¿ëÇÑ µö·¯´× °³¹ß ȯ°æÀ» ±¸ÃàÇÏ´Â °úÁ¤À» ¼³¸íÇÑ´Ù. ¾Æ³ªÄÜ´Ù¸¦ »ç¿ëÇϸé ÆÄÀ̽ãÀ» ÀÌ¿ëÇÑ ºòµ¥ÀÌÅÍ ºÐ¼®À̳ª ¸Ó½Å·¯´×À» °øºÎÇÏ´Â µ¥ ÇÊ¿äÇÑ ¶óÀ̺귯¸® ÆÐÅ°Áö¸¦ ½±°Ô ¼³Ä¡ÇÒ ¼ö ÀÖ¾î °³¹ßȯ°æ ±¸ÃàÀÌ ¿ëÀÌÇÏ´Ù. ¶ÇÇÑ ÁÖ´ÏÆÛ ³ëÆ®ºÏ(Jupyter Notebook)À» ¼³Ä¡ÇÏ¿© µö·¯´× ¾Ë°í¸®Áò ¹× Äڵ带 ½ÇÇàÇÏ´Â ¹æ¹ýÀ» ÇнÀÇÑ´Ù.
6Àå¿¡¼´Â Jetson TX2 º¸µå ÇÏ¿¡¼ÀÇ µö·¯´× °³¹ßȯ°æ ±¸ÃàÀ» ´Ù·é´Ù. TX2´Â GPU·Î À¯¸íÇÑ NVIDIA¿¡¼ °³¹ßÇÑ ÀÓº£µðµå AI ÄÄÇ»Æà ÀåÄ¡·Î, ´Ù¾çÇÑ »ê¾÷¿ë ·Îº¿ ¼ºñ½º¸¦ °³¹ßÇϱâ À§ÇÑ Çϵå¿þ¾î ¼Ö·ç¼ÇÀÌ´Ù. º» Àå¿¡¼´Â TX2 ±â¹ÝÀ¸·Î NVIDIA¿¡¼ Á¦°øÇÏ´Â AI ¾îÇø®ÄÉÀÌ¼Ç ±¸ÃàÀ» À§ÇÑ Æ÷°ýÀûÀÎ ¼Ö·ç¼ÇÀÎ Jetpack SDK¸¦ ¸®´ª½º(Ubuntu 18.04 LST) ÇÏ¿¡¼ ¼³Ä¡ ¹× °³¹ßȯ°æÀ» ¼¼ÆÃÇÏ´Â °úÁ¤À» ±â¼úÇÑ´Ù.
7Àå¿¡¼´Â Jetson Xavier NX º¸µå ÇÏ¿¡¼ÀÇ °³¹ßȯ°æ ±¸ÃàÀ» ´Ù·é´Ù. NX º¸µå´Â GPU·Î À¯¸íÇÑ NVIDIA¿¡¼ °³¹ßÇÑ ÀÓº£µðµå AI ÄÄÇ»Æà ÀåÄ¡·Î, ´Ù¾çÇÑ »ê¾÷¿ë ·Îº¿ ¼ºñ½º¸¦ °³¹ßÇϱâ À§ÇÑ Çϵå¿þ¾î ¼Ö·ç¼ÇÀÌ´Ù. ÀΰøÁö´É ¼ÒÇü ÄÄÇ»Åͷμ ÀÌ À§¿¡ Linux °è¿ OS(ÁÖ·Î Ubuntu¸¦ »ç¿ë)¸¦ ¿Ã¸®°í ±× À§¿¡ Tensorflow, ROS µî ´Ù¾çÇÑ ·Îº¿ °³¹ß¿¡ ÇÊ¿äÇÑ ´Ù¾çÇÑ ¶óÀ̺귯¸®³ª ÇÁ·¹ÀÓ¿öÅ© µîÀ» ¿Ã·Á »ç¿ëÇÒ ¼ö ÀÖ´Â ÀΰøÁö´É ÀÓº£µðµå º¸µåÀÌ´Ù. NX ij¸®¾îº¸µå ±â¹Ý ÇÏ¿¡¼, Jetpack SDK¸¦ ¸®´ª½º(Ubuntu 18.04 LST) ÇÏ¿¡¼ ¼³Ä¡ ¹× °³¹ßȯ°æÀ» ¼¼ÆÃÇÏ´Â °úÁ¤À» ±â¼úÇÑ´Ù.
8Àå¿¡¼´Â TX2 º¸µå¿¡¼ CNNÀ» ÀÌ¿ëÇÏ¿© Çʱâü ¹®ÀÚ ºÐ·ù¿Í µ¿¹°À» ºÐ·ùÇÏ´Â ½Ç½ÀÀ» ÇÑ´Ù. µö·¯´× ¶óÀ̺귯¸®·Î´Â ÅÙ¼Ç÷ο츦 ÀÌ¿ëÇÏ¿© ÁøÇàÇÑ´Ù.
9Àå¿¡¼´Â Xavier NX ij¸®¾îº¸µå¿¡¼ CNNÀ» ÀÌ¿ëÇÏ¿© Çʱâü ¹®ÀÚ ºÐ·ù¿Í µ¿¹°À» ºÐ·ùÇÏ´Â ½Ç½ÀÀ» ÇÑ´Ù. µö·¯´× ¶óÀ̺귯¸®·Î´Â ÅÙ¼Ç÷ο츦 ÀÌ¿ëÇÏ¿© ÁøÇàÇÑ´Ù.
10Àå¿¡¼´Â TX2 º¸µå¿¡¼ YOLO ±â¹Ý °´Ã¼ °ËÃâÀÀ¿ëÀ» ´Ù·é´Ù. YOLO´Â ¡®You Only Look Once¡¯ÀÇ ¾à¾î·Î, ½Ç½Ã°£ °´Ã¼ °ËÃâ¿¡ »ç¿ëµÇ´Â ¾Ë°í¸®ÁòÀÌ´Ù. º» Àå¿¡¼´Â YOLOv3¿Í YOLOv5 ÀÀ¿ëµéÀ» °¡Áö°í ½Ç½ÀÇØ º»´Ù.
11Àå¿¡¼´Â Xavier NX ij¸®¾îº¸µå¿¡¼ YOLO ±â¹Ý °´Ã¼ °ËÃâÀÀ¿ëÀ» ´Ù·é´Ù. YOLO´Â ½Ç½Ã°£ °´Ã¼ °ËÃâ¿¡ »ç¿ëµÇ´Â ¾Ë°í¸®ÁòÀÌ´Ù. º» Àå¿¡¼´Â YOLOv3¿Í YOLOv5 ÀÀ¿ëµéÀ» °¡Áö°í ½Ç½ÀÇØ º»´Ù.
12Àå¿¡¼´Â ¸Ó½Å·¯´× ±â¹ÝÀÇ ¾ó±¼ÀÎ½Ä ¹× È°¿ë ÀÀ¿ëµéÀ» ´Ù·é´Ù. ¾ó±¼ÀÎ½Ä ±â¼úÀº ¸¹Àº ¿¬±¸¸¦ ÅëÇØ ¿©·¯ °¡Áö ¸ðµ¨ÀÌ Á¦¾ÈµÇ¾ú´Âµ¥ OpenCVÀÇ Haar Cascade¿Í DlibÀÇ HoG(Histogram of oriented Gradient)°¡ ´ëÇ¥ÀûÀÎ ¿ÀǼҽº ¸ðµ¨ÀÌ´Ù. º» Àå¿¡¼´Â Dlib¿Í Haar Cascade ¶óÀ̺귯¸®¸¦ ÀÌ¿ëÇÑ ¸Ó½Å·¯´× ¾ó±¼ÀÎ½Ä ÀÀ¿ëµéÀ» ½Ç½ÀÇÑ´Ù.
13Àå¿¡¼´Â °ÈÇнÀÀ» ´Ù·é´Ù. º» Àå¿¡¼´Â OpenAI GYM ±â¹ÝÀÇ CartPole ¿¹Á¦ ½Ç½À, Frozen Lake ¿¹Á¦½Ç½À, Q-Learning ¾Ë°í¸®Áò µîÀ» ´Ù·é´Ù.
º» µµ¼¿¡¼ ´Ù·çÁö ¸øÇÑ ºÎºÐÀ̳ª ¹ÌÈíÇÑ ºÎºÐÀº ¼öÁ¤ ¹× º¸¿ÏÇÏ¿© ÃßÈÄ °³Á¤ÆÇ¿¡¼ ´õ ÁÁÀº ÄÜÅÙÃ÷·Î ¸¸µé °ÍÀ» µ¶Àڵ鲲 ¾à¼Óµå¸°´Ù.
³¡À¸·Î º» µµ¼°¡ ź»ýÇϱâ±îÁö ¿©·¯ Å×½ºÆ®º¸µå ¹× °³¹ßȯ°æÀ» Á¦°øÇØÁֽŠ¢ßÈÞÀνº ¼ÛÅÂÈÆ ´ëÇ¥¿Í ÀÌÇÏ ÀÓÁ÷¿ø, ±×¸®°í º» µµ¼¸¦ Ãâ°£Çϱâ±îÁö ¼ö°íÇØÁֽŠº¹µÎÃâÆÇ»ç ´ëÇ¥´Ô°ú ÀÌÇÏ ÀÓÁ÷¿ø ¿©·¯ºÐ²² °¨»çÀÇ Àλ縦 ÀüÇÏ°í ½Í´Ù.
1Àå ÀΰøÁö´É°ú µö·¯´× °³¿ä
1.1 °³¿ä
1.2 CNN(ÇÕ¼º°ö ½Å°æ¸Á : Convolution Neural Network)
1.3 RNN(¼øȯ½Å°æ¸Á : Recurrent Neural Network)
1.4 YOLO
2Àå ºÐ·ù ¼º´ÉÁöÇ¥ ¹× µ¥ÀÌÅͼÂ
2.1 ºÐ·ù ¼º´ÉÆò°¡ÁöÇ¥
2.2 ºÐ·ù ¼º´ÉôµµÀÇ ÀÀ¿ë
2.3 ÇнÀ¼¼Æ®¿Í Å×½ºÆ®¼¼Æ®
2.4 µ¥ÀÌÅͼ ÇнÀ ÀýÂ÷
2.5 COCO µ¥ÀÌÅͼÂ
2.6 MNIST µ¥ÀÌÅͼÂ
3Àå µ¥ÀÌÅÍ ¶óº§¸µ
3.1 °³¿ä
3.2 ¶óº§¸µ µµ±¸µé
3.3 ¶óº§¸µ Æ÷¸Ë
3.4 Window ȯ°æ¿¡¼ labelImg ¼³Ä¡
3.5 Ubuntu ȯ°æ¿¡¼ labelImg ¼³Ä¡
4Àå µö·¯´× ÆÄÀ̽㠶óÀ̺귯¸®
4.1 °³¿ä
4.2 ÅÙ¼Ç÷οì
4.3 ÄÉ¶ó½º ¶óÀ̺귯¸®
4.4 ÅÙ¼Ç÷οì¿Í Äɶó½ºÀÇ Â÷ÀÌÁ¡
4.5 ÆÄÀÌÅäÄ¡
4.6 ³ÑÆÄÀÌ
5Àå ¾Æ³ªÄÜ´Ù °³¹ßȯ°æ ±¸Ãà
5.1 ¾Æ³ªÄÜ´Ù
5.2 ÁÖÇÇÅÍ ³ëÆ®ºÏ ¼³Ä¡
5.3 ÁÖÇÇÅÍ ·¦ ¼³Ä¡
6Àå Jetson TX2 °³¹ßȯ°æ ±¸Ãà
6.1 TX2 °³¿ä
6.2 Jetpack, NVIDIA SDK Manager °³¿ä
6.3 NVIDIA SDK Manager ¼³Ä¡
6.4 NVIDIA SDK Manager·Î Jetson TX2¿¡ Jetpack ¼³Ä¡
7Àå Jetson Xavier NX °³¹ßȯ°æ ±¸Ãà
7.1 Jetson Xavier NX °³¿ä
7.2 Jetpack, NVIDIA SDK Manager
7.3 NVIDIA SDK Manager ¼³Ä¡
7.4 NVIDIA SDK Manager·Î Jetson Xavier NX¿¡ Jetpack ¼³Ä¡
8Àå TX2 º¸µå¿¡¼ CNN ±â¹Ý °´Ã¼ ºÐ·ù
8.1 CNN °³¿ä
8.2 ÅÙ¼ÇÃ·Î¿ì ¼³Ä¡½Ç½À
8.3 ¼ÒÇÁÆ®¸Æ½º ÇÔ¼ö¸¦ ÀÌ¿ëÇÑ Çʱ⠼ýÀÚ ºÐ·ù
8.4 Dogs-Cats À̹ÌÁö ºÐ·ù ½Ç½À
9Àå NX º¸µå¿¡¼ CNN ±â¹Ý °´Ã¼ ºÐ·ù
9.1 CNN °³¿ä
9.2 ÅÙ¼ÇÃ·Î¿ì ¼³Ä¡½Ç½À
9.3 ¼ÒÇÁÆ®¸Æ½º ÇÔ¼ö¸¦ ÀÌ¿ëÇÑ Çʱ⠼ýÀÚ ºÐ·ù
9.4 Dogs-Cats À̹ÌÁö ºÐ·ù ½Ç½À
10Àå TX2 º¸µå¿¡¼ YOLO ±â¹Ý °´Ã¼ °ËÃâ
10.1 YOLOv3 ¼³Ä¡ ¹× ¸ðµ¨ ÇнÀ
10.2 YOLOv5 ¸ðµ¨ ÇнÀ
11Àå NX º¸µå¿¡¼ YOLO ±â¹Ý °´Ã¼ °ËÃâ
11.1 YOLOv3 ¼³Ä¡ ¹× ¸ðµ¨ ÇнÀ
11.2 YOLOv5 ¸ðµ¨ ÇнÀ
12Àå ¸Ó½Å·¯´× ±â¹ÝÀÇ ¾ó±¼ÀÎ½Ä ¹× È°¿ë
12.1 ¾ó±¼ÀÎ½Ä ¶óÀ̺귯¸®
12.2 ¾ó±¼ÀÎ½Ä ÆÐÅ°Áö
12.3 Dlib ±â¹Ý ¸Ó½Å·¯´× ½Ç½À
12.4 Haar Cascade ±â¹Ý ¾ó±¼ÀÎ½Ä ¹× ºñ½Äº°È
13Àå °ÈÇнÀ ¾Ë°í¸®Áò ¹× ÀÀ¿ë
13.1 °ÈÇнÀ °³¿ä
13.2 OpenAI GYM
13.3 Q-Learning
13.4 DQN