728x90

Framework 21

[Unity] 애니메이션 후 객체 삭제

나의 상황은 객체가 사라질 때 애니메이션을 불러와 애니메이션이 행동되고 삭제되길 바랬는데 객체는 삭제되지만 애니메이션은 그대로 남아있어 문제가 되었다. 해결 방법으로 Animation Controller에 들어가 아래의 Script를 추가하였더니 문제없이 사라졌다. public class DestroyOnExit : StateMachineBehaviour { public override void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo, int layerIndex) { Destroy(animator.gameObject, stateInfo.length); } } 참고 : https://answers.unity.com/questions/670..

Framework/Unity 2021.09.07

[Unity] ML-Agent 구조 및 간단한 학습 진행

Unity ML-Agent 소개 구조 간단 소개 유니티의 ML-Agent 라이브러리와 python 딥러닝 라이브러리가 서로 통신하여 학습하는 구조 자세한 설명은 https://github.com/Unity-Technologies/ml-agents/blob/main/docs/ML-Agents-Overview.md, https://aifrenz.github.io/present_file/AI프렌즈세미나_ML-Agents.pdf 참조하고, 간단한 설치방법은 이전 글에서 https://tw0226.tistory.com/92 에서 다루었으므로, 설치되었다는 가정으로 시작한다. 학습 방법 사실 학습 방법 이전에도 선행되어야 할 것이 유니티에서 게임을 만들어야 한다. 귀찮다면 누군가가 만들어놓은 강화학습 모델이 학습하..

Framework/Unity 2021.08.26

VIDEOIO(CV_IMAGES): raised OpenCV exception 에러

cv::VideoWriter::open VIDEOIO(CV_IMAGES): raised OpenCV exception: OpenCV(4.1.1) C:\projects\opencv-python\opencv\modules\videoio\src\cap_images.cpp:253: error: (-5:Bad argument) CAP_IMAGES: can't find starting number (in the name of file): /outputs/test.avi in function 'cv::icvExtractPattern' 처음에는 원인이 ffmpeg이랑 뭐가 안맞나부터 시작해서 opencv 를 재설치해보고 이것저것 해보았지만 나의 경우는 이런 문제가 아니였다. 나의 경우 알고보니 경로를 못찾아서 생긴 이..

Framework/OpenCV 2021.08.25

[Django] 장고 튜토리얼 공부-2

2장에서는 다음 내용에 대해 공부하였다. 1. Settings.py를 이용해 DB를 포함한 기본 환경을 설정 2. 모델을 이용해 DB 생성하는 법 3. ORM(Object Relational Mapping)을 이용하는 법 4. 관리자를 생성하는 방법 1. Settings.py 다루기 장고에서는 main이 되는 프로젝트명 디렉토리 내부에 settings.py 파일이 존재한다. Settings.py는 말그대로 설정에 대해 기술하고 있는데, 주 기능으로는 DB 설치, 서버시간대 설정, 기본 설치 앱 등이 있다. 장고에서는 기본 DB로 sqlite3, postgresql, mysql, oracle 를 지원하는데, settings.py 내 default 부분에 해당 이름대로 변경하면 된다. 다 설정한 뒤, 다음의..

Framework/Django 2021.08.20

[Django] 장고 튜토리얼 공부-1

파이썬을 이용한 웹개발을 공부하던 중, flask를 이용해 간단한 API 서버를 만들어 공부해봤는데 아무래도 자유도가 높은 만큼, 혼자 개발하는 입장에서 구현하기는 까다로운게 많아 장고를 한번 공부해보기로 했다. 설치과정은 생략하고, 장고는 어떤 구조로 웹서버를 구동시키는지 공부했다. 1. 프로젝트 시작 django-admin startproject mysite 위의 명령어를 이용하면 mysite 라는 디렉토리와 아래의 파일들이 생기는 걸 볼 수 있는데, mysite/ manage.py mysite/ __init__.py settings.py urls.py asgi.py wsgi.py mysite/mysite 폴더가 전반적인 구조를 담당하는 main이 되는 디렉토리가 된다. 2. 개발서버 실행 pytho..

Framework/Django 2021.08.19

[OpenCV] 라이브러리 별 Resize 성능 차이

검색을 해보다가, 알게 된 내용으로 각 라이브러리 별로 Resize를 하는데도 차이가 존재한다는 것을 알게 되었다. 1. PIL vs OpenCV 간 BICUBIC 차이 Case 2를 보면 같은 이미지를 PIL, OpenCV 방식으로 불러왔는데 완벽히 같지 않다는 내용을 볼 수 있다. 그리고, 이에 대해 비슷하게 누군가가 실험한 예시이다. 2번째 행에서 왼쪽이 OpenCV, 오른쪽이 PIL을 이용한 예시인데, 3x3 픽셀의 좌측 하단과 우측하단을 보면 OpenCV의 경우 전반적으로 더 밝고, PIL의 경우 더 어둡다. 아래는 PIL과 Matlab으로 resize를 진행헀을 때의 차이값으로 생각보다 많은 픽셀값들이 다름을 확인할 수 있다. 게다가 매우 중요한 건 Super Resolution같은 세밀함을 ..

Framework/OpenCV 2021.07.22

[Flask] Flask rest API 라이브러리 비교

TL:DR (요약) flask-restful 라이브러리로 Flask-restful, flask-restplus, flask-restx 3가지 종류가 존재한다. Flask-restful은 꾸준히 업데이트를 하고 있는 반면에, restplus는 어느 시점에 업데이트가 끊겨서 restx가 restplus를 이어받아 업데이트하고 있다. Swagger 쓸거면 restx, 상관없으면 restful 쓰자! 1. 업데이트, Star 비교 Flask-Restful Flask-restful은 6K, 2021년에도 업데이트 지원중인 것을 볼 수 있다. Flask-restplus 2.5K, 2019년 이후로 업데이트가 멈춘 것으로 보인다. Flask-restX 1.1K, 홈페이지에 업데이트 기록은 없으나 깃허브를 보면 꾸준히..

Framework/Flask 2021.05.13

[Flask] numpy array to json 변환 후 전송

TL;DR(Too Long, Didn't Read) - 3줄 요약 1. requests를 이용한 post 테스트 시, header를 잘 확인해야 한다 (이미지는 image/jpeg 인데, application/json 으로 보내면 보통 에러가 난다) 2. ndarray.tobytes()나 opencv를 이용해 로 bytes 형태로 보낼 수도 있고, 파일 통째로 보내는 것도 가능하다. 3. 굳이 application/json 형태로 보내고 싶다면 인코딩/디코딩을 잘 해야한다. ps. application/json 형태로 보낸 것보다, bytes형태로 보낸 게 속도가 더 빠르다 (당연한 얘기인가?) 서론 저의 경우는 플라스크를 이용해 이미지를 보내려고 하는데 문제가 생겨서 검색해봤습니다. 처음 시도는 ope..

Framework/Flask 2021.05.12
728x90