<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Everything is NORMAL</title>
    <link>https://23min.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Thu, 20 Aug 2026 02:47:38 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>smlee-</managingEditor>
    <item>
      <title>4. Isaac Sim(4.5.0)과 ROS2 연동 설치 가이드</title>
      <link>https://23min.tistory.com/17</link>
      <description>&lt;blockquote data-ke-style=&quot;style3&quot;&gt;NVIDIA의 Isaac Sim은 로보틱스 시뮬레이션을 위한 강력한 플랫폼입니다. 특히 ROS 2(로봇 운영체제)와의 연동은 실제 로봇 제어와 유사한 환경을 구현할 수 있게 해주며, 이를 통해 시뮬레이션에서 테스트한 코드를 실기기로 바로 적용하는 것도 가능합니다.&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 글에서는 Isaac Sim 4.5.0 버전을 기준으로 ROS 2 연동을 위한 설치 및 설정 방법을 하나씩 빠짐없이 설명합니다. 필자는 Ubuntu 22.04 환경과 ROS 2 Humble, Isaac Sim 설치 경로는 ~/isaacsim을 기준으로 설명합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;NVIDIA Isaac Sim은 NVIDIA Omniverse 플랫폼 위에 구축된 로보틱스 시뮬레이터로, 실제 ROS 환경과 연동되는 ROS Bridge 기능을 제공합니다. 본 포스팅에서는 4.5.0 정식 버전을 기준으로 ROS 2 Humble과 연동하는 방법을 상세히 설명합니다.&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;⚠️ 참고: 5.0.0은 현재 GitHub를 통해 Pre-release로 공개된 개발자 전용 버전입니다. 본 글은 안정적인 릴리즈인 &lt;b&gt;Isaac Sim 4.5.0&lt;/b&gt; 기준으로 작성되었습니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5.0.0 은 Python 3.11과만 호환됩니다. 환경 구축에 주의하세요.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. 지원 플랫폼 및 ROS 버전 정리&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Platform&lt;/th&gt;
&lt;th&gt;ROS 1 (지원 종료 예정)&lt;/th&gt;
&lt;th&gt;ROS 2 (권장)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Ubuntu 20.04&lt;/td&gt;
&lt;td&gt;Noetic (내부 빌드만)&lt;/td&gt;
&lt;td&gt;Humble (권장)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Ubuntu 22.04&lt;/td&gt;
&lt;td&gt;지원 안함&lt;/td&gt;
&lt;td&gt;Humble (권장)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Windows 10/11&lt;/td&gt;
&lt;td&gt;WSL2 환경에서만 지원&lt;/td&gt;
&lt;td&gt;Humble (WSL2 필수)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;⚠️ ROS 1은 곧 Isaac Sim에서 &lt;b&gt;완전히 제거될 예정&lt;/b&gt;입니다. 가능하면 ROS 2 환경을 구성하시기 바랍니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;곧 릴리즈될 5.0.0 에서는 Ubuntu 24.04와 ROS 2 Jazzy가 권장됩니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. 설치 방식 선택&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim에서 ROS 연동을 하기 위해서는 아래 중 하나를 선택해야 합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt; . Native ROS 2 설치 (Ubuntu 22.04)&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Python 버전: ROS 2 &amp;rarr; Python 3.10 / Isaac Sim &amp;rarr; Python 3.10&lt;/li&gt;
&lt;li&gt;환경 구성 시 &lt;code&gt;source /opt/ros/humble/setup.bash&lt;/code&gt; 필수&lt;/li&gt;
&lt;li&gt;ROS 메시지 타입 확장 설치 (선택)&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;cmake&quot;&gt;&lt;code&gt;sudo apt install ros-humble-vision-msgs
sudo apt install ros-humble-ackermann-msgs&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt; . Isaac Sim 내부 ROS 2 라이브러리 사용&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;ROS 2를 직접 설치하지 않고도 동작 가능&lt;/li&gt;
&lt;li&gt;내부 라이브러리는 Python 3.10에 맞게 빌드되어 있음&lt;/li&gt;
&lt;li&gt;다음과 같은 환경 변수 설정 필요&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;export isaac_sim_package_path=$HOME/isaacsim
export ROS_DISTRO=humble
export RMW_IMPLEMENTATION=rmw_fastrtps_cpp
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$isaac_sim_package_path/exts/omni.isaac.ros2_bridge/humble/lib
$isaac_sim_package_path/isaac-sim.sh&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. ROS Bridge Extension 활성화&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;App Selector로 설정&lt;/h3&gt;
&lt;pre class=&quot;stylus&quot;&gt;&lt;code&gt;~/isaacsim/isaac-sim.selector.sh
&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&amp;ldquo;Enable ROS2 Bridge&amp;rdquo; 옵션 체크&lt;/li&gt;
&lt;li&gt;내부 라이브러리를 사용할 경우 위 환경변수 자동 설정됨&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;수동 설정 (추천)&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Isaac Sim 실행 전에 터미널에서 수동으로 설정&lt;/li&gt;
&lt;li&gt;ROS를 설치했다면 source /opt/ros/humble/setup.bash 필수&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;4. Workspaces 구성&lt;/h2&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim ROS 작업 영역을 구축하려면&amp;nbsp;&lt;a href=&quot;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/install_ros.html#isaac-sim-app-install-native-ros&quot;&gt;ROS의 시스템 설치&lt;/a&gt;가 있는지 확인합니다.&amp;nbsp;&lt;a href=&quot;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/install_ros.html#isaac-ros-docker&quot;&gt;ROS 도커 컨테이너&lt;/a&gt;를 사용하여 작업 영역을 빌드할 수도 있습니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim의 ROS 패키지들을 사용하려면 공식 워크스페이스 레포를 클론합니다&lt;/p&gt;
&lt;pre class=&quot;jboss-cli&quot;&gt;&lt;code&gt;git clone &amp;lt;https://github.com/NVIDIA-Omniverse/IsaacSim-ros_workspaces.git&amp;gt;
cd IsaacSim-ros_workspaces
git submodule update --init --recursive
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;패키지 설치 및 빌드&lt;/h3&gt;
&lt;pre class=&quot;properties&quot;&gt;&lt;code&gt;sudo apt install python3-rosdep python3-colcon-common-extensions
rosdep init
rosdep update

