사칙연산 유니티에서 사칙연산은 우리가 유치원, 초등학교 때 배우는 그 사칙연산이다. 덧셈, 뺄셈, 곱하기, 나누기는 모두 알고 있는 것처럼 직관적으로 사용이 가능하다. 여기서 우리가 생소한 사칙연산은 % 이다. 여기서 % 는 나눗셈 후 나머지를 반환하는 연산이다. public class NewBehaviourScript : MonoBehaviour { int a = 4; int b = 2; int c; void Start() { c = a + b; // 덧셈 Debug.Log(c); c = a - b; // 뺄셈 Debug.Log(c); c = a * b; //곱셈 Debug.Log(c); c = a / b; //나눗셈 Debug.Log(c); a = 5; b = 2; c = a % b; //나머지 De..
유니티 c# 스크립트(Script) 스크립트는 프로그램을 만들기 위해서는 필수 요소입니다. 오브젝트를 움직이거나, 이벤트를 발생하거나, 화면을 전환하는 모든 행동을 스크립트를 통해 제어하기 때문입니다. 스크립트는 컴포넌트(Component) 형태로 오브젝트에 부착되어 사용됩니다. 따라서 어떤 오브젝트를 제어하고 싶다면 그 오브젝트에 컴포넌트를 부착하여 제어해야 합니다. 유니티는 기본적으로 Transform, mesh Renderer, Box Collider 등 내장 컴포넌트를 지원합니다. 하지만 내장 컴포넌트 만으로 오브젝트를 제어하거나 이벤트를 만들 수는 없습니다. 때문에 사용자가 직접 기능을 만들어 줘야합니다. 유니티의 오브젝트는 Hierarchy창에서 확인할 수 있으며 오브젝트를 클릭하면 Inspe..
pytorch에서 keras처럼 summary를 확인하는 함수가 있다. 이때 가장 많이 사용하는 함수가 아래의 함수일 것이다. from torchsummary import summary 필자도 torchsummary를 사용하여 model의 summary를 확인했다. 그러나 Hrnet을 설계할 때 값이 리스트 형태로 전달하면서 다음과 같은 오류가 발생했다. File "\torchsummary\torchsummary.py", line 19, in hook summary[m_key]["input_shape"] = list(input[0].size()) AttributeError: 'list' object has no attribute 'size' 그래서 구글에서 검색 중 github에서 해결 방법을 찾았다. ..
유니티 설치하기 [홈페이지 접속] 유니티를 설치하기 위해서는 공식 홈페이지에 접속해야 한다. 공식 홈페이지에 접속하면 아래 이미지 처럼 화면이 나타나며 중앙에 시작하기 버튼을 클릭하여 다운로드 페이지로 이동한다. 페이지 이동 후 [개인/팀즈]에서 개인을 선택한다. 개인 목록으로 이동 후 Personal 부분의 시작하기 버튼을 눌러 다음 페이지로 이동한다. 페이지 이동 후 첫 사용자 단락 부분의 시작하기 버튼을 눌러준다. 버튼을 클릭하면 약관이 나오며 동의 및 다운로드 버튼을 눌러 설치 파일을 다운로드 해준다. 유니티 설치하기[다운로드 파일] 동의 및 다운로드 버튼을 클릭하면 UnityHubSetup파일이 다운로드 된다. Window에서는 exe파일이 다운로드되며 맥OS에서는 dmp파일이 다운로드된다. W..
☞ 문서의 내용은 가장 하단 참고문헌 및 사이트를 참고하여 필자가 보기 쉽도록 정리한 내용입니다. ☞ 틀린 내용 및 저작권 관련 문의가 있는 경우 문의하시면 수정 및 삭제 조치하겠습니다. 유니티(Unity)는 3D 및 2D 비디오 게임의 개발 환경을 제공하는 게임엔진이자, 3D 애니메이션 건축 시각화, 가상현실, 증강현실 등 인터랙티브 콘텐츠 제작을 위한 통합 저작 도구이다. 게임 엔진 : 게임 개발을 위해 여러 기능을 제공하여 게임을 쉽게 제작할 수 있도록 하는 프로그램이다. 때문에 게임 엔진을 사용하면 작업 효율을 높일 수 있다. 유니티는 윈도우, 맥OS, IOS, Android 등 27개의 플랫폼에서 사용 가능한 콘텐츠를 만들 수 있고 제작 도구인 유니티 에디터는 윈도우와 맥OS를 지원한다. 유니티..
Abstract CNN을 이용하여 시공간 비디오를 학습하는 것은 어렵다. 몇몇 연구에서는 3D Convolution을 이용하여 비디오의 공간적 차원과 시간적 차원을 모두 학습할 수 있는 접근 방식이라는 것을 보여줬다. 그러나 3D CNN의 경우 네트워크가 깊으면 높은 계산 비용과 메모리가 발생한다. 이에 논문에서는 3D CNN에 기존 2D 네트워크에서 사용된 ResNet을 변형하여 사용한다. 본 논문에서는 3x3x3 Convolution을 대신하는 병렬 또는 cas-caded 방식으로 1x3x3 Convolution 층과 3x1x1 Convolution 층을 조합하여 feature map에 시간적 연결을 구축한다. 이때 저자는 한 가지의 방식을 제안하는 것이 아닌 residual learning fram..
☞ 문서의 내용은 가장 하단 참고문헌 및 사이트를 참고하여 필자가 보기 쉽도록 정리한 내용입니다. ☞ 틀린 내용 및 저작권 관련 문의가 있는 경우 문의하시면 수정 및 삭제 조치하겠습니다. PASCAL VOC는 대표적인 Object Detection Dataset 중 하나이다. PASCAL Dataset은 기본적으로 홈페이지에서 다운로드 받을 수 있다. 하지만 Pytorch 등과 같이 코드를 통해 간단히 다운로드 받을 수 도 있다. 다운로드 홈페이지는 PASCAL VOC 공식 홈페이지에 접속하여 다운로드 받을 수 있으며 공식 홈페이지에 접속이 안된다면 PASCAL VOC Dataset Mirror 사이트에 방문하여 설치할 수 있다. PASCAL VOC Dataset의 구조는 아래와 같다. Object De..
☞ 문서의 내용은 가장 하단 참고문헌 및 사이트를 참고하여 필자가 보기 쉽도록 정리한 내용입니다. ☞ 틀린 내용 및 저작권 관련 문의가 있는 경우 문의하시면 수정 및 삭제 조치하겠습니다. 기존의 CNN 모델들은 모두 입력 이미지가 고정된 크기(ex 224x 244)의 입력이 요구되었다. 때문에 신경망을 통과시키기 위해서는 이미지를 고정된 크기로 crop하거나 warp해야 했다. 이에 모델의 정확도가 하락하는 등 모델의 성능에 악영향을 미쳤다. 사실 Convoltuon filter들은 입력 이미지가 고정될 필요가 없다. sliding window 방식으로 작동하기 때문이다. 이미지 크기의 고정이 필요한 이유는 Fully connected layer가 고정된 크기의 입력을 받기 때문이다. 이에 저자는 원본 ..
☞ 문서의 내용은 가장 하단 참고문헌 및 사이트를 참고하여 필자가 보기 쉽도록 정리한 내용입니다. ☞ 틀린 내용 및 저작권 관련 문의가 있는 경우 문의하시면 수정 및 삭제 조치하겠습니다. Yolo의 문제는 입력 이미지를 nxn 크기의 그리드로 나누고, 각 그리드 별로 Bounding box 예측을 진행하여 그리드 보다 크기가 작은 물체는 잡아내지 못하는 문제가 있다. 또한 신경망을 모두 통과하면서 Convolution과 pooling을 거쳐 coarse한 정보만 남은 마지막 단 feature map만 사용하기 때문에 정확도에 한계가 있다. 이에 SSD는 이전 네트워크의 장점을 모아 yolo의 한계점을 극복한다. 쉽게 이야기 하면 Fully convolutional Network에서 처럼 앞단 Convol..
Basic One-Stage-Detector와 Two-Stage-Detector [Posting] Fine Tuning [Posting] Network Gradient-Based Learning Applied to Document Recognition (LeNet) [Paper] [Posting] [Pytorch] ImageNet Classification with Deep Convolutional Neural Networks (AlexNet) [Paper] [Posting] [Pytorch] Very Deep Convolutional Networks for Large-Scale Image Recognition (VGG) [paper] [Posting] [Pytorch] Going Deeper with ..