Whiteboard Program 분석(1)
쟈니리의 화이트보드 프로그램을 다운로드 받아보면, C#으로 작성된 것을 알 수 있다.
프로젝트를 Visual Studio 에서 열어보면 아래의 구조로 구성되어 있다.
WiimoteWhiteboard
--------------------------
Properties
app.manifest
AssemblyInfo.cs
Resources.resx
Resources.Designer.cs
Settings.settings
Settings.Designer.cs
--------------------------
References
System
System.Data
System.Drawing
System.Windows.Forms
System.Xml
--------------------------
WiimoteLib
-docs
-APIHelp
-AdditionalContent
-Help
- Properties
DataTypes.cs
Events.cs
HIDImports.cs
WiimoteLib.csproj
WiimoteLib.csproj.user
--------------------------
CalibrationForm.cs
CalibrationForm.Designer.cs
CalibrationForm.resx
Form1.cs
Form1.Designer.cs
Form1.resx
Program.cs
Warper.cs
주요한 프로그램은 Form1.cs와 CalibrationForm.cs 이지만, WiimoteLib 속에 위모트를 불러들이고 처리하는 부분이 들어 있어서 향후에 위모트로 응용프로그램을 작성하자면 분석해야할 첫대상이 될 것이다.
WiimoteLib는 DataTypes.cs, Events.cs, HIDImports.cs 세가지 파일로 구성된다.
'Interesting'에 해당되는 글 192건
- 2008.07.15 [wiimote] whiteboard 프로그램 분석 (1)
- 2008.07.12 변환의 계층
- 2008.07.12 projective distortion 의 예
A hierarchy of transformations
Projective 변환에 대해 그룹을 나눌 수 있다. : Projective linear group
n 차원의 nxn 행렬에 대해 실수요소를 가지는 일반적인 선형그룹을 GL(n)으로 표현하자.
Projective linear group : PL(n) -> Projective 변환의 경우 n = 3
- 불변량 (Invariant) : 각 변환을 통해 기하학적 설정이 변하지 않는 부분이 있다.
아래와같이 네가지 계층으로 나뉜다.
1. Isometries
2. Similarity transformation
3. Affine transformation
4. Projective transformation
projective distortion 의 예
아래의 예는 좌측의 사진을 우측의 사진으로 변환한 것이다. 수식에서 말하듯이 H의 요소가 선형적이므로 H의 요소를 구하기 위해서는 4개의 점들이 있어야 H 전체에 대해 8가지 선형식을 이끌어 낼 수 있다.
세가지 유의할 점 : H 변환을 계산하기 위해 카메라의 매개변수나 평면의 정보 등을 알 필요가 없다. projective distortion을 제거하기 위해 반드시 4개의 점에 대한 정보가 있어야 함. 향후 언급할 Projective transformation 의 계산방법을 고려하는 것.