cd humble_ws
rosdep install -i --from-path src --rosdistro humble -y
colcon build
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;package_image.png&quot; data-origin-width=&quot;869&quot; data-origin-height=&quot;100&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/deqpaZ/btsPxkBKDMa/QGrV8444nKAbwyTlZML1tK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/deqpaZ/btsPxkBKDMa/QGrV8444nKAbwyTlZML1tK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/deqpaZ/btsPxkBKDMa/QGrV8444nKAbwyTlZML1tK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdeqpaZ%2FbtsPxkBKDMa%2FQGrV8444nKAbwyTlZML1tK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;869&quot; height=&quot;100&quot; data-filename=&quot;package_image.png&quot; data-origin-width=&quot;869&quot; data-origin-height=&quot;100&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;사용 전 환경 설정&lt;/h3&gt;
&lt;pre class=&quot;vim&quot;&gt;&lt;code&gt;source /opt/ros/humble/setup.bash
cd humble_ws
source install/local_setup.bash
&lt;/code&gt;&lt;/pre&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;5. Docker에서 실행 (옵션)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시스템에 ROS를 직접 설치하기 어려운 경우 Docker로 실행할 수 있습니다.&lt;/p&gt;
&lt;pre class=&quot;jboss-cli&quot;&gt;&lt;code&gt;xhost +
docker run -it --rm --net=host --env=&quot;DISPLAY&quot; \\
-v ~/IsaacSim-ros_workspaces/humble_ws:/humble_ws \\
--name ros_ws_docker osrf/ros:humble-desktop /bin/bash
&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;컨테이너 안에서:&lt;/p&gt;
&lt;pre class=&quot;sql&quot;&gt;&lt;code&gt;cd /humble_ws
apt-get update
rosdep install --from-paths src --ignore-src --rosdistro=humble -y
colcon build
source install/local_setup.bash
&lt;/code&gt;&lt;/pre&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;6. Cyclone DDS 사용 (선택)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Fast DDS 대신 Cyclone DDS를 사용하고 싶다면:&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단, Windows(WSL2)에서는 Cyclone DDS 미지원이므로 Linux 전용입니다.&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;7. 자주 묻는 질문 (FAQ)&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Q. Isaac Sim을 먼저 실행해야 하나요, ROS를 먼저 실행해야 하나요?&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;A. ROS를 먼저 source한 후 Isaac Sim 실행을 권장합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Q. Python 버전이 충돌나요. 어떻게 해결하죠?&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;A. 내부 라이브러리를 사용하거나, Docker로 Python 3.10 기반 ROS 2 환경을 별도로 빌드하세요.&lt;/li&gt;
&lt;li&gt;A. 현재 실행중인 파이썬이 어느 파이썬인지 확인해보세요. 환경을 구성한 Python이어야 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;&amp;gt; which python3&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Q. ROS 1은 이제 못 쓰나요?&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;A. 내부적으로만 지원되며, 공식적으로는 &lt;b&gt;폐기 예정&lt;/b&gt;입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;489&quot; data-origin-height=&quot;471&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bhxHk0/btsPwGMe0QU/pY8G053XHSGkSGKpmqkcU0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bhxHk0/btsPwGMe0QU/pY8G053XHSGkSGKpmqkcU0/img.png&quot; data-alt=&quot;ROS Bridge Extension: ros2 bridge 선택&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bhxHk0/btsPwGMe0QU/pY8G053XHSGkSGKpmqkcU0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbhxHk0%2FbtsPwGMe0QU%2FpY8G053XHSGkSGKpmqkcU0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;489&quot; height=&quot;471&quot; data-origin-width=&quot;489&quot; data-origin-height=&quot;471&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;ROS Bridge Extension: ros2 bridge 선택&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;568&quot; data-origin-height=&quot;926&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/so4qZ/btsPx8Hieue/dpLBRzbp1iLtMg5PWqo0i0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/so4qZ/btsPx8Hieue/dpLBRzbp1iLtMg5PWqo0i0/img.png&quot; data-alt=&quot;ROS2와의 연동이 되지 않은 경우, Window &amp;amp;gt; Extension 에서 ROS 2 BRIDGE가 활성화되지 않는다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/so4qZ/btsPx8Hieue/dpLBRzbp1iLtMg5PWqo0i0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fso4qZ%2FbtsPx8Hieue%2FdpLBRzbp1iLtMg5PWqo0i0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;568&quot; height=&quot;926&quot; data-origin-width=&quot;568&quot; data-origin-height=&quot;926&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;ROS2와의 연동이 되지 않은 경우, Window &amp;gt; Extension 에서 ROS 2 BRIDGE가 활성화되지 않는다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주의: Cyclone DDS 관련 에러가 나는 경우&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1021&quot; data-origin-height=&quot;270&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/smSeX/btsPw04FryN/1BFdflFggeQRPqOxeUW9P0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/smSeX/btsPw04FryN/1BFdflFggeQRPqOxeUW9P0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/smSeX/btsPw04FryN/1BFdflFggeQRPqOxeUW9P0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsmSeX%2FbtsPw04FryN%2F1BFdflFggeQRPqOxeUW9P0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1021&quot; height=&quot;270&quot; data-origin-width=&quot;1021&quot; data-origin-height=&quot;270&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;RMW_IMPLEMENTATION에 rmw_cyclonedds_cpp 옵션을 넣었지만, Cyclone DDS를 제대로 설치하지 않은 경우, 위와 같은 에러가 날 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;a href=&quot;https://docs.ros.org/en/humble/Installation/RMW-Implementations/DDS-Implementations/Working-with-Eclipse-CycloneDDS.html&quot;&gt;Eclipse Cyclone DDS &amp;mdash; ROS 2 Documentation: Humble documentation&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1753347137330&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Eclipse Cyclone DDS &amp;mdash; ROS 2 Documentation: Humble  documentation&quot; data-og-description=&quot;You're reading the documentation for an older, but still supported, version of ROS 2. For information on the latest version, please have a look at Kilted. Eclipse Cyclone DDS Eclipse Cyclone DDS is a very performant and robust open-source DDS implementatio&quot; data-og-host=&quot;docs.ros.org&quot; data-og-source-url=&quot;https://docs.ros.org/en/humble/Installation/RMW-Implementations/DDS-Implementations/Working-with-Eclipse-CycloneDDS.html&quot; data-og-url=&quot;https://docs.ros.org/en/humble/Installation/RMW-Implementations/DDS-Implementations/Working-with-Eclipse-CycloneDDS.html&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://docs.ros.org/en/humble/Installation/RMW-Implementations/DDS-Implementations/Working-with-Eclipse-CycloneDDS.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://docs.ros.org/en/humble/Installation/RMW-Implementations/DDS-Implementations/Working-with-Eclipse-CycloneDDS.html&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Eclipse Cyclone DDS &amp;mdash; ROS 2 Documentation: Humble documentation&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;You're reading the documentation for an older, but still supported, version of ROS 2. For information on the latest version, please have a look at Kilted. Eclipse Cyclone DDS Eclipse Cyclone DDS is a very performant and robust open-source DDS implementatio&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;docs.ros.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;환경 구축을 잘 해주면 되는데,&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;잘 해줬다고 생각했는데도 에러가 나는 경우가 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;isaac-sim-selector로 실행을 했을 때는 에러가 나는데, isaac-sim을 직접 실행하면 에러가 나지 않는 상황도 발생한다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;이 부분은 아직 밝혀진 바가 없으므로 나중에 추가하는걸로..&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;473&quot; data-origin-height=&quot;811&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qJ8SS/btsPypowKoL/HfftthEVdZCsl6COVUARQ1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qJ8SS/btsPypowKoL/HfftthEVdZCsl6COVUARQ1/img.png&quot; data-alt=&quot;정상적으로 환경설정이 된 경우, Window &amp;amp;gt; Extension 에서 ROS2 BRIDGE가 활성화되어있는 모습&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qJ8SS/btsPypowKoL/HfftthEVdZCsl6COVUARQ1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqJ8SS%2FbtsPypowKoL%2FHfftthEVdZCsl6COVUARQ1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;473&quot; height=&quot;811&quot; data-origin-width=&quot;473&quot; data-origin-height=&quot;811&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;정상적으로 환경설정이 된 경우, Window &amp;gt; Extension 에서 ROS2 BRIDGE가 활성화되어있는 모습&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;마무리&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim 4.5.0은 ROS 2 Humble과의 연동이 매우 안정적으로 이루어지며, 별도의 Python 버전 충돌 없이도 시뮬레이션과 실제 시스템을 연계할 수 있는 환경을 제공합니다. 다음 포스팅에서는 URDF를 이용한 로봇 모델 가져오기, RViz 시각화, 그리고 MoveIt 2 연동까지 하나씩 다뤄보겠습니다.&lt;/p&gt;</description>
      <category>개발/Isaac Sim 4.5.0</category>
      <category>humble</category>
      <category>isaac sim</category>
      <category>isaac-sim</category>
      <category>ROS2</category>
      <category>ros2 bridge</category>
      <author>smlee-</author>
      <guid isPermaLink="true">https://23min.tistory.com/17</guid>
      <comments>https://23min.tistory.com/17#entry17comment</comments>
      <pubDate>Fri, 25 Jul 2025 14:37:38 +0900</pubDate>
    </item>
    <item>
      <title>Isaac Sim 4.5.0 RTX 50 시리즈에서 렌더링 품질 이슈</title>
      <link>https://23min.tistory.com/16</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;881&quot; data-origin-height=&quot;478&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DmEIH/btsPqmZTcEZ/p4kJ8buBzBlncJrdnCHkw0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DmEIH/btsPqmZTcEZ/p4kJ8buBzBlncJrdnCHkw0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DmEIH/btsPqmZTcEZ/p4kJ8buBzBlncJrdnCHkw0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDmEIH%2FbtsPqmZTcEZ%2Fp4kJ8buBzBlncJrdnCHkw0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;881&quot; height=&quot;478&quot; data-origin-width=&quot;881&quot; data-origin-height=&quot;478&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;RTX 5080 환경에서 Isaac Sim 4.5.0을 다운받고 실행하자마자 굉장히 이상한 것을 발견했다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;object가 매우 심하게 흔들리고 렌더링이 딱봐도 비정상적인 것 처럼 보였다.&lt;/p&gt;

            &lt;figure class=&quot;unsupported component-kakaotv&quot; contenteditable=&quot;false&quot; style=&quot;background:#000;margin:16px 0;min-height:72px;padding:10px 16px;display:flex;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;width:100%;max-width:100%;&quot;&gt;
                &lt;p contenteditable=&quot;false&quot; style=&quot;margin:0;color:#8a8a8a;font-size:13px;line-height:1.6;user-select:none;pointer-events:none;&quot;&gt;동영상 서비스가 종료되어 해당 콘텐츠를 재생할 수 없습니다.&lt;/p&gt;
            &lt;/figure&gt;
        
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이건 예제 중에 하나인데, 권장사양인 5080에서도 렉 걸리는 건 어쩔 수 없는 것 같다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;렉은 둘째치고, 나와 같은 50시리즈 사용자라면 뭔가 도트들이 살아움직이는듯한 우주배경복사느낌의 현상을 겪을 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1752828908541&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;RTX5080 isaac sim 4.5 ubuntu22.04 installed error on CUDA compute capability&quot; data-og-description=&quot;Note: For any Isaac Lab topics, please submit your topic to its GitHub repo (GitHub - isaac-sim/IsaacLab: Unified framework for robot learning built on NVIDIA Isaac Sim) following the instructions provided on Isaac Lab&amp;rsquo;s Contributing Guidelines (Contribu&quot; data-og-host=&quot;forums.developer.nvidia.com&quot; data-og-source-url=&quot;https://forums.developer.nvidia.com/t/rtx5080-isaac-sim-4-5-ubuntu22-04-installed-error-on-cuda-compute-capability/326200&quot; data-og-url=&quot;https://forums.developer.nvidia.com/t/rtx5080-isaac-sim-4-5-ubuntu22-04-installed-error-on-cuda-compute-capability/326200&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/QMwA2/hyZnCkhfP6/cXzLNSJSsjNr1nkfYMzwp0/img.jpg?width=650&amp;amp;height=1024&amp;amp;face=0_0_650_1024,https://scrap.kakaocdn.net/dn/p53cu/hyZjeyAEXw/1hLaAdyq78KiqdEv9bjT1K/img.jpg?width=650&amp;amp;height=1024&amp;amp;face=0_0_650_1024,https://scrap.kakaocdn.net/dn/bKKCnT/hyZnfipfNv/XJks1X2bV0o07sn8Lj5PGk/img.jpg?width=317&amp;amp;height=500&amp;amp;face=0_0_317_500&quot;&gt;&lt;a href=&quot;https://forums.developer.nvidia.com/t/rtx5080-isaac-sim-4-5-ubuntu22-04-installed-error-on-cuda-compute-capability/326200&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://forums.developer.nvidia.com/t/rtx5080-isaac-sim-4-5-ubuntu22-04-installed-error-on-cuda-compute-capability/326200&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/QMwA2/hyZnCkhfP6/cXzLNSJSsjNr1nkfYMzwp0/img.jpg?width=650&amp;amp;height=1024&amp;amp;face=0_0_650_1024,https://scrap.kakaocdn.net/dn/p53cu/hyZjeyAEXw/1hLaAdyq78KiqdEv9bjT1K/img.jpg?width=650&amp;amp;height=1024&amp;amp;face=0_0_650_1024,https://scrap.kakaocdn.net/dn/bKKCnT/hyZnfipfNv/XJks1X2bV0o07sn8Lj5PGk/img.jpg?width=317&amp;amp;height=500&amp;amp;face=0_0_317_500');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;RTX5080 isaac sim 4.5 ubuntu22.04 installed error on CUDA compute capability&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Note: For any Isaac Lab topics, please submit your topic to its GitHub repo (GitHub - isaac-sim/IsaacLab: Unified framework for robot learning built on NVIDIA Isaac Sim) following the instructions provided on Isaac Lab&amp;rsquo;s Contributing Guidelines (Contribu&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;forums.developer.nvidia.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-end=&quot;61&quot; data-start=&quot;44&quot; data-ke-size=&quot;size26&quot;&gt;증상 및 이슈 요약&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-end=&quot;546&quot; data-start=&quot;63&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li data-end=&quot;186&quot; data-start=&quot;63&quot;&gt;&lt;span&gt;&lt;b&gt;렌더링이 깨지거나 흐릿한 화면&lt;/b&gt;&lt;/span&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;186&quot; data-start=&quot;109&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;186&quot; data-start=&quot;109&quot;&gt;&lt;span&gt;화면이 마치 &quot;지지직&quot;하며, 픽셀이 깨진 듯 보임&lt;/span&gt;&amp;nbsp;&lt;span data-state=&quot;closed&quot;&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li data-end=&quot;421&quot; data-start=&quot;188&quot;&gt;&lt;span&gt;&lt;b&gt;CUDA Compute Capability 오류 메시지&lt;/b&gt;&lt;/span&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;421&quot; data-start=&quot;344&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;421&quot; data-start=&quot;344&quot;&gt;&lt;span&gt;이는 RTX 50 시리즈의 새 아키텍처(CUDA CC 12.0)가 아직 4.5.0 버전의 OptiX/Iray에서 지원되지 않기 때문&lt;/span&gt;&amp;nbsp;&lt;span data-state=&quot;closed&quot;&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;
&lt;pre id=&quot;code_1752829460403&quot; class=&quot;cs&quot; style=&quot;background-color: #f8f8f8; color: #383a42; text-align: start;&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;[Warning] &amp;hellip; CUDA compute capability 12.0 is unsupported by this version of iray photoreal.&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li data-end=&quot;546&quot; data-start=&quot;423&quot;&gt;&lt;span&gt;&lt;b&gt;Ubuntu 드라이버 업데이트 후에도 해결되지 않음&lt;/b&gt;&lt;/span&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;546&quot; data-start=&quot;469&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;546&quot; data-start=&quot;469&quot;&gt;&lt;span&gt;사용자들이 최신 570 드라이버로 교체했지만, 문제는 계속됨&lt;/span&gt; &lt;span data-state=&quot;closed&quot;&gt;&lt;span&gt;&lt;a href=&quot;https://github.com/isaac-sim/IsaacLab/issues/2141?utm_source=chatgpt.com&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;GitHub&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;hr data-end=&quot;551&quot; data-start=&quot;548&quot; data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-end=&quot;567&quot; data-start=&quot;553&quot; data-ke-size=&quot;size26&quot;&gt;공식 대응 현황&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1101&quot; data-origin-height=&quot;193&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Vpqbj/btsPqkVekdr/YmHfSEinzqa8cAky9MH6c0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Vpqbj/btsPqkVekdr/YmHfSEinzqa8cAky9MH6c0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Vpqbj/btsPqkVekdr/YmHfSEinzqa8cAky9MH6c0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FVpqbj%2FbtsPqkVekdr%2FYmHfSEinzqa8cAky9MH6c0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1101&quot; height=&quot;193&quot; data-origin-width=&quot;1101&quot; data-origin-height=&quot;193&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure id=&quot;og_1752829325115&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Isaac Sim Rendering Issue on RTX 50 series&quot; data-og-description=&quot;Dear Community, We have identified a rendering issue with Isaac Sim 4.5 (Kit 106.5) on 50 series hardware and driver version 570, causing blurry and unclear screens. We are fixing this, and it should be available in the next release of Isaac Sim in June. W&quot; data-og-host=&quot;forums.developer.nvidia.com&quot; data-og-source-url=&quot;https://forums.developer.nvidia.com/t/isaac-sim-rendering-issue-on-rtx-50-series/329300&quot; data-og-url=&quot;https://forums.developer.nvidia.com/t/isaac-sim-rendering-issue-on-rtx-50-series/329300&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/lmD2i/hyZnvZK9lm/HTtFAGUGehKiwkXUBvHdtk/img.png?width=150&amp;amp;height=80&amp;amp;face=0_0_150_80,https://scrap.kakaocdn.net/dn/dWntjA/hyZjED9ofi/4R0OlawiF0kIxp5JsovX70/img.png?width=150&amp;amp;height=80&amp;amp;face=0_0_150_80&quot;&gt;&lt;a href=&quot;https://forums.developer.nvidia.com/t/isaac-sim-rendering-issue-on-rtx-50-series/329300&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://forums.developer.nvidia.com/t/isaac-sim-rendering-issue-on-rtx-50-series/329300&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/lmD2i/hyZnvZK9lm/HTtFAGUGehKiwkXUBvHdtk/img.png?width=150&amp;amp;height=80&amp;amp;face=0_0_150_80,https://scrap.kakaocdn.net/dn/dWntjA/hyZjED9ofi/4R0OlawiF0kIxp5JsovX70/img.png?width=150&amp;amp;height=80&amp;amp;face=0_0_150_80');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Isaac Sim Rendering Issue on RTX 50 series&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Dear Community, We have identified a rendering issue with Isaac Sim 4.5 (Kit 106.5) on 50 series hardware and driver version 570, causing blurry and unclear screens. We are fixing this, and it should be available in the next release of Isaac Sim in June. W&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;forums.developer.nvidia.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr data-end=&quot;819&quot; data-start=&quot;816&quot; data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-end=&quot;831&quot; data-start=&quot;821&quot; data-ke-size=&quot;size26&quot;&gt;✅ 최종 결론&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;1047&quot; data-start=&quot;833&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;895&quot; data-start=&quot;833&quot;&gt;&lt;b&gt;Isaac Sim 4.5.0&lt;/b&gt; 버전은 &lt;b&gt;RTX 50 시리즈 GPU를 공식적으로 지원하지 않는다&lt;/b&gt;.&lt;/li&gt;
&lt;li data-end=&quot;955&quot; data-start=&quot;896&quot;&gt;&lt;b&gt;렌더링 품질 문제와 CUDA 오류&lt;/b&gt;는 GPU 아키텍처 및 OptiX 미호환 문제로 인한 것.&lt;/li&gt;
&lt;li data-end=&quot;1047&quot; data-start=&quot;956&quot;&gt;&lt;b&gt;NVIDIA 공식 권고&lt;/b&gt;: 새 버전에서 이슈 해결을 했으니&amp;nbsp;&lt;b&gt;Isaac Sim 5.0 developer preview 사용 또는 정식 5.0.0 릴리스 버전&lt;/b&gt;을 기다리자&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>개발/Isaac Sim 4.5.0</category>
      <category>5080</category>
      <category>5090</category>
      <category>isaac sim</category>
      <category>isaac sim 50시리즈 이슈</category>
      <category>isaac sim rtx 50</category>
      <category>rtx 50 series</category>
      <category>렌더링</category>
      <category>렌더링 품질</category>
      <author>smlee-</author>
      <guid isPermaLink="true">https://23min.tistory.com/16</guid>
      <comments>https://23min.tistory.com/16#entry16comment</comments>
      <pubDate>Fri, 18 Jul 2025 17:50:46 +0900</pubDate>
    </item>
    <item>
      <title>3. Isaac Sim Tutorial: Script Editor Extension으로 첫 시뮬레이션 하기</title>
      <link>https://23min.tistory.com/15</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;Isaac Sim - Script Editor Extension&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Isaac Sim의 Script Editor Extension을 활용하여 Python 코드로 오브젝트를 생성하고 물리 적용 및 조작을 해봅시다.&lt;/li&gt;
&lt;li&gt;Script Editor를 사용하면, 사용자가 Python을 사용하여 스테이지와 상호작용을 할 수 있습니다.&lt;/li&gt;
&lt;li&gt;독립실행형(Standalone) Python Workflow와 대부분 동일한 Python API를 사용하게 될 것입니다.&lt;/li&gt;
&lt;li&gt;두 Workflow의 차이점은 시뮬레이션의 타임라인과 상호작용할 때 확실히 알 수 있습니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;다음 튜토리얼에서 확실히 확인해봅시다! (Quickstart with a Robot)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Step 1. Script Editor 실행&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;새로운 Isaac Sim을 실행합니다.&lt;/li&gt;
&lt;li&gt;Menu Bar에서 Windiw &amp;gt; Script Editor를 클릭합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Step 2. Ground Plane 추가&lt;/h2&gt;
&lt;pre class=&quot;python&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;from isaacsim.core.api.objects.ground_plane import GroundPlane
GroundPlane(prim_path=&quot;/World/GroundPlane&quot;, z_position=0)&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;하단 Run 버튼 클릭 (Ctrl + Enter)&lt;/li&gt;
&lt;li&gt;Ground Plane이 생성됨&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;isim_4.5_script_editor_1.png&quot; data-origin-width=&quot;1389&quot; data-origin-height=&quot;902&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dRbfZw/btsPqGDEq2u/52uzKNNKRITUJYEFjst5JK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dRbfZw/btsPqGDEq2u/52uzKNNKRITUJYEFjst5JK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dRbfZw/btsPqGDEq2u/52uzKNNKRITUJYEFjst5JK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdRbfZw%2FbtsPqGDEq2u%2F52uzKNNKRITUJYEFjst5JK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1389&quot; height=&quot;902&quot; data-filename=&quot;isim_4.5_script_editor_1.png&quot; data-origin-width=&quot;1389&quot; data-origin-height=&quot;902&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Step 3. 조명(Light Source) 추가&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Distance Light 추가 &amp;rarr; Scene에 광원이 있지만, 빛을 반사할 개체가 없는 경우 Scene은 어두울 수 있습니다.&lt;/li&gt;
&lt;li&gt;Script Editor에서 새 탭을 엽니다. (Tab &amp;gt; Add Tab)&lt;/li&gt;
&lt;li&gt;아래 코드를 복붙, 실행하여 조명을 추가합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1752831005379&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import omni.usd
from pxr import Sdf, UsdLux

stage = omni.usd.get_context().get_stage()
distantLight = UsdLux.DistantLight.Define(stage, Sdf.Path(&quot;/DistantLight&quot;))
distantLight.CreateIntensityAttr(300)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2482&quot; data-origin-height=&quot;1409&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/doKAr7/btsPqzEOw0D/sGtdSv63g4HfRnA9dr0Eq1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/doKAr7/btsPqzEOw0D/sGtdSv63g4HfRnA9dr0Eq1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/doKAr7/btsPqzEOw0D/sGtdSv63g4HfRnA9dr0Eq1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdoKAr7%2FbtsPqzEOw0D%2FsGtdSv63g4HfRnA9dr0Eq1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2482&quot; height=&quot;1409&quot; data-origin-width=&quot;2482&quot; data-origin-height=&quot;1409&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;RTX 50 Series 유저라면, 위 이미지와 같이 렌더링 품질이 낮은 경우가 발생할 수 있는데, 이건 4.5.0 버전의 문제입니다.&lt;/li&gt;
&lt;li&gt;RTX 설정에서 Interactive (Path Tracing)을 선택하면 일단 조금은 나은 환경이 됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;isim_4.5_rtx setting.png&quot; data-origin-width=&quot;326&quot; data-origin-height=&quot;401&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nJ20o/btsPpYrpFuc/ETKwXBUphYK5y7OpRLvZj0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nJ20o/btsPpYrpFuc/ETKwXBUphYK5y7OpRLvZj0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nJ20o/btsPpYrpFuc/ETKwXBUphYK5y7OpRLvZj0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnJ20o%2FbtsPpYrpFuc%2FETKwXBUphYK5y7OpRLvZj0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;326&quot; height=&quot;401&quot; data-filename=&quot;isim_4.5_rtx setting.png&quot; data-origin-width=&quot;326&quot; data-origin-height=&quot;401&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Step 4. Visual Cube 추가&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&amp;ldquo;Visual&amp;rdquo; 큐브는 물리 속성이 포함되지 않은 큐브입니다.&lt;/li&gt;
&lt;li&gt;Script Editor에서 새 탭을 엽니다. (Tab &amp;gt; Add Tab)&lt;/li&gt;
&lt;li&gt;아래 코드를 복붙, 실행하여 두 개의 큐브를 추가합니다.&lt;/li&gt;
&lt;li&gt;하나는 visual으로 유지하고, 비교를 위해 다른 하나에 물리 및 충돌 속성을 추가하겠습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;python&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;import numpy as np
from isaacsim.core.api.objects import VisualCuboid
VisualCuboid(
   prim_path=&quot;/visual_cube&quot;,
   name=&quot;visual_cube&quot;,
   position=np.array([0, 0.5, 0.5]),
   size=0.3,
   color=np.array([255, 255, 0]),
)
VisualCuboid(
   prim_path=&quot;/test_cube&quot;,
   name=&quot;test_cube&quot;,
   position=np.array([0, -0.5, 0.5]),
   size=0.3,
   color=np.array([0, 255, 255]),
)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2479&quot; data-origin-height=&quot;1410&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bD3tAt/btsPoVbpRb2/7vdFaN87bxrOZty6bwaUNk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bD3tAt/btsPoVbpRb2/7vdFaN87bxrOZty6bwaUNk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bD3tAt/btsPoVbpRb2/7vdFaN87bxrOZty6bwaUNk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbD3tAt%2FbtsPoVbpRb2%2F7vdFaN87bxrOZty6bwaUNk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2479&quot; height=&quot;1410&quot; data-origin-width=&quot;2479&quot; data-origin-height=&quot;1410&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Isaac Sim Core API는 raw USD와 물리 엔진 api를 위한 wrapper입니다.&lt;/li&gt;
&lt;li&gt;하지만, raw USD API를 사용하여 물리 및 충돌 속성이 없는 pure visual cube를 추가할 수도 있습니다.&lt;/li&gt;
&lt;li&gt;raw USD API는 verbose(장황?)하지만 각 속성에 대한 더 많은 제어 권한을 제공합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;python&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;from pxr import UsdPhysics, PhysxSchema, Gf, PhysicsSchemaTools, UsdGeom
import omni

# USD api for getting the stage
stage = omni.usd.get_context().get_stage()

# Adding a Cube
path = &quot;/visual_cube_usd&quot;
cubeGeom = UsdGeom.Cube.Define(stage, path)
cubePrim = stage.GetPrimAtPath(path)
size = 0.5
offset = Gf.Vec3f(1.5, -0.2, 1.0)
cubeGeom.CreateSizeAttr(size)
if not cubePrim.HasAttribute(&quot;xformOp:translate&quot;):
  UsdGeom.Xformable(cubePrim).AddTranslateOp().Set(offset)
else:
  cubePrim.GetAttribute(&quot;xformOp:translate&quot;).Set(offset)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2481&quot; data-origin-height=&quot;1408&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/behKXd/btsPp8AJx1y/1ERkeEKUeiLVyq2kxRBj9k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/behKXd/btsPp8AJx1y/1ERkeEKUeiLVyq2kxRBj9k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/behKXd/btsPp8AJx1y/1ERkeEKUeiLVyq2kxRBj9k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbehKXd%2FbtsPp8AJx1y%2F1ERkeEKUeiLVyq2kxRBj9k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2481&quot; height=&quot;1408&quot; data-origin-width=&quot;2481&quot; data-origin-height=&quot;1408&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Step 5. 물리 / 충돌 속성 적용&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Isaac Sim에서 오브젝트가 중력의 영향을 받거나, 다른 오브젝트와 충돌하도록 하려면 Physics 속성과 Collision 속성을 추가해주어야 합니다.&lt;/li&gt;
&lt;li&gt;Common Physics / Collision Properties란?
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Physics Properties:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;물체의 질량(mass)과 관성 행렬(inertia matrix) 등을 포함하며, 중력의 영향을 받아 움직이는 동작을 가능하게 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Collision Properties:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;물체가 다른 물체와 충돌했을 때 상호작용을 감지할 수 있게 해주는 속성입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Isaac Sim에서는 이 과정을 간편하게 만들기 위해 자주 사용하는 물리 오브젝트에 대해 물리 속성과 충돌 속성이 포함된 래퍼 API를 제공합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;DynamicCuboid: 물리 속성이 포함된 큐브 생성 예제&lt;/h3&gt;
&lt;pre class=&quot;python&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;import numpy as np
from isaacsim.core.api.objects import DynamicCuboid

DynamicCuboid(
   prim_path=&quot;/dynamic_cube&quot;,
   name=&quot;dynamic_cube&quot;,
   position=np.array([0, -1.0, 1.0]),
   scale=np.array([0.6, 0.5, 0.2]),
   size=1.0,
   color=np.array([255, 0, 0]),
)&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;DynamicCuboid()는 기본적으로:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;물리 속성: 질량, 중력 반응 포함&lt;/li&gt;
&lt;li&gt;충돌 속성: Collider 포함&lt;/li&gt;
&lt;li&gt;시각 속성: 색상, 크기 포함&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2479&quot; data-origin-height=&quot;1408&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cH69H2/btsPqADINI6/AbHRwYHh1TnLkGaYAk2Rh0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cH69H2/btsPqADINI6/AbHRwYHh1TnLkGaYAk2Rh0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cH69H2/btsPqADINI6/AbHRwYHh1TnLkGaYAk2Rh0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcH69H2%2FbtsPqADINI6%2FAbHRwYHh1TnLkGaYAk2Rh0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2479&quot; height=&quot;1408&quot; data-origin-width=&quot;2479&quot; data-origin-height=&quot;1408&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;만약, 이미 생성한 VisualCube 혹은 다른 객체가 있다면, 다음과 같은 방식으로 나중에 물리 속성만 추가할 수도 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;RigidPrim + Collision API 적용 예제&lt;/h3&gt;
&lt;pre class=&quot;capnproto&quot;&gt;&lt;code&gt;from isaacsim.core.prims import RigidPrim
RigidPrim(&quot;/test_cube&quot;)  # 물리 속성 추가

from isaacsim.core.prims import GeometryPrim
prim = GeometryPrim(&quot;/test_cube&quot;)
prim.apply_collision_apis()  # 충돌 속성 추가

&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;RigidPrim() &amp;rarr; 질량/중력 등 물리 속성 추가&lt;/li&gt;
&lt;li&gt;apply_collision_apis() &amp;rarr; Collider 생성&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위의 DynamicCuboid 또는 test_cube에 물리/충돌 속성을 추가한 뒤, 좌측 메뉴의 ▶️ Play 버튼을 눌러보세요.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;큐브가 &lt;b&gt;중력에 의해 떨어지고&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Ground Plane에 부딪히는 물리 반응&lt;/b&gt;이 재현됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Step 6. 큐브 조작하기 (Move/Rotate/Scale)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim에서는 &lt;b&gt;Core API&lt;/b&gt;와 &lt;b&gt;Raw USD API&lt;/b&gt;를 통해 오브젝트를 이동/회전/크기 조절할 수 있습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Move는 위치를 설정합니다.&lt;/li&gt;
&lt;li&gt;Rotate는 방향을 설정하며, 주로 쿼터니언 또는 오일러 각도로 지정합니다.&lt;/li&gt;
&lt;li&gt;Scale은 오브젝트의 크기를 축별로 조절합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1) Core API 사용 예제&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim Core API에서는 &lt;b&gt;XFormPrim&lt;/b&gt; 클래스를 통해 큐브와 같은 오브젝트의 pose (위치/회전)와 크기를 손쉽게 설정할 수 있습니다.&lt;/p&gt;
&lt;pre class=&quot;angelscript&quot;&gt;&lt;code&gt;import numpy as np
from isaacsim.core.prims import XFormPrim

# 위치, 회전, 스케일 값 정의
translate_offset   = np.array([[1.5, 1.2, 1.0]])
orientation_offset = np.array([[0.7, 0.7, 0,1]])     # note this is in radians
scale              = np.array([[1.0, 1.5, 0.2]])

# 스테이지 객체 가져오기
stage = omni.usd.get_context().get_stage()

# 오브젝트 조작
cube_in_coreapi = XFormPrim(prim_paths_expr=&quot;/test_cube&quot;)
cube_in_coreapi.set_world_poses(translate_offset, orientation_offset)
cube_in_coreapi.set_local_scales(scale)
&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;set_world_poses()는 위치 + 회전을 한 번에 설정하며,&lt;/li&gt;
&lt;li&gt;set_local_scales()는 로컬 스케일을 조정합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2477&quot; data-origin-height=&quot;1409&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bO568p/btsPpPnUUDr/F3zzTdeKENcwbNKWu93LSk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bO568p/btsPpPnUUDr/F3zzTdeKENcwbNKWu93LSk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bO568p/btsPpPnUUDr/F3zzTdeKENcwbNKWu93LSk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbO568p%2FbtsPpPnUUDr%2FF3zzTdeKENcwbNKWu93LSk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2477&quot; height=&quot;1409&quot; data-origin-width=&quot;2477&quot; data-origin-height=&quot;1409&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2) raw USD API 사용 예제&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim은 NVIDIA에서 개발한 USD 기반의 시뮬레이터이기 때문에, 저수준 접근을 위해 &lt;b&gt;raw USD API (pxr 모듈)&lt;/b&gt; 를 사용할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번 예제에서는 /visual_cube_usd 경로에 위치한 시각화 큐브에 대해 &lt;b&gt;이동(Translate)&lt;/b&gt;, &lt;b&gt;회전(RotateXYZ)&lt;/b&gt;, **스케일(Scale)**을 각각 설정합니다.&lt;/p&gt;
&lt;pre class=&quot;python&quot; data-ke-language=&quot;python&quot;&gt;&lt;code&gt;from pxr import UsdGeom, Gf
import omni.usd

# 현재 Stage 가져오기
stage = omni.usd.get_context().get_stage()

# 조작할 Prim 지정
cube_prim = stage.GetPrimAtPath(&quot;/visual_cube_usd&quot;)

# 설정할 속성값 정의
translate_offset = Gf.Vec3f(1.5, -0.2, 1.0)
rotate_offset    = Gf.Vec3f(90,  -90,  180)        # note this is in degrees
scale            = Gf.Vec3f(1.0, 1.5,  0.2)

