| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
- alphablending
- Slam
- tilebasedrasterizer
- covariancematrix
- sensorfusion
- adaptivedensitycontrol
- NERF
- rospackages
- vectorfields
- rostopics
- turtlebot
- rosnoetic
- 3dmapping
- differentiablerendering
- realtimerendering
- usbcamera
- Ros
- roslaunch
- 3dgaussiansplatting
- vectorcalculus
- gaussiansplatting
- turtlebot3
- pointcloud
- opencv
- catkinworkspace
- raspberrypi
- electromagnetism
- LIDAR
- imageprocessing
- ComputerVision
- Today
- Total
목록2D Vision (16)
Wiredwisdom
특정 레이어의 모든 값들의 평균을 0으로 맞추고 분산을 1로 교정하는 작업이다. 이를 통해 활성화 함수의 값이 너무 크거나 작아지는 것을 방지한다. 이를 통해 기울기 발산과 소실을 방지한다.
1. Deep Architecture 5 convolutional +3 fully connected with 60 million parameters 2. ReLU ActivationFirst major CNN to use ReLU instead tanh/sigmoid. 3. Dropout Regularization50% dropout in FC layers to prevent overfitting 4. GPU AccelerationTrained on two GTX 580 GPUs 5. Data AugmentationImage translations, horizontal reflections, and PCA color augmentation. 6. Local Response NormalizationNor..
본래의 컨볼루션은 커널이 입력측의 채널을 전부 컨볼루션을 하고 더하는 방식으로 이루어지나MobileNet-V2 에서는 각각의 입력 채널에 맞는 커널이 각기 따로 계산이 되며 합산은 Pointwise convolution 을 통해 이루어지게 된다. 이 두가지 주요 과정을 통하여 Operation이 줄어들게 된다.임베딩 시스템에서는 이런 방식의 네트워크를 주로 사용한다. 이에 대한 내용은 차후 MobileNet-V2에서 자세히 다루도록한다.
각 레이어 설명1. convolutions : 일반적인 CNN 과정이다. 처음에는 6개의 커널을 사용하여 `28xx28`사이즈의 출력값을 6개 생성한다.2. subsampling : 훗날에 나오는 Pooling 중에서도 Average Pooling을 선현변환 시킨 것이 Subsampling이 된다. `text(avg)=1/(nxxn) Sigma_(i=1)^(nxxn) *x_i` `y_j=betaj*text(avg)+b_j` `f(y_j)=text(Activate Function)(y_j)` 여기서는 `14xx14` 커널을 6개 사용하여 6개의 출력을 했다. 당연하게도 각 입력층은 각각의 subsampling 을 하여 cnn과 다르게 합산되지 않고 개별 출력결과를 가진다.따라서 입력과 출력의 갯수는 동일..
Zero-Shot-Learning : 이미 충분히 학습이 된 네트워크(Foundation Model) 에서의 정보를 토대로 학습되지 못한 전혀 새로운 대상(혹은 의미)를 추론하여 학습된 모델을 통해 클래스로 분류하는 것을 의미한다.Few-Shot-Learning : 충분히 학습 된 Foundation Model에 전이 학습 등을 통하여 아주 소량의 라벨링 된 데이터틀 가지고 새로운 클래스를 만들어 Inference 시 인식하도록 하는 것이다. 이는 대량 학습을 위한 무수한 라벨링 데이터들에 대해 소모 되는 비용과 시간을 절약하기 위함이다. 기존의 분류체계만으로 새로운 학습에 적용하여 더 빠르게 학습하도록 유도하는 것이다. 이는 어느정도 인지 능력이 있는 사람의 빠른 학습 과정의 원리와 매우 유사하다. ..
`L(theta, phi)=sum_(l=0)^oo sum_(m=-l)^l (l_(lm)Y_(lm)(theta,phi))` `Y_l^m(theta,phi)=Ne^(imphi)P_l^m(costheta)` 그래서 Gaussian Splatting의 논문의 내용을 적용해 보면, 계수는 0,1 두개만을 사용한다.이를 예시로 잡고 이해를 해보자. n=0 일때에는 등방성 광원을 의미n=1 일 때에는 하나의 광원을 의미하고n=1일 때 하나의 광원에 대한 방향성에 대한 factor는 m=-1,0,1 이라는 세개의 m 값으로 조절이 된다. 그렇다면`L(theta, phi)=sum_(l=0)^oo sum_(m=-l)^l (l_(lm)Y_(lm)(theta,phi))`에 적용하면`L(theta, phi) ≈ l_0^..
import cv2import numpy as npimport osimport globCHECKERBOARD = (7,10) criteria = cv2.TermCriteria(cv2.TERM_CRITERIA_EPS | cv2.TERM_CRITERIA_MAX_ITER, 30, 0.001)objpoints = []# 각 체커보드 이미지에 대한 2D 점 벡터를 저장할 벡터 생성imgpoints = [] # 3D 점의 세계 좌표 정의objp = np.zeros((1, CHECKERBOARD[0] * CHECKERBOARD[1], 3), np.float32)objp[0,:,:2] = np.mgrid[0:CHECKERBOARD[0], 0:CHECKERBOARD[1]].T.reshape(-1, 2)prev_img_s..
포인트 클라우드에서 "normal"은 각 점(point)에서의 표면 법선 벡터(normal vector)를 의미합니다. 법선 벡터는 해당 점에서의 표면의 방향을 나타내며, 주로 표면의 기울기와 관련이 있습니다. 포인트 클라우드의 법선 벡터는 3D 데이터 처리와 분석에서 중요한 역할을 합니다. 예를 들어, 법선 벡터는 표면 재구성, 물체 인식, 세그멘테이션, 그리고 충돌 회피 등 다양한 응용 분야에서 사용됩니다. 1. 법선 벡터의 정의:법선 벡터(normal vector)는 3D 표면의 특정 점에서 표면에 수직인 벡터를 말합니다.이 벡터는 표면의 기울기와 방향을 나타내며, 표면의 미세한 구조를 이해하는 데 도움이 됩니다. 2. 포인트 클라우드와 표면:포인트 클라우드는 단순히 표면의 점들을 나열한 것입니다...