Lucky Charms Rainbow > '분류 전체보기' 카테고리의 글 목록 (7 Page) — Hoon's Blog

분류 전체보기

    Camera projection

    Camera projection

    Camera obscura(바늘구멍 사진기)는 인류가 projective geometry에 대해 수식적으로 연구를 할 수 있게 해준 계기가 되었습니다. Camera obscura가 있었기 때문에 정확한 2D 이미지를 구할 수 있었고 2D 이미지를 측량해서 3D 세상과 비교함으로써 3D to 2D 매핑관계에 대한 수식을 발전 시킬 수 있었습니다. x = P X x: 3D world coordinate points P: Projection matrix X: 2D image coordinate points Projection steps 1. World coordinate (3D) to Camera coordinate (3D) transformation Rotation - 3*3 Matrix -> SO(3) T..

    Projective geometry

    Projective geometry

    Projective geometry (사영 기하학) 3D Rigid Body Motion은 모두 유클리드 기하학을 따릅니다. 사영대수학은 기초적인 유클리드 기하학과는 달리 사영공간과 몇 가지 기본적인 기하학적인 개념들로 구성되어 있습니다. 실제 3D 공간에 물리적인 객체 정보를 2D 이미지로 투영하는 것이 projection입니다. 즉, projective geometry는 N + 1 차원을 N 차원으로 차원 축소를 할 때 통용되는 기하학입니다. Hierachies of geometries • Euclidean > Rotation + Translation 표현 가능 • Similarity > Euclidean transformation에서 uniform scaling 표현 가능 > Euclidean tr..

    3D Rigid Body Motion

    3D Rigid Body Motion

    Rigid Body (강체 ; 물리학에서 형태가 고정되어 변하지 않는 물체) > Position = { tx, ty, tz } > Orientation = { Rx, Ry, Rz } > Pose = Orientation + Position > 6 Degrees of Freedom = 3D Orientation + 3D Position = { tx, ty, tz, Rx, Ry, Rz } Coordinate transformation ( Camera -> World ) 카메라 좌표계 { tx, ty, tz, Rx, Ry, Rz}를 어떻게 월드 좌표계 {?, ?, ?, ?, ?, ?, ?}로 바꿀 수 있을까? Orientation{Rx, Ry, Rz}: Rotation(회전값) 이용 Position{tx, t..

    SLAM 이론 공부

    VSLAM을 잘 이해하려면 공부해야 할 3가지 1. Mathematics Linear algebra (선형대수) Probability & Statistics (확률과 통계) 2. Computer Vision Imaging Image processing 3. Optimization Optimization theory (최적화 이론) Numerical optimization (수치적 최적화) 선형대수 참고자료 https://www.youtube.com/watch?v=525w2Zqh13M&list=PL127T2Zu76FuVMq1UQnZv9SG-GFIdZfLg 소프트웨어 공부 TIP C++ 자율주행 : C++11, C++14 로보틱스/드론: C++14 AR: C++17, C++20 http://www.yes24..

    SLAM

    SLAM

    SLAM (Simultaneous Localization and Mapping) : 동시적 위치추정 및 지도작성 직역한 것 처럼 두 가지 목적의 작업을 수행하여야 합니다. 1. Localization (위치추정) -> 어떤 공간에 어느 좌표에 존재하는지, 시간이 흐르면서 로봇의 위치가 바뀌었을 때 변화하는 위치를 추정 즉, 모션추정을 해야합니다. 2. Mapping (지도작성) -> 어느 공간을 표현하는 방법 중 하나. 버드아이뷰 지도, 공간 속에 중요한 물체들의 위치를 모아둔 지도, 3D 가상공간으로 mapping한 지도 방법이 다양하게 존재합니다. 또한 물체를 2D로 표현할지, 3D로 표현할지도 있는데 3D 같은 경우 point cloud, point끼리 이어 선으로 표현, mapping surfac..

    [cpp]금고털이

    [cpp]금고털이

    문제 난이도 > ★★☆☆☆ 문제 유형 > greedy greedy algorithm 대표 문제 : 백팩 풀이 과정 pair 함수를 사용하여 first: M_i(금속 무게) second: P_i(무게당 가격)을 넣어주고 무게당 가격에 대해 내림차순 정렬 후 한 번의 루프로 배낭의 무게가 0보다 작을 때까지 금속 무게에 대한 가격을 result 변수에 더해주었습니다. #include #include #include using namespace std; bool compare_func(pair a, pair b) { if (a.second == b.second) return a.first b.second; } int main() { int W, N;..

    Jetson nono에 CSI camera 연결 방법

    Jetson nono에 CSI camera 연결 방법

    Jetson nano에 호환되는 CSI Camera 연결 방법 카메라를 새로 연결을 하니 cheese라는 카메라 프로그램을 킨 결과.. CSI camera는 몇 가지 확인과 설정이 필요합니다. 먼저 카메라가 jetson nano에 포팅은 됐는지 확인합니다. $ ls /dev/video0 카메라를 처음 연결하시는 분이라면 이 명령어를 쳤을 때 /dev/video0 라고 떠야합니다. 만약 video0을 찾지 못했다면 연결 불량이거나 카메라 문제일 수 있습니다. video0이 잘 떴다면 이 명령어를 입력해보세요. $ nvgstcapture-1.0 이미지창이 뜨면서 비디오가 잘 출력되는 것을 확인하실 수 있습니다. 카메라 방향을 180도로 회전시키고싶으시다면 $ nvgstcapture-1.0 --orientat..

    2일차 - BDD100K to YOLOv3

    2일차 - BDD100K to YOLOv3

    bdd100k 라는 Driving 데이터 셋입니다. KITTI와 다른 점은 지리적, 환경적 및 날씨 다양성을 가지고 있어 여러가지 환경에서의 데이터를 학습시킬 수 있습니다. bdd100k는 Doc 사이트와 데이터를 다운받을 수 있는 사이트가 구분 되어있습니다. Document : https://www.bdd100k.com/ Download : https://bdd-data.berkeley.edu/portal.html#download Profile Copyright ©2018. The Regents of the University of California (Regents). All Rights Reserved. THIS SOFTWARE AND/OR DATA WAS DEPOSITED IN THE BAIR O..