# Translation 적용
if not cube_prim.HasAttribute(&quot;xformOp:translate&quot;):
   UsdGeom.Xformable(cube_prim).AddTranslateOp().Set(translate_offset)
else:
   cube_prim.GetAttribute(&quot;xformOp:translate&quot;).Set(translate_offset)

# Rotation 적용 (Euler XYZ 순서)
# there are also &quot;xformOp:orient&quot; for quaternion rotation, 
# as well as &quot;xformOp:rotateX&quot;, &quot;xformOp:rotateY&quot;, &quot;xformOp:rotateZ&quot; 
# for individual axis rotation
if not cube_prim.HasAttribute(&quot;xformOp:rotateXYZ&quot;):        
   UsdGeom.Xformable(cube_prim).AddRotateXYZOp().Set(rotate_offset)
else:
   cube_prim.GetAttribute(&quot;xformOp:rotateXYZ&quot;).Set(rotate_offset)

# Scale 적용
if not cube_prim.HasAttribute(&quot;xformOp:scale&quot;):
   UsdGeom.Xformable(cube_prim).AddScaleOp().Set(scale)
else:
   cube_prim.GetAttribute(&quot;xformOp:scale&quot;).Set(scale)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2478&quot; data-origin-height=&quot;1411&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bc1Lem/btsPoX1nFBg/AKux9Q38n70Zl4KkKB237k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bc1Lem/btsPoX1nFBg/AKux9Q38n70Zl4KkKB237k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bc1Lem/btsPoX1nFBg/AKux9Q38n70Zl4KkKB237k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbc1Lem%2FbtsPoX1nFBg%2FAKux9Q38n70Zl4KkKB237k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2478&quot; height=&quot;1411&quot; data-origin-width=&quot;2478&quot; data-origin-height=&quot;1411&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>개발/Isaac Sim 4.5.0</category>
      <category>Isaac</category>
      <category>isaac sim</category>
      <category>nVidia</category>
      <category>script editor</category>
      <category>Sim</category>
      <category>simulation</category>
      <category>Tutorial</category>
      <author>smlee-</author>
      <guid isPermaLink="true">https://23min.tistory.com/15</guid>
      <comments>https://23min.tistory.com/15#entry15comment</comments>
      <pubDate>Fri, 18 Jul 2025 17:34:45 +0900</pubDate>
    </item>
    <item>
      <title>2. Isaac Sim Tutorial: GUI로 첫 시뮬레이션 하기</title>
      <link>https://23min.tistory.com/14</link>
      <description>&lt;blockquote data-end=&quot;238&quot; data-start=&quot;199&quot; data-ke-style=&quot;style1&quot;&gt;
&lt;p data-end=&quot;238&quot; data-start=&quot;201&quot; data-ke-size=&quot;size16&quot;&gt;&amp;ldquo;설치 끝! 이제 Isaac Sim에서 큐브 하나 떨어뜨려보자&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;hr data-end=&quot;243&quot; data-start=&quot;240&quot; data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-end=&quot;253&quot; data-start=&quot;245&quot; data-ke-size=&quot;size26&quot;&gt;목표&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;310&quot; data-start=&quot;255&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;284&quot; data-start=&quot;255&quot;&gt;GUI만으로 Isaac Sim에서 큐브를 생성하고&lt;/li&gt;
&lt;li data-end=&quot;310&quot; data-start=&quot;285&quot;&gt;중력과 충돌을 적용해서 땅에 떨어뜨려 보기&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실행 준비&lt;/h2&gt;
&lt;pre class=&quot;stylus&quot;&gt;&lt;code&gt;./isaac-sim.selector.sh
&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Isaac Sim App Selector&lt;/b&gt;가 실행되면 Isaac Sim Full 선택 &amp;rarr; &lt;b&gt;START&lt;/b&gt; 클릭&lt;/li&gt;
&lt;li&gt;실행 시 몇 분 소요될 수 있음 (Shader cache 빌드 등)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Step 1. Ground Plane 추가&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;661&quot; data-start=&quot;600&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;661&quot; data-start=&quot;600&quot;&gt;&lt;b&gt;Create &amp;gt; Physics &amp;gt; Ground Plane&lt;/b&gt; 클릭&lt;br /&gt;&amp;rarr; 바닥이 되는 물리 기반 평면 생성&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-end=&quot;703&quot; data-start=&quot;668&quot; data-ke-size=&quot;size26&quot;&gt;Step 2. 광원 추가 (Distant Light)&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;777&quot; data-start=&quot;705&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;777&quot; data-start=&quot;705&quot;&gt;&lt;b&gt;Create &amp;gt; Lights &amp;gt; Distant Light&lt;/b&gt; 클릭&lt;br /&gt;&amp;rarr; 조명을 추가하지 않으면 화면이 깜깜하게 보일 수 있음&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-end=&quot;812&quot; data-start=&quot;784&quot; data-ke-size=&quot;size26&quot;&gt;Step 3. Visual Cube 추가&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;895&quot; data-start=&quot;814&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;895&quot; data-start=&quot;814&quot;&gt;Create &amp;gt; Shapes &amp;gt; Cube 클릭&lt;br /&gt;&amp;rarr; 질량/충돌 없는 기본 큐브 생성&lt;br /&gt;&amp;rarr; Play 눌러도 이 상태에선 움직이지 않음&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;isim_4.5_base_tut_gui_add_cube.webp&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;694&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bGUA2j/btsPpWmAtf9/G88u9qVXUAFyJwJT7OjvtK/img.webp&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bGUA2j/btsPpWmAtf9/G88u9qVXUAFyJwJT7OjvtK/img.webp&quot; data-alt=&quot;움짤입니다 안보이면 클릭해서 확인해보세요&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bGUA2j/btsPpWmAtf9/G88u9qVXUAFyJwJT7OjvtK/img.webp&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbGUA2j%2FbtsPpWmAtf9%2FG88u9qVXUAFyJwJT7OjvtK%2Fimg.webp&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;694&quot; data-filename=&quot;isim_4.5_base_tut_gui_add_cube.webp&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;694&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;움짤입니다 안보이면 클릭해서 확인해보세요&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Step 4. 큐브 조작해보기 (Move/Rotate/Scale)&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;왼쪽 툴바 또는 단축키 사용&lt;br /&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;이동&lt;/td&gt;
&lt;td&gt;W&lt;/td&gt;
&lt;td&gt;방향 화살표를 드래그하여 이동&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;회전&lt;/td&gt;
&lt;td&gt;E&lt;/td&gt;
&lt;td&gt;회전 축을 기준으로 회전&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;스케일&lt;/td&gt;
&lt;td&gt;R&lt;/td&gt;
&lt;td&gt;크기 조절&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;취소&lt;/td&gt;
&lt;td&gt;ESC&lt;/td&gt;
&lt;td&gt;선택 취소&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/li&gt;
&lt;li&gt;Move 또는 Rotate는 Local 또는 World 좌표계에서 기동하는지 여부를 표시할 수 있다. (객체를 길게 클릭하여 옵션을 확인할 수 있음)&lt;/li&gt;
&lt;li&gt;오른쪽 하단 Property 창에서 숫자 입력으로 정밀 제어 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;isim_4.5_base_tut_gui_move_cube.webp&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;694&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/zBBAl/btsPpyl0IMz/H2gjmViAiL9U5VVOVWE7b0/img.webp&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/zBBAl/btsPpyl0IMz/H2gjmViAiL9U5VVOVWE7b0/img.webp&quot; data-alt=&quot;움짤입니다 안보이면 클릭해서 확인해보세요&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/zBBAl/btsPpyl0IMz/H2gjmViAiL9U5VVOVWE7b0/img.webp&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FzBBAl%2FbtsPpyl0IMz%2FH2gjmViAiL9U5VVOVWE7b0%2Fimg.webp&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;694&quot; data-filename=&quot;isim_4.5_base_tut_gui_move_cube.webp&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;694&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;움짤입니다 안보이면 클릭해서 확인해보세요&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Step 5. Cube에 물리 속성 추가 (Physics / Collision)&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Common Physics Properties
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;질량과 관성 매트릭스(mass and inertia matrix)&lt;/li&gt;
&lt;li&gt;물체가 중력에 의해 아래로 떨어질 수 있도록 하는 속성&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Collision Properties
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;개체가 다른 개체와 충돌할 수 있도록 하는 속성&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Physics 및 Collision 속성을 별도로 추가할 수 있으므로 다른 개체와 충돌하지만 중력에 의해 떨어지지 않는 개체, 또는 중력의 영향을 받지만 다른 개체와 충돌하지 않는 개체가 생길 수 있습니다. 그러나 대부분의 경우 함께 추가됩니다.&lt;/li&gt;
&lt;li&gt;물리 및 충돌 속성 추가
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;스테이지 트리에서 /World/Cube 선택&lt;/li&gt;
&lt;li&gt;Add 버튼 클릭 후 Physics 선택&lt;/li&gt;
&lt;li&gt;Rigid Body with Colliders Preset 선택&lt;/li&gt;
&lt;li&gt;재생 버튼을 눌러 큐브가 중력에 의해 떨어지고 지면과 충돌하는 것 확인&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;isim_4.5_base_tut_gui_physics_property.webp&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;694&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bc2os3/btsPosUIgGN/0pmD0OgX08ILBRO7Q6hqqK/img.webp&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bc2os3/btsPosUIgGN/0pmD0OgX08ILBRO7Q6hqqK/img.webp&quot; data-alt=&quot;움짤입니다 안보이면 클릭해서 확인해보세요&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bc2os3/btsPosUIgGN/0pmD0OgX08ILBRO7Q6hqqK/img.webp&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbc2os3%2FbtsPosUIgGN%2F0pmD0OgX08ILBRO7Q6hqqK%2Fimg.webp&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;694&quot; data-filename=&quot;isim_4.5_base_tut_gui_physics_property.webp&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;694&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;움짤입니다 안보이면 클릭해서 확인해보세요&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;</description>
      <category>개발/Isaac Sim 4.5.0</category>
      <category>Isaac</category>
      <category>isaac sim</category>
      <category>nVidia</category>
      <category>simulation</category>
      <author>smlee-</author>
      <guid isPermaLink="true">https://23min.tistory.com/14</guid>
      <comments>https://23min.tistory.com/14#entry14comment</comments>
      <pubDate>Fri, 18 Jul 2025 16:18:09 +0900</pubDate>
    </item>
    <item>
      <title>1. Isaac Sim 설치하기</title>
      <link>https://23min.tistory.com/13</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;설치에 앞서, Isaac Sim은 &lt;b&gt;Windows와 Linux 모두에서 설치 가능&lt;/b&gt;하며, 다음과 같은 다양한 환경을 지원합니다:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;  &lt;b&gt;Workstation&lt;/b&gt; (로컬 PC)&lt;/li&gt;
&lt;li&gt;  &lt;b&gt;Container&lt;/b&gt; (Docker 기반 서버)&lt;/li&gt;
&lt;li&gt;☁️ &lt;b&gt;Cloud&lt;/b&gt; (AWS 등)&lt;/li&gt;
&lt;li&gt;  &lt;b&gt;Livestream&lt;/b&gt; (원격 실시간 스트리밍)&lt;/li&gt;
&lt;li&gt; ️ &lt;b&gt;Python 개발 환경&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;  &lt;b&gt;ROS 2 연동&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;하드웨어 사양&lt;/b&gt;과 &lt;b&gt;설치 목적&lt;/b&gt;에 따라 설치 방법을 선택할 수 있으며, 이는 프로젝트의 규모나 확장성에 따라 달라집니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;설치 옵션 알아보기&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. Quick Install (가장 빠른 시작)&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;체험 중심 설치 가이드 (예상 소요: 1~3시간)&lt;/li&gt;
&lt;li&gt;Windows / Linux 모두 가능&lt;/li&gt;
&lt;li&gt;간단한 로봇팔 + 테이블 예제 포함&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.isaacsim.omniverse.nvidia.com/latest/installation/quick-install.html&quot;&gt;https://docs.isaacsim.omniverse.nvidia.com/latest/installation/quick-install.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. Full Requirements &amp;amp; Download&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim은 목적에 따라 &lt;b&gt;설치 파일&lt;/b&gt;과 &lt;b&gt;요구 사양&lt;/b&gt;이 달라집니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요소 최소 사양 권장 사양 이상적 사양&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;OS&lt;/td&gt;
&lt;td&gt;Ubuntu 20.04/22.04Windows 10/11&lt;/td&gt;
&lt;td&gt;동일&lt;/td&gt;
&lt;td&gt;동일&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CPU&lt;/td&gt;
&lt;td&gt;i7 7세대 / Ryzen 5&lt;/td&gt;
&lt;td&gt;i7 9세대 / Ryzen 7&lt;/td&gt;
&lt;td&gt;i9 / Threadripper 이상&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;코어 수&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;16&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;RAM&lt;/td&gt;
&lt;td&gt;32GB&lt;/td&gt;
&lt;td&gt;64GB&lt;/td&gt;
&lt;td&gt;64GB+&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;저장공간&lt;/td&gt;
&lt;td&gt;50GB SSD&lt;/td&gt;
&lt;td&gt;500GB SSD&lt;/td&gt;
&lt;td&gt;1TB NVMe SSD&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GPU&lt;/td&gt;
&lt;td&gt;RTX 3070&lt;/td&gt;
&lt;td&gt;RTX 4080&lt;/td&gt;
&lt;td&gt;RTX Ada 6000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;VRAM&lt;/td&gt;
&lt;td&gt;10GB&lt;/td&gt;
&lt;td&gt;16GB&lt;/td&gt;
&lt;td&gt;48GB&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ℹ️ 참고:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;10GB VRAM&lt;/b&gt;은 16MP 이상의 복잡한 장면에 부족할 수 있음&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Isaac Lab 사용 시 RAM/VRAM 추가 필요&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;A100, H100 등 &lt;b&gt;RT 코어 없는 GPU는 지원되지 않음&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자세한 내용: &lt;a href=&quot;https://docs.isaacsim.omniverse.nvidia.com/latest/installation/requirements.html&quot;&gt;공식 요구사항 링크&lt;/a&gt;&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 드라이버 요구사항&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;최신 GPU를 사용하는 경우, &lt;b&gt;NVIDIA 최신 Production Branch 드라이버&lt;/b&gt;를 수동 설치하는 것이 가장 안정적입니다.&lt;/li&gt;
&lt;li&gt;예: Ubuntu 22.04.5 + 커널 6.8 이상이면 &lt;b&gt;535.216.01&lt;/b&gt; 이상 권장&lt;/li&gt;
&lt;li&gt;설치 이슈 해결을 위한 링크:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://docs.omniverse.nvidia.com/dev-guide/latest/linux-troubleshooting.html&quot;&gt;Linux Troubleshooting&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.nvidia.com/en-us/drivers/unix/&quot;&gt;드라이버 다운로드 (Unix)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;4. 상세 설치 옵션 (Detailed Install Options)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim은 다양한 설치 구조를 제공합니다:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치 방법 설명&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Workstation 설치&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;로컬 고성능 PC에 설치하여 시뮬레이션/개발&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Container 설치&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;서버 환경, Docker 기반 병렬 처리&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Cloud 배포&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;AWS, GCP 등 클라우드 기반 테스트 환경&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Livestream Client&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;스트리밍 방식으로 시뮬 실행 (저사양 PC 대응)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Python 환경 설치&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;API 개발 및 자동화 목적&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;ROS2 연동 설치&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;실로봇과 시뮬레이션 연결을 위한 ROS2 Bridge 구성&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;5. 설치 팁 및 문제 해결&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치 시 아래 항목들을 사전에 확인하면 문제를 줄일 수 있습니다:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;NVIDIA 드라이버 버전과 CUDA 호환성&lt;/li&gt;
&lt;li&gt;Vulkan, SDL2 등의 Linux 필수 라이브러리&lt;/li&gt;
&lt;li&gt;Python 환경 구성 (Isaac Sim 4.5.0 버전 기준 Python &amp;ge; 3.10)&lt;/li&gt;
&lt;li&gt;가상환경 또는 Conda 사용 시 Qt/PySide 충돌 주의&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;6. Isaac Sim 버전 정보 및 Python 호환성&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;현재 사용 가능한 최신 안정 버전은 &lt;b&gt;Isaac Sim 4.5.0&lt;/b&gt;입니다.&lt;/li&gt;
&lt;li&gt;다음 메이저 릴리스인 &lt;b&gt;5.0.0은 개발 중&lt;/b&gt;이며, 주요 기능/API 변경이 예상됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim 버전 요구 Python 버전 상태&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style4&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;4.5.0&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;✅ &lt;b&gt;Python 3.10&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;최신 안정 버전&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;5.0.0&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;⏳ &lt;b&gt;Python 3.11&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;개발 중 (릴리즈 전 테스트 중)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;⚠️ &lt;b&gt;주의&lt;/b&gt;: Python 버전이 맞지 않으면 Isaac Sim 실행 시 오류가 발생할 수 있으므로, 가상 환경을 구성하거나 정확한 Python 버전을 사전에 준비해두는 것이 좋습니다.&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;Isaac Sim 4.5.0 설치하기 (Ubuntu 기반)&lt;/b&gt;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;⚠️ 설치 전 꼭 알아야 할 주의사항&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim 5.0.0은 PRE-RELEASE로 Git에 공개되어있습니다. 따라서, 4.5.0 버전을 설치하도록 하겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim 4.5.0은 현재(2025년 기준) 안정적으로 사용할 수 있는 &lt;b&gt;최신 정식 버전&lt;/b&gt;이지만, 몇 가지 중요한 사항을 먼저 확인해야 합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;❗ 1. &lt;b&gt;RTX 50 시리즈 GPU는 안정화되지 않았습니다&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;일부 사용자 환경에서 &lt;b&gt;RTX 5080, 5090 등 최신 GPU&lt;/b&gt;에서 &lt;b&gt;실행 오류, 드라이버 충돌, 렌더링 문제&lt;/b&gt;가 보고되고 있습니다.&lt;/li&gt;
&lt;li&gt;Isaac Sim 5.0.0에서는 이러한 문제가 개선될 예정이지만, 아직 정식 릴리스 전입니다.&lt;/li&gt;
&lt;li&gt;Isaac Lab 사용 시, &lt;b&gt;PyTorch 최신 Nightly 버전&lt;/b&gt;을 수동으로 설치해야 정상 작동할 수 있습니다. (2.7.1이 아닌 2.9.0)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;❗ 2. &lt;b&gt;Omniverse Launcher 및 Nucleus 관련 앱 종료 예정&lt;/b&gt;&lt;/h3&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;NVIDIA 공지에 따르면:&lt;/p&gt;
&lt;/blockquote&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Omniverse Launcher, Nucleus Workstation, Nucleus Cache&lt;/b&gt;는 &lt;b&gt;2025년 10월 1일부터 공식 종료&lt;/b&gt;됩니다.&lt;/li&gt;
&lt;li&gt;4.5.0은 &lt;b&gt;Omniverse Launcher 기반 마지막 릴리스&lt;/b&gt;입니다.&lt;/li&gt;
&lt;li&gt;이후부터는 &lt;b&gt;Omniverse Hub 및 Web 기반 다운로드 방식&lt;/b&gt;이 사용됩니다.&lt;/li&gt;
&lt;li&gt;Live Sync 기능은 4.5.0에서 &lt;b&gt;Deprecated&lt;/b&gt; 되었으며, 향후 완전히 제거될 예정입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;❗ 3. &lt;b&gt;패키지 종속성 충돌 주의&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;ROS 2, PyTorch, PySide2/6, Vulkan 등과 &lt;b&gt;의존성 충돌이 자주 발생&lt;/b&gt;합니다.&lt;/li&gt;
&lt;li&gt;가급적 **Python 가상환경(venv 또는 conda)**를 따로 구성하는 것이 권장됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Isaac Sim 4.5.0 설치 전 사전 점검: Isaac Sim Compatibility Checker&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;설치 전에 내 시스템이 Isaac Sim 4.5.0을 실행할 수 있는지 &lt;b&gt;자동 점검해주는 툴&lt;/b&gt;이 존재합니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;sim_checker.png&quot; data-origin-width=&quot;804&quot; data-origin-height=&quot;719&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6IepO/btsPprUNA0j/Wvwa06rs9qqFGV3NDs59r0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6IepO/btsPprUNA0j/Wvwa06rs9qqFGV3NDs59r0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6IepO/btsPprUNA0j/Wvwa06rs9qqFGV3NDs59r0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6IepO%2FbtsPprUNA0j%2FWvwa06rs9qqFGV3NDs59r0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;804&quot; height=&quot;719&quot; data-filename=&quot;sim_checker.png&quot; data-origin-width=&quot;804&quot; data-origin-height=&quot;719&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/download.html#isaac-sim-latest-release&quot;&gt;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/download.html#isaac-sim-latest-release&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1752819618345&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Download Isaac Sim &amp;mdash; Isaac Sim Documentation&quot; data-og-description=&quot;Omniverse Launcher, Nucleus Workstation, and Nucleus Cache will be deprecated and will no longer be available starting October 1, 2025. Functionality may be reduced If these applications are used after this date.&quot; data-og-host=&quot;docs.isaacsim.omniverse.nvidia.com&quot; data-og-source-url=&quot;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/download.html#isaac-sim-latest-release&quot; data-og-url=&quot;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/download.html#isaac-sim-latest-release&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/download.html#isaac-sim-latest-release&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/download.html#isaac-sim-latest-release&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Download Isaac Sim &amp;mdash; Isaac Sim Documentation&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Omniverse Launcher, Nucleus Workstation, and Nucleus Cache will be deprecated and will no longer be available starting October 1, 2025. Functionality may be reduced If these applications are used after this date.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;docs.isaacsim.omniverse.nvidia.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Linux:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;stylus&quot;&gt;&lt;code&gt;./omni.isaac.sim.compatibility_check.sh
&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Windows:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;css&quot;&gt;&lt;code&gt;omni.isaac.sim.compatibility_check.bat
&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;점검 항목&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;✅ &lt;b&gt;GPU 및 드라이버&lt;/b&gt;: RTX 지원 여부, 드라이버 버전, VRAM&lt;/li&gt;
&lt;li&gt;✅ &lt;b&gt;CPU, RAM, 저장공간&lt;/b&gt;: 코어 수, 메모리 용량, 남은 디스크&lt;/li&gt;
&lt;li&gt;✅ &lt;b&gt;운영체제 및 디스플레이&lt;/b&gt;: Ubuntu 20.04/22.04 권장, Vulkan 활성 여부 등&lt;/li&gt;
&lt;li&gt;✅ &lt;b&gt;Test Kit 실행 테스트&lt;/b&gt;: Headless 실행 가능 여부 확인&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;점검 결과는 색상(녹색, 연두, 주황, 빨강)으로 시각화되며, &amp;lsquo;Test Kit&amp;rsquo; 버튼을 눌러 실제 실행 가능 여부를 확인할 수 있습니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;488&quot; data-origin-height=&quot;549&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xStqG/btsPpQzKykW/PYki4DiPczy8YYRtVrons0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xStqG/btsPpQzKykW/PYki4DiPczy8YYRtVrons0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xStqG/btsPpQzKykW/PYki4DiPczy8YYRtVrons0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxStqG%2FbtsPpQzKykW%2FPYki4DiPczy8YYRtVrons0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;488&quot; height=&quot;549&quot; data-origin-width=&quot;488&quot; data-origin-height=&quot;549&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기까지 따라오셨다면 일단 축하드립니다! 지금까지 설치 사전 준비를 마쳤으니, 이제 본격적으로 &lt;b&gt;Workstation 환경에서 Isaac Sim 4.5.0을 설치&lt;/b&gt;하는 실습 단계로 넘어갈 수 있습니다.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Isaac Sim 4.5.0 설치 절차 요약&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim 설치를 위해 다음 절차를 순서대로 진행하세요:&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;✅ 1. 시스템 요구사항 확인&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;GPU 사양, VRAM, 드라이버 버전, OS 등 &lt;a href=&quot;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/requirements.html#isaac-sim-requirements-isaac-sim-system&quot;&gt;최소 요구사항&lt;/a&gt; 및 &lt;a href=&quot;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/requirements.html#isaac-sim-requirements-isaac-sim-drivers&quot;&gt;Driver Requirements&lt;/a&gt;을 &lt;a href=&quot;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/download.html#isaac-sim-latest-release&quot;&gt;Compatibility Checker&lt;/a&gt;로 점검합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;✅ 2. Visual Studio Code 설치 (선택)&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Python 스크립트 디버깅 및 확장 개발을 위해 &lt;b&gt;VS Code 설치&lt;/b&gt;를 권장합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;✅ 3. Isaac Sim 4.5.0 다운로드&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://developer.nvidia.com/isaac-sim&quot;&gt;NVIDIA Isaac Sim 공식 다운로드 페이지&lt;/a&gt;에서 .zip 파일 다운로드&lt;/li&gt;
&lt;li&gt;예: isaac-sim-standalone@4.5.0-rc.xx+release.xxx.zip&lt;/li&gt;
&lt;/ul&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;✅ 4. 설치 및 실행 명령어&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래 명령어를 실행:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Linux (Terminal)&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;jboss-cli&quot;&gt;&lt;code&gt;# 1. 설치 폴더 생성
mkdir ~/isaacsim

