전체 글 52

[Vision] OpenCV getRotationMatrix2D Theory [ Homogenous coordinate in Transformation Matrix ]

영상의 한 좌표를 중심으로 회전을 시키는 행렬은 식 1과 같다. 식 1은 Homogenous coordinate(동차 좌표)를 이용한 Transformation Matrix(변환 행렬)이다. [2]를 참고하면 이에 대한 이론이 설명되어 있는데, 이를 정리하고자 한다. Homogenous coordinate in Transformation Matrix Why Homogeneous Coordinates? 수학자들은 보통 방정식에서 scaling factors를 제거하기 위해 동차좌표를 사용한다. 동차좌표를 사용하게 되면 행렬 변환을 위한 곱셈 계산이 매우 효율적이게 된다. 동차좌표는 직관적이지는 않지만 그래픽 작업 측면에서 매우 편리하다. 2x2 이동행렬은 존재하지 않기 때문에 동차좌표 시스템을 이용함으로써..

Information/Vision 2020.11.23

[Paper] Outdoor Place Recognition in Urban Environments using Straight Lines

opencv에서는 fast line detector(fld)로 존재하는 알고리즘이다. 자세히 학습해보기 위해 정리한다. Outdoor Place Recognition in Urban Environments using Straight Lines Jin Han Lee, Sehyung Lee, Guoxuan Zhang, Jongwoo Lim, and Il Hong Suh Abstract challenging outdoor environments에서 직선 특징(straight line features)만을 이용한 visual place recognition algorithm 대부분의 특징점 추출 방법과 달리 선 특징은 사람이 만든 환경에서 쉽게 찾을 수 있고, 빛 변화, 시점 변화, 폐색(occlusion, 주..

Information/Paper 2020.11.23

[Research] Visual-Lidar SLAM for UAV

드론에 RGBD 카메라와 Lidar 센서를 부착하여 SLAM을 하는 프로젝트를 진행한다. 먼저 개발환경을 세팅해야 하는데, 참고한 사이트는 다음과 같다. dnddnjs.gitbooks.io/drone-autonomous-flight/content/ Introduction · PIXHAWK와 ROS를 이용한 자율주행 드론 dnddnjs.gitbooks.io 시작전에 개발 환경에 대해서 언급해야 겠다. 2020년 10월 8일 기준 드론을 ROS로 구동하기 위한 펌웨어인 PX4는 더 이상 Ubuntu 16.04를 지원하지 않는다. 예를 들어 Ubuntu 16.04에서는 Gazebo7 버전이 사용되지만, Ubuntu 18.04에서는 Gazebo9 버전이 사용되며, PX4는 Gazebo7을 더 이상 호환하지 않는..

Research 2020.10.08

[Research] Map_Merging : corner and line

맵을 합치기 위해 특징점 매칭을 수행하려 하였으나, 2D Map과 2.5D Map의 형태가 다르기 때문에 같은 포맷의 매칭에 강력한 특징점 매칭 방법은 사용하기 어렵게 되었다. 대신 Line 정보와 corner 정보를 이용하면? 1. 선 검출 선 검출을 위하여 OpenCV의 HoughLines Detection 기법을 이용했다. 참고 링크는 다음과 같다. https://docs.opencv.org/master/d3/de6/tutorial_js_houghlines.html OpenCV: Hough Line Transform Goal We will understand the concept of the Hough Transform. We will learn how to use it to detect lines..

Research 2020.09.27

[OpenCV] Ubuntu에서 local에 OpenCV를 설치하고 C++에서 사용하는 방법

해당 게시물을 참고하러 오시는 분들이 많으신 것 같습니다. 로컬에서 환경을 조작해 문제를 해결할 수도 있겠지만, Docker를 이용하여 환경에 구애받지 않고 OpenCV 및 ROS를 사용하시는 것을 권장드립니다. ROS나 OpenCV도 어려운데 Docker까지 하시려면 부담이 될 수 있겠지만, 앞으로는 Docker Container를 이용한 개발이 필수가 될 것이라 생각되니, 천천히라도 익혀보시길 권장드리겠습니다. Ubuntu에서 OpenCV를 설치하는 경우, 보통 시스템 폴더 안 (ex. usr/local/include) 에 설치되게 된다. 만약 다른 버전의 OpenCV를 설치하고자 하는 경우 시스템 폴더 안의 OpenCV를 삭제하고 다시 설치하게 되는 경우가 많은데, 이런 경우 제대로 OpenCV 제..

Information/Vision 2020.09.18

[Research] ICP(Iterative Closest Points)

링크 참조 https://popcorn16.tistory.com/63 PCL Iterative Closest Point 튜토리얼 분석 Point Cloud Library에서 제공하는 Iterative Closest Point (ICP)의 튜토리얼 코드를 실행해보고 분석하겠습니다. 튜토리얼 코드는 아래의 페이지에 있습니다. http://pointclouds.org/documentation/tutorials/i.. popcorn16.tistory.com https://limhyungtae.github.io/2019-11-29-ROS-PCL-%EC%A0%95%EB%A6%AC-%EB%B0%8F-%EA%B8%B0%EB%B3%B8-%EC%82%AC%EC%9A%A9%EB%B2%95/ Ros pcl 정리 및 기본 사용..

Research 2020.07.20
반응형