목록- (95)
olrlobt
Pose Estimation Pose estimation은 인공지능 및 컴퓨터 비전 기술을 사용하여 이미지나 비디오에서 인간의 포즈(자세)를 감지하고 추정하는 기술이다. 이미지 예 : 동영상 예 : 예를 들어, 얼마 전 올렸던 kakao pose API도 여기에 속한다. https://olrlobt.tistory.com/46 [Spring boot] 카카오 포즈 / RestTemplate으로 Kakao Pose API 호출하기 카카오 포즈 Kakao Pose API 카카오 포즈(Pose) API는 이미지나 영상을 분석해 사람의 자세를 추출하는 기능을 제공한다. 이미지에서 사람들을 찾고 사람의 코, 눈, 귀, 어깨, 팔꿈치, 손목, 골반, 무릎, olrlobt.tistory.com Pose Estimati..
이전까지 아무 불편함 없이 삼성 이온 1을 개발용 노트북으로 잘 쓰고 있었다. 하지만, 국비에서 더블 모니터를 맛보고 나니, 집에도 더블 모니터를 설치하게 되었고, Spring과 카톡, 구글만 같이 쓰더라도 버벅거림 현상이 나타나며 답답함을 느끼게 했다. 작업 관리자(Ctrl + Shift+ esc)의 성능 확인 탭에서 메모리가 부족하다는 것을 깨닫고, RAM을 추가하기로 한다 노트북 RAM포트 지원 여부 확인하기 삼성 이온 1이라고 모두 다 RAM을 추가할 수 있는 것은 아니다. 내가 찾아본 바로는 15인치 버전만 가능하고 13인치 버전은 램 추가 포트 자체가 없는 것으로 알고 있다. 시스템 검색 - 시스템 정보 - 시스템 요약 - 베이스보드 제품/ 시스템 모델 내 노트북의 경우, 모델명이 NT950 ..
내 Github를 볼 때마다, 국비를 다니며 만들어둔 Repository가 너무 많아서, 보기에 이쁘지도 않고, 관리하기 힘들다는 생각이 들었다. 하지만 막상 삭제하기에는, 내가 공부한 흔적과 Github에 심어진 잔디가 아까워서 어떤 방법이 있을까 찾아보았다. 나는 위의 정리되지 않은 repository들을 두 분류로 나누어, 우아한 테크코스 프리코스를 진행한 레퍼지토리 하나와, 국비에서 진행한 공부내용의 레퍼지토리 하나로 묶어보려 한다. Github Subtree 내가 사용할 방법은 Git 명령어인 Subtree이다. Subtree는 여러 개의 Git repository를 폴더 하나(큰 repository)에서 관리할 수 있게 하는 기능이다. 정확히는 repository가 큰 repository의 하..
카카오 포즈 Kakao Pose API 카카오 포즈(Pose) API는 이미지나 영상을 분석해 사람의 자세를 추출하는 기능을 제공한다. 이미지에서 사람들을 찾고 사람의 코, 눈, 귀, 어깨, 팔꿈치, 손목, 골반, 무릎, 발목의 위치를 키 포인트(Key Points)로 추출한다. API에 대한 자세한 내용은 공식 홈페이지를 참조하자. https://developers.kakao.com/docs/latest/ko/pose/common Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com Spring boot에서 사용해 보기 POST /pose HTTP/..
분할 정복 알고리즘 (Divide and Conquer Algorithm) 분할정복 알고리즘은 간단히 말해, 문제를 작게 분할한 후 각각을 정복하는 알고리즘이다. 큰 문제를 작은 문제로 분할하여 각각을 해결하고, 그 결과를 이용해 전체 문제를 해결한다. 이때 분할된 작은 문제는 원래 문제와 같은 형태를 가지며, 작은 문제는 원래 문제의 일부분이 된다. 분할된 작은 문제를 재귀적으로 해결하고, 이를 결합하여 원래 문제를 해결한다. 분할정복 알고리즘은 재귀적인 방법을 통해 문제를 해결하며, 대표적인 예시로는 이진 탐색(Binary Search), 병합 정렬(Merge Sort), 퀵 정렬(Quick Sort) 등이 있다. 분할 정복 알고리즘과 동적계획법(DP) 분할정복 알고리즘과 동적 계획법은 모두 대규모 ..
유클리드 호제법 (Euclidean Algorithm) 유클리드 호제법이라고도 불리는 유클리드 알고리즘은 둘 이상의 정수의 최대공약수(GCD)를 구하는 알고리즘이다. 유클리드 호제법은 큰 수(num1)와 작은 수(num2) 사이의 최대 공약수는 큰 수를 작은 수로 나눈 나머지(R)와 작은 수(num2) 사이의 최대 공약수와 같다는 점을 반복하여 문제를 해결한다. 기본적인 방법은 다음과 같다. 큰 수(num1)에서 작은 수(num2)를 나눈다. 나머지가 0이 아니라면, 나머지와 작은 수(num2)로 1번부터 다시 시작한다. 1~ 2 과정을 반복해 나머지가 0이라면, 그 수가 최대 공약수이다. 예를 들어, 21과 49 가 있다. mod 연산을 진행하면, 49 mod 21 = 7 나머지가 0이 아니므로, 나머..
플로이드 워셜 알고리즘 (Floyd-Warshall Algorithm) Floyd-Warshall 알고리즘은 음수 순환 사이클이 없는 그래프에서, 모든 점에서 모든 점까지의 최단거리를 구하는 알고리즘이다. 한 점에서 이웃 노드를 탐색하며 최단 거리를 구하는 다익스트라 알고리즘과는 다르게, 거쳐가는 중간 노드를 기준으로 최단 거리를 구한다. 또한, 다익스트라 알고리즘과 다르게, 음의 가중치를 갖는 간선이 있어도 된다. 하지만, 합이 음수 가중치를 갖는 사이클이 있어서는 안 된다. 위 그림은 1에서 4로 가는 최단 경로를 구하려 한다. 양쪽 그림 모두 2 > 3 > 2로 가는 사이클이 존재하지만, 좌측은 합이 +1, 우측은 합이 -1이다. 위 문제를 해결하기 위해서 좌측 그림은 1 > 2 > 4의 경로로 해..
다익스트라 알고리즘 (Dijkstra Algorithm) 다익스트라 알고리즘 (또는 데이크스트라 알고리즘)은 그래프에서 두 노드 사이의 최단 경로를 찾는 알고리즘이며, BFS와 DP를 사용하여 구현된다. 다익스트라 알고리즘은 일반적으로 두 노드 사이의 가장 짧은 경로를 찾는 문제에 사용되지만, 최단 경로 트리를 만드는 문제에도 많이 사용된다. BFS와 DP에 대한 이해가 부족하다면, 아래의 포스팅을 통하여 이해를 하면 좋을 것 같다. BFS : https://olrlobt.tistory.com/41 [알고리즘] BFS (Breadth-First Search) : 너비 우선 탐색 알고리즘이란? 너비 우선 탐색 BFS(Breadth-First Search) 트리나 그래프를 탐색하는 기법 중 하나로, 시작 노..