# 2. 다운로드 디렉토리로 이동
cd ~/Downloads

# 3. 압축 해제
unzip &quot;isaac-sim-standalone@4.5.0-rc.xx+release.xxx.zip&quot; -d ~/isaacsim

# 4. post_install 스크립트 실행
cd ~/isaacsim
./post_install.sh

# 5. App Selector 실행
./isaac-sim.selector.sh
&lt;/code&gt;&lt;/pre&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Windows (Command Prompt)&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;vala&quot;&gt;&lt;code&gt;# 1. 설치 폴더 생성
mkdir C:\\isaacsim

# 2. 다운로드 디렉토리로 이동
cd %USERPROFILE%/Downloads

# 3. 압축 해제
tar -xvzf &quot;isaac-sim-standalone@4.5.0-rc.36+release.19112.f59b3005.gl.windows-x86_64.release.zip&quot; -C C:\\isaacsim

# 4. post_install 스크립트 실행
cd C:\\isaacsim
post_install.bat

# 5. App Selector 실행
isaac-sim.selector.bat
&lt;/code&gt;&lt;/pre&gt;
&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  post_install.sh: 예제 폴더 링크 등 설치 후 셋업&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;  isaac-sim.selector.sh: 실행 모드 선택 GUI&lt;/p&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1217&quot; data-origin-height=&quot;1151&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cUBm7a/btsPpsfcGpy/RdJ4OWFdo8CoKKMG6n0O5k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cUBm7a/btsPpsfcGpy/RdJ4OWFdo8CoKKMG6n0O5k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cUBm7a/btsPpsfcGpy/RdJ4OWFdo8CoKKMG6n0O5k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcUBm7a%2FbtsPpsfcGpy%2FRdJ4OWFdo8CoKKMG6n0O5k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1217&quot; height=&quot;1151&quot; data-origin-width=&quot;1217&quot; data-origin-height=&quot;1151&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;✅ 5. 첫 실행&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;App Selector에서 &lt;b&gt;START 버튼&lt;/b&gt; 클릭&lt;/li&gt;
&lt;li&gt;Shader cache가 생성되며 처음 실행 시 &lt;b&gt;몇 분간 로딩이 오래 걸릴 수 있습니다&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Isaac Sim 앱이 응답하지 않습니다.&amp;nbsp;&lt;/b&gt;팝업이 뜰 수 있습니다. 터미널에서 초기 로딩을 위한 내부 스크립트가 실행되고 있으니 기다리면 됩니다. (기다리기 버튼도 누르지 않아도 됨)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;실행 성공 시, Isaac Sim GUI가 열립니다 (터미널에 &lt;b&gt;Isaac Sim Full App is loaded. &lt;/b&gt;로그 출력)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1360&quot; data-origin-height=&quot;887&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/CQ00y/btsPpslYOC2/ObEV1Tp0rzsXJlA6SW0CQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/CQ00y/btsPpslYOC2/ObEV1Tp0rzsXJlA6SW0CQk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/CQ00y/btsPpslYOC2/ObEV1Tp0rzsXJlA6SW0CQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCQ00y%2FbtsPpslYOC2%2FObEV1Tp0rzsXJlA6SW0CQk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1360&quot; height=&quot;887&quot; data-origin-width=&quot;1360&quot; data-origin-height=&quot;887&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2169&quot; data-origin-height=&quot;873&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/J3OlL/btsPpBiDEWx/QDkZy2hQQPEbQ8J3aKNoI0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/J3OlL/btsPpBiDEWx/QDkZy2hQQPEbQ8J3aKNoI0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/J3OlL/btsPpBiDEWx/QDkZy2hQQPEbQ8J3aKNoI0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJ3OlL%2FbtsPpBiDEWx%2FQDkZy2hQQPEbQ8J3aKNoI0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2169&quot; height=&quot;873&quot; data-origin-width=&quot;2169&quot; data-origin-height=&quot;873&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h3 data-end=&quot;620&quot; data-start=&quot;606&quot; data-ke-size=&quot;size23&quot;&gt;6. 첫 실행 이후&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;788&quot; data-start=&quot;622&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;788&quot; data-start=&quot;622&quot;&gt;축하합니다!! 로컬 PC용 Isaac Sim의 기본 설치를 완료했습니다!&lt;/li&gt;
&lt;li data-end=&quot;788&quot; data-start=&quot;622&quot;&gt;기본 예제를 실행하려면 메뉴에서 Examples &amp;rarr; Basics &amp;rarr; Hello World 또는 &lt;a href=&quot;https://docs.isaacsim.omniverse.nvidia.com/latest/introduction/quickstart_index.html&quot;&gt;Quick Tutorials&lt;/a&gt; 경로를 참고합니다.&lt;/li&gt;
&lt;li data-end=&quot;788&quot; data-start=&quot;622&quot;&gt;이제, 기본 튜토리얼 &lt;span style=&quot;background-color: #ffffff; color: #1a1a1a; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a style=&quot;background-color: #ffffff; color: #1a1a1a; text-align: start;&quot; href=&quot;https://docs.isaacsim.omniverse.nvidia.com/4.5.0/introduction/quickstart_index.html#isaac-sim-intro-quickstart-series&quot;&gt;&lt;span&gt;Getting Started Tutorials&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;background-color: #ffffff; color: #1a1a1a; text-align: start;&quot;&gt;&lt;span&gt; 을 따라해봅시다.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/Isaac Sim 4.5.0</category>
      <category>Isaac</category>
      <category>isaac lab</category>
      <category>isaac sim</category>
      <category>nVidia</category>
      <category>simulation</category>
      <author>smlee-</author>
      <guid isPermaLink="true">https://23min.tistory.com/13</guid>
      <comments>https://23min.tistory.com/13#entry13comment</comments>
      <pubDate>Fri, 18 Jul 2025 15:49:13 +0900</pubDate>
    </item>
    <item>
      <title>0. Isaac Sim이란? 로봇 개발자들이 주목하는 시뮬레이터</title>
      <link>https://23min.tistory.com/12</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;| 로봇 시뮬레이션, 이제는 Isaac Sim의 시대!&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;시작하며: 왜 Isaac Sim인가?&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;저는 현재 Unitree Go2 로봇을 활용한 로봇 제어 S/W를 개발하고자 하는 로봇개발 초보자입니다.&lt;/li&gt;
