-
시행착오
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) 시..
-
영상처리 & opencv
[javascript/python] colab에서 웹캠 실행하기
colab에서는 opencv에서 웹캠을 사용하는 cv2.VideoCapture(0) 코드가 동작하지 않는다. 저 코드는 기기에 연결된 장치를 불러오는 데 colab은 서버에 연결되어 있기 때문이다..! 따라서 www.it-swarm.dev/ko/python/google-colab%EC%97%90%EC%84%9C-cap-cv2videocapture-0-%EC%82%AC%EC%9A%A9-%EB%B0%A9%EB%B2%95/809606863/ 링크 안의 https://colab.research.google.com/notebooks/snippets/advanced_outputs.ipynb#scrollTo=2viqYx97hPMi 에서 Camera Capture부분의 코드를 사용하여 colab에서 웹캠을 실행해보았다..
-
영상처리 & 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..
-
영상처리 & opencv
[opencv] 직선 검출(Line Detection)
참고 출처 : https://076923.github.io/posts/Python-opencv-28/ https://opencv-python.readthedocs.io/en/latest/doc/25.imageHoughLineTransform/imageHoughLineTransform.html https://ko.wikipedia.org/wiki/%ED%97%88%ED%94%84_%EB%B3%80%ED%99%98 직선 검출 알고리즘: 허프 변환(Hough Transform)을 활용 (위 출처의 이론적인 설명이 자세하게 나와 있습니다 ) 위의 사진처럼 3개의 점에 대해서 원점에서 각 점까지의 거리를 𝜃, r로 표현할 수 있다. 이 곡선은 각 점(x, y)에 대해서 r=xsinθ+ycosθ을 만족한다. 허프 ..
-
영상처리 & opencv
[영상처리] 가우시안(Gaussian) 필터
가우시안 필터는 저역 통과 필터로써 가우시안 확률분포 함수를 기반으로 구성된다. - 가우시안 필터의 푸리에(Fourier) 변환은 또 다른 가우시안 - 회전에 대해서 대칭 - 분리 가능 : 2차원 필터링--> x방향으로 1차원 필터링 + y 방향으로 1차원 필터링 으로 수행가능 - 2개의 가우시안 필터를 convolution 처리하면 그 결과 역시 다른 가우시안 필터 - 이미지를 흐리게 하거나 노이즈를 줄이는 것에 많이 사용 Matlab으로 구현한 Gaussian filter --> a는 필터 크기, s는 표준 편차 g1 = fspecial('gaussian', [5, 5]); a = 50; s=3; g = fspecial('gaussian', [a, a], s); surf(1:a, 1:a, g); s ..
-
unity
[unity] #5. C# 스크립트 기초 - 클래스, 벡터
- 클래스 클래스는 함수와 변수를 모아둔 것이다. 플레이어의 스크립트를 작성한다고 가정했을 때, 플레이어에는 HP, MP 등 상태(변수)와 공격, 방어, 마법 등 액션(함수)등이 필요하다. 클래스를 사용하면 관계가 있는 변수와 함수를 하나로 합칠 수 있으므로 스크립트를 관리하기 쉽다. 멤버 변수 : 클래스에서 사용한 변수 멤버 메서드 : 클래스에서 사용한 메서드 class 클래스명{ 멤버 변수 선언; 멤버 메서드 구현; } Player라는 class를 구현 후 Player myPlayer;를 쓰면 myPlayer 변수를 만들 수 있다. 이 상태에서 myPlayer 변수의 상자 안은 비어있는 상태이다. int형의 num변수에 숫자를 대입하는 것처럼 myPlayer 변수에는 플레이어의 실체를 대입한다. 이 ..