분류 전체보기

분류 전체보기

    CV4ARVR(Computer Vision for AR/VR) Worksho

    Computer Vision에서 AR/VR 분야를 위한 워크샵인 CV4ARVR이 있다. Meta 및 CMU 등에서 후원하고 있으며, 2022 6월 기준 여섯 차례 진행을 했다고 한다. Paper List들을 보면 꽤 유익한 논문들이 많다. 심지어 Yaser Sheikh의 세션도 포함되어 있음. 2019 https://xr.cornell.edu/workshop/2019/program CV4ARVR 2019 Program — XR @ Cornell Third Workshop on Computer Vision for AR/VR June 17, 2019, Long Beach, CA Organized in conjunction with CVPR 2019 xr.cornell.edu 2020 https://xr.co..

    [Ubuntu] 우분투 하드디스크 이름 변경

    우분투 하드디스크 이름이 /media/name/5b6a0f05-0f7f-4bbb-8b52-a3********b71 이런 식으로 설정되어 있어서 reboot을 할 때 마다 위 이름 끝자리에 넘버링이 추가로 되면서 계속 이름이 변경되길래 /mnt/storage 로 이름을 변경하였다. 1. Disks 앱 열기 2. 변경할 하드디스크 파티션 선택 3. 설정 버튼 클릭 4. Edit mount options 5. User Sessioin Defaults 토글 버튼 해제 6. Mount Point 경로 수정 참고자료 : https://askubuntu.com/questions/904561/how-to-change-hard-drive-name How to change hard drive name my hard dri..

    [Book Review] 똑똑한 코드 작성을 위한 실전 알고리즘

    한빛미디어에서 출간된 "똑똑한 코드 작성을 위한 실전 알고리즘" 책은 해결하고자 하는 문제를 다양한 시각으로 풀어내는 능력을 키워내고, 효율적으로 소프트웨어를 개발할 수 있도록 하는 알고리즘을 꼼꼼히 기초부터 설명하여 실전에 잘 적용할 수 있도록 설명해냈다. 그렇기 때문에 프로그래밍을 어느정도 아는 사람을 독자로 삼았고, 파이썬 기반으로 알고리즘 개념들과 실전 문제들을 설명한다. 알고리즘은 예측 가능한 시간에 정확한 결과를 반환하는 컴퓨터 프로그램으로 구현된 단계별 문제 해결 방법이라고 한다. 알고리즘 연구는 정확성(해당 알고리즘이 모든 입력에 대해 동작하는가?)과 성능(해당 알고리즘이 주어진 문제를 해결하는 데 가장 효율적인 방법인가?)를 고려해야한다고 한다. 책에서는 총 8가지 챕터로 나눠 1장 부터..

    [Paper Review] Recovering 3D Human Mesh from Monocular Images : A Survey

    Paper : https://arxiv.org/abs/2203.01923 Recovering 3D Human Mesh from Monocular Images: A Survey Estimating human pose and shape from monocular images is a long-standing problem in computer vision. Since the release of statistical body models, 3D human mesh recovery has been drawing broader attention. With the same goal of obtaining well-aligned and p arxiv.org Project : https://github.com/tina..

    [Linux] locate 명령어

    필자는 locate 명령어를 리눅스 환경에서 굉장히 자주 쓰고 있다. locate 명령어에 대해 더 자세히 알아보고자 한다. locate 명령어는 아래와 같이 사용하며, test_file이 어디에있는지 알려준다. locate test_file locate 명령어가 파일을 빠르게 검색해주는 이유는 검색DB를 미리 생성하기 때문이다. 따라서 locate 명령어를 처음 사용한다면 아래와 같이 DB를 업데이트 시켜준다. (pdatedb 작업은 크론(cron)에 등록되어 있어서 매일 새벽에 자동으로 실행됨) sudo updatedb 그런데 이는 방금 자신이 삭제한 파일도 검색이 되기 때문에 문제가 발생한다. 이런 문제를 피하고 싶다면 검색 전에 DB를 업데이트 하는 것을 추천한다. 참고자료 : https://wi..

    [Book Review] MLOps 도입 가이드

    한빛미디어에서 출간된 “MLOps 도입 가이드”라는 책은 기업이 MLOps를 도입하기 위한 머신러닝 모델 배포 프로세스, 시스템 구축, 확장, 효율화 및 관리에 대한 방법들을 소개한다. 참고로 MLOps는 Mahchine Learning Operations(머신러닝 운영)을 뜻한다. 이러한 내용들은 데이터 사이언티스트, 머신러닝 엔지니어 등 AI 엔지니어링 업무를 다루는 여러 사람들에 의해 작성되었기 때문에 MLOps를 도입하는데 있어서 발생하는 “조직적 이슈”와 “기술적 이슈”를 모두 다룰 수 있다. 책은 크게 3부로 구성되며, MLOps 개념과 필요성 / MLOps 적용 방법 / MLOps 실제 사례로 구성되어있다. 이 책의 1장에서 설명된 MLOps 개념과 필요성 그리고 이를 구축하는데 필요한 역할..

    [NVIDIA TAO Toolkit] TAO Toolkit 개요

    NVIDIA TAO Toolkit을 이용하여 사전 훈련된 NVIDIA 모델에 custom dataset을 적용하여 Computer Vision(이하 CV) 모델을 만들거나 Conversational AI(이하 Conv AI) models을 만들 수 있는 툴킷이다. 비전 분야에서는 주로 object detection, image classification, segmentation, keypoint estimation 등의 모델들을 fine-tuning 할 수 있다. 특히 pre-trained 모델에 새로운 클래스를 추가할 수도 있고, 다양한 케이스에 맞게 다시 학습 시킬 수 있으며, TAO Toolkit은 학습과 관련된 hyperparameter들을 수정하여 custom AI model을 생성할 수 있다...

    num_workers 미설정 시 학습 데이터 로드 속도 영향 발생

    iteration 20 마다 결과 값(time, loss 등)을 확인하며 모델을 학습하고 있는데, iter=20 당 속도가 2배나 느려진 것을 발견하였다. 단순히 데이터 세트가 더 많이 추가되어 그런줄 알고있었는데, 아무리 생각해도 이상해서 이전에 데이터를 이 정도 양으로 많게끔 학습했던 적이 있었을 때의 로그를 확인해보니 시간 차이가 다소 있었다. 그래서 이상해서 찾아보던중.. 불현듯 며칠전 실험 시 바꿨었던 num_workers 가 생각났다....아... num_workers 디폴트 값인 0으로 두고 학습을 진행시켰었는데, 이것 때문에 데이터 로드 시 속도 저하(이전 보다)가 있었던 것 같다. 그래서 바로 num_workers 값을 GPU * 4 로 설정해주니 이전과 같이 빠르게 학습이 진행되는 것을..

    [Book Review] 머신러닝 실무 프로젝트

    한빛미디어에서 출간된 머신러닝 실무 프로젝트(2판) 책은 기존 내용에 MLOps 및 슬롯머신 알고리즘을 활용한 강화학습 등의 내용을 추가하여 2판을 출간했다고 한다. 1장에서는 머신러닝을 어떻게 프로젝트에 적용하는지에 대해 배우며, 머신러닝 프로젝트 진행과정을 다음과 같이 명료하게 나누어 두었다. 1. 비즈니스 문제를 머신러닝 문제로 정의 2. 논문을 중심으로 유사한 문제들을 조사 3. 머신러닝을 사용하지 않는 방법은 없는지 검토 4. 시스템 설계를 고려 5. 특징량, 훈련 데이터와 로그를 설계 6. 실제 데이터를 수집하고 전처리 7. 탐색적 데이터 분석과 알고리즘을 설정 8. 실제 데이터를 수집하고 전처리 9. 시스템 통합 10. 예측 정확도, 비즈니스 지표 모니터링 머신러닝 엔지니어들은 이미 머신러닝..

    NVIDIA AI DEVELOPER MEETUP 후기

    2022년 4월 21일 진행된 NVIDIA의 AI 개발자 밋업에 참가하였다. 약 1년만에 밋업을 주최한 듯 하다! 아래와 같은 내용으로 밋업이 진행되었다. - Inception Program - 2022 New Benefit - TensorRT/Triton Product Update - TensorRT/Triton Hands-on Demo 1. 타겟 프로세서 기반으로 딥 러닝 모델 최적화하기 2. 경량화된 모델 바탕으로 추론 서버 배포하기 개인적으로 유용했던 내용은 아래와 같다. ​개인적으로 좋았던 점은 엔비디아 포럼에 TensorRT와 관련된 질문을 올릴 경우 답이 달리기 까지 비교적 시간이 소요되는데, 밋업 채팅창에서 궁금했던 질문들에 대한 답을 바로 바로 확인하니까 단 시간 안에 많은 양의 유용한 ..

    [Pose Estimation] waterfall module 기반으로 설계된 자세 추정 방법들 (UniPose, UniPose+, OmniPose, BAPose)

    waterfall module 즉 WASP(Waterfall Atrous Spatial Pyramid)는 위 그림과 같은 구성으로 되어있으며 원래 semantic segmentation을 위해 multiscale fields-of-view(FOV)를 유지하면서 cascade architecture에서 progressive filtering을 활용하는 “Waterfall” Atrous Spatial Pooling 기반 방식으로 이루어진 모듈이다. 이와 같은 module로 설계된 자세 추정 방법들은 아래와 같다. 1. UniPose, Unified Human Pose Estimation in Single Images and Videos (CVPR 2020) WASP module (w/ a cascade of..

    [Paper Review] UniPose, Unified Human Pose Estimation in Single Images and Videos

    “Waterfall” Atrous Spatial Pooling architecture를 기반으로 인간의 자세를 추정하는 UniPose를 소개합니다. 참고로 Waterfall Atrous Spatial Pooling 방법은 semantic segmentation을 위해 multiscale fields-of-view를 유지하면서 cascade architecture에서 progressive filtering을 활용하는 module 입니다. 본 논문에서는 contextual segmentation 및 joint localization을 통합하여 statistical postprocessing 방법에 의존하지 않고 single stage 에서 인간의 자세를 높은 정확도로 추정한다고 합니다! 이러한 방법은 mul..

    [Object Detection] Anchor-free 기반 Object Detection의 Center Sampling 방법 (FCOS, FoveaBox)

    초창기 Object Detection 분야에서는 하나의 grid cell에 객체를 하나만 검출할 수 있었으며, 더 나아가 여러개의 grid에서 객체를 검출하기 위해 Anchor box라는 개념을 사용하여 객체를 탐지하였습니다. 여기서 Anchor box는 딥러닝 신경망이 검출해야할 object shape에 대한 가정입니다. 하지만 Anchor box는 크기, 종횡비, 개수에 굉장히 민감하다는 단점이 있습니다. 이 Anchor box를 어떻게 설계하느냐에 따라 모델 성능에 영향을 미치게 됩니다. 또한 pre-defined anchor는 모델 일반화 성능을 해치게 되고, anchor box 크기와 다른 ground-truth를 검출하기 어렵다는 단점이 있습니다. 따라서 anchor box를 사용하지 않는 a..

    vim 편집 시 ctrl+s 눌렀을 때 터미널 멈추는 현상

    vim 으로 원격서버에 있는 코드 편집중이였는데 습관적으로 ctrl+s 를 누르다보니 터미널이 멈추는 현상이 발생하여 검색해보았다. 스크롤 락 건거라고 한다. ctrl+Q 누르면 다시 움직인다. 그리고 편집중에 터미널을 꺼버리면 .swp 확장자 파일이 생겨서 자꾸 다시 편집 할 때 마다 E325: ATTENTION 에러가 뜨니까 아래 블로그를 참고하여 해결하길 바란다. 요약하면 아래와 같다. .swp 파일 확인 -> 다른 프로세스가 작업중인지 확인 -> 사용안하면 파일 저장(wq) -> rm ~~.swp 삭제 E325: ATTENTION 해결 방법 https://clear-sky-sun.tistory.com/23 E325: ATTENTION vi swap 해결 방법 Linux vi을 통하여 작업을 하던 ..

    [Deep Learning] Faster Non-Maximum Suppression

    기존 NMS 대비 빠른 Faster NMS의 속도 향상의 요인은 for 문을 사용하여 각 상자에 접근하는 대신 np.maximum 및 np.minimum 함수를 사용하여 코드를 벡터화 시키는데 있다. Faster NMS 구현 # import the necessary packages import numpy as np # Malisiewicz et al. def non_max_suppression_fast(boxes, overlapThresh): # if there are no boxes, return an empty list if len(boxes) == 0: return [] # if the bounding boxes integers, convert them to floats -- # this is im..