&lt;li&gt;로봇을 실제 환경에서 테스트하려면 다양한 변수(장애물, 위치 인식, SLAM 등)을 고려해야 합니다.&lt;/li&gt;
&lt;li&gt;이를 반복적으로 실험하려면 안정적인 시뮬레이션 환경이 꼭 필요합니다.&lt;/li&gt;
&lt;li&gt;2025년 7월 기준, 시뮬레이션 툴 중에서 가장 유망하다고 평가받는 Isaac Sim에 대해 알아보고, 실제 활용해보려 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;804&quot; data-origin-height=&quot;588&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czW4ok/btsPn1P3wYO/8m99Nsc9sv33QUekiofcnK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czW4ok/btsPn1P3wYO/8m99Nsc9sv33QUekiofcnK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czW4ok/btsPn1P3wYO/8m99Nsc9sv33QUekiofcnK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FczW4ok%2FbtsPn1P3wYO%2F8m99Nsc9sv33QUekiofcnK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;804&quot; height=&quot;588&quot; data-origin-width=&quot;804&quot; data-origin-height=&quot;588&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Isaac Sim과 더불어 다른 대표적인 로봇 시뮬레이터는 무엇이 있을까요?&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. RoboDK: 산업용 로봇 오프라인 프로그래밍 시뮬레이터&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;643&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bTSFNU/btsPn7bxILo/nyOhIQAK4hdeLVv0rgiq2K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bTSFNU/btsPn7bxILo/nyOhIQAK4hdeLVv0rgiq2K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bTSFNU/btsPn7bxILo/nyOhIQAK4hdeLVv0rgiq2K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbTSFNU%2FbtsPn7bxILo%2FnyOhIQAK4hdeLVv0rgiq2K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;643&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;643&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;개요
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;RoboDK&lt;/b&gt;는 산업용 매니퓰레이터(팔 로봇)를 위한 오프라인 프로그래밍(OLP) 및 시뮬레이션 소프트웨어입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;400개 이상의 실제 산업용 로봇 모델&lt;/b&gt;(UR, FANUC, KUKA, Yaskawa 등)을 지원하며, 실제 로봇과 동일한 경로 및 코드를 시뮬레이션할 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;주요 기능
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;기능&lt;/th&gt;
&lt;th&gt;설명&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;OLP 지원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;로봇 경로 계획, 절삭, 용접, 도장, 조립 등&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;로봇 모델&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;UR, FANUC, KUKA, ABB, Yaskawa 등 400+ 기종&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;CAD 연동&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;SolidWorks, Fusion 360, Inventor 등&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;후처리기&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;실제 로봇용 코드(Post Processors) 자동 생성&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;운영체제&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Windows, macOS, Linux, Android&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;API&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Python(권장), C++, C#, VB.NET, Matlab&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;시뮬레이션 자동화&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;GUI 기반 자동화 + 스크립트 기반 제어&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;풍부한 예제&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;다양한 산업별 예제 제공&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/li&gt;
&lt;li&gt;한계점
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;기능&lt;/th&gt;
&lt;th&gt;설명&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;동역학(Dynamics) 미지원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;운동학(Kinematics) 중심으로, 물리 기반 움직임 (걷기, 균형, 점프 등) 불가&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;센서 미지원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;LiDAR, 카메라, IMU 등의 센서 시뮬레이션 미지원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;실시간 제어&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;파이썬 스크립트는 가능하나, ROS2 연동/실시간 제어에는 한계 있음&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;복잡한 자세 제어 제한&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;다관절 로봇(4족보행/휴머노이드)의 복잡한 자세 제어 어려움&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;물리 엔진 부재&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Isaac Sim, Gazebo처럼 충돌/중력/마찰 계산 없음&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. Gazebo: ROS 공식 시뮬레이터&lt;/h3&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;245&quot; data-origin-height=&quot;352&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/P974y/btsPnJhYWIc/gKAzVcRkXMAjmszEzY2mFK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/P974y/btsPnJhYWIc/gKAzVcRkXMAjmszEzY2mFK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/P974y/btsPnJhYWIc/gKAzVcRkXMAjmszEzY2mFK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FP974y%2FbtsPnJhYWIc%2FgKAzVcRkXMAjmszEzY2mFK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;245&quot; height=&quot;352&quot; data-origin-width=&quot;245&quot; data-origin-height=&quot;352&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;개요
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;다양한 로봇 환경과 물리 기반 시뮬레이션을 제공하는 범용 오픈소스 로봇 시뮬레이션 플랫폼입니다.&lt;/li&gt;
&lt;li&gt;2002년에 시작되어, 대대적인 업그레이드와 현대화를 거쳐 2022년 이전까지를 Gazebo Classic으로 명명하고, 새로운 브랜드네임으로 &lt;b&gt;Ignition&lt;/b&gt; 이라는 브랜드를 지정하기도 하였습니다.&lt;/li&gt;
&lt;li&gt;하지만, 브랜드네임의 상표 관련 문제로 다시 Gazebo라는 이름으로 돌아오게 되었습니다.&lt;/li&gt;
&lt;li&gt;Gazebo Classic은 최신 Gazebo 라이브러리가 개발되기 전의 Gazebo 버전입니다. 클래식 버전은 주 버전 번호가 0에서 11 사이인 숫자입니다.&lt;/li&gt;
&lt;li&gt;공식 발언은 찾지 못했으나, Gazebo Sim 이라는 이름을 공식 명칭으로 사용하려는 것처럼 보입니다. (공식 홈페이지가 gazebosim.org로 등록되어 있음)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1058&quot; data-origin-height=&quot;383&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cGJ2DW/btsPnK81v9i/qrUP0qJSkACCFOraRAqhkK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cGJ2DW/btsPnK81v9i/qrUP0qJSkACCFOraRAqhkK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cGJ2DW/btsPnK81v9i/qrUP0qJSkACCFOraRAqhkK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcGJ2DW%2FbtsPnK81v9i%2FqrUP0qJSkACCFOraRAqhkK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1058&quot; height=&quot;383&quot; data-origin-width=&quot;1058&quot; data-origin-height=&quot;383&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;주요 특징&lt;/li&gt;
&lt;/ul&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;성능 최적화&lt;/b&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;기능&lt;/th&gt;
&lt;th&gt;설명&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;분산 시뮬레이션&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;여러 서버에서 연산을 분산 실행하여 성능 향상 (Performer 단위 병렬 처리)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;동적 자산 로딩&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;공간 정보를 기반으로 시뮬레이션 중 필요할 때만 자산 로딩/언로딩하여 메모리 효율 극대화&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;성능 조절&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;타임스텝 조정으로 실시간, 빠른 배속, 느린 배속 등 시뮬레이션 속도 제어 가능&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; start=&quot;2&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;플랫폼 및 통합성&lt;/b&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;기능&lt;/th&gt;
&lt;th&gt;설명&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;크로스 플랫폼&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Linux, macOS에서 안정적으로 사용 가능 (Windows는 제한적이나 향후 개선 예정)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;클라우드 통합&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;app.gazebosim.org&lt;/code&gt;에서 모델/월드 관리, 다운로드, 공유 가능&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;ROS 통합&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;ROS &amp;harr; Gazebo 브리지를 통해 메시지 자동 변환 (Protobuf &amp;harr; ROS msg)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; start=&quot;3&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;정밀 시뮬레이션&lt;/b&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;기능&lt;/th&gt;
&lt;th&gt;설명&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;정확한 물리 엔진&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;DART 기본, Bullet/ODE 등 선택 가능 (게임 엔진보다 높은 정확도)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;센서 모델링&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;카메라, 깊이카메라, LiDAR, IMU, 자이로, 고도계, 자기계 등 다양한 센서 + 노이즈 모델 적용&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;고급 렌더링&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;Ogre 2.1 기반: 그림자 맵, PBR 재질, 실시간 최적 렌더링 파이프라인 제공&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; start=&quot;4&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;유연한 확장성&lt;/b&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;기능&lt;/th&gt;
&lt;th&gt;설명&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;플러그인 시스템&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;물리/렌더링/GUI 모두 플러그인 기반 구조로 커스텀 코드 연동 가능&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;시뮬레이션 시스템 플러그인&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;사용자 정의 시뮬 시스템을 로딩해 실시간으로 시뮬레이션 상태 관찰/제어 가능&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;비동기 통신 (IPC)&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;ZeroMQ + Protobuf 기반 메시지 시스템 (빠르고 효율적, Named topic 구조 지원)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; start=&quot;5&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;툴과 인터페이스&lt;/b&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;기능&lt;/th&gt;
&lt;th&gt;설명&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;CLI (gz)&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;토픽/메시지 탐색, 실행, 로깅 등 다양한 명령어 제공&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;GUI (QtQuick)&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;시뮬레이션 시각화, 토픽 시청, 환경 제어 등 플러그인 기반 시각화&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;Web 인터페이스&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;클라우드에서 자산 검색/관리/팀 협업/시뮬 대회 참가 등 가능&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;RoboDk와 Gazebo 이외에도, 로봇 개발을 하다보면 다음과 같은 시뮬레이터들을 접하게 됩니다:&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style3&quot;&gt;RoboDK &lt;br /&gt;&amp;ndash; 산업용 팔 로봇 중심, 가공 경로 시뮬레이션&lt;br /&gt;Gazebo &lt;br /&gt;&amp;ndash; ROS 통합 최강, 범용 로봇 시뮬레이션&lt;br /&gt;Unity Robotics &lt;br /&gt;&amp;ndash; 고급 시각화 + 커스터마이징&lt;br /&gt;MuJoCo&lt;br /&gt;&amp;nbsp;&amp;ndash; 강화학습 + 휴머노이드 특화&lt;br /&gt;Webots&lt;br /&gt;&amp;nbsp;&amp;ndash; 입문자 친화적인 교육용 시뮬&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;각자 강점이 다르고, 목적에 따라 선택이 달라집니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제가 개발 중인 프로젝트는 &lt;b&gt;Unitree Go2&lt;/b&gt;를 활용해 다음을 구현하는 것입니다:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;SLAM 기반 자율 패트롤 시뮬레이션&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;센서 기반 로봇 제어 및 학습 환경 테스트&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;향후 강화학습 적용 및 실로봇 연동 가능성 고려&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;✅ 4족보행&lt;br /&gt;✅ LiDAR, IMU 등 센서 시뮬레이션&lt;br /&gt;✅ 동역학 기반 시뮬레이션&lt;br /&gt;✅ ROS2 연동&lt;br /&gt;✅ 추후 AI 연계 확장성&lt;/p&gt;
&lt;/blockquote&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;조건&lt;/th&gt;
&lt;th&gt;필요&lt;/th&gt;
&lt;th&gt;Isaac Sim 만족 여부&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;4족보행 로봇 제어&lt;/td&gt;
&lt;td&gt;✅ 필요&lt;/td&gt;
&lt;td&gt;✅ 지원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;센서 시뮬레이션 (LiDAR, IMU, RGBD)&lt;/td&gt;
&lt;td&gt;✅ 필요&lt;/td&gt;
&lt;td&gt;✅ 고정밀 지원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;동역학 기반 시뮬레이션&lt;/td&gt;
&lt;td&gt;✅ 필수&lt;/td&gt;
&lt;td&gt;✅ PhysX 기반 정밀 계산&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ROS2 연동&lt;/td&gt;
&lt;td&gt;✅ 필요&lt;/td&gt;
&lt;td&gt;✅ 공식 Bridge 제공&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;고급 렌더링&lt;/td&gt;
&lt;td&gt;시각화 분석 용이&lt;/td&gt;
&lt;td&gt;✅ RTX + PBR 지원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;강화학습 연계&lt;/td&gt;
&lt;td&gt;향후 확장용&lt;/td&gt;
&lt;td&gt;✅ Isaac Lab / Orbit 등 연계&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;Isaac Sim은 단순 시뮬레이터가 아니다&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;NVIDIA Isaac Sim은 단순한 로봇 시뮬레이터가 아니라,&lt;br /&gt;&lt;b&gt;AI 기반 로봇의 개발부터 시뮬레이션, 데이터 생성, 학습, 디지털 트윈 운영까지 전 주기를 지원하는 Omniverse 기반 로보틱스 플랫폼&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-end=&quot;369&quot; data-start=&quot;346&quot; data-ke-size=&quot;size26&quot;&gt;Isaac Sim의 3단계 철학&lt;/h2&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1221&quot; data-origin-height=&quot;508&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/uJADM/btsPpftsBUS/zGFWSu8v2ataDV0Wv1Sx20/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/uJADM/btsPpftsBUS/zGFWSu8v2ataDV0Wv1Sx20/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/uJADM/btsPpftsBUS/zGFWSu8v2ataDV0Wv1Sx20/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FuJADM%2FbtsPpftsBUS%2FzGFWSu8v2ataDV0Wv1Sx20%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1221&quot; height=&quot;508&quot; data-origin-width=&quot;1221&quot; data-origin-height=&quot;508&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-end=&quot;397&quot; data-start=&quot;371&quot; data-ke-size=&quot;size23&quot;&gt;1. &lt;b&gt;Design &amp;ndash; 설계와 통합&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;539&quot; data-start=&quot;398&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;437&quot; data-start=&quot;398&quot;&gt;Onshape, URDF, MJCF 등 다양한 로봇 설계 포맷 지원&lt;/li&gt;
&lt;li data-end=&quot;498&quot; data-start=&quot;438&quot;&gt;모든 환경은 Pixar의 &lt;b&gt;USD(Universal Scene Description)&lt;/b&gt; 기반으로 통합&lt;/li&gt;
&lt;li data-end=&quot;539&quot; data-start=&quot;499&quot;&gt;GUI와 Python API를 통해 로봇, 월드, 센서, 태스크 구성&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-end=&quot;580&quot; data-start=&quot;541&quot; data-ke-size=&quot;size23&quot;&gt;2. &lt;b&gt;Tune &amp;amp; Train &amp;ndash; 정밀 시뮬레이션 및 학습&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;792&quot; data-start=&quot;581&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;609&quot; data-start=&quot;581&quot;&gt;&lt;b&gt;PhysX 기반 고정밀 동역학 시뮬레이션&lt;/b&gt;&lt;/li&gt;
&lt;li data-end=&quot;654&quot; data-start=&quot;610&quot;&gt;&lt;b&gt;RTX 센서 시뮬레이션&lt;/b&gt; (카메라, LiDAR, IMU, 접촉센서 등)&lt;/li&gt;
&lt;li data-end=&quot;685&quot; data-start=&quot;655&quot;&gt;&lt;b&gt;Replicator&lt;/b&gt;: 합성 데이터 생성 툴킷&lt;/li&gt;
&lt;li data-end=&quot;718&quot; data-start=&quot;686&quot;&gt;&lt;b&gt;OmniGraph&lt;/b&gt;: 노드 기반 환경 제어 시스템&lt;/li&gt;
&lt;li data-end=&quot;759&quot; data-start=&quot;719&quot;&gt;&lt;b&gt;Isaac Lab&lt;/b&gt;: 강화학습 환경 구축 및 Cloner API&lt;/li&gt;
&lt;li data-end=&quot;792&quot; data-start=&quot;760&quot;&gt;&lt;b&gt;실제 로봇 없이 전체 파이프라인 사전 시뮬 가능&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-end=&quot;825&quot; data-start=&quot;794&quot; data-ke-size=&quot;size23&quot;&gt;3. &lt;b&gt;Deploy &amp;ndash; 실로봇 연결 및 운영&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-end=&quot;940&quot; data-start=&quot;826&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;858&quot; data-start=&quot;826&quot;&gt;ROS2 Bridge 및 Isaac ROS 패키지 지원&lt;/li&gt;
&lt;li data-end=&quot;895&quot; data-start=&quot;859&quot;&gt;디지털 트윈 시나리오 적용 가능 (물류창고, 지능형 맵핑 등)&lt;/li&gt;
&lt;li data-end=&quot;940&quot; data-start=&quot;896&quot;&gt;Omniverse 기반 GUI/파일 관리 API, Python/C++ 확장성&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 289px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot; data-ke-style=&quot;style15&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;&lt;b&gt;항목&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;&lt;b&gt;Isaac Sim&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;&lt;b&gt;Gazebo&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;&lt;b&gt;Unity&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;&lt;b&gt;MuJoCo&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;&lt;b&gt;RoboDK&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 42px;&quot;&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;&lt;b&gt;시뮬 범위&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;설계&lt;s&gt;학습&lt;/s&gt;배포 전 주기&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;주로 ROS 기반 센서/이동&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;시각화/인터랙션 중심&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;강화학습/휴머노이드&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;산업용 로봇 경로계획&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 42px;&quot;&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;&lt;b&gt;물리 엔진&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;✅ PhysX (GPU 기반 고정밀)&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;ODE/DART/Bullet&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;Unity PhysX (보통 정밀)&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;고정밀 독자 엔진&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;❌ 없음&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 42px;&quot;&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;&lt;b&gt;센서 시뮬레이션&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;✅ RTX 기반 다중 센서&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;✅ 다양&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;⚠️ 직접 구현&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;❌ 없음&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;❌ 없음&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 38px;&quot;&gt;
&lt;td style=&quot;height: 38px;&quot;&gt;&lt;b&gt;ROS2 연동&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 38px;&quot;&gt;✅ 공식 Bridge + Isaac ROS&lt;/td&gt;
&lt;td style=&quot;height: 38px;&quot;&gt;✅ 우수&lt;/td&gt;
&lt;td style=&quot;height: 38px;&quot;&gt;⚠️ 외부 커넥터 필요&lt;/td&gt;
&lt;td style=&quot;height: 38px;&quot;&gt;⚠️ 제한적&lt;/td&gt;
&lt;td style=&quot;height: 38px;&quot;&gt;⚠️ 거의 없음&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 41px;&quot;&gt;
&lt;td style=&quot;height: 41px;&quot;&gt;&lt;b&gt;강화학습 지원&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 41px;&quot;&gt;✅ Isaac Lab + Cloner&lt;/td&gt;
&lt;td style=&quot;height: 41px;&quot;&gt;⚠️ 간접 가능&lt;/td&gt;
&lt;td style=&quot;height: 41px;&quot;&gt;⚠️ 직접 구성 필요&lt;/td&gt;
&lt;td style=&quot;height: 41px;&quot;&gt;✅ MuJoCo + RL 전용&lt;/td&gt;
&lt;td style=&quot;height: 41px;&quot;&gt;❌ 없음&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 21px;&quot;&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;&lt;b&gt;사용자 확장성&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;Python/C++ + USD 기반&lt;/td&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;C++/ROS plugin&lt;/td&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;C#/C++/Unity SDK&lt;/td&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;Python/C++&lt;/td&gt;
&lt;td style=&quot;height: 21px;&quot;&gt;Python API 위주&lt;/td&gt;
&lt;/tr&gt;
&lt;tr style=&quot;height: 42px;&quot;&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;&lt;b&gt;디지털 트윈 구성&lt;/b&gt;&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;✅ 물류창고, 로봇팔, 맵핑 등&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;⚠️ 가능하나 수동 구성&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;⚠️ 복잡&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;⚠️ 비적합&lt;/td&gt;
&lt;td style=&quot;height: 42px;&quot;&gt;❌ 비적합&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-end=&quot;1743&quot; data-start=&quot;1710&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-end=&quot;1743&quot; data-start=&quot;1710&quot; data-ke-size=&quot;size16&quot;&gt;Isaac Sim은 다음과 같은 사람에게 최고의 선택입니다:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li data-end=&quot;1920&quot; data-start=&quot;1745&quot;&gt;센서 기반 정밀 시뮬레이션이 필요한 경우&lt;/li&gt;
&lt;li data-end=&quot;1920&quot; data-start=&quot;1745&quot;&gt;SLAM, 패트롤, 자율주행 테스트를 가상 환경에서 하고 싶은 경우&lt;/li&gt;
&lt;li data-end=&quot;1920&quot; data-start=&quot;1745&quot;&gt;강화학습 또는 합성 데이터 기반 학습이 필요한 경우&lt;/li&gt;
&lt;li data-end=&quot;1920&quot; data-start=&quot;1745&quot;&gt;ROS2를 실로봇에 연동해 Sim-to-Real 실험까지 하고 싶은 경우&lt;/li&gt;
&lt;li data-end=&quot;1920&quot; data-start=&quot;1745&quot;&gt;디지털 트윈 기반 로봇 시스템을 기획 중인 경우&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1221&quot; data-origin-height=&quot;508&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tqSFf/btsPoVV12JA/wG8Z9RGy4Jr1kNfNsuNwr0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tqSFf/btsPoVV12JA/wG8Z9RGy4Jr1kNfNsuNwr0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tqSFf/btsPoVV12JA/wG8Z9RGy4Jr1kNfNsuNwr0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtqSFf%2FbtsPoVV12JA%2FwG8Z9RGy4Jr1kNfNsuNwr0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1221&quot; height=&quot;508&quot; data-origin-width=&quot;1221&quot; data-origin-height=&quot;508&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;✍️ 정리&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수많은 시뮬레이터가 있지만, &lt;b&gt;동역학 정확도&lt;/b&gt;, &lt;b&gt;센서 정밀도&lt;/b&gt;, &lt;b&gt;시각화&lt;/b&gt;, &lt;b&gt;ROS2 연동&lt;/b&gt;, &lt;b&gt;향후 AI 확장성&lt;/b&gt;까지 모두 만족하는 도구는 결국 &lt;b&gt;Isaac Sim&lt;/b&gt;이었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제부터 Isaac Sim의 설치 및 활용에 대해 알아볼 것입니다.&lt;/p&gt;</description>
      <category>개발/Isaac Sim 4.5.0</category>
      <category>Isaac</category>
      <category>isaac gym</category>
      <category>isaac lab</category>
      <category>isaac sim</category>
      <category>nVidia</category>
      <category>robot</category>
      <category>simulation</category>
      <category>slam</category>
      <author>smlee-</author>
      <guid isPermaLink="true">https://23min.tistory.com/12</guid>
      <comments>https://23min.tistory.com/12#entry12comment</comments>
      <pubDate>Fri, 18 Jul 2025 14:42:39 +0900</pubDate>
    </item>
    <item>
      <title>포인트 클라우드, 로봇 혁신을 이끄는 활용 사례 TOP 5</title>
      <link>https://23min.tistory.com/11</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;로봇 공학이 환경을 이해하고, 스스로 움직이며, 정밀한 작업을 수행하는 비결은 어디에 있을까요?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 중심에는 바로 &lt;b&gt;포인트 클라우드 기술&lt;/b&gt;이 있습니다. 3D 데이터를 통해 로봇은 물리적 세계를 디지털화하고, 이를 활용해 새로운 가능성을 열어갑니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘은 &lt;b&gt;포인트 클라우드가 로봇을 어떻게 변화시키고 있는지&lt;/b&gt;, 가장 흥미로운 활용 사례 5가지를 통해 살펴보겠습니다. 이 기술이 로봇 공학의 미래를 어떻게 이끌어 가고 있는지 지금 바로 확인해보세요!&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&amp;nbsp;&lt;/h2&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;로봇 공학에서 포인트 클라우드가 중요한 이유&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;포인트 클라우드는 로봇이 물리적 세계를 이해하고 상호작용할 수 있는 핵심 기술입니다. 복잡한 환경에서 로봇은 3D 데이터를 통해 주위 물체를 인식하고 작업 경로를 계획하며 정밀한 조작을 수행합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;포인트 클라우드 데이터&lt;/b&gt;: 3D 스캔을 통해 생성된 포인트 클라우드 데이터 이미지 (나무, 건물, 차량 등).&lt;/li&gt;
