-
영상처리 & opencv
[opencv] 3개의 사진 Panorama(image stitching)
Panorama 구현 과정 1. Image stitching을 수행할 이미지들을 획득한 후 로드 한다. Grayscale로 변환해서 사용한다. 2. SURF 알고리즘을 사용하여 각 이미지의 특징점을 추출한 후 이미지들 간의 특징점을 비교하여 좋은 특징점들끼리 매칭시킨다. 3. 이미지들을 하나의 평면에 투영시키기 위해서 이미지 간의 변환관계(Homography)를 계산한다. 이때 모델 파라미터의 예측을 방해하는 대응점(Outlier)로부터 정확한 변환관계를 구축하기 위해 RANSAC 알고리즘을 사용한다. 4. 앞에서 계산한 Homography를 사용하여 이미지에 회전 변환을 적용하여 Image stitching을 실행한다. 주요 알고리즘 이론 : SURF, RANSAC, Homography 환경 : ope..
-
시행착오
jetson nano - balenaEtcher 오류
developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit#write Getting Started With Jetson Nano Developer Kit The NVIDIA® Jetson Nano™ Developer Kit is a small AI computer for makers, learners, and developers. After following along with this brief guide, you’ll be ready to start building practical AI applications, cool AI robots, and more. developer.nvidia.com Jetson Nano 개발자 키트(4GB) 시..
-
unity
[unity] #4. C# 스크립트 기초 - 배열, 함수
- 배열 : 동일한 특성을 가지며 일정한 규칙에 따라 몇몇 요소가 나열되어 있는 데이터 집합 new 키워드 : 스크립트에서는 만든다는 뜻에 가깝다. 배열을 만들려면 배열을 선언하고 바로 이어서 new를 이용해 배열에 필요한 크기를 지정해야 한다. 데이터타입[] 변수명 = new 데이터타입[크기]; 로 선언 및 할당해준다. //정수 배열 선언 int[] points; //배열 크기 지정 int[] points = new int[5]; //배열의 요소에 값을 대입할 때 간단히 int[] array = {2, 10, 5, 15, 3}; 배열의 길이(요소 수)는 배열형의 변수명.Length를 써서 배열의 길이를 얻을 수 있다. using System.Collections; using System.Collecti..
-
CS
[CS/책] 「오브젝트」5장 - 책임 할당하기
책 「오브젝트」 5장 책임 할당하기를 읽고 작성한 내용입니다. 데이터 중심 설계로 인해 발생하는 문제점을 해결할 수 있는 가장 기본적인 방법은 데이터가 아닌 책임에 초점을 맞추는 것이다. 책임에 초점을 맞춰서 설계할 때 직면하는 가장 큰 어려움은 어떤 객체에게 어떤 책임을 할당할지를 결정하기가 쉽지 않다는 것이다. 책임 할당 과정은 일종의 트레이드오프 활동이다. 동일한 문제를 해결할 수 있는 다양한 책임 할당 방법이 존재하며, 어떤 방법이 최선인지는 상황과 문맥에 따라 달라진다. 따라서 올바른 책임을 할당하기 위해서는 다양한 관점에서 설계를 평가할 수 있어야 한다. 실제 설계는 코드를 작성하는 동안 이뤄진다. 그리고 협력과 책임이 제대로 동작하는지 확인할 수 있는 유일한 방법은 코드를 작성하고 실행해 보..
-
CS
[CS/책] 「오브젝트」4장 - 설계 품질과 트레이드오프
책 「오브젝트」 4장 설계 품질과 트레이드오프를 읽고 작성한 내용입니다. 객체지향 설계란 올바른 객체에게 올바른 책임을 할당하면서 낮은 결합도와 높은 응집도를 가진 구조를 창조하는 활동이다[Evers09]. 훌륭한 설계란 합리적인 비용 안에서 변경을 수용할 수 있는 구조를 만드는 것이다. 요즘 프로젝트를 진행하면서 설계는 매우 어렵다는 것을 깨닫고 있다. 4장을 읽으며 객체지향 설계를 데이터 중심으로 잘못하고 있다는 것을 한번 더 깨달았고, 의욕 넘치게 리팩토링을 시도해 보았으나.. 생각처럼 쉽지 않았다. 그래도 이번 기회에 문제라는 것을 상기하고 갈 수 있어서 좋았다. 데이터 중심 관점 객체의 상태는 구현에 속한다. 구현은 불안정하기 때문에 변하기 쉽다. 상태를 객체 분할의 중심축으로 삼으면 구현에 관..
-
CS
[CS/책] 「오브젝트」1장 - 객체, 설계
책 「오브젝트」 1장 객체, 설계를 읽고 작성한 내용입니다. 객체지향은 뭘까? 처음 프로그래밍을 시작했을 때, C언어를 통해 절차지향적 접근을 배웠다. 이후 C++를 학습하면서 객체지향적인 개념을 습득하고, 객체지향 프로그래밍이 무엇인지에 대한 감을 익힐 수 있었다. 하지만 실제로 객체지향적인 코드를 설계하고 작성하는 것은 훨씬 어려웠다. 이 책의 목적은 객체지향 패러다임이 제시하는 프로그래밍 패러다임을 설명하는 것이다. 가능하면 개발자인 우리가 가장 잘 이해할 수 있고 가장 능숙하게 다룰 수 있는 코드를 이용해 객체지향의 다양한 측면을 설명하려고 노력할 것이다. 이 책을 통해 객체지향 패러다임에 대해 이해할 수 있을 것 같아 기대가 된다. 코드를 통해 이해할 수 있다는 점이 가장 마음에 들었다. 이 책..