전체 글 79

[Computer Vision / Image Precessing] FAST (Features from Accelerated Segment Test)

성능이 좋은 특징 검출기는 많이 존재합니다. 하지만 실시간 어플리케이션 관점에서 봤을 때, 처리 속도가 생각보다 느립니다. 한 가지 좋은 예시로 계산 리소스가 제한된 SLAM(Simulataneous Localization and Mapping) 모바일 로봇입니다. 이에 대한 해결책으로 FAST(Features from Accelerated Segment Test)는 특징점을 추출하고 이후 많은 컴퓨터 비전 작업에서 객체를 추적 및 매핑하는 데 사용할 수 있는 코너 검출 방법입니다. FAST 코너 검출기는 Edward Rosten과 Tom Drummond가 개발했으며, 2006년에 발표되었습니다. FAST 코너 검출기의 가장 큰 장점은 연산 효율성입니다. 또한 머신러닝 기술이 적용되면, 연산 시간과 자원..

[Computer Vision / Image Precessing] SURF (Speeded-Up Robust Features)

SURF(Speeded Up Robust Features)는 영상의 지역과 유사성 불변(invariant)을 나타내고 비교하기 위한 빠르고 강력한(robust) 알고리즘입니다. SURF의 주 목적은 박스 필터를 사용하여 연산자를 빠르게 계산함으로써, 추적이나 객체 인식과 같이 실시간 응용이 가능하게 하는 데 있습니다. SURF는 다음 두 단계로 구성됩니다. 특징 추출 (Feature Extraction) 특징 기술 (Feature Description) 특징 추출 (Feature Extraction) 특징점 검출을 위한 접근법은 가장 기본적인 헤시안 행렬 근사(Hessian matrix approximation)를 이용합니다. 적분 영상 (Integral Images) 적분 영상 혹은 합산 영역 테이블의..

[Computer Vision / Image Precessing] SIFT (Scale Invariant Feature Transform)

SIFT는 Scale-Invariant Feature Transform의 약자로, 데이비드 로우(David G. Lowe)가 2004년에 처음 소개하였습니다. SIFT는 스케일과 회전에 불변하며, 특허를 받은 알고리즘이므로 OpenCV의 Non-free 모듈에 포함되어 있습니다. SIFT의 장점은 다음과 같습니다. 지역성 : 지역 특징이기 때문에, 가림과 복잡한 배경에 강합니다(robust). 특수성 : 각각의 특징을 큰 규모의 객체 데이터베이스와 매칭시킬 수 있습니다. 수량 : 작은 객체에서도 많은 특징들을 검출할 수 있습니다. 효율성 : 실시간 성능에 가깝습니다. 확장성 : 다양한 특징의 종류들로 쉽게 확장할 수 있으며, 각 특징들을 더욱 견고하게 검출할 수 있습니다. 알고리즘 SIFT는 상당히 까다..

[Computer Vision / Image Precessing] Harris Corner Detetor

해리스 코너 검출기 (Harris Coner Detector) 해리스 코너 검출기는 컴퓨터 비전 알고리즘에서 영상의 코너(Corner)를 추출하고 특징을 추론하는 데 일반적으로 사용되는 코너 검출 연산자입니다. 1988년 크리스 해리스(Chris Harris), 마이크 스티븐스(Mike Stephens)가 모라벡(Moravec)의 코너 검출기를 개선하면서 처음 소개되었습니다. 해리스 코너 검출기는 이전과 비교하여 45도 각도마다 패치를 이동하는 대신 직접 방향을 기준으로 코너 점수의 차이를 고려했으며, 엣지(edge)와 코너를 더 정확하게 구별한다는 것이 입증되었습니다. 이후 영상을 전처리하기 위해 많은 알고리즘에서 개선 및 채택되었습니다. 코너 (Corner) 코너는 주변 지역이 두 개의 강하고 서로 ..

[Computer Vision / Image Precessing] Feature Detection & Matching

특징 (Feature) 특징은 영상에서 나타나는 점, 가장자리 혹은 객체와 같은 특정 구조를 말합니다. 영상의 산봉우리, 건물의 모서리, 출입문과 같은 특정한 구조가 바로 특징입니다. 이러한 지역 특징들은 특징점(keypoint features)이라고 불리며, 해당 지점을 둘러싼 픽셀 패치의 모양에 의해 기술(describe)됩니다. 특징들은 각각의 방향과 지역적인 모양에 따라 매칭(matching)할 수 있으며, 이를 엣지(edges)라고 부릅니다. 또한 이는 영상 시퀀스에서 객체간의 경계와 겹침을 나타내는 좋은 지표가 될 수 있습니다. 특징점 (Feature Point) 특징점이란 객체 경계의 방향이 갑자기 변하는 점, 두 개 혹은 그 이상의 엣지의 교차점입니다. 특징점 검출 및 매칭의 주요 요소 D..

[Device Driver] Character Device Driver Led Driver 예제 참고용

드라이브 시스템 구조 ① 응용 프로그램(Application APP) 파일 함수 호출 : open("/dev/xxx"), read(), write() ② 시스템 콜 인터페이스(System call interface) SWI(Software interrupt)로 인해 전달된 파라미터의 값, 즉 Exception의 원인에 따라 다른 예외 처리 함수를 호출 ③ 가상 파일 시스템(VFS, Virtual File System) sys_open, sys_read ... 열려 있는 여러 디바이스 파일에 따라 다른 드라이버를 찾아 해당 기능을 호출 예를 들어, 캐릭터 디바이스가 열려 있는 경우 커널에 의해 정의된 배열 chrdev[]를 확인 배열의 인덱스는 주 장치 번호이며, 내용은 file_operations 구조체..

Study/Device Driver 2021.08.16

[Device Driver] Led Device driver 제작

라즈베리파이 3 모델 B 스펙 SoC : Broadcom BCM2837 SoC CPU : 1.2GHz ARM Cortex-A53 MP4 GPU : Broadcom VideoCore IV MP2 400 MHz 메모리 : 1GB LPDDR2 SD카드 : Micro SD, push-pull type 라즈베리파이 3 모델 B 핀 맵 GPIO 시작 주소 주변 장치의 물리 주소 범위 : 0x3F00 0000 ~ 0x3FFF FFFF 주변 장치의 가상 주소의 시작 주소 : 0x7E00 0000 GPIO 가상 주소의 시작 주소가 0x7E20 0000 로, 시작 주소와 0x0020 0000 만큼 떨어져있음 따라서 GPIO 물리 주소의 시작 주소는 0x3F20 0000 GPIO 핀 Input / Output 설정 (GPF..

Study/Device Driver 2021.08.15