&lt;li&gt;&lt;b&gt;LiDAR 장비를 장착한 로봇&lt;/b&gt;: LiDAR 센서를 사용해 주위 환경을 스캔하는 자율 로봇.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Point-Cloud--3-.jpg&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/mttwu/btsLD1sI86j/m6EgAUbnbUh9SoZSE7cYJ0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/mttwu/btsLD1sI86j/m6EgAUbnbUh9SoZSE7cYJ0/img.jpg&quot; data-alt=&quot;포인트 클라우드 데이터 예시&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/mttwu/btsLD1sI86j/m6EgAUbnbUh9SoZSE7cYJ0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fmttwu%2FbtsLD1sI86j%2Fm6EgAUbnbUh9SoZSE7cYJ0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1080&quot; data-filename=&quot;Point-Cloud--3-.jpg&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;포인트 클라우드 데이터 예시&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. &lt;b&gt;자율 네비게이션 (Autonomous Navigation)&lt;/b&gt;&lt;/h3&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;사용 시나리오&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;SLAM (Simultaneous Localization and Mapping):&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;SLAM 기술은 로봇이 동시에 자신의 위치를 추적(Localization)하고 주변 환경의 3D 맵을 작성(Mapping)할 수 있도록 합니다.&lt;/li&gt;
&lt;li&gt;포인트 클라우드는 LiDAR, RGB-D 카메라, 스테레오 카메라 등에서 생성된 데이터를 기반으로 실시간으로 지도를 작성합니다.&lt;/li&gt;
&lt;li&gt;이 기술은 복잡한 환경(예: 창고, 공장, 도시 도로)에서 로봇이 자율적으로 탐색하도록 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;경로 계획(Path Planning):&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;포인트 클라우드를 활용하여 로봇이 이동 가능한 공간(Navigable Space)을 탐지하고, 장애물을 피하며 최적의 경로를 계산합니다.&lt;/li&gt;
&lt;li&gt;좁은 공간, 복잡한 지형에서도 안정적인 이동이 가능하게 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;장애물 회피(Obstacle Avoidance):&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;로봇이 실시간으로 포인트 클라우드를 분석하여 고정된 물체(벽, 가구 등)와 움직이는 물체(사람, 차량 등)를 탐지하고 회피합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;예제&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;3-600x354.jpg&quot; data-origin-width=&quot;600&quot; data-origin-height=&quot;354&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bt4nTM/btsLDXYaD0N/hmr6hwawtvSTxckAZoiDxk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bt4nTM/btsLDXYaD0N/hmr6hwawtvSTxckAZoiDxk/img.jpg&quot; data-alt=&quot;LiDAR 기반 SLAM과 Camera 기반 SLAM&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bt4nTM/btsLDXYaD0N/hmr6hwawtvSTxckAZoiDxk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbt4nTM%2FbtsLDXYaD0N%2Fhmr6hwawtvSTxckAZoiDxk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;600&quot; height=&quot;354&quot; data-filename=&quot;3-600x354.jpg&quot; data-origin-width=&quot;600&quot; data-origin-height=&quot;354&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;LiDAR 기반 SLAM과 Camera 기반 SLAM&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Blog_LiDAR-1.jpg&quot; data-origin-width=&quot;800&quot; data-origin-height=&quot;280&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dqtMeL/btsLFz2Y886/FYT9nkqJKBPJPdx2KIgOVK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dqtMeL/btsLFz2Y886/FYT9nkqJKBPJPdx2KIgOVK/img.jpg&quot; data-alt=&quot;OxTS INS 및 Velodyne LiDAR로 생성된 포인트 클라우드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dqtMeL/btsLFz2Y886/FYT9nkqJKBPJPdx2KIgOVK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdqtMeL%2FbtsLFz2Y886%2FFYT9nkqJKBPJPdx2KIgOVK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;800&quot; height=&quot;280&quot; data-filename=&quot;Blog_LiDAR-1.jpg&quot; data-origin-width=&quot;800&quot; data-origin-height=&quot;280&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;OxTS INS 및 Velodyne LiDAR로 생성된 포인트 클라우드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;자율주행 차량:&lt;/b&gt;&lt;br /&gt;LiDAR를 통해 포인트 클라우드를 생성하여 도로의 차선, 표지판, 차량, 보행자 등을 탐지하고 경로를 계획합니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Tesla, Waymo와 같은 자율주행 차량은 LiDAR와 카메라의 데이터를 결합하여 3D 환경을 실시간으로 분석합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;자율 이동 로봇(AMR):&lt;/b&gt;&lt;br /&gt;물류 창고에서 포인트 클라우드를 사용하여 로봇이 물품을 옮길 최적의 경로를 계획하고, 장애물을 회피합니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;예: Amazon의 Kiva 로봇.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;드론 기반 네비게이션:&lt;/b&gt;&lt;br /&gt;드론이 복잡한 건축 환경이나 자연 환경에서 포인트 클라우드를 활용하여 충돌을 방지하며 자율 비행합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;농업 로봇:&lt;/b&gt;&lt;br /&gt;농장에서 자율적으로 이동하며 작물의 상태를 분석하고, 장애물을 회피하며 정해진 경로를 따라 작업을 수행합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;사용 기술&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;LiDAR 기반 SLAM:&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;LiDAR 센서를 통해 포인트 클라우드를 생성하고, 고정밀 환경 맵을 작성합니다.&lt;/li&gt;
&lt;li&gt;장점: 높은 정밀도, 긴 탐지 거리.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;RGB-D 카메라 기반 SLAM:&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;RGB와 깊이 정보를 동시에 사용하여 물체와 공간의 형상을 인식.&lt;/li&gt;
&lt;li&gt;장점: 비용 효율적, 실내 환경에서 유용.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;SLAM 알고리즘:&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;GMapping:&lt;/b&gt; 2D 환경에서 실시간 맵 생성.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Cartographer:&lt;/b&gt; Google에서 개발한 2D/3D SLAM 라이브러리.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;RTAB-Map:&lt;/b&gt; RGB-D 카메라와 LiDAR 데이터를 통합하여 대규모 환경에서도 정확한 3D 맵 생성.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;경로 계획 알고리즘:&lt;/b&gt;&lt;br /&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Dijkstra's 알고리즘:&lt;/b&gt; 특정 환경에서 가장 효율적인 경로를 계산.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;RRT (Rapidly-Exploring Random Tree):&lt;/b&gt; 복잡한 지형에서 최적 경로 탐색.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. &lt;b&gt;물체 탐지 및 피킹 (Object Detection and Picking)&lt;/b&gt;&lt;/h3&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;사용 시나리오&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;포인트 클라우드를 통해 물체의 위치와 형상을 인식하여 로봇 팔이 물체를 잡을 수 있도록 도움.&lt;/li&gt;
&lt;li&gt;불규칙한 형상의 물체를 정확히 파악하여 그리퍼의 적절한 위치와 방향을 계산.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;예제&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Bin Picking:&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;로봇 팔이 무작위로 쌓인 물체(예: 나사, 부품)를 포인트 클라우드를 분석하여 집어냅니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;포인트 클라우드 기반 Grasp Planning:&lt;/b&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;물체 표면의 3D 데이터를 분석하여 안정적인 그리핑(잡기) 위치를 계산합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;6360c6f1da853.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1087&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dGPdT8/btsLDT9kQUu/FE7Jr5tQ69iZ9KCDfPa050/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dGPdT8/btsLDT9kQUu/FE7Jr5tQ69iZ9KCDfPa050/img.png&quot; data-alt=&quot;로봇이 빈(Bin)에 담긴 물체를 탐지하여 피킹 수행&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dGPdT8/btsLDT9kQUu/FE7Jr5tQ69iZ9KCDfPa050/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdGPdT8%2FbtsLDT9kQUu%2FFE7Jr5tQ69iZ9KCDfPa050%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;1087&quot; data-filename=&quot;6360c6f1da853.png&quot; data-origin-width=&quot;1920&quot; data-origin-height=&quot;1087&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;로봇이 빈(Bin)에 담긴 물체를 탐지하여 피킹 수행&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;Screenshot 2025-01-06 141557.png&quot; data-origin-width=&quot;1226&quot; data-origin-height=&quot;676&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wrTlC/btsLFYHUkZ1/DKAPQqfDFOMC067KkkTjTk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wrTlC/btsLFYHUkZ1/DKAPQqfDFOMC067KkkTjTk/img.png&quot; data-alt=&quot;Zivid 社, 3D 카메라를 이용해 촬영한 고해상도 3D 데이터&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wrTlC/btsLFYHUkZ1/DKAPQqfDFOMC067KkkTjTk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwrTlC%2FbtsLFYHUkZ1%2FDKAPQqfDFOMC067KkkTjTk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1226&quot; height=&quot;676&quot; data-filename=&quot;Screenshot 2025-01-06 141557.png&quot; data-origin-width=&quot;1226&quot; data-origin-height=&quot;676&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Zivid 社, 3D 카메라를 이용해 촬영한 고해상도 3D 데이터&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;사용 기술&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;PCL(Point Cloud Library)로 물체 분할 및 표면 분석.&lt;/li&gt;
&lt;li&gt;Open3D 또는 MoveIt 같은 프레임워크로 그리핑 경로 계획.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. &lt;b&gt;환경 인식 (Environment Perception)&lt;/b&gt;&lt;/h3&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;사용 시나리오&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;로봇이 작업 환경에서 주요 객체나 특징을 식별하고 분석하여 작업에 필요한 정보를 얻습니다.&lt;/li&gt;
&lt;li&gt;복잡한 작업 환경(예: 공장, 건설 현장)에서는 포인트 클라우드를 활용해 3D 맵을 생성하고 이를 시각화하여 환경을 직관적으로 분석할 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;예제&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;rviz-view-robot-768x437.jpg&quot; data-origin-width=&quot;768&quot; data-origin-height=&quot;437&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bdahkI/btsLDVzmjx6/wDDkqKBwY0pBcEqS2ZkAhk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bdahkI/btsLDVzmjx6/wDDkqKBwY0pBcEqS2ZkAhk/img.jpg&quot; data-alt=&quot;Boston Dynamics 社, 로봇 개 SPOT이 탐지한 주변 환경 시각화&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bdahkI/btsLDVzmjx6/wDDkqKBwY0pBcEqS2ZkAhk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbdahkI%2FbtsLDVzmjx6%2FwDDkqKBwY0pBcEqS2ZkAhk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;768&quot; height=&quot;437&quot; data-filename=&quot;rviz-view-robot-768x437.jpg&quot; data-origin-width=&quot;768&quot; data-origin-height=&quot;437&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Boston Dynamics 社, 로봇 개 SPOT이 탐지한 주변 환경 시각화&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;장애물 탐지:&lt;/b&gt; 로봇이 포인트 클라우드를 사용하여 동적 또는 정적 장애물을 탐지하고 회피합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;작업 영역 분할:&lt;/b&gt; 작업 환경을 분석하여 특정 관심 영역(ROI)을 식별하고 작업에 집중.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;사용 기술&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Segmentation 알고리즘:&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;RANSAC (Random Sample Consensus):&lt;/b&gt;&lt;br /&gt;포인트 클라우드 데이터에서 평면, 곡면 등 주요 기하학적 요소를 추출하여 환경을 나눕니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Region Growing:&lt;/b&gt;&lt;br /&gt;비슷한 속성(위치, 색상, 노멀 벡터)을 가진 포인트를 그룹화하여 관심 영역을 분리합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;딥러닝 기반 물체 분류:&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;PointNet:&lt;/b&gt; 포인트 클라우드를 입력받아 3D 객체를 분류하거나 세그먼트화합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;PointCNN:&lt;/b&gt; CNN 기반으로 포인트 클라우드의 지역적 특징을 학습하여 물체를 정밀하게 분류합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;시각화 도구 및 기술:&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Open3D:&lt;/b&gt; 포인트 클라우드를 렌더링하고, 세그먼트화된 데이터를 3D로 시각화합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;PCL (Point Cloud Library):&lt;/b&gt; 포인트 클라우드 데이터를 처리 및 시각화하며, ROI를 강조하거나 색상 코딩을 통해 분석 결과를 쉽게 이해할 수 있도록 도와줍니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;ROS Rviz:&lt;/b&gt; 로봇의 센서 데이터와 포인트 클라우드를 실시간으로 통합하여 3D 환경을 시각적으로 보여줍니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4. &lt;b&gt;정밀 조작 (Precise Manipulation)&lt;/b&gt;&lt;/h3&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;사용 시나리오&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;로봇이 포인트 클라우드를 통해 물체의 위치, 자세, 형상을 분석하여 정밀한 작업(예: 삽입, 조립)을 수행합니다.&lt;/li&gt;
&lt;li&gt;산업용 제조, 물류, 의료 등 다양한 분야에서 활용되며, 작업의 정확성과 효율성을 크게 향상시킵니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;예제&lt;/b&gt;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;figure data-ke-type=&quot;video&quot; data-ke-style=&quot;alignCenter&quot; data-video-host=&quot;youtube&quot; data-video-url=&quot;https://www.youtube.com/watch?v=wXxrmussq4E&quot; data-video-thumbnail=&quot;https://scrap.kakaocdn.net/dn/Ob13f/hyXWxS8NY2/gGtNtYGtsHXN4osYc7u8G0/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720,https://scrap.kakaocdn.net/dn/UmOyo/hyXWBac9MG/mLAdP1Z9uMS9sgsOrpS8R0/img.jpg?width=1280&amp;amp;height=720&amp;amp;face=0_0_1280_720&quot; data-video-width=&quot;860&quot; data-video-height=&quot;484&quot; data-video-origin-width=&quot;860&quot; data-video-origin-height=&quot;484&quot; data-ke-mobilestyle=&quot;widthContent&quot; data-video-title=&quot;New dog-like robot from Boston Dynamics can open doors&quot; data-original-url=&quot;&quot;&gt;&lt;iframe src=&quot;https://www.youtube.com/embed/wXxrmussq4E&quot; width=&quot;860&quot; height=&quot;484&quot; frameborder=&quot;&quot; allowfullscreen=&quot;true&quot;&gt;&lt;/iframe&gt;
&lt;figcaption&gt;Boston Dynamics 社, 로봇 개 SPOT이 문을 여는 장면&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20230906184205.png&quot; data-origin-width=&quot;724&quot; data-origin-height=&quot;481&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3jNPw/btsLFyiGZE3/5afEB16X835spGTkP14qp1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3jNPw/btsLFyiGZE3/5afEB16X835spGTkP14qp1/img.png&quot; data-alt=&quot;정밀한 동작을 수행하여 부품을 조립하는 로봇 팔&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3jNPw/btsLFyiGZE3/5afEB16X835spGTkP14qp1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3jNPw%2FbtsLFyiGZE3%2F5afEB16X835spGTkP14qp1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;724&quot; height=&quot;481&quot; data-filename=&quot;20230906184205.png&quot; data-origin-width=&quot;724&quot; data-origin-height=&quot;481&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;정밀한 동작을 수행하여 부품을 조립하는 로봇 팔&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;문 열기:&lt;/b&gt;&amp;nbsp;로봇의 카메라로 손잡이의 위치를 2D/3D로 분석하고, 이를 기반으로 팔의 움직임을 제어합니다. 손잡이의 위치와 거리 데이터를 계산하고, 사전 정의된 Trajectory(경로)를 기반으로 문 손잡이를 잡고 돌린 후, 문을 당기거나 밀어 여는 동작을 수행합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt; 조립 작업&lt;/b&gt;: 로봇이 포인트 클라우드를 통해 부품을 정확히 맞추고 조립합니다. 자동차 제조 공정에서 로봇 팔이 기어박스를 조립하거나, 가전제품 생산 라인에서 부품을 정밀하게 삽입. 부품의 위치와 방향을 인식하고, 적합한 힘과 각도로 조립을 완료합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;사용 기술&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;다운로드 (6).png&quot; data-origin-width=&quot;850&quot; data-origin-height=&quot;247&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/30dBL/btsLDwGNYa0/OlpvVqT8P0VsZ6X0OlcsL0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/30dBL/btsLDwGNYa0/OlpvVqT8P0VsZ6X0OlcsL0/img.png&quot; data-alt=&quot;포인트 클라우드 정렬을 위한 ICP 알고리즘&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/30dBL/btsLDwGNYa0/OlpvVqT8P0VsZ6X0OlcsL0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F30dBL%2FbtsLDwGNYa0%2FOlpvVqT8P0VsZ6X0OlcsL0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;850&quot; height=&quot;247&quot; data-filename=&quot;다운로드 (6).png&quot; data-origin-width=&quot;850&quot; data-origin-height=&quot;247&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;포인트 클라우드 정렬을 위한 ICP 알고리즘&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;포인트 클라우드 정렬 (Alignment):&lt;/b&gt;&lt;br /&gt;포인트 클라우드 데이터를 기반으로 물체의 3D 좌표와 자세를 정렬하여 정밀한 위치 제어를 수행합니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;자동차 부품의 정확한 조립 위치 계산.&lt;/li&gt;
&lt;li&gt;표면 결함 위치를 파악해 자동 보정.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;3D 객체 탐지 및 자세 추정:&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;딥러닝 모델(예: PointNet, PointCNN)을 사용하여 포인트 클라우드로 물체를 탐지하고 자세를 추정합니다.&lt;/li&gt;
&lt;li&gt;컨베이어 벨트 위의 물체를 실시간으로 추적하고 처리.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;정밀 궤적 생성:&lt;/b&gt;&lt;br /&gt;로봇의 움직임을 미리 계획하고, 장애물을 피하며 목표물에 접근하여 작업을 수행.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;부품 삽입 과정에서 힘과 각도를 정밀하게 조정.&lt;/li&gt;
&lt;li&gt;물체의 무게나 재질에 따라 맞춤 동작 수행.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;시각화 및 피드백:&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;작업 과정을 실시간으로 시각화하여 진행 상태를 모니터링.&lt;/li&gt;
&lt;li&gt;오류나 이상이 발생할 경우 자동으로 조정하거나 재작업 수행.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;5. &lt;b&gt;로봇 협업 (Collaborative Robotics)&lt;/b&gt;&lt;/h3&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;사용 시나리오&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;협동 로봇(Cobot)이 포인트 클라우드를 활용하여 작업 환경과 인간의 위치를 감지하고 협력 작업을 수행.&lt;/li&gt;
&lt;li&gt;사람과의 충돌을 방지하거나 사람의 움직임을 따라 작업.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;예제&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;작업 공간 모니터링:&lt;/b&gt; 작업 공간을 포인트 클라우드로 실시간 분석하여 작업자의 위치를 파악하고 안전을 확보.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;동적 작업 할당:&lt;/b&gt; 로봇이 포인트 클라우드를 기반으로 작업 환경을 분석하고 동적으로 작업을 할당받아 수행.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;20240502173739504430a063c869186416c2085c84cbacd78a40b4.png&quot; data-origin-width=&quot;2171&quot; data-origin-height=&quot;1211&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/epNpWI/btsLDUmUQee/Kw6LObkePBZgALm1l2M1E1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/epNpWI/btsLDUmUQee/Kw6LObkePBZgALm1l2M1E1/img.png&quot; data-alt=&quot;레인보우로보틱스 社, 협동 로봇 라인업&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/epNpWI/btsLDUmUQee/Kw6LObkePBZgALm1l2M1E1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FepNpWI%2FbtsLDUmUQee%2FKw6LObkePBZgALm1l2M1E1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2171&quot; height=&quot;1211&quot; data-filename=&quot;20240502173739504430a063c869186416c2085c84cbacd78a40b4.png&quot; data-origin-width=&quot;2171&quot; data-origin-height=&quot;1211&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;레인보우로보틱스 社, 협동 로봇 라인업&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;a2_4.jpg&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;470&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/DZ9S9/btsLFw6eUdb/gbJetnKFcJB8SIduK5Yfz0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/DZ9S9/btsLFw6eUdb/gbJetnKFcJB8SIduK5Yfz0/img.jpg&quot; data-alt=&quot;Tesla 社, 옵티머스 Gen-2 홍보사진&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/DZ9S9/btsLFw6eUdb/gbJetnKFcJB8SIduK5Yfz0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FDZ9S9%2FbtsLFw6eUdb%2FgbJetnKFcJB8SIduK5Yfz0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1000&quot; height=&quot;470&quot; data-filename=&quot;a2_4.jpg&quot; data-origin-width=&quot;1000&quot; data-origin-height=&quot;470&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Tesla 社, 옵티머스 Gen-2 홍보사진&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;c8c50b36-34d0-4094-b589-1bef53999034.png&quot; data-origin-width=&quot;1792&quot; data-origin-height=&quot;1024&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bJpMdl/btsLFZtmGaK/CfnTbktCXBoaOq2SuIQlGk/img.webp&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bJpMdl/btsLFZtmGaK/CfnTbktCXBoaOq2SuIQlGk/img.webp&quot; data-alt=&quot;포인트 클라우드 기반 작업 관리&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bJpMdl/btsLFZtmGaK/CfnTbktCXBoaOq2SuIQlGk/img.webp&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbJpMdl%2FbtsLFZtmGaK%2FCfnTbktCXBoaOq2SuIQlGk%2Fimg.webp&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1792&quot; height=&quot;1024&quot; data-filename=&quot;c8c50b36-34d0-4094-b589-1bef53999034.png&quot; data-origin-width=&quot;1792&quot; data-origin-height=&quot;1024&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;포인트 클라우드 기반 작업 관리&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;b&gt;사용 기술&lt;/b&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;포인트 클라우드 기반 공간 분석:&lt;/b&gt; 실시간 포인트 클라우드 데이터를 처리해 인간의 위치와 물체의 상태를 인식합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;SI(System Integration):&lt;/b&gt; 로봇 협업 시스템을 구축하기 위해 센서, 로봇 컨트롤러, PLC, 그리고 사용자 인터페이스 등을 통합하여 원활한 동작을 구현합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;충돌 방지 알고리즘:&lt;/b&gt; 포인트 클라우드 데이터를 기반으로 작업 영역에서의 충돌을 예측하고, 로봇의 경로를 조정합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;AI 기반 작업 분석:&lt;/b&gt; 머신러닝 모델을 사용해 작업자의 행동 패턴을 학습하고 작업 지원을 최적화합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;ROS 및 산업용 SI 툴:&lt;/b&gt; ROS(Robot Operating System)를 기반으로 포인트 클라우드 데이터 처리와 로봇 움직임을 제어하고, 산업용 SI 툴을 활용해 다양한 기기와의 통합을 구현합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style6&quot; /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;b&gt;마무리&lt;/b&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;포인트 클라우드 기술은 단순히 로봇에게 데이터를 제공하는 것을 넘어, 로봇이 환경과 정밀하게 상호작용할 수 있는 토대를 마련해줍니다. 자율 네비게이션에서부터 정밀 조작까지, 이 기술의 가능성은 끝이 없습니다. 앞으로 포인트 클라우드는 AI, IoT, 자동화 기술과의 융합을 통해 더욱 혁신적인 로봇 솔루션을 만들어낼 것입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;로봇이 만들어갈 미래가 궁금하신가요?&lt;/b&gt; 포인트 클라우드가 그 답을 알려줄지도 모릅니다.  &lt;/p&gt;</description>
      <category>개발지식 (이론)/공부</category>
      <category>3d 데이터</category>
      <category>3d 포인트클라우드</category>
      <category>로봇</category>
      <category>자율주행</category>
      <category>테슬라</category>
      <category>포인트클라우드</category>
      <category>포인트클라우드 사용</category>
      <category>포인트클라우드 예시</category>
      <category>포인트클라우드 활용</category>
      <category>협동로봇</category>
      <author>smlee-</author>
      <guid isPermaLink="true">https://23min.tistory.com/11</guid>
      <comments>https://23min.tistory.com/11#entry11comment</comments>
      <pubDate>Mon, 6 Jan 2025 15:08:50 +0900</pubDate>
    </item>
    <item>
      <title>프로덕트 헌트(Product Hunt)란?</title>
      <link>https://23min.tistory.com/10</link>
      <description>&lt;blockquote data-ke-style=&quot;style1&quot;&gt;&lt;span style=&quot;font-family: 'Noto Serif KR';&quot;&gt;Product Hunt: 스타트업의 빌보드 차트&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;div id=&quot;SE-1959c37d-ac4a-4bb1-a162-a3787681b1b0&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-1959c37d-ac4a-4bb1-a162-a3787681b1b0&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-1959c37d-ac4a-4bb1-a162-a3787681b1b0&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-65a2739a-cad8-4b13-969c-2dbf93d8e020&quot;&gt;
