Super Kawaii Cute Cat Kaoani '연구' 카테고리의 글 목록 (6 Page)

연구 67

Motion Fields for Interactive Character Animation 정리(1)

본 논문에서는 motion field라는 structure를 제안하고 있다. motion field는 어떻게 구성되는지, 또 어떠한 장점이 있는지 차근차근 알아보자. Preliminary Definition 1. Motion States character의 state m를 character 모든 joint의 pose와 velocity로 표현하였다. m = (x, v) (1) pose x = (x_root, p_0, p_1, ... , p_n) x_root는 3d root position vector, p_0는 root orientation quaternion, p_1, ..., p_n는 joint orientation quaternion. 즉 root의 position과 root 및 joint의 orie..

Blender bvh load 관련 알아낸 사실 정리

File > import > bvh 를 하면 bvh가 import 된다. import 된 모션 데이터를 확인하기 위해서는 bpy.data.actions에서 해당되는 인덱스의 action을 뽑아와야한다. 나의 경우 'aiming1_subject1.bvh'를 import 했기 때문에 action = bpy.data.actions['aiming1_subject1'] 을 하면 내가 import한 bvh의 motion data가 action이라는 변수에 저장되게 된다. action은 여러 정보들로 구성되어있는데 내가 원하는 정보는 매 frame마다 root의 position이 어디에 위치하는지, 그리고 각 관절의 rotation 값은 어떻게 되는지였다. 이를 알기 위해서는 뽑아낸 action에서 fcurves 값..

연구/Blender 2023.03.20

Blender에서 python api 사용하기(operator_simple.py 분석)

Blender에서 기본적으로 제공하는 많은 기능들이 있지만, 그 기능들을 조합해서 실행하거나 나만의 기능을 만들고 싶을 때가 있다. 이때 "기능"이라고 하는 것을 Blender에서는 보통 operator라고 부른다. Blender의 python templates의 operator_simple.py 코드를 분석해보고 operator를 어떤식으로 만들어야하는지 살펴보자. import bpy def main(context): for ob in context.scene.objects: print(ob) class SimpleOperator(bpy.types.Operator): """Tooltip""" bl_idname = "object.simple_operator" bl_label = "Simple Object..

연구/Blender 2023.03.17

angular velocity 구하는 방법

joint local frame 기준 angular velocity 구하는 방법 joint j의 (frame i)에서의 orientation을 rotation matrix로 나타낸 것을 R_prev라고 하자. joint j의 (frame i+1)에서의 orientation을 rotation matrix로 나타낸 것을 R_cur라고 하자. R_prev와 R_cur은 모두 joint local frame에 대해 기술되었다. R_diff = R_pev.T @ R_cur과 같다. 이때 R_diff @ R_prev = R_cur가 성립하기 때문에 R_diff는 R_prev와 같은 frame에 대해 기술되어있다. scaling을 해주기 위해 rotation matrix인 R_diff를 rotation vector ..

isaac gym 자료 너무 없어!

isaac gym 자료 찾다가 화나서 쓰는 글! 새로운 사실을 알아낼때마다 업데이트 할 예정이다.. 누군가에게는 도움이 되길 바라면서..고! 1. IssacGymEnvs의 task 예제코드에서 action의 shape는? (num_envs, action의 차원) 나는 env마다 compute_reward, compute_observation 등의 함수를 각자 호출하는 줄 알았어서 parameter인 action의 shape가 (action의 차원) 인줄 알았다. 그런데 그게 아니라 전체 env에 대해 호출하는거여서 shape가 (num_envs, action의 차원) 모양이다. 2. rigid_body_state는 어떤 frame에 대해 표현되는가? self.gym.acquire_rigid_body_st..

연구/isaac gym 2023.02.15

isaac gym에서 mjcf 파일 로드 시 주의사항

