본문 바로가기

딥러닝(Deep Learning)/컴퓨터 비전

tf.image.extract_patches(imgaes,sizes,strides,rates,padding) [컴퓨터 비전과 딥러닝 중 P513]sizes = [batch_size=1,row_size = 4,column_size = 4,num_channel=1]-> 패치를 추출하기 위한 슬라이딩 윈도우 크기 지정strides = [batch_stride=1,self.p_siz, self.p_siz,channel_stride=1]-> 슬라이딩 윈도우를 얼마만큼 움직일 것이냐! 이 예에서는 patch_size=4이므로, 4픽셀씩 슬라이등 윈도우를 이동시킴rate=[batch_dimension, height_rate, width_rate, channel_rate]첫 번째 숫자 (1): 배치 차원(batch dimension)에 대한 rate입니다. 보통 1로 설정됩니다.두 번째 숫자 (1): 이미지의 높이(heigh.. 더보기
교사 강요(researcher forcing)(Feat. seq2seq, LSTM, RNN) https://wikidocs.net/46496 08-05 RNN 언어 모델(Recurrent Neural Network Language Model, RNNLM)RNN을 이용하여 언어 모델을 구현한 RNN 언어 모델에 대해서 배웁니다. ## 1. RNN 언어 모델(Recurrent Neural Network Language Model,…wikidocs.net(아래 게시글은 위 사이트 중 일부를 발췌하였다)1. RNN 언어 모델(Recurrent Neural Network Language Model, RNNLM)앞서 n-gram 언어 모델과 NNLM은 고정된 개수의 단어만을 입력으로 받아야한다는 단점이 있었습니다.하지만 시점(time step)이라는 개념이 도입된 RNN으로 언어 모델을 만들면 입력의 길이.. 더보기
MOTA 성능 척도(Feat. Multiple Object Tracking Accuracy, HOTA) [컴퓨터 비전과 딥러닝 中 P433]에 MOTA 성능 척도 계산식이 있다. 위 계산식에 대한 이해를 하고자 블로그로 정리하기로 하였다. 우선 [추적] 알고리즘의 성능 평가는 2가지 측면을 고려해야 한다. 1. 검출 대상 Frame에 우리가 추적하고자 하는 대상이 존재하는 지 안 하는지에 대한 여부(추적 대상 [검출]에 대한 여부) 2. 쌍 맺기(매칭) -> 위 1의 단계에서 어떠한 객체를 검출했다고 해서 끝이 아니다. 검출된 그 객체가 우리가 추적하고자 하는 대상 객체가 맞는지를 확인해야 한다. 이 부분이 쌍 맺기(매칭)이다. [검출 성공률]에 대한 MOTA의 요소 1] FP : 실제로는 물체가 없는데, 잘못된 판단으로 물체가 있다고 판별한 경우를 의미합니다. 다시 말해, 물체가 없는데 Bounding .. 더보기
N-shot-learning(Feat. [Zero-shot-Learing],[One-Shot-Learning],[Few-Shot-Learning] ,얼굴 인식 , 얼굴확인/식별) (참조 사이트 : 1] 컴퓨터 비전과 딥러닝 중 P422 2] https://medium.com/@jongdae.lim/%EA%B8%B0%EA%B3%84-%ED%95%99%EC%8A%B5-machine-learning-%EC%9D%80-%EC%A6%90%EA%B2%81%EB%8B%A4-part-4-63ed781eee3c) 3]https://velog.io/@euisuk-chung/%EC%83%9D%EC%84%B1-AI%EC%9D%98-%ED%95%99%EC%8A%B5-%EB%B0%A9%EC%8B%9D-%EC%A0%9C%EB%A1%9C%EC%83%B7%EC%9B%90%EC%83%B7%ED%93%A8%EC%83%B7-%EB%9F%AC%EB%8B%9D) N - Shot-Learning의 목적 : 대규모 데이터.. 더보기
cv2.VideoCapture(0,cv.CAP_DSHOW)(Feat. [컴퓨터 비전과 딥러닝 중 P 418] cv2.VideoCapture()의 2개의 인자인 0과 cv.CAP_DSHOW의 의미를 알아보자. cv.VideoCapture(0, cv.CAP_DSHOW)에서의 0은 카메라 장치의 인덱스를 나타냅니다. 일반적으로 0은 기본 카메라(일반적으로 웹캠)를 가리킵니다. 여러 개의 카메라가 연결되어 있는 경우, 각 카메라에는 고유한 인덱스가 할당됩니다. cv.CAP_DSHOW는 카메라 캡처에 사용할 백엔드를 지정하는 것입니다. 이 경우, DSHOW 백엔드를 사용하고 있습니다. DSHOW는 Microsoft DirectX의 일부로, Windows 플랫폼에서 비디오 캡처 를 지원하는 백엔드 중 하나입니다. Windows 플랫폼에는 DSHOW 백엔드 이외에도 Media Foundation도 존재한다. (백엔드의 의미.. 더보기
categorical_crossentropy VS sparse_categorical_crossentropy 보통, 다중 클래스 분류 시 Loss Function으로 categorical_crossentropy를 사용한다. 그러나 사실 다중 클래스 분류 시 [Sparse]_categorical_crossentropy를 Loss Function으로 사용하기도 한다. 이 둘 중 어느 것을 사용하여도 사실 모델의 정확도에는 영향을 미치지 않는다. 이 둘의 차이점은 무엇일까?? 바로, Training Data의 Label의 형태이다. categorical_crossentropy : Training Data의 Label값이 [One-Hot Encoding]인 경우 사용 Sparse_categorical_crossentropy : Training Data의 Label 값이 [정수(int)]인 경우 사용 ([컴퓨터 비전과 .. 더보기
Inception,Xception Model [컴퓨터 비전과 딥러닝]에서 p407의 U-Net 코드를 이해하기 위해서는 먼저 Inception과 Xception 이 2 개의 모델을 먼저 이 해해야 된다. (참조 사이트 : https://www.youtube.com/watch?v=3oFR7ajzAZs&t=1309s) 딥러닝 초창기에 이런 오해가 만연했다. "신경망 Layer를 깊게 쌓으면 쌓을수록 성능이 더 좋아지지 않을까?" 위 질문은 일견 맞는 것 같다. 그러나 2가지의 문제를 일으킨다. 1. 과적합 문제(Overfitting) 2. 연산량 문제 : Update되는 weight값들이 많아 진다. 이러한 문제를 해결하고자 만들어 진 것이 Inception 기법이고, Inception 기법을 더 개선시킨 것이 바로 Xception이다. 깊은 층을 쌓.. 더보기
Batch Normalization(Feat. 배치 정규화, U-Net, Inception) 왼쪽 위의 그림을 보면 input 값으로 이미지가 3개의 노드를 거쳐 (R,G,B)에 대한 출력값을 가지고 있다. 그러나 각각의 R,G,B의 분표를 살펴 보면, 각 채널 간 분포도 형태의 차이가 많이 나는 것을 알 수가 있다. BN(Batch Normalization)을 거쳐, 각 채널의 분포를 최대한 가운대로 겹치게 하게 되면, 왼쪽 아래의 그림에서도 보듯이 빠른 시간에 높은 학습율을 달성하게 되는 결과가 발생 (Covariance(공분산) : 두 변수의 관계를 나타내는 양) (위 설명은 아래 유튜브의 13:50에 나옴) https://www.youtube.com/watch?v=3oFR7ajzAZs&t=390s 더보기