레이블이 Research인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Research인 게시물을 표시합니다. 모든 게시물 표시

2016년 2월 10일 수요일

Paper to read


M. Li, A.I. Mourikis, “3-D Motion Estimation and Online Temporal Calibration for Camera-IMU Systems'' Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Karlsruhe, Germany, May 6-10 2013, pp. 5689-5696.

http://www.ee.ucr.edu/~mourikis/papers/Li2013ICRA.pdf

2014년 4월 17일 목요일

Characteristic motions of common human-controlled devices

Characteristic motions of common human-controlled devices
from Inertial proprioceptive devices: Self-motion-sensing toys and tools by C. Verplaetse


2014년 1월 28일 화요일

AR Box

새로 가공한 AR Marker 상자.


2014년 1월 24일 금요일

Cholesky Decomposition


CholeskyDecomposition의 결과 return code.

struct btCholeskyDecomposition
{
  enum Result
  {
    SUCCESS,
    FAILURE_SYMMETRY,
    FAILURE_POSITIVE_DEFINITE
  };
};


2013년 12월 19일 목요일

PCA in PCL


/////////////////////////////////////////////////////////////////////////////////////////
template bool
pcl::PCA::initCompute ()
{
  if(!Base::initCompute ())
  {
    PCL_THROW_EXCEPTION (InitFailedException, "[pcl::PCA::initCompute] failed");
    return (false);
  }
  if(indices_->size () < 3)
  {
    PCL_THROW_EXCEPTION (InitFailedException, "[pcl::PCA::initCompute] number of points < 3");
    return (false);
  }

  // Compute mean
  mean_ = Eigen::Vector4f::Zero ();
  compute3DCentroid (*input_, *indices_, mean_);
  // Compute demeanished cloud
  Eigen::MatrixXf cloud_demean;
  demeanPointCloud (*input_, *indices_, mean_, cloud_demean);
  assert (cloud_demean.cols () == int (indices_->size ()));
  // Compute the product cloud_demean * cloud_demean^T
  Eigen::Matrix3f alpha = cloud_demean.topRows<3> () * cloud_demean.topRows<3> ().transpose ();

  // Compute eigen vectors and values
  Eigen::SelfAdjointEigenSolver evd (alpha);
  // Organize eigenvectors and eigenvalues in ascendent order
  for (int i = 0; i < 3; ++i)
  {
    eigenvalues_[i] = evd.eigenvalues () [2-i];
    eigenvectors_.col (i) = evd.eigenvectors ().col (2-i);
  }
  // If not basis only then compute the coefficients

  if (!basis_only_)
    coefficients_ = eigenvectors_.transpose() * cloud_demean.topRows<3> ();
  compute_done_ = true;
  return (true);
}



from /opt/ros/fuerte/include/pcl-1.5/pcl/common/impl/pca.hpp


2013년 12월 12일 목요일

Z-Y-X Euler Angles

Z-Y-X Euler Angles
Z-Y-X Euler Angles (or X-Y-Z fixed angles)
Rx'y'z' (a,b,c) =

[ cos(a)*cos(b), cos(a)*sin(b)*sin(c) - cos(c)*sin(a), sin(a)*sin(c) + cos(a)*cos(c)*sin(b)]
[ cos(b)*sin(a), cos(a)*cos(c) + sin(a)*sin(b)*sin(c), cos(c)*sin(a)*sin(b) - cos(a)*sin(c)]
[       -sin(b),                        cos(b)*sin(c),                        cos(b)*cos(c)]



X-Y-Z Euler Angles
Rz'y'x' (a,b,c) =

[                        cos(b)*cos(c),                       -cos(b)*sin(c),         sin(b)]
[ cos(a)*sin(c) + cos(c)*sin(a)*sin(b), cos(a)*cos(c) - sin(a)*sin(b)*sin(c), -cos(b)*sin(a)]
[ sin(a)*sin(c) - cos(a)*cos(c)*sin(b), cos(c)*sin(a) + cos(a)*sin(b)*sin(c),  cos(a)*cos(b)]



Rz'y'x' (c,b,a) =
[                        cos(a)*cos(b),                       -cos(b)*sin(a),         sin(b)]
[ cos(c)*sin(a) + cos(a)*sin(b)*sin(c), cos(a)*cos(c) - sin(a)*sin(b)*sin(c), -cos(b)*sin(c)]
[ sin(a)*sin(c) - cos(a)*cos(c)*sin(b), cos(a)*sin(c) + cos(c)*sin(a)*sin(b),  cos(b)*cos(c)]




