분류 전체보기 139

[OpenCV] Vanishing point detection

소실점(vanishing point)은 평행한 두 직선의 연장선을 그었을 때, 선과 선이 만나는 점을 뜻한다. 이미지에서 소실점을 OpenCV에서 제공하는 허프변환(hough_transform) 알고리즘을 통해 구해볼 것이다. (cv2.HoughLines() , cv2.HoughLinesP()) 허프변환(hough_transform) 알고리즘은 이미지상에서 수학적으로 표현 가능한 도형을 검색하는 기술이다. 여기서 수학적으로 표현 가능한 도형이란 직선, 원, 타원, 쌍곡선 등을 말한다. 저는 최종적으로 복도의 vanising point를 찾는것이 목적이므로, 직선을 검색할 것이다.선에 대한 방정식은 기울기 m과 y 절편(c)로 표현되는 y = mx + c도 있지만, 삼각함수에 의해 r = 𝑥cos𝜃 + 𝑦..

Sensor/Camera 2020.09.08

Homography or Projective Transformation

Homography(Projective Transformation) Planar surface 물체의 경우에는 3D 공간에서의 2D 이미지로의 임의의 원근투영변환(perspective projective transformation)을 두 이미지 사이의 homography로 모델링할 수 있다. 즉, 어떤 planar surface가 서로 다른 카메라 위치 혹은 카메라와 레이더포인트에 각각 투영되었다면 이 둘 사이의 관계를 homography로 표현할 수 있다. homography는 homogeneous 좌표계에서 정의되며 일반식은 아래와 같다. 여기서, s는 0이 아닌 크기 요소(scale factor)이고 H는 호모그래피 행렬(homography matrix)이다. 8의 자유도를 갖는다. homograp..

Sensor/Camera 2020.08.17

[Arduino] multiple VL53L1x

TEST ENVIRONMENT Arduino mega VL53L1x sensor x4 Connections VL53L1x 센서의 VIN PIN에 3.3V 또는 5V의 입력전압을 인가하고, GND, I2C Line 연결 후, 여러개의 센서를 제어하기 위해 XSHUT PIN까지 각각 할당된 GPIO에 연결한다. 저는 9~12 PIN을 사용했습니다. TEST RESULT 결과적으로 비슷한 거리의 물체에 대해서 1,4 센서와 2,3 센서의 측정 결과가 다르게 나왔다. 각각의 센서의 위치를 바꿔서 테스트 해본 결과 코드의 문제가 아닌 센서 자체의 문제라는 것으로 판단됬고, 추후 사용하게 된다면 캘리브레이션을 통해 4개의 센서를 처리하여 사용할 것이다. * 센서를 처음 구매했을 때 송수신기 부분에 스티커가 붙어있는..

[error] arduino leonardo WebUSB

Windows 10에서 동작확인. Problem WebUSB Lib를 사용하는데에 있어서 결과적으로 웹에서 아두이노 레오나르도를 인식해야되는데 인식자체를 하지 못함. (아두이노 IDE상에서는 레오나르도를 인식하는데 전혀 문제없음.) Solution {arduino 설치경로}/hardware/arduino/avr/cores/arduino/USBCore.h 파일의 #define USB_VERSION 0x200를 0x210 로 수정 https://github.com/webusb/arduino 이 repo의 WebUSB폴더를 아두이노 라이브러리에 copy webusb/arduino WebUSB demos running on Arduino (and compatible) hardware. - webusb/ardui..

[error] ROS-i2cpwmboard package error when compiled (catkin_make) on ubuntu-16.04 ROS kinetic

error [100%] Built target i2cpwm_board_generate_messages_eus Scanning dependencies of target i2cpwm_board_generate_messages [100%] Built target i2cpwm_board_generate_messages [100%] Built target test_pub_sub_generate_messages_eus Scanning dependencies of target test_pub_sub_generate_messages [100%] Built target test_pub_sub_generate_messages /home/jds-linux/catkin_ws/src/ros_tutorials/ros-i2cpwm..

OS & Tools/Error 2020.05.08

[RPi4] 라즈베리파이 4 Ubuntu 18.04.4 LTS 설치하기

라즈베리파이 4에 Ubuntu 18.04.4 LTS 설치하기 라즈비안을 쓰지않은 이유는 라즈베리파이4가 출시했지만 아직도 데비안을 기반으로 하는 라즈비안 os는 32bit로 계속 간다고 하기에 4GB RAM을 사용하고 있는 제 Raspberry pi4의 성능을 끌어올리기위해 라즈비안이 아닌 ubuntu 18.04 LTS 64bit를 선택했다. pi4의 최대 RAM인 4GB를 사용하지 않으면 무리가 갈 수 있으니 4GB RAM을 보유한 사용자만 진행하기 바람. 라즈베리파이용 우분투 서버 이미지 굽기 저는 Ubuntu 18.04.4 LTS, server, 64bit를 라즈베리파이4 4GB RAM에 올릴려고 합니다. 해당 이미지는 아래 홈페이지에서 받을 수 있습니다. http://cdimage.ubuntu.c..

[UE4] Windows10 UE4 & Airsim 설치하기

Install Unreal Engine 4(UE4) https://www.unrealengine.com/ko/feed 언리얼 엔진 | 피드 언리얼 엔진은 게임, 시뮬레이션, 시각화의 디자인 및 개발에 사용되는 통합 크리에이터용 툴세트입니다. www.unrealengine.com:443 1. 언리얼 홈페이지 들어가서 회원가입 후, 설치파일 다운로드 2. 실행 후, 메인화면 좌측상단에 '엔진설치 클릭' 저는 200503 기준인 UE4 4.24.3 버전을 받았습니다. 프로젝트까지 생성해서 정상적으로 실행이 되는지 체크까지 해줍니다. 설치는 쉽지만 시간이 조금 오래걸립니다. Install Microsoft AirSim 1. Visual Studio Community 2019 설치하기 https://visuals..