반응형

분류 전체보기 250

[Python - 프로그래머스] 2023 KAKAO BLIND RECRUITMENT > 택배 배달과 수거하기

https://school.programmers.co.kr/learn/courses/30/lessons/150369#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Solution 내가 했던 풀이는 다음과 같다. (아래 풀이는 테스트 15번부터 시간초과가 뜬다. 그 외 테스트 케이스는 통과이다.) 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 31 import numpy as np import math import itertools def fun(del..

[Python - 프로그래머스] 2023 KAKAO BLIND RECRUITMENT > 개인정보 수집 유효기간

문제 설명 고객의 약관 동의를 얻어서 수집된 1~n번으로 분류되는 개인정보 n개가 있습니다. 약관 종류는 여러 가지 있으며 각 약관마다 개인정보 보관 유효기간이 정해져 있습니다. 당신은 각 개인정보가 어떤 약관으로 수집됐는지 알고 있습니다. 수집된 개인정보는 유효기간 전까지만 보관 가능하며, 유효기간이 지났다면 반드시 파기해야 합니다. 예를 들어, A라는 약관의 유효기간이 12 달이고, 2021년 1월 5일에 수집된 개인정보가 A약관으로 수집되었다면 해당 개인정보는 2022년 1월 4일까지 보관 가능하며 2022년 1월 5일부터 파기해야 할 개인정보입니다. 당신은 오늘 날짜로 파기해야 할 개인정보 번호들을 구하려 합니다. 모든 달은 28일까지 있다고 가정합니다. 다음은 오늘 날짜가 2022.05.19일 ..

[Object Detection] YOLO Define Optimal Anchor Box :: YOLO v5, YOLO v6 autoanchor

YOLO에서 Optimal 한 Anchor Box 정의하는 방법(with k-means & GA) in YOLOv5, YOLO v6 YOLO 에서 Bounding Box를 예측하기 위해 Anchor Box를 사용하는데, 2-stage 기법에서는 COCO dataset이나 Pascal VOC dataset에 맞춘 Anchor Box를 그대로 사용한다면, YOLO에서는 학습하고자 하는 dataset에 맞는 Anchor Box를 k-means와 Genetic Altorithm으로 새로 정의하여 사용한다. 이번 포스팅에서는 YOLO v5, v6 개발자가 구현해놓은 코드를 기반으로 그 방법을 설명하고자 한다. 먼저 필요한 라이브러리들을 불러온다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1..

AI/Object Detection 2022.08.30

[Object Detection] YOLO v5, v6 Loss

지난시간에 Loss를 계산하기 위해 각 Grid 별로 Ground Truth를 정규화하는 과정을 알아보았다. 2022.08.04 - [AI/Object Detection] - [Object Detection] YOLOv5, YOLOv6 Loss 구하는 과정 중 build_targets() 이해하기 [Object Detection] YOLOv5, YOLOv6 Loss 구하는 과정 중 build_targets() 이해하기 YOLOv5와 YOLOv6는 같은 개발자가 개발한 버전으로, 두 버전 모두 여기에 구현되어 있다. 두 버전 모두 loss는 계산하는 과정은 같은데, loss를 계산하기 위해 label을 각 Grid에 맞게 build하는 과정을 파 leedakyeong.tistory.com 이제 그 결과와 ..

AI/Object Detection 2022.08.10

[Object Detection] YOLOv5, YOLOv6 Loss 구하는 과정 중 build_targets() 이해하기

YOLOv5와 YOLOv6는 같은 개발자가 개발한 버전으로, 두 버전 모두 여기에 구현되어 있다. 두 버전 모두 loss는 계산하는 과정은 같은데, loss를 계산하기 위해 label을 각 Grid에 맞게 build하는 과정을 파해쳐보려한다. YOLO v1 포스팅에 자세히 설명한 것 처럼 Ground Truth의 Center point가 위치하는 Grid를 표시하여 이로 Obj Loss를 구하고, GT의 Width, Height를 Grid에 맞게 Normalization 한걸로 Box Loss를 구한다. build_targets()는 이를 구현하는 과정이다. 이를 이해하려면 YOLO는 1. grid를 나누어 각 grid별로 classification과 BBox Regression을 하고, 따라서 각 gr..

AI/Object Detection 2022.08.04

[Object Detection] YOLO v1 ~ v6 비교(2)