isaac gym을 다운로드 받으면 index.html가 같이 다운받아진다. index.html에 적혀있는 mjcf 관련 내용을 정리해 보았다. 그럼 고! 1. Overriding Inertial Properties 이건 urdf와 mjcf 파일 포멧 모두에 해당되는 내용이다. rigid body에서 Inertial properties는 안전성을 위해 매우 중요하다! 이 값들은 urdf와 mjcf 파일에서 명시할 수 있는데 이 값들이 잘못 지정되어 있는 경우가 매우 많다ㅠ 그래서 isaac gym에서는 collision shape의 geometry를 바탕으로 center of mass와 inertia tensors를 자체적으로 계산해서 overriding하는 기능을 지원한다. asset_options.o..

연구/isaac gym 2023.02.01

MJCF(mujoco xml file) 분석

urdf에서 mjcf로 갈아탔다.. isaac gym에서 지원하는 urdf로 character model을 만드려고 했는데 urdf에서는 ball joint를 지원하지 않아서 ball joint를 구현하기 위해서는 3개의 연속된 hinge joint를 배치해서 euler angle처럼 사용하는 식으로 해야한다고 하는데 완전히 잘 동작한다고 보기는 어려운 부분이 많아서 ball joint를 지원하면서도 isaac gym에서도 지원하는 mjcf 형식으로 character model을 만들기로 했다! 막막하지만 그래도 고! https://ropiens.tistory.com/170 Let's do MuJoCo - 2.1 Mujoco XML File(MJCF) 분석 이번 게시물의 목표는 Mujoco XML 파일(..

URDF 튜토리얼(3) (Adding Physical and Collision Properties to a URDF Model)

2023.01.19 - [컴퓨터 그래픽스] - URDF 튜토리얼(2) (Building a Movable Robot Model with URDF) URDF 튜토리얼(2) (Building a Movable Robot Model with URDF) 이전 게시물의 튜토리얼 통해서 Robot의 joint, link의 위치를 정할 수 있었고 material도 설정해줄 수 있었다. 2023.01.19 - [컴퓨터 그래픽스] - URDF 튜토리얼(1) (Building Visual Robot Model) URDF 튜토리얼(1) (Build chickencat-jjanga.tistory.com 이전 게시물의 튜토리얼을 통해 로봇을 움직이게 만들 수 있었다. 이번에는 urdf 파일에 physical properties..

URDF 튜토리얼(2) (Building a Movable Robot Model with URDF)

이전 게시물의 튜토리얼 통해서 Robot의 joint, link의 위치를 정할 수 있었고 material도 설정해줄 수 있었다. 2023.01.19 - [컴퓨터 그래픽스] - URDF 튜토리얼(1) (Building Visual Robot Model) URDF 튜토리얼(1) (Building Visual Robot Model) skel file 이해하는것도 힘들었는데 isaac gym에서 skel file을 지원하지 않아서 urdf 파일을 새로 만들어야하는 상황이 생겨버렸다..ㅠㅠㅠㅠㅠㅠㅠ 어쨌든 이해해보자구!! 1. URDF란? unified robot description chickencat-jjanga.tistory.com 하지만 이 튜토리얼에서 정의한 로봇은 Movable하지 않다! 이번 튜토리얼..

URDF 튜토리얼(1) (Building Visual Robot Model)

skel file 이해하는것도 힘들었는데 isaac gym에서 skel file을 지원하지 않아서 urdf 파일을 새로 만들어야하는 상황이 생겨버렸다..ㅠㅠㅠㅠㅠㅠㅠ 어쨌든 이해해보자구!! 1. URDF란? unified robot description format의 줄임말로, '로봇 기술용 통일 포맷'이라고 번역할 수 있다. 한마디로 로봇의 동작을 구현함에 있어서 URDF 포맷 하나로 어느 OS에서도 구현이 가능하다는 의미이다. 로봇의 움직임을 구현하는데 사용되며, xml format으로 제작이 가능하다. 2. URDF 로봇 제작해보기 http://wiki.ros.org/urdf/Tutorials urdf/Tutorials - ROS Wiki Prerequisite Learning URDF Step b..

728x90
728x90