2013년 10월 27일 일요일

ARCBALL




회전축과 회전각도를 결정하여 회전 Quaternion 을 구해냄.
마우스 입력으로 3차원 회전축과 각도를 어떻게 결정하는지 알면 끝.
현재점과 anchor 점을 결정할 때 2D 입력을 spherical mapping을 사용하여 3D Vector로 mapping.

본 논문 : 
ARCBALL: a user interface for specifying three-dimensional orientation using a mouse
http://dl.acm.org/citation.cfm?id=155312

2013년 8월 26일 월요일

Eigenvalues of rotation matrix : 0~180 degrees

Eigenvalue의 의미를 보여주는 그래프. y축은 imaginary axis.


추가 1)
When an n×n rotation matrix, Q, does not include −1 as an eigenvalue, so that none of the planar rotations of which it is composed are 180° rotations, then Q+I is an invertible matrix. Most rotation matrices fit this description.




2013년 8월 8일 목요일

sensor_msgs/JointState - ROS


Raw message definition:

string[] name
float64[] position
float64[] velocity
float64[] effort

# This is a message that holds data to describe the state of a set of torque controlled joints. 
#
# The state of each joint (revolute or prismatic) is defined by:
#  * the position of the joint (rad or m),
#  * the velocity of the joint (rad/s or m/s) and 
#  * the effort that is applied in the joint (Nm or N).
#
# Each joint is uniquely identified by its name
# The header specifies the time at which the joint states were recorded. All the joint states
# in one message have to be recorded at the same time.
#
# This message consists of a multiple arrays, one for each part of the joint state. 
# The goal is to make each of the fields optional. When e.g. your joints have no
# effort associated with them, you can leave the effort array empty. 
#
# All arrays in this message should have the same size, or be empty.
# This is the only way to uniquely associate the joint name with the correct
# states.

from http://www.ros.org/doc/api/sensor_msgs/html/msg/JointState.html

2013년 6월 20일 목요일

Typical orbits

회전체 모드해석 수업때 이종원 교수님 강의 중 나온 내용.
Matlab으로 그려본 것.
그림만 봐도 spectrum 해석하기 이전에 분석할 수 있음.


Hypocycloid

Hypotrochoid

Epitrochoid

Epitrochoid 와 Hypotrochoid에 대한 추가 문서 : http://www.durangobill.com/Trochoids.html


2012년 12월 30일 일요일

Curvature Scale Space

Smooth operator 결과. sigma 를 높임에 따라 뭉게진다.
cyan은 원 sine curve + 15% noise

2차원 커브에 적용. 빨간 점은 커브가 zero-crossing되는 지점.

재밌다 ㅋㅋ

Thanks to Roy


2012년 1월 27일 금요일

Manipulatory and ambulatory space



Lederman, Klatzkey, Collins, Wardell (1987)  made a distinction between manipulatory and ambulatory space, the former within reach of the hands and the latter requiring exploration by movements of the body.

Lederman, S. J., Klatzky, R. L., Collins, A. and Wardell, J. Exploring environments by hand or foot: Time-based heuristics for encoding distance in movement space. Journal of Experimental Psychology: Learning, Memory, and Cognition, 13, 4 (1987), 606-614.

2011년 8월 8일 월요일

Surround Haptics



PRESS RELEASE: DISNEY RESEARCH PITTSBURGH DEMONSTRATES TACTILE TECH GUARANTEED TO SEND SHIVERS DOWN YOUR SPINE
https://www.cmu.edu/news/stories/archives/2011/august/aug8_disneytactiletech.html

2011년 6월 28일 화요일

Dexterity

오늘 Graphics Lab 세미나 Nancy 교수 발표에서 듣게 된 말.

Dexterity the ability to find a motor solution for any external situation, that is, to adequately solve any emerging motor problem correctly, quickly, rationally, and resourcefully

원 정의는 아래 reference

N. A. Bernstein. On dexterity and its development. In M. L. Latash and M. T. Turvey, editors, Dexterity and its Development. Lawrence Erlbaum Associates, New Jersey, 1996.