YOLO Version별 비교 지난 포스팅에서 YOLO v1~v3를 비교&리뷰했다. 2022.06.23 - [AI/Object Detection] - [Object Detection] YOLO v1 ~ v6 비교(1) [Object Detection] YOLO v1 ~ v6 비교(1) YOLO Version별 비교 지난 포스팅에서 Object Detection 알고리즘 중 YOLO v1에 대해 자세히 알아보았다. 2022.04.04 - [AI/Object Detection] - [Object Detection(객체 검출)] YOLO v1 : You Only Look Once [Ob.. leedakyeong.tistory.com 이번에는 v4~v6에대해 리뷰하겠다. YOLO v4 :: Optimal Spe..

AI/Object Detection 2022.06.23

[Object Detection] YOLO v1 ~ v6 비교(1)

YOLO Version별 비교 지난 포스팅에서 Object Detection 알고리즘 중 YOLO v1에 대해 자세히 알아보았다. 2022.04.04 - [AI/Object Detection] - [Object Detection(객체 검출)] YOLO v1 : You Only Look Once [Object Detection(객체 검출)] YOLO v1 : You Only Look Once 지난시간에 Object Detection 이란 무엇인지 간단히 알아보고, 주요 용어들에 대해 알아보았다. 2022.03.31 - [AI/Object Detection] - Object Detection이란? Object Detection 용어정리 Object Detection이란? O.. leedakyeong.tist..

AI/Object Detection 2022.06.23

[Python] Object Detection Mosaic Augmentation :: YOLO v5

Mosaic 이란? Mosaic 기법은 Image Augmentation 기법 중 하나로, 4장의 이미지를 한 장으로 만드는 기법이다. 예를 들면, 다음 4장의 이미지를 다음과 같이 한 장으로 만든다. 각 이미지의 사이즈는 random하게 하여 자유도를 준다. 따라서 전체 이미지가 모두 포함되지 않을 수도 있다. (빨간색 박스는 Ground Truth이다. 알아보기 좋게 같이 그렸다.) 이 기법은 이미지 사이즈가 작아져, 작은 물체가 많아지므로 작은 물체를 Detect하기 어렵다는 YOLO의 단점을 극복 할 수 있도록 도와주며, 1장의 이미지로 4장의 이미지를 학습하는 효과를 주어 적은 batch size로도 학습이 용이하도록 해준다. YOLOv5에 저자가 직접 구현해 놓은 Mosaic 기법을 조금 변형..

AI/Object Detection 2022.06.09

[Python] mAP(mean Average Precision) 예시 및 코드

지난 시간에 Object Detection에서 사용하는 여러 용어들을 정리해 보았다. 그 중 mAP도 있었는데, 오늘은 그 mAP를 계산하는 코드에 대해 설명해보려 한다. 실제 yolo v5 저자가 올려놓은 코드로 설명한다. 2022.03.31 - [AI/Object Detection] - Object Detection이란? Object Detection 용어정리 Object Detection이란? Object Detection 용어정리 Object Detection이란? Object Detection은 말 그대로 물체를 검출하는 문제이다. 딥러닝으로 이미지 관련 무언가를 한다면 대체로 다음과 같다. 1. Classification 가장 기본이 되는 문제이다. 이미지가 주어 leedakyeong.tist..

AI/Object Detection 2022.06.08

[Python] albumentations 라이브러리를 이용한 Image Agumentation :: Bounding Box 좌표와 함께 이미지 변형하는 방법

albumentations 라이브러리를 이용한 Image Agumentation :: Bounding Box 좌표와 함께 이미지 변형하는 방법 이미 누군가 구현해 놓은 albumentations 라이브러리를 사용해서 Image를 변형시킬 수 있다. 주로 Class가 Imbalance 할 때 적은 수의 Class 이미지를 증강시키는데 사용하거나(Image Agumentation), 꼭 이미지 개수 증강이 아니더라도, 모델의 성능을 높히기 위해 일부러 확률적으로 노이즈를 첨가하는 등의 역할을 한다. Image를 변형시키는 방법에는 색 보정 외에도 이미지를 회전시키거나, 뒤집는 등의 방법이 있는데 이 라이브러리는 Image Object Detection 문제에서 Bounding Box 좌표도 자동으로 함께 이..

AI/Object Detection 2022.05.06
반응형