&lt;p id=&quot;SE-1ec8f6f5-3f02-48f3-b438-5b35d138bd63&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;오늘날 우리는 매일 새로운 기술과 제품, 서비스들이 쏟아져 나오는 시대에 살고 있습니다. 하지만 이렇게 빠르게 변화하는 세상 속에서 정말로 가치 있는 혁신을 찾고 싶다면 어디로 가야 할까요? 바로 &lt;/span&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Product Hunt&lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;입니다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-2486b92f-1eaa-4bf6-b943-3e2f981a6abe&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;이 글에서는 Product Hunt가 무엇인지, 어떻게 활용할 수 있는지, 그리고 왜 주목해야 하는지를 자세히 살펴보겠습니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-5d1ccaaa-079b-404c-a351-64a18c481106&quot; data-a11y-title=&quot;구분선&quot; data-compid=&quot;SE-5d1ccaaa-079b-404c-a351-64a18c481106&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-5d1ccaaa-079b-404c-a351-64a18c481106&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div&gt;&lt;hr data-ke-style=&quot;style1&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-f2c371a3-0762-49e2-9855-b8321e73cbe6&quot; data-a11y-title=&quot;인용구&quot; data-compid=&quot;SE-f2c371a3-0762-49e2-9855-b8321e73cbe6&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-f2c371a3-0762-49e2-9855-b8321e73cbe6&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-c7339a60-47eb-4fe6-816e-081fca230804&quot;&gt;
&lt;h3 id=&quot;SE-5e56d5c8-7b16-45b9-8a18-b03e115d4d57&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;Product Hunt란 무엇인가요?&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-fd122396-6dec-4515-8e0c-9f4cca24f3b1&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-fd122396-6dec-4515-8e0c-9f4cca24f3b1&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-fd122396-6dec-4515-8e0c-9f4cca24f3b1&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-01e8ff77-239d-4f5e-805a-019746ca72a0&quot;&gt;
&lt;p id=&quot;SE-c9ad553e-b6cd-46cf-9192-3d7799f3aaf3&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;Product Hunt는 전 세계의 창업자, 개발자, 디자이너, 그리고 기술 애호가들이 자신들의 제품과 아이디어를 공유하는 온라인 플랫폼입니다. 2013년, Ryan Hoover에 의해 설립된 Product Hunt는 단순한 제품 소개 사이트를 넘어, 혁신과 창의성의 허브로 자리 잡았습니다. 현재는 &lt;span style=&quot;background-color: #ffffff; color: #222222; text-align: start;&quot;&gt;세계 최대 규모의 소프트웨어 출시&amp;middot;평가 플랫폼이며&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-dd47ba35-58b2-4bdd-90fa-8baea6e00f82&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-47ddf3a3-3ff2-4752-944b-c6726f7e8f5b&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;주요 기능&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;신제품 소개&lt;/b&gt;&lt;/span&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;사용자는 자신이 개발한 앱, 웹 서비스, 하드웨어, 콘텐츠 등을 플랫폼에 올릴 수 있습니다. Product Hunt는 초기 사용자들에게 제품을 소개하고 실시간 피드백을 받을 수 있는 기회를 제공합니다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;업보트 시스템&lt;/b&gt;&lt;/span&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;모든 제품은 커뮤니티의 투표(업보트)를 통해 평가받습니다. 투표 수가 많을수록 해당 제품은 더 많은 사람들에게 노출됩니다.&lt;/span&gt;&lt;/span&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1047&quot; data-origin-height=&quot;789&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UKezp/btsLFd6AHTw/yKqq0G0rRXoCLBbtCuDJy0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UKezp/btsLFd6AHTw/yKqq0G0rRXoCLBbtCuDJy0/img.png&quot; data-alt=&quot;업보트 273개를 받아 데일리 리더보드 2위를 차지한 &amp;quot;That's Rank!&amp;quot; 상품의 소개 화면&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UKezp/btsLFd6AHTw/yKqq0G0rRXoCLBbtCuDJy0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUKezp%2FbtsLFd6AHTw%2FyKqq0G0rRXoCLBbtCuDJy0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;400&quot; height=&quot;301&quot; data-origin-width=&quot;1047&quot; data-origin-height=&quot;789&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;업보트 273개를 받아 데일리 리더보드 2위를 차지한 &quot;That's Rank!&quot; 상품의 소개 화면&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;커뮤니티 참여&lt;/b&gt;&lt;/span&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;Product Hunt는 단순히 제품을 소개하는 데 그치지 않습니다. 제품의 제작자와 사용자가 댓글을 통해 직접 소통하며, 발전 방향에 대해 논의할 수 있는 커뮤니티 공간을 제공합니다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;데일리 리더보드&lt;/b&gt;&lt;/span&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;매일 가장 인기 있는 제품이 리더보드에 올라갑니다. 이 기능을 통해 현재 트렌드와 흥미로운 제품을 쉽게 확인할 수 있습니다.&lt;/span&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;figure class=&quot;imageblock alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1239&quot; data-origin-height=&quot;776&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/6ThXD/btsLFb10QbZ/6EmtHj8ZZlA605BTx3Kvm1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/6ThXD/btsLFb10QbZ/6EmtHj8ZZlA605BTx3Kvm1/img.png&quot; data-alt=&quot;2025년 1월 5일의 데일리 리더보드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/6ThXD/btsLFb10QbZ/6EmtHj8ZZlA605BTx3Kvm1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F6ThXD%2FbtsLFb10QbZ%2F6EmtHj8ZZlA605BTx3Kvm1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1239&quot; height=&quot;776&quot; data-origin-width=&quot;1239&quot; data-origin-height=&quot;776&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;2025년 1월 5일의 데일리 리더보드&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-741dadfa-eff7-4a80-8a7f-14e73eaa3b76&quot; data-a11y-title=&quot;구분선&quot; data-compid=&quot;SE-741dadfa-eff7-4a80-8a7f-14e73eaa3b76&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-741dadfa-eff7-4a80-8a7f-14e73eaa3b76&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div&gt;&lt;hr data-ke-style=&quot;style1&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-f4e7731c-0af9-4d36-b676-f58ea5052551&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-f4e7731c-0af9-4d36-b676-f58ea5052551&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-f4e7731c-0af9-4d36-b676-f58ea5052551&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-fcc0a881-79ce-493a-a543-f1670a415253&quot;&gt;
&lt;h2 id=&quot;SE-94ffd08c-6d2f-4eab-8059-02830ad01d8c&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;Product Hunt를 어떻게 활용할 수 있을까요?&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-75cf45b3-960a-4b79-a908-bcb1bf344ddd&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;Product Hunt는 다양한 사용자들에게 각기 다른 가치를 제공합니다. 여기 몇 가지 활용 사례를 소개합니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 id=&quot;SE-973a5b0c-ba3d-4c20-80d0-b0a4ffd17a31&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;1. 창업자와 개발자&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;초기 사용자 확보&lt;/b&gt;: 새로 만든 제품을 Product Hunt에 소개하면, 기술에 관심 있는 초기 사용자들이 제품을 사용해 보고 피드백을 줄 것입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;피드백을 통한 개선&lt;/b&gt;: 댓글을 통해 제품에 대한 개선 아이디어를 얻을 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;홍보와 트래픽 증가&lt;/b&gt;: 리더보드 상위에 오르면 제품이 더 많은 사람들에게 노출됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&quot;SE-231e5a47-febb-4f20-9be9-991fe1cefa84&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;2. 기술 애호가&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;새로운 트렌드 탐색&lt;/b&gt;: 생산성 도구, AI, 게임, 교육 등 관심 분야의 최신 기술과 제품을 한눈에 볼 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;커뮤니티 참여&lt;/b&gt;: 제품에 대한 자신의 의견을 공유하거나 제작자와 대화를 나눌 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id=&quot;SE-02f8b6a1-e35b-487c-8edb-6e55b3bdec65&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;3. 투자자와 전문가&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;유망 스타트업 발굴&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;: Product Hunt는 초기 단계의 스타트업과 혁신적인 아이디어를 발견할 수 있는 최적의 장소입니다.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;기술 트렌드 분석&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;: 현재 어떤 기술이 주목받고 있는지 쉽게 파악할 수 있습니다.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p id=&quot;SE-49db3e25-1d0c-4cb6-af30-dd448848a9da&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-19c894a9-dc12-492c-a240-0eb59748375e&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;u&gt;※ 저는 앞으로 기술 애호가와 투자자의 입장으로 기술 트렌트와 최신의 아이디어 상품을 알아가기 위한 글을 작성하려 합니다.&lt;/u&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-3924d30c-7d1a-4876-859d-c355fda9c316&quot; data-a11y-title=&quot;구분선&quot; data-compid=&quot;SE-3924d30c-7d1a-4876-859d-c355fda9c316&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-3924d30c-7d1a-4876-859d-c355fda9c316&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div&gt;&lt;hr data-ke-style=&quot;style1&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-ae156560-3aea-4fb2-9cb2-aa32cd9d2453&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-ae156560-3aea-4fb2-9cb2-aa32cd9d2453&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-ae156560-3aea-4fb2-9cb2-aa32cd9d2453&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-366ca47a-36e4-4a1b-b16e-daefd5910954&quot;&gt;
&lt;h2 id=&quot;SE-81360168-d845-415e-8400-84dad3688dce&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;주목할 만한 Product Hunt의 특징&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;h4 id=&quot;SE-6f29d8bb-c8c8-4998-b7fc-a2d2e60e2a7d&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;1. 토픽별 탐색&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p id=&quot;SE-aec8e2ae-9aae-4cbb-ab4c-3950e305484d&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;관심 있는 카테고리(예: 생산성, AI, 디자인, 교육 등)를 따라가며 트렌드를 분석하고 새로운 제품을 발견할 수 있습니다.&lt;/span&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;h4 id=&quot;SE-b7e4d6fc-2147-42c7-9ae7-b211a29b880e&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;2. 컬렉션 기능&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p id=&quot;SE-eb56261d-ab15-46c3-b6d4-6685513a5b0f&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;특정 주제를 기준으로 묶인 제품 리스트를 탐색할 수 있습니다. 예를 들어, &quot;리모트 워크를 위한 툴&quot;이나 &quot;스타트업에 유용한 도구&quot; 같은 컬렉션이 제공됩니다.&lt;/span&gt;&lt;/p&gt;
&lt;h4 id=&quot;SE-8b3b1393-280e-4810-8be3-9f0f28046213&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;3. 글로벌 커뮤니티&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p id=&quot;SE-3c815491-a92d-4f2d-ac6a-15d3bae42202&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;Product Hunt는 전 세계의 사용자들이 모이는 플랫폼입니다. 다양한 배경을 가진 사람들과 교류하며 넓은 시야를 가질 수 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-09f123a9-1a8d-4b09-8aba-841377a03d76&quot; data-a11y-title=&quot;구분선&quot; data-compid=&quot;SE-09f123a9-1a8d-4b09-8aba-841377a03d76&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-09f123a9-1a8d-4b09-8aba-841377a03d76&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div&gt;&lt;hr data-ke-style=&quot;style1&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-4a6d028b-bc03-4d3b-b1c2-352da30b513f&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-4a6d028b-bc03-4d3b-b1c2-352da30b513f&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-4a6d028b-bc03-4d3b-b1c2-352da30b513f&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-6c595251-a60c-4aac-88d1-860bece6022c&quot;&gt;
&lt;h2 id=&quot;SE-7d69f5e9-fc47-438f-a269-bec14d97aacb&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;Product Hunt의 매력: 왜 사용해야 할까요?&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p id=&quot;SE-e87fd80e-9c15-41ef-a04f-26312d2131ba&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;Product Hunt&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;는 단순한 제품 소개를 넘어, 창업자와 사용자 간의 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;상호작용&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;을 촉진합니다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-0aed75dd-5810-49a5-b665-b1fc37eec25a&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;또한, 기술에 관심 있는 사람이라면 누구나 최신 트렌드를 발견하고, 미래 기술에 대한 통찰을 얻을 수 있는 곳입니다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-1571d53f-2557-4859-b6de-29aac12f4c8b&quot; data-a11y-title=&quot;구분선&quot; data-compid=&quot;SE-1571d53f-2557-4859-b6de-29aac12f4c8b&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-1571d53f-2557-4859-b6de-29aac12f4c8b&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div&gt;&lt;hr data-ke-style=&quot;style1&quot; /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-44349dd2-f9d2-4282-94c4-0d9c1c920d08&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-44349dd2-f9d2-4282-94c4-0d9c1c920d08&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-44349dd2-f9d2-4282-94c4-0d9c1c920d08&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-1834f560-70ba-4fda-8c85-9399d338aa02&quot;&gt;
&lt;h2 id=&quot;SE-41d9541b-3751-4b4e-9a78-b5d49f12f490&quot; data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;마무리: 새로운 아이디어를 찾고 있다면?&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p id=&quot;SE-da9a44bb-2500-4f18-b322-c34aede89b1d&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;기술과 창의력, 그리고 커뮤니티의 힘이 결합된 &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;b&gt;Product Hunt&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;는 혁신과 아이디어를 발견하고, 성장시키고, 공유하는 데 최적화된 플랫폼입니다.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-dfae0362-d4f2-4e0c-8abb-676f8ba2daf4&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;최신 트렌드를 확인하고자 하는 목표로 Product Hunt에 등록된 좋은 제품을 리뷰해볼 생각입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-6fec2e67-67b5-4182-85a2-57d629f1217c&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #000000; font-family: 'Nanum Gothic';&quot;&gt;지금 바로 Product Hunt에 방문하여 당신만의 영감을 발견해 보세요!&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-16ef1fe0-9328-4549-9fe3-c7570e3f262b&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-10dfc9a2-393e-48a1-94c0-ffe098abc63e&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt; &lt;/span&gt;&lt;a href=&quot;https://www.producthunt.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt; Product Hunt 바로가기&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;figure id=&quot;og_1736134851242&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Product Hunt &amp;ndash; The best new products in tech.&quot; data-og-description=&quot;Product Hunt is a curation of the best new products, every day. Discover the latest mobile apps, websites, and technology products that everyone's talking about.&quot; data-og-host=&quot;www.producthunt.com&quot; data-og-source-url=&quot;https://www.producthunt.com/&quot; data-og-url=&quot;https://www.producthunt.com/&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/yqfnr/hyXWm499Lw/ylEYE8pBzkcmVgrKutOVBK/img.png?width=596&amp;amp;height=360&amp;amp;face=0_0_596_360,https://scrap.kakaocdn.net/dn/A7qur/hyXWtwqz4y/pQjVtJCsqsopQ3PU1CHWcK/img.png?width=596&amp;amp;height=360&amp;amp;face=0_0_596_360,https://scrap.kakaocdn.net/dn/dbL0oN/hyXWwtbXEt/IfOPXKcm4ROH7TZ7bYaOx1/img.jpg?width=2000&amp;amp;height=400&amp;amp;face=0_0_2000_400&quot;&gt;&lt;a href=&quot;https://www.producthunt.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.producthunt.com/&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/yqfnr/hyXWm499Lw/ylEYE8pBzkcmVgrKutOVBK/img.png?width=596&amp;amp;height=360&amp;amp;face=0_0_596_360,https://scrap.kakaocdn.net/dn/A7qur/hyXWtwqz4y/pQjVtJCsqsopQ3PU1CHWcK/img.png?width=596&amp;amp;height=360&amp;amp;face=0_0_596_360,https://scrap.kakaocdn.net/dn/dbL0oN/hyXWwtbXEt/IfOPXKcm4ROH7TZ7bYaOx1/img.jpg?width=2000&amp;amp;height=400&amp;amp;face=0_0_2000_400');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Product Hunt &amp;ndash; The best new products in tech.&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Product Hunt is a curation of the best new products, every day. Discover the latest mobile apps, websites, and technology products that everyone's talking about.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.producthunt.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-6f963821-9afb-49ac-a8fe-f4bfb4907b67&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-6f963821-9afb-49ac-a8fe-f4bfb4907b67&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-6f963821-9afb-49ac-a8fe-f4bfb4907b67&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-ffd53f86-fe29-4b34-b2f9-52d2396a396e&quot;&gt;
&lt;p id=&quot;SE-7d30418f-cfc5-40bc-9515-6cbcf78c5e56&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Product Hunt</category>
      <category>IT 트렌드</category>
      <category>product</category>
      <category>product hunt</category>
      <category>기술 트렌드</category>
      <category>아이디어</category>
      <category>트렌드</category>
      <category>프로그램</category>
      <category>혁신</category>
      <author>smlee-</author>
      <guid isPermaLink="true">https://23min.tistory.com/10</guid>
      <comments>https://23min.tistory.com/10#entry10comment</comments>
      <pubDate>Mon, 6 Jan 2025 12:51:46 +0900</pubDate>
    </item>
    <item>
      <title>포인트 클라우드(Point Cloud)란?</title>
      <link>https://23min.tistory.com/8</link>
      <description>&lt;h1&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;Point Cloud&lt;/b&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Lidar 센서, RGB-D센서 등으로 수집되는 데이터를 의미한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이러한 센서들은 아래 그림처럼 물체에 빛/신호를 보내서 돌아오는 시간을 기록하여 각 &lt;b&gt;빛/신호 당 거리 정보를 계산&lt;/b&gt;하고, 하나의 포인트(점)을 생성한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JIyVR/btqM38q2V9K/X9xnSQ5KdsxzYhfU6JqsaK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JIyVR/btqM38q2V9K/X9xnSQ5KdsxzYhfU6JqsaK/img.png&quot; data-alt=&quot;Point Cloud의 정의&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JIyVR/btqM38q2V9K/X9xnSQ5KdsxzYhfU6JqsaK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJIyVR%2FbtqM38q2V9K%2FX9xnSQ5KdsxzYhfU6JqsaK%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Point Cloud의 정의&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;포인트 클라우드는 3차원 공간상에 퍼져 있는 여러 포인트(Point)의 집합(set cloud)를 의미한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Lidar 센서와 RGB-D 센서로 수집된 데이터는 각각 아래 그림과 같이 나타난다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dwnPR0/btqM2H1v4Tz/1EgiZIUvZ9SVCz5uJMmcik/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dwnPR0/btqM2H1v4Tz/1EgiZIUvZ9SVCz5uJMmcik/img.png&quot; data-alt=&quot;Lidar 센서로 수집된 Point Cloud&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dwnPR0/btqM2H1v4Tz/1EgiZIUvZ9SVCz5uJMmcik/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdwnPR0%2FbtqM2H1v4Tz%2F1EgiZIUvZ9SVCz5uJMmcik%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Lidar 센서로 수집된 Point Cloud&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dURUOA/btqM9rCEGpO/odbfwBpvvU5f9hc0QZAiS0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dURUOA/btqM9rCEGpO/odbfwBpvvU5f9hc0QZAiS0/img.png&quot; data-alt=&quot;RGB-D 센서로 수집된 Point Cloud&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dURUOA/btqM9rCEGpO/odbfwBpvvU5f9hc0QZAiS0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdURUOA%2FbtqM9rCEGpO%2FodbfwBpvvU5f9hc0QZAiS0%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;RGB-D 센서로 수집된 Point Cloud&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;점군(Point Cloud)은 2D 이미지와 다르게 깊이(z축) 정보를 가지고 있기 때문에, 기본적으로 &lt;code&gt;N X 3&lt;/code&gt; Numpy 배열로 표현된다. &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;여기서 각 N 줄은 하나의 점과 맵핑이 되며, 3(x, y, z) 정보를 가지고 있다.&lt;/span&gt;&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style7&quot; /&gt;
&lt;h1&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;이미지 데이터와 Point Cloud&lt;/b&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bXxxRN/btqM65fPFH8/pmhYv7LFA4HMaffUlbiH3k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bXxxRN/btqM65fPFH8/pmhYv7LFA4HMaffUlbiH3k/img.png&quot; data-alt=&quot;이미지 데이터&amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp; &amp;amp;amp;nbsp;Point Cloud 데이터&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bXxxRN/btqM65fPFH8/pmhYv7LFA4HMaffUlbiH3k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbXxxRN%2FbtqM65fPFH8%2FpmhYv7LFA4HMaffUlbiH3k%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이미지 데이터&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Point Cloud 데이터&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이미지 데이터에서 픽셀의 위치 정보는 항상 &lt;code&gt;양수&lt;/code&gt;이다. 기준점은 &lt;b&gt;왼쪽 위&lt;/b&gt; 부터이며 좌표값은 정수로 표현한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Point Cloud에서 점의 위치는 &lt;code&gt;양수 또는 음수&lt;/code&gt;이다. 기준점은 &lt;b&gt;센서의 위치&lt;/b&gt;이며, 좌표값은 실수로 표현한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;기준점의 좌표에서 x, y, z 값은 다음과 같이 나타낸다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;x : 앞, 뒤&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;y : 왼쪽, 오른쪽&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;z : 위, 아래&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/tYlix/btqM4ywiHb3/rhfUBussiMe8C7f874uv7K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/tYlix/btqM4ywiHb3/rhfUBussiMe8C7f874uv7K/img.png&quot; data-alt=&quot;이미지 데이터와 Point Cloud 데이터의 위치 정보 표현 방식&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/tYlix/btqM4ywiHb3/rhfUBussiMe8C7f874uv7K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FtYlix%2FbtqM4ywiHb3%2FrhfUBussiMe8C7f874uv7K%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;이미지 데이터와 Point Cloud 데이터의 위치 정보 표현 방식&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;hr /&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;Point Cloud Technology의 이해를 돕는 다섯 가지 리스트&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;b&gt;&lt;i&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Points are Easy&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;b&gt;&lt;i&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;There are many many Point Cloud Formats&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;b&gt;&lt;i&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;There is a Point Cloud Library&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;b&gt;&lt;i&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Point Clouds Takes Time&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;b&gt;&lt;i&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Point Clouds are Evolving&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;h2&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;i&gt;&lt;b&gt;Fact 1: Points are Easy&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;유용한 Point Cloud의 핵심은 &lt;b&gt;Individual&lt;/b&gt; 하며 &lt;b&gt;Unrelated&lt;/b&gt; 한 점을 사용하는 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Point Cloud는 상대적으로 쉽게 Edit, Display, Filtering 할 수 있는 무료 소프트웨어들이 있다. ( e. g. CloudCompare )&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;컴퓨터는 Point들의 Scale 혹은 Rotation을 고려하지 않아도 되고, 각 Point의 Position 이나 Color 정보만을 사용한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이러한 특징은 Detailed Data의 방대한 용량을 효율적으로 사용할 수 있게 한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;또한, Point Cloud는 &lt;b&gt;건물 또는 객체의 속성을 측정하는 데&lt;/b&gt; 방해를 받지 않는 방법이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;예를 들면, 병원, 학교 및 스포츠 경기장과 같은 장소들을 측정하기 위해 해당 장소를 폐쇄할 필요가 없다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;대신에, 이러한 방법은 폐쇄 시간 이후에(가동 중지 시간, 혹은 업무 시간이 아닐 때) 수행할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이러한 측정 기술은 다른 방식보다 훨씬 더 정확하고 상세하다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Point Cloud 이전에는 3D 측량이 거의 없었다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;h2&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;i&gt;&lt;b&gt;Fact 2: There are many many Point Cloud Formats&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3D 모델링을 위한 파일 형식은 수백개가 존재한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이것들의 호환성만 생각해도 머리가 지끈하다..&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;- Point Cloud의 파일 형식의 예&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;code&gt;*. asc&lt;/code&gt; ,&lt;code&gt;*. cl3&lt;/code&gt; , &lt;code&gt;*. clr&lt;/code&gt; , &lt;code&gt;*. fls&lt;/code&gt; , &lt;code&gt;*. fws&lt;/code&gt; ,&lt;code&gt;*. las&lt;/code&gt; , &lt;code&gt;*. ptg&lt;/code&gt; , &lt;code&gt;*. pts&lt;/code&gt; , &lt;code&gt;*. ptx&lt;/code&gt; , &lt;code&gt;*. txt&lt;/code&gt; ,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt; &lt;code&gt;*. pcd&lt;/code&gt; , &lt;code&gt;*. xyz&lt;/code&gt; 등&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;단순히 x, y, z 정보만을 가진 &lt;code&gt;*. xyz&lt;/code&gt; 포맷을 이용하여도 되고, 헤더 정보와 x, y, z를 가진 &lt;code&gt;*.pcd&lt;/code&gt; 포맷을 이용하기도 한다.&lt;/span&gt;&lt;br /&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;일반적으로 사용되는 &lt;code&gt;*.pcd&lt;/code&gt; 포맷은 Header와 Data 세션으로 나누어진다.&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Header : 전체 포인트 수, 데이터 타입, 크기 등의 정보&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Data : x, y, z 또는 x, y, z + 추가정보&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;데이터를 어디에 어떻게, 누가 사용할지에 따라서 Output Format을 잘 설정하여 저장해야 한다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;h2&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;i&gt;&lt;b&gt;Fact 3: There is a Point Cloud Library(PCL)&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Point Cloud를 다루는 어느 회사나 조직들도 100% 자신들의 기술력으로 Point Cloud를 사용하지 않는다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Point Cloud를 처리하는 Open Source, 즉 Library를 활용하기 마련이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;PCL(Point Cloud Library)은 오픈소스 소프트웨어이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;연구의 목적으로 사용하는 데 있어 무료이며, 다양한 OS에서 컴파일할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;pcl_filters&lt;/b&gt; : 3D 점군 데이터에서 이상값과 노이즈 제거 등의 필터링&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;pcl_features : 점군 데이터로부터 3D 특징 추정 (feature estimation) 을 위한 수많은 자료 구조와 방법들&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;pcl_keypoints : Keypoint (or interest point) 을 검출하는 알고리즘 구현 (BRISK, Harris Corner, NARF, SIFT, SUSAN 등)&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;pcl_registration : 여러 데이터셋을 합쳐 큰 모델로 만드는 registration 작업 (ICP 등)&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;pcl_kdtree&lt;/b&gt; : 빠른 최근거리 이웃을 탐색하는 FLANN 라이브러리를 사용한 kdtree 자료 구조&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;pcl_octree : 점군 데이터로부터 계층 트리 구조를 구성하는 방법&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;pcl_segmentation : 점군으로부터 클러스터들로 구분하는 알고리즘들&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;pcl_sample_consensus : 선, 평면, 실린더 등의 모델 계수 추정을 위한 RANSAC 등의 알고리즘들&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;pcl_surface : 3D 표면 복원 기법들 (meshing, convex hulls, Moving Least Squares 등)&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;pcl_range_image : range image (or depth map) 을 나타내고 처리하는 방법&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;pcl_io : OpenNI 호환 depth camera 로부터 점군 데이터를 읽고 쓰는 방법&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;pcl_visualization : 3D 점군 데이터를 처리하는 알고리즘의 결과를 시각화&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;h2&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;i&gt;&lt;b&gt;Fact 4: Point Clouds Takes Time&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Point Cloud 데이터를 수집하는 핵심은 스캔된 표면에 대한 &lt;b&gt;&lt;i&gt;Access / Visibility &lt;/i&gt;&lt;/b&gt;이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;대부분의 경우, Point Cloud는 실제 객체에 대한 가시적 접근(Visiable access)를 통해 얻는다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이것은 단순히 모든 스캔 위치를 커버하는 데 시간이 걸린다는 의미이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;위에서 모든 위치에 대해 스캔하여 가져온 &quot;레이저 스캔&quot;을 정렬하는 것도 문제가 될 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Target이 설정되었거나, 움직이는 Target을 정렬하려고 할 수도 있고, 혹은 Target을 정하지 않고 스캔한 뒤 컴퓨터로 교차검증을 하며 수동적으로 오버랩핑하는 스캔방식을 사용할 수도 있다.&lt;/span&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;전통적으로, Target의 placement를 피함으로써 절약된 시간은 사무실에서 보내는 시간보다 더 시간 소모가 크다. (?)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;예를 들어, 중간 규모 건물의 130개의 스캔 포인트 클라우드 데이터 세트를 처리하는 데 거의 25 시간이 걸릴 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이러한 스캔을 수집하는 데 하루 밖에 걸리지 않았을 수 있지만, 수동방식으로 하는 처리방법은 해당 포인트 클라우드 데이터 세트의 등록을 수행하는 데 약 3 일이 소요될 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;그리고, 수동 수정이 필요한 경우 더 오래 걸릴 수 있습니다. 기존 방법을 사용하는 &lt;b&gt;28-scan 데이터 세트는 일반적으로 완료하는 데 4 시간이 걸린다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;Missing link를 위한 Practical Targetless Registraion의 개발은 automated processing software로 한다.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;h2&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;i&gt;&lt;b&gt;Fact 5: Point Clouds are Evolving&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;포인트 클라우드는 Application 영역에서 점점 더 관련성이 높아지고 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;3D Point Cloud의 데이터 가용성, 정확성, 밀도 및 크기는 향후 몇 년 내에 크게 증가할 것으로 예상된다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;(availability, accuracy, density, and size)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;기술의 발전으로 스캐너와 포인트 클라우드가 이러한 잠재력을 실현할 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;머신러닝 알고리즘&lt;/b&gt;과 &lt;b&gt;vector analysis&lt;/b&gt;를 통합한 Point Cloud 처리는 속도를 크게 높이고, 스캔 정렬에 수동으로 개입할 필요성을 줄여준다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;기존에 있던 대부분의 Registration Solution&lt;/span&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;각 스캔에서 인공 표적, 평면, 선과 같은 특징을 식별하여 작동한다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이러한 개체는 겹치는 스캔을 정렬하기 위한 참조로 사용한다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul style=&quot;list-style-type: circle;&quot; data-ke-list-type=&quot;circle&quot;&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;그러나, 머신러닝의 존재는 이제 스캔된 환경의 &quot;Natural Features&quot; 들을 &quot;Virtual&quot; 참조로 대신 사용할 수 있다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;일반적인 스캔에서 식별된 이러한 Natural Features가 수백만개에 달하여 정렬 속도를 높이고, 정확도를 높일 수 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;이러한 기법을 사용하여 포인트 클라우드 처리의 효율성이 이미 &lt;b&gt;40~80%&lt;/b&gt; 까지 개선된 경우도 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;예를 들어, 이전 Fact 4에서 말했던 &quot;28-scan 데이터 세트&quot;는 이제 완료하는 데 4시간이 아닌 &lt;b&gt;약 1시간&lt;/b&gt;이 걸린다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;새로운 기술로 인한 비용 절감은 &lt;b&gt;포인트 클라우드 Application&lt;/b&gt;에 대한 기회를 더욱 열어준다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;이미 &lt;/span&gt;새로운 사람들이 포인트 클라우드 Producers and users 로서 시장에 진입하고 있으므로, 미래는 밝아보인다!&lt;/span&gt;&lt;/p&gt;</description>
      <category>개발지식 (이론)/공부</category>
      <category>PCD</category>
      <category>PCL</category>
      <category>POINT</category>
      <category>Point Cloud</category>
      <category>포인트 클라우드</category>
      <author>smlee-</author>
      <guid isPermaLink="true">https://23min.tistory.com/8</guid>
      <comments>https://23min.tistory.com/8#entry8comment</comments>
      <pubDate>Tue, 10 Nov 2020 15:16:22 +0900</pubDate>
    </item>
    <item>
      <title>[Object Detection] 성능평가지표 용어 정리</title>
      <link>https://23min.tistory.com/7</link>
      <description>&lt;h1&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;AP (Average Precision)&lt;/b&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;Object Detection 알고리즘의 성능은 precision-recall 곡선과 average precision(AP) 로 보통 평가한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;두 용어를 제대로 이해하기 위해서는 우선 Precision과 Recall에 대한 지식이 필요하다.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;Precision&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;Object-Detector가 검출한 정보들 중에서 Ground-Truth와 일치하는 비율을 의미한다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;한국어로 &lt;b&gt;정밀도&lt;/b&gt;라고 불린다. &lt;b&gt;모든 검출 결과 중 옳게 검출한 비율&lt;/b&gt;을 의미한다.&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bsEI6F/btqGtXPpJxX/6m1qOq08SA6NXAQfhdtzD1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bsEI6F/btqGtXPpJxX/6m1qOq08SA6NXAQfhdtzD1/img.png&quot; data-alt=&quot;Precision의 계산 방법&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bsEI6F/btqGtXPpJxX/6m1qOq08SA6NXAQfhdtzD1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbsEI6F%2FbtqGtXPpJxX%2F6m1qOq08SA6NXAQfhdtzD1%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Precision의 계산 방법&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;TP는 true positive의 약자로 &quot;옳은 검출&quot;을 의미하고 FP는 false positive의 약자로 &quot;잘못된 검출&quot;을 의미한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;따라서, Precision은 알고리즘이 검출해낸 것들 중에서 &lt;b&gt;제대로 검출해낸 것의 비율&lt;/b&gt;을 의미하는 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;예를 들어, 알고리즘이 5개를 검출해냈는데(실제 몇개의 물체가 검출되어야 하는지와 상관없이) 그 중 4개가 옳게 검출해낸 것이라면, Precision은 4/5 = 0.8이다.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;Recall&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;한국어로 &lt;b&gt;재현율&lt;/b&gt;이라고 불린다.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;마땅히 검출해내야하는 물체들 중에서 제대로 검출된 것의 비율&lt;/b&gt;을 의미한다&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/d8Kwid/btqGpwTgsed/RI9BqLk6mHljKTi2Vq88gK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/d8Kwid/btqGpwTgsed/RI9BqLk6mHljKTi2Vq88gK/img.png&quot; data-alt=&quot;Recall의 계산 방법&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/d8Kwid/btqGpwTgsed/RI9BqLk6mHljKTi2Vq88gK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fd8Kwid%2FbtqGpwTgsed%2FRI9BqLk6mHljKTi2Vq88gK%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Recall의 계산 방법&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;FN은 False Negative의 약자로 &quot;검출되었어야 하는 물체인데 검출되지 않은 것&quot;을 의미한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;예를 들어, 라벨이 붙어있는 물체(즉, 마땅히 검출되어야 할 물체)가 10개인데, 그 중 4개가 옳게 검출되었다면&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;Recall은 4/10 = 0.4가 된다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/wMvD0/btqGteqo4EE/964dQcEmnTN6yu9MQkByz0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/wMvD0/btqGteqo4EE/964dQcEmnTN6yu9MQkByz0/img.png&quot; data-alt=&quot;TP, FP, FN, TN 이란?&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/wMvD0/btqGteqo4EE/964dQcEmnTN6yu9MQkByz0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwMvD0%2FbtqGteqo4EE%2F964dQcEmnTN6yu9MQkByz0%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;TP, FP, FN, TN 이란?&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;Precision만으로 물체 검출 알고리즘의 성능을 평가하는 것은 적절하지 않다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;또한, Recall만으로 성능을 평가하는 것도 적절하지 않다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;위에서 예시로 든 것처럼, 실제 검출되어야 하는 물체가 10개인데, 알고리즘이 검출해낸 물체는 5개이고 그 중 4개가 맞다고 가정해보자. 그러면 이때 Precision = 4/5 = 0.8 이고, Recall = 4/10 = 0.4 이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;Precision으로 보면 성능이 좋아보이지만, Recall로 보면 성능이 그닥 좋지 않아 보인다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;중요한 것은 Precision과 Recall은 항상 0과 1 사이의 값으로 나오게 되는데,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;Precision이 높으면 Recall은 낮은 경향이 있고, Precision이 낮으면 Recall은 높은 경향이 있다는 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;따라서, 어느 한 값 만으로 알고리즘의 성능을 평가하는 것은 거의 불가능하고, 두 값을 종합해서 알고리즘의 성능을 평가해야한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;그래서 필요한 것이 &lt;b&gt;precision-recall 곡선 및 AP&lt;/b&gt; 이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;그 전에, 물체를 검출했을 때 &quot;옳게 검출되었다&quot; 와 &quot;옳게 검출되지 않았다&quot;를 구분해주는 기준, 즉 TP와 FP를 결정해주는 기준은 무엇일까? 그 기준은 바로 Intersection over Union(IoU)이다.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;Intersection over Union (IoU)&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;아래와 같은 ground truth 바운더리 박스를 라벨로 가진 이미지가 있다고 가정해보자.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;ground truth 바운더리 박스는 마땅히 검출되어야 할 물체를 감싸고 있다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ms0Je/btqGqbnQ8xs/pECoRRkaAHvde9xkLjSsck/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ms0Je/btqGqbnQ8xs/pECoRRkaAHvde9xkLjSsck/img.png&quot; data-alt=&quot;Ground Truth 바운더리 박스&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ms0Je/btqGqbnQ8xs/pECoRRkaAHvde9xkLjSsck/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fms0Je%2FbtqGqbnQ8xs%2FpECoRRkaAHvde9xkLjSsck%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Ground Truth 바운더리 박스&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이 이미지는 ground truth 바운더리 박스가 주어지지 않은 상황에서 어떤 알고리즘에 의해 예측된 바운더리 박스가 다음과 같다고 해보자.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/GrVQ7/btqGpxkrM0B/1pvXjc9KAThh62ZB4t9Ev0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/GrVQ7/btqGpxkrM0B/1pvXjc9KAThh62ZB4t9Ev0/img.png&quot; data-alt=&quot;예측된 바운더리 박스&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/GrVQ7/btqGpxkrM0B/1pvXjc9KAThh62ZB4t9Ev0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FGrVQ7%2FbtqGpxkrM0B%2F1pvXjc9KAThh62ZB4t9Ev0%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;예측된 바운더리 박스&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이런 상황에서 예측된 검출이 맞는지 틀린지를 어떻게 결정하면 좋겠는가?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이런 고민 끝에 나온 것이 바로 IoU 이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;IoU는 예측된 바운더리 박스와 Ground Truth 바운더리 박스간 중첩되는 부분의 면적을 측정해서 중첩된 면적을 합집합의 면적으로 나눠준다. 아래 공식을 보자.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nJl3x/btqGurbGBZt/11QsLayUZNON1g3GR0CTo1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nJl3x/btqGurbGBZt/11QsLayUZNON1g3GR0CTo1/img.png&quot; data-alt=&quot;IoU 계산 공식&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nJl3x/btqGurbGBZt/11QsLayUZNON1g3GR0CTo1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnJl3x%2FbtqGurbGBZt%2F11QsLayUZNON1g3GR0CTo1%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;IoU 계산 공식&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;IoU의 값이 0.5 이상이면 제대로 검출(TP)되었다고 판단한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;반면, 0.5 미만이면 잘못 검출(FP)되었다고 판단한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;(이 문턱값은 다른 값으로 설정될 수도 있다.)&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;Precision-Recall 곡선&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;PR 곡선은 confidence 레벨에 대한 threshold 값의 변화에 의한 물체 검출기의 성능을 평가하는 방법이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;confidence 레벨은 검출한 것에 대해 알고리즘이 얼마나 확신이 있는지를 알려주는 값이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;만약에 어떤 물체를 검출했는데, confidence 레벨이 0.999 라면 굉장히 큰 확신을 가지고 검출한 것이다. (99.9%)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;참고로, confidence 레벨이 높다고 해서 무조건 검출이 정확한 것은 아니다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;알고리즘 스스로 그런 느낌 또는 확신을 갖고 있는 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;confidence 레벨이 낮으면 그만큼 검출 결과에 대해서 자신이 없는 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;따라서 알고리즘의 사용자는 보통 confidence 레벨에 대해 threshold 값을 부여해서 특정값 이상이 되어야 검출된 것으로 인정한다. &lt;/span&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;threshold 값이 0.4 라면, confidence 레벨로 0.1 또는 0.2를 갖고 있는 검출은 무시하는 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;따라서 이 confidence 레벨에 대한 threshold 값의 변화에 따라 precision과 recall 값들도 달라질 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이것을 그래프로 나타낸 것이 PR 곡선이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;예를 통해 이해해보자,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;15개의 얼굴이 존재하는 어떤 데이터셋에서 한 얼굴 검출(Face Detection) 알고리즘에 의해서 총 10개의 얼굴이 검출되었다고 가정해보자.(confidence 레벨 0부터 100%까지 모두 고려했을때)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이때, 각 검출의 confidence 레벨과 TP, FP에 대한 여부는 아래 표에 나타냈다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nzqWX/btqGuq4UO1b/bxaBsx7Jd4ZmegJZ1zTJEk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nzqWX/btqGuq4UO1b/bxaBsx7Jd4ZmegJZ1zTJEk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nzqWX/btqGuq4UO1b/bxaBsx7Jd4ZmegJZ1zTJEk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnzqWX%2FbtqGuq4UO1b%2FbxaBsx7Jd4ZmegJZ1zTJEk%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;10개 중 7개가 제대로 검출되었고, 3개는 잘못 검출되었다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이 때, Precision = 옳게 검출된 얼굴 개수 / 검출된 얼굴 개수 = 7/10 = 0.7&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;Recall = 옳게 검출된 얼굴 개수 / 실제 얼굴 개수 = 7/15 = 0.47이 된다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이것은 confidence 레벨이 13%와 같이(Detections-F) 아주 낮더라도 검출해낸 것은 모두 인정했을 때의 결과이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이번에는 검출된 결과를 confidence 레벨에 따라 재정렬해보자.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yhDdh/btqGpxxYh2f/xzq1E54ztymnf9JkFCnZT0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yhDdh/btqGpxxYh2f/xzq1E54ztymnf9JkFCnZT0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yhDdh/btqGpxxYh2f/xzq1E54ztymnf9JkFCnZT0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyhDdh%2FbtqGpxxYh2f%2Fxzq1E54ztymnf9JkFCnZT0%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;confidence 레벨에 대한 threshold 값을 아주 엄격하게 적용해서 95%로 했다면, 하나만 검출한 것으로 판단할 것이고, 이때, Precision = 1/1 = 1&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;Recall = 1/15 = 0.067이 된다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;threshold 값을 91%로 했다면, 두 개가 검출된 것으로 판단할 것이고,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;Precision = 2/2 = 1&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;Recall = 2/15 = 0.13이 된다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;threshold 값을 검출들의 confidence 레벨에 맞춰 낮춰가면 다음과 같이 precision과 recall이 계산될 것이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/blc1gE/btqGuFU5bYA/WAJGRER7ZG04qkXxrmQry1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/blc1gE/btqGuFU5bYA/WAJGRER7ZG04qkXxrmQry1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/blc1gE/btqGuFU5bYA/WAJGRER7ZG04qkXxrmQry1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fblc1gE%2FbtqGuFU5bYA%2FWAJGRER7ZG04qkXxrmQry1%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이 Precision 값들과 Recall 값을 아래와 같이 그래프로 나타내면 그것이 바로 PR 곡선이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/coZ1mH/btqGqRCFLah/k2xk6dSOQtKBD5fjNUS0Vk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/coZ1mH/btqGqRCFLah/k2xk6dSOQtKBD5fjNUS0Vk/img.png&quot; data-alt=&quot;PR 곡선&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/coZ1mH/btqGqRCFLah/k2xk6dSOQtKBD5fjNUS0Vk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcoZ1mH%2FbtqGqRCFLah%2Fk2xk6dSOQtKBD5fjNUS0Vk%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;PR 곡선&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;PR 곡선에서 x축은 recall 값이고, y축은 precision 값이다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;즉, PR 곡선에서는 recall 값의 변화에 따른 precision 값을 확인할 수 있다.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;Average Precision (AP)&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;PR 곡선은 성능을 평가하는 데 매우 좋은 방법이긴 하지만, &lt;b&gt;단 하나의 숫자로 성능을 평가&lt;/b&gt;하긴 어렵다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;AP는 precision-recall 그래프에서 그래프 선 아래쪽의 면적으로 계산된다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kSo35/btqGrjZ0yrF/b5sUBc3rASN16apksDkMkK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kSo35/btqGrjZ0yrF/b5sUBc3rASN16apksDkMkK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kSo35/btqGrjZ0yrF/b5sUBc3rASN16apksDkMkK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkSo35%2FbtqGrjZ0yrF%2Fb5sUBc3rASN16apksDkMkK%2Fimg.png&quot; data-origin-width=&quot;0&quot; data-origin-height=&quot;0&quot; data-ke-mobilestyle=&quot;widthContent&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이렇게 바꾼 다음에 그래프 선 아래의 넓이를 계산함으로써 AP를 구한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;이 경우 AP = 왼쪽 큰 사각형의 넓이 + 오른쪽 작은 사각형의 넓이 = 1 * 0.33 + 0.88 * (0.47-0.33) = 0.4532 가 된다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;Computer Vision 분야에서 물체 검출 및 이미지 분류 알고리즘의 성능은 대부분 이 AP로 평가한다.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;물체 클래스가 여러 개인 경우, 각 클래스당 AP를 구한 다음, 그것의 평균을 구하는 것이 mAP이다.&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;AP (Average Precision) : Recall Value [0.0, 0.1, ... , 1.0] 값들에 대응하는 Precision 값들의 Average 이다.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;mAP (mean Average Precision) : 1개의 Object 당 1개의 AP 값을 구하고, 여러 Object_Detector 에 대해서 mean 값을 구한 것.&lt;/span&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;p&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;출처: &lt;a href=&quot;https://bskyvision.com/465&quot;&gt;https://bskyvision.com/465&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;</description>
      <category>개발지식 (이론)/인공지능</category>
      <category>AP</category>
      <category>ground truth</category>
      <category>IOU</category>
      <category>Mean Average Precision</category>
      <category>object detection</category>
      <category>precision</category>
      <category>precision-recall</category>
      <category>recall</category>
      <category>성능평가방법</category>
      <author>smlee-</author>
      <guid isPermaLink="true">https://23min.tistory.com/7</guid>
      <comments>https://23min.tistory.com/7#entry7comment</comments>
      <pubDate>Mon, 10 Aug 2020 16:51:27 +0900</pubDate>
    </item>
  </channel>
</rss>