본문 바로가기

728x90

LiDAR

(17)
iOS 가로 세로 모드 설정 iOS LiDAR의 세부 정보를 활용함에 있어 기존에 쓰던 Unity AR로는 한계가 있다는 생각이 들었습니다.(아직 정보가 너무 없더라구요...) 그래서 Swift를 이용해서 활용을 하고자 했습니다. 우선 pointcloud를 사용해야 하는데 아직 swift에 대해 너무 초보이기에 git에서 만들어진 코드를 보고자 했습니다. 가장 부합하다 생각한 코드가 https://github.com/isakdiaz/arkit-scenedepth-pointcloud GitHub - isakdiaz/arkit-scenedepth-pointcloud: IOS example app to generate point clouds in ARKit using scenedepth IOS example app to generate ..
Flutter + Unity AR 프로젝트를 위해 background에서 카메라를 사용하고자 했으나 정보가 없고, apple의 정책상 불가능 하다는 글이 구글에 있어서 포기를 하려 했습니다. 그러나 background에서 실행시키지 않으면 의미가 없다는 생각을 하며 최선을 방안을 탐색하던 중 불쑥 나타난 그 이름 pip mode... 그렇다면 pip mode란 무엇일까요? pip mode란 picture in picture mode로서 유튜브 프리미엄을 쓰는 사람들은 화면을 최소화 하여 다른 어플을 사용할 수 있는데 그때 사용되는 것이 pip mode입니다. 즉, pip mode를 사용하면 프로젝트 초기에 구상했던 방안을 완성할 수 있다는 것이죠!! 그래서 Unity에서 pip mode를 사용하는 방법을 찾다보니 flutter_unity..
Unity iOS notification 지금까지 iOS LiDAR를 이용하여 거리를 측정하고 상단의 이미지를 추출하는 것을 진행하였습니다. 이번에는 거리에 따라 notification 즉 알림을 보내는 기능을 추가하는 방법에 대해 글을 쓰고자 합니다. unity에서 notification을 사용하기 위해서는 우선 위 사진과 같이 Mobile Notification 패키지를 import 해줘야합니다. 해당 패키지를 다운하면 이제 android와 iOS에서 notification을 사용할 수 있습니다. 이제 script를 이용하여 사용을 해주면 되는데 기본적인 내용은 이곳에서 볼 수 있으며 유튜브 강의는 여기를 참고하시면 될 것 같습니다. 먼저 notification을 사용하기 위한 기본적은 script를 작성할 필요가 있는데 해당 코드는 아래와..
Unity AR iOS LiDAR 활용 이번에는 여러 위치의 LiDAR 거리 값을 가져오고 거리가 특정값보다 가까울 경우 해당 위치를 빨간색으로 나타내는 방법에 대한 글입니다. 이전의 경우 화면 가운데 위치의 LiDAR값만 가져왔었습니다. 그러나 가운데 위치뿐만 아니라 좀 더 넓은 범위의 정보를 가져올 필요가 있었습니다. 초기 구성은 다음과 같습니다 사진의 파란 위치가 LiDAR 포인트를 가져올 위치입니다. 총 11개 point의 위치를 가져와야 하는데 이전처럼 하나하나 위치를 지정해서 코드를 짜는 것은 매우 비효율적이라 판단했습니다. 그래서 위와 같이 가운데를 기준으로 가로X축, 세로Y축으로 설정하고 for문을 작성하기로 했습니다. 여러 위치에 대해 한번에 변수를 선언하기 위해 List형태인 /위치를 가질 변수 public List posV..
Unity AR 메모리 누수 현상 잡기 지금까지 Unity를 이용하여 만든 어플이 실행 중 튕기는 현상이 지속적으로 발생하여 메모리 사용량과 배터리 사용량을 확인할 필요가 있었습니다. 저는 맥북을 사용하여 어플을 제작하였기에 어플을 실행하고 Xcode의 위 빨간 부분을 클릭하니 원했던 정보를 확인할 수 있었습니다. 확인한 결과 위의 사진과 같이 memory가 끝도없이 상승하는 메모리 누수현상을 발견하였습니다. 어플을 실행했을 때 시간이 지난 후 튕기는 현상이 아마 메모리가 계속 증가하다 한계치를 넘었을 때 튕기는 현상이 발생한 듯 합니다. 메모리가 지속적으로 증가하는 이유를 찾기위해 코드를 들여다 보니 private Texture2D CaptureImage() { int width = Screen.width; int height = Scree..
Unity AR 딥러닝 사용하기 지금까지 Unity를 이용하여 원하는 카메라 화면의 일부를 추출하였고, 추출과 LiDAR를 동시에 실행하는 것 까지 진행했습니다. 이번에는 추출된 이미지를 딥러닝 Classification model을 사용하여 분류하는 작업에 대한 내용입니다. 먼저 Unity에서 classification model을 사용하기 위해 [Barracuda package] 를 사용했습니다. 그리고 MobileNetv3에 차량 custom dataset을 이용하여 학습한 후 onnx 파일로 출력하여 unity에 적용하였습니다. 적용한 model의 정보는 위와 같습니다. Barracuda를 사용하기 위해 using Unity.Barracuda; 를 사용하여 Barracuda를 적용한 후 // Barracuda를 이용하여 사용할 ..
Unity AR camera with iOS LiDAR 게시글의 LiDAR 사용 부분은 Youtube순순스튜디오님의 해당 영상에서 배운 내용을 활용하였습니다. 현재 했던 프로젝트의 필요내용은 아래와 같습니다. 내용 진행 위해서 카메라와 LiDAR를 동시에 사용해야합니다. 앞서 작성했던 이미지 추출 내용에 LiDAR를 추가하여 특정 위치의 거리값도 가져올 필요가 있었습니다. 순순스튜디오님의 영상에서 알려준 방식으로 LiDAR관련 구성을 하였으며 AR Session의 경우 위와같이 AR Plane Manager는 사용하지 않았습니다. 그 이유는 AR Plane Manager를 사용하니 LiDAR의 정확도가 다소 떨어지는 느낌을 받았기에 제거한 후 진행하였습니다. 먼저 Script의 경우 앞의 [Unity AR camera 화면 정보 일부분을 추출하기] 에서 사용..
Unity AR Raycast 사용하기 본 게시글의 LiDAR 사용 부분은 Youtube순순스튜디오님의 해당 영상에서 배운 내용을 정리하였습니다. iOS에서 제공하는 LiDAR를 활용하여 거리를 측정하기 위해 사용법을 찾던 중 Unity의 AR Foundation 기능을 이용하면 사용이 가능하다는 것을 알게 되었습니다. AR Foundation을 사용했던 적이 전무했기에 인터넷과 유튜브를 헤매던 도중 가뭄의 단비같은 [Youtube순순스튜디오]님의유튜브를 알게되었으며 강의를 통해 알게된 Raycast에 대한 것을 정리하고자 합니다. (해당 내용은 Raycast를 사용하여 터치한 부분에 공을 두는 것 입니다.) 먼저 iOS의 LiDAR는 비교적 최근 모델인 iPhone pro model iPad pro model 에서 제공하고 있습니다. Uni..

728x90