일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준
- image processing
- CNN
- DP
- 그래프 이론
- MinHeap
- real-time object detection
- r-cnn
- canny edge detection
- C++
- dfs
- Python
- 강화학습
- opencv
- LSTM
- 머신러닝
- BFS
- YoLO
- 딥러닝
- two-stage detector
- AlexNet
- eecs 498
- Reinforcement Learning
- deep learning
- Mask Processing
- MySQL
- machine learning
- One-Stage Detector
- dynamic programming
- object detection
- Today
- Total
목록전체 글 (147)
JINWOOJUNG

본 영상 처리 개념과 기법들에 대한 공부를 진행하면서 배운 내용들을 중심으로 정리한 포스팅입니다. 책은 Computer Vision: Algorithms and Applications를 기반으로 공부하였습니다.또한, 인하대학교 박인규 교수님의 디지털 영상 처리 과목을 기반으로 제작된 포스팅입니다. Before This Episodehttps://jinwoo-jung.com/76 [ 영상 처리 ] Ch9. Local Feature Detection and Matching(1)본 영상 처리 개념과 기법들에 대한 공부를 진행하면서 배운 내용들을 중심으로 정리한 포스팅입니다. 책은 Computer Vision: Algorithms and Applications를 기반으로 공부하였습니다.또한, 인하대학교 박jin..

본 영상 처리 개념과 기법들에 대한 공부를 진행하면서 배운 내용들을 중심으로 정리한 포스팅입니다. 책은 Computer Vision: Algorithms and Applications를 기반으로 공부하였습니다.또한, 인하대학교 박인규 교수님의 디지털 영상 처리 과목을 기반으로 제작된 포스팅입니다.이번 포스팅에서는 Local Feature Detection에 대하여 집중적으로 다뤄볼 것이다. Local Feature vs Global Feature Local Feature는 영상의 전체가 아닌 일부를 표현(특정)하는 특성이다. 반면, Global Feature는 영상 전체의 특징을 의미한다. 영상의 픽셀 Intensity 분포, Gradient 등이 Global Feature를 의미한다. Local F..

접근법 가장 기본적인 BFS/DFS 문제 중 하나이다. 이번 포스팅에서는 BFS에 대하여 알아보고, BFS 방식으로 풀어볼 것이다. 물론, DFS로 풀어도 상관없다. BFS(Breadth First Search)BFS는 너비 우선 탐색 방법이다. 순서는 다음과 같다. 1. 시작 노드 StartNode 방문.2. 노드 StartNode에 인접한 정점 중 방문하지 않은 정점에 대하여 모두 Queue에 저장3. Queue에서 정점을 삭제하면서 새로운 StartNode를 설정하고, 단계(1)을 수행4. Queue가 Empty 상태이면 종료 이에 대한 수도코드는 다음과 같다. 수도코드 기반으로 그대로 구현하면 된다. 3번 과정에서 Queue에 저장한 노드들에 대하여 단계 1을 반복하므로 while문으로 반복 중..

금일은 다익스트라 알고리즘에 대하여 자세히 알아보자. 다익스트라 알고리즘은 Dynamic Programming을 활용한 최단 경로 탐색 알고리즘이다. 다익스트라를 DP를 활용하여 접근할 수 있는 이유는 최단 경로는 각각의 최단 경로를 포함하고 있기 때문이다. 따라서 이전까지 계산해 둔 최단 경로를 사용하여 하나의 최단 거리를 구한다. 기본적은 다익스트라 알고리즘의 프로세스는 다음과 같다. 1. 출발 노드 설정 2. 출발 노드를 기준으로 각 노드의 최소 비용 저장3. 방문하지 않은 노드 중 최소 비용 노드 설정4. 해당 노드를 경유해서 특정한 노드로 가는 경우를 고려해 최소 비용 갱신5. 2~4번 과정 반복 위와 같은 그래프가 주어졌다고 하자. 각 노드사이로 연결 된 간선은 비용을 의미한다. 각 문제에 ..

문제를 먼저 해석 해 보자. 3XN 테이블에는 양 또는 음의 정수가 주어진다. 각 열에는 적어도 1개의 조약돌을 놓아야 하며, 가로나 세로로 인접한 두 칸에 동시에 조약돌을 놓을 수 없다. 구해야 하는 것은 돌이 놓은 자리에 있는 수의 합을 최대가 되로고 하는 것이다. 결국 최대 비용 문제이다. 그리고, 이전 $i$번째 열에 놓을 수 있는 조약돌의 위치는 이전 열에 영향을 받기 때문에 Dynamic Programming으로 접근하여 재귀식을 도출해야 한다. 그렇다면 각 열에 놓을 수 있는 조약돌의 경우의 수는 뭘까? 위와 같이 총 4가지 경우의 수가 있다. 이를 각가 C1,2,3,4라 하자. 그렇다면 각 경우가 인접할 수 있는 경우의 수는 어떻게 될까? 2가지 제약조건을 고려한 인접 가능한 경우의 ..

접근법 최단경로 찾기에 적용 가능한 Dynamic Programming Algorithm이 바로 Floyd(플로이드)이다. 문제를 보면 특정 도시에서 다른 도시로 가는 서로다른 비용을 가지는 버스가 존재하고, 특정 도시에서 다른 도시로 가는 최소 비용을 구하는 문제이다. 따라서 주어진 문제(경로에 따른 비용)에 대하여 하나 이상의 많은 해가 존재할 때, 최적의 해답을 찾아야 하는 최적화 문제이다. 우리는 주어진 정보 중 출발 도시와 도착 도시 사이의 최소 cost를 원소로 가지는 인접 행렬식 $W$를 포현할 수 있다. 예를들어, $W[i][j]& 는 $i$에서 $j$로 가는 최소 비용을 의미한다. 만약 $i$에서 $j$로 가는 버스가 없다면, 구해야 하는 것은 최소 비용이기 때문에 무한대로 표현하고, ..

접근법또 다시 DP 문제이다. 각 물품에는 Weight, Value가 존재하고, 배낭이 버틸수 있는 Limit Weight는 K로 제한되어 있다. 따라서 목표는 Weight Sum이 K 이하인 최대한의 가치합을 가지는 물건들을 선택해야 한다. 최적성의 원리를 적용하여 해당 문제를 Dynamic Programming으로 해결할 수 있는지 살펴보자. 우리는 위와 같은 Table을 생각할 수 있다. 제한되는 무게에 따라서 각 물품을 담을 수 있는지가 결정되고, 그에 따라서 Value의 최대 합이 달라지기 때문이다. 따라서 해당 Table의 각 원소는 Limit Weight보다 작은 범위에서 고려되는 물품들의의 개수에 따른, 담을 수 있는 물품들의 가치 최대합이 들어가게 된다. 따라서 각 물품들의 Weight..

접근법 연쇄적인 행렬의 곱셈 순서를 결정하는 것은 DP 문제 중 하나로, 효율적은 행렬 곱셈 순서를 결정하는 문제이다. 문제에서 언급 되었듯이 행렬의 곱셈 순서에 따라서 요구되는 계산량이 달라지기 때문에, 곱셈 연산을 최소로 하는 순서를 결정해야 한다. 가장 기본적인 행렬 곱셈의 규칙을 생각 해 보자. $A$ 행렬은 $ i by j $, $B$ 행렬은 $k by l$이라 하면, 행렬 $A,B$의 곱셈 연산이 성립하기 위해서는 $j == k$여야 하며, 계산된 행렬을 $C$라 하면, $C$의 크기는 $ i by l $이 된다. 이러한 규칙을 고려하여, 연쇄 행렬곱셈을 DP를 이용하여 해결하기 위해서 재귀 관계식을 구축하면 다음과 같다. $$d_k = 행렬 A_k의 열의 수 /to A_k의 